高級(jí)微控制器總線結(jié)構(gòu)完美解析
高級(jí)微控制器總線結(jié)構(gòu)Advanced Microcontroller Bus Architecture(AMBA)定義了高性能嵌入式微控制器的通信標(biāo)準(zhǔn)。可以將RISC處理器集成在其他IP芯核和外設(shè)中,它是有效連接IP核的“數(shù)字膠”,并且是ARM復(fù)用策略的重要組件。它不是芯片與外設(shè)之間的接口,而是ARM內(nèi)核與芯片上其他元件進(jìn)行通信的接口。比如Xilinx公司的Zynq芯片,就是ARM與FPGA之間的連接通路。
本文引用地址:http://www.ex-cimer.com/article/201710/365834.htmAMBA3.0 協(xié)議:
1 Advanced High-performance Bus (AHB)
AHB總線用于高性能,高時(shí)鐘工作頻率模塊。AHB在AMBA架構(gòu)中為系統(tǒng)的高性能運(yùn)行起到了基石作用。AHB為高性能處理器,片上內(nèi)存,片外內(nèi)存提供接口,同時(shí)橋接慢速外設(shè)。高性能,數(shù)據(jù)傳輸,多總線主控制器,突發(fā)連續(xù)傳輸,分步傳輸。
AHB總線協(xié)議是AMBA的新一代總線協(xié)議,支持多種高性能總線主控制器。
特性:
a 突發(fā)連續(xù)傳輸
b 分步傳輸
c 支持多個(gè)主控制器、單周期內(nèi)主控制器處理
d 單時(shí)鐘邊沿操作
e 非三態(tài)操作
f 支持64位,128位總線
g 支持字節(jié),半字節(jié)和字的傳輸。
AHB總線通過DMA和DSP,允許在總線上存在一個(gè)或多個(gè)主控制器。雖然APB總線上可以掛接慢速外設(shè),但是也允許在AHB上掛接一些慢速外設(shè)作為從設(shè)備,不過它們通常還是掛接在APB總線上。
AHB總線通常設(shè)計(jì)時(shí)包含以下幾個(gè)設(shè)備:
a AHB主控制器:主控制器可以通過地址和控制信息,可以進(jìn)行初始化,讀,寫操作。在同一時(shí)間,總線上只能有一個(gè)主控制器。
b AHB從設(shè)備:從設(shè)備通常是指在其地址空間內(nèi),響應(yīng)主控制器發(fā)出的讀寫控制操作的被動(dòng)設(shè)備。通過操作的成功與否反饋給其主控制器,完成數(shù)據(jù)的傳輸控制。
c AHB仲裁器:仲裁器根據(jù)用戶的配置,確保在總線上同一時(shí)間只有一個(gè)主控制器擁有總線控制權(quán)限。AHB總線上只能有一個(gè)仲裁器。
d AHB譯碼器:譯碼器解析在總線上傳輸?shù)牡刂泛涂刂菩畔?。AHB總線上只能有一個(gè)譯碼器。
2 Advanced System Bus (ASB)
ASB總線主要用于高性能系統(tǒng)模塊。ASB是可用于AHB不需要的高性能特性的芯片設(shè)計(jì)上可選的系統(tǒng)總線。ASB也支持高性能處理器,片上內(nèi)存,片外內(nèi)存提供接口和慢速外設(shè)。高性能,數(shù)據(jù)傳輸,多總線主控制器,突發(fā)連續(xù)傳輸。ASB總線是位于APB總線架構(gòu)之上的用于高性能的總線協(xié)議,它有如下特點(diǎn):
a 突發(fā)連續(xù)傳輸
b 單管道數(shù)據(jù)傳輸
c 多總線主控制器
3 Advanced Peripheral Bus (APB)
APB總線用于為慢速外設(shè)提供總線技術(shù)支持。
APB是一種優(yōu)化的,低功耗的,精簡(jiǎn)接口總線,可以技術(shù)多種不同慢速外設(shè)。由于APB是ARM公司最早提出的總線接口,APB可以橋接ARM體系下每一種系統(tǒng)總線。低功耗,尋址控制,支持簡(jiǎn)單接口協(xié)議,支持多種外設(shè)。APB通過橋接高帶寬、高性能總線,提供基本的微控制器二級(jí)總線,通常該總線上的外設(shè)有以下特點(diǎn):支持映射寄存器接口,對(duì)帶寬沒有很高的要求,通過編程實(shí)現(xiàn)對(duì)外設(shè)進(jìn)行控制。
APB總線接口協(xié)議是AMBA協(xié)議層次結(jié)構(gòu)中的一部分,它是高度優(yōu)化的連接低功耗外設(shè)的精簡(jiǎn)接口。
APB看起來是一個(gè)本地的二級(jí)總線接口協(xié)議,用作AHB,ASB總線協(xié)議的從設(shè)備接口。
APB橋是從控制器模塊用來保證不同總線數(shù)據(jù)的有效傳輸和不同總線上控制信號(hào)的轉(zhuǎn)發(fā)處理。
APB應(yīng)該用于連接低帶寬,且不需求高性能數(shù)據(jù)傳輸?shù)耐庠O(shè)。最新的APB總線協(xié)議規(guī)定了所有的信號(hào)傳遞都發(fā)生在時(shí)鐘的上升沿。這樣設(shè)計(jì)有以下優(yōu)勢(shì):
a 易于實(shí)現(xiàn)高頻率操作
b performance is independent of the mark-space raTIo of the clock
c 通過單時(shí)鐘操作簡(jiǎn)化靜態(tài)時(shí)序
d no special consideraTIons are required for automaTIc test inserTIon
e 許多ASIC庫在上升沿寄存器有更好的選擇
f 簡(jiǎn)化整合的時(shí)鐘模擬器
上述的優(yōu)勢(shì)也說明APB總線可以更好的鏈接最新的AHB總線接口。
APB總線協(xié)議包含一個(gè)APB橋,它用來將AHB,ASB總線上的控制信號(hào)轉(zhuǎn)化為APB從設(shè)備控制器上可用信號(hào)。APB總線上所有的外設(shè)都是從設(shè)備,這些從設(shè)備有以下特點(diǎn):
a 接收有效的地址和控制訪問
b 當(dāng)APB上的外設(shè)處于非活動(dòng)狀態(tài)時(shí),可以將這些外設(shè)處于0功耗狀態(tài)
c 譯碼器可以通過選通信號(hào),提供輸出時(shí)序(非鎖定接口)
d 訪問時(shí)可執(zhí)行數(shù)據(jù)寫入
APB主要用于低帶寬的周邊外設(shè)之間的連接,例如UART、1284等,它的總線架構(gòu)不像AHB支持多個(gè)主模塊,在APB里面唯一的主模塊就是APB 橋。其特性包括:兩個(gè)時(shí)鐘周期傳輸、無需等待周期和回應(yīng)信號(hào)、控制邏輯簡(jiǎn)單,只有四個(gè)控制信號(hào)。APB上的傳輸可以用如圖3所示的狀態(tài)圖來說明。
1) 系統(tǒng)初始化為IDLE狀態(tài),此時(shí)沒有傳輸操作,也沒有選中任何從模塊。
2) 當(dāng)有傳輸要進(jìn)行時(shí),PSELx=1,PENABLE=0,系統(tǒng)進(jìn)入SETUP狀態(tài),并只會(huì)在SETUP 狀態(tài)停留一個(gè)周期。當(dāng)PCLK的下一個(gè)上升沿時(shí)到來時(shí),系統(tǒng)進(jìn)入ENABLE 狀態(tài)。
3) 系統(tǒng)進(jìn)入ENABLE狀態(tài)時(shí),維持之前在SETUP 狀態(tài)的PADDR、PSEL、PWRITE不變,并將PENABLE置為1。傳輸也只會(huì)在ENABLE狀態(tài)維持一個(gè)周期,在經(jīng)過SETUP與ENABLE狀態(tài)之后就已完成。之后如果沒有傳輸要進(jìn)行,就進(jìn)入IDLE狀態(tài)等待;如果有連續(xù)的傳輸,則進(jìn)入SETUP狀態(tài)。
4 基于AMBA的片上系統(tǒng)
大多數(shù)掛在總線上的模塊(包括處理器)只是單一屬性的功能模塊:主模塊或者從模塊。主模塊是向從模塊發(fā)出讀寫操作的模塊,如CPU,DSP等;從模塊是接受命令并做出反應(yīng)的模塊,如片上的RAM,AHB/APB 橋等。另外,還有一些模塊同時(shí)具有兩種屬性,例如直接存儲(chǔ)器存?。―MA)在被編程時(shí)是從模塊,但在系統(tǒng)讀傳輸數(shù)據(jù)時(shí)必須是主模塊。
如果總線上存在多個(gè)主模塊,就需要仲裁器來決定如何控制各種主模塊對(duì)總線的訪問。雖然仲裁規(guī)范是AMBA總線規(guī)范中的一部分,但具體使用的算法由RTL設(shè)計(jì)工程師決定,其中兩個(gè)最常用的算法是固定優(yōu)先級(jí)算法和循環(huán)制算法。AHB總線上最多可以有16個(gè)主模塊和任意多個(gè)從模塊,如果主模塊數(shù)目大于16,則需再加一層結(jié)構(gòu)(具體參閱ARM公司推出的Multi-layer AHB規(guī)范)。
APB 橋既是APB總線上唯一的主模塊,也是AHB系統(tǒng)總線上的從模塊。其主要功能是鎖存來自AHB系統(tǒng)總線的地址、數(shù)據(jù)和控制信號(hào),并提供二級(jí)譯碼以產(chǎn)生APB外圍設(shè)備的選擇信號(hào),從而實(shí)現(xiàn)AHB協(xié)議到APB協(xié)議的轉(zhuǎn)換。
評(píng)論