《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 基于ADV202的嵌入式視頻壓縮系統(tǒng)的軟硬件設(shè)計

基于ADV202的嵌入式視頻壓縮系統(tǒng)的軟硬件設(shè)計

2008-06-17
作者:余建宇1, 李 勇1,, 侯顏平2

  摘 要: ADV202是美國AD公司開發(fā)的實時JPEG2000編解碼" title="編解碼">編解碼芯片,。介紹了一種基于ADV202芯片的嵌入式" title="的嵌入式">的嵌入式視頻壓縮系統(tǒng)" title="壓縮系統(tǒng)">壓縮系統(tǒng),該系統(tǒng)把PAL/NTSC制式的視頻信號壓縮為JPEG2000標(biāo)準(zhǔn)的視頻碼流輸出,,具有廣闊的應(yīng)用前景,。重點討論了系統(tǒng)硬件電路設(shè)計及軟件流程設(shè)計。
  關(guān)鍵詞: JPEG2000 ADV202 嵌入式 視頻壓縮


  國際標(biāo)準(zhǔn)化組織ISO和國際電信聯(lián)盟ITU于2000年12月正式推出了JPEG2000標(biāo)準(zhǔn),,該標(biāo)準(zhǔn)采用以離散小波" title="小波">小波變換為主的多解析編碼方法,具有許多優(yōu)良的特性,,然而一直未獲得廣泛的應(yīng)用,。AD公司于2004年推出了能實時壓縮和解壓縮高質(zhì)量運(yùn)動圖像和靜止數(shù)字圖像的JPEG2000編解碼芯片ADV202,。本文基于ADV202設(shè)計一個完整的嵌入式視頻壓縮系統(tǒng),,其中包括硬件電路設(shè)計和軟件流程設(shè)計,,該系統(tǒng)具有USB接口,,支持熱插拔,,無需主機(jī)控制,。
1 ADV202芯片介紹
  ADV202是美國AD公司新近推出的一款用于視頻和高帶寬靜止圖像壓縮的單片JPEG2000(ISO/IEC15444-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)格的主機(jī)接口允許無縫連接到大多數(shù)16/32位的微控制器和ASIC器件,。
  ADV202的內(nèi)部功能框圖如圖1所示,輸入的視頻或圖像數(shù)據(jù)進(jìn)入視頻接口后經(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ù)的存儲空間,,既可由外部主機(jī)通過標(biāo)準(zhǔn)地址讀寫周期直接訪問,也可以采用DREQ/DACK協(xié)議通過DMA方式訪問或?qū)S糜布帐謾C(jī)制訪問,。主機(jī)接口提供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所示,來自電視機(jī)或攝像機(jī)的單路PAL/NTSC制式的視頻信號,,經(jīng)過SAA7113編碼為SAV/EAV模式,、ITU.R-BT656 YUV4:2:2格式(8位)的視頻信號,由VPO[7..0]傳輸?shù)紸DV202的視頻接口,。在ADV202內(nèi)部,,視頻信號經(jīng)過硬件編碼產(chǎn)生.jp2格式的視頻信號,由主機(jī)接口D[31..0]輸入到TMS320VC33 DSP,。經(jīng)DSP壓縮后的視頻信號由USB接口芯片USBN9602轉(zhuǎn)換后通過USB口輸出。另外,,DSP還通過數(shù)據(jù)總線D[31..0]和地址總線A[3..0]對ADV202內(nèi)部直接及間接寄存器進(jìn)行配置,加載ADV202編碼模式所需的固件(由AD公司提供),,對ADV202編碼參數(shù)進(jìn)行設(shè)置,。USB口只作為壓縮數(shù)據(jù)流的輸出口,由DSP完全控制,。


2.2 DSP小系統(tǒng)
  出于對系統(tǒng)易實現(xiàn)性和性價比的考慮,,DSP芯片選擇TI公司的32位高性能數(shù)字信號處理器TMS320VC33,。TMS320VC33工作在75MHz主頻時,運(yùn)算能力可達(dá)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片外要進(jìn)行存儲器擴(kuò)展。
  DSP外部擴(kuò)展了兩片CY7C1041V33(256K×16bit)SRAM和1片SST39VF400A(256K×16bit) FLASH,。兩片CY7C1041V33按照數(shù)據(jù)位擴(kuò)展方式擴(kuò)展成為256K×32bit的數(shù)據(jù)存儲空間,,用于存儲壓縮后的視頻數(shù)據(jù),。DSP工作在微計算機(jī)/引導(dǎo)模式(MCBL/=1)下,,SST39VF400A用于存儲DSP的引導(dǎo)程序,。
2.3 系統(tǒng)時序控制電路
  系統(tǒng)時序控制電路由一片Altera EPM7128 CPLD芯片構(gòu)成,完成的主要功能有:
  (1)將DSP通用I/O引腳信號XF1,、XF0擴(kuò)展為I2C總線所需的SCL、SDA信號,,完成DSP對SAA7113的初始化設(shè)置;
  (2)產(chǎn)生ADV202的片選信號和復(fù)位信號,,將DSP的讀寫信號R/擴(kuò)展為ADV202的讀信號及寫信號,;
  (3)產(chǎn)生DSP外擴(kuò)存儲器SRAM和FLASH的接口信號:地址譯碼選通信號,、寫脈沖信號,、讀信號等;
  (4)產(chǎn)生USBN9602的接口信號:片選信號、讀信號,、寫信號、地址引腳信號A0,。
2.4 USB接口設(shè)計
  USBN9602是美國國家半導(dǎo)體公司推出的一款專用USB接口芯片,,支持USB1.1標(biāo)準(zhǔn),,內(nèi)部具有較大的FIFO,,可以緩存大量數(shù)據(jù),從而減輕處理器的負(fù)擔(dān),。在本系統(tǒng)中,USBN9602通過并行接口與TMS320VC33相連,,接口信號由CPLD控制,,工作于非總線復(fù)用模式(MODE0=0,,MODE1=0),,連接示意圖如圖3所示。USBN9602操作時序是先往地址寄存器中寫入地址,,然后通過數(shù)據(jù)輸入寄存器和數(shù)據(jù)輸出寄存器讀寫數(shù)據(jù),,而地址寄存器和數(shù)據(jù)寄存器的選擇則是通過A0實現(xiàn)的,。


2.5 時鐘信號的設(shè)計
  本系統(tǒng)選用3片晶振" title="晶振">晶振,,其中24.576MHz晶振提供SAA7113所需的外部時鐘,LLC產(chǎn)生的27MHz 時鐘輸出信號提供給ADV202編碼芯片使用,;5V供電的15MHz晶振提供給CPLD,,并經(jīng)過CPLD間接提供給DSP使用,從而解決了不同電平之間的匹配問題,,DSP內(nèi)部鎖相環(huán)使用×5模式(CLKMD0=CLKMD1=1),工作主頻為75MHz,;48MHz晶振提供USBN9602所需的輸入時鐘,。在電路板設(shè)計中,時鐘信號應(yīng)盡可能接近相應(yīng)輸入引腳,。
2.6 電源及系統(tǒng)復(fù)位電路的設(shè)計
  本系統(tǒng)需要四種電源供電:5V,、3.3V、1.8V和1.5V,。其中,,5V由系統(tǒng)外部電源提供,3.3V,、1.8V和1.5V由TI公司的電源芯片TPS767D301通過5V變換提供,。TPS767D301可將5V的電源輸入轉(zhuǎn)換為3.3V的固定電源輸出和1.5~5.5V的可變電源輸出,同時產(chǎn)生CPLD的復(fù)位信號,。
3 視頻壓縮系統(tǒng)軟件設(shè)計
3.1 系統(tǒng)軟件流程及總體設(shè)計

  本系統(tǒng)的軟件設(shè)計主要分為DSP初始化程序(dspinit.c),、I2C器件SAA7113初始化程序(iic.c)、ADV202初始化程序(init202.c),、DSP主控制程序(dspctl.c)以及USB通訊軟件的設(shè)計[5],。這些程序全部在DSP上完成。用C語言開發(fā)DSP程序可以縮短開發(fā)周期,,提高程序開發(fā)的效率,,也可以使程序的可讀性、可移植性大大提高,,并且能為系統(tǒng)的改進(jìn)和升級換代帶來極大的便利,;對于C語言編寫的代碼,,采用優(yōu)化編譯器生成高效率的匯編代碼,可提高程序的運(yùn)行速度,,減少目標(biāo)代碼的長度,。故在系統(tǒng)軟件的總體設(shè)計上,采取了以上方法,。系統(tǒng)軟件流程圖如圖4所示,。


3.2 主要程序?qū)崿F(xiàn)舉例
  ADV202初始化程序(init202.c)主要完成以下功能:
  (1)校驗和配置ADV202內(nèi)部直接寄存器和間接寄存器;
  (2)加載編碼模式下ADV202所需的固件程序,;
  (3)對固件配置寄存器進(jìn)行配置,,設(shè)置其工作狀態(tài);
  (4)檢驗應(yīng)用程序ID,;
  (5)清除中斷標(biāo)記,,使ADV202進(jìn)入運(yùn)行狀態(tài)。
  ADV202初始化流程圖如圖5所示,。


  本系統(tǒng)具有體積小,、實時性好、壓縮信號易恢復(fù)等優(yōu)點,,可以廣泛應(yīng)用于非線性編輯系統(tǒng),、遠(yuǎn)程閉路監(jiān)視系統(tǒng)、視頻信號采集系統(tǒng),、圖像和視頻檔案系統(tǒng),、高質(zhì)量視頻會議系統(tǒng)等。隨著ADV202的廣泛應(yīng)用,,JPEG2000技術(shù)必將成為業(yè)界圖像視頻壓縮的主流技術(shù)之一,。
參考文獻(xiàn)
1 ADV202 JPEG2000 Video Processor User′s Guide(Revision3.0).Analog Devices Inc., June 02, 2005.
2 TMS320VC33 Digital Signal Processor Data Sheet(Literature number:SPRS087D). Texas Instruments Incorporated (TI), February 1999, Revised July 2002
3 SAA7113H 9-bit video input processor [DB/OL]. Philips Semiconductors, July 01,1999
4 USBN9602 (Universal Serial Bus) Full Speed Function Con-troller With DMA Support. National Semiconductor Corpora-tion, November 1998
5 汪春梅,賈紅濤. USB在實時數(shù)據(jù)采集處理系統(tǒng)中的應(yīng)用[J]. 上海師范大學(xué)學(xué)報(自然科學(xué)版),2004;33(3):53~57

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:[email protected],。