www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 技術(shù)前線
[導(dǎo)讀]Xilinx的ZYNQ芯片軟件設(shè)計說明

1、概述

ZYNQ是xilinx推出一個款SOC,其亮點在于FPGA里包含了完整的ARM處理子系統(tǒng)(PS),每一顆Zynq系列的處理器都包含了Cortex-A9處理器,整個處理器的搭建都以處理器為中心,而且處理器子系統(tǒng)中集成了內(nèi)存控制器和大量的外設(shè),使Cortex-A9的核在Zynq-7000中完全獨立于可編程邏輯單元,也就是說如果暫時沒有用到可編程邏輯單元部分(PL),ARM處理器的子系統(tǒng)也可以獨立工作,這與以前的FPGA有本質(zhì)區(qū)別,其是以處理器為中心的。

Zynq就是兩大功能塊,PS 部分和PL部分,就是ARM的SOC部分,和FPGA部分。其中,PS集成了兩個ARM Cortex?-A9處理器,AMBA®互連,內(nèi)部存儲器,外部存儲器接口和外設(shè)。這些外設(shè)主要包括USB總線接口,以太網(wǎng)接口,SD/SDIO接口,I2C總線接口,CAN總線接口,UART接口,GPIO等。

ZYNQ芯片總體框圖

其中紅色的PS本身自帶的外設(shè),黃色框是PS與PL通信接口(兩個Master、兩個Slaver),藍(lán)色框是高性能PS與PL通信接口其只有Slaver接口,我們現(xiàn)主要用作DMA數(shù)據(jù)傳輸。

2、PS和PL互聯(lián)技術(shù)

ZYNQ作為首款將高性能ARM Cortex-A9系列處理器與高性能FPGA在單芯片內(nèi)緊密結(jié)合的產(chǎn)品,高效的PL和PS數(shù)據(jù)交互通路是ZYNQ芯片設(shè)計的重中之重。

用戶在具體設(shè)計中往往不需要在連接這個地方做太多工作,我們加入IP核以后,系統(tǒng)會自動使用AXI接口將我們的IP核與處理器連接起來,我們只需要再做一點補充就可以了。

2.1AXI總線簡介

AXI全稱Advanced eXtensible Interface,是Xilinx從6系列的FPGA開始引入的一個接口協(xié)議,主要描述了主設(shè)備和從設(shè)備之間的數(shù)據(jù)傳輸方式。在ZYNQ中繼續(xù)使用,版本是AXI4,所以我們經(jīng)常會看到AXI4.0,ZYNQ內(nèi)部設(shè)備都有AXI接口。其實AXI就是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)的一個部分,是一種高性能、高帶寬、低延遲的片內(nèi)總線,也用來替代以前的AHB和APB總線。

AXI協(xié)議主要描述了主設(shè)備和從設(shè)備之間的數(shù)據(jù)傳輸方式,主設(shè)備和從設(shè)備之間通過握手信號建立連接。當(dāng)從設(shè)備準(zhǔn)備好接收數(shù)據(jù)時,會發(fā)出READY信號。當(dāng)主設(shè)備的數(shù)據(jù)準(zhǔn)備好時,會發(fā)出和維持VALID信號,表示數(shù)據(jù)有效。數(shù)據(jù)只有在VALID和READY信號都有效的時候才開始傳輸。當(dāng)這兩個信號持續(xù)保持有效,主設(shè)備會繼續(xù)傳輸下一個數(shù)據(jù)。主設(shè)備可以撤銷VALID信號,或者從設(shè)備撤銷READY信號終止傳輸。AXI的協(xié)議如圖,T2時,從設(shè)備的READY信號有效,T3時主設(shè)備的VILID信號有效,數(shù)據(jù)傳輸開始。

2.2 AXI三種協(xié)議對比

在ZYNQ中,支持AXI-Lite,AXI4和AXI-Stream三種總線,通過下表我們可以看到這三中AXI接口的特性。

AXI4-Lite:

具有輕量級,結(jié)構(gòu)簡單的特點,適合小批量數(shù)據(jù)、簡單控制場合。不支持批量傳輸,讀寫時一次只能讀寫一個字(32bit)。主要用于訪問一些低速外設(shè)和外設(shè)的控制。

AXI4:

接口和AXI-Lite差不多,只是增加了一項功能就是批量傳輸,可以連續(xù)對一片地址進(jìn)行一次性讀寫。也就是說具有數(shù)據(jù)讀寫的burst功能。

上面兩種均采用內(nèi)存映射控制方式,即ARM將用戶自定義IP編入某一地址進(jìn)行訪問,讀寫時就像在讀寫自己的片內(nèi)RAM,編程也很方便,開發(fā)難度較低。代價就是資源占用過多,需要額外的讀地址線、寫地址線、讀數(shù)據(jù)線、寫數(shù)據(jù)線、寫應(yīng)答線這些信號線。

AXI4-Stream:

這是一種連續(xù)流接口,不需要地址線(很像FIFO,一直讀或一直寫就行)。對于這類IP,ARM不能通過上面的內(nèi)存映射方式控制(FIFO根本沒有地址的概念),必須有一個轉(zhuǎn)換裝置,例如AXI-DMA模塊來實現(xiàn)內(nèi)存映射到流式接口的轉(zhuǎn)換。AXI-Stream適用的場合有很多:視頻流處理;通信協(xié)議轉(zhuǎn)換;數(shù)字信號處理;無線通信等。其本質(zhì)都是針對數(shù)值流構(gòu)建的數(shù)據(jù)通路,從信源(例如ARM內(nèi)存、DMA、無線接收前端等)到信宿(例如HDMI顯示器、高速AD音頻輸出,等)構(gòu)建起連續(xù)的數(shù)據(jù)流。這種接口適合做實時信號處理。

AXI4和AXI4-Lite接口包含5個不同的通道:

●Read Address Channel

●Write Address Channel

●Read Data Channel

●Write Data Channel

●Write Response Channel

其中每個通道都是一個獨立的AXI握手協(xié)議。下面兩個圖分別顯示了讀和寫的模型:

AXI讀數(shù)據(jù)通道

AXI寫數(shù)據(jù)通道

2.3 ZYNQ PL與PS互聯(lián)接口

在ZYNQ芯片內(nèi)部用硬件實現(xiàn)了AXI總線協(xié)議,包括9個物理接口,分別為AXI-GP0~AXI-GP3,AXI-HP0~AXI-HP3,AXI-ACP接口。

AXI_ACP接口,是ARM多核架構(gòu)下定義的一種接口,中文翻譯為加速器一致性端口,用來管理DMA之類的不帶緩存的AXI外設(shè),PS端是Slave接口。

AXI_HP接口,是高性能/帶寬的AXI3.0標(biāo)準(zhǔn)的接口,總共有四個,PL模塊作為主設(shè)備連接。主要用于PL訪問PS上的存儲器(DDR和On-Chip RAM)

AXI_GP接口,是通用的AXI接口,總共有四個,包括兩個32位主設(shè)備接口和兩個32位從設(shè)備接口。

另外這9個AXI接口性能也是不同的。GP接口是32位的低性能接口,理論帶寬600MB/s,而HP和ACP接口為64位高性能接口,理論帶寬1200MB/s。

PS端的ARM直接有硬件支持AXI接口,而PL則需要使用邏輯實現(xiàn)相應(yīng)的AXI協(xié)議。Xilinx在Vivado開發(fā)環(huán)境里提供現(xiàn)成IP如AXI-DMA,AXI-GPIO,AXI-Dataover, AXI-Stream都實現(xiàn)了相應(yīng)的接口,使用時直接從Vivado的IP列表中添加即可實現(xiàn)相應(yīng)的功能。

工程實現(xiàn)

3.1 ZYNQ資源對比

最終我們開發(fā)所用的芯片為:ZYNQ7045,目前開發(fā)板所用的是:ZYNQ7020,其中各個ZYNQ的資源的對比如下圖。

由上圖可以看出,ZYNQ系列7020和7045的主要差別是在FPGA資料上,PS端的資源是一樣的,因此在ZYNQ上PS的代碼具有通用性。

3.2 代碼實現(xiàn)

下圖是工程整體實現(xiàn)框圖,首先是初始化系統(tǒng)硬件,然后創(chuàng)建六個線程來實現(xiàn)各個模塊的功能。

1、網(wǎng)絡(luò)接收線程

目前網(wǎng)絡(luò)接收線程沒有特別多的工作做,主要是上位機命令的解析。

2、網(wǎng)絡(luò)發(fā)送線程

此線程主要通過AXI_Lite總線以寫寄存器的方式通知PL何時開始數(shù)據(jù)傳輸、傳輸數(shù)據(jù)的長度等,由于是和PL的自定義IP通信,因此需要自己寫Linux的驅(qū)動。同時PL根據(jù)PS的命令通過DMA發(fā)送數(shù)據(jù)流到PS端,經(jīng)過PS端將數(shù)據(jù)封裝與打包,發(fā)到上位機。

3、串口發(fā)送

ZYNQ將射頻組件狀態(tài)、電機狀態(tài)等雷達(dá)所必要狀態(tài)信息通過PL端自定義IP將信息寫到Bram中并通知PS去讀取數(shù)據(jù),并根據(jù)協(xié)議要求發(fā)送到上位機。

4、串口接收

串口接收主要接收上位機控制命令和參數(shù),并解析如需要PS控制著直接控制,若需要通過FPGA與射頻板通信或控制,則由PS將數(shù)據(jù)寫入到Bram中并通過AXI_Lite總線通知PL自定義IP讀取數(shù)據(jù)(PS端需要根據(jù)自定義IP寫相應(yīng)的驅(qū)動)。

5、Bram讀寫

在Vivado的Blockdesign中設(shè)計一個Bram模塊,主要用于PS與PL之間小批量的數(shù)據(jù)交互,此線程主要是根據(jù)PL端的信號和上位機命令實現(xiàn)對Bram的讀寫。

6、系統(tǒng)指示燈

此線程目前無其他功能,僅僅作為系統(tǒng)運行指示作用,后續(xù)可根據(jù)需要添加功能。

3.3 工程框圖

下圖是Vivado中的工程框圖,其中紅色部分是實現(xiàn)Bram功能,黃色框內(nèi)是實現(xiàn)PL-PS大量數(shù)據(jù)DMA交互的。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉
關(guān)閉