HDTV SoC集成芯片的總線設(shè)計與驗證_第1頁
HDTV SoC集成芯片的總線設(shè)計與驗證_第2頁
HDTV SoC集成芯片的總線設(shè)計與驗證_第3頁
HDTV SoC集成芯片的總線設(shè)計與驗證_第4頁
HDTV SoC集成芯片的總線設(shè)計與驗證_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、聞彬,沈泊(復(fù)旦大學(xué)專用集成電路與系統(tǒng)國家重點實驗室,上海 200433)摘要:提出了一種適合于HDTV SOC的AMBA總線設(shè)計方案,并對整個架構(gòu)進行了詳細的驗證;實踐證明,AMBA總線非常適用于HDTV SOC系統(tǒng);與用硬件描述語言構(gòu)建的測試平臺相比,軟硬件協(xié)同的驗證方法不但有更高的仿真覆蓋率,而且更加高效省時。關(guān)鍵詞 : HDTV SOC;AMBA總線;軟硬件協(xié)同驗證中圖分類號:TN 492;TN 949.17 文獻標(biāo)識碼:ABus Design and Verification for HDTV SoCWEN Bin, SHEN Bo(State Key Laboratory of A

2、SIC & System, FudanUniversity, Shanghai 200433, China)Abstract:An AMBA based bus architecture suitable for HDTV SOC and an efficient verification methodologyare presented. It is proven that AMBA bus is well suitable for HDTV SOC. Compared with writing testbench using HDL language, the HW/SW co-v

3、erification methodology has higher coverage and simulates more efficiently. Keywords: HDTV SOC;AMBA;HW/SW co-verification1 引言高清晰度數(shù)字電視(HDTV)是數(shù)字技術(shù)在電視領(lǐng)域里的應(yīng)用,其主要優(yōu)點在于能實現(xiàn)無失真的傳輸,并能充分利用有限的頻譜資源,為用戶提供高質(zhì)量的影音服務(wù)。HDTV已經(jīng)成為電視技術(shù)的發(fā)展趨勢,HDTV SOC集成芯片設(shè)計作為其核心技術(shù),成為當(dāng)今研究的熱點。HDTV SOC集成芯片的性能不但取決于系統(tǒng)中的各個模塊,而且越來越依賴于總線架構(gòu)的設(shè)計。總線為系統(tǒng)中

4、的各個模塊提供有效的通信,通信的效率會在很大程度上影響整個系統(tǒng)的性能。此外,系統(tǒng)的大部分功耗也集中在總線上??梢姡x擇恰當(dāng)?shù)目偩€架構(gòu),是非常重要的。HDTV SOC集成芯片對總線的具體要求是:(1)為了減少芯片面積,總線的結(jié)構(gòu)要盡量簡單。(2)為了提高總線的速度,時序要盡量簡單。(3)支持burst傳輸模式,進一步提高總線速度。目前常用的片上總線有3種:Coreconnect,Wishbone和AMBA1總線。這3種總線都支持burst操作,其中Coreconnect總線由高速總線和低速總線組成,其結(jié)構(gòu)和時序都比較復(fù)雜,適用于工作站等復(fù)雜系統(tǒng)的設(shè)計;Wishbone總線結(jié)構(gòu)簡單而且非常靈活,很

5、多總線參數(shù)都由用戶自定義,支持多種通信模式,幾乎適用于所有系統(tǒng)的設(shè)計,沒有針對性。但因為沒有高速總線和低速總線之分,導(dǎo)致總線效率大大下降。使用多個Wishbone總線時,又沒有規(guī)范的橋接模塊的定義;AMBA總線不但結(jié)構(gòu)和時序都很簡單,而且非常規(guī)范,高速總線AHB(the Advanced High-performance Bus)和低速總線APB(the Advanced Peripheral Bus)以及二者之間的橋接模塊,都有嚴(yán)格的定義,非常適用于HDTV這種中等復(fù)雜度的系統(tǒng)的設(shè)計。本文給出了HDTV SOC系統(tǒng)的AMBA架構(gòu)解決方案,分析了各個部分的帶寬占用情況,并且在文章的后半部分重點

6、介紹了AMBA總線的驗證方法。2 HDTV SOC概述基于AMBA總線的HDTV SOC系統(tǒng)4如圖1所示。整個系統(tǒng)采用雙CPU結(jié)構(gòu):其中系統(tǒng)CPU(SYSTEM CPU)運行操作系統(tǒng)(OS)和中間件(Middle Ware),并負責(zé)對整個系統(tǒng)進行主控和調(diào)度。另一個CPU,即音頻CPU(AUDIO CPU),負責(zé)音頻的解碼。解復(fù)用器TSD(Transport Stream Demux)的主要任務(wù)是將TS流(Transport Stream)中的音頻流和視頻流分開。其中的音頻流通過總線送往外部32 bit SDRAM,視頻流直接送往視頻解碼器VD(Video Decoder)進行解碼。音頻流由AU

7、DIO CPU解碼后,通過PCM OUT 和AUDIO DACTRL傳至音箱輸出。視頻流由VD解碼后,暫存在專用的64 bit SDRAM里,而后通過視頻格式變換器VTP(Video Translation Processor)處理后,由VIDEO DA CTRL傳至電視屏幕輸出。屏幕顯示模塊OSD (On Screen Display)用來顯示一些屏幕操作菜單或者小型游戲畫面,可以和VTP的輸出信號混合后一起輸出到電視屏幕上。VTP可以同時輸出高清(HDTV)和標(biāo)清(SDTV)兩組視頻信號,所以此芯片架構(gòu)可以適應(yīng)于高清和標(biāo)清兩種數(shù)字電視系統(tǒng)中,具有很高的靈活性。另外,由DMAC模塊控制各片內(nèi)

8、緩存以及USB等外設(shè)與外部32 bit SDRAM之間的數(shù)據(jù)傳送。圖1 基于AMBA總線的HDTV SOC系統(tǒng)3 適合HDTV SOC的AMBA總線設(shè)計31 主設(shè)備與從設(shè)備在高速總線AHB總線上有3個主設(shè)備:SYSTEM CPU,AUDIO CPU和DMAC。8個從設(shè)備:MEMORY CONTROLLER,AHB-APB BRIDGE,TSD,VD,VTP,MIX,OSD,PCM OUT 。在任一時刻,總線只能被一個主設(shè)備占用。所以,任何一個主設(shè)備都必須向總線仲裁器發(fā)出請求信號,由仲裁器授權(quán)后,才可獲得總線使用權(quán)。被授權(quán)的主設(shè)備再通過中央譯碼器選中一個從設(shè)備,從而建立了一個一對一的實際通道。為

9、了簡化設(shè)計,HRESP作為握手信號只保留了OKAY和ERROR兩種狀態(tài)。對低速總線APB總線而言,AHB-APB BRIDGE是其唯一的主設(shè)備,USB,INTC,TIMER,UART等低速模塊均為從設(shè)備。APB總線的時序要比AHB總線簡單許多,只保留了最基本的地址信號、數(shù)據(jù)信號和控制信號,沒有握手信號。32 央譯碼器與仲裁器中央譯碼器的任務(wù)是將高位地址信號翻譯成從設(shè)備的片選信號,以選中指定的從設(shè)備。譯碼器采用簡單的組合電路以提高響應(yīng)速度。為提高操作系統(tǒng)的可移植性,可根據(jù)操作系統(tǒng)中給從設(shè)備分配的地址對譯碼器進行設(shè)計。圖2 總線移交的流程仲裁器的作用是判決由哪一個主設(shè)備占用總線。圖2是通過總線仲裁

10、實現(xiàn)總線使用權(quán)移交的流程圖。假設(shè)當(dāng)前的總線被主設(shè)備A占用,如果主設(shè)備A鎖住總線,則仲裁器不進行新的仲裁。如果主設(shè)備A沒有鎖住總線或主設(shè)備A給總線解鎖后,則仲裁器根據(jù)既定的仲裁算法進行新的仲裁。設(shè)仲裁的結(jié)果是,主設(shè)備B目前的優(yōu)先級最高。此時仲裁器不會立即將總線移交給主設(shè)備B,還需繼續(xù)觀察。如果主設(shè)備A此時進行的是BURST操作,則必須等待BURST操作結(jié)束,仲裁器才能將總線使用權(quán)授予主設(shè)備B,即通知主設(shè)備B其將要獲得總線的使用權(quán)。如果主設(shè)備A此時的操作不是BURST操作,則仲裁器直接將總線使用權(quán)授予主設(shè)備B。此后等待直至HREADY信號有效,仲裁器才最終將總線移交給主設(shè)備B。在HDTV SOC系

11、統(tǒng)中,仲裁器采用固定優(yōu)先級算法,此算法的優(yōu)點是電路結(jié)構(gòu)簡單,并且已經(jīng)可以滿足本設(shè)計的需要。3個主設(shè)備的優(yōu)先級從高到低依次為:DMAC,AUDIO CPU和SYSTEM CPU。SYSTEM CPU的優(yōu)先級最低,且為默認(rèn)主設(shè)備,在沒有主設(shè)備申請總線的時候,系統(tǒng)將總線移交給SYSTEM CPU。DMAC的優(yōu)先級最高,系統(tǒng)啟動后,由SYSTEM CPU對各模塊進行初始化,并在適當(dāng)?shù)臅r候啟動DMAC,按照一定的順序完成各種DMA操作。而AUDIO CPU的優(yōu)先級則位于兩者之間。33 橋接模塊橋接模塊AHB-APB BRIDGE負責(zé)AHB和APB總線之間的通信,其狀態(tài)圖如圖3所示。IDLE是開始時的默認(rèn)

12、狀態(tài),當(dāng)讀操作發(fā)生時,在下一個時鐘轉(zhuǎn)移到SETUP狀態(tài)。SETUP狀態(tài)下,PSELx信號被啟動,一個時鐘后,無條件地轉(zhuǎn)移到ENABLE狀態(tài)。ENABLE狀態(tài)下,啟動PENABLE信號,一個時鐘后,若有讀操作(寫操作)發(fā)生,則直接轉(zhuǎn)至SETUP狀態(tài),若無數(shù)據(jù)傳輸操作,則返回IDLE狀態(tài)。寫操作的過程和讀操作相似,不同之處在于鑒于AHB總線上寫操作的地址信號先于數(shù)據(jù)信號一個時鐘周期,在處理時必須先將兩個信號對齊,所以寫操作多了一個PRE_SETUP狀態(tài)。由于AHB總線圖3 AHB-APB BRIDGE的狀態(tài)圖上的信號采用流水線結(jié)構(gòu),數(shù)據(jù)的傳輸在一個時鐘內(nèi)就可以完成,而APB總線沒有流水線操作,數(shù)據(jù)

13、的傳輸需要兩個時鐘,所以每次傳輸都需要在SETUP狀態(tài)中將HREADY信號拉低一次,讓AHB總線等待一個周期,以保持兩種總線的同步。34 帶寬分析視頻解碼部分(VD和VTP)對內(nèi)存的訪問過于頻繁,如果直接接入AHB總線共享內(nèi)存空間會大量占用總線帶寬,導(dǎo)致系統(tǒng)不能正常運行。為此,給VD和VTP分配了專用的內(nèi)存。這樣,對帶寬需求最大的視頻解碼部分有自己的專用內(nèi)存,不占用總線的帶寬;SYSTEM CPU有自帶的cache緩存器,可以大大減少對內(nèi)存的訪問次數(shù),假設(shè)SYSTEM CPU的工作頻率為100 MHz,數(shù)據(jù)線為32 bit,對cache的命中率為90,那么SYSTEM CPU對總線帶寬的最大需

14、求應(yīng)為:100 M/s×(32/8)B×1040 MB/s;而音頻相關(guān)的部分對總線帶寬的需求很小,以立體聲192 KHz、16 bit高保真音頻為例,所需帶寬也只有800KB/s,AUDIO CUP寫內(nèi)存所需帶寬和PCM OUT相同,而讀內(nèi)存的帶寬(等于TSD寫內(nèi)存的帶寬)遠遠小于寫內(nèi)存,音頻相關(guān)的總帶寬需求不大于2MB/s;OSD是菜單顯示模塊,整個菜單的背景和框架是靜態(tài)圖象,變化的只有一些簡單的字符和光標(biāo)位置,而且OSD有自己的視頻緩沖區(qū),所以對總線帶寬的需求更小,可以忽略。因此,整個系統(tǒng)對總線帶寬的需求不過50MB/s。假設(shè)總線頻率為133 MHz,總線位寬為32 b

15、it,對內(nèi)存的訪問效率為60,那么能夠提供的帶寬為:133 M/s×(32/8)B×60 MB/s??梢姡瑔螌拥腁HB總線完全可以滿足HDTV SOC系統(tǒng)的需要。4 總線的驗證方法圖4 測試平臺驗證的主要內(nèi)容是各模塊的接口是否符合AMBA規(guī)范,以及各模塊之間能否正常通信,完成整個系統(tǒng)的工作。本設(shè)計采用軟硬件協(xié)同的驗證方法。實踐證明,用單純的硬件描述語言構(gòu)建測試環(huán)境,很難準(zhǔn)確地仿真復(fù)雜的時序。而軟硬件協(xié)同的驗證方法,可以準(zhǔn)確地模仿總線上發(fā)生的事件2。圖5 驗證流程如圖4所示,測試平臺由SYSTEM CPU,SDRAM模型(其中映射有測試程序),譯碼器,仲裁器和AHB總線構(gòu)成。

16、在測試各個模塊之前,必須首先保證測試平臺的正確性。SYSTEM CPU使用的是標(biāo)準(zhǔn)模塊,SDRAM模型結(jié)構(gòu)比較簡單,不容易出錯。驗證的重點是SYSTEM CPU和SDRAM模型的AHB接口3部分。需要驗證的特征有:(1)讀操作(2)寫操作(3)burst讀操作(4)burst寫操作(5)讀寫交替的操作(6)對握手信號的驗證。以上的6個特征分別對應(yīng)6個不同的測試程序,每個測試程序驗證其中的一個特征。通過了這6個特征以后,基本上就可以確保SYSTEM CPU和SDRAM模型的AHB接口的正確性。平臺上的譯碼器和仲裁器,用窮舉的方法進行初步的驗證。這種驗證的方法能夠驗證譯碼器和仲裁器的功能,但不能驗

17、證二者的時序,更加完備的驗證在后面會提到。APB總線的驗證比AHB總線簡單,只需要驗證(1)(2)(5)三個特征。驗證的整個流程如圖5所示。首先構(gòu)建如圖4所示的測試平臺,并對測試平臺進行比較完備的驗證。如果平臺未通過驗證,就修改平臺的代碼,直到通過為止。測試平臺通過驗證后,就可以測試其他模塊了。所有被測模塊(包括主設(shè)備和從設(shè)備)的AHB接口,都可以通過前面提到的6個程序來驗證。首先測試從設(shè)備(或者說各個模塊的從接口),從設(shè)備逐一通過驗證后,將所有從設(shè)備都接入平臺,構(gòu)成一個單主設(shè)備(SYSTEM CPU)多從設(shè)備系統(tǒng),用一段相應(yīng)的程序可以再次驗證譯碼器,使譯碼器的驗證更加完備。然后測試主設(shè)備(或

18、者說各個模塊的主接口),主設(shè)備逐一通過驗證后,將所有主設(shè)備都接入平臺,構(gòu)成一個單從設(shè)備(SDRAM模型)多主設(shè)備系統(tǒng),用一段相應(yīng)的程序可以再次驗證仲裁器,使仲裁器的驗證更加完備。最后將所有的從設(shè)備和主設(shè)備都接入平臺,構(gòu)成一個完整的HDTV系統(tǒng),在其上運行完整的操作系統(tǒng),應(yīng)用軟件以及真實的TS流,進行最后的驗證。圖6是SYSTEM CPU對UART的一個初始化過程:SYSTEM CPU先從SDRAM模型中讀取程序,再對UART的各個寄存器進行賦值。這一初始化過程可以驗證UART模塊的寫操作。事實證明,這種軟硬件協(xié)同的驗證方法是非常有效的,與用硬件描述語言構(gòu)建的測試平臺相比,軟硬件協(xié)同的驗證方法不但有更高的仿真覆蓋率,而且更加高效省時。圖6UART寫操作的驗證5 結(jié)論提出了一種基于單層AMBA總線的HDTV SOC設(shè)計方案,并用軟硬件協(xié)同的方法驗證了AMBA總線以及各模塊的總線接口,這種驗證方法被證明是方便而有效的。本總線設(shè)計已經(jīng)通過了FPGA驗證,并已用于實際應(yīng)用當(dāng)中。實踐證明AMBA總線架構(gòu)結(jié)構(gòu)簡單、效率高,非常適用于HDTV SOC等中等復(fù)雜度的系統(tǒng)的設(shè)計。參考文獻TM Specification(Rev 2.0)EB/OL.2Rashinkar P,Paterson P, Singh L.System-on-a-chipVerification: Methodology a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論