衡阳派盒市场营销有限公司

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

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

3天內(nèi)不再提示

深度分析AMBA總線工作原理3

jf_78858299 ? 來源:黑客與攝影師 ? 作者:黑客與攝影師 ? 2023-05-04 11:30 ? 次閱讀

2.4 AHB總線

2.4.1 AHB總線簡介

AHB是一種高性能、高時鐘頻率的AMBA總線協(xié)議。主要用于連接RAMDMA、Bridge等高速設(shè)備。主要支持如下特性:burst傳輸、Split事務(wù)處理、單周期master移交、流水線操作、支持多個總線主設(shè)備。

AHB總線的強大之處在于它可以將微控制器CPU、高帶寬的片上RAM、高帶寬的外部存儲器接口、DMA總線master、各種擁有AHB接口的控制器等連接起來,構(gòu)成一個獨立的完成SOC系統(tǒng)。不僅如此,還可以通過AHB-APB橋來連接APB總線系統(tǒng)。AHB可以成為一個完成的SOC芯片的骨架

2.4.2 AHB的組成

完整的AHB總線由四個部分構(gòu)成:

  • AHB主設(shè)備Master:總線主設(shè)備能夠通過提供地址和信息發(fā)起讀寫操作,任何時候,只允許一個總線主設(shè)備處于有效狀態(tài),并使用總線。
  • AHB從設(shè)備Slave:從設(shè)備在給定的地址空間范圍內(nèi)響應(yīng)讀寫操作,總線從設(shè)備將成功、失敗或者等待數(shù)據(jù)傳輸?shù)?a target="_blank">信號返回給有效的主設(shè)備。
  • AHB仲裁器Arbiter:總線仲裁器確保每次只有一個總線主機被允許發(fā)起數(shù)據(jù)傳輸。即使仲裁協(xié)議已經(jīng)固定,任何一種仲裁算法,比如最高優(yōu)先級或者公平訪問都能根據(jù)應(yīng)用要求而得到執(zhí)行。AHB必須只包含一個仲裁器,盡管在單總線主設(shè)備系統(tǒng)中這顯得并不重要。
  • AHB譯碼器Decoder:AHB譯碼器用來對每次傳輸進行地址譯碼,并且在傳輸中包含一個從設(shè)備選擇信號。
    每個AHB都需要一個仲裁器和一個解碼器,并且分別有且只有一個。
    總線可分為三組:
  • 寫數(shù)據(jù)總線(HWDATA)
  • 讀數(shù)據(jù)總線(HRDATA)
  • 地址控制總線(HADDR

2.4.3 AHB總線操作

主設(shè)備通過驅(qū)動地址和控制信號開始一次傳輸。這些信號提供了地址、方向、傳輸?shù)奈粚挘绻麄鬏數(shù)念愋褪氢Оl(fā),那么會指示出傳輸?shù)念愋汀鬏數(shù)念愋涂梢允牵?/p>

  • 單次傳輸(Single)。
  • 遞增猝發(fā)(Incrementing burst),即在地址邊界處不進行包裝(地址不進行回繞)。
  • 包裝猝發(fā)(Warpping burst),及到達地址邊界處重新包裝下一次傳輸?shù)牡刂罚ǖ刂坊乩@)。
    寫操作數(shù)據(jù)由主設(shè)備到從設(shè)備,讀數(shù)據(jù)數(shù)據(jù)由從設(shè)備到主設(shè)備。每次傳輸都包含兩個階段:
  • 地址階段(Address phase),地址和控制周期。
  • 數(shù)據(jù)階段(Data phase),數(shù)據(jù)周期是一個或多個周期。
    從設(shè)備不能請求Address phase進行延長,所以所有的從設(shè)備必須具備在Address phase周期采樣地址的能力。但是從設(shè)備可以請求主設(shè)備延長Data phase,通過控制HREADY。HREADY信號為低時,從設(shè)備可以在傳輸中插入等待狀態(tài),使得從設(shè)備具有額外的時間提供和采樣數(shù)據(jù)。最后從設(shè)備使用HRESP表明傳輸?shù)某晒?失敗。

2.4.4 AHB信號

從上面的表可以看出,為了克服APB的缺點,從而支持多主機模式。提升效率操作,在總線接口數(shù)量上做了增加,并且位寬也做了提升。

2.4.5 AHB傳輸

1)AHB傳輸過程

AHB傳輸分為以下幾個部分:

  • 主模塊獲取總線使用權(quán):主模塊向仲裁器發(fā)送總線請求信號,仲裁器發(fā)送應(yīng)答后主模塊可以開始傳輸。
  • 數(shù)據(jù)傳輸:主模塊向從模塊傳輸數(shù)據(jù),分為如下兩個部分:
  • 發(fā)送地址和控制信號:包括地址、位寬、突發(fā)類型(增量突發(fā)和回卷突發(fā))等控制新高,僅一個時鐘周期。
  • 數(shù)據(jù)傳輸:進行數(shù)據(jù)交換,一個或多個時鐘周期。
  • 從模塊應(yīng)答:從模塊通過HRESP和HREADY 標記完成狀態(tài),對于HRESP,有以下狀態(tài):
  • OKAY:標記傳輸完成,當HRESP為該狀態(tài)且HREADY拉高時,傳輸完成。
  • ERROR:標記傳輸出錯
  • RETRY和SPLIT:標記傳輸未完成,主模塊仍需要占用總線。
    前面已介紹一個基本的傳輸包括兩個階段:
  • 地址:持續(xù)一個系統(tǒng)時鐘HCLK周期,除非被上一個傳輸延長
  • 數(shù)據(jù):可能需要數(shù)個系統(tǒng)時鐘HCLK周期,使用HREADY信號來控制完成一次傳輸所需要的時鐘周期。
    HWRITE:控制數(shù)據(jù)的方向。當為高時,表明進行一次寫傳輸,數(shù)據(jù)由主模塊端發(fā)送,從模塊端接收。當為低時,表明進行一次讀傳輸,從模塊端產(chǎn)生讀數(shù)據(jù),主模塊端接收讀數(shù)據(jù)。

2)無等待狀態(tài)

上圖是沒有等待狀態(tài)的簡單傳輸?shù)臅r序圖,所以此傳輸包含一個地址周期和一個數(shù)據(jù)周期。3.1為讀傳輸,3.2為寫傳輸。在這個沒有等待狀態(tài)的傳輸中:

  • 主模塊端在第一個時鐘HCLK上升沿將地址和控制信號到總線。
  • 從模塊端在接下來的一個時鐘HCLK上升沿進行地址和控制信號采樣。
  • 在從模塊端對地址和控制信號采樣結(jié)束后,從模塊端可以驅(qū)動HEADYOUT信號及數(shù)據(jù)作為回應(yīng)。該信號及數(shù)據(jù)由主模塊端在傳輸?shù)牡谌齻€時鐘HCLK上升沿進行采樣。
    這個例子說明了地址和數(shù)據(jù)階段在不同的時鐘周期是如何傳輸?shù)摹H我庖淮蝹鬏數(shù)牡刂冯A段發(fā)生在上一次傳輸?shù)臄?shù)據(jù)階段(重合,即當前傳輸?shù)牡刂冯A段和前一次傳輸?shù)臄?shù)據(jù)階段重合)。address與data的重合是進行總線流水線處理的基礎(chǔ),此特性允許總線高性能操作,同時也為從模塊端發(fā)送反饋信息提供了充足的時間。

2)有等待狀態(tài)傳輸

從模塊端可以插入等待階段到任意一個傳輸中從而延長完成傳輸?shù)臅r間。每個從模塊端具有一個HREADYOUT信號,該信號為從模塊端在data phase階段驅(qū)動。互聯(lián)結(jié)構(gòu)需要將每個從模塊端的HREADYOUT信號聯(lián)合起來產(chǎn)生一個HREADY信號,HREADY信號用來控制上述延長傳輸完成時間的過程。

如上圖是具有等待階段的時序圖。3.3是帶有兩個等待周期的讀傳輸,3.4是帶有一個等待周期的寫傳輸。有等待傳輸下,數(shù)據(jù)傳輸階段可以擴展,即在HREADY拉高之前,數(shù)據(jù)傳輸階段不結(jié)束。要求寫數(shù)據(jù)在HREADY拉高前保持穩(wěn)定,主模塊在HRAEADY拉高后采樣讀數(shù)據(jù)。對于寫操作,在HREADY為低的等待階段內(nèi),主模塊端需要將寫數(shù)據(jù)DATA保持不變,直到寫操作完成。對于讀操作,從模塊端只需要在HREADY為高的周期內(nèi)提供有效數(shù)據(jù)即可。

當傳輸由具有等待階段通過延長address階段進行延長時,那么對接下來的傳輸具有副作用。3.5是包含地址不相關(guān)的3次傳輸,A,B和帶有一個等待周期的C傳輸。

在上述時序圖中:

  • 傳輸A和傳輸C是0等待傳輸。
  • 傳輸B具有一個等待周期的address phase。
  • 延長傳輸B的數(shù)據(jù)phase對下一次傳輸C的address phase會相應(yīng)的拉長。

2.4.6 傳輸類型

1)傳輸類型

傳輸類型使用端口HTRANS標記,有以下取值:

  • IDLE(0b00):標志主模塊占有AHB總線,但是沒有數(shù)據(jù)傳輸發(fā)生。從模塊需要使用OKAY狀態(tài)回應(yīng)該類型
  • BUSY(0b 01):標志主模塊占有AHB總線并在進行突發(fā)傳輸,但下一個傳輸不能立刻發(fā)生。從模塊需要使用OKAY狀態(tài)回應(yīng)
  • NONSEQ(0b 10):標志主模塊當前發(fā)送的地址和控制信號與上一次傳輸無關(guān)(單次傳輸就是該狀態(tài))
  • SEQ(0b 11):標記主模塊處于突發(fā)傳輸?shù)闹虚g部分,即當前發(fā)送的地址和控制信號與上一次地址和控制信號有關(guān)

2)突發(fā)類型

突發(fā)傳輸分為兩類:

  • 增量突發(fā):傳輸過程中傳輸?shù)刂愤f增。下一次傳輸?shù)牡刂肥巧弦淮蔚刂芳由弦粋€增量。
  • 回卷突發(fā):猝發(fā)的地址范圍被限制在一個固定范圍之內(nèi),傳輸?shù)刂愤f增,若是超出則回到地址范圍的開始的地址。例如從0x34進行增量為4,范圍為16的回卷突發(fā),地址順序為0x34、0x38、0x3c,0x30
    突發(fā)類型使用字段HBURST標記,含義如下表所示:

注意一次突發(fā)傳輸不能跨越1kB的地址區(qū)間,且傳輸?shù)钠鹗嫉刂繁仨毰c數(shù)據(jù)類型對應(yīng),例如傳輸字數(shù)據(jù)的二進制起始地址必須滿足后兩位為00。

3)突發(fā)終止

從機通過監(jiān)控HTRANS發(fā)現(xiàn)突發(fā)傳輸?shù)慕K止:

  • 若下一個HTRANS標記為BUSY或SEQ:突發(fā)傳輸未終止
  • 若下一個HTRANS標記為NONSEQ或IDLE:上一次突發(fā)傳輸已經(jīng)終止
    若突發(fā)傳輸是提前終止的,如總線控制權(quán)被剝奪,那么主機需要在可以進行傳輸時重建突發(fā)傳輸。例如一個4拍傳輸僅發(fā)送了一拍就終止,主機需要使用INCR類型的突發(fā)構(gòu)建3拍傳輸以重建。

4)傳輸?shù)睦?/p>

  • T0~T1:由非連續(xù)序列性的傳輸啟動的4拍讀。
  • T1~T2:主模塊端不能進行傳輸,在第二個周期,所以插入了一個BUSY傳輸來延時第二次傳輸。此周期從模塊端返回第一個周期主模塊端發(fā)送讀地址的讀數(shù)據(jù)。
  • T2~T3:主模塊端準備好進行第二次傳輸,發(fā)送一個SEQ傳輸。主模塊端此周期將會忽略讀數(shù)據(jù)總線上由任何從模塊端返回的讀數(shù)據(jù)(因前一個周期為BUSY傳輸)。
  • T3~T4:主模塊端進行了第三次傳輸。發(fā)送了一個SEQ傳輸,此時讀數(shù)據(jù)返回主模塊端發(fā)起的第二次SEQ讀讀數(shù)據(jù)。
  • T4~T5:主模塊端進行最后一次傳輸。此時在第一個周期內(nèi)HREADY信號為低,從模塊不能將前一次SEQ讀的數(shù)據(jù)返回,所以將延遲上一次SEQ傳輸?shù)腄ATA Phase,也就是當前傳輸?shù)腁DDRESS phase。
  • T5~T6:從模塊端返回第T3、T4周期發(fā)送的SEQ讀數(shù)據(jù)。
  • T6~T7:無傳輸命令,返回T4、T6發(fā)送的讀數(shù)據(jù)。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9169

    瀏覽量

    369239
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2903

    瀏覽量

    88400
  • AMBA
    +關(guān)注

    關(guān)注

    0

    文章

    69

    瀏覽量

    15043
收藏 人收藏

    評論

    相關(guān)推薦

    AMBA AHB總線與APB總線資料合集

    使用的是 SystemVerilog 描述。2、AMBA APB總線信號接口介紹前面分析了AHB總線協(xié)議。接下來分析APB
    發(fā)表于 04-07 10:03

    AMBA總線IP核的設(shè)計

    文章采用TOP-DOWN 的方法設(shè)計了 AMBA 總線IP 核!它包括AHB 和APB兩個子IP 核 所有AMBA結(jié)構(gòu)模塊均實現(xiàn)了RTL級建模
    發(fā)表于 07-25 18:10 ?92次下載
    <b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>IP核的設(shè)計

    AMBA AXI總線學(xué)習筆記

    AMBA AXI 總線學(xué)習筆記,非常詳細的AXI總線操作說明
    發(fā)表于 11-11 16:49 ?11次下載

    ARM體系的特點與ARM的技術(shù)的簡介及AMBA總線分析

    簡要介紹了ARM體系及其特點,詳細分析了ARM的流水技術(shù)、Cache技術(shù)、低功耗技術(shù)、代碼壓縮技術(shù)等,介紹了AMBA總線,給出了基于ARM和AMBA
    發(fā)表于 11-20 17:12 ?9次下載
    ARM體系的特點與ARM的技術(shù)的簡介及<b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>的<b class='flag-5'>分析</b>

    AMBA3.0 AXI總線接口協(xié)議的研究與應(yīng)用

    本文介紹了AMBA3。0AXI的結(jié)構(gòu)和特點,分析了新的AMBA3。0AXI協(xié)議相對于AMBA2。0的優(yōu)點。它將革新未來高性能SOC總線互連技
    發(fā)表于 03-29 09:46 ?8次下載
    <b class='flag-5'>AMBA</b>3.0 AXI<b class='flag-5'>總線</b>接口協(xié)議的研究與應(yīng)用

    AMBA 3.0 AXI總線接口協(xié)議的研究與應(yīng)用

    本文介紹了AMBA 3.0 AXI的結(jié)構(gòu)和特點,分析了新的AMBA 3.0 AXI協(xié)議相對于AMBA 2. 0的優(yōu)點。它將革新未來高性能SOC總線
    發(fā)表于 04-12 15:47 ?28次下載

    基于AMBA總線介紹?

    3.0:增加了AXI協(xié)議(了解);AMBA4.0:ACE協(xié)議(了解) 本文主要介紹AMBA2.0 (Advanced Microcontroller Bus Architecture,先進微控制總線結(jié)構(gòu)),主要
    的頭像 發(fā)表于 05-19 14:22 ?2158次閱讀
    基于<b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>介紹?

    深度解讀AMBA、AHB、APB、AXI總線介紹及對比

    什么是AMBA? 現(xiàn)如今,集成電路芯片的規(guī)模越來越大。數(shù)字IC從基于時序驅(qū)動的設(shè)計方法,發(fā)展到基于IP復(fù)用的設(shè)計方法,并在SoC設(shè)計中得到了廣泛應(yīng)用。在基于IP復(fù)用的SoC設(shè)計中,片上總線
    的頭像 發(fā)表于 06-25 11:22 ?1.1w次閱讀

    介紹AMBA2.0總線

    3.0:增加了AXI協(xié)議(了解);AMBA4.0:ACE協(xié)議(了解) 本文主要介紹AMBA2.0 (Advanced Microcontroller Bus Architecture,先進微控制總線結(jié)構(gòu)),主要
    的頭像 發(fā)表于 09-06 09:53 ?3225次閱讀
    介紹<b class='flag-5'>AMBA</b>2.0<b class='flag-5'>總線</b>

    深度分析AMBA總線工作原理1

    本文主要介紹總線相關(guān)的知識,會從以下幾個方面展開:什么是總線,為什么需要總線總線的組成,總線的分類,ARM中常見的
    的頭像 發(fā)表于 05-04 11:29 ?1141次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>分析</b><b class='flag-5'>AMBA</b><b class='flag-5'>總線</b><b class='flag-5'>工作原理</b>1

    深度分析AMBA總線工作原理2

    本文主要介紹總線相關(guān)的知識,會從以下幾個方面展開:什么是總線,為什么需要總線總線的組成,總線的分類,ARM中常見的
    的頭像 發(fā)表于 05-04 11:30 ?900次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>分析</b><b class='flag-5'>AMBA</b><b class='flag-5'>總線</b><b class='flag-5'>工作原理</b>2

    深度分析AMBA總線工作原理4

    本文主要介紹總線相關(guān)的知識,會從以下幾個方面展開:什么是總線,為什么需要總線總線的組成,總線的分類,ARM中常見的
    的頭像 發(fā)表于 05-04 11:30 ?1386次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>分析</b><b class='flag-5'>AMBA</b><b class='flag-5'>總線</b><b class='flag-5'>工作原理</b>4

    AMBA總線知識之AHB(上)

    AMBA總線陣營的強大超乎多數(shù)人的想象。AMBA總線是一個在SoC領(lǐng)域使用的事實上的標準。AMBA總線
    的頭像 發(fā)表于 05-04 14:45 ?2547次閱讀
    <b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>知識之AHB(上)

    AMBA總線知識之AHB(下)

    AMBA總線陣營的強大超乎多數(shù)人的想象。AMBA總線是一個在SoC領(lǐng)域使用的事實上的標準。AMBA總線
    的頭像 發(fā)表于 05-04 14:47 ?2476次閱讀
    <b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>知識之AHB(下)

    AMBA總線—apb簡介

    APB(Advanced Peripheral Bus),外圍總線的意思。該總線協(xié)議是ARM公司提出的AMBA總線結(jié)構(gòu)之一,幾乎已成為一種標準的片上
    發(fā)表于 06-05 15:10 ?2161次閱讀
    <b class='flag-5'>AMBA</b><b class='flag-5'>總線</b>—apb簡介
    威尼斯人娱乐城官方网站| 百家乐官网百战百胜| 网上赌百家乐有假| 百家乐官网分析仪有真的吗| 大发888 dafa888 大发官网| 做生意门面对着什么方向好| 折式百家乐官网赌台| 大哥大百家乐的玩法技巧和规则 | 百家乐官网注册送10彩金| 大发888葡京下载地址| 百家乐下注口诀| 百家乐官网投注科学公式| 百家乐官网龙虎斗| 娱乐城注册送38彩金| 最好的百家乐投注| 百家乐官网桌布| 美乐门娱乐| 91百家乐的玩法技巧和规则| 星河百家乐官网的玩法技巧和规则| 刚察县| 百盛百家乐的玩法技巧和规则| 發中發百家乐官网的玩法技巧和规则| 乐九百家乐官网游戏| 威尼斯人娱乐网上百家乐的玩法技巧和规则 | 百家乐官网做中介赚钱| 大发888娱乐日博备用| 最好的百家乐娱乐场| 百家乐官网娱乐平台会员注册| 吉安县| 大发888官方网址| 百家乐投注方法投资法| 百家乐官网保单机作弊| 百家乐官网ipone| 德州扑克 盲注| 公海百家乐的玩法技巧和规则 | 百家乐用什么平台| 如何玩百家乐官网的玩法技巧和规则 | 网络百家乐官网| 肯博| 太阳城洋伞| 百家乐棋牌辅助|