DSP 在數(shù)字視頻處理技術(shù)中的應(yīng)用
早些年間,由于帶寬和處理能力的限制,人們在談到數(shù)字信號處理時,更多的是簡單的語音信號處理。接下來,隨著技術(shù)的發(fā)展,人們可利用的帶寬越來越大,處理能力越來越強(qiáng),簡單的語音已不滿足人們的需求,人們開始關(guān)注動態(tài)范圍更廣的音頻處理直至現(xiàn)在的視頻處理, 人們要求越來越多的視頻應(yīng)用。比如,希望更遠(yuǎn)方親人通電話世人看到他們的笑容,希望隨時隨地的看電影,希望拍攝家庭聚會的場景同親友分享在未來回憶,希望用視頻監(jiān)控保護(hù)著家人,等等。歸納一下,在這個市場上我們會看到以下的應(yīng)用:
無線視頻網(wǎng)關(guān)
機(jī)頂盒
數(shù)字視頻播放器/點播機(jī)
IP視頻電話
網(wǎng)絡(luò)相機(jī)監(jiān)控系統(tǒng)
數(shù)字?jǐn)z錄機(jī)
便攜式視頻流裝置(等等)
這些應(yīng)用的共同點是它們都要求視頻和圖像的處理,這些處理可能是圖像質(zhì)量的優(yōu)化,如銳化、白平衡等;也可能是視頻和圖像的壓縮/解壓縮,如MPEG-4;也可能是不同壓縮制式之間的轉(zhuǎn)換,如H.263與MPEG - 4等等。這些處理都要求主處理芯片有較強(qiáng)的圖像視頻處理功能,但由于所有這些運(yùn)算由于針對的最終市場并不不同,它們對處理器的要求也不盡相同。所以在對某種應(yīng)用進(jìn)行開發(fā)之前,必須要理解該應(yīng)用對處理芯片的要求,從而進(jìn)行成功的選型。本文首先對這些應(yīng)用進(jìn)行分類,然后以德州儀器的系列處理芯片為例給出相應(yīng)的選型建議。
視頻應(yīng)用及其分類
首先我們概括地看一下上文提到的幾個典型的視頻應(yīng)用
視頻局端設(shè)備
最常見的局端設(shè)備是位于有線電視局端的視頻再復(fù)用器,它通常提供以下的功能:
插入本地內(nèi)容(如廣告等)
輸出客戶定制內(nèi)容
這幾項功能需要處理芯片完成以下的工作:
視頻碼率轉(zhuǎn)換
音頻碼制轉(zhuǎn)換
音頻碼率轉(zhuǎn)換
前期/后期處理
數(shù)字程序插入
這些工作一方面由于在局端,通道密度較高,所以要求芯片處理能力較強(qiáng)。另一方面又由于編碼技術(shù)在不斷地發(fā)展,不斷會有新的標(biāo)準(zhǔn)出現(xiàn),因而要求處理芯片具有較強(qiáng)的可編程性和可擴(kuò)展性,產(chǎn)品具有較好的延續(xù)性。
芯片外圍接口的主要需求是高吞吐率。
無線視頻網(wǎng)關(guān)
無線視頻網(wǎng)關(guān)是位于MSC內(nèi)的一個局端交換系統(tǒng),用于將任何制式的視頻內(nèi)容轉(zhuǎn)成手機(jī)支持的格式從而將這些內(nèi)容在無線網(wǎng)絡(luò)上發(fā)布。它的功能使得對處理芯片的要求與視頻局端設(shè)備比較相像,但也有它自己的要求。由于無線網(wǎng)絡(luò)對環(huán)境的依賴比較大,不同連接的信道質(zhì)量會有所不同,這就要求網(wǎng)關(guān)針對信道質(zhì)量將視頻內(nèi)容轉(zhuǎn)換到該信道所支持的碼率上。
相應(yīng)地對芯片要求同局端設(shè)備但性能要求更高。由于作為網(wǎng)關(guān)要與其它網(wǎng)絡(luò)例如分組交換網(wǎng)接口,要求芯片的外圍接口支持網(wǎng)絡(luò)總線例如ATM或以太網(wǎng)
機(jī)頂盒
這里的機(jī)頂盒是指在用戶端同步解碼,處理和播放幾條視頻,音頻和數(shù)據(jù)流的媒體集中播放器,有些機(jī)頂盒還支持對DVB或DVD其它MPEG數(shù)據(jù)流的編碼功能。
這里,芯片處理任務(wù)比較簡單,一般就是接受數(shù)據(jù)流然后解碼或編碼,但由于是進(jìn)行流處理,并且多半是MPEG 2質(zhì)量的視頻流,所以需要處理能力較強(qiáng)。
IP視頻電話/視頻會議
IP視頻電話是將實時的多通道視頻集成到現(xiàn)有的IP語音電話中,視頻會議則在多點間實現(xiàn)視頻電話會議。
目前這兩種應(yīng)用多采用H.263或MPEG-4,芯片要完成這兩種制式的編解碼,同時完成圖像采集處理的任務(wù),單芯片處理能力要求較強(qiáng)。
由于要進(jìn)行視頻采集,接口要求支持視頻輸入,要實現(xiàn)TCP/IP協(xié)議,則要求有以太網(wǎng)口的輸出支持。
數(shù)字視頻監(jiān)控系統(tǒng)
數(shù)字視頻監(jiān)控系統(tǒng)相較傳統(tǒng)視頻監(jiān)控系統(tǒng)來說是一個顯著的飛躍,它增加了更多的智能型,例如可以進(jìn)行移動報警,通過圖像處理方法,在監(jiān)控區(qū)域發(fā)現(xiàn)移動物體就報警;數(shù)字化的視頻檔案更加便于管理,例如可以通過自動圖像分析方法來找到目的片斷,通過網(wǎng)絡(luò),數(shù)字化信息更便于傳輸。
這里最主要的要求是可編程性,這些智能特點沒有可編程性不可能實現(xiàn)。當(dāng)然,處理能力也是實現(xiàn)這些特點的保證。另外,視頻輸入和網(wǎng)口也是不可或缺的。
數(shù)字?jǐn)z錄機(jī)/數(shù)碼相機(jī)
這兩領(lǐng)域是消費類數(shù)字圖像的典型應(yīng)用,一般來講,前者強(qiáng)調(diào)移動圖像的攝錄,后者追求靜止圖像的高質(zhì)量。如果處理芯片的可編程性足夠強(qiáng),這兩者完全可以兼顧。這可以帶來兩個好處,第一,可以開發(fā)出平衡這兩方面需求的產(chǎn)品,既可以錄像又可以拍出高質(zhì)量的照片;第二,考慮到成本的影響,仍然開發(fā)不同的產(chǎn)品,但可以共用一套圖像處理方案,這樣便減少了開發(fā)的重復(fù)投資。
除了可編程性,這兩應(yīng)用對芯片的要求就是低功耗,因為它們都是便攜式的。其它的要求就是對移動存儲的支持。
個人數(shù)字視頻播放器_隨身看/點播機(jī)
這類設(shè)備都是完成視頻解碼,前者更強(qiáng)調(diào)便攜性而后者則強(qiáng)調(diào)節(jié)目源的豐富。
在這里處理性能并不是第一位要考慮的,整個系統(tǒng)的能耗顯得更加關(guān)鍵。另一方面,要求芯片的接口比較豐富以支持LCD顯示屏,CFC或其它存儲卡,或者硬盤接口。
這些視頻應(yīng)用總體上可以分為兩大類:一類是高性能,要求多通道處理或多編碼制式,或追求高圖像質(zhì)量,同時由于技術(shù)的不斷發(fā)展,它又需要較強(qiáng)的可編程性支持未來的技術(shù)發(fā)展;另一類是可便攜應(yīng)用,強(qiáng)調(diào)的是小型化,低功耗,支持多種移動存儲接口以及USB, 1394或其它高速總線。
針對應(yīng)用選擇合適的芯片
上文已提到,這些應(yīng)用大致上可以分為兩類,高性能和可便攜。TI針對這些市場都有相應(yīng)的產(chǎn)品。
首先我們看一下高性能的應(yīng)用。
高性能視頻應(yīng)用
在這類市場里,通常數(shù)據(jù)運(yùn)算量極大,比如僅考慮這類圖像運(yùn)算中最基本的運(yùn)算離散余弦轉(zhuǎn)換(DCT),對于單通道30幀的VGA視頻,它就需要每秒大約6千萬次的乘加運(yùn)算。這還僅是其中非常一小部分。
要完成這么艱巨的任務(wù),我們就不得不看一看TI的單核性能最強(qiáng)的DSP核C64x,一個主頻可以達(dá)到720MHz,峰值運(yùn)算能力達(dá)到5760MIPS的32位DSP。除了這些無與倫比的主頻和通用乘加性能,C64的核更增強(qiáng)了對8位和16位操作的支持,而圖像領(lǐng)域絕大多數(shù)運(yùn)算是在8位的基礎(chǔ)上。例如,C64x增加了很多專用指令,如SUBABS4,同一機(jī)器周期里可同時完成四次減法和求絕對值, 還有諸如BITC4,AVGx,MPYHLx,DOTP2等等。這些增強(qiáng)使得運(yùn)動補(bǔ)償平均提升達(dá)七倍,而四重8位運(yùn)算則使得每時鐘周期運(yùn)動估計的8x8最小絕對差(MAD)的計算能力提高到7.6倍。這些都使以C64x為核心的DSP成為高性能視頻應(yīng)用的選擇。
我們來具體看一下,例如上文提到的視頻局端設(shè)備,由于它是一局端設(shè)備,挑戰(zhàn)在于多路多碼率以及多制式,因而要求片上內(nèi)存要大已放下足夠的多路數(shù)據(jù)和各種譯碼器,同時也需要與控制主機(jī)相連。由此TMS320C6415就是一個不二的選擇。它主頻可以跑到720MHz,有8兆位的片上內(nèi)存,有PCI接口。圖一就是一個C6415為核心的局端設(shè)備框圖。
圖一,視頻局端設(shè)備
相類似的應(yīng)用還有無線媒體網(wǎng)關(guān)。
對于客戶端設(shè)備,用TMS320C6415就不是那么合適了。例如IP視頻網(wǎng)絡(luò)電話,它通常是單路的,因而不需要太大的片上內(nèi)存,但它的接口卻要求很多。例如他們一般都是直接視頻輸入輸出,或從有線電視或從攝像頭到LCD,又要求接以太網(wǎng)。這里,我們就需要一個內(nèi)存夠用(因而便宜),支持通用視頻標(biāo)準(zhǔn)如BT656,還帶有以太網(wǎng)口的處理芯片TMS320DM642。
TMS320DM642是針對這類客戶端市場的數(shù)字信號處理芯片,TI 出了一系列類似的處理芯片,成為數(shù)字媒體(Digital Media)處理器。DM642帶有三個視頻口,均可輸入或輸出,支持BT656,百兆以太網(wǎng)口,多路音頻串口,66MHz PCI等等,可支持四路D1圖像30幀的MPEG-2的實時壓縮。以它為中心的IP視頻電話結(jié)構(gòu)非常簡潔,如圖二
圖二 IP視頻電話方案
相類似的高性能視頻應(yīng)用還有機(jī)頂盒、數(shù)字視頻播放器/點播機(jī)和網(wǎng)絡(luò)相機(jī)/監(jiān)控系統(tǒng),它們都可以以DM642為中心將上各自特需的硬件,形成不同的應(yīng)用。這也最大程度上發(fā)揮了開發(fā)投資的價值,一套方案上的經(jīng)驗可以為其它所有方案利用。
可便攜設(shè)備的視頻應(yīng)用
這類設(shè)備中最典型的應(yīng)用就是數(shù)字?jǐn)z錄機(jī)/數(shù)碼相機(jī),除了共有的視頻圖像處理外,它們最大的考慮就是功耗。這些都是電池驅(qū)動的,因而能量消耗必須有所限制。這種情況下C64x核的處理芯片就很不合適,如一顆C6415跑在600MHz時功耗超過1瓦。
幸好TI在功耗上很有研究,她的C5000是專門針對低功耗計算市場的,特別是C55x,創(chuàng)造了業(yè)界耗電最低紀(jì)錄,0.22mW每MIPS!C55x功耗低,性能也不差,它具有雙MAC雙ALU結(jié)構(gòu),200MHz的主頻可以達(dá)到400MIPS的處理能力!低功耗高性能使得C55x系列DSP成為便攜式消費類電子的最佳選擇。
對于我們今天談到的視頻圖像應(yīng)用更重要的是TI 有系列專門針對便攜媒體市場的處理芯片。
TMS320DSC21/DSC25/DM270/DM310,這系列芯片的共同特點都是雙核結(jié)構(gòu)RISC的MCU核加上C5000的DSP核。運(yùn)算主要有DSP完成,同時針對圖像處理使用了硬件加速。所有這些芯片都有圖像擴(kuò)展協(xié)處理器iMX 和變長編解碼協(xié)處理器VLCD,除了DSC21外都有量化反量化協(xié)處理器QIQ。其中iMX是多個并行乘加器來加速那些運(yùn)算量極大的圖像處理算法,例如DCT運(yùn)算。VLCD是用來進(jìn)行Huffman編解碼的,它DSP從不停的跳轉(zhuǎn)中解脫出來。QIQ則是進(jìn)行量化和反量化,由于量化是執(zhí)行除法運(yùn)算,DSP沒有專門的除法指令,只能用移位指令實現(xiàn),相當(dāng)耗資源。
有了這些協(xié)處理器,DM系列芯片的處理能力也向當(dāng)?shù)貜?qiáng),例如DM310可以實現(xiàn)D1圖像(720x480)30幀每秒的實時MPEG-4編解碼。
圖三,數(shù)碼相機(jī)
圖三即為一個DM310為基礎(chǔ)的系統(tǒng)。
芯片之外
看到這里,大家可以看到,這些應(yīng)用都有一些共同點,也會自然而然地想到,不同的客戶用同一套芯片開發(fā)同一種應(yīng)用會不會造出同樣的東西?這點勿須擔(dān)心,DSP充分的可編程性是差異化的保證。同時為了更好地集中于差異化,那些標(biāo)準(zhǔn)件,如各種碼制的編解碼器,也可以同第三方獲得。TI圍繞DSP完備而成熟的開發(fā)環(huán)境也是縮短開發(fā)周期迅速占領(lǐng)市場的保證。