之前文章為大家介紹了AXI的協(xié)議與架構(gòu),本篇我們接著往下講AXI的讀寫傳輸
內(nèi)容概括
這次為大家講述的內(nèi)容包括:
AXI讀寫傳輸
0****1
讀寫傳輸
3.1
握手過程
5個(gè)傳輸通道均使用VALID/READY信號(hào)對(duì)傳輸過程的地址、數(shù)據(jù)、控制信號(hào)進(jìn)行握手。使用雙向握手機(jī)制,傳輸僅僅發(fā)生在 VALID 、 READY 同時(shí)有效的時(shí)候 。
- VALID信號(hào)表示地址/數(shù)據(jù)/應(yīng)答信號(hào)總線上的信號(hào)是有效的,由傳輸發(fā)起方控制
- READY信號(hào)表示傳輸接收方已經(jīng)準(zhǔn)備好接收,由傳輸接收方控制。
VALID和READY的先后關(guān)系具有三種情況:
- ALID先有效,等待READY有效后完成傳輸(VALID一旦有效后在傳輸完成前不可取消)。
- READY先有效,等待VALID有效后完成傳輸(READY可以在VALID有效前撤銷)。
- VALID和READY同時(shí)有效,立刻完成傳輸。
此外,需要注意的是允許READY信號(hào)等待VALID信號(hào)再有效,即即使從機(jī)準(zhǔn)備好,也可以不提供READY信號(hào),等到主機(jī)發(fā)送VALID信號(hào)再提供READY信號(hào)。對(duì)應(yīng)的VALID信號(hào)不允許等待READY信號(hào),即不允許VALID等待READY信號(hào)拉高后再拉高,否則容易產(chǎn)生死鎖現(xiàn)象。
3.2
讀操作順序
讀操作順序:
上圖為讀操作的依賴關(guān)系,ARREADY可以等待ARVALID信號(hào),RVALID必須等待ARVALID和ARREADY同時(shí)有效后(一次地址傳輸發(fā)生)才能能有效。
寫操作順序:
AXI3中寫操作中唯一的強(qiáng)依賴關(guān)系是寫響應(yīng)通道BVALID,僅當(dāng)WVALID和WREADY信號(hào)同時(shí)有效(數(shù)據(jù)傳輸完成)且WLAST信號(hào)有效(突發(fā)傳輸?shù)淖詈笠粋€(gè)數(shù)據(jù)傳輸完成)后才會(huì)被置位;
3.3
突發(fā)式讀寫
按照傳統(tǒng)的RAM的讀寫方式,給定一個(gè)Address,只能讀取或者寫入一個(gè)Data,但是在Burst模式下,給定一個(gè)Address,可以連續(xù)寫入或者讀取多組數(shù)據(jù)。當(dāng)?shù)刂烦霈F(xiàn)在地址總線后,傳輸?shù)臄?shù)據(jù)將出現(xiàn)在讀數(shù)據(jù)通道上。設(shè)備保持 VALID 為低直到讀數(shù)據(jù)有效。為了表明一次突發(fā)式讀寫的完成,設(shè)備用 RLAST 信號(hào)來表示最后一個(gè)被傳輸?shù)臄?shù)據(jù)。
突發(fā)式讀寫時(shí)序圖:
這一過程的開始時(shí),主機(jī)發(fā)送地址和控制信息到寫地址通道中,然后主機(jī)發(fā)送每一個(gè)寫數(shù)據(jù)到寫數(shù)據(jù)通道中。當(dāng)主機(jī)發(fā)送最后一個(gè)數(shù)據(jù)時(shí), WLAST 信號(hào)就變?yōu)楦摺.?dāng)設(shè)備接收完所有數(shù)據(jù)之后他將一個(gè)寫響應(yīng)發(fā)送回主機(jī)來表明寫事務(wù)完成。
a. 突發(fā)長(zhǎng)度(AxLEN)
突發(fā)長(zhǎng)度為每次突發(fā)傳輸?shù)膫鬏敶螖?shù) ,范圍限制116(AXI4增量模1256)且不能跨越4kb的地址空間,每次突發(fā)傳輸不允許提前終止(可以通過關(guān)閉所有數(shù)據(jù)字段的方式使一段傳輸數(shù)據(jù)無效,但傳輸行為必須完成)。每次傳輸?shù)耐话l(fā)長(zhǎng)度為AxLEN[3:0] + 1(AXI增量模式AxLEN[7:0] + 1.
- ARLEN[7:0]:讀地址通道的突發(fā)長(zhǎng)度接口
- AWLEN[7:0]:寫地址通道的突發(fā)長(zhǎng)度接口
對(duì)于回卷模式突發(fā)傳輸,突發(fā)長(zhǎng)度僅能是2,4,8或16。
b.突發(fā)尺寸(AxSIZE)
突發(fā)尺寸為每次傳輸?shù)腷yte數(shù)量,與突發(fā)傳輸?shù)牡刂奉A(yù)測(cè)相關(guān)性很強(qiáng)。每次的突發(fā)尺寸不能超過數(shù)據(jù)通道的寬度;若突發(fā)尺寸小于數(shù)據(jù)通道寬度,需要指定哪些位數(shù)是有效的。突發(fā)尺寸為2^AxSIZE[2:0]^。
- ARSIZE[2:0]:讀地址通道突發(fā)尺寸
- AWSIZE[2:0]:寫地址通道突發(fā)尺寸
c.突發(fā)類型(AxBURST)
AXI支持三種突發(fā)類型:
- FIXED (AxBURST[1:0]=0b00):固定突發(fā)模式,每次突發(fā)傳輸?shù)牡刂废嗤?/li>
- INCR (AxBURST[1:0]=0b01):增量突發(fā)模式,突發(fā)傳輸?shù)刂愤f增,遞增量與突發(fā)尺寸相關(guān)
- WRAP (AxBURST[1:0]=0b10):回卷突發(fā)模式,突發(fā)傳輸?shù)刂房梢绯鲂赃f增,突發(fā)長(zhǎng)度僅支持2,4,8,16。地址空間被劃分為長(zhǎng)度[突發(fā)尺寸*突發(fā)長(zhǎng)度]的塊,傳輸?shù)刂凡粫?huì)超出起始地址所在的塊,一旦遞增超出,則回到該塊的起始地址
本文借鑒自:
http://xilinx.eetrend.com/blog/2020/100052459.html
-
協(xié)議
+關(guān)注
關(guān)注
2文章
606瀏覽量
39341 -
傳輸
+關(guān)注
關(guān)注
0文章
154瀏覽量
27498 -
AXI
+關(guān)注
關(guān)注
1文章
128瀏覽量
16711
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論