TVP5150的低功耗視頻解碼模塊
隨著便攜式多媒體終端需求量迅速增加,在視頻解碼等方面對芯片低功耗的要求也越來越高。
因此,只有將模擬視頻信號轉換成為符合ITU-R BT.656標準的數(shù)字信號,才可方便地利用FPGA或者DSP甚至PC機來進行信號處理。本模塊就是利用TI公司的超低功耗TVP5150芯片對視頻信號A/D解碼,由單片機通過I2C總線控制,預留地址數(shù)據(jù)等接口,作為模塊驗證以及后續(xù)數(shù)字信號處理之用。
1模塊硬件構成
1.1系統(tǒng)基本構成
系統(tǒng)總體構成框圖如圖1所示。
TVP5150是超低功耗、支持NTSC/PAL/SECAM等格式的高性能視頻解碼器,在正常工作時,它的功耗僅115 mW,并且具有超小封裝(32腳的TQFP),因此非常適用于便攜、批量大、高質量和高性能的視頻產(chǎn)品。它可以接收2路復合視頻信號(CVBS)或1路S-Video信號。通過單片機I2C總線設置內部寄存器,可以輸出8位4:2:2的ITU-R BT.656信號(同步信號內嵌),以及8位4:2:2的ITU-R BT.601信號(同步信號分離,單獨引腳輸出)。
單片機選用TI公司的MSP430F2013,超低功耗,有2 kB+256 B Flash存儲器和128 B RAM,14腳超小封裝(TSSOP)。其功耗是一般單片機的1/5,特別適合于手持設備,在1.8 V~3.6 V電壓、1 MHz的時鐘條件下,耗電電流在0.1 μA~400 μA之間(因工作模式不同而不同)。單片機通過MAX3232與串口連接,由PC機通過串口對單片機在線編程,方便對單片機程序及時修改。由PC設置并且隨時調整TVP5150的內部寄存器,控制其工作狀態(tài),輸出信號等。單片機預留控制口,以增加本模塊的可擴展性。
74HC16245總線控制器用來提高本模塊輸出信號的負載驅動能力,它是可選部分,視需要可將信號直通以降低模塊功耗。如果有多個模塊組合工作,由單片機對74HC16245使能控制,協(xié)調各模塊信號輸出。
驗證模塊主要由SAA7121視頻編碼芯片構成,可將8位4:2:2的ITU-R BT.656或者ITU-R BT.601輸入信號編碼成CVBS信號或S-Video信號輸出。如果TVP5150解碼模塊工作正常,利用此驗證模塊可以得到模擬視頻信號,接人顯示設備可得到輸入圖像。
1.2系統(tǒng)硬件設計
TVP5150芯片應用原理圖如圖2所示。芯片采用14.318 18 MHz晶振,數(shù)字和模擬輸入電壓為1.8 V,IO口電壓為3.3 V;信號輸入有CH1和CH2兩路,并且都進行阻抗匹配設計,防止對輸入信號的反射;YOUT[0:7]輸出8路YCbCr信號,消隱信號可選擇單獨引腳HSYNC和VSYNC輸出,或者內嵌于這8路信號中。PCLK/SCLK腳時鐘信號可輸出13.5 MHz和27 MHz兩種頻率。
2模塊程序構成
本模塊主要由PC機與單片機串口通信程序和單片機與TVP5150的I2C控制程序兩部分軟件組成。
2.1 PC機與單片機串口通信程序
PC機與單片機通信協(xié)議見表1。
注:帶引號部分為傳輸數(shù)據(jù)頭,供單片機識別處理;Addr為地址;Data為數(shù)據(jù)。
本程序在dephi7.0開發(fā)環(huán)境下完成設計,配置文件為txt格式,能讀取和保存配置文件,在配置表格中能對配置文件進行簡單處理,能選取配置文件中的寄存器信息通過串口發(fā)送給單片機,并且能讀取單片機發(fā)送來的寄存器信息。
程序分為前臺的界面處理與后臺數(shù)據(jù)和功能處理兩層。前臺只負責界面的設置與動作,對表格中一切數(shù)據(jù)的處理都在后臺。通過SPcomm串口通信控件進行串口通信操作。
定義Sendlist和Revlist兩個類,將所有允許發(fā)送項存入Sendlist,然后通過串口發(fā)送,而接收到的單片機發(fā)送來的數(shù)據(jù)存入Revlist。然后,將Sendlist和Revlist兩者進行對比。如果相同,則存儲,并在表格中顯示;否則,報錯處理。每發(fā)送一個寄存器項有一定的延時用于單片機處理。軟件有超時設置,如果發(fā)送5 s后無法接收到單片機回復數(shù)據(jù),則判斷為超時出錯。
本程序流程如圖3所示。
2.2 單片機程序
單片機程序完成串口通信和I2C總線控制兩個功能。
圖4為I2C時序圖。I2C總線是由數(shù)據(jù)線SDA和時鐘線SCL構成的串行總線,可發(fā)送和接收數(shù)據(jù)。I2C總線在傳送數(shù)據(jù)過程中有以下3種類型信號:
a)開始信號(Start)。SCL為高電平時,SDA由高電平向低電平跳變,開始傳送數(shù)據(jù)。
b)結束信號(Stop)。SCL為高電平時,SDA由低電平向高電平跳變,結束傳送數(shù)據(jù)。
c)應答信號(AcK)。接收數(shù)據(jù)的IC在接收到8 bit數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的IC發(fā)出特定的低電平脈沖,表示已收到數(shù)據(jù)。
I2C總線在傳送數(shù)據(jù)時,必須保證在SCL高電平時SDA上數(shù)據(jù)穩(wěn)定,否則就判斷為開始或結束信號。
單片機內程序按照通信協(xié)議與PC機進行數(shù)據(jù)傳輸,然后識別數(shù)據(jù)頭,按協(xié)議分別處理,經(jīng)由I2C總線,對TVP5150內部寄存器進行讀寫操作。單片機通信收發(fā)主程序由C語言編寫,通過串口中斷接收PC機數(shù)據(jù),判斷接收的是數(shù)據(jù)頭還是有效數(shù)據(jù)。當接收數(shù)據(jù)頭R時,回發(fā)PC機r,然后將后面的1個字節(jié)地址,由I2C總線操作讀出TVP5150該地址寄存器中的數(shù)據(jù),并通過串口回發(fā)給PC機。如果幀頭是W,回發(fā)PC機w,并且緩存它后面2個字節(jié)的數(shù)據(jù),第1個字節(jié)為TVP5150寄存器地址,第2個為寫入該寄存器的數(shù)據(jù)。通過I2C總線完成此寫操作,并讀出寫入數(shù)據(jù)后寄存器中數(shù)據(jù),通過串口回發(fā)給PC機,以備PC機端軟件校驗。
3主要視頻信號
3.1輸出信號
模塊將模擬視頻信號解碼成符合ITU-R BT.656標準的數(shù)字視頻信號,輸出8位Y:Cb:Cr=4:2:2的數(shù)字信號。同步信號內嵌于數(shù)據(jù)流中串行輸出,也可以單獨引腳與數(shù)據(jù)流并行輸出。 圖5所示為完整一幀數(shù)據(jù),分奇偶兩場,23~311行是偶數(shù)場數(shù)據(jù),366~624行是奇數(shù)場數(shù)據(jù),其余為場控制信號或者無效數(shù)據(jù)。FID為奇偶場指示信號,在場同步信號(VSYNC)下降沿跳變。VBLK為場消隱信號,高電平有效,可以通過設置TVP5150寄存器來改變其長短,控制有效圖像數(shù)據(jù)輸出,因為在VBLK信號低電平期間對應輸出視頻有效數(shù)據(jù)。
每一行的數(shù)據(jù)結構如圖6所示。每行開始的288字節(jié)為行控制信號,開始的4字節(jié)為EAV(有效視頻結束)信號,緊接著280個固定填充數(shù)據(jù),最后4個字節(jié)是SAV(有效視頻起始)信號。SAV信號和EAV信號有3字節(jié)的前導:FF、FF、00;最后1字節(jié)XY表示該行位于整個數(shù)據(jù)幀的位置以及如何區(qū)分SAV、EAV信號。
XY各位的含義如圖7所示。圖中最高位是固定數(shù)據(jù)1,F(xiàn)=0表示偶數(shù)場,F(xiàn)=1表示奇數(shù)場;V=0表示該行為有效視頻數(shù)據(jù),V=1表示該行沒有有效視頻數(shù)據(jù);H=0表示為SAV信號,H=1表示為EAV信號;
P3~P0為保護信號,由F、V、H信號計算生成。
3.2 AVID截取
AVID信號是TVP5150產(chǎn)生的專有信號,是有效視頻數(shù)據(jù)指示信號,AVID低電平時輸出數(shù)據(jù)無效,高電平有效。這樣就提供了一種控制TVP5150輸出視頻數(shù)據(jù)帶寬的方法。通過寄存器設置,控制AVID的開始和結束時機,同時對VBLK信號起始時機進行控制,那么就能從一幀圖像中截取某些部分輸出,如圖8所示。
4結束語
本模塊的調試結合了SAA7121視頻編碼模塊。由視頻信號發(fā)生器輸出模擬視頻信號經(jīng)過本模塊解碼,轉換為數(shù)字視頻信號,再由SAA7121模塊轉換成模擬視頻信號接入顯示設備,如果模塊運行正常,就可以看到顯示設備上對應的輸入畫面。第1步將RGB各單色視頻信號輸入,通過示波器觀察輸出視頻及各同步信號,時序正常后,經(jīng)SAAT121模塊接入顯示設備。得到正確圖像后,模塊由DVD機輸入CVBS信號,顯示設備得到正常影像則調試基本完成。調試的主要工作在于TVP5150的內部寄存器正確設置及其改變對輸出各信號的影響。如果開啟74HC16245,那么本實驗模塊總功耗在200 mW左右;關閉則功耗可控制在130 mW左右??梢?,本視頻解碼模塊的功耗參數(shù)非常低,如果優(yōu)化單片機程序,還可進一步降低功耗。本模塊將模擬復合視頻信號解碼成符合ITU-RBT.656標準的數(shù)字視頻信號輸出。方便利用FPGA、DSP等進行數(shù)字視頻信號輸出,方便利用FPGA、DSP等進行數(shù)字視頻圖像去隔行,方便利用FPGA等進行數(shù)字視頻力圖像去隔行,分辨率轉換甚至MPEG編碼等處理。
評論
查看更多