《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的AXI4總線時序設計與實現
基于FPGA的AXI4總線時序設計與實現
2015年電子技術應用第6期
馬 飛,劉 琦,包 斌
北京空間機電研究所,北京100094
摘要: 針對AXI4總線設備之間的高速數據傳輸需求,根據AXI4總線協議,設計實現了一種基于FPGA的AXI4總線讀寫時序控制方法。以FPGA為核心,采用VHDL語言,完成了滿足AXI4總線協議的讀猝發方式數據傳輸和寫猝發方式數據傳輸時序控制模塊的設計。利用FPGA內部嵌入式系統提供的高性能數據傳輸接口完成AXI4時序控制模塊的功能驗證。實際應用表明,依據提出的設計方法實現的讀寫時序控制模塊能夠滿足AXI4總線協議規定的時序關系,實現數據的高速正確傳輸,總線數據傳輸速率能夠達到1.09 GB/s。
中圖分類號: TP336
文獻標識碼: A
文章編號: 0258-7998(2015)06-0013-03
中文引用格式:馬飛,劉琦,包斌.基于FPGA的AXI4總線時序設計與實現[J].電子技術應用,2015,41(06):13-15+19.
Design and implementation of AXI 4 bus timing based on FPGA
Ma Fei,Liu Qi,Bao Bin
Beijing Institute of Space Mechanics & Electricity,Beijing 100094,China
Abstract: To fulfill the needs for high speed data transfers between AXI 4 bus devices,a FPGA based timing control method of data writing and reading for AXI 4 bus is provided. Timing control modules of data writing and reading in burst are designed according to the AXI 4 bus protocol. Functions of the design are validated in high performance interfaces of embedded system in FPGA. The application shows that the design provided in this paper provides an accurate timing that meets the AXI 4 bus protocol. Data transports between AXI 4 bus devices correctly in the speed of 1.09 GB/s.
Key words : AXI 4 bus;timing control;FPGA

    

0 引言

    高級微控制器總線結構(Advanced Microcontroller Bus Architecture,AMBA)是一種應用于片上系統的總線結構。AMBA總線協議是ARM公司制定的用于片上系統IP互聯與管理的一種規范,由于它是一個開放標準的協議,所以自從出現之后,其應用領域就超出了微控制器設備,已經廣泛應用于各種ASIC和片上系統器件中。高級可擴展接口4(Advanced eXtensible Interface 4,AXI4)總線規范是ARM公司與Xilinx公司共同制定的新一代用于片上系統內IP互聯的總線規范,是第4版AMBA規范定義的7個總線接口之一,用以滿足普遍情況下的元件接口要求,為互聯結構的實現提供了靈活性[1]

    本文通過對AXI4總線協議的分析研究,在充分了解其工作原理與工作過程的基礎上,采用VHDL硬件描述語言實現了AXI4總線讀猝發方式數據傳輸和寫猝發方式數據傳輸時序控制模塊的設計與編寫,實現了FPGA邏輯與AXI4從設備之間的高速數據傳輸。

1 AXI4總線協議簡介

1.1 AXI4總線協議特性與優勢

    AXI4總線協議規定的數據傳輸方式是猝發式的,使用首字節選通方式,在獨立的讀寫數據通道采用獨立的地址、控制和數據周期進行數據傳輸,支持非對齊方式的數據傳輸,能夠發出多個未解析的地址,從而完成無序的數據傳輸交易。

    AXI4總線協議的上述特性,使得其與其他總線協議相比較,具有比較明顯的優勢。首先,AXI4總線協議簡化了不同領域IP的集成,將不同接口整合到一個接口中,簡化了用戶熟悉與開發的難度,從而提高了生產效率;其次,AXI4總線協議支持嵌入式、DSP以及FPGA各種電子設計領域的用戶使用,具有很大的靈活性;最后,由于第三方EDA廠商與IP開發廠商普遍接受并采用了AXI4總線協議標準,從而使得基于AXI4總線協議的目標平臺具有廣泛的IP可用性[1-4]

1.2 AXI4總線協議信號集與時序關系

    AXI4總線協議規定5個不同的通道,分別是讀地址通道(Read Address Channel,AR)、寫地址通道(Write Address Channel,AW)、讀數據通道(Read Data Channel,R)、寫數據通道(Write Data Channel,W)和寫響應通道(Write Response Channel,B)[5-6]。其中,讀、寫地址通道傳輸數據交互過程中需要的地址和控制信號;讀數據通道傳輸從從設備到主設備的讀數據以及相應讀信息;寫數據通道傳輸從主設備到從設備的寫數據;寫響應通道用于標識從設備響應主設備的寫操作。主設備與從設備之間的數據傳輸分別用到從主設備到從設備的寫數據通道和從從設備到主設備的讀數據通道,從主設備到從設備的寫數據交易過程中,從設備會通過響應通道向主設備反饋寫操作是否完成。讀地址通道與寫地址通道都是從主設備到從設備。其讀通道結構如圖1所示,寫通道結構如圖2所示。

qrs1-t1.gif

qrs1-t2.gif

    AXI4協議的5個通道分別有各自的信號集合,各個通道在主設備與從設備之間進行數據交互的過程中,使用VALID信號與READY信號的握手機制,即信息源通過VALID信號表示該通道存在可用的有效數據或者控制信息;信息接收方使用READY信號表示該設備具備數據接收的條件[6-8]。每個通道的信號名稱都以該通道的標識字母開頭,例如,讀地址通道的VALID信號與READY信號分別為ARVALID與ARREADY,其他通道同理。

    讀猝發方式數據傳輸過程中的時序關系如圖3所示。其中,ACLK是全局時鐘信號,所有信號在時鐘上升沿采樣;ARADDR是讀地址信號,該信號給出讀猝發方式數據傳輸一次猝發操作的第一個傳輸地址;ARVALID為讀地址有效信號,高電平表示讀地址可用;ARREADY為讀地址準備信號,該信號為高時表示從設備準備好接收地址和相關的控制信號;RDATA為讀數據;RVALID為讀有效信號,該信號為高表示讀數據信號可用;RLAST為一次猝發操作中最后數據的指示信號,高電平表示一次猝發傳輸中最后一個傳輸數據;RREADY為讀準備信號,該信號為高時表示主設備能夠接收讀取的數據。

qrs1-t3.gif

    寫猝發方式數據傳輸過程中的時序關系如圖4所示。其中,BVALID信號為高時表示一次寫猝發操作完成;BREADY為高表示主設備可以接收響應信息;其余信號功能與讀猝發方式類似,不再贅述。

qrs1-t4.gif

    需要注意的是,各通道內部的信號要嚴格滿足相應的時序關系,但是各個通道之間的信號之間是異步關系,沒有嚴格的時序要求。以圖4為例,WVALID信號與WDATA信號可以出現在AWVALID信號和AWADDR信號之前,但是WVALID信號與WDATA信號之間、AWVALID信號與AWADDR信號之間必須滿足圖4中的時序關系。通道之間的信號對應是通過ID信號實現的,具有相同ID的讀通道、寫通道和響應通道傳輸的是一次猝發的數據,從而能夠確保各個通道之間信號的異步性。

2 邏輯設計實現

    在充分分析AXI4總線協議的信號集合與時序關系的基礎上,使用VHDL語言完成讀猝發模塊和寫猝發模塊的邏輯設計。

    讀猝發模塊邏輯設計流程如圖5所示。模塊接收到讀操作開始信號后,通過對ARREADY信號與讀地址個數的檢測,判斷是否可以進行讀操作,從而生成讀地址信號ARADDR及其有效信號ARVALID;通過對RREADY信號以及RVALID信號的判斷實現讀地址與讀數據個數的計數操作,從而判斷已經讀出的地址及數據個數;數據讀出后,通過寫RAM信號將數據寫入RAM中,從而完成對AXI4總線的讀猝發操作。

qrs1-t5.gif

    寫猝發模塊邏輯設計流程如圖6所示。模塊接收到寫操作開始信號后,通過對AWREADY信號與寫地址個數的檢測,判斷是否可以進行寫操作,從而生成寫地址信號AWADDR及其有效信號AWVALID;同時通過對WREADY信號以及寫數據個數的判斷,生成寫數據有效信號WVALID;待寫入AXI4總線的數據事先存儲在雙口RAM中,通過生成讀RAM的控制信號,從RAM中讀出數據,與WVALID信號配合以后送給AXI4總線從設備,從而完成對AXI4總線的寫猝發操作。

qrs1-t6.gif

3 測試分析

    對AXI4總線時序猝發讀寫操作邏輯模塊的功能驗證主要通過功能仿真和實際電路測試實現。

    首先進行功能仿真測試,功能仿真測試在ModelSim 6.4仿真環境下進行,利用VHDL語言編寫測試用例,主要用來驗證讀寫模塊能否向從設備正確發出相關的信號。由于從設備反饋的信號不容易在測試用例中描述,所以從設備反饋的信號通過實際電路測試的方式完成。在實際電路中,利用ChipScope工具抓取從設備的反饋信號,同時與主設備發出的信號進行時序關系的對應,進而驗證信號的時序關系是否符合協議規定。

    讀猝發操作主要信號的波形如圖7所示,從波形中可見,讀地址通道與讀數據通道之間是異步關系,兩個通道通過ARID與RID兩組信號確定同一次猝發操作。讀地址通道主要信號波形放大后如圖8所示,設置的初始讀地址為0x10000000,每個猝發包含0x80個地址字節,從圖中可見,讀猝發模塊能夠正確將地址信息發送給從設備。從從設備中讀出的數據寫入主設備的RAM中,寫RAM相關信號如圖9所示,測試過程中,首先將從設備從0x10000000地址開始以4 B為單位寫入初始數據,初始數據從0開始,每4 B數據加1。從圖9中可見,讀出的8 B數據正好是相鄰4 B數據的拼接,即第一個數是0x0000000100000000,第二個數是0x0000000300000002,依此類推,從而能夠驗證數據能夠正確從從設備讀出到主設備。

qrs1-t7.gif

qrs1-t8.gif

qrs1-t9.gif

    寫猝發模塊的功能驗證通過如下方式實現:利用寫猝發模塊向從設備的目的地址寫入8 B固定數0xaaaa55555555aaaa,從設備將寫操作之前的數據和寫操作之后的數據反饋給上位機,通過反饋的數據判斷是否正確從主設備寫入從設備。

    上位機反饋的測試結果如圖10所示,從設備的目的操作地址為0x10000000~0x10007fff,以4 B為一個操作單元。上電后首先讀取目的地址的數據,其結果是隨機的無規律數據;之后從設備將目的地址的數據進行初始化,寫入從0開始的遞增數據,寫完后再讀取目的地址數據,從而確認初始化數據已經正確寫入;之后完成寫猝發操作,將數據0xaaaa55555555aaaa寫入目的地址,寫操作完成后再讀取目的地址的數據,已經從初始化的遞增數據變成了寫入的數據0x5555aaaa和0xaaaa5555,從而能夠驗證寫猝發模塊已經正確將數據寫入從設備。

qrs1-t10.gif

    寫猝發操作的信號波形如圖11所示,從圖中可見,寫地址通道、寫數據通道與寫響應通道之間的信號之間是異步關系,各通道內部信號有嚴格的同步時序關系,與AXI4協議規定的時序關系一致。

qrs1-t11.gif

    在開始數據傳輸時,主設備將一個測試信號置為高,數據傳輸結束后將該信號電平拉低,利用示波器測量該信號的高電平寬度,即可確定數據傳輸的速率。通過測試可知,32 KB數據傳輸完畢需要約30 μs,傳輸速率為1.09 GB/s。

    通過上述測試分析可知,本文設計實現的數據傳輸模塊滿足AXI4總線協議的時序要求,能夠正確實現AXI4總線主從設備之間的高速數據傳輸。

4 結論

    AXI4總線協議作為嵌入式系統內部的常用總線協議,得到第三方EDA廠商與IP開發廠商普遍接受與采用。為滿足AXI4總線主設備與從設備之間的數據傳輸要求,本文通過對AXI4總線信號集合以及總線時序的分析研究,設計并實現了滿足AXI4總線時序要求的讀寫控制模塊,采用VHDL語言完成模塊的編寫。通過ModelSim仿真軟件仿真驗證和電路板實際測試分析表明,本文設計實現的AXI4總線時序模塊符合總線規范,能夠滿足高速數據傳輸的實際需求,測試結果表明,數據能夠在主從設備之間正確傳輸,傳輸速率能夠達到1.09 GB/s,具有較高的工程應用價值。

參考文獻

[1] 何賓.Xilinx All Programmable Zynq-7000 SoC設計指南[M].北京:清華大學出版社,2013.

[2] 蒲杰,李貴勇.基于AXI總線的DMA控制器的設計與實現[J].重慶郵電大學學報(自然科學版),2012,24(2):174-177.

[3] 張慶利,王進祥,葉以正,等.AMBA片內總線結構的設計[J].微處理機,2002(2):7-10.

[4] 周彩寶,劉應學.ARM體系以及AMBA總線分析[J].計算機工程,2003,29(5):147-149.

[5] 胡強.FPGA與通用處理器同步數據傳輸接口的設計[J].電子技術應用,2014,40(8):14-16.

[6] 張軍,馬琪.基于AMBA總線的DMA控制器設計[J].科技通報,2011,27(2):268-271.

[7] 唐平,鄭建宏.基于AHB總線的DMA控制器的實現與應用[J].電子測試,2009(11):64-67.

[8] 肖龍,萬旻,李濤.高速數字圖像數據傳輸的研究及實現[J].航天返回與遙感,2009(30):50-55.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一级淫片播放口| 欧美一二三区在线观看| 国产精品国产精品| 欧美乱人伦中文字幕在线| 欧美1区2区3区| 欧美gay视频激情| 美女网站在线免费欧美精品| 久久久亚洲精品一区二区三区| 久久成人综合视频| 欧美亚洲一级| 欧美怡红院视频一区二区三区| 亚洲欧美国产精品桃花| 亚洲一区二区三区四区中文 | 国产精品一区在线观看你懂的| 欧美视频在线观看免费| 欧美日韩精品一区二区在线播放| 欧美精品在线观看播放| 欧美另类videos死尸| 欧美屁股在线| 欧美特黄a级高清免费大片a级| 欧美日韩亚洲一区二区三区| 欧美视频第二页| 国产精品久久久免费| 国产精品自拍在线| 国内精品久久久| 1024国产精品| 亚洲伦理在线观看| 在线视频欧美精品| 亚洲欧美激情一区二区| 香蕉尹人综合在线观看| 久久精品视频一| 亚洲免费观看高清完整版在线观看熊 | 国产精品videosex极品| 欧美日韩免费观看一区二区三区| 欧美日韩视频在线| 国产精品一卡| 尤物九九久久国产精品的分类| 最新亚洲视频| 亚洲一级免费视频| 欧美在线国产精品| 亚洲精选大片| 亚洲欧美国产精品va在线观看| 久久国产精品亚洲va麻豆| 美女主播一区| 国产精品久久国产三级国电话系列| 国产欧美综合一区二区三区| 在线免费不卡视频| 一区二区三区四区五区视频| 午夜一级久久| 亚洲免费成人av| 先锋影音久久| 欧美大色视频| 国产精品视频午夜| 亚洲国产精品一区| 亚洲欧美成人综合| 亚洲精品在线一区二区| 欧美一区二区黄色| 欧美激情一区二区久久久| 国产精品一区2区| 91久久精品国产| 午夜精品www| 99伊人成综合| 久久久久久久综合日本| 欧美日韩成人网| 国产自产v一区二区三区c| 亚洲精品欧美极品| 欧美在线播放高清精品| 中文在线不卡| 美国十次了思思久久精品导航| 欧美视频在线观看视频极品| 激情亚洲网站| 亚洲淫性视频| 在线视频中文亚洲| 久久性色av| 国产精品高潮呻吟久久| 亚洲国产午夜| 亚洲第一成人在线| 欧美一区二区黄色| 欧美日韩中文字幕日韩欧美| 原创国产精品91| 欧美亚洲在线播放| 亚洲一区二区三区乱码aⅴ蜜桃女| 免费日韩av片| 国产综合欧美在线看| 亚洲一区二区三区高清不卡| 亚洲精品国产精品国自产观看浪潮 | 亚洲午夜免费福利视频| 最新国产成人av网站网址麻豆| 欧美在线观看视频一区二区| 欧美日韩高清一区| 在线电影国产精品| 久久成人人人人精品欧| 亚洲欧美日韩精品久久久| 欧美日本一区| 最新精品在线| 亚洲精品专区| 猫咪成人在线观看| 国外成人在线视频网站| 午夜国产精品视频| 午夜精品美女久久久久av福利| 欧美日韩1区| 亚洲欧洲日韩综合二区| 亚洲三级免费电影| 女生裸体视频一区二区三区| 国内精品美女av在线播放| 先锋影音国产一区| 欧美一区二区三区的| 国产精品久久久久久久久久尿 | 在线观看欧美| 亚洲国产精品第一区二区| 久久久国产精彩视频美女艺术照福利| 国产精品久久看| 一区二区三区四区五区视频| 一区二区三区视频观看| 欧美日韩亚洲综合在线| 亚洲裸体视频| 中文一区二区| 国产精品av久久久久久麻豆网 | 亚洲欧美日韩国产中文| 欧美在线1区| 国产视频欧美视频| 欧美中文字幕在线| 久久久亚洲国产天美传媒修理工| 国产主播一区二区三区| 久久国产精品亚洲77777| 久久亚洲综合色| 在线观看一区欧美| 亚洲免费成人av电影| 欧美日本免费| 亚洲视频狠狠| 欧美在线free| 国语自产在线不卡| 亚洲高清视频的网址| 美女福利精品视频| 亚洲全部视频| 亚洲一区在线播放| 国产农村妇女精品一二区| 欧美一级在线亚洲天堂| 猫咪成人在线观看| 亚洲人在线视频| 亚洲欧美精品一区| 国产日韩欧美在线一区| 亚洲第一精品影视| 欧美国产第二页| 一本大道av伊人久久综合| 亚洲欧美制服中文字幕| 国产一本一道久久香蕉| 久久国产色av| 欧美人与禽猛交乱配| 亚洲香蕉视频| 久久一二三四| 亚洲精品欧美日韩专区| 亚洲欧美日本日韩| 韩国成人福利片在线播放| 亚洲欧洲在线观看| 欧美日韩久久精品| 欧美一级夜夜爽| 欧美国产一区二区三区激情无套| 99国产精品自拍| 久久精品五月婷婷| 亚洲人成啪啪网站| 亚洲欧美综合网| 在线视频成人| 亚洲伊人网站| 激情综合色丁香一区二区| 一本到12不卡视频在线dvd| 国产精品一区二区你懂得| 亚洲电影免费观看高清| 欧美日韩国产一区二区| 亚洲欧美日本日韩| 欧美精品高清视频| 羞羞答答国产精品www一本| 欧美精品不卡| 欧美影院精品一区| 欧美特黄一区| 亚洲国产天堂久久国产91| 国产精品美女xx| 亚洲毛片在线观看| 国产欧美日韩在线视频| 亚洲美女免费精品视频在线观看| 国产精品尤物| 一区二区三区国产在线观看| 国内自拍视频一区二区三区 | 欧美理论电影在线观看| 亚洲字幕一区二区| 欧美久久成人| 久久精品官网| 国产精品一区二区在线观看网站| 亚洲精品视频一区二区三区| 国产午夜精品久久久久久免费视 | 久久精品日产第一区二区三区| 欧美午夜在线视频| 91久久久亚洲精品| 国产欧美一区二区三区在线老狼 | 欧美一区二区视频免费观看| 亚洲激情亚洲| 久久综合一区二区| 亚洲伊人网站| 欧美日韩一二三区| 亚洲欧洲日本在线|