AXI4 協議

一、AXI4簡介

AXI4(Advanced eXtensible Interface 4)是ARM公司推出的高性能片上總線協議,屬于AMBA(Advanced Microcontroller Bus Architecture)標準的一部分。它專為高帶寬、低延遲的片上通信設計,廣泛應用于處理器、DSP、FPGA等復雜系統中。AXI4包含三個變體:

  • AXI4:標準版本,支持高帶寬內存映射通信。
  • AXI4-Lite:簡化版,用于寄存器等簡單設備的輕量級訪問。
  • AXI4-Stream:無地址協議,適用于高速數據流傳輸(如視頻、音頻)。

二、寫數據

一、寫地址通道

一、不重要信號:

信號名信號源信號介紹
AWID
mastar

寫地址ID。這個信號是寫地址組的標識標簽的信號

AWLOCKmastar提供有關傳輸的原子特性的其他信息。
AWCACHE
mastar總線存儲類型
AWPROT
mastar保護類型。他的信號表明事務的特權和安全級別,以及該事務是數據訪問還是指令訪問。
AWQOS
mastar

服務質量,QoS為每個寫事務發送的QoS標識符。僅在axis4中實現。

AWREGION
mastar

區域標識符。允許從機上的單個物理接口用于多個邏輯接口。僅在axis4中實現。

AWUSER
mastar

用戶信號。可選寫地址通道中的用戶自定義信號。僅在axis4中支持

二、重要信號

信號名信號源信號介紹
AWADDR
mastar寫地址.寫地址給出了寫突發事務中第一次傳輸的地址
AWLEN
mastar突發長度,突發長度給出了突發中傳輸的確切數量。此信息確定與該地址相關的數據傳輸的數量。這在AXI3和AXI4之間有所不同
AWSIZE
mastar突發大小。這個信號表示在突發中每次傳輸的大小
AWBURST
mastar突發類型。突發類型,加上大小信息(AWSIZE),詳細說明了如何在突發中計算每個傳輸的地址。
AWVALID
mastar

寫地址有效。該信號表明通道正在發送有效寫入信號地址和控制信息

AWREADY
slaver寫地址準備好。這個信號表明從機準備好接受一個地址和相關的控制信號:1 =從機準備好了0 =從機還沒有準備好

二、寫數據通道

一、不重要信號:

信號名信號源信號介紹
WID
mastar寫ID標簽。這個信號是寫入數據傳輸的ID標簽。僅在axis3中支持。
WUSER
mastar

用戶信號。可選寫數據通道中的用戶自定義信號。僅在axis4中支持

二、重要信號:

信號名信號源信號介紹
WDATA
mastar寫數據
WSTRB
mastar寫選通(strobe)。這個信號指示內存中要更新的字節位置。寫數據總線的每8位都有一個寫選通。因此,WSTRB[n]對應于WDATA[(8 × n) + 7:(8 × n)],即每一位選通自己對應的Byte
WLAST
mastar寫最后一個數據。這個信號指示寫突發中的最后一次傳輸。
WVALID
mastar寫有效。這個信號表示有效的寫數據和選通可用:1 = 寫數據和WSTRB可用 ; 0 =寫數據和WSTRB不可用。
WREADY
slaver寫準備好信號。這個信號表示從機可以接受寫數據

寫選通介紹:假如32數據我們只要寫入低十六位,只要將WSTRB設置為0011即可。

verilog
// 只更新低16位數據
WDATA = 32'hAABBCCDD;
WSTRB = 4'b0011; // 只使能最低兩個字節// 這將導致:
// - 字節0 (DATA[7:0]) = DD (被寫入)
// - 字節1 (DATA[15:8]) = CC (被寫入)
// - 字節2 (DATA[23:16]) = BB (被忽略)
// - 字節3 (DATA[31:24]) = AA (被忽略)

三、寫響應通道信號

一、不重要信號

信號名信號源信號介紹
BID
slave寫ID標簽。這個信號是寫入數據傳輸的ID標簽。僅在axis3中支持。
BUSER
slave

用戶信號。可選寫數據通道中的用戶自定義信號。僅在axis4中支持

二、重要信號

信號名信號源信號介紹
BRESP
slave寫響應。這個信號指示寫事務的狀態。允許的響應有OKAY、EXOKAY、SLVERR和DECERR。
BVALID
slave寫響應有效。這個信號表明一個有效的寫響應是可用的:1 =寫響應可用0 =寫響應不可用
BREADY
mastar響應ready。這個信號表示主機可以接受響應信息。1 = master就緒0 = master未就緒

四、寫通道介紹

寫數據的三個通道是相互獨立的。顯示寫事務如何使用寫地址、寫數據和寫響應通道。

三、讀數據

一、讀地址通道

一、不重要信號

信號名信號源信號介紹
ARID
mastar讀地址ID。該信號是信號讀地址組的識別標簽
ARLOCK
mastar提供有關傳輸的原子特性的其他信息。
ARCACHE
mastar存儲類型。該信號指示事務如何在系統中進行
ARPROT
mastar

保護類型。該信號表示事務的特權和安全級別,以及該事務是數據訪問還是指令訪問

ARQOS
mastar

服務質量,QoS為每個讀事務發送的QoS標識符。僅實現在axis4中

ARREGION
mastar

區域標識符。允許從機上的單個物理接口用于多個接口邏輯接口。僅在axis4中實現

ARUSER
mastar

用戶信號。可選讀地址通道中自定義信號。僅在axis4中支持

二、重要信號

信號名信號源信號介紹
ARADDR
mastar

讀地址。讀地址給出了讀突發中第一次傳輸的地址事務

ARLEN
mastar

突發長度。這個信號表明在一個突發中傳輸的確切數量。這在AXI3和AXI4之間有所不同

ARSIZE
mastar突發大小。這個信號表示在突發中每次傳輸的大小。
ARBURST
mastar突發類型。突發類型和大小信息決定了如何計算突發內每個傳輸的地址
ARVALID
mastar讀地址有效。該信號表明通道正在發送有效的讀地址和控制信息
ARREADY
Slave
讀地址準備好了。這個信號表明從機已經準備好接受一個地址以及相關的控制信號

二、讀數據通道

一、不重要信號

信號名信號源信號介紹
RID
Slave
讀取ID標簽。該信號是從機產生的讀數據組信號的識別標簽
RRESP
Slave
讀取響應。該信號表示讀傳輸的狀態。
RUSER
Slave
用戶信號。可選讀數據通道中的用戶自定義信號。僅在axis4中支持。

二、重要信號

信號名信號源信號介紹
RDATA
Slave
讀數據。
RLAST
Slave
讀最后一次。這個信號表示讀突發中的最后一次傳輸
RVALID
Slave
讀有效信號。該信號表明通道正在發送所需的讀取數據
RREADY
mastar都準備好信號。這個信號表示主機可以接受讀取的數據和響應信息

三、讀數據介紹

AXI4讀事務使用讀地址和讀數據通道示意:

四、AXI4 LIte和AXI4接口對比圖。

如下可見AXI4 lite接口相較于AXI4做了很多簡化,基本上只保留重要信號。

特性AXI4-LiteAXI4 (Full)
設計目的簡單控制寄存器訪問高性能大數據量傳輸
突發傳輸不支持。每次傳輸只讀/寫一個數據支持。可傳輸大量連續數據(最多256 beat)。
數據寬度通常固定為 32bit 或 64bit支持更寬的數據總線(可到1024bit)
通道信號大幅簡化功能完整
讀寫通道分離的讀/寫地址和數據通道分離的讀/寫地址和數據通道
事務屬性極少(如:非安全、非特權、數據無關)豐富(如:內存類型、緩存、緩沖區策略)
使用場景訪問IP核的控制狀態寄存器(CSR)高帶寬內存(DDR)、DMA高速外設通信
實現復雜度,邏輯資源占用少,邏輯資源占用多
握手信號必須有(xVALID/xREADY必須有(xVALID/xREADY

1. 突發傳輸 (Burst Transfer)

這是最根本的區別。

  • AXI4-Lite每次事務只能傳輸一個數據單元。例如,要寫入4個32位的數據,主設備必須發起4次獨立的寫事務(每次包含地址 phase 和數據 phase)。這效率低下,但控制簡單。

  • AXI4支持突發傳輸。主設備只需提供起始地址突發長度(Burst Length,例如4),就可以在一次事務中連續傳輸4個數據。從設備會自動遞增地址。這極大地提高了數據傳輸效率,減少了總線開銷。

2. 通道信號簡化

AXI4-Lite 移除了AXI4中與高性能操作相關的所有復雜信號,例如:

  • AxLEN突發長度。AXI4-Lite 沒有這個信號,因為長度固定為1。

  • AxSIZE突發大小。每次傳輸的大小必須與數據總線寬度一致(如32位總線就是4字節)。

  • AxBURST突發類型。固定為增量突發(Incr),但因為長度是1,所以地址也不會變。

  • WLAST最后一個寫數據。因為每次寫只有一個數據,所以這個信號不需要。

  • RLAST最后一個讀數據。同理,不需要。

  • AxLOCK,?AxCACHE,?AxQOS,?AxPROT?等:事務屬性。大部分被移除或固定為常量值。

3.如何選擇?

選擇使用哪種接口取決于IP核的功能和性能需求:

  • 使用 AXI4-Lite 當:

    • IP核只需要被配置(例如:設置使能位、中斷掩碼、控制寄存器)。

    • IP核只需要提供狀態信息(例如:讀取狀態寄存器、中斷狀態位)。

    • 數據傳輸是偶爾的、零星的,對帶寬要求極低。

    • 你想要最小化邏輯資源和功耗。

  • 使用 AXI4 當:

    • IP核需要持續不斷地流式傳輸大量數據(例如:視頻幀、音頻數據、網絡數據包)。

    • IP核作為DMA控制器,需要在內存和外設之間搬移大塊數據。

    • IP核需要高帶寬和低延遲來訪問系統內存(DDR)。

    • 性能是首要考慮因素。

五、握手機制

1、基本握手機制

AXI4 使用簡單的雙向握手協議:

  • VALID?信號:由發送方驅動,表示數據/地址/控制信息已經準備好并有效

  • READY?信號:由接收方驅動,表示接收方已準備好接受數據

傳輸發生在時鐘上升沿當 VALID 和 READY 同時為高時

2、AXI4 通道及其握手信號

通道方向VALID 信號READY 信號功能描述
寫地址通道主→從AWVALIDAWREADY傳輸寫地址和控制信息
寫數據通道主→從WVALIDWREADY傳輸寫數據和寫選通
寫響應通道從→主BVALIDBREADY返回寫操作響應
讀地址通道主→從ARVALIDARREADY傳輸讀地址和控制信息
讀數據通道從→主RVALIDRREADY返回讀數據和響應

六、突發傳輸

由圖可見在突發讀時候,地址必須要在讀地址有效和讀地址準備信號同時有效時候才能有效。T2時刻上升沿時候可見。然后就是讀數據通道。讀數據通道下,讀有效和讀有效準備信號也是同時拉高才有效。然后在讀數據通道根據我們讀地址信號的數據進行突發傳輸。但是從機響應的準備信號拉高時和用戶讀有效拉高時候才傳輸。突發寫同理不過多介紹。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/98089.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/98089.shtml
英文地址,請注明出處:http://en.pswp.cn/web/98089.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

《餓殍:明末千里行》Switch版試玩發布 3月13日發售

使用jQuery的常用方法與返回值分析 jQuery是一個輕量級的JavaScript庫,旨在簡化HTML文檔遍歷和操作、事件處理以及動畫效果的創建。本文將介紹一些常用的jQuery方法及其返回值,幫助開發者更好地理解和運用這一強大的庫。 1. 選擇器方法 jQuery提供了多種…

[特殊字符] 認識用戶手冊用戶手冊(也稱用戶指南、產品手冊)是通過對產品功能的清

一份優秀的用戶手冊能有效降低用戶的使用門檻,提升用戶體驗和工作效率。下面我將為你梳理編寫用戶手冊的核心要點、步驟和技巧。📖 認識用戶手冊用戶手冊(也稱用戶指南、產品手冊)是??通過對產品功能的清晰解釋,為特…

蘋果軟件代碼混淆,iOS混淆、iOS加固、ipa安全與合規取證注意事項(實戰指南)

在移動軟件交付與合規審計中,蘋果軟件代碼混淆已成為保護知識產權與用戶數據的常規手段。但混淆帶來的不僅是逆向難度的提升,也會觸發崩潰取證、符號化(symbolication)、審計合規與法律證據保存等問題。本文從工程與合規雙視角出發…

Redis框架詳解

目錄 1. redis是什么 主要特點 2. redis中存儲的數據類型 2.1 String類型 2.2 List類型 2.3 Hash類型 2.4 Set類型 2.5 Zset類型 2.6 其它類型 3.redis高可用框架 1. redis是什么 Redis 是一個開源的、基于內存的數據結構存儲系統,是 Remote Dictionary…

每日隨機展示10個wordpress置頂文章

WordPress 置頂文章是博主根據自己的需要設置的&#xff0c;通常用于展示重要或熱門的文章。 以下是一個示例代碼&#xff0c;用于在 WordPress 主題中展示 10 個置頂文章&#xff1a; <?php // 查詢置頂文章 $sticky get_option(sticky_posts); $args array(post__in …

金融工程vs金融數學:誰更貼近量化交易?

在金融行業邁向高度數字化的今天&#xff0c;量化交易已成為頂尖金融機構的核心競爭力之一。它以數學模型為基礎&#xff0c;借助編程技術實現策略自動化&#xff0c;在高頻、中低頻、套利、因子投資等多個領域展現出強大生命力。對于有志于此的大學生而言&#xff0c;選擇一個…

實測AI Ping,一個大模型服務選型的實用工具

作為一名長期奮戰在一線的AI應用工程師&#xff0c;我在技術選型中最頭疼的問題就是&#xff1a;“這個模型服務的真實性能到底如何&#xff1f;” 官方的基準測試總是在理想環境下進行&#xff0c;而一旦投入使用&#xff0c;延遲波動、吞吐下降、高峰期服務不可用等問題就接踵…

深信服軟件:aTrustAgent異常占用問題處理

問題&#xff1a;aTrustAgent占用CPU 大早上開電腦&#xff0c;風扇轉的飛起&#xff0c;任務管理器看&#xff0c;發現是有幾個 aTrustAgent 進程搞得鬼。 印象中&#xff0c;好像沒有裝過這個軟件&#xff0c;搜了下&#xff0c;是深信服的軟件&#xff0c;不知道是不是裝哪…

基于國產銀河麒麟服務器SP3項目實戰(Nginx+Keepalive)實現高可用負載均衡

一、環境準備 192.168.113.11NginxKeepalive(Master)192.168.113.22Nginxkeepalive(Backup)192.168.113.33Nginx(web服務器)192.168.113.44 Nginx(服務器&#xff09; 二、環境搭建準備 2.1 Nginx源碼編譯安裝 參考作責之前發布《Nginx源碼編譯安裝》https://blog.csdn.net…

K近鄰:從理論到實踐

K近鄰&#xff1a;從理論到實踐 文章目錄K近鄰&#xff1a;從理論到實踐1. 核心思想2. 距離度量3. k的選擇與誤差分析3.1 近似誤差3.2 估計誤差3.3 總誤差4. kd樹的構造與搜索4.1 kd樹的構造4.2 kd樹的搜索5. 總結6. K近鄰用于iris數據集分類6.1加載數據6.2加載模型并可視化1. …

Dokcer的安裝(ubuntu-20.04.6):

Dokcer的安裝(ubuntu-20.04.6)&#xff1a; 1.添加Docker倉庫 #更新本地軟件包索引&#xff0c;獲取最新的軟件包信息 sudo apt-get update #安裝依賴包 sudo apt-get install -y \ ca-certificates \ curl \ gnupg \ lsb-release #創建密鑰存儲目錄 sudo mkdir -p /etc/apt/…

CT圖像重建原理

一、CT到底測了什么&#xff1f;硬件動作X 射線源與探測器陣列對置&#xff0c;圍著物體旋轉。每轉到一個角度 θ&#xff08;也叫一個視角 / view&#xff09;&#xff0c;源發射扇形/平行的射線束&#xff0c;探測器陣列上有很多“通道/像素/bin”&#xff08;記作索引 n&…

【pycharm】 ubuntu24.04 搭建uv環境

通過uv配置python環境 一直是conda環境 現在有個開源項目說用uv更快更好 所以在pycharm搞起。 一開始在在一個conda項目的里面某個項目里搞 發現會被conda 環境影響。 導致deepseed 安裝不了。 python 環境不對 # NOTE: We must explicitly request them as `dependencies` abo…

從軟件工程角度談企業管理

從軟件工程角度談企業管理企業管理&#xff0c;本質上是人與人之間的博弈。 管理的最大難題&#xff0c;不是定目標、不是寫流程&#xff0c;而是&#xff1a;如何讓個體的利益最大化路徑&#xff0c;與組織的整體目標一致&#xff1f; 這就是經濟學里的“激勵相容”。 在互聯網…

vue3 實現前端生成水印效果

vue3 實現前端生成水印效果首先一點哈&#xff0c;就是單純web前端生成水印只能作為警示使用&#xff0c;如果享徹底防住幾乎是不可能的&#xff0c;有無數種方式去掉web前端生成的水印&#xff0c;所以這種方式只當是一個君子協議吧。編寫水印組件 首先直接把這部分封裝成一個…

Armonia Mall超級數字生態WEB3商城的引領者

Armonia Mall是一個基于Web3技術的超級數字生態商城&#xff0c;旨在打造全球首家Web3數字普惠商城&#xff0c;幫助千萬行銷人實現數字生態創業&#xff0c;讓全球一億家庭共享數字經濟紅利。 Armonia Mall商城創始人&#xff1a;石玉華Armonia Mall七大超級機制&#xff08;模…

Axios與Java Spring構建RESTful API服務集成指南

1 前后端分離時代的技術選擇 現在的Web開發&#xff0c;前后端分離已經不是什么新鮮事了。前端用什么&#xff1f;很多團隊選擇Axios。后端呢&#xff1f;Java Spring依然是企業級應用的首選。 Axios這個JavaScript庫確實好用&#xff0c;Promise-based的設計讓異步請求變得簡單…

Django ORM多對多關系實戰指南

一、Django 多對多關系的原理 在關系型數據庫中&#xff0c;多對多關系通常需要 第三張中間表 來維護兩張表之間的對應關系。 在 Django 中&#xff0c;你只需要定義 ManyToManyField&#xff0c;Django 會自動幫你創建這張中間表。 特點&#xff1a; 可以雙向查詢&#xff08;…

STM32 單片機開發 - TIM 定時器(PWM)

一、硬件定時器高級控制定時器 Advanced Control Timers (TIM1/TIM8)通用定時器 General Purpose Timers (TIM2/TIM3/TIM4/TIM5)通用定時器 General Purpose Timers (TIM15/TIM16/TIM17)基本定時器 Basic Timers (TIM6/TIM7)表 1 定時器種類二、TIM 中 PWM 概念PWM 的基本原理就…

OpenCV內置分類器實現簡單的人臉識別

引言 人臉檢測是計算機視覺領域的基礎任務之一&#xff0c;廣泛應用于安防監控、人機交互、圖像美化等場景。今天我們將通過一段簡潔的Python代碼&#xff0c;使用OpenCV庫實現實時攝像頭人臉檢測功能。無論你是計算機視覺新手還是有經驗的開發者&#xff0c;這篇文章都能幫你理…