那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內不再提示

SoC設計中總線協(xié)議AXI4與AXI3的主要區(qū)別詳解

全棧芯片工程師 ? 來源:全棧芯片工程師 ? 2024-05-10 11:29 ? 次閱讀

AXI4和AXI3是高級擴展接口Advanced eXtensible Interface)的兩個不同版本,它們都是用于SoC(System on Chip)設計中的總線協(xié)議,用于處理器和其它外設之間的高速數(shù)據(jù)傳輸。以下是它們之間的一些主要區(qū)別:

1.AXI4加大Burst Length

AXI3最大突發(fā)長度(Burst Length)是16 beats,其AxLEN信號位寬為4位。

AXI4擴展了對突發(fā)長度的支持,最大可以達到256 beats,AxLEN信號位寬增加到8位。注意,這種擴展主要是針對INCR(Incrementing)突發(fā)類型,而WRAP和FIXED突發(fā)類型的最大長度仍然限制在16 beats,并且CPU的突發(fā)一般不會超過16拍,突發(fā)太長會一直占用總線,而且一旦開始突發(fā)傳輸是不能取消的,只能等突發(fā)傳輸完成。

注意,大型SoC系統(tǒng)中,AXI4和AXI3往往混用,如果總線從AXI4轉為AXI3實len直接從[7:0]截位為[3:0],則需要控制源頭激勵,len不能大于15。否則會無響應進而掛死,推薦使用協(xié)議橋來完成轉換。

2. AXI4新增QoS

AXI4引入了新的信號來支持服務質量(QoS),例如4bit的AWQOS和4bit的ARQOS信號,這些信號允許系統(tǒng)根據(jù)事務的重要性分配不同的服務級別。主要針對不同寫/讀事務的優(yōu)先級,如果不使用,建議設置為default value 4'b0000。

AXI4協(xié)議沒有規(guī)定QoS的用法,一般由具體SoC架構特性決定,協(xié)議中希望互聯(lián)組件中有可配置寄存器,在傳輸中可以修改Qos信號值。一般盡量在系統(tǒng)級統(tǒng)一規(guī)劃QoS,并且設置為可編程QoS。QoS值越大,優(yōu)先級越高,當然也有AxQoS越低,優(yōu)先級越高的SoC。

d172a6b6-0e0f-11ef-a297-92fbcf53809c.png

3.AXI4取消鎖定事務

AXI4去除了對鎖定事務的支持,這是為了提高協(xié)議的簡潔性。在AXI3中,鎖定事務允許一個主設備鎖定對從設備的訪問,直到它完成其事務。AXI4中,AxLOCK信號從2位減少到了1位,不再支持Locked access,只支持Normal access、Exclusive access。請問,Locked access和Exclusive access區(qū)別是啥?

d192651e-0e0f-11ef-a297-92fbcf53809c.png

d1a70c9e-0e0f-11ef-a297-92fbcf53809c.png

請問,什么是locked access?

答:a locked sequence of transcations forces the interconnect to reject access to subordinate from any orther manager。即強制interconnect 拒絕其他master訪問subordinate(slave)。

d1c4bc12-0e0f-11ef-a297-92fbcf53809c.png

如上圖,當M0發(fā)起locked access的時候,必須確保沒有在途的transaction,之前的transaction必須完成。然后M0使用AxLOCK發(fā)起locked transaction,然后interconnect通過內部仲裁器確保只有M0能訪問到subordinate,任何其他的manager(M1)訪問Sub都會被Blocked,直到M0發(fā)起一個非locked transaction表示locked sequence完成。

因此,Locked access作用的對象是總線,而Exclusive access 作用的對象是對應的Slave。現(xiàn)在SoC系統(tǒng)都非常復雜,Master也非常多,某一個Master lock住總線導致其他master不能使用總線對系統(tǒng)的性能影響太大,AXI4就取消Lock機制了。而Exclusive access機制實現(xiàn)在Slave模塊里,支持Exclusive access機制的slave會實現(xiàn)一個Exclusive access Monitor。

什么是Exclusive access Monitor?

d1e10282-0e0f-11ef-a297-92fbcf53809c.png

當M0發(fā)起一次獨占訪問讀操作后,subordinate中的monitor會有如下可能響應。

EXOKAY:讀操作已經執(zhí)行,獨占訪問成功,并且事務ID已經記錄下,memory range和manager已經記錄下。

OKAY:讀操作已經執(zhí)行,但是subordinate不支持獨占訪問,獨占訪問錯誤。

如果當M0接受到EXOKAY的響應,那么M0可以嘗試完成exclusive sequence,即進行一次獨占寫,這次獨占寫需要有相同的事務ID以及相同的地址范圍。接下來可能接受到來自subordinate的響應為:

EXOKAY:沒有其他manager對先去讀事務的地址范圍進行寫操作,所以M0的獨占寫事務成功,在這種情況下,獨占寫事務更新了memory。

OKAY:有別的manager,例如M1,在M0發(fā)起寫事務之前已經對獨占地址范圍進行了寫操作,獨占寫失敗。

要實現(xiàn)exclusive access,需要每個transaction ID都記錄一個地址,用來標記不同序列的獨占訪問地址。舉個例子,如下圖:

d1fc6932-0e0f-11ef-a297-92fbcf53809c.png

d2171462-0e0f-11ef-a297-92fbcf53809c.png

當manager發(fā)起兩筆獨占訪問,第一筆獨占訪問transaction ID是0,第二筆是1,對相同的獨占訪問地址進行讀操作,subordinate都會給出EXOKAY的響應,因為該subordinate支持獨占訪問操作,并且讀操作成功執(zhí)行。

然后manager發(fā)送一筆寫事務,transaction ID是0,然后subordinate檢查該筆transaction ID是否記錄在monitor中,檢查后發(fā)現(xiàn)該地址被記錄在monitor的table中,因此獨占訪問寫操作成功,返回EXOKAY響應,同時由于地址0xA000已經被寫入修改了,monitor將所有地址為0xA000的獨占記錄移除。

然后manager再次發(fā)送一筆寫事務,transaction ID為1,此時monitor再次檢查內部的獨占記錄發(fā)現(xiàn)沒有獨占記錄,因為在上一個exclusive sequence已經清除掉所有地址為0xA000的獨占記錄了,因此獨占寫事務失敗,返回OKAY,并且內存中的數(shù)據(jù)不會更新,也就是data 0x4并不會寫入到地址中。

這個例子演示了獨占訪問如何實現(xiàn)非阻塞行為。與LOCK訪問相比,提供了更大的系統(tǒng)吞吐量。

4.AXI4S升級AxCACHE

AXI4中AWCACHE和ARCACHE信號的含義發(fā)生了變化,以適應ARM CPU架構的發(fā)展和對內存屬性更復雜的定義。

在AXI3中,4bit數(shù)據(jù)分別是buffer、cache、read allocate、write allocate。

bufferable用在寫操作中,表示可以由一個中間節(jié)點來返回response信號。Normally, the Bufferable attribute is only relevant to writes.

cacheable在讀操作中,表示可以prefetch一些數(shù)據(jù),在寫操作中,表示可以將不同的write merged together。RA針對讀操作。WA針對寫操作。只有在cacheable有效的情況下,這兩個bit才有效。在AXI4中,cache bit改名為modefiable,RA,WA的概念被更新,將不用的allocate bit改為other allocate。

AXI3 中AWCACHE[3:0] 和ARCACHE[3:0]的含義如下圖所示:

d243fb30-0e0f-11ef-a297-92fbcf53809c.png

AXI3中cache=0,對數(shù)據(jù)不做處理。cache=1,矩陣會對讀寫數(shù)據(jù)進行合并或拆分處理。一般是矩陣的downsize/upsize對數(shù)據(jù)進行處理。cache[0],Bufferable,一般針對寫操作,表示interconnect,或者其他類似component,可以先返回resp,之后再寫向final distination。cache[1],1)與RA,WA配合,控制cache。2)表示transaction的屬性,可以在中間被更改。對寫操作,表示數(shù)據(jù)可以被merge。對于讀操作,表示地址可以被prefetch。

AXI4中AWCACHE[3:0] 和ARCACHE[3:0]的含義如下圖所示(括號內的是AXI3的編號):

d26051d6-0e0f-11ef-a297-92fbcf53809c.png

5. AXI4升級寫響應(Write Response Channel)

AXI4規(guī)定了更嚴格的寫響應條件,必須等到地址通路和數(shù)據(jù)通路都準備好,并且明確了要等WLAST信號后,從設備才能發(fā)出BVALID進行寫響應,這保證了事務真正完成時才發(fā)送響應。也就是說AXI4必須等到AWVALID,AWREADY,WVALID, WREADY, and WLAST 都為高后,SLAVE才能發(fā)BVALID進行寫響應,進一步避免了deadlock。

d27ee934-0e0f-11ef-a297-92fbcf53809c.png

AXI3則是等到了WVALID和WREADY后就能把BVALID置高來響應,也就是說只要slave接收了W通道所有寫數(shù)據(jù)(WLAST拉起)就可以B通道響應,沒管地址通道,SLAVE就可以發(fā)寫響應。顯然AXI4更嚴謹。

d2a364a8-0e0f-11ef-a297-92fbcf53809c.png

6.AXI4升級AxUSER

在AXI3中,USER信號沒有具體規(guī)定,而在AXI4中,USER信號的位寬和用法被進一步定義和標準化,以支持更廣泛的應用??紤]到IP的兼容性問題,IP廠商一般不用USER信號,其主要還是應用在SoC內部。AXI4的USER信號規(guī)定如下:

d2c3ea20-0e0f-11ef-a297-92fbcf53809c.pngAXI4在寫控制通道、寫數(shù)據(jù)通道、寫反饋通道和讀控制通道中引入了額外的用戶自定義信號,如AWUSER、WUSER、BUSER、ARUSER和RUSER,以支持更廣泛的應用場景。考慮到IP的兼容性問題,IP廠商一般不用USER信號,其主要還是應用在SoC內部。

7.AXI4取消WID

AXI4取消WID,寫通道不再支持write data interleave功能,雖然AXI3支持Write interleaving,但是大家在設計的時候,master基本都沒支持Write interleaving,因為寫數(shù)據(jù)一般都是in order有序發(fā)送的。這樣可以減少pin count,減少設計復雜度。

8.AXI4新增AxREGION

相比AXI3,AXI4增加了2個4bit AxREGION信號,4bit可以表示16個region。主要作用是簡化slave中的address decode,由interconnect在做address decode時產生,同樣必須在4k范圍內。AxREGION是可選的功能,一般用的較少。

總結,AXI4和AXI3在互聯(lián)時需要注意信號的兼容性,例如AWID、AxLOCK、AxLEN等信號的處理方式有所不同。



審核編輯:劉清

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

    關注

    68

    文章

    19407

    瀏覽量

    231175
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121155
  • 數(shù)據(jù)傳輸

    關注

    9

    文章

    1952

    瀏覽量

    64852
  • SoC系統(tǒng)

    關注

    0

    文章

    52

    瀏覽量

    10727
  • AXI總線
    +關注

    關注

    0

    文章

    66

    瀏覽量

    14313

原文標題:SoC系統(tǒng)中AXI4與AXI3兼容性與exclusive access

文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    看看在SpinalHDLAXI4總線互聯(lián)IP的設計

    不做過多的講解(小伙伴可以自行下載AMBA總線協(xié)議規(guī)范或者翻看網絡上AXI4總線協(xié)議相關文章)。在SpinalHDL
    發(fā)表于 08-02 14:28

    AXI接口協(xié)議詳解

    1、AXI接口協(xié)議詳解  AXI 總線  上面介紹了AMBA總線
    發(fā)表于 10-14 15:31

    學習架構-AMBA AXI簡介

    本指南介紹了高級微控制器總線體系結構(AMBA)AXI主要功能。 該指南解釋了幫助您實現(xiàn)AXI協(xié)議的關鍵概念和細節(jié)。 在本指南中,我們介紹
    發(fā)表于 08-09 07:37

    SoC Designer AXI4協(xié)議包的用戶指南

    這是SoC Designer AXI4協(xié)議包的用戶指南。該協(xié)議包包含SoC Designer組件、探針和ARM
    發(fā)表于 08-10 06:30

    AXI4接口協(xié)議的基礎知識

    AXI-4 Memory Mapped也被稱之為AXI-4 Full,它是AXI4接口協(xié)議的基礎,其他AXI4接口是該接口的變形??傮w而言,
    的頭像 發(fā)表于 09-23 11:20 ?6148次閱讀
    <b class='flag-5'>AXI4</b>接口<b class='flag-5'>協(xié)議</b>的基礎知識

    一文詳解ZYNQ的DMA與AXI4總線

    在ZYNQ,支持AXI-Lite,AXI4AXI-Stream三種總線,但PS與PL之間的接口卻只支持前兩種,
    的頭像 發(fā)表于 09-24 09:50 ?5609次閱讀
    一文<b class='flag-5'>詳解</b>ZYNQ<b class='flag-5'>中</b>的DMA與<b class='flag-5'>AXI4</b><b class='flag-5'>總線</b>

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

    新的賽靈思器件設計不可或缺的一部分。充分了解其基礎知識對于賽靈思器件的設計和調試都很有幫助。 本篇博文將介紹賽靈思器件上的 AXI3/AXI4 的相關基礎知識。首先,我們將從一些通俗易懂的知識、理論
    的頭像 發(fā)表于 09-27 11:06 ?6715次閱讀
    何謂 <b class='flag-5'>AXI</b>?關于<b class='flag-5'>AXI3</b>/<b class='flag-5'>AXI4</b>的相關基礎知識

    ZYNQDMA與AXI4總線

    ZYNQDMA與AXI4總線 為什么在ZYNQDMA和AXI聯(lián)系這么密切?通過上面的介紹我們知道ZYNQ
    的頭像 發(fā)表于 11-02 11:27 ?4390次閱讀
    ZYNQ<b class='flag-5'>中</b>DMA與<b class='flag-5'>AXI4</b><b class='flag-5'>總線</b>

    深入AXI4總線一握手機制

    本系列我想深入探尋 AXI4 總線。不過事情總是這樣,不能我說想深入就深入。當前我對 AXI總線的理解尚談不上深入。但我希望通過一系列文章,讓讀者能和我一起深入探尋
    發(fā)表于 03-17 21:40 ?25次下載
    深入<b class='flag-5'>AXI4</b><b class='flag-5'>總線</b>一握手機制

    AXI4AXI4-Lite 、AXI4-Stream接口

    AXI4 是一種高性能memory-mapped總線AXI4-Lite是一只簡單的、低通量的memory-mapped 總線,而 AXI4
    的頭像 發(fā)表于 07-04 09:40 ?8766次閱讀

    AXI3AXI4寫響應的依賴區(qū)別?

    上面兩圖的區(qū)別是相比AXI3AXI4協(xié)議需要確認AWVALID、AWREADY握手完成才能回復BVALID。為什么呢?
    的頭像 發(fā)表于 03-30 09:59 ?1164次閱讀

    AXI4協(xié)議五個不同通道的握手機制

    AXI4 協(xié)議定義了五個不同的通道,如 AXI 通道中所述。所有這些通道共享基于 VALID 和 READY 信號的相同握手機制
    的頭像 發(fā)表于 05-08 11:37 ?1290次閱讀
    <b class='flag-5'>AXI4</b><b class='flag-5'>協(xié)議</b>五個不同通道的握手機制

    FPGA AXI4協(xié)議學習筆記(二)

    上文FPGA IP之AXI4協(xié)議1_協(xié)議構架對協(xié)議框架進行了說明,本文對AXI4接口的信號進行說明。
    的頭像 發(fā)表于 05-24 15:05 ?1579次閱讀
    FPGA <b class='flag-5'>AXI4</b><b class='flag-5'>協(xié)議</b>學習筆記(二)

    Xilinx FPGA AXI4總線(一)介紹【AXI4】【AXI4-Lite】【AXI-Stream】

    從 FPGA 應用角度看看 AMBA 總線AXI4 總線。
    發(fā)表于 06-21 15:21 ?2402次閱讀
    Xilinx FPGA <b class='flag-5'>AXI4</b><b class='flag-5'>總線</b>(一)介紹【<b class='flag-5'>AXI4</b>】【<b class='flag-5'>AXI4</b>-Lite】【<b class='flag-5'>AXI</b>-Stream】

    漫談AMBA總線-AXI4協(xié)議的基本介紹

    本文主要集中在AMBA協(xié)議AXI4協(xié)議。之所以選擇AXI4作為講解,是因為這個
    發(fā)表于 01-17 12:21 ?2530次閱讀
    漫談AMBA<b class='flag-5'>總線</b>-<b class='flag-5'>AXI4</b><b class='flag-5'>協(xié)議</b>的基本介紹
    破解百家乐官网真人游戏| 百家乐玩法介| 百家乐官网视频表演| 百家乐换房| 至尊百家乐官网节目单| 路劲太阳城业主论坛| 百家乐开户送十元| 真人百家乐官网试玩账号| 百家乐全自动分析软件| 网络百家乐官网金海岸| 世界杯赌球| 娱乐百家乐的玩法技巧和规则| 网页百家乐官网的玩法技巧和规则| 油尖旺区| LV百家乐客户端LV| 百家乐赢利策略| 太阳城百家乐官网网上| 大发888 护栏| 百家乐投注平台信誉排行| 百家乐官网的规则玩法 | 亿酷棋牌世界 完整版官方免费下载| 988百家乐娱乐| 华盛顿百家乐官网的玩法技巧和规则 | 投注平台出租| 全讯网财运| 澳门百家乐家用保险柜| 现场百家乐官网能赢吗| 百家乐官网智能分析软| 抚顺棋牌网| 百家乐路单统| 新澳门百家乐软件下载| 菲律宾百家乐官网娱乐| 凯旋门百家乐官网技巧| 真人娱乐城开户送钱| 百家乐冼牌机| 赌场百家乐规则| 金赞百家乐官网的玩法技巧和规则| 现金百家乐官网人气最高| 丰禾国际娱乐| 大发888代理| 百家乐赌场合作|