AHB/APB簡介
AHB
隨著深亞微米工藝技術日益成熟,集成電路芯片的規模越來越大。數字IC從基於時序驅動的設計方法,發展到基於IP複用的設計方法,並在SOC設計中得到了廣泛應用。在基於IP複用的SoC(System on Chip的縮寫,稱為係統級芯片,也有稱片上係統)設計中,片上總線設計是最關鍵的問題。為此,業界出現了很多片上總線標準。其中,由ARM公司推出的AMBA片上總線受到了廣大IP開發商和SoC係統集成者的青睞,已成為一種流行的工業標準片上結構。AMBA規範主要包括了AHB(Advanced High performance Bus)係統總線和APB(Advanced Peripheral Bus)外圍總線。
AHB簡介
AHB主要用於高性能模塊(如CPU、DMA和DSP等)之間的連接,作為SoC的片上係統總線,它包括以下一些特性:單個時鍾邊沿操作;非三態的實現方式;支持突發傳輸;支持分段傳輸;支持多個主控製器;可配置32位~128位總線寬度;支持字節、半字和字的傳輸。AHB 係統由主模塊、從模塊和基礎結構 (Infrastructure)3部分組成,整個AHB總線上的傳輸都由主模塊發出,由從模塊負責回應。基礎結構則由仲裁器(arbiter)、主模塊到從模塊的多路器、從模塊到主模塊的多路器、譯碼器(decoder)、虛擬從模塊(dummy Slave)、虛擬主模塊(dummy Master)所組成。其互連結構如圖1所示。針對Soc設計中IP複用問題提出了一種新的解決辦法.傳統的方法是將特定功能模塊的非標準接口標準化為AHB主/從設備接口,本文提出了一種新的基於ARM的Soc通用平台設計寄存器總線標準接口,這種設計使整個係統的結構清晰,增強係統的通用性與係統中功能模塊的可移植性.
編輯本段APB簡介
APB主要用於低帶寬的周邊外設之間的連接,例如UART、1284等,它的總線架構不像AHB支持多個主模塊,在APB裏麵唯一的主模塊就是APB 橋。其特性包括:兩個時鍾周期傳輸;無需等待周期和回應信號;控製邏輯簡單,隻有四個控製信號。
1)係統初始化為IDLE狀態,此時沒有傳輸操作,也沒有選中任何從模塊。2)當有傳輸要進行時,PSELx=1,PENABLE=0,係統進入SETUP狀態,並隻會在SETUP 狀態停留一個周期。當PCLK的下一個上升沿時到來時,係統進入ENABLE 狀態。
3)係統進入ENABLE狀態時,維持之前在SETUP 狀態的PADDR、PSEL、PWRITE不變,並將PENABLE置為1。傳輸也隻會在ENABLE狀態維持一個周期,在經過SETUP與ENABLE狀態之後就已完成。之後如果沒有傳輸要進行,就進入IDLE狀態等待;如果有連續的傳輸,則進入SETUP狀態。
編輯本段AMBA片上總線
AMBA 2.0規範包括四個部分:AHB、ASB、APB和Test Methodology。AHB的相互連接采用了傳統的帶有主模塊和從模塊的共享總線,接口與互連功能分離,這對芯片上模塊之間的互連具有重要意義。AMBA已不僅是一種總線,更是一種帶有接口模塊的互連體係。
編輯本段基於AMBA的片上係統
大多數掛在總線上的模塊(包括處理器)隻是單一屬性的功能模塊:主模塊或者從模塊。主模塊是向從模塊發出讀寫操作的模塊,如CPU,DSP等;從模塊是接受命令並做出反應的模塊,如片上的RAM,AHB/APB 橋等。另外,還有一些模塊同時具有兩種屬性,例如直接存儲器存取(DMA)在被編程時是從模塊, 但在係統讀傳輸數據時必須是主模塊。如果總線上存在多個主模塊,就需要仲裁器來決定如何控製各種主模塊對總線的訪問。雖然仲裁規範是AMBA總線規範中的一部分,但具體使用的算法由RTL設計工程師決定,其中兩個最常用的算法是固定優先級算法和循環製算法。AHB總線上最多可以有16個主模塊和任意多個從模塊,如果主模塊數目大於16,則需再加一層結構(具體參閱ARM公司推出的Multi-layer AHB規範)。APB 橋既是APB總線上唯一的主模塊,也是AHB係統總線上的從模塊。其主要功能是鎖存來自AHB係統總線的地址、數據和控製信號,並提供二級譯碼以產生APB外圍設備的選擇信號,從而實現AHB協議到APB協議的轉換。
最後更新:2017-04-03 16:48:39