從零開始之驅動發開、linux驅動(六十、ARM AMBA總線介紹)

AMBA片上總線

AMBA總線:

AMBA總線是ARM研發的(Advanced Microcontroller Bus Architecture)提供的一種特殊的機制,可以將RISC處理器集成在其他IP芯核和外設中,它是有效連接IP核的“數字膠”,並且是ARM複用策略的重要組件。它不是芯片與外設之間的接口,而是ARM內核與芯片上其他元件進行通信的接口。

2.0版本AMBA標準定義了三組總線:

AHB(AMBA高性能總線):用於高性能。高數據吞吐部件,如CPU、DMA、DSP之間的連接。

ASB(AMBA系統總線):用來作處理器與外設之間的互連,將被AHB取代。

APB(AMBA外設總線):爲系統的低速外部設備提供低功耗的簡易互連。

系統總線和外設總線之間的橋接器提供AHB/ASB部件與APB部件之間的訪問代理與緩衝。

 

AMBA 2.0規範包括四個部分:AHB、ASB、APB和Test Methodology。AHB的相互連接採用了傳統的帶有主模塊和從模塊的共享總線,接口與互連功能分離,這對芯片上模塊之間的互連具有重要意義。AMBA已不僅是一種總線,更是一種帶有接口模塊的互連體系。 

AHB簡介

AHB主要用於高性能模塊(如CPU、DMA和DSP等)之間的連接,作爲SoC的片上系統總線,它包括以下一些特性:單個時鐘邊沿操作;非三態的實現方式;支持突發傳輸;支持分段傳輸;支持多個主控制器;可配置32位~128位總線寬度;支持字節、半字節和字的傳輸。AHB 系統由主模塊、從模塊和基礎結構(Infrastructure)3部分組成,整個AHB總線上的傳輸都由主模塊發出,由從模塊負責迴應。基礎結構則由仲裁器(arbiter)、主模塊到從模塊的多路器、從模塊到主模塊的多路器、譯碼器(decoder)、虛擬從模塊(dummy Slave)、虛擬主模塊(dummy Master)所組成。

APB簡介

APB主要用於低帶寬的周邊外設之間的連接,例如UART、I2C等,它的總線架構不像AHB支持多個主模塊,在APB裏面唯一的主模塊就是APB 橋。其特性包括:兩個時鐘週期傳輸;無需等待週期和迴應信號;控制邏輯簡單,只有四個控制信號。

 

AXI是AMBA™標準中一個新的高性能協議。AXI技術豐富了現有的AMBA標準內容,滿足超高性能和複雜的片上系統(SoC)設計的需求。

現在ARM的Cotex A8以上的SOC基本都是使用的基於AMBA™標準AXI協議。

 

這裏看一下s3c2440的框圖。告訴外設在AHB,低速外設在APB。

 

看一下Cotex A8的S5pv210這款SOC,都是基於AXI來實現的APB和APB。

可以看到上面的連接都是通過BGR,也就是橋來連接的。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章