基于TMS320DM270平臺(tái)的數(shù)碼攝像機(jī)的設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
21世紀(jì)是數(shù)碼時(shí)代,數(shù)字類消費(fèi)產(chǎn)品的需求量正在進(jìn)行著驚人的增長(zhǎng)。在這些產(chǎn)品中,視頻類產(chǎn)品的比重相當(dāng)?shù)拇?,在人們的日常生活中越來越普及。在這些產(chǎn)品中,無論是數(shù)碼攝像機(jī),還是具有攝像功能的手機(jī),其最核心的部分便是音視頻處理器,選擇什么樣的處理器,決定著此類產(chǎn)品的成本,性能,市場(chǎng)前景。
在本設(shè)計(jì)中,筆者選取了TI公司的TMS320DM270(DM270)作為核心的處理芯片。
可行性分析
為了使消費(fèi)者獲得質(zhì)量更高的數(shù)字視頻和影像內(nèi)容,面向像素?cái)?shù)為300萬至500萬像素的數(shù)碼相機(jī)、數(shù)碼攝像機(jī)及便攜式多媒體產(chǎn)品。德州儀器(TI)推出了基于DSP的數(shù)字媒體處理器DM270,它是基于多處理器架構(gòu)之上,集成DSP C5409和32位RISC處理器ARM7TDMI的雙核結(jié)構(gòu),其中ARM7TDMI來處理非成像功能,用作整個(gè)系統(tǒng)的主控制器,DSP處理音視頻編碼,同時(shí)還集成了專門用于執(zhí)行DCT、反向DCT以及眾多其它處理運(yùn)算中的運(yùn)動(dòng)估計(jì)與補(bǔ)償?shù)膱D像處理引擎(iMX),以及可變長(zhǎng)編解碼器(VLCD)。
而且TI還提供了一系列音視頻芯片,可與DM270進(jìn)行無縫連接。TVP5040,TVP5145可以用作視頻A/D轉(zhuǎn)換器,AIC23可用作音頻A/D。
DM270還有專門的MMC/SD控制器,進(jìn)行外部MMC/SD卡的擴(kuò)展功能,為大容量數(shù)據(jù)的存儲(chǔ)提供了方便,以及OSD(on screen display)模塊,可以直接外接顯示設(shè)備(LCD、TV)。
基于DM270的數(shù)碼攝像機(jī)基本系統(tǒng)框架如圖1所示。
圖1 本方案系統(tǒng)框架圖
方案設(shè)計(jì)
從圖1可以看出,整個(gè)系統(tǒng)前端主要是由視頻輸入模塊,音頻輸入模塊,以及處理器DM270組成。后端則可以接入存儲(chǔ)設(shè)備及顯示設(shè)備(LCD,TV)。
視頻模塊
視頻輸入模塊結(jié)構(gòu)如圖3所示,由前端的CCD模塊進(jìn)行數(shù)據(jù)的采集,進(jìn)入CPU后通過預(yù)處理,再進(jìn)行視頻數(shù)據(jù)的壓縮保存。
圖3視頻回放數(shù)據(jù)流
圖4 McBSP與AIC23的接口
視頻采集和輸入
在DM270中有一個(gè)CCD可編程控制接口,可以方便的把標(biāo)準(zhǔn)的CCD(CMOS)數(shù)據(jù)接入到系統(tǒng)內(nèi)部,而且為CCD圖像傳感器提供了必要的時(shí)序邏輯,對(duì)逐行和隔行掃描CCD或CMOS圖像傳感器給予很好的支持,能支持高達(dá)4096*4096像素。在筆者開發(fā)的系統(tǒng)中采用 OV7620的CMOS攝像頭,輸出YUV數(shù)據(jù)直接進(jìn)入系統(tǒng)。芯片內(nèi)部還有硬件的3A模塊來自動(dòng)調(diào)節(jié)鏡頭的聚焦。另外,DM270中有預(yù)覽引擎 (preview engine),可對(duì)CCD數(shù)據(jù)的圖像進(jìn)行增強(qiáng),自動(dòng)白平衡和各種尺寸的縮放。這樣大大減少了CPU對(duì)數(shù)據(jù)的初級(jí)處理壓力。
視頻壓縮
DM270支持VGA分辨率下的MPEG4 30fps實(shí)時(shí)編解碼,而且支持多種視頻壓縮標(biāo)準(zhǔn),如JPEG,motion-JPEG,H.263等。可以為數(shù)碼攝像機(jī)提供多種拍攝模式。
如前所述,DM270內(nèi)部還具有圖像協(xié)處理器iMX,可以高速進(jìn)行DCT、運(yùn)動(dòng)估計(jì) (補(bǔ)償)、插值運(yùn)算。VLCD模塊完成碼流編碼。在筆者開發(fā)的平臺(tái)里可以做到VGA的MPEG4每秒24幀、H.263每秒30幀的實(shí)時(shí)壓縮編碼及解碼后通過LCD顯示。
此外,除了視頻圖像外,還可以實(shí)現(xiàn)數(shù)碼拍照的功能,進(jìn)行JPEG圖片的拍攝。在筆者開發(fā)的平臺(tái)中可以實(shí)現(xiàn)2048*1536的JPEG圖片。
視頻輸出顯示
數(shù)碼攝像機(jī)必須具備回現(xiàn)功能,而DM270帶有OSD控制器,其后端有VENC(video encode)和D/A轉(zhuǎn)換模塊,產(chǎn)生NTSC或PAL格式的視頻信號(hào)輸出給外部顯示設(shè)備。DM270將壓縮的MPGE4數(shù)據(jù)或JPEG圖片,解碼后的 YUV數(shù)據(jù)通過OSD實(shí)現(xiàn)回現(xiàn)功能。其數(shù)據(jù)流如圖3所示。
OSD模塊具有4個(gè)圖像層(兩個(gè)YUV的video層和兩個(gè)位圖層),可以方便的實(shí)現(xiàn)圖層的層疊混合??梢岳肙SD的位圖層0顯示各種操作菜單,作為圖形界面讓用戶調(diào)節(jié)系統(tǒng)參數(shù)。 從圖1可以看出,音頻數(shù)據(jù)直接輸入到DM270中的DSP進(jìn)行處理。
音頻采集與輸入
DM270內(nèi)部的DSP是5409,有兩個(gè)多通道緩沖串行口(McBSP)模塊,用于音頻的采集接口。在筆者開發(fā)的平臺(tái)中,音頻采樣和轉(zhuǎn)換采用的是AIC23芯片。TLV320AIC23是TI推出的一款高性能的立體聲音頻CODEC,內(nèi)置二級(jí)輸出放大器,支持MIC和LINE IN兩種輸入方式(2選1),并且可以對(duì)輸入輸出進(jìn)行可編程的增益調(diào)節(jié)。 AIC2模數(shù)及數(shù)模轉(zhuǎn)換都高度集成在芯片內(nèi)部,而且采用先進(jìn)的Sigma-delta過采樣技術(shù),可在8~96kHz頻率范圍內(nèi)提供 16bit,20bit,24bit和32bit的采樣。輸入輸出信噪比可以分別達(dá)到90dB和100dB。為數(shù)碼攝像機(jī)的聲音錄放音質(zhì),提供了保證。而且AIC23與DSP內(nèi)部的McBSP可以進(jìn)行無縫連接。其接口如圖2。
圖2視頻輸入模塊結(jié)構(gòu)圖
音頻壓縮,解碼
在DM270中DSP的運(yùn)算能力強(qiáng)大,可以實(shí)現(xiàn)多種語音壓縮編碼、解碼。下面的表格是幾種語音編碼方式的比較。
由表格可以看出,在保證高音質(zhì)的情況下,G.711和G.726的算法復(fù)雜度相對(duì)簡(jiǎn)單,這樣可以減少DSP的數(shù)據(jù)處理壓力,使DSP有更多的資源進(jìn)行視頻數(shù)據(jù)的處理。而且G.711數(shù)據(jù)可以被QuickTime格式的影音文件支持,這樣可以增加數(shù)碼攝像機(jī)文件支持格式。G.726為可變碼率編碼,數(shù)碼攝像機(jī)用戶可以根據(jù)存儲(chǔ)空間來選擇。
在筆者開發(fā)的平臺(tái)上,分別實(shí)現(xiàn)了G.711與G.726算法及QuickTime文件的錄放功能。
系統(tǒng)軟件設(shè)計(jì)
在筆者開發(fā)的系統(tǒng)中,因?yàn)镈M270的ARM核為ARM7TDMI,沒有內(nèi)存管理單元(MMU),所以采用uClinux作為嵌入式操作系統(tǒng)同標(biāo)準(zhǔn)的Linux相比,uClinux最大的特點(diǎn)在于不具有MMU,因此很適合那些沒有MMU的處理器。由于uClinux的內(nèi)核是由Linux根據(jù)所要運(yùn)行的CPU裁減、修改而來。它保持了原有Linux系統(tǒng)的主要優(yōu)點(diǎn),如穩(wěn)定性好,出色的文件系統(tǒng)支持,完善的應(yīng)用程序開發(fā),升級(jí)方便。
該方案的軟件平臺(tái)架構(gòu)如圖5。
圖5 軟件架構(gòu)圖
在用戶應(yīng)用程序中主要完成三種功能:錄像功能,拍照功能,以及錄像及照片的回放功能。
并且可以實(shí)現(xiàn)三種功能的實(shí)時(shí)的相互切換。如圖6所示。
圖6 系統(tǒng)用戶程序功能切換
在該方案軟件系統(tǒng)中還移植了U-boot進(jìn)行系統(tǒng)引導(dǎo)與加載,提高了整個(gè)系統(tǒng)的運(yùn)行效率。
為產(chǎn)品系統(tǒng)的升級(jí)服務(wù)提供了良好的支持。
結(jié)語
本系統(tǒng)已經(jīng)在中國農(nóng)業(yè)大學(xué)信息與電氣工程學(xué)院得到實(shí)現(xiàn),可以進(jìn)行MPEG4、motion-JPEG錄像,JPEG拍照,以及QuickTime格式的錄制;并實(shí)現(xiàn)了上述錄像,拍照在LCD及電視機(jī)上的回放功能。實(shí)踐證明,這種高性能,基于DSP及ARM雙核技術(shù)的解決方案,使得產(chǎn)品開發(fā)應(yīng)用變得更加容易,而且使用的系統(tǒng)軟件可以隨時(shí)升級(jí),可以按照用戶的要求進(jìn)行定制,甚至做到DIY,為產(chǎn)品的盡快進(jìn)入市場(chǎng)奠定了基礎(chǔ)。