<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是AXI outstanding

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-10-31 16:24 ? 次閱讀

什么是outstanding?

從字面理解,outstanding表示正在進行中的,未完成的意思,形象地說就是“在路上”。

比如現在需要傳輸一段數據,假設沒有outstanding,必須等到地址握手成功才能傳輸數據,而每一次握手過程中都不能保證主從機此刻都準備好,那這樣在數據傳輸過程中就難免會有氣泡,難以實現真正的全流水和滿性能。

所以從設計的角度,我們就有多發幾個地址的需求,比如我們可以發出去10個地址,盡管我們還沒給數據,但是可以讓從機知道,我們接下來要向這些地址寫數據,這樣就可以不用刻板地遵循,每次都要寫地址握手成功再寫數據。

所以在這個例子中,outstanding就是發出去的地址數量,未處理的地址可以先存放在AXI總線的緩存里,等完成一次傳輸事物之后,無需再握手傳輸地址,即可立即進行下一次的數據傳輸,所以outstanding本質上是為了實現數據傳輸的pipeline。

簡單講,如果沒有outstanding,或者說outstanding能力為1,則總線Master的行為如下(AHB總線就沒有outstanding能力):

?1)讀操作:讀地址命令 -》 等待讀數據返回 -》 讀地址命令 -》 等待讀數據返回

?2)寫操作:寫地址命令-》寫數據-》等待寫響應返回-》寫地址命令-》寫數據-》等待寫響應返回

而如果outstanding能力為N》1的話,則:

?1)讀操作:可以連續發N個讀地址命令,這期間如果讀數據沒有返回,則需要等待讀數據返回,如果有讀數據返回,則返回了幾個,那么仍然可以接著發幾個。也就是說,“在路上”的讀命令(或者讀數據)最多可以是N。多說一點,可以看出,如果數據返回得比較慢,那么IP需要等待,效率就會比較低,因此,為了提高效率,有必要提高outstanding能力,以彌補”路上“(總線)引入的延時。但是也不能無限制地發,否則有可能會引起總線擁塞,把其他IP給堵住。

如何計算outstanding?

首先,對于AXI而言,outstanding能力分為讀outstanding能力和寫outstanding能力。

如何計算outstanding能力呢?

首先對一些概念進行類比:

?burst傳輸的長度為一列高鐵的節數,8節高鐵對應的burst length=8。

?一節高鐵載的乘客數就是AXI的數據位寬,常見的AXI的數據位寬有64bit,128bit等等。

?高鐵的速度就是AXI總線的時鐘頻率,好比AXI的頻率有的是200MHz,有的是300MHz。

?從高鐵站觸發,到終點的線路長度就是AXI的總線延遲,即AXI的Master 到Slave的延遲拍數(Clock
Cycle)固定了,一節高鐵可以等效為AXI的一個Cycle。

類比之后,以一段高鐵線路為例,起點為A,終點為B,從A到B的高鐵線路如果要達到最高效率,需要在線路上排滿高鐵,首尾相接。那么需要多少列高鐵才能達到最大效率呢?

假設需要X列高鐵,(1列有N節)

X=(高鐵線路總長度2)/(N節高鐵的長度),N節高鐵的長度=1節高鐵的長度N,

所以X可變換為((高鐵線路總長度/1節高鐵長度)*2)/N,其中(高鐵線路總長度/1節高鐵長度)為高鐵總節數,因為一節高鐵對應一個AXI的cycle,所以高鐵總節數對應該線路的延遲Cycle總數。

X=線路延遲Cycle數目*2/N,

X即為AXI outstanding,其中線路延遲Cycle數目*2為Round Trip Latency(cycle)(往返總延遲),N為burst length。

(補充:最大傳輸帶寬=AXI Clock Frequency x AXI Data Width)

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    6550

    瀏覽量

    87867
  • 總線
    +關注

    關注

    10

    文章

    2735

    瀏覽量

    87389
  • AXI
    AXI
    +關注

    關注

    1

    文章

    126

    瀏覽量

    16350
收藏 人收藏

    評論

    相關推薦

    AXI VIP設計示例 AXI接口傳輸分析

    賽靈思 AXI Verification IP (AXI VIP) 是支持用戶對 AXI4 和 AXI4-Lite 進行仿真的 IP。它還可作為 A
    發表于 07-08 09:24 ?1438次閱讀

    ARM系列 -- AXI協議資料匯總(二)

    1、AXI協議用AxCACHE來控制事務屬性來看看事務屬性(Transaction Attributes),主要是對cache,buffer和memory controller的規定。按照協議,從機
    發表于 04-08 09:49

    Arm AMBA協議集中AHB與AXI相比訪問DDR效率帶寬會差很大

    Arm AMBA協議集中,AHB沒有outstanding, 只有burst。 與AXI 相比訪問DDR 效率,帶寬會差很大?
    發表于 09-14 11:44

    Arm中AHB與AXI相比訪問DDR效率帶寬會差很大

    Arm AMBA協議集中,AHB 沒有outstanding, 只有burst。與AXI 相比 訪問DDR 效率,帶寬會差很大?
    發表于 09-27 11:59

    如何使用Xilinx AXI VIP對自己的設計搭建仿真驗證環境的方法

    到。axi-vip和axi-stream-vip都有自帶的仿真例程,常用的功能在仿真例程中都有涉及。2.1設置VIP支持的Outstanding讀寫深度例如,設置slave vip的outst
    發表于 10-09 16:08

    AXI參考指南(英文資料)

    AXI Reference Guide (AXI).pdf
    發表于 12-23 16:41 ?55次下載

    AXI接口簡介_AXI IP核的創建流程及讀寫邏輯分析

    本文包含兩部分內容:1)AXI接口簡介;2)AXI IP核的創建流程及讀寫邏輯分析。 1AXI簡介(本部分內容參考官網資料翻譯) 自定義IP核是Zynq學習與開發中的難點,AXI IP
    的頭像 發表于 06-29 09:33 ?1.5w次閱讀
    <b class='flag-5'>AXI</b>接口簡介_<b class='flag-5'>AXI</b> IP核的創建流程及讀寫邏輯分析

    一文詳解ZYNQ中的DMA與AXI4總線

    在ZYNQ中,支持AXI-Lite,AXI4和AXI-Stream三種總線,但PS與PL之間的接口卻只支持前兩種,AXI-Stream只能在PL中實現,不能直接和PS相連,必須通過
    的頭像 發表于 09-24 09:50 ?4597次閱讀
    一文詳解ZYNQ中的DMA與<b class='flag-5'>AXI</b>4總線

    何謂 AXI?關于AXI3/AXI4的相關基礎知識

    引言 近來,幾乎每個賽靈思 IP 都使用 AXI 接口。Zynq、Zynq MP、MicroBlaze 和全新的 Versal 處理器都無一例外使用 AXI 接口。因此,AXI 接口已成為幾乎所有
    的頭像 發表于 09-27 11:06 ?6076次閱讀
    何謂 <b class='flag-5'>AXI</b>?關于<b class='flag-5'>AXI</b>3/<b class='flag-5'>AXI</b>4的相關基礎知識

    你必須了解的AXI總線詳解

    不同類型的DMA GPIO PL general purpose AXI GP AXI utlilizing PS DMAC High performance w/DMA ACP w/DMA 幾種
    的頭像 發表于 10-09 18:05 ?6798次閱讀
    你必須了解的<b class='flag-5'>AXI</b>總線詳解

    ZYNQ中DMA與AXI4總線

    ZYNQ中DMA與AXI4總線 為什么在ZYNQ中DMA和AXI聯系這么密切?通過上面的介紹我們知道ZYNQ中基本是以AXI總線完成相關功能的: 圖4?34連接 PS 和 PL 的 AXI
    的頭像 發表于 11-02 11:27 ?4024次閱讀
    ZYNQ中DMA與<b class='flag-5'>AXI</b>4總線

    AXI4 、 AXI4-Lite 、AXI4-Stream接口

    AXI4 是一種高性能memory-mapped總線,AXI4-Lite是一只簡單的、低通量的memory-mapped 總線,而 AXI4-Stream 可以傳輸高速數據流。從字面意思去理解
    的頭像 發表于 07-04 09:40 ?6601次閱讀

    AXI VIP當作master時如何使用?

    ?AXI接口雖然經常使用,很多同學可能并不清楚Vivado里面也集成了AXI的Verification IP,可以當做AXI的master、pass through和slave,本次內容我們看下
    的頭像 發表于 07-27 09:16 ?1073次閱讀
    <b class='flag-5'>AXI</b> VIP當作master時如何使用?

    什么是AXI?AXI如何工作?

    Xilinx 從 Spartan-6 和 Virtex-6 器件開始采用高級可擴展接口 (AXI) 協議作為知識產權 (IP) 內核。Xilinx 繼續將 AXI 協議用于針對 7 系列和 Zynq-7000 All Programmable SoC 器件的 IP。
    的頭像 發表于 09-27 09:50 ?811次閱讀
    什么是<b class='flag-5'>AXI</b>?<b class='flag-5'>AXI</b>如何工作?

    AXI傳輸數據的過程

    AXI4為例,有AXI full/lite/stream之分。 在Xilinx系列FPGA及其有關IP核中,經常見到AXI總線接口,AXI總線又分為三種: ?
    的頭像 發表于 10-31 15:37 ?559次閱讀
    <b class='flag-5'>AXI</b>傳輸數據的過程
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>