版權聲明:本文為CSDN博主「yangzhiyuan0928」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/yang2011079080010/article/details/52605567
AXI4總線分為主、從兩端,兩者間可以連續的進行通信,AXI 4總線采用READY,VALID握手通信機制,主設備收到從設備發送的READY,主設備將數據和VALID信號同時發送給從設備。
AXI4:主要面向高性能地址映射通信的需求;
AXI4-Lite:是一個簡單地吞吐量地址映射性通信總線;AXI 4-Lite所有的猝發長度為1,數據總線寬度為32位或64位
AXI4-Stream:面向高速流數據傳輸;AXI 4-Stream數據總線寬度:8、16、32、64、128、256、512和1024位;
AWLEN,猝發長度,是一個猝發中傳送的數據個數,傳送個數=AWLEN+1;如AWLEN=5,傳送6個數據。
AWSIZE,猝發大小,猝發中每個傳送的數據的大小,字節數為=2^AWSIZE;如AWSIZE=0,每個數據是1個字節,AWSIZE=3,每個數據大小是8個字節
axi總線分為五個通道: axis信號分為:
--讀地址通道,包含ARVALID,ARADDR, ARREADY信號; --TREADY信號:從告訴主做好傳輸准備;
--寫地址通道,包含AWVALID,AWADDR,AWREADY信號; --TVALID信號:主告訴從數據傳輸有效;
--讀數據通道,包含RVALID,RDATA, RREADY, RRESP信號; --TLAST信號:主告訴從該次傳輸為突發傳輸結尾;
--寫數據通道,包含WVALID, WDATA,WSTRB,WREADY信號; --TDATA信號:數據,可選寬度32,64,128,256bit
--寫應答通道,包含BVALID,BRESP, BREADY信號; --TSTRB信號:為1的bit為對應tdata有效字節,寬度為tdata/8
--TUSER信號 :用戶定義信號,寬度為128bit
--ACLK信號:總線時鍾,上升沿有效;
--ARESETn信號:總線復位,低電平有效;
Valid信號必須保持有效直到ready信號有效
讀操作:
在讀交易中,主設備先發送ARADDR和ARVALID給從設備,從設備回發ARREADY,通知主設備該地址有效,當ARVALID和ARREADY都為高電平時,主設備發出RREADY,表示主設備准備好接受讀數據和相應信號了。從設備發送RVALID、RDATA以及RRESP,當RVALID和RREADY都為高電平時,數據被寫入主設備。
寫操作:
在寫操作中,主設備往從設備中寫入AWADDR和AWVALID,然后主設備並沒有等待從設備的AWREADY,而是繼續發送WVALID和WDATA,當從設備回應AWREADY有效后,緊接着從設備發送WREADY表示從設備准備好接受數據,當WVALID和WREADY都為高電平是數據寫入從設備。主設備發送的AWVALID和WVALID要有重疊區。