《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > AMBA片上總線在SoC芯片設計中的應用
AMBA片上總線在SoC芯片設計中的應用
摘要: 隨著深亞微米工藝技術日益成熟,,集成電路芯片的規(guī)模越來越大。數(shù)字IC從基于時序驅(qū)動的設計方法,,發(fā)展到基于IP復用的設計方法,,并在SoC設計中得到了廣泛應用,。在基于IP復用的SoC設計中,片上總線設計是最關鍵的問題,。為此,,業(yè)界出現(xiàn)了很多片上總線標準。
關鍵詞: SoPC SOC AMBA 片上總線
Abstract:
Key words :

       引言

       隨著深亞微米工藝技術日益成熟,,集成電路芯片的規(guī)模越來越大,。數(shù)字IC從基于時序驅(qū)動的設計方法,發(fā)展到基于IP復用的設計方法,,并在SOC設計中得到了廣泛應用,。在基于IP復用的SoC設計中,片上總線設計是最關鍵的問題,。為此,,業(yè)界出現(xiàn)了很多片上總線標準。其中,,由ARM公司推出的AMBA片上總線受到了廣大IP開發(fā)商和SoC系統(tǒng)集成者的青睞,,已成為一種流行的工業(yè)標準片上結(jié)構。AMBA規(guī)范主要包括了AHB(Advanced High performance Bus)系統(tǒng)總線和APB(Advanced Peripheral Bus)外圍總線,。

       AMBA片上總線

       AMBA 2.0規(guī)范包括四個部分:AHB、ASB,、APB和Test Methodology,。AHB的相互連接采用了傳統(tǒng)的帶有主模塊和從模塊的共享總線

 

,接口與互連功能分離,,這對芯片上模塊之間的互連具有重要意義,。AMBA已不僅是一種總線,更是一種帶有接口模塊的互連體系,。下面將簡要介紹比較重要的AHB和APB總線,。

       AHB簡介

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

 

AHB總線互連結(jié)構圖


       APB簡介

       APB主要用于低帶寬的周邊外設之間的連接,,例如UART,、1284等,它的總線架構不像AHB支持多個主模塊,,在APB里面唯一的主模塊就是APB 橋,。其特性包括:兩個時鐘周期傳輸;無需等待周期和回應信號,;控制邏輯簡單,,只有四個控制信號。APB上的傳輸可以用如圖2所示的狀態(tài)圖來說明,。

APB傳輸狀態(tài)圖

       1)系統(tǒng)初始化為IDLE狀態(tài),,此時沒有傳輸操作,也沒有選中任何從模塊,。

       2)當有傳輸要進行時,,PSELx=1,PENABLE=0,,系統(tǒng)進入SETUP狀態(tài),,并只會在SETUP 狀態(tài)停留一個周期。當PCLK的下一個上升沿時到來時,,系統(tǒng)進入ENABLE 狀態(tài),。

       3)系統(tǒng)進入ENABLE狀態(tài)時,維持之前在SETUP 狀態(tài)的PADDR,、PSEL,、PWRITE不變,并將PENABLE置為1,。傳輸也只會在ENABLE狀態(tài)維持一個周期,,在經(jīng)過SETUP與ENABLE狀態(tài)之后就已完成。之后如果沒有傳輸要進行,,就進入IDLE狀態(tài)等待,;如果有連續(xù)的傳輸,,則進入SETUP狀態(tài)。

       基于AMBA的片上系統(tǒng)

       一個典型的基于AMBA總線的系統(tǒng)框圖如圖3所示,。

基于AMBA的SoC結(jié)構圖

       大多數(shù)掛在總線上的模塊(包括處理器)只是單一屬性的功能模塊:主模塊或者從模塊,。主模塊是向從模塊發(fā)出讀寫操作的模塊,如CPU,,DSP等,;從模塊是接受命令并做出反應的模塊,如片上的RAM,,AHB/APB 橋等,。另外,還有一些模塊同時具有兩種屬性,,例如直接存儲器存取(DMA)在被編程時是從模塊,,但在系統(tǒng)讀傳輸數(shù)據(jù)時必須是主模塊。如果總線上存在多個主模塊,,就需要仲裁器來決定如何控制各種主模塊對總線的訪問,。雖然仲裁規(guī)范是AMBA總線規(guī)范中的一部分,但具體使用的算法由RTL設計工程師決定,,其中兩個最常用的算法是固定優(yōu)先級算法和循環(huán)制算法,。AHB總線上最多可以有16個主模塊和任意多個從模塊,如果主模塊數(shù)目大于16,,則需再加一層結(jié)構(具體參閱ARM公司推出的Multi-layer AHB規(guī)范),。APB 橋既是APB總線上唯一的主模塊,也是AHB系統(tǒng)總線上的從模塊,。其主要功能是鎖存來自AHB系統(tǒng)總線的地址、數(shù)據(jù)和控制信號,,并提供二級譯碼以產(chǎn)生APB外圍設備的選擇信號,,從而實現(xiàn)AHB協(xié)議到APB協(xié)議的轉(zhuǎn)換。  
       使用DesignWare搭建

       基于AMBA的SOC芯片

       為了更有效地在有限時間內(nèi)完成復雜的系統(tǒng)級芯片設計,,越來越多的芯片開發(fā)中采用了可重復使用的IP,。為了滿足日益成長的IP需求,Synopsys提供了一系列已驗證的IP,如Synopsys DesignWare,,來幫助設計者加速系統(tǒng)級芯片的開發(fā),。

       DesginWare里面包含了兩種IP:可實現(xiàn)

 

IP(Implement IP)以及VIP(Verification IP)。VIP是為了應對系統(tǒng)級芯片設計帶來的驗證挑戰(zhàn)而特別設計的,,專為簡化驗證流程,。可實現(xiàn)IP是指已通過驗證,、可物理實現(xiàn)的IP,,分為Star IP,、宏單元(Macro Cell)和 foundation IP。宏單元中包含與AMBA總線相關的IP,,有DW_ahb (ARM AMBA2.0 AHB 總線 IP,、DW_amba_ictl (ARM AMBA2.0 中斷IP)、DW_apb (ARM AMBA2.0 APB 總線IP)和DW_apb_uart ( ARM AMBA2.0 APB UART )等,。

       由此,,可以借助Synopsys公司提供的AMBA總線IP構建SoC,加速系統(tǒng)集成和驗證,。首先到 Synopsys的FTP或EST下載所需要的宏單元,借助coreConsultant在相應的目錄下安裝coreKit并且創(chuàng)建一個工作環(huán)境.然后設定此宏單元的可變參數(shù),,以符合系統(tǒng)要求,此外還必須設定綜合相關的參數(shù),。設定完參數(shù)后,,還要驗證所設定的參數(shù)是否符合系統(tǒng)規(guī)范。初步驗證后,,便可進一步將宏單元綜合成所需的網(wǎng)表,。產(chǎn)生網(wǎng)表之后,仍須利用宏單元內(nèi)的驗證環(huán)境來確定綜合后網(wǎng)表的所有功能都能正常工作,。如果所有功能都驗證完成,,就可以將這個IP放置到系統(tǒng)中。用DesignWare搭建的一個基于AMBA總線結(jié)構的SoC系統(tǒng)如圖4所示,,其中包括了用于驗證AMBA總線協(xié)議的VIP,。

 

DesignWare IP搭建的基于AMBA的SoC


       結(jié)語

       隨著復雜IP核在目前和下一代ASIC設計中的廣泛應用,半導體公司開始采用片上總線標準化集成技術,。ARM公司研發(fā)的AMBA總線規(guī)范提供了一種特殊的機制,,可將RISC處理器集成在其他IP核和外設中。同時,,Synopsys提供的DesignWare中的IP可以加速基于AMBA總線結(jié)構的SoC芯片設計,。這種技術成功地應用在TD-SCDMA系統(tǒng)終端基帶數(shù)字芯片的設計中,縮短了系統(tǒng)設計,、IP集成和驗證的時間,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載,。