數(shù)字視頻系統(tǒng)設(shè)計(jì)中的集成新概念
現(xiàn)在數(shù)字視頻系統(tǒng)的復(fù)雜度已經(jīng)遠(yuǎn)遠(yuǎn)超過以往任何時(shí)候,特別是隨著單片系統(tǒng)(SoC)時(shí)代的到來,廣大設(shè)計(jì)人員正面臨著前所未有的挑戰(zhàn)。在SoC成為數(shù)字視頻系統(tǒng)平臺的時(shí)候,新的集成開發(fā)概念也就應(yīng)運(yùn)而生,其實(shí)質(zhì)就是通過綜合的集成開發(fā)環(huán)境以及所提供的多種工具,實(shí)現(xiàn)數(shù)字音視頻軟件與底層系統(tǒng)軟件及相關(guān)應(yīng)用的集成,并采用有效的手段進(jìn)行調(diào)試。關(guān)于數(shù)字視頻系統(tǒng)設(shè)計(jì)的集成理念可以結(jié)合業(yè)界具有代表意義的單片數(shù)字媒體處理平臺達(dá)芬奇(Davinci)及其開發(fā)技術(shù)作一些探討,其中包含基本開發(fā)理念、開發(fā)集成環(huán)境、數(shù)字視頻配置工具和圖形系統(tǒng)可視化工具四個(gè)方面。
圖1 達(dá)芬奇軟件集成結(jié)構(gòu)框圖
數(shù)字視頻系統(tǒng)開發(fā)理念
既然處理器自身只能用作數(shù)字視頻解決方案的基礎(chǔ),那么管理數(shù)字視頻系統(tǒng)的所有組件就成為極其復(fù)雜的工程難題。對于許多應(yīng)用來說,數(shù)字視頻只是更為龐雜的系統(tǒng)的眾多組件之一。為了在真正意義上使開發(fā)人員克服最初的障礙并且加快產(chǎn)品上 市進(jìn)程,僅僅開發(fā)實(shí)施數(shù)字視頻的基礎(chǔ)芯片和軟件已經(jīng)遠(yuǎn)遠(yuǎn)不夠。開發(fā)人員不僅需要處理器,還需要能夠直接投入生產(chǎn)的理想代碼。換言之,為了滿足其應(yīng)用的特定需求,開發(fā)人員還需要已經(jīng)集成到可配置或輕松編程的數(shù)字視頻子系統(tǒng)上的硬件和軟件。
數(shù)字視頻系統(tǒng)的復(fù)雜性主要在于開發(fā)人員必須創(chuàng)建和管理的眾多組件。為眾多組件編寫代碼并且管理其間的交互將大大增加集成一套完整系統(tǒng)的難度。為此達(dá)芬奇技術(shù)通過提供開放式平臺來降低系統(tǒng)復(fù)雜性,在該平臺之上,德州儀器及其第三方合作伙伴已經(jīng)開發(fā)和集成了構(gòu)成數(shù)字視頻系統(tǒng)所需要的各種組件,并且還集成了使任何工程師都能夠?qū)崿F(xiàn)數(shù)字視頻創(chuàng)新所需的軟硬件。
在采用達(dá)芬奇平臺進(jìn)行開發(fā)中,最需要關(guān)注的就是全新的開發(fā)理念。成功實(shí)現(xiàn)數(shù)字視頻需要四大要素,即處理器平臺、開發(fā)工具、軟件以及系統(tǒng)專業(yè)技術(shù)。由于能夠在集成這四種要素的平臺中實(shí)現(xiàn)數(shù)字視頻、音頻、語音與話音技術(shù),因此達(dá)芬奇技術(shù)所支持的SoC平臺針對靈活的數(shù)字視頻實(shí)施而進(jìn)行了精心優(yōu)化,集成了可編程DSP內(nèi)核、ARM處理器以及視頻加速協(xié)處理器。憑借高效的處理能力、存儲器、I/O帶寬、平衡的內(nèi)部互連以及專用外設(shè)組合,并以最低的成本為視頻應(yīng)用提供理想的核心動(dòng)力。
達(dá)芬奇技術(shù)在芯片級上充分發(fā)揮雙處理器的協(xié)處理器功效,并輔之以強(qiáng)大的開發(fā)工具,以擴(kuò)展其基于芯片的DSP技術(shù)能力,并結(jié)合高度優(yōu)化的視頻算法軟件。開發(fā)人員不需要再費(fèi)心于如何針對自己的基本創(chuàng)新進(jìn)行編程和優(yōu)化代碼的細(xì)節(jié)問題,因此縮短了開發(fā)的周期。達(dá)芬奇技術(shù)通過更加簡單易用的標(biāo)準(zhǔn)API組合來實(shí)現(xiàn)對這些創(chuàng)新的利用,這些API允許輕松利用可隨時(shí)投產(chǎn)的編解碼器(CODEC)。
達(dá)芬奇技術(shù)使開發(fā)人員不再需要了解視頻應(yīng)用中實(shí)施具體CODEC引擎的細(xì)節(jié),而可以較少的投入通過授權(quán)得到符合xDM標(biāo)準(zhǔn)的視頻、影像、語音和音頻軟件,并通過配置工具植入SOC中。這樣一來,開發(fā)人員便無需修改上層應(yīng)用代碼即可以使用理想CODEC的API,可以顯著簡化視頻CODEC處理的具體低層次細(xì)節(jié),而集中進(jìn)行增值應(yīng)用開發(fā)。如圖1為達(dá)芬奇軟件集成結(jié)構(gòu),其中包括信號處理層、應(yīng)用層及底層核心程序。
在完成軟件集成之后,SOC的系統(tǒng)調(diào)試將是一個(gè)極其復(fù)雜的過程,所幸達(dá)芬奇技術(shù)可以提供數(shù)據(jù)可視化工具,這是業(yè)界首創(chuàng)的圖形系統(tǒng)可視化技術(shù)的集中展現(xiàn)。開發(fā)人員只需要通過PC屏幕上多個(gè)圖形窗口界面,直觀地了解到程序運(yùn)行的結(jié)果,并且在同一圖象上顯示ARM與DSP的任務(wù)運(yùn)行情況。正是這種數(shù)據(jù)可視化工具提供了系統(tǒng)級數(shù)據(jù)流程的鳥瞰圖以便實(shí)時(shí)地快速確認(rèn)問題所在,因此實(shí)現(xiàn)了設(shè)計(jì)效率與總體性能的最大化。
構(gòu)建數(shù)字視頻集成環(huán)境
針對數(shù)字視頻創(chuàng)新應(yīng)用,開放式平臺的效力勿庸置疑,這可上溯到開放式開發(fā)平臺曾經(jīng)所引發(fā)的PC市場的爆炸性增長。TI的OMAP平臺環(huán)境已經(jīng)將移動(dòng)電話應(yīng)用開發(fā)提升到了一個(gè)新的高度,即通過集成軟硬件使軟件開發(fā)商仍然能夠利用現(xiàn)有的系統(tǒng),并集中精力開拓新市場及新的收入來源,如開發(fā)文本信息傳輸、鈴聲下載以及手機(jī)中的其它高級應(yīng)用等。達(dá)芬奇技術(shù)同樣將類似OMAP的集成環(huán)境概念融入到了廣泛的數(shù)字視頻應(yīng)用中。
達(dá)芬奇技術(shù)所提供的開放式開發(fā)平臺通過開發(fā)集成環(huán)境可以支持多種底層操作系統(tǒng)和擴(kuò)展更多的應(yīng)用程序。達(dá)芬奇軟件初始將支持Linux,將來會陸續(xù)支持其他操作系統(tǒng)。Linux支持的內(nèi)容包括外設(shè)驅(qū)動(dòng)器、實(shí)時(shí)應(yīng)用管理、應(yīng)用級API以及可隨時(shí)投產(chǎn)的代碼。針對視頻而精心優(yōu)化的、基于集成的DSP、專用型開發(fā)工具、調(diào)諧驅(qū)動(dòng)器、CODEC以及系統(tǒng)級應(yīng)用代碼的整體組合使開發(fā)人員能夠?qū)崿F(xiàn)完整而復(fù)雜的數(shù)字視頻系統(tǒng),僅需少量函數(shù)調(diào)用即可提供編解碼功能。
完整的達(dá)芬奇軟件架構(gòu)涵蓋低級的OS驅(qū)動(dòng)程序乃至應(yīng)用API,使開發(fā)人員無需投入過多力量編寫及優(yōu)化編解碼器或進(jìn)行DSP編程,即能夠?qū)崿F(xiàn)數(shù)字視頻功能。最初的API基于Linux操作系統(tǒng),使開發(fā)人員實(shí)施編解碼器時(shí)不接觸復(fù)雜的軟硬件細(xì)節(jié),這使他們不必修改應(yīng)用代碼就能實(shí)現(xiàn)多媒體編解碼器互換。在創(chuàng)建應(yīng)用時(shí),開發(fā)人員能利用標(biāo)準(zhǔn)的OS開發(fā)環(huán)境編寫業(yè)界認(rèn)可的API,實(shí)現(xiàn)存儲、網(wǎng)絡(luò)及視頻接口功能。而這些工作均可建立在同樣的開發(fā)集成環(huán)境中。
開發(fā)人員目前可借助數(shù)字視頻評估模塊(DVEVM)構(gòu)建數(shù)字視頻開發(fā)集成平臺,進(jìn)行數(shù)字視頻系統(tǒng)評估與實(shí)施工作。DVEVM包含MontaVista2.6.10 Linux Preview開發(fā)套件以及MontaVista GNU 開發(fā)工具,還包括NTSC/PAL相機(jī)、LCD屏幕、預(yù)連線的視頻編碼及編解碼器演示,還能用原視頻流創(chuàng)建新的演示。DVEVM還可實(shí)現(xiàn)視頻輸入/輸出連接、網(wǎng)絡(luò)接口、存儲器接口以及標(biāo)準(zhǔn)的子卡連接等,這使開發(fā)人員能夠用DVEVM開發(fā)出理想的應(yīng)用原型。采用DVEVM,開發(fā)人員可為ARM編寫應(yīng)用代碼,直接適合投產(chǎn)的要求,并且還可通過達(dá)芬奇API訪問DSP內(nèi)核以立即開始已有DM6443及DM6446器件的應(yīng)用開發(fā)工作。
基于SOC的數(shù)字視頻系統(tǒng)內(nèi)部其實(shí)也是一種軟件的高度集成,只是其中的軟件均以微碼的方式存在。在達(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è)計(jì)軟件模塊,并通過Linux API溝通底層內(nèi)核的許多外圍接口驅(qū)動(dòng)。
圖2 達(dá)芬奇軟件平臺結(jié)構(gòu)框圖
圖2所示達(dá)芬奇的軟件及平臺構(gòu)架圖有助于進(jìn)一步了解內(nèi)部細(xì)節(jié),其中包括ARM端linux上運(yùn)行的應(yīng)用程序,DSP上運(yùn) 行的CODEC引擎以及負(fù)責(zé)ARM與DSP通信的DSP/BIOS LINK等。所有的開發(fā)都可以在TI通用的軟件集成環(huán)境(Code Composer Studio)中進(jìn)行,其適于數(shù)字視頻開發(fā)的最新版本為V3.2。
在對達(dá)芬奇基本的硬件和軟件平臺有所了解之后,不妨嘗試著建立起自主的基于達(dá)芬奇技術(shù)的數(shù)字視頻集成開發(fā)平臺,并達(dá)芬奇技術(shù)已經(jīng)能夠?qū)崿F(xiàn)了數(shù)字視頻背后的許多復(fù)雜細(xì)節(jié),為數(shù)字視頻應(yīng)用提供強(qiáng)有力的支持。只要樹立數(shù)字視頻技術(shù)開發(fā)的新概念,開發(fā)人員將不必拘泥于繁瑣的底層基礎(chǔ)建立,不用受制于繁重DSP編程工作,而是可以通過有效的片上軟件及應(yīng)用集成,開發(fā)出具有優(yōu)越性能和創(chuàng)新功能的數(shù)字視頻應(yīng)用和產(chǎn)品。
評論