基于ADV202的嵌入式視頻壓縮系統(tǒng)軟硬件設(shè)計
1 ADV202芯片介紹
ADV202是美國AD公司新近推出的一款用于視頻和高帶寬靜止圖像壓縮的單片IPEG2000(ISO/IECl5444-1圖像壓縮標(biāo)準(zhǔn))編解碼芯片,是當(dāng)今市場上惟一具有實時壓縮和解壓縮標(biāo)準(zhǔn)(SD)視頻信 號和高清晰度(HDTV)視頻信號的芯片,專利的空間高效遞歸濾波(SURF)技術(shù)使其具有低功耗和低成本的小波壓縮。它提供的專用視頻接口可以無縫連接到刪ITU.R-BT656,SMPTE125M、SMPTE293M[525p]等標(biāo)準(zhǔn)的數(shù)字視頻接口,靈活的異步SRAM風(fēng)格的主機接口允許無縫連接到大多數(shù)16/32位的微控制
|
ADV202的內(nèi)部功能框圖如圖1所示,輸入的視頻或圖像數(shù)據(jù)進入視頻接口后經(jīng)過解交錯傳輸?shù)叫〔ㄗ儞Q引擎中。在小波引擎中,每幀圖像或每個圖塊通過5/3或9/7濾波器分解成許多子帶,生成的小波系數(shù)寫入內(nèi)部寄存器中。熵編碼器將圖像數(shù)據(jù)編碼為符合JPEG2000標(biāo)準(zhǔn)的數(shù)據(jù)。內(nèi)部DMA引擎提供存儲器之間的高帶寬傳輸以及各模塊和存儲器之間的高性能傳輸。內(nèi)部FIFO提供像素數(shù)據(jù)、碼流數(shù)據(jù)、特征數(shù)據(jù)和輔助數(shù)據(jù)的存儲空間,既可由外部主機通過標(biāo)準(zhǔn)地址讀寫周期直接訪問,也可以采用DREQ/DACK協(xié)議通過DMA方式訪問或?qū)S糜布帐謾C制訪問。主機接口提供16/32位的控制總線和8/16/32位的數(shù)據(jù)傳輸總線,用于對內(nèi)部寄存器的配置、控制和狀態(tài)傳遞以及壓縮數(shù)據(jù)流的傳輸。
2 視頻壓縮系統(tǒng)硬件設(shè)計
2.1 系統(tǒng)硬件整體構(gòu)架
系統(tǒng)硬件整體框架如圖2所示,來自電視機或攝像機的單路PAL/NTSC制式的視頻信號,經(jīng)過SAA7n3編碼為SAV/EAV模式、ITU.R—BT656 YUV4:2:2格式(8位)的視頻信號,由VPO[7..0]傳輸?shù)紸DV202的視頻接口。在ADV202內(nèi)部,視頻信號經(jīng)過硬件編碼產(chǎn)生.jp2格式的視頻信號,由主機接口D[31..0]輸入到TMS320VC33 DSP。經(jīng)DSP壓縮后的視頻信號由USB接口芯片USBN9602轉(zhuǎn)換后通過USB口輸出。另外,DSP還通過數(shù)據(jù)總線D[31..O]和地址總線A[3..]對ADV202內(nèi)部直接及間接寄存器進行配置,加載ADV202編碼模式所需的固件(由AD公司提供),對ADV202編碼數(shù)進行設(shè)置。USB口只作為壓縮數(shù)據(jù)流的輸出口,由DSP完全控制。
2.2 DSP小系統(tǒng)
出于對系統(tǒng)易實現(xiàn)性和性價比的考慮,DSP芯片選擇Ⅱ公司的32位高性能數(shù)字信號處理器TMS320VC33。TMS320VC33工作在75Mlk主頻時,運算能力可達150MFLOPS,可以訪問的總存儲空間為16M×32bit,程序空間、數(shù)據(jù)空間和I/O空間都包含在整個16M×32bit空間中,且統(tǒng)一編址。片內(nèi)提供了34K×32bit SRAM,考慮到系統(tǒng)處理對象是視頻信號,要求較大的程序空間和數(shù)據(jù)空間,片內(nèi)RAM通常不能滿足系統(tǒng)要求,因而在DSP片外要進行存儲器擴展。
DSP外部擴展了兩片CY7C1041V33 (256K×16bit)SRAM和1片SST39VF400A(256K×l6bit)FLASH。兩片CY7C1041V33按照數(shù)據(jù)位擴展方式擴展成為256K×32bit的數(shù)據(jù)存儲空間,用于存儲壓縮后的視頻數(shù)據(jù)。DSP工作在微計算機/引導(dǎo)模式(MCBL/MP=1)下,SST39VF400A用于存儲DSP的引導(dǎo)程序。
2.3 系統(tǒng)時序控制電路
系統(tǒng)時序控制電路由一片Altera EPM7128 CPLD芯片構(gòu)成,完成的主要功能有:
(1)將DSP通用I/O引腳信號XFl、XF0擴展為I2C總線所需的SCL、SDA信號,完成DSP對SAA7113的初始化設(shè)置;
(2)產(chǎn)生ADV202的片選信號CS和復(fù)位信號RESET,將DSP的讀寫信號R/W擴展為ADV202的讀信號RD及寫信號WE;
(3)產(chǎn)生DSP外擴存儲器SRAM和FLASH的接口信號:地址譯碼選通信號CE、寫脈沖信號WE、讀信號OE等;
(4)產(chǎn)生USBN9602的接口信號:片選信號CS、讀信號RD、寫信號WR、地址引腳信號A0。
2.4 USB接口設(shè)計
USBN9602是美國國家半導(dǎo)體公司推出的一款專用USB接口芯片,支持USBl.1標(biāo)準(zhǔn)。內(nèi)部具有較大的FIFO.可以緩存大量數(shù)據(jù),從而減輕處理器的負擔(dān)。在本系統(tǒng)中,USBN9602通過并行接口與TMS320VC33相連,接口信號由CPLD控制.工作于非總線復(fù)用模式(MODE0=O,MODEl=0),連接示意圖如圖3所示。USBN9602操作時序是先往地址寄存器中寫入地址,然后通過數(shù)據(jù)輸入寄存器和數(shù)據(jù)輸出寄存器讀寫數(shù)據(jù),而地址寄存器和數(shù)據(jù)寄存器的選擇則是通過AO實現(xiàn)的。
2.5 時鐘信號的設(shè)計
本系統(tǒng)選用3片晶振,其中24.576MHz晶振提供SAA7113所需的外部時鐘,LLC產(chǎn)生的27MHz時鐘輸出信號提供給ADV202編碼芯片使用;5V供電的。15MHz晶振提供給CPLD,并經(jīng)過CPLD間接提供給DSP使用。從而解決 了不同電平之間的匹配問題,DSP內(nèi)部鎖相環(huán)使用×5模式(CLKMDO=CLKMDl=1),工作主頻為75MHz;48MHz晶振提供USBN9602所需的輸入時鐘。在電路板設(shè)計中,時鐘信號應(yīng)盡可能接近相應(yīng)輸入引腳。
2.6 電源及系統(tǒng)復(fù)位電路的設(shè)計
本系統(tǒng)需要四種電源供電:
3 視頻壓縮系統(tǒng)軟件設(shè)計
3.1 系統(tǒng)軟件流程殛總體設(shè)計
本系統(tǒng)的軟件設(shè)計主要分為DSP初始化程序(dspinit.c)、I2C器件SAA7113初始化程序(iic.c)、ADV202初始化程序(init202.c)、DSP主控制程序(dspetl.c)以及uSB通訊軟件的設(shè)計。些程序全部在DSP上完成。用C語言開發(fā)DSP程序可以縮短開發(fā)周期,提高程序開發(fā)的效率,也可以使程序的可讀性、可移植性大大提高,并且能為系統(tǒng)的改進和升級換代帶來極大的便利;對于C語言編寫的代碼,采用優(yōu)化編譯器生成高效率的匯編代碼,可提高程序的運行速度,減少目標(biāo)代碼的度。故在系統(tǒng)軟件的總體設(shè)計上,采取了以上方法。系統(tǒng)軟件流程圖如圖4所示。
3.2 主要程序?qū)崿F(xiàn)舉例
ADV202初始化程序(init202.c)主要完成以下功能:
(1)校驗和配置ADV202內(nèi)部直接寄存器和間接寄存器;
(2)加載編碼模式下ADV202所需的固件程序;
(3)對固件配置寄存器進行配置,設(shè)置其工作狀態(tài);
(4)檢驗應(yīng)用程序ID;
(5)清除中斷標(biāo)記,使ADV202進入運行狀態(tài)。
ADV202初始化流程圖如圖5所示。
本系統(tǒng)具有體積小、實時性好、壓縮信號易恢復(fù)等優(yōu)點,可以廣泛應(yīng)用于非線性編輯系統(tǒng)、遠程閉路監(jiān)視系統(tǒng)、視頻信號采集系統(tǒng)、圖像和視頻檔案系統(tǒng)、高質(zhì)量視頻會議系統(tǒng)等。隨著ADV202的廣泛應(yīng)用,JPEG2000技術(shù)必將成為業(yè)界圖像視頻壓縮的主流技術(shù)之一。