基于達(dá)芬奇技術(shù)的數(shù)字視頻系統(tǒng)設(shè)計與實現(xiàn)
2.2 圖像處理與顯示
實時圖像處理系統(tǒng)設(shè)計的難點是如何在有限的時間內(nèi)完成大量圖像數(shù)據(jù)的處理。只有圖像處理系統(tǒng)的處理速度達(dá)到每秒25幀以上時才能達(dá)到實時的效果并且要想在顯示終端上顯示出高清晰的圖像最重要的就是在Codec Engine 中的視頻編解碼運算。而達(dá)芬奇處理器能通過多種復(fù)雜的視頻編解碼來實現(xiàn)高清視頻輸出,如MPEG-4編解碼能顯示30fps分辨率為720p(1280*720);H.264 編解碼能顯示30fps 分辨率為D1(720*480) 等。TMS320DM6446 處理器視頻處理子系統(tǒng)中的視頻后端提供的在線視頻顯示處理器既能夠顯示兩組獨立的視頻窗口或兩組獨立的OSD窗口,還可以以一個視頻窗口、一個OSD窗口和一個屬性窗口的形式顯示。視頻編碼器完成圖像數(shù)據(jù)編碼后可以通過內(nèi)部的LCD控制器直接輸出數(shù)字視頻信號到液晶顯示器上也可以通過四路54MHz 的DACs 進(jìn)行D/A轉(zhuǎn)換,來提供NTSC/PAL、S-video 等格式的視頻或音頻輸出。
3.電源設(shè)計
本設(shè)計采用的是TI 最新的基于達(dá)芬奇技術(shù)的TMS320DM644x DSP 的電源管理芯片TPS65023 在高達(dá)1.5A 的最寬負(fù)載電流范圍內(nèi)可實現(xiàn)高性能的數(shù)控功能與效率最大化。TPS65023 集成了三個降壓轉(zhuǎn)換器以支持系統(tǒng)的內(nèi)核電壓、外設(shè)、I/O 以及存儲器電壓,還集成了兩個可由外部輸入引腳啟動的通用200mA 線性低壓降 (LDO) 穩(wěn)壓器。每個LDO 的輸入電壓范圍都在2.5 V 至6.5 V 之間,因此既可通過其中一個集成降壓轉(zhuǎn)換器供電,也能直接通過電池供電。
在本設(shè)計中TPS65023 的VDCDC1 管腳輸出1.2V 電壓用于DM6446 的內(nèi)核供電,VDCDC2 管腳輸出1.8V 電壓用于DM6446 的存儲器接口供電,VDCDC3 管腳輸出3.3V 電壓用于DM6446 的外設(shè)接口供電。由于TPS65023 只提供1A/1.8V 電壓不夠供應(yīng)兩片DDR2 SDRAM,故還需一個輸出1.8V 的電源管理芯片來為DDR2 供電,此系統(tǒng)選用的是LTC3412A 輸出電流3A。這樣用兩個電源管理芯片就能滿足系統(tǒng)供電。TPS65023 與達(dá)芬奇DM6446 的接口電路如圖3 所示。
圖3 TPS65023 與DM6446 的接口電路
4.軟件實現(xiàn)
達(dá)芬奇軟件架構(gòu)涵蓋低級的OS 驅(qū)動程序乃至應(yīng)用API。在達(dá)芬奇軟件平臺中可以細(xì)分為多任務(wù)的CODEC, 即視頻(Video) 、影像(Image) 、語音(Speech) 、音頻(Audio),統(tǒng)稱VISA。另外還包含具有多媒體框架組件的CODEC 引擎遠(yuǎn)程服務(wù)器。由此構(gòu)成的信號處理層(SPL) 一方面通過VISA API 接口與應(yīng)用層(APL)連接,另一方面則通過DSP/BIOS 與底層內(nèi)核溝通。APL 包含客戶增值差異化設(shè)計軟件模塊,并通過Linux API 溝通底層內(nèi)核的許多外圍接口驅(qū)動。
eXpressDSP 配置工具的使用使得配置一個CODEC 的過程極其簡單,下面就是一個完整的應(yīng)用程序開發(fā)步驟:
第一步,開發(fā)并完成Codec。就是要開發(fā)音視頻編解碼的核心算法,按照xDM 標(biāo)準(zhǔn)封裝成為Codec 庫,Codec 主要完成音視頻的核心算法,應(yīng)用程序運行時被調(diào)用,并不參與其他功能。
第二步,將Codec 集成到Codec Engine 中。將第一步開發(fā)完成的Codec 或已有的符合xDM 的Codec 集成到Codec Engine 中,這一步需要配置兩個JavaScript 的腳本文件,其中一個腳本文件表明了,Codec 的使用和配置信息,文件名一般為*.cfg, 另一個描述了Codec 在達(dá)芬奇上的內(nèi)存分配的配置,文件名一般為*tcf ,配置好這兩個文件后,使用make 命令即可生成Codec Engine, 其文件名一般為*.X64P ??杀粦?yīng)用程序直接調(diào)用。
第三步,開發(fā)音視頻應(yīng)用程序,并在其中調(diào)用Codec Engine 。在Linux 下開發(fā)音視頻應(yīng)用程序,包括用戶界面,音視頻的采集、播放、同步等,其中完成對Codec Engine 的調(diào)用,應(yīng)用程序也要完成一個擴展名為cfg 的腳本配置文件,以表明對Codec Engine 的使用狀況。
第四步,加載DSPLINK 和CMEM 模塊,運行應(yīng)用程序至此一個完整的達(dá)芬奇音視頻應(yīng)用程序就完成了,其中許多過程是通過腳本文件配置完成的,過程非常簡單易懂,下面我們需要在達(dá)芬奇上運行它,首先要加載DSPLINK 和CMEM 兩個驅(qū)動程序模塊,其中DSPLINK 主要實現(xiàn)了arm 和dsp 的底層通信,而CMEM 則主要是完成了在物理段上分配連續(xù)內(nèi)存的功能,加載完這兩個模塊,這樣便可以直接運行已完成的應(yīng)用程序。
5.結(jié)論
基于TMS320DM6446 為核心處理器的數(shù)字視頻系統(tǒng)已經(jīng)實現(xiàn)并且功能強大,性能穩(wěn)定,擴展性強,功耗低,能很好的加速數(shù)字視頻創(chuàng)新。本文的創(chuàng)新點:1.基于TI 強大的達(dá)芬奇處理器(雙核)能夠?qū)崿F(xiàn)H.264 等復(fù)雜的編解碼。2.利用TI 專門針對達(dá)芬奇供電的電源管理芯片TPS65023 為其供電,很好的解決干擾、EMI/EMC 的問題而且還能達(dá)到功耗低的效果。
評論