基于DM6446中的高清數(shù)字視頻顯示接口設(shè)計方案
0 引言
TI 公司推出的DM6446 芯片在視頻處理領(lǐng)域被廣泛的使用,其基于ARM+DSP 雙核架構(gòu),同時具備了通用處理器(GPP)和專用數(shù)字處理器(DSP)的功能。它的視頻處理子系統(tǒng)(VPSS)同時包含了視頻采集的接口-- 視頻處理前端(VPFE),以及視頻顯示的接口--視頻處理后端(VPBE),這也是其能夠在視頻處理領(lǐng)域嶄露頭角的重要組成部分。DM6446能夠同時支持標準時序PAL/NSTC制式的數(shù)字和模擬視頻輸出,也支持非標準模擬VGA顯示接口,但這模式的視頻輸出的分辨率都較低,不適用于需要大分辨率顯示的場合。
要讓其支持高清顯示,就必須通過編程配置,實現(xiàn)高清顯示所需的時序控制信號。DM6446 支持并行的24位RGB888視頻數(shù)據(jù)輸出,經(jīng)過外部芯片編碼轉(zhuǎn)換后送給顯示器顯示。這里采用的編碼芯片是TFP410,它接收并行的圖像數(shù)據(jù)以及同步控制信號,經(jīng)過編碼轉(zhuǎn)換后,按照DVI標準傳輸給顯示器進行顯示[5]。
文中第1 部分介紹了高清數(shù)字視頻接口設(shè)計的整體結(jié)構(gòu);第2部分介紹了TFP410的配置和使用方法;第3部分介紹了實現(xiàn)高清數(shù)字顯示所需的VENC的參數(shù)配置方法,同時結(jié)合OSD 窗口配置給出了實際的高清數(shù)字視頻顯示結(jié)果。
在目標板上,720P(1 280×720@60 Hz)、1 080P(1 920×1 080@60 Hz)以及WUXGA(1 920×1 200@60 Hz)分辨率的數(shù)字視頻顯示都能夠穩(wěn)定運行,說明這里提出的高清數(shù)字視頻顯示接口設(shè)計方案是正確、可行的,對基于DM6446高清數(shù)字視頻顯示應(yīng)用具有實際意義。
1 高清數(shù)字視頻顯示接口整體結(jié)構(gòu)
整個DVI 高清數(shù)字視頻顯示接口的結(jié)構(gòu)如圖1 所示,主要可分為DM6446 的VPSS 接口部分以及DVI 驅(qū)動器TFP410接口兩部分。
VPFE從外部采集到視頻數(shù)據(jù)后存儲于DDR2中的指定位置,VPBE 中的在屏顯示模塊(OSD)也在DDR2中有對應(yīng)的緩沖區(qū),這些模塊與DDR2之間的數(shù)據(jù)傳輸都有專門的讀寫邏輯控制,以保證數(shù)據(jù)的傳輸帶寬滿足系統(tǒng)要求。對于高清顯示的支持,主要是對VPBE中的視頻編碼模塊(VENC)的時序控制部分的正確配置,包括VENC時鐘、OSD時鐘和輸出給TFP410的像素時鐘,以及視頻的行同步、場同步信號等,這些在后面會有具體介紹。
TFP410 主要起到視頻數(shù)據(jù)編碼的作用,將前面由VENC 輸出的圖像數(shù)據(jù)以及同步控制信號經(jīng)編碼后用差分串行的方式(T.M.D.S)傳輸給顯示器,這可以保證數(shù)據(jù)在傳輸過程中的抗干擾能力。同時,TFP410 包含有一個I2C 接口,使得DSP 可以通過它配置DVI驅(qū)動器的工作模式。在系統(tǒng)上電后,TFP410 能夠檢測到顯示器是否連接,這樣DSP便可以通過檢查相應(yīng)的狀態(tài)位來決定是否發(fā)送視頻數(shù)據(jù)。
2 TFP410 的工作模式配置
TFP410 支持的最高像素時鐘為165 MHz,能夠滿足高清數(shù)字視頻顯示的需求,其總共有兩種配置方法:
引腳直接配置法和I2C配置法。采用引腳直接配置的方法,上電后芯片可以直接工作在既定模式下,但是功能比較單一,工作模式不夠靈活。采用I2C配置的方法,便可以根據(jù)需要調(diào)整芯片的工作模式,包括數(shù)據(jù)采集的時鐘沿、數(shù)據(jù)位寬、數(shù)據(jù)采集延時等。通過讀取TFP410中的相關(guān)狀態(tài)寄存器,DSP端的應(yīng)用程序還能夠獲得圖像傳輸?shù)南嚓P(guān)信息,包括水平、垂直全局分辨率,以及顯示器是否連接等。
TFP410的I2C 可訪問寄存器共有256個,其中絕大多數(shù)是保留使用的,在實際使用中,需要操作的寄存器更是少數(shù)。在這里,只需配置寄存器CTL_1_MODE、 CTL_2_MODE、CTL_3_MODE 即可,其他的都可以按照默認配置,一般情況下無需改變。設(shè)置CTL_1_MODE.
PD#=1 使芯片從節(jié)電模式恢復(fù)到普通模式;設(shè)置CTL_1_MODE.HEN=1、CCTL_1_MODE.VEN=1使能行、場同步信號輸入,設(shè)置 CCTL_1_MODE.TDIS=0 使能芯片T.M.D.S 電路輸出。CTL_2_MODE主要用于主機檢測顯示器狀態(tài),而CTL_3_MODE 則主要負責數(shù)據(jù)采集過程中的時延控制。對TFP410 的基本配置流程如圖2所示。
在圖2 中,僅僅是列出了必須配置的寄存器,其余寄存器可以不用修改,一般不影響使用。配置CTL_1_MODE=0×37,使器件工作模式為:24 位數(shù)據(jù)寬度、單端像素時鐘(VCLK)輸入、在VCLK 上升沿采樣輸入數(shù)據(jù)。配置好TFP410后,DM6446只要按照高清數(shù)字視頻的標準時序輸出相應(yīng)的圖像數(shù)據(jù)和同步控制信息,就能夠?qū)SD 上的內(nèi)容通過DVI 接口顯示到LCD 顯示器上。
3 VENC及OSD配置
3.1 VENC配置
當VENC工作在標準模式(Standard Mode)下時,只能夠輸出標準的PAL/NTSC同步時序,在此模式下輸出的畫面分辨率最大只有720×576,這在許多場合已經(jīng)不能滿足使用需求。其實VENC 本身能夠支持的畫面分辨率遠不止于此,只是若要輸出大分辨率的畫面,就必須自己編程產(chǎn)生視頻同步控制時序,也即讓VENC工作于非標準模式(Non- standard Mode)[6-8]。
VENC主要由3大塊組成:模擬視頻編碼模塊(數(shù)模轉(zhuǎn)換DACs)、數(shù)字視頻輸出模塊(數(shù)字LCD 控制器)以及時序發(fā)生器(Timing Generator)。其中,模擬視頻編碼模塊只能工作于標準模式下,因此,在配置輸出非標準模式下的數(shù)字畫面時,應(yīng)該禁用DAC.對于數(shù)字LCD 控制器部分的編程,主要是設(shè)置輸出圖像數(shù)據(jù)的格式(并行24 位RGB888)以及配置輸出LCD_OE(數(shù)據(jù)輸出使能)指示信號。而對時序發(fā)生器的編程配置,則是輸出高分辨率數(shù)字畫面的關(guān)鍵所在,整個VPSS的時鐘分布控制結(jié)構(gòu)如圖3所示。
評論