梁 楠
(安徽理工大學(xué),安徽 淮南 232001)
從20 世紀(jì)末開始,通信行業(yè)和互聯(lián)網(wǎng)行業(yè)開始了飛快迅猛的發(fā)展,在短時間內(nèi)迅速成為當(dāng)前最熱門的產(chǎn)業(yè)之一。通信行業(yè)和互聯(lián)網(wǎng)行業(yè)這兩個高科領(lǐng)域相互碰撞,互相合作。于是產(chǎn)生了大量的高科學(xué)產(chǎn)品,這些產(chǎn)品讓人們的生活方式發(fā)生了巨大的改變。而伴隨著嵌入式技術(shù)的開發(fā)?;谇度胧介_發(fā)的視頻通信系統(tǒng)成為了市場的新寵兒。而在眾多的開發(fā)者和技術(shù)公司中,以DSP 開發(fā)技術(shù)文明世界的德州儀器公司脫穎而出。因為該公司推出與數(shù)字芯片相配套的軟件技術(shù)開發(fā)包。該開發(fā)包包括了對應(yīng)硬件平臺的底層驅(qū)動,DVSDK(數(shù)字視頻開發(fā)包)以及對應(yīng)API 等等。正是由于這套完整的軟件開發(fā)平臺的誕生,使得業(yè)內(nèi)對視頻通信技術(shù)的開發(fā)進入的新的高度,這種平臺極大的縮短了產(chǎn)品的開發(fā)周期,而且極大的方便了開發(fā)人員的二次開發(fā)。伴隨著技術(shù)不斷跟新和市場的快速發(fā)展,達芬奇技術(shù)應(yīng)用了在更多的行業(yè)和領(lǐng)域,例如:道路安全交通監(jiān)控,銀行無人自動監(jiān)控系統(tǒng),智能門控系統(tǒng)[1]。
TMS320DM365 作為達芬奇公司推出一款視頻處理的芯片,有著其獨到的優(yōu)點和特性。TMS320DM365 處理器高度集成的各種編解碼器的組件,包括最新的H.264,MPEG-4 編解碼器,能滿足智能集成圖像信號處理(ISP)的解決方案。由于其集成了ISP 和非常豐富的外設(shè),可以使系統(tǒng)降低25%的成本。而且處理器可以根據(jù)不同的需求來制定同應(yīng)用的高清視頻產(chǎn)品,除了普通標(biāo)清的視頻外還包括實時1080P 的MPEG-4 的高清視頻。不僅如此還可實現(xiàn)多種視頻格式的編解碼[2]。
本文的硬件系統(tǒng)以TMS320DM365 芯片為主CPU,配上豐富的外圍設(shè)備。其中DM365 芯片內(nèi)部集成了包括300MHz 的ARM926EJ-S內(nèi)核以及2 組視頻圖像協(xié)處理器(HDVICP,MJCP)。而系統(tǒng)的其他外設(shè)有:存儲;DDR2:128MB;NAND FLASH:128MB;JTAG 仿真器接口;RS485 接口;USB2.0,支持USB 主從模式;10/100Mbps 以太網(wǎng)接口;SD卡模塊;1 路RS-232UART 串口;而在軟件方面,我們采用達芬奇的軟件技術(shù)平臺,在ARM 內(nèi)核上進行了Linux 操作系統(tǒng)的內(nèi)核移植,這樣使得系統(tǒng)具有很強的控制能力,并且具有實時高、通訊速率快、圖像清晰、系統(tǒng)性能穩(wěn)定等特點。
系統(tǒng)的硬件框架圖如圖1 所示。
根據(jù)系統(tǒng)的設(shè)計圖來看。整個系統(tǒng)的采集模塊有2 個部分,一個是攝像頭,一個是A/D 轉(zhuǎn)碼芯片,用來將攝像頭采集來的模擬信號轉(zhuǎn)換為數(shù)字信號,以方便DM365 對數(shù)據(jù)進行處理。本文選用的A/D 轉(zhuǎn)碼芯片的信號為TVP5146,只是一款可以轉(zhuǎn)換PAL 和NTSC 制式的芯片。這兩種制式都是普通標(biāo)清圖像。TVP5416 是可以將模擬信號視頻轉(zhuǎn)換為數(shù)字信號視頻。最多能支持10 個分量的視頻輸入[3]。其中包括多種混合輸入視頻信號(NTSC,PAL 和SECAM)和分量視頻信號。當(dāng)然本系統(tǒng)也可采集高清圖像,并對其數(shù)據(jù)進行處理。如要達到這種要求的話,可以將TVP5416 換為TVP7002,這款芯片可以采集高清圖像,并且進行A/D 轉(zhuǎn)換。而在這里根據(jù)實際應(yīng)用而言,標(biāo)清圖像就異能夠達到要求。故采用TVP5416 芯片。DM365 的內(nèi)部包含了視頻子處理模塊VPFE。將一般傳統(tǒng)模式下視頻采集所需的部件都集成在內(nèi)。不僅大大降低了功耗,而且提高了工作效率。
圖1 系統(tǒng)框圖
視頻的處理主要是在DM365 內(nèi)部進行,通過TVP5416 芯片進行A/D 轉(zhuǎn)換,模擬信號被轉(zhuǎn)換為數(shù)字信號后。DM365 內(nèi)部通過調(diào)用相關(guān)的編碼器,對視頻信號進行編碼,DM365 內(nèi)部的視頻編解碼器支持多種編解碼標(biāo)準(zhǔn)。如H.264,MPEG-4 等等。通過達芬奇公司提供的軟件技術(shù)支持,我們可以直接通過調(diào)用DMAI 內(nèi)部的編碼引擎直接對其進行編碼壓縮。加快了開發(fā)者而從開發(fā)的速度。提高產(chǎn)品性能。DM365的內(nèi)部架構(gòu)包含了一個ARM9 內(nèi)核,一個圖形處理子系統(tǒng)(VPSS)和多個高清編碼協(xié)處理器[4]。支持多種格式的編解碼器,具有極高的靈活性。DM365 不僅可以同時輸出多種制式的碼流,還可自行調(diào)節(jié)編碼的速率,以配合網(wǎng)絡(luò)傳輸?shù)囊?。DM365 的內(nèi)部結(jié)構(gòu)圖如圖2 所示。
本系統(tǒng)采用的是10/100Mbps 以太網(wǎng)接口,芯片為DM9000 為傳輸模塊??刹捎肨CP 或UDP 等網(wǎng)絡(luò)傳輸協(xié)議。DM365 外圍接DDR2 SDRAM 和NAND Flash 作為片外存儲模塊。SDRAM 為程序運行提供空間,相當(dāng)于電腦內(nèi)存。而NAND Flash 則作為系統(tǒng)的數(shù)據(jù)存儲空間,用于存儲操作系統(tǒng),應(yīng)用軟件和用戶數(shù)據(jù)。相對于Nor Flash 而言,NAND Flash 存儲容量更大,價格也更便宜。故本系統(tǒng)選用NAND Flash 作為存儲模塊。
圖2 DM365 的內(nèi)部結(jié)構(gòu)圖
因為DM365 的內(nèi)部集成了一個ARM9 的內(nèi)核。所以我們可以對系統(tǒng)進行Linux 操作系統(tǒng)的移植。使這個系統(tǒng)變?yōu)橐粋€嵌入式視頻通信系統(tǒng)。這樣不僅增強了系統(tǒng)的可控性,還增加了系統(tǒng)的可靠性。下面簡要介紹下達芬奇的軟件技術(shù)。
德州儀器公司開發(fā)出來的達芬奇系列芯片,除卻其芯片本身的高性能以外,更為開發(fā)者贊不絕口的就是它的軟件技術(shù)支持了。它提供了一系列的軟件開發(fā)工具和最為著名的開發(fā)套件DVSDK(數(shù)字視頻軟件開發(fā)套件)該套件內(nèi)包含了視頻通信系統(tǒng)開發(fā)所需要的所有軟件,如圖像的處理,編碼壓縮等等[5]。開發(fā)者只需要進行API 的函數(shù)調(diào)用就能直接完成對采集來的視頻圖像進行處理。大大縮短了二次開發(fā)的時間,節(jié)約開發(fā)資源。軟件開發(fā)的流程有以下幾步:
建立交叉編譯環(huán)境。在虛擬機中安裝一版Linux 操作系統(tǒng)如紅帽系統(tǒng),并準(zhǔn)備以下軟件包
dvsdk_setuplinux_#_#_#_#.bin(數(shù)字視頻開發(fā)套件)
mvl_4_0_1_demo_lsp_setuplinux_#_#_#_#.bin(交叉編譯工具)
xdc_setuplinux_#_#_#_#.bin
bios_setuplinux_#_#_#_#.bin
TI-C6x-CGT-v#.#.#.#.bin
data.tar.gz
SoCAnalyzer_#.#.#.#.exe
使用“./”命令運行上面的二進制文件。就可以得到交叉編譯工具的壓縮包以及自動安裝好DVSDK 包到/opt 目錄下。對交叉工具進行解壓安裝后設(shè)置路徑
在/root 下,以root 身份打開.bashrc,設(shè)置以下路徑:
PATH="/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/bin:/opt/mv_pro_4.0.1 montavista/pro/bin:/opt/mv_pro_4.0.1/montavista/common/bin:$PATH"
設(shè)置好路徑后,重新啟動LINUX,開發(fā)環(huán)境安裝完成。
(2)編譯內(nèi)核和u-boot
正確建立系統(tǒng)平臺后,在/root 下建立kernel 目錄,將uboot.tar.gz和kernel.tar.gz 解壓在該目錄。進入uboot 目錄,鍵入make 后執(zhí)行即可以編譯成功。進入ti-davinci 目錄,如果不修改config 文件,則可以直接sh build.sh 即可以編譯,編譯好的文件在arch/arm/boot 下,uImage文件。如果修改了config 文件,則執(zhí)行host$make ARCH=arm CROSS_COMPILE=arm_v5t_le-checksetconfig。
編譯好內(nèi)核和u-boot 后就可以進行燒寫。先使用CCS 在板子上進行u-boot 的燒寫。待u-boot 燒寫完成好,用TFTP 工具進行內(nèi)核的燒寫,具體的燒寫過程不再介紹。
至此,整個系統(tǒng)的軟件平臺已經(jīng)完全搭建好了。
應(yīng)用的程序的開發(fā)可以直接依賴DVSDK 包中DMAI 模塊,它里面包含了視頻采集模塊的程序調(diào)用,各種編碼標(biāo)準(zhǔn)的編碼算法調(diào)用等等。十分方便。我們只需要簡單的對DMAI 模塊里的程序進行小小的修改就能得到自己需要的實際應(yīng)用程序。再這里就不進行介紹了。
本系統(tǒng)采用了以DM365 為主CPU 的視頻處理系統(tǒng)。構(gòu)建了系統(tǒng)的硬件框圖,并簡要的介紹了視頻采集,處理,傳輸三大模塊。介紹了達芬奇技術(shù)的軟件開發(fā)。給出了構(gòu)建開發(fā)環(huán)境的步驟。如交叉編譯環(huán)境的建立,內(nèi)核的燒寫等等。
[1]張琦.蘇宛新基于達芬奇技術(shù)的數(shù)字視頻系統(tǒng)設(shè)計與實現(xiàn)[J].微計算機信息,2008(23).
[2]劉富強.數(shù)字視頻圖像處理與通信[M].北京:機械工業(yè)出版社,2010.
[3]Texas Instruments Incorporated.TMS320DM365 digital media system—on—chip[EB/OL].2009.
[4]Texas Instruments Incorporated.TMS320DM365 digital media system—on—chip video processing front end (VPFE) reference Guide[EB/OL].2009.
[5]TMS320DM365:基于達芬奇技術(shù)的新型數(shù)字媒體處理器[J].世界電子元器件,2009(4).