摘 要: 隨著數(shù)字視頻技術(shù)的深入推廣,MPEG-2標(biāo)準(zhǔn)得到了日益廣泛的應(yīng)用,MPEG-2編解碼芯片成為許多數(shù)字視頻設(shè)備中的核心部件。詳細(xì)介紹了C-Cube公司新一代實(shí)時(shí)MPEG-2編解碼芯片Dvxpert-II,并給出了一個(gè)應(yīng)用實(shí)例。
關(guān)鍵詞: MPEG-2 Dvxpert-II 編碼
C-Cube公司研發(fā)的MPEG-2編解碼芯片Dvxpert-II采用308腿BGA封裝,將MPEG-2視頻編碼、視頻解碼和視頻編譯碼(CODEC)功能集于一體,具有可編程、可升級(jí)擴(kuò)展的平臺(tái)結(jié)構(gòu),能夠有效地實(shí)現(xiàn)基于運(yùn)動(dòng)補(bǔ)償(MC)、分塊離散余弦變換(block/DCT)視頻壓縮算法的實(shí)時(shí)編碼,圖1給出了芯片的功能方框圖。芯片的軟件部分是一種叫做微碼(Microcode)的指令集,利用微碼可由主機(jī)HOST向芯片發(fā)送編解碼命令,并由編碼芯片返回工作狀態(tài)信息。該芯片可提供高質(zhì)量的4:2:0及4:2:2的MPEG-2圖像。單芯片能夠?qū)崿F(xiàn)主級(jí)主類(ML@MP)數(shù)字視頻廣播標(biāo)準(zhǔn)的實(shí)時(shí)編碼和解碼、主級(jí)高類(ML@4:2:2 Professional Profile)標(biāo)準(zhǔn)的實(shí)時(shí)解碼以及主級(jí)簡單類(ML@SP)標(biāo)準(zhǔn)的編譯碼,雙芯片級(jí)聯(lián)可以實(shí)現(xiàn)主級(jí)高類標(biāo)準(zhǔn)的實(shí)時(shí)編碼。為實(shí)現(xiàn)MPEG-2視頻實(shí)時(shí)編碼,Dvxpert-II內(nèi)部集成了一個(gè)32位、工作頻率110MHz的RISC核心,一個(gè)每秒鐘可執(zhí)行近16億個(gè)算術(shù)操作的DSP協(xié)處理器和一個(gè)可編程運(yùn)動(dòng)估計(jì)協(xié)處理器。
1 硬件接口
Dvxpert-II的硬件接口包括視頻輸入輸出接口、音頻輸入輸出接口、SDRAM接口、PCI總線接口、串行EPROM接口以及可編程I/O總線接口等。
1.1 視頻輸入輸出接口
視頻輸入接口接收8位或10位數(shù)字視頻,該視頻源由CCIR-656(并行D1口)或視頻解碼芯片(例如Philips公司的SAA7111A芯片)提供。圖2給出了視頻輸入接口的結(jié)構(gòu)框圖。在沒有軟件干預(yù)的條件下,視頻輸入接口從每場輸入圖像中捕捉兩個(gè)可編程的矩形窗,還可以捕捉垂直插入時(shí)間碼(VITC)和閉路電視字幕(closed caption)。在一個(gè)窗結(jié)束和下一個(gè)窗開始之間的行消隱期間對輸入通道重新編程可捕捉附加的窗口。視頻輸入接口處理的圖像分辨率是可編程改變的,在主級(jí)主類(ML@MP)下,水平分辨率可為720、640、320等;垂直分辨率為480(NTSC制)以及576 (PAL制)。視頻輸入接口還包括了PTS時(shí)鐘輸入端口,PTS時(shí)鐘是PTS計(jì)數(shù)器的時(shí)間指示。視頻輸出接口輸出8位CCIR-656格式的數(shù)字視頻信號(hào)。
1.2 音頻輸入輸出接口
音頻輸入接口從音頻A/D或者AES/SPDIF設(shè)備接收16位到32位數(shù)字音頻數(shù)據(jù)用以壓縮,相對的音頻輸出接口向音頻D/A輸出解壓后的數(shù)字音頻數(shù)據(jù)。音頻輸入輸出接口各有四個(gè)輸入通道,每個(gè)通道處理一對聲道(左、右聲道)的數(shù)據(jù),因此音頻接口可以同時(shí)處理8個(gè)聲道的數(shù)據(jù)。所有的通道都與一個(gè)音頻時(shí)鐘(ACLK)同步,ACLK與編碼芯片的其余時(shí)鐘均為異步。AI_FSYNC為幀同步信號(hào),指示新的音頻數(shù)據(jù)幀的開始;AI_STATUS為音頻編碼狀態(tài)信息。編碼芯片的音頻接口與現(xiàn)在市面上大多數(shù)流行芯片的數(shù)據(jù)格式兼容。
1.3 SDRAM接口
SDRAM接口有64位數(shù)據(jù)總線和12位地址總線,可連接4片SDRAM。每片的容量為1M×16bit,其中包含兩塊Bank,每塊大小為512×16bit,這些SDRAM是并行工作的。芯片內(nèi)部的SDRAM控制器產(chǎn)生所有的SDRAM控制信號(hào),例如時(shí)鐘使能(CKE)、寫使能()、行選中()、列選中()等。所有的SDRAM芯片工作在統(tǒng)一的時(shí)鐘下,這個(gè)時(shí)鐘由芯片內(nèi)部提供,與芯片工作頻率相同,為110MHz。SDRAM支持瘁發(fā)方式的讀寫操作,瘁發(fā)方式的頻率可編程設(shè)置,其帶寬峰值為880Mb/s。
1.4 PCI接口
芯片的PCI總線接口與PCI規(guī)范2.1修訂版本(PCI Specification Revision 2.1)相兼容。該接口為32位地址/數(shù)據(jù)復(fù)用,它將芯片連接到PCI總線上,主機(jī)通過PCI總線設(shè)置芯片的工作狀態(tài),并與芯片交互信息及傳輸碼流。PCI接口必須由主機(jī)PCI時(shí)鐘驅(qū)動(dòng),頻率為33MHz,主機(jī)時(shí)鐘與芯片的工作時(shí)鐘是異步的。PCI接口在5V和3.3V電源環(huán)境下均能工作。PCI規(guī)范中允許在每塊PCI插卡上有一條PCI總線通路,若有多塊芯片連接到PCI總線上,則需要使用PCI-to-PCI橋。
1.5 串行EPROM接口
芯片包括一個(gè)與串行ROM的接口。在某些情況下,連在PCI總線上的芯片帶有串行ROM,其中有自引導(dǎo)程序和初始化數(shù)據(jù)。在實(shí)際應(yīng)用中,串行ROM的SDA和SCLK管腿與芯片的SDA和SCLK管腿是直接相連的,SDA管腿上還應(yīng)該有一上拉電阻。如果沒有使用串行ROM,SDA管腿應(yīng)通過一電阻接地。這樣,串行ROM的讀時(shí)序?qū)惓V兄?子系統(tǒng)的ID寄存器不會(huì)裝載,控制總線的寄存器不會(huì)初始化,RISC處理器核心在復(fù)位時(shí)將被掛起,所有串行ROM執(zhí)行的功能都要求由主機(jī)傳送給編碼芯片的控制信息完成。
1.6 可編程I/O總線接口
芯片利用微碼可使這個(gè)接口完成串行接口的功能,與Philips公司的I2C總線可以類比:PIO-0管腿相當(dāng)于串行數(shù)據(jù)線(SDA),而PIO-1管腿相當(dāng)于串行時(shí)鐘(SCLK)。另外這個(gè)接口還可以產(chǎn)生一些其它格式的串行信號(hào),可以方便地對外圍音、視頻芯片進(jìn)行參數(shù)設(shè)置和初始化。
1.7 其它接口
以下提到的接口在大多數(shù)設(shè)計(jì)中并不使用,只作簡略介紹。
IPC(Inter Processor Communication)接口:當(dāng)需要提高視頻編碼的分辨率時(shí)(比如用作高清晰度電視HDTV的信源),要使用多芯片級(jí)聯(lián)進(jìn)行編碼,IPC接口就是用來與鄰近的芯片進(jìn)行通信的。如果是單芯片進(jìn)行壓縮編碼,則LID[0:3]、RID[0:3]接地而LOACK、ROACK接高電平。
JTAG測試接口:用以測試數(shù)據(jù),符合IEEE 1149.1標(biāo)準(zhǔn)。當(dāng)沒有使用JTAG接口時(shí),應(yīng)將TCK和管腿接地。
2 軟件
Dvxpert-II采用Firmware(固件)的方式來存儲(chǔ)指令集(微碼,即Mircocode),從而提供了可編程、可升級(jí)擴(kuò)展的平臺(tái)結(jié)構(gòu),使用相當(dāng)靈活便捷。利用微碼通過PCI總線可在主機(jī)和芯片之間建立命令—消息通信機(jī)制:在每一場時(shí)間內(nèi),主機(jī)向芯片發(fā)送命令,芯片返回工作信息,從而可以利用軟件有效地控制整個(gè)編解碼過程。在應(yīng)用中,針對所在區(qū)域電視制式(PAL制還是NTSC制)以及具體的視頻等級(jí)要求(主級(jí)主類ML@MP還是主級(jí)簡單類ML@SP),通過主控軟件的界面選擇相應(yīng)的微碼向芯片上載即可實(shí)現(xiàn),這使得該芯片的應(yīng)用范圍相當(dāng)廣泛。
3 應(yīng)用實(shí)例
此處給出的實(shí)例是利用Dvxpert-II設(shè)計(jì)的DVB系統(tǒng)前端MPEG-2編碼器,該設(shè)計(jì)只使用了芯片的編碼功能。原理圖如圖3所示,輸入的模擬視頻信號(hào)經(jīng)SAA7111進(jìn)行模數(shù)轉(zhuǎn)換和數(shù)據(jù)格式處理后,得到CCIR-656格式的數(shù)字視頻碼流送給Dvxpert-II進(jìn)行壓縮編碼并打包成視頻PES包。輸入的模擬立體聲信號(hào)經(jīng)過CS4218進(jìn)行模數(shù)轉(zhuǎn)換后得到標(biāo)準(zhǔn)格式的數(shù)字音頻幀傳給Dvxpert-II,芯片本身并不進(jìn)行音頻的壓縮,只是記錄下視頻、音頻的同步信息,然后通過PCI總線傳給主機(jī),由軟件進(jìn)行音頻壓縮并將壓縮數(shù)據(jù)打包成音頻PES包。編碼芯片將視頻PES包由PCI總線通過DMA方式傳給主機(jī)內(nèi)存,主控軟件將音、視頻PES包送給另一塊PCI插卡,在其上完成TS打包并送給后級(jí)供傳輸或者復(fù)用。
參考文獻(xiàn)
1 C-Cube Processor Hardware User's Manual. C-Cube公司,1999年1月
2 C-Cube Processor Applications Programming Interface (API) Reference Guide. C-Cube公司,1999年1月