chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

OpenFPGA ? 來(lái)源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-09-24 10:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

AXI4讀操作

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

如上圖所示,主設(shè)備向從設(shè)備通過(guò)讀地址通道指定讀數(shù)據(jù)地址及控制信號(hào),從設(shè)備通過(guò)讀數(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í)給定對(duì)應(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)依賴(lài)

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

AXI4寫(xiě)操作:

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

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

圖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寫(xiě)完為止.master收到AWREADY拉高的信號(hào)后,將AWVALID拉低。

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

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

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

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

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

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

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

圖4?20 寫(xiě)操作依賴(lài)

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

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

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

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

任何交易中:

l一個(gè) AXI 模塊的VALID 信號(hào)不能依賴(lài)于另一個(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)之間的依賴(lài)關(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)的依賴(lài)關(guān)系

圖4?22中所示,在一次寫(xiě)交易中:

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 寫(xiě)交易握手信號(hào)依賴(lài)關(guān)系

注意:

在一次寫(xiě)交易中,主設(shè)備不必等AWREADY 有效之后去發(fā)送WVALID ,這一點(diǎn)是很重要的。如果主設(shè)備在發(fā)送WVALID 信號(hào)之前,必定不會(huì)等待使能AWREADY 信號(hào),反過(guò)來(lái)如果從設(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ā)示例

?寫(xiě)猝發(fā)示例

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

讀猝發(fā)示例

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

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

地址總線(xiàn)上出現(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í)可以開(kāi)始處理第二個(gè)猝發(fā) 交易的數(shù)據(jù)。

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

寫(xiě)猝發(fā)示例

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

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

信號(hào)描述

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

l全局信號(hào)

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

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

l寫(xiě)響應(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ù)位,低有效。

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

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

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

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

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

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

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

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

信號(hào)名 AXI4 AXI-Lite
BID 響應(yīng)ID。寫(xiě)響應(yīng)識(shí)別標(biāo)記,BID值必須匹配AWID值。 不支持
BRESP 寫(xiě)響應(yīng)。該信號(hào)表示寫(xiě)狀態(tài),可允許相應(yīng)的表示為OKAYEXOKAYSLVERRDECERR。 EXOKAY狀態(tài)不支持
BUSER xilinx AXI4不支持。 不支持
BVALID 寫(xiě)響應(yīng)有效。為高指示響應(yīng)數(shù)據(jù)有效。
BREADY 寫(xiě)響應(yīng)準(zhǔn)備。為高表示主設(shè)備空閑,準(zhǔn)備接收寫(xiě)響應(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ā)長(zhǎng)度。給出突發(fā)傳輸中準(zhǔn)確的傳輸個(gè)數(shù)。支持INCR和WRAP傳輸模式。 不支持
ARSIZE 突發(fā)大小。這個(gè)信號(hào)用于確定突發(fā)傳輸中每個(gè)傳輸?shù)拇笮 ?/td> 不支持
ARBURST 突發(fā)類(lèi)型。該信息與突發(fā)大小信息一起,表示在突發(fā)過(guò)程中,地址如何應(yīng)用于每個(gè)傳輸。支持INCR和WRAP傳輸模式。 不支持
ARLOCK 鎖類(lèi)型。該信號(hào)提供了關(guān)于傳輸原子特性的額外信息(普通或互斥訪(fǎng)問(wèn))。 不支持
ARCACHE 緩存類(lèi)型,建議值為0011。
ARPROT 保護(hù)類(lèi)型,建議值為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讀寫(xiě)數(shù)據(jù)有效。為高指示數(shù)據(jù)有效。
TREADY Yes 1 Stream讀寫(xiě)讀準(zhǔn)備。為高表示對(duì)端設(shè)備空閑,準(zhǔn)備接收數(shù)據(jù);為低表示對(duì)端設(shè)備忙。
TDATA Yes 0 Stream讀寫(xiě)數(shù)據(jù),8到4096位寬。
TSTRB Yes 同TKEEP,否則為1 字節(jié)選通信號(hào)。用于表示更新存儲(chǔ)器的字節(jié)通道,對(duì)于數(shù)據(jù)總線(xiàn)的每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 用戶(hù)定義的邊帶信息,這些信息能伴隨數(shù)據(jù)流進(jìn)行發(fā)送。

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

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

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

地址選擇

主要描述AXI猝發(fā)類(lèi)型、在一次猝發(fā)過(guò)程中如何計(jì)算地址以及字節(jié)傳輸?shù)耐ǖ?。包含章?jié)如下:

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

●猝發(fā)長(zhǎng)度

●猝發(fā)大小

●猝發(fā)類(lèi)型

●猝發(fā)地址

關(guān)于地址選擇

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

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

猝發(fā)長(zhǎng)度

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

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

對(duì)于循回猝發(fā)方式來(lái)講,猝發(fā)的長(zhǎng)度必須是2,4,8,或16。

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

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

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

猝發(fā)大小

下圖中顯示, 通過(guò)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é)議通過(guò)傳輸?shù)刂穪?lái)決定使用哪一個(gè)數(shù)據(jù)總線(xiàn)上的字節(jié)通道進(jìn)行傳輸。

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

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

猝發(fā)類(lèi)型

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

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

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

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

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

圖4?28 burst類(lèi)型譯碼表

地址固定的猝發(fā)

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

地址遞增的猝發(fā)

在地址遞增的猝發(fā)類(lèi)型中,猝發(fā)中每次傳輸所需的地址是通過(guò)增加前一個(gè)傳輸?shù)刂穪?lái)得到。增加的值取決于傳輸量的大小。例如:一次猝發(fā)中,每次傳輸所需的地址為四個(gè)字節(jié),那么這個(gè)地址就是有前一個(gè)地址值加四得到的。

地址循回的猝發(fā)

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

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

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

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

猝發(fā)地址

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

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

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

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

Aligned_Address 與起始地址對(duì)齊的類(lèi)型

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

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

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

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

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

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

使用如下公式確定猝發(fā)過(guò)程中的傳輸?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.

對(duì)于循回猝發(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).

通過(guò)使用以下方程可以確定一次猝發(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)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • AXI4
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

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

    關(guān)注

    0

    文章

    8

    瀏覽量

    2371

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

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    NVMe IP之AXI4總線(xiàn)分析

    支持 不支持 不支持 AXI4-Full:主要用于高性能地址映射通信的需求,是面向地址映射的接口。由于讀寫(xiě)地址通道是分離的,所以支持雙向同
    發(fā)表于 06-02 23:05

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

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

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

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

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

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

    一文詳解ZYNQ中的DMA與AXI4總線(xiàn)

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

    ZYNQ中DMA與AXI4總線(xiàn)

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

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

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

    AXI4 、 AXI4-Lite 、AXI4-Stream接口

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

    AXI3與AXI4寫(xiě)響應(yīng)的依賴(lài)區(qū)別?

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

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

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

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

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

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

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

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

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

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

    NVMe AXI4 Host Controller IP可以連接高速存儲(chǔ)PCIe SSD,無(wú)需CPU,自動(dòng)加速處理所有的NVMe協(xié)議命令,具備獨(dú)立的數(shù)據(jù)寫(xiě)入和讀取AXI4接口,不但適用高性能、順序
    的頭像 發(fā)表于 07-18 09:17 ?1256次閱讀
    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 ?1087次閱讀
    AMBA <b class='flag-5'>AXI4</b>接口協(xié)議概述