新聞中心

AXI總線學習

作者: 時間:2016-12-14 來源:網絡 收藏
AXI(Advanced eXtensible Interface)是一種總協(xié)議,該協(xié)議是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0協(xié)議中最重要的部分,是一種面向高性能、高帶寬、低延遲的片內總線。它的地址/控制和數據相位是分離的,支持不對齊的數據傳輸,同時在突發(fā)傳輸中,只需要首地址,同時分離的讀寫數據通道、并支持顯著傳輸訪問和亂序訪問,并更加容易并行時序收斂。AXI是AMBA 中一個新的高性能協(xié)議。AXI 技術豐富了現有的AMBA 標準內容,滿足超高性能和復雜的片上系統(tǒng)(SoC)設計的需求。

本文引用地址:http://m.butianyuan.cn/article/201612/329843.htm

AXI 有讀地址和控制、讀數據、寫地址和控制、寫數據、寫響應5個通道。

控制和數據通道分離,可以帶來很多好處。地址和控制信息相對數據的相位獨立,可以先發(fā)地址,然后再是數據,這樣自然而然的支持顯著操作,也就是outstanding操作。Master訪問slave的時候,可以不等需要的操作完成,就發(fā)出下一個操作。這樣,可以讓slave在控制流的處理上流水起來,達到提速的作用。同時對于master,也許需要對不同的地址和slave就行訪問,所以可以對不同的slave 連續(xù)操作。而這樣的操作,由于slave返回數據的先后可能不按照master 發(fā)出控制的先后進行,導致出現了亂序操作(out of order )。

同時相對AHB 接口的單向hready信號,AXI的5個通道由雙向的valid和ready信號進行握手。同時在讀寫操作中,有l(wèi)ast 信號表明當前傳輸的是最后一個數據。

AXI的性能

AXI 能夠使SoC 以更小的面積、更低的功耗,獲得更加優(yōu)異的性能。AXI獲得如此優(yōu)異性能的一個主要原因,就是它的單向通道體系結構。單向通道體系結構使得片上的信息流只以單方向傳輸,減少了延時?! ?/p>

選擇采用何種總線,我們要評估到底怎樣的總線頻率才能滿足我們的需求,而同時不會消耗過多的功耗和片上面積。ARM一直致力于以最低的成本和功耗追求更高的性能。這一努力已經通過連續(xù)一代又一代處理器內核的發(fā)布得到了實現,每一代新的處理器內核都會引入新的流水線設計、新的指令集以及新的高速緩存結構。這促成了眾多創(chuàng)新移動產品的誕生,并且推動了ARM架構向性能、功耗以及成本之間的完美平衡發(fā)展?! ?/p>

AXI總線是一種多通道傳輸總線,將地址、讀數據、寫數據、握手信號在不同的通道中發(fā)送,不同的訪問之間順序可以打亂,用BUSID來表示各個訪問的歸屬。主設備在沒有得到返回數據的情況下可發(fā)出多個讀寫操作。讀回的數據順序可以被打亂,同時還支持非對齊數據訪問。  

AXI總線還定義了在進出低功耗節(jié)電模式前后的握手協(xié)議。規(guī)定如何通知進入低功耗模式,何時關斷時鐘,何時開啟時鐘,如何退出低功耗模式。這使得所有IP在進行功耗控制的設計時,有據可依,容易集成在統(tǒng)一的系統(tǒng)中。

AXI的特點

  單向通道體系結構。信息流只以單方向傳輸,簡化時鐘域間的橋接,減少門數量。當信號經過復雜的片上系統(tǒng)時,減少延時。   

支持多項數據交換。通過并行執(zhí)行猝發(fā)操作,極大地提高了數據吞吐能力,可在更短的時間內完成任務,在滿足高性能要求的同時,又減少了功耗?! ?/p>

獨立的地址和數據通道。地址和數據通道分開,能對每一個通道進行單獨優(yōu)化,可以根據需要控制時序通道,將時鐘頻率提到最高,并將延時降到最低。  

增強的靈活性。AXI技術擁有對稱的主從接口,無論在點對點或在多層系統(tǒng)中,都能十分方便地使用AXI技術。

AXI4的工作模式

握手機制

AXI4所采用的是一種READY,VALID握手通信機制,即主從模塊進行數據通信前,新根據操作對各所用到的數據、地址通道進行握手。主要操作包括傳輸發(fā)送者A等到傳輸接受者B的READY信號后,A將數據與VALID信號同時發(fā)送給B。如下圖所示:

axi總線的五個通道:

  • 讀地址通道,包含ARVALID, ARADDR, ARREADY信號;
  • 寫地址通道,包含AWVALID,AWADDR, AWREADY信號;
  • 讀數據通道,包含RVALID, RDATA, RREADY, RRESP信號;
  • 寫數據通道,包含WVALID, WDATA,WSTRB, WREADY信號;
  • 寫應答通道,包含BVALID, BRESP, BREADY信號;
  • 系統(tǒng)通道,包含:ACLK,ARESETN信號;

其中ACLK為axi總線時鐘,ARESETN是axi總線復位信號,低電平有效;讀寫數據與讀寫地址類信號寬度都為32bit;READY與VALID是對應的通道握手信號;WSTRB信號為1的bit對應WDATA有效數據字節(jié),WSTRB寬度是32bit/8=4bit;BRESP與RRESP分別為寫回應信號,讀回應信號,寬度都為2bit,‘h0代表成功,其他為錯誤。

A.讀操作:

順序為主與從進行讀地址通道握手并傳輸地址內容,然后在讀數據通道握手并傳輸所讀內容以及讀取操作的回應,時鐘上升沿有效。如圖所示:

B.寫操作:

順序為主與從進行寫地址通道握手并傳輸地址內容,然后在寫數據通道握手并傳輸所讀內容,最后再寫回應通道握手,并傳輸寫回應數據,時鐘上升沿有效。如圖所示:

axis分為:

  • tready信號:從告訴主做好傳輸準備;
  • tvalid信號:主告訴從數據傳輸有效;
  • tlast信號:主告訴從該次傳輸為突發(fā)傳輸結尾;
  • tdata信號:數據,可選寬度32,64,128,256bit
  • tstrb信號:為1的bit為對應tdata有效字節(jié),寬度為tdata/8
  • tuser信號 :用戶定義信號,寬度為128bit
  • aclk信號:總線時鐘,上升沿有效;
  • aresetn信號:總線復位,低電平有效;

通信時序如圖所示:

axi與axis是AXI4總線中通信復雜度較低的兩條總線,最大開發(fā)難度存在于axi的控制平面向axis的數據平面下發(fā)參數時,由于axi與axis時鐘頻率不同而產生的跨時鐘域數據傳輸問題。

AXI4:主要面向高性能地址映射通信的需求;

AXI4-Lite:是一個簡單地吞吐量地址映射性通信總線;

AXI4-Stream:面向高速流數據傳輸;

AXI4總線分為主、從兩端,兩者間可以連續(xù)的進行通信。

ISE從12.3版本,Virtex6,Spartan6芯片開始對AXI4總線提供支持,并且隨著Xilinx與ARM的合作面逐漸展開而得到大力推廣。

AXI4的優(yōu)勢

1.通過統(tǒng)一的AXI接口,開發(fā)者為開發(fā)ip core只需要學習一種協(xié)議即可;

2.AXI4是面向地址映射的接口,允許最大256輪的數據突發(fā)傳輸;

3.AXI4-Lite是一個輕量級的地址映射單次傳輸接口,占用很少的邏輯單元;

4.AXI4-Stream去掉了地址項,允許無限制的數據突發(fā)傳輸規(guī)模;



關鍵詞: AXI總線學

評論


技術專區(qū)

關閉