AXI (Advanced eXtensible Interface) 本是由ARM公司提出的一種總線協(xié)議, Xilinx從 6 系列的 FPGA 開(kāi)始對(duì) AXI 總線提供支持,目前使用 AXI4 版本。
AXI總線
ZYNQ有三種AXI總線:
(A)AXI4:(For high-performance memory-mapped requirements.)主要面向高性能地址映射通信的需求,是面向地址映射的接口,允許最大256輪的數(shù)據(jù)突發(fā)傳輸;
(B)AXI4-Lite:(For simple, low-throughput memory-mapped communication )是一個(gè)輕量級(jí)的地址映射單次傳輸接口,占用很少的邏輯單元。
(C)AXI4-Stream:(For high-speed streaming data.)面向高速流數(shù)據(jù)傳輸;去掉了地址項(xiàng),允許無(wú)限制的數(shù)據(jù)突發(fā)傳輸規(guī)模。
AXI4總線和AXI4-Lite總線具有相同的組成部分:
① 讀地址通道,包含ARVALID, ARADDR, ARREADY信號(hào);
② 讀數(shù)據(jù)通道,包含RVALID, RDATA, RREADY, RRESP信號(hào);
③ 寫(xiě)地址通道,包含AWVALID,AWADDR, AWREADY信號(hào);
④ 寫(xiě)數(shù)據(jù)通道,包含WVALID, WDATA,WSTRB, WREADY信號(hào);
⑤ 寫(xiě)應(yīng)答通道,包含BVALID, BRESP, BREADY信號(hào);
⑥ 系統(tǒng)通道,包含:ACLK,ARESETN信號(hào)。
而AXI4-Stream總線的組成有:
① ACLK信號(hào):總線時(shí)鐘,上升沿有效;
② ARESETN信號(hào):總線復(fù)位,低電平有效
③ TREADY信號(hào):從機(jī)告訴主機(jī)做好傳輸準(zhǔn)備;
④ TDATA信號(hào):數(shù)據(jù),可選寬度32,64,128,256bit
⑤ TSTRB信號(hào):每一bit對(duì)應(yīng)TDATA的一個(gè)有效字節(jié),寬度為T(mén)DATA/8
⑥ TLAST信號(hào):主機(jī)告訴從機(jī)該次傳輸為突發(fā)傳輸?shù)慕Y(jié)尾;
⑦ TVALID信號(hào):主機(jī)告訴從機(jī)數(shù)據(jù)本次傳輸有效;
⑧ TUSER信號(hào) :用戶定義信號(hào),寬度為128bit。
AXI接口
AXI有三種接口:
(A)AXI-GP接口(4個(gè)):是通用的AXI接口,包括兩個(gè)32位主設(shè)備接口和兩個(gè)32位從設(shè)備接口,用過(guò)該接口可以訪問(wèn)PS中的片內(nèi)外設(shè)。
(B)AXI-HP接口(4個(gè)):是高性能/帶寬的標(biāo)準(zhǔn)的接口,PL模塊作為主設(shè)備連接(從下圖中箭頭可以看出)。主要用于PL訪問(wèn)PS上的存儲(chǔ)器(DDR和On-Chip RAM
(C)AXI-ACP接口(1個(gè)):是ARM多核架構(gòu)下定義的一種接口,中文翻譯為加速器一致性端口,用來(lái)管理DMA之類的不帶緩存的AXI外設(shè),PS端是Slave接口。
AXI協(xié)議
協(xié)議的制定是要建立在總線構(gòu)成之上的。因此說(shuō)AXI4,AXI4-Lite,AXI4-Stream都AXI4協(xié)議。AXI總線協(xié)議的兩端可以分為分為主(master)、從(slave)兩端,他們之間一般需要通過(guò)一個(gè)AXI Interconnect相連接,作用是提供將一個(gè)或多個(gè)AXI主設(shè)備連接到一個(gè)或多個(gè)AXI從設(shè)備的一種交換機(jī)制。
AXI Interconnect的主要作用是,當(dāng)存在多個(gè)主機(jī)以及從機(jī)器時(shí),AXIInterconnect負(fù)責(zé)將它們聯(lián)系并管理起來(lái)。由于AXI支持亂序發(fā)送,亂序發(fā)送需要主機(jī)的ID信號(hào)支撐,而不同的主機(jī)發(fā)送的ID可能相同,而AXI Interconnect解決了這一問(wèn)題,他會(huì)對(duì)不同主機(jī)的ID信號(hào)進(jìn)行處理讓ID變得唯一。
AXI協(xié)議將讀地址通道,讀數(shù)據(jù)通道,寫(xiě)地址通道,寫(xiě)數(shù)據(jù)通道,寫(xiě)響應(yīng)通道分開(kāi),各自通道都有自己的握手協(xié)議。每個(gè)通道互不干擾卻又彼此依賴。這是AXI高效的原因之一。
01:AXI握手協(xié)議
AXI4 所采用的是一種 READY,VALID 握手通信機(jī)制,簡(jiǎn)單來(lái)說(shuō)主從雙方進(jìn)行數(shù)據(jù)通信前,有一個(gè)握手的過(guò)程。傳輸源產(chǎn)生 VLAID 信號(hào)來(lái)指明何時(shí)數(shù)據(jù)或控制信息有效。
而目地源產(chǎn)生READY信號(hào)來(lái)指明已經(jīng)準(zhǔn)備好接受數(shù)據(jù)或控制信息。 傳輸發(fā)生在VALID和 READY信號(hào)同時(shí)為高的時(shí)候。
如下圖中的一種實(shí)例:
02:突發(fā)式讀寫(xiě)
突發(fā)式讀的時(shí)序:
當(dāng)?shù)刂烦霈F(xiàn)在地址總線后,傳輸?shù)臄?shù)據(jù)將出現(xiàn)在讀數(shù)據(jù)通道上。設(shè)備保持VALID 為低直到讀數(shù)據(jù)有效。為了表明一次突發(fā)式讀寫(xiě)的完成,設(shè)備用 RLAST 信號(hào)來(lái)表示最后一個(gè)被傳輸?shù)臄?shù)據(jù)。
突發(fā)式寫(xiě)的時(shí)序:
這一過(guò)程的開(kāi)始時(shí),主機(jī)發(fā)送地址和控制信息到寫(xiě)地址通道中,然后主機(jī)發(fā)送每一個(gè)寫(xiě)數(shù)據(jù)到寫(xiě)數(shù)據(jù)通道中。當(dāng)主機(jī)發(fā)送最后一個(gè)數(shù)據(jù)時(shí),WLAST 信號(hào)就變?yōu)楦摺.?dāng)設(shè)備接收完所有數(shù)據(jù)之后他將一個(gè)寫(xiě)響應(yīng)發(fā)送回主機(jī)來(lái)表明寫(xiě)事務(wù)完成。
編輯:hfy-
Xilinx
+關(guān)注
關(guān)注
71文章
2171瀏覽量
122134 -
總線協(xié)議
+關(guān)注
關(guān)注
0文章
117瀏覽量
14899 -
Zynq
+關(guān)注
關(guān)注
10文章
610瀏覽量
47296
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論