《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 其他 > FPGA教學(xué)——AXI總線協(xié)議時(shí)序

FPGA教學(xué)——AXI總線協(xié)議時(shí)序

2022-08-10
來源:FPGA設(shè)計(jì)論壇
關(guān)鍵詞: FPGA AXI總線協(xié)議

  由于ZYNQ架構(gòu)和常用接口IP核經(jīng)常出現(xiàn) AXI協(xié)議,,賽靈思的協(xié)議手冊講解時(shí)序比較分散。所以筆者收藏AXI協(xié)議的幾種時(shí)序,,方便編程,。

  (1) AXI_LITE協(xié)議:

 ?。?1) 讀地址通道, 包含ARVALID, ARADDR, ARREADY信號;

 ?。?2) 讀數(shù)據(jù)通道,, 包含RVALID, RDATA, RREADY, RRESP信號;

 ?。?3) 寫地址通道,, 包含AWVALID, AWADDR, AWREADY信號,;

 ?。?4) 寫數(shù)據(jù)通道, 包含WVALID, WDATA,, WSTRB, WREADY信號,;

  ( 5) 寫應(yīng)答通道,, 包含BVALID, BRESP, BREADY信號,;( 6) 系統(tǒng)通道, 包含:ACLK,, ARESETN信號,。

  AXI4總線和AXI4-Lite總線的信號也有他的命名特點(diǎn):讀地址信號都是以AR開頭( A:address;R:read)寫地址信號都是以AW開頭( A:address,;W:write)讀數(shù)據(jù)信號都是以R開頭( R:read)寫數(shù)據(jù)信號都是以W開頭( W:write)

  AXI_LITE讀時(shí)序:

  微信圖片_20220810144407.png

  AXI_LITE:寫時(shí)序

  微信圖片_20220810144421.png

  (2) AXI_STREAM:

  AXI4-Stream總線的組成有:

 ?。?1) ACLK信號:總線時(shí)鐘, 上升沿有效,;

 ?。?2) ARESETN信號:總線復(fù)位, 低電平有效

 ?。?3) TREADY信號:從機(jī)告訴主機(jī)做好傳輸準(zhǔn)備,;

  ( 4) TDATA信號:數(shù)據(jù),, 可選寬度32,64,128,256bit

 ?。?5) TSTRB信號:每一bit對應(yīng)TDATA的一個(gè)有效字節(jié), 寬度為TDATA/8

 ?。?6) TLAST信號:主機(jī)告訴從機(jī)該次傳輸為突發(fā)傳輸?shù)慕Y(jié)尾,;

  ( 7) TVALID信號:主機(jī)告訴從機(jī)數(shù)據(jù)本次傳輸有效,;

 ?。?8) TUSER信號 :用戶定義信號, 寬度為128bit,。

微信圖片_20220810144558.png  

  (3)其他

  (a)AXI架構(gòu)

  AXI協(xié)議是基于burst的傳輸,,并且定義了以下5個(gè)獨(dú)立的傳輸通道:讀地址通道,、讀數(shù)據(jù)通道、寫地址通道,、寫數(shù)據(jù)通道,、寫響應(yīng)通道。

  地址通道攜帶控制消息用于描述被傳輸?shù)臄?shù)據(jù)屬性,,數(shù)據(jù)傳輸使用寫通道來實(shí)現(xiàn)“主”到“從”的傳輸,,“從”使用寫響應(yīng)通道來完成一次寫傳輸;讀通道用來實(shí)現(xiàn)數(shù)據(jù)從“從”到“主”的傳輸,。

微信截圖_20220810144618.png

  AXI是基于VALID/READY的握手機(jī)制數(shù)據(jù)傳輸協(xié)議,,傳輸源端使用VALID表明地址/控制信號、數(shù)據(jù)是有效的,,目的端使用READY表明自己能夠接受信息,。

  讀/寫地址通道:讀、寫傳輸每個(gè)都有自己的地址通道,,對應(yīng)的地址通道承載著對應(yīng)傳輸?shù)牡刂房刂菩畔ⅰ?/p>

  讀數(shù)據(jù)通道:讀數(shù)據(jù)通道承載著讀數(shù)據(jù)和讀響應(yīng)信號包括數(shù)據(jù)總線(8/16/32/64/128/256/512/1024bit)和指示讀傳輸完成的讀響應(yīng)信號,。

  寫數(shù)據(jù)通道:寫數(shù)據(jù)通道的數(shù)據(jù)信息被認(rèn)為是緩沖(buffered)了的,“主”無需等待“從”對上次寫傳輸?shù)拇_認(rèn)即可發(fā)起一次新的寫傳輸,。寫通道包括數(shù)據(jù)總線(8/16…1024bit)和字節(jié)線(用于指示8bit 數(shù)據(jù)信號的有效性),。

  寫響應(yīng)通道:“從”使用寫響應(yīng)通道對寫傳輸進(jìn)行響應(yīng)。所有的寫傳輸需要寫響應(yīng)通道的完成信號,。

  微信圖片_20220810144632.png

  圖3-4 接口與互聯(lián)

  AXI協(xié)議提供單一的接口定義,,能用在下述三種接口之間:master/interconnect,、slave/interconnect,、master/slave。

  可以使用以下幾種典型的系統(tǒng)拓?fù)浼軜?gòu):

  共享地址與數(shù)據(jù)總線

  共享地址總線,,多數(shù)據(jù)總線

  multilayer多層,,多地址總線,多數(shù)據(jù)總線

  在大多數(shù)系統(tǒng)中,,地址通道的帶寬要求沒有數(shù)據(jù)通道高,,因此可以使用共享地址總線,多數(shù)據(jù)總線結(jié)構(gòu)來對系統(tǒng)性能和互聯(lián)復(fù)雜度進(jìn)行平衡,。

  寄存器片(Register Slices):

  每個(gè)AXI通道使用單一方向傳輸信息,,并且各個(gè)通道直接沒有任何固定關(guān)系。因此可以可以在任何通道任何點(diǎn)插入寄存器片,,當(dāng)然這會(huì)導(dǎo)致額外的周期延遲,。

  使用寄存器片可以實(shí)現(xiàn)周期延遲(cycles of latency)和最大操作頻率的折中;使用寄存器片可以分割低速外設(shè)的長路徑,。

  (b)信號描述

  表 2-1 全局信號

  微信截圖_20220810144704.png

  表 2-4 寫響應(yīng)通道信號

 微信截圖_20220810144742.png

  微信截圖_20220810144806.png

  (c) 信號接口要求

  3.1時(shí)鐘復(fù)位

  時(shí)鐘

  每個(gè)AXI組件使用一個(gè)時(shí)鐘信號ACLK,,所有輸入信號在ACLK上升沿采樣,,所有輸出信號必須在ACLK上升沿后發(fā)生。

  復(fù)位

  AXI使用一個(gè)低電平有效的復(fù)位信號ARESETn,,復(fù)位信號可以異步斷言,,但必須和時(shí)鐘上升沿同步去斷言。

  復(fù)位期間對接口有如下要求:①主機(jī)接口必須驅(qū)動(dòng)ARVALID,,AWVALID,,WVALID為低電平;②從機(jī)接口必須驅(qū)動(dòng)RVALID,,BVALID為低電平,;③所有其他信號可以被驅(qū)動(dòng)到任意值。

  在復(fù)位后,,主機(jī)可以在時(shí)鐘上升沿驅(qū)動(dòng)ARVALID,,AWVALID,WVALID為高電平,。

  3.2基本讀寫傳輸

  握手過程

  5個(gè)傳輸通道均使用VALID/READY信號對傳輸過程的地址,、數(shù)據(jù)、控制信號進(jìn)行握手,。使用雙向握手機(jī)制,,傳輸僅僅發(fā)生在VALID、READY同時(shí)有效的時(shí)候,。下圖是幾種握手機(jī)制:

  微信截圖_20220810144837.png

  通道信號要求

  通道握手信號:每個(gè)通道有自己的xVALID/xREADY握手信號對,。

  寫地址通道:當(dāng)主機(jī)驅(qū)動(dòng)有效的地址和控制信號時(shí),主機(jī)可以斷言AWVALID,,一旦斷言,,需要保持AWVALID的斷言狀態(tài),直到時(shí)鐘上升沿采樣到從機(jī)的AWREADY,。AWREADY默認(rèn)值可高可低,,推薦為高(如果為低,一次傳輸至少需要兩個(gè)周期,,一個(gè)用來斷言AWVALID,,一個(gè)用來斷言AWREADY);當(dāng)AWREADY為高時(shí),,從機(jī)必須能夠接受提供給它的有效地址,。

  寫數(shù)據(jù)通道:在寫突發(fā)傳輸過程中,主機(jī)只能在它提供有效的寫數(shù)據(jù)時(shí)斷言WVALID,,一旦斷言,,需要保持?jǐn)嘌誀顟B(tài),知道時(shí)鐘上升沿采樣到從機(jī)的WREADY,。WREADY默認(rèn)值可以為高,,這要求從機(jī)總能夠在單個(gè)周期內(nèi)接受寫數(shù)據(jù),。主機(jī)在驅(qū)動(dòng)最后一次寫突發(fā)傳輸是需要斷言WLAST信號。

  寫響應(yīng)通道:從機(jī)只能它在驅(qū)動(dòng)有效的寫響應(yīng)時(shí)斷言BVALID,,一旦斷言需要保持,,直到時(shí)鐘上升沿采樣到主機(jī)的BREADY信號。當(dāng)主機(jī)總能在一個(gè)周期內(nèi)接受寫響應(yīng)信號時(shí),,可以將BREADY的默認(rèn)值設(shè)為高,。

  讀地址通道:當(dāng)主機(jī)驅(qū)動(dòng)有效的地址和控制信號時(shí),主機(jī)可以斷言ARVALID,,一旦斷言,,需要保持ARVALID的斷言狀態(tài),直到時(shí)鐘上升沿采樣到從機(jī)的ARREADY,。ARREADY默認(rèn)值可高可低,,推薦為高(如果為低,一次傳輸至少需要兩個(gè)周期,,一個(gè)用來斷言ARVALID,,一個(gè)用來斷言ARREADY);當(dāng)ARREADY為高時(shí),,從機(jī)必須能夠接受提供給它的有效地址,。

  讀數(shù)據(jù)通道:只有當(dāng)從機(jī)驅(qū)動(dòng)有效的讀數(shù)據(jù)時(shí)從機(jī)才可以斷言RVALID,一旦斷言需要保持直到時(shí)鐘上升沿采樣到主機(jī)的BREADY,。BREADY默認(rèn)值可以為高,,此時(shí)需要主機(jī)任何時(shí)候一旦開始讀傳輸就能立馬接受讀數(shù)據(jù)。當(dāng)最后一次突發(fā)讀傳輸時(shí),,從機(jī)需要斷言RLAST,。

  通道間關(guān)系

  AXI協(xié)議要求通道間滿足如下關(guān)系:

  寫響應(yīng)必須跟隨最后一次burst的的寫傳輸

  讀數(shù)據(jù)必須跟隨數(shù)據(jù)對應(yīng)的地址

  通道握手信號需要確認(rèn)一些依耐關(guān)系

  通道握手信號的依耐關(guān)系


  更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<

微信圖片_20210517164139.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。