衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AXI4讀寫操作時(shí)序及AXI4猝發(fā)地址及選擇

OpenFPGA ? 來源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-09-24 10:29 ? 次閱讀

AXI4讀操作

圖 4?15 讀通道架構(gòu)

如上圖所示,主設(shè)備向從設(shè)備通過讀地址通道指定讀數(shù)據(jù)地址及控制信號(hào),從設(shè)備通過讀數(shù)據(jù)通道將指定地址上的數(shù)據(jù)傳輸給主設(shè)備。

圖4?16 Read Burst 流程

1、當(dāng)狀態(tài)機(jī)的當(dāng)前狀態(tài)為WAIT_START時(shí),master將ARVALID拉高。

2、slave收到ARVALID信號(hào)后,將ARREADY拉高,持續(xù)到一次burst_len傳完為止。master收到ARREADY拉高的信號(hào)后,將ARVALID拉低。

3、ARADDR在ARVALID為高時(shí)給定對應(yīng)地址。

4、RREADY信號(hào)在收到RVALID信號(hào)為高時(shí)拉高,保持一個(gè)周期,讀取出數(shù)據(jù)。

5、RVALID信號(hào)由slave控制,具體控制模式參考slave模塊的設(shè)計(jì)。

6、當(dāng)一次讀取的最后一個(gè)數(shù)據(jù)包讀取時(shí)將RLAST拉高,表示一次Burst讀取完畢。

圖4?17 讀操作信號(hào)依賴

如圖可知,讀操作的兩個(gè)channel之間存在如下的依賴關(guān)系:必須等到ARVALID和ARREADY同時(shí)為High后,RVALID才能拉高。

AXI4寫操作:

圖4?18 寫通道架構(gòu)

如上圖所示,主設(shè)備向從設(shè)備通過寫地址通道指定寫數(shù)據(jù)地址及控制信號(hào),從設(shè)備通過寫數(shù)據(jù)通道將指定數(shù)據(jù)寫到從設(shè)備的指定地址上。待數(shù)據(jù)寫入完成后,從設(shè)備通過寫響應(yīng)通道向主設(shè)備傳遞寫響應(yīng)信號(hào),表明寫入完成。

圖4?19 Write Burst 流程

1、當(dāng)狀態(tài)機(jī)的當(dāng)前狀態(tài)為WAIT_START時(shí),master將AWVALID拉高。

2、slave收到AWVALID信號(hào)后,將AWREADY拉高,持續(xù)到一次burst_len寫完為止.master收到AWREADY拉高的信號(hào)后,將AWVALID拉低。

3、AWADDR在AWVALID為高時(shí)給定對應(yīng)地址。

4、WREADY信號(hào)在收到WVALID信號(hào)為高時(shí)拉高,保持一個(gè)周期,寫入數(shù)據(jù)。

5、WVALID信號(hào)由slave控制,具體控制模式參考slave模塊說明。

6、當(dāng)一次寫入的最后一個(gè)數(shù)據(jù)包讀取時(shí)將WLAST拉高,表示一次寫入完畢。

7、BRESP和BVALID都由slave控制,當(dāng)收到WLAST信號(hào)時(shí),BVALID拉高。

8、BREADY可以一直拉高,也可以在AWREADY信號(hào)拉高后保持拉高。直到BVALID信號(hào)拉高時(shí)將其拉低即可。

其中寫操作的信號(hào)依賴關(guān)系如下:

圖4?20 寫操作依賴

如圖可知,ADDR和DATA兩個(gè)channel之間不存在依賴關(guān)系,需要滿足的是必須等到WVALID和WREADY同時(shí)為High,且最后一次傳輸完成后,BVALID才能拉高,表明寫操作結(jié)束。

通道握手信號(hào)之間的依賴關(guān)系

為了對VALID和READY之間的關(guān)系有更深刻理解,下面在展開說明一下。

為了防止發(fā)生死鎖,必須重視握手信號(hào)之間的依賴關(guān)系。

任何交易中:

l一個(gè) AXI 模塊的VALID 信號(hào)不能依賴于另一個(gè)模塊的READY 信號(hào)

lREADY 信號(hào)可以等待VALID 信號(hào)使能

-------------------注意---------------------------------------------

可以在使能 VALID 信號(hào)之后使能READY,也可以在使能VALID 信號(hào)之前將

READY 信號(hào)使能為默認(rèn)值,這樣設(shè)計(jì)更高效。.

--------------------------------------------------------------------

圖4?21和圖4?22為各握手信號(hào)之間的依賴關(guān)系圖。單箭頭指向的信號(hào)可以在指向它的信號(hào)未使能或使能后,它再使能;雙箭頭向的信號(hào),必須在指向它的信號(hào)全都使能后,它再使能。

圖4?21中所示,在一次讀交易中:

l從設(shè)備使能ARREADY 信號(hào)之前,可以在等待 ARVALID 信號(hào)被使能。

l從設(shè)備必須等待ARVALID 和ARREADY信號(hào)都有效后,再去使能RVALID 信號(hào)以返回讀數(shù)據(jù)

圖4?21 讀交易中握手信號(hào)的依賴關(guān)系

圖4?22中所示,在一次寫交易中:

l主設(shè)備必須等待從設(shè)備使能AWVALID 、WVALID信號(hào)之后,主設(shè)備再去使能AWREADY 、WREADY信號(hào)。

l從設(shè)備可以等待使能AWREADY、WVALID信號(hào)或者同時(shí)使能倆個(gè)信號(hào)后,再去使能AWREADY。

l從設(shè)備可以等待使能AWREADY、WVALID信號(hào)或者同時(shí)使能倆個(gè)信號(hào)后,再去使能AWREADY。

l從設(shè)備可以等待使能AWREADY、WVALID信號(hào)或者同時(shí)使能倆個(gè)信號(hào)后,再去使能AWREADY。

圖4?22 寫交易握手信號(hào)依賴關(guān)系

注意:

在一次寫交易中,主設(shè)備不必等AWREADY 有效之后去發(fā)送WVALID ,這一點(diǎn)是很重要的。如果主設(shè)備在發(fā)送WVALID 信號(hào)之前,必定不會(huì)等待使能AWREADY 信號(hào),反過來如果從設(shè)備在等待使能WVALID 信號(hào),再去使能AWREADY則這樣就會(huì)造成死鎖狀況。

AXI協(xié)議中的基本交易

本部分給出基于 AXI協(xié)議的基本交易的示例。每個(gè)示例都使用了VALID 和READY握手機(jī)制。地址信息及數(shù)據(jù)的傳輸都是在VALID 和READY 信號(hào)同時(shí)為高的時(shí)候傳輸。示例下面幾部分介紹:

?讀猝發(fā)示例

?連續(xù)的讀猝發(fā)示例

?寫猝發(fā)示例

本部分也介紹了交易順序。

讀猝發(fā)示例

圖4?23為一個(gè)4 拍的讀猝發(fā) 交易的時(shí)序圖。在這個(gè)例子中,主設(shè)備發(fā)送地址,一個(gè)周期后從設(shè)備接收。

主設(shè)備在發(fā)送地址的同時(shí)也發(fā)送了一些控制信息,用于記錄猝發(fā)的類型和長度,為了保持圖的清晰性,在此省略這些信號(hào)。

地址總線上出現(xiàn)地址之后,在讀數(shù)據(jù)通道上發(fā)生數(shù)據(jù)的傳輸。從設(shè)備一直保持

VALID 信號(hào)為低,直到讀數(shù)據(jù)準(zhǔn)備好。從設(shè)備發(fā)送RLAST 信號(hào)標(biāo)志著此次猝發(fā)交易中這是最后一個(gè)數(shù)據(jù)的傳輸。

圖4?23 讀猝發(fā)交易

交疊讀猝發(fā)示例

圖4?24為主設(shè)備在從設(shè)備接收第一個(gè)猝發(fā)交易的地址后發(fā)送另一個(gè)猝發(fā)交易的地址的時(shí)序圖。這樣可以保證一個(gè)從設(shè)備在完成第一個(gè)猝發(fā)交易的同時(shí)可以開始處理第二個(gè)猝發(fā) 交易的數(shù)據(jù)。

圖4?24 交疊讀猝發(fā)交易

寫猝發(fā)示例

圖4?25為一次寫交易的時(shí)序圖。當(dāng)主設(shè)備發(fā)送地址和控制信息到寫地址通道之后,交易過程開始。然后主設(shè)備通過寫數(shù)據(jù)通道發(fā)送每一個(gè)寫數(shù)據(jù),當(dāng)為最后一個(gè)需要發(fā)送的數(shù)據(jù)時(shí),主設(shè)備將WLAST 信號(hào)置高。當(dāng)從設(shè)備接收完所有的數(shù)據(jù)時(shí),從設(shè)備返回給主設(shè)備一個(gè)寫響應(yīng)信號(hào)標(biāo)志本次寫交易的結(jié)束。

圖4?25 寫猝發(fā)交易

信號(hào)描述

定義了AXI協(xié)議中使用的信號(hào)。雖然總線寬度和交易ID的寬度都是需要具體說明的,但在本章的表中先顯示32位的數(shù)據(jù)總線,一個(gè)4位的寫入數(shù)據(jù)選通,和4位的ID域。本章包含以下幾個(gè)部分:

l全局信號(hào)

l寫地址通道信號(hào)

l寫數(shù)據(jù)通道信號(hào)

l寫響應(yīng)通道信號(hào)

l讀地址通道信號(hào)

l讀數(shù)據(jù)通道信號(hào)

l低功耗接口信號(hào)

全局信號(hào)

表4?12 AXI全局信號(hào)

信號(hào)名 AXI4 AXI4-Lit
ACLK 全局時(shí)鐘。所有的信號(hào)在全局時(shí)鐘的上升沿采樣
ARESETN 全局復(fù)位,低有效。

寫地址通道信號(hào)

表4?13 寫地址通道信號(hào)

信號(hào)名 AXI4 AXI4-Lit
AWID 寫地址ID。這個(gè)信號(hào)用于寫地址信號(hào)組的標(biāo)記。 不支持
AWADDR 寫地址。寫地址給出突發(fā)數(shù)據(jù)傳輸?shù)牡谝粋€(gè)傳輸?shù)刂贰?/td>
AWLEN 突發(fā)長度。給出突發(fā)傳輸中準(zhǔn)確的傳輸個(gè)數(shù)。支持INCR和WRAP傳輸模式。 不支持
AWSIZE 突發(fā)大小。這個(gè)信號(hào)用于確定突發(fā)傳輸中每個(gè)傳輸?shù)拇笮 ?/td> 不支持
AWBURST 突發(fā)類型。該信息與突發(fā)大小信息一起,表示在突發(fā)過程中,地址如何應(yīng)用于每個(gè)傳輸。支持INCR和WRAP傳輸模式。 不支持
AWLOCK 鎖類型。該信號(hào)提供了關(guān)于傳輸原子特性的額外信息(普通或互斥訪問)。 不支持
AWCACHE 緩存類型,建議值為0011。
AWPROT 保護(hù)類型,建議值為000。
AWQOS QoS標(biāo)識(shí)符,xilinx AXI4不支持。 不支持
AWREGION 用于每個(gè)寫操作的地址通道上的域標(biāo)識(shí)符。 不支持
AWUSER xilinx AXI4不支持。 不支持
AWVALID 寫地址有效信號(hào)。為高指示地址有效。
AWREADY 寫地址準(zhǔn)備信號(hào)。為高表示從設(shè)備空閑,準(zhǔn)備接收地址;為低表示從設(shè)備忙。

寫數(shù)據(jù)通道信號(hào)

表4?14 寫數(shù)據(jù)通道信號(hào)

信號(hào)名 AXI4 AXI-Lite
WDATA 寫數(shù)據(jù),32位到1024位寬 只支持32位寬
WSTRB 寫字節(jié)選通,用于表示更新存儲(chǔ)器的字節(jié)通道,對于數(shù)據(jù)總線的每8位數(shù)據(jù)有一位寫選通信號(hào)。 從設(shè)備端可選擇忽略。
WLAST 寫最后一個(gè)數(shù)據(jù)指示信號(hào)。表示突發(fā)傳輸中的最后一個(gè)數(shù)據(jù)。 不支持
WUSER xilinx AXI4不支持。 不支持
WVALID 寫有效。為高指示數(shù)據(jù)有效。
WREADY 寫準(zhǔn)備。為高表示從設(shè)備空閑,準(zhǔn)備接收數(shù)據(jù);為低表示從設(shè)備忙。

寫響應(yīng)通道信號(hào)

表4?15 寫響應(yīng)通道信號(hào)

信號(hào)名 AXI4 AXI-Lite
BID 響應(yīng)ID。寫響應(yīng)識(shí)別標(biāo)記,BID值必須匹配AWID值。 不支持
BRESP 寫響應(yīng)。該信號(hào)表示寫狀態(tài),可允許相應(yīng)的表示為OKAYEXOKAYSLVERRDECERR。 EXOKAY狀態(tài)不支持
BUSER xilinx AXI4不支持。 不支持
BVALID 寫響應(yīng)有效。為高指示響應(yīng)數(shù)據(jù)有效。
BREADY 寫響應(yīng)準(zhǔn)備。為高表示主設(shè)備空閑,準(zhǔn)備接收寫響應(yīng);為低表示主設(shè)備忙。

讀地址通道信號(hào)

表4?16 讀地址通道信號(hào)

信號(hào)名 AXI4 AXI-Lite
ARID 讀地址ID。這個(gè)信號(hào)用于讀地址信號(hào)組的標(biāo)記。 不支持
ARADDR 讀地址。讀地址給出突發(fā)數(shù)據(jù)傳輸?shù)牡谝粋€(gè)傳輸?shù)刂贰?/td>
ARLEN 突發(fā)長度。給出突發(fā)傳輸中準(zhǔn)確的傳輸個(gè)數(shù)。支持INCR和WRAP傳輸模式。 不支持
ARSIZE 突發(fā)大小。這個(gè)信號(hào)用于確定突發(fā)傳輸中每個(gè)傳輸?shù)拇笮 ?/td> 不支持
ARBURST 突發(fā)類型。該信息與突發(fā)大小信息一起,表示在突發(fā)過程中,地址如何應(yīng)用于每個(gè)傳輸。支持INCR和WRAP傳輸模式。 不支持
ARLOCK 鎖類型。該信號(hào)提供了關(guān)于傳輸原子特性的額外信息(普通或互斥訪問)。 不支持
ARCACHE 緩存類型,建議值為0011。
ARPROT 保護(hù)類型,建議值為000。
ARQOS QoS標(biāo)識(shí)符,xilinx AXI4不支持。 不支持
ARREGION 用于每個(gè)讀操作的地址通道上的域標(biāo)識(shí)符。 不支持
ARUSER xilinx AXI4不支持。 不支持
ARVALID 讀地址有效信號(hào)。為高指示地址有效。
ARREADY 讀地址準(zhǔn)備信號(hào)。為高表示從設(shè)備空閑,準(zhǔn)備接收地址;為低表示從設(shè)備忙。

讀數(shù)據(jù)通道信號(hào)

表4?17 讀數(shù)據(jù)通道信號(hào)

信號(hào)名 AXI4 AXI-Lite
RID 讀ID標(biāo)記,該信號(hào)是讀數(shù)據(jù)信號(hào)組標(biāo)記,由從設(shè)備產(chǎn)生RID,RID必須和讀交易中的ARID匹配。 不支持
RDATA 讀數(shù)據(jù)。32位到1024位寬 只支持32位寬
RRESP 讀響應(yīng)。該信號(hào)表示讀狀態(tài),可允許相應(yīng)的表示為OKAYEXOKAYSLVERRDECERR。 EXOKAY狀態(tài)不支持
RLAST 讀最后一個(gè)數(shù)據(jù)指示信號(hào)。表示突發(fā)傳輸中的最后一個(gè)數(shù)據(jù)。 不支持
RUSER xilinx AXI4不支持。 不支持
RVALID 讀有效。為高指示數(shù)據(jù)有效。
RREADY 讀準(zhǔn)備。為高表示主設(shè)備空閑,準(zhǔn)備接收數(shù)據(jù);為低表示主設(shè)備忙。

AXI4-Stream信號(hào)

信號(hào)名 默認(rèn)值 功能
TVALID No N/A Stream讀寫數(shù)據(jù)有效。為高指示數(shù)據(jù)有效。
TREADY Yes 1 Stream讀寫讀準(zhǔn)備。為高表示對端設(shè)備空閑,準(zhǔn)備接收數(shù)據(jù);為低表示對端設(shè)備忙。
TDATA Yes 0 Stream讀寫數(shù)據(jù),8到4096位寬。
TSTRB Yes 同TKEEP,否則為1 字節(jié)選通信號(hào)。用于表示更新存儲(chǔ)器的字節(jié)通道,對于數(shù)據(jù)總線的每8位數(shù)據(jù)有一位選通信號(hào)。
TKEEP Yes 1 字節(jié)選通信號(hào)。TKEEP未被確認(rèn)的那些相關(guān)的字節(jié)是空字節(jié),可以從數(shù)據(jù)流中去除。
TLAST Yes 0 表明包的邊界。
TID Yes 0 數(shù)據(jù)流標(biāo)識(shí)符。
TDEST Yes 0 數(shù)據(jù)流路由信息。
TUSER Yes 0 用戶定義的邊帶信息,這些信息能伴隨數(shù)據(jù)流進(jìn)行發(fā)送。

低功耗接口信號(hào)

表4?18 低功耗接口信號(hào)

AXI4猝發(fā)地址及選擇

地址選擇

主要描述AXI猝發(fā)類型、在一次猝發(fā)過程中如何計(jì)算地址以及字節(jié)傳輸?shù)耐ǖ馈0鹿?jié)如下:

●關(guān)于地址選擇

●猝發(fā)長度

●猝發(fā)大小

●猝發(fā)類型

●猝發(fā)地址

關(guān)于地址選擇

AXI協(xié)議是基于猝發(fā)方式,主設(shè)備開始每次的猝發(fā),是通過發(fā)送傳輸所需的控制信息和傳輸過程中所需的首字節(jié)地址的方式,隨著猝發(fā)交易進(jìn)行,從設(shè)備負(fù)責(zé)計(jì)算接下來的傳輸所需要的地址。

猝發(fā)數(shù)不能超過4KB臨界值,這是為了防止猝發(fā)長度在從設(shè)備之間出現(xiàn)交叉現(xiàn)象,同時(shí)也限制了從設(shè)備需要地址增量的大小。

猝發(fā)長度

AWLEN 或ARLEN信號(hào)說明每次猝發(fā)傳輸開始時(shí),數(shù)據(jù)傳輸?shù)膫€(gè)數(shù),如下圖所示,每猝發(fā)可以傳輸長1-16個(gè)數(shù)據(jù)。

圖4?26 每猝發(fā)可以傳輸長1-16個(gè)數(shù)據(jù)

對于循回猝發(fā)方式來講,猝發(fā)的長度必須是2,4,8,或16。

每次交易進(jìn)行時(shí),必須通過設(shè)置AWLEN 或ARLEN信號(hào)來確定傳輸長度,任何器件都不能通過盡早地終止猝發(fā)的方式去減少數(shù)據(jù)傳輸個(gè)數(shù)。在一次寫猝發(fā)的過程中,主設(shè)備通過禁止寫選通信號(hào)的方式終止進(jìn)一步的寫操作,但是它必須完成本次猝發(fā)中剩下數(shù)據(jù)傳輸。在一次讀猝發(fā)過程中,主設(shè)備能丟棄進(jìn)一步的讀到數(shù)據(jù),但是它必須完成在本次猝發(fā)中剩下的數(shù)據(jù)傳輸。

-------------------注意---------------------------------------------

當(dāng)訪問一個(gè)讀敏感設(shè)備例如FIFO時(shí),拋棄不需要的讀數(shù)據(jù)會(huì)導(dǎo)致丟失數(shù)據(jù)。主設(shè)備不會(huì)來訪問這樣一種設(shè)備,它使用的猝發(fā)長度比自身需要的還長。--------------------------------------------------------------------

猝發(fā)大小

下圖中顯示, 通過ARSIZE 或AWSIZE信號(hào)設(shè)定了,在一次猝發(fā)中,每一時(shí)鐘節(jié)拍內(nèi)傳輸數(shù)據(jù)字節(jié)的最大字節(jié)數(shù),或數(shù)據(jù)傳輸?shù)淖畲笞止?jié)數(shù)。

圖4?27 burst大小譯碼表

AXI協(xié)議通過傳輸?shù)刂穪頉Q定使用哪一個(gè)數(shù)據(jù)總線上的字節(jié)通道進(jìn)行傳輸。

對于地址遞增或地址循回的猝發(fā),并且要求傳輸數(shù)據(jù)的寬度比數(shù)據(jù)總線上的要窄,這中猝發(fā)過程中,每次數(shù)據(jù)傳輸,使用不同的字節(jié)通道,這些通道對應(yīng)于猝發(fā)中每一個(gè)時(shí)鐘節(jié)拍。一個(gè)固定格式的猝發(fā),其地址保持不變,每拍數(shù)據(jù)傳輸都使用相同的字節(jié)通道。

任何數(shù)據(jù)傳輸?shù)膶挾榷疾荒艹^交易中期間的數(shù)據(jù)總線寬度。

猝發(fā)類型

AXI 協(xié)議定義了三種猝發(fā)類型:

●地址固定的猝發(fā)

●地址遞增的猝發(fā)

●地址循回的猝發(fā)

下圖顯示了如何通過ARBURST 或 AWBURST信號(hào)選擇猝發(fā)類型。

圖4?28 burst類型譯碼表

地址固定的猝發(fā)

在固定猝發(fā)類型中,猝發(fā)過程中,每次傳輸?shù)刂繁3忠粯?。如?dāng)加載或者清空一個(gè)FIFO外設(shè)時(shí),使用這種類型可以重復(fù)訪問同一個(gè)位置。

地址遞增的猝發(fā)

在地址遞增的猝發(fā)類型中,猝發(fā)中每次傳輸所需的地址是通過增加前一個(gè)傳輸?shù)刂穪淼玫健T黾拥闹等Q于傳輸量的大小。例如:一次猝發(fā)中,每次傳輸所需的地址為四個(gè)字節(jié),那么這個(gè)地址就是有前一個(gè)地址值加四得到的。

地址循回的猝發(fā)

地址循回的猝發(fā)類型類似于地址遞增猝發(fā)類型,在地址遞增猝發(fā)類型中,每次傳輸所需的地址值是前一次傳輸?shù)刂返倪f增,而在地址循回猝發(fā)類型中,當(dāng)?shù)竭_(dá)循回的邊界時(shí),地址再次回到低地址。循回的邊界是指,每次猝發(fā)的大小乘以該猝發(fā)過程的傳輸總量。

對于地址循回的猝發(fā)有兩個(gè)限制:

●起始地址必須與數(shù)據(jù)的大小對齊

●猝發(fā)的長度必須為 2,4,8 或16

猝發(fā)地址

這一節(jié)提供一些簡單的公式,在猝發(fā)過程中,用于確定地址和傳輸字節(jié)通道。公式中使用到的變量如下:

Start_Address 主設(shè)備發(fā)起的起始地址

Number_Bytes 每次數(shù)據(jù)傳輸中允許的最大的字節(jié)數(shù)

Data_Bus_Bytes 數(shù)據(jù)總線上的字節(jié)通道數(shù)

Aligned_Address 與起始地址對齊的類型

Burst_Length 一次猝發(fā)中數(shù)據(jù)傳輸?shù)目偭?/p>

Address_N 猝發(fā)中傳輸N的地址,N是2-16之間的一個(gè)整數(shù)。

Wrap_Boundary 一次循回猝發(fā)中的最低地址

Lower_Byte_Lane 一次傳輸中最低地址對應(yīng)的字節(jié)通道

Upper_Byte_Lane 一次傳輸中最高地址對應(yīng)的字節(jié)通道

INT(x) x四舍五入后的值

使用如下公式確定猝發(fā)過程中的傳輸?shù)刂?:

● Start_Address = ADDR

● Number_Bytes=2SIZE

● Burst_Length= LEN+1

●Aligned_Address=(INT(Start_Address / Number_Bytes))x Number_Bytes

使用如下公式確定猝發(fā)中首次傳輸所需的地址

●Address_1 = Start_Address .

使用如下公式確定猝發(fā)中首次傳輸后任何傳輸所需的地址

●Address_N = Aligned_Address+(N–1) x Number_Bytes.

對于循回猝發(fā)方式,Wrap_Boundary這個(gè)變量用于記錄循回的邊界:

●Wrap_Boundary =(INT (Start_Address /( Number_Bytesx Burst_Length)))

x(Number_Bytesx Burst_Length).

如果Address_N = Wrap_Boundary +(Number_Bytesx Burst_Length),使用以下公式:

●Address_N = Wrap_Boundary .

計(jì)算完循回邊界后使用如下公式:

●Address_N = Start_Address +((N–1)x Number_Bytes) - ( Number_Bytesx Burst_Length).

通過使用以下方程可以確定一次猝發(fā)中,哪個(gè)字節(jié)通道用于首次傳輸

●Lower_Byte_Lane=Start_Address-(INT(Start_Address/ Data_Bus_Bytes))

x Data_Bus_Bytes

●Upper_Byte_Lane=Aligned_Address+(Number_Bytes-1)-(INT ( Start_Address / Data_Bus_Bytes)) x Data_Bus_Bytes.

使用如下公式可以確定一次猝發(fā)中,首次傳輸之后,所有傳輸都使用了哪些字節(jié)通道

●Lower_Byte_Lane= Address_N –(INT ( Address_N / Data_Bus_Bytes)) x Data_Bus_Bytes

●Upper_Byte_Lane= Lower_Byte_Lane+ Number_Bytes–1.

傳輸?shù)臄?shù)據(jù)公式如下:

●DATA[(8xUpper_Byte_Lane)+7:(8xLower_Byte_Lane)].

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • AXI4
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    8915
  • axi協(xié)議
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    2151

原文標(biāo)題:?AXI總線詳解-AXI4讀寫操作時(shí)序及AXI4猝發(fā)地址及選擇

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    看看在SpinalHDL中AXI4總線互聯(lián)IP的設(shè)計(jì)

    。writeIssuingCapability:指明AXI4總線寫最大同時(shí)支持的指令個(gè)數(shù)。combinedIssuingCapability:其值應(yīng)不小于前兩者,用于在AXI4總線讀寫地址
    發(fā)表于 08-02 14:28

    看看Axi4寫通道decoder的設(shè)計(jì)

    讀寫分離的設(shè)計(jì)在Axi4總線中,讀和寫通道是完全相互獨(dú)立,互不干擾。故而無論是在設(shè)計(jì)Decoder還是Arbiter時(shí),均可以采用讀寫分離的方式。如前文所述,SpinalHDL在基于Axi4
    發(fā)表于 08-03 14:27

    AXI4接口協(xié)議的基礎(chǔ)知識(shí)

    AXI-4 Memory Mapped也被稱之為AXI-4 Full,它是AXI4接口協(xié)議的基礎(chǔ),其他AXI4接口是該接口的變形。總體而言,AXI-
    的頭像 發(fā)表于 09-23 11:20 ?6152次閱讀
    <b class='flag-5'>AXI4</b>接口協(xié)議的基礎(chǔ)知識(shí)

    一文詳解ZYNQ中的DMA與AXI4總線

    在ZYNQ中,支持AXI-Lite,AXI4AXI-Stream三種總線,但PS與PL之間的接口卻只支持前兩種,AXI-Stream只能在PL中實(shí)現(xiàn),不能直接和PS相連,必須通過
    的頭像 發(fā)表于 09-24 09:50 ?5612次閱讀
    一文詳解ZYNQ中的DMA與<b class='flag-5'>AXI4</b>總線

    ZYNQ中DMA與AXI4總線

    ZYNQ中DMA與AXI4總線 為什么在ZYNQ中DMA和AXI聯(lián)系這么密切?通過上面的介紹我們知道ZYNQ中基本是以AXI總線完成相關(guān)功能的: 圖4?34連接 PS 和 PL 的
    的頭像 發(fā)表于 11-02 11:27 ?4393次閱讀
    ZYNQ中DMA與<b class='flag-5'>AXI4</b>總線

    深入AXI4總線一握手機(jī)制

    本系列我想深入探尋 AXI4 總線。不過事情總是這樣,不能我說想深入就深入。當(dāng)前我對 AXI總線的理解尚談不上深入。但我希望通過一系列文章,讓讀者能和我一起深入探尋 AXI4。
    發(fā)表于 03-17 21:40 ?25次下載
    深入<b class='flag-5'>AXI4</b>總線一握手機(jī)制

    AXI4 、 AXI4-Lite 、AXI4-Stream接口

    AXI4 是一種高性能memory-mapped總線,AXI4-Lite是一只簡單的、低通量的memory-mapped 總線,而 AXI4-Stream 可以傳輸高速數(shù)據(jù)流。從字面意思去理解
    的頭像 發(fā)表于 07-04 09:40 ?8779次閱讀

    使用AXI4總線實(shí)現(xiàn)視頻輸入輸出

    Xilinx vivado下通常的視頻流設(shè)計(jì),都采用Vid In to axi4 stream --> VDMA write --> MM --> VDMA read -->
    的頭像 發(fā)表于 10-11 14:26 ?6023次閱讀

    AXI3與AXI4寫響應(yīng)的依賴區(qū)別?

    上面兩圖的區(qū)別是相比AXI3,AXI4協(xié)議需要確認(rèn)AWVALID、AWREADY握手完成才能回復(fù)BVALID。為什么呢?
    的頭像 發(fā)表于 03-30 09:59 ?1164次閱讀

    AXI4協(xié)議五個(gè)不同通道的握手機(jī)制

    AXI4 協(xié)議定義了五個(gè)不同的通道,如 AXI 通道中所述。所有這些通道共享基于 VALID 和 READY 信號(hào)的相同握手機(jī)制
    的頭像 發(fā)表于 05-08 11:37 ?1293次閱讀
    <b class='flag-5'>AXI4</b>協(xié)議五個(gè)不同通道的握手機(jī)制

    FPGA AXI4協(xié)議學(xué)習(xí)筆記(二)

    上文FPGA IP之AXI4協(xié)議1_協(xié)議構(gòu)架對協(xié)議框架進(jìn)行了說明,本文對AXI4接口的信號(hào)進(jìn)行說明。
    的頭像 發(fā)表于 05-24 15:05 ?1581次閱讀
    FPGA <b class='flag-5'>AXI4</b>協(xié)議學(xué)習(xí)筆記(二)

    Xilinx FPGA AXI4總線(一)介紹【AXI4】【AXI4-Lite】【AXI-Stream】

    從 FPGA 應(yīng)用角度看看 AMBA 總線中的 AXI4 總線。
    發(fā)表于 06-21 15:21 ?2405次閱讀
    Xilinx FPGA <b class='flag-5'>AXI4</b>總線(一)介紹【<b class='flag-5'>AXI4</b>】【<b class='flag-5'>AXI4</b>-Lite】【<b class='flag-5'>AXI</b>-Stream】

    漫談AMBA總線-AXI4協(xié)議的基本介紹

    本文主要集中在AMBA協(xié)議中的AXI4協(xié)議。之所以選擇AXI4作為講解,是因?yàn)檫@個(gè)協(xié)議在SoC、IC設(shè)計(jì)中應(yīng)用比較廣泛。
    發(fā)表于 01-17 12:21 ?2531次閱讀
    漫談AMBA總線-<b class='flag-5'>AXI4</b>協(xié)議的基本介紹

    Xilinx NVMe AXI4主機(jī)控制器,AXI4接口高性能版本介紹

    NVMe AXI4 Host Controller IP可以連接高速存儲(chǔ)PCIe SSD,無需CPU,自動(dòng)加速處理所有的NVMe協(xié)議命令,具備獨(dú)立的數(shù)據(jù)寫入和讀取AXI4接口,不但適用高性能、順序
    的頭像 發(fā)表于 07-18 09:17 ?646次閱讀
    Xilinx NVMe <b class='flag-5'>AXI4</b>主機(jī)控制器,<b class='flag-5'>AXI4</b>接口高性能版本介紹

    AMBA AXI4接口協(xié)議概述

    AMBA AXI4(高級(jí)可擴(kuò)展接口 4)是 ARM 推出的第四代 AMBA 接口規(guī)范。AMD Vivado Design Suite 2014 和 ISE Design Suite 14 憑借半導(dǎo)體產(chǎn)業(yè)首個(gè)符合 AXI4 標(biāo)準(zhǔn)的
    的頭像 發(fā)表于 10-28 10:46 ?311次閱讀
    AMBA <b class='flag-5'>AXI4</b>接口協(xié)議概述
    81数理 做生意| 马尼拉百家乐官网的玩法技巧和规则 | 澳门百家乐群策略| 闲和庄百家乐官网娱乐网| 梁河县| 大发888手机版下载安装| 百家乐真人娱乐平台| 24是吉还是凶| 百家乐官网7scs娱乐场| 上思县| 大发888什么赢钱快| 百家乐一邱大师打法| 网上百家乐骗人| 投真钱百家乐官网必输吗| bet365备用 必发| 正品百家乐玩法| 现场百家乐平台源码| 百家乐官网红桌布| 百家乐官网赌博详解| 利高百家乐官网现金网| 博彩通3333| 威尼斯人娱乐城老品牌| 百家乐赌博娱乐城大全| 百家乐注册赠金| 淘宝博百家乐官网的玩法技巧和规则| 网络百家乐官网娱乐| 战神娱乐| 大发888娱乐城 真钱下载| 万达百家乐娱乐城| 娱网百家乐补丁| 百家乐分析软件下| 博之道百家乐官网的玩法技巧和规则 | 稳赢的百家乐投注方法| 乐宝百家乐官网的玩法技巧和规则| 网上百家乐官网合法吗| 真钱斗地主| 网上百家乐游戏| 皇冠现金网哪个最好| 新大发888娱乐城| 大玩家百家乐的玩法技巧和规则| 博彩百家乐官网规则|