FPGA_AXI4總線


  (一)AXI總線是什么?

    AXI是ARM 1996年提出的微控制器總線家族AMBA中的一部分。AXI的第一個版本出現在AMBA3.0,發布於2003年。當前的最新的版本發布於2010年。

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

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

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

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

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

    (二)AXI4的優勢

    1.通過統一的AXI接口,開發者為開發ip core只需要學習一種協議即可;

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

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

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

   

    NetFPGA10G采用了AXI4系列總線架構,而Xilinx從Virtex6,Spartan6才開始支持AXI4。因此斯坦福的開發人員對在Virtex6上編譯出的帶有AXI4總線的ngc文件進行了修改加載到NetFPGA10G的ipcore中,使之騙過ISE,繼續網表映射流程。

    NetFPGA10G主要使用了其中的輕量級AXI4-lite(后文簡寫為axi)以及AXI4-stream(后文簡寫為axis)兩者。前者用於CPU與ip core之間的通信;后者用於各ip core之間進行高速數據傳輸。如果將整個構架分為控制層面與數據層面,則axi主要負責控制層面,axis主要負責數據層面。

     本文后續內容主要對輕量級axi以及axis總線進行介紹,如需AXI4整體總線通信模式,請參看ARM AXI4 Specification,  Xilinx UG761 AXI Reference Guide.

    (三)AXI4的工作模式

    1.握手機制

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

    2.axi的工作模式:

    axi總線分為五個通道:

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

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

    A.讀操作:

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

    B.寫操作:

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

    3.axis工作模式

    axis分為:

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

    通信時序如圖所示:

 

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM