新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 開(kāi)放的多媒體應(yīng)用平臺(tái)OMAPTM

開(kāi)放的多媒體應(yīng)用平臺(tái)OMAPTM

作者: 時(shí)間:2006-05-07 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:從系統(tǒng)設(shè)計(jì)入手,介紹了開(kāi)放的多媒體應(yīng)用平臺(tái)OMAP TM的硬件和軟件結(jié)構(gòu),及OMAP TM平臺(tái)的實(shí)現(xiàn)——DSP/BIOS TM橋技術(shù)的概念和實(shí)現(xiàn)。

本文引用地址:http://m.butianyuan.cn/article/241590.htm

關(guān)鍵詞:OMAP TM DSP/BIOS TM橋 XDAIS RTOS

今天的系統(tǒng)度設(shè)計(jì)者面對(duì)的是日益增長(zhǎng)的應(yīng)用需求,系統(tǒng)設(shè)計(jì)顯得保存,新的系統(tǒng)設(shè)計(jì)理念是在開(kāi)放式系統(tǒng)平臺(tái)上進(jìn)行設(shè)計(jì)。開(kāi)放式平臺(tái)可以不斷地更新和下載新的應(yīng)用,使產(chǎn)品功能常新,從而使產(chǎn)品在市競(jìng)爭(zhēng)中立于不敗之地。

選擇好平臺(tái)是關(guān)鍵。本文介紹了TI公司的OMAP TM平臺(tái)(Open Multimedia Applications Platform)。它是基于DSP的開(kāi)放多媒體應(yīng)用平臺(tái),已被NOKIA、ERICSSON、SONY、HANDSPRING等公司選用。

OMAP TM平臺(tái)是雙核結(jié)構(gòu),由ARM核及DSP核組成,DSP以低功耗高性能實(shí)現(xiàn)多媒體應(yīng)用。目前在OMAP TM平臺(tái)上實(shí)現(xiàn)的多媒體應(yīng)用有語(yǔ)音、音頻、圖像、視頻等。

1 OMAP TM的開(kāi)放性

OMAP TM的開(kāi)放性表現(xiàn)在以下三個(gè)方面:

(1)對(duì)于用戶(hù)來(lái)說(shuō),基于OMAP TM平臺(tái)的應(yīng)用是開(kāi)放的。針對(duì)產(chǎn)品的操作系統(tǒng),用戶(hù)不僅可以下載基于該操作系統(tǒng)的應(yīng)用程序,還可以下載基于DSP的多媒體應(yīng)用程序。也就是說(shuō)OMAP TM平臺(tái)透過(guò)先進(jìn)的操作系統(tǒng)平臺(tái)不僅開(kāi)放了ARM,而且開(kāi)放了DSP。通過(guò)DSP/BIOS TM橋,DSP的資源就如同ARM的外設(shè)一樣通過(guò)操作系統(tǒng)的API被調(diào)用。DSP/BIOS TM橋在OMAP TM平臺(tái)上實(shí)現(xiàn)了雙核的無(wú)縫連接。

(2)對(duì)于獨(dú)立的軟件制造商(ISV)來(lái)說(shuō),為OMAP TM平臺(tái)開(kāi)發(fā)商業(yè)應(yīng)用軟件的標(biāo)準(zhǔn)是開(kāi)放。算法的兼容性及可評(píng)佑性是關(guān)鍵。只有算法的性能、占用資源及接口方式是標(biāo)準(zhǔn)的,算法才能離架。TI公司的XDAIS(eXpressDSP TM算法標(biāo)準(zhǔn))的出臺(tái)解決了DSP算法的標(biāo)準(zhǔn)化問(wèn)題,所有XDAIS兼容算法都必須得到TI公司的兼容性測(cè)試。而且DSP/BIOS TM橋提供XDAIS兼容算法接口。ISV開(kāi)發(fā)的XDAIS兼容算法可直接用于OMAP TM平臺(tái)。

(3)對(duì)于原始設(shè)備制造廠(chǎng)商(OEM)來(lái)說(shuō),可以開(kāi)放先進(jìn)的操作系統(tǒng)。OMAP TM平臺(tái)支持的操作系統(tǒng)很多,如Microsoft的WINDOWS CE、Synbian的EPOC、ATI的NUCLEUS、Windriver的VXWORKS和LINUX等,OEM廠(chǎng)商可以按照自己的需求和LICENCE情況去定制。同時(shí),OEM廠(chǎng)商還可以根據(jù)自己的特點(diǎn)和產(chǎn)品的功能去開(kāi)放地選購(gòu)算法和軟件。借助于第三方OS及TI的第三方網(wǎng)絡(luò)等,OEM廠(chǎng)商仿佛置身于一個(gè)巨大軟件超市,各種算法及軟件商品性能價(jià)格一目了然,盡可以取其所需。

OMAP TM平臺(tái)分為軟件和硬件平臺(tái)。為滿(mǎn)足多媒體應(yīng)用的需求,硬件平臺(tái)必須高性能、低功耗;同時(shí)為滿(mǎn)足應(yīng)用的發(fā)展需求,硬件平臺(tái)要具有不斷升級(jí)的能力。OMAP TM軟件平臺(tái)的核心是DSP/BIOS TM橋,OMAP TM的軟件平臺(tái)獨(dú)立于硬件平臺(tái)。

2 OMAP TM的硬件平臺(tái)

OMAP TM的多媒體應(yīng)用取決于它內(nèi)部硬件結(jié)構(gòu)的實(shí)現(xiàn),DSP是實(shí)現(xiàn)多媒體應(yīng)用的關(guān)鍵。當(dāng)然其內(nèi)部的硬件加速器、DMA及交通控制單元等也舉足輕重。

OMAP TM硬件平臺(tái)主要由DSP核、ARM核及交通控制(TRAFFIC CONTROLLER)單元組成。這三個(gè)部分可以獨(dú)立地進(jìn)行時(shí)鐘管理,有效地控制功耗。

OMAP TM平臺(tái)采用雙核技術(shù)使操作系統(tǒng)的效率和多媒體代碼的執(zhí)行更加優(yōu)化。實(shí)時(shí)性任務(wù)由DSP完成,非實(shí)時(shí)性任務(wù)和系統(tǒng)控制工作由ARM完成,從而使系統(tǒng)的功耗降至最低,成功地解決性能與功耗的最佳組合問(wèn)題。

OMAP TM平臺(tái)的硬件平臺(tái)會(huì)逐步升級(jí)國(guó),以滿(mǎn)足日益增長(zhǎng)的應(yīng)用需求。目前的ARM核選用ARM95TDMI,其上可以運(yùn)行先進(jìn)的操作系統(tǒng)如WINDOWS CE、EPOC等。DSP核采用TMS320C55X TM DSP,其上運(yùn)行的RTOS是DSP/BIOS TM。TMS320C55X TM DSP有高度并行能力,它的32位讀寫(xiě)能力天功能強(qiáng)大的EMIF、雙流水線(xiàn)的獨(dú)立操作及雙MAC的運(yùn)算能力,以及它的變長(zhǎng)指令、用戶(hù)自定義的并行指令是優(yōu)異的多媒體性能的保證。其采用模塊化的IDLE模式,最大程度地降低了功耗。OMAP TM硬件平臺(tái)的框圖如圖1所示。

3 OMAP TM的軟件結(jié)構(gòu)

OMAP TM的軟件結(jié)構(gòu)在兩個(gè)操作系統(tǒng)上,一是基于ARM的先進(jìn)的OS如EPOC、WINCE等;二是基于DSP的DSP/BIOS TM。如何使兩個(gè)操作系統(tǒng)無(wú)縫工作,是實(shí)現(xiàn)開(kāi)放的軟件平臺(tái)的關(guān)鍵。這個(gè)核心技術(shù)就是首次正式應(yīng)用在OMAP TM平臺(tái)上的DSP/BIOS TM橋。

3.1 DSP/BIOS TM橋

DSP/BIOS TM橋用于連接DSP/BIOS和其他通用處理器(GPP)上的OS。GPP在OMAT TM里是ARM,還可以是MTPS(Microprocessor without Interlocked Pipe Stage)等。DSP/DIOS TM橋具有以下特點(diǎn):

·高性能;

·有效利用GPP和DSP的資源;

·可移植到不同的GPP和DSP硬件平臺(tái)上;

·可移值到不同的GPP和DSP操作系統(tǒng)上;

·支持多個(gè)DSP和一個(gè)GPP;

·從GPP應(yīng)用程序中使用;

·對(duì)象為中心的設(shè)計(jì);

·高可靠性;

·APIs與將來(lái)的版本向后兼容。

DSP/BIOS TM橋用于非對(duì)稱(chēng)的,由一個(gè)通用的處理器(GP:P)和一個(gè)或多個(gè)DSP組成的多處理器環(huán)境。DSP/BIOS TM橋作為GPP OS和DSP OS的軟件組合,把兩個(gè)操作系統(tǒng)連接在一起。這種連接能夠使GPP端的客戶(hù)與DSP上的任務(wù)交換信息和數(shù)據(jù)。連接分為兩種類(lèi)型的子連接,消息子連接和數(shù)據(jù)流子連接。每種子連接都按順序傳遞消息,哪個(gè)消息先到消息鏈,哪個(gè)消息就先被傳遞;同樣哪個(gè)數(shù)據(jù)流先到數(shù)據(jù)流鏈;哪個(gè)數(shù)據(jù)流就先被傳遞。每個(gè)子連接都獨(dú)立地進(jìn)行操作,例如:GPP先發(fā)送數(shù)據(jù)流,然后發(fā)送消息,如果消息有高優(yōu)先級(jí),那么消息比數(shù)據(jù)流先到DSP。

DSP任務(wù)通常用消息對(duì)象傳送控制和狀態(tài)信息,用數(shù)據(jù)流對(duì)象傳送高效時(shí)數(shù)據(jù)流。圖2表示GPP客戶(hù)端程序和DSP任務(wù)間的關(guān)系。

3.2 主機(jī)軟件結(jié)構(gòu)

對(duì)于GPP操作系統(tǒng)來(lái)說(shuō),DSP/BIOS TM橋增加了API,它能使GPP應(yīng)用和驅(qū)動(dòng)程序同時(shí)利用DSP的資源。GPP客戶(hù)端可以通過(guò)API完成以下工作:

·初始化DSP上的信號(hào)處理任務(wù);

·與DSP任務(wù)交換信息;

·與DPS任務(wù)雙向交換數(shù)據(jù)流;

·停止、激活、刪除DSP任務(wù);

·進(jìn)行資源的狀態(tài)查詢(xún)。

一個(gè)GPP應(yīng)用程序或設(shè)備驅(qū)動(dòng)程序可以使用DSP/BIOS TM橋API與DSP子系統(tǒng)上的DSP任務(wù)進(jìn)行通信。例如:一個(gè)GPP WAVE設(shè)備驅(qū)動(dòng)程序可以利用API發(fā)送信息給DSP任務(wù)來(lái)管理數(shù)據(jù)從ADC到DAC。

                                     GPP端DSP/BIOS TM橋API以庫(kù)的形式實(shí)現(xiàn),它調(diào)用特定硬件的設(shè)備驅(qū)動(dòng)程序,如果沒(méi)有一個(gè)針對(duì)特定硬件設(shè)備驅(qū)動(dòng)程序,API是不能工作的。對(duì)于GPP API來(lái)說(shuō),這些專(zhuān)用于DSP子系統(tǒng)的設(shè)備驅(qū)動(dòng)程序執(zhí)行I/O操作和控制操作,就象其他GPP外設(shè)的設(shè)備驅(qū)動(dòng)程序一樣。每個(gè)DSP設(shè)備驅(qū)動(dòng)程序支持特定的DSP子系統(tǒng),如果存在同一個(gè)DSP硬件的多個(gè)實(shí)例,那么這個(gè)DSP設(shè)備驅(qū)動(dòng)程序的多個(gè)實(shí)例都會(huì)在GPP OS上運(yùn)行。

DSP設(shè)備驅(qū)動(dòng)程序?yàn)镚PP端的API完成很多功能,它負(fù)責(zé)DSP的自舉工作,為DSP裝入RTOS和應(yīng)用程序代碼,并啟動(dòng)DSP運(yùn)行。一旦DSP已經(jīng)初始化并且RTOS進(jìn)行運(yùn)行狀態(tài),DSP設(shè)備驅(qū)動(dòng)程序就開(kāi)始于GPP和DSP間的消息和數(shù)據(jù)流的傳遞工作。與它對(duì)等的DSP上的DSP主機(jī)驅(qū)動(dòng)程序。DSP設(shè)備驅(qū)動(dòng)程序和DSP主機(jī)驅(qū)動(dòng)程序?qū)λ鶄鬟f的內(nèi)容并不關(guān)心。

3.3 DSP軟件結(jié)構(gòu)

對(duì)于DSP RTOS,DSP/BIOS TM橋增加了目標(biāo)獨(dú)立的流式I/O界面(STRM)、消息界面(NODE)和資源管理(RM)服務(wù)器。RM服務(wù)器就象DSP RTOS的一個(gè)任務(wù)一樣運(yùn)行,并服務(wù)于GPP的命令和查詢(xún)。一旦GPP端的程序通過(guò)GPP端的API發(fā)出請(qǐng)求,RM服務(wù)器響應(yīng),啟動(dòng)或停止DSP信號(hào)處理節(jié)點(diǎn)。

由RM服務(wù)器的任務(wù)采用STRM和NODE界面,作為對(duì)應(yīng)的GPP客戶(hù)程序的服務(wù)器,并根據(jù)GPP客戶(hù)程序發(fā)出的信息進(jìn)行處理工作。典型的,一個(gè)DSP任務(wù)用設(shè)備獨(dú)立的流式I/O把數(shù)據(jù)從源端傳送到罕主端,并在數(shù)據(jù)傳送過(guò)程中進(jìn)行特定的處理和轉(zhuǎn)換。例如:一個(gè)WAVE音頻任務(wù)從GPP WAVE設(shè)備驅(qū)動(dòng)程序接收到數(shù)據(jù)后,可能要執(zhí)行音頻解壓縮(ADPCM,MPEG,CELP),然后把解壓縮的線(xiàn)性采樣送到DAC。

3.4 DSP/BIOS TM橋的功能組件

DSP/BIOS TM橋的功能組件如圖3所示。

在典型配置中,GPP與一個(gè)或多個(gè)DSP相連,最終用戶(hù)在GPP上的應(yīng)用程序調(diào)用媒體服務(wù)模塊或驅(qū)動(dòng)程序,通過(guò)DSP/BIOS TM橋來(lái)管理DSP資源。

資源管理器負(fù)責(zé)動(dòng)態(tài)高度DSP資源,監(jiān)控DSP資源,動(dòng)態(tài)裝入DSP代碼,發(fā)生請(qǐng)求沖突時(shí),負(fù)責(zé)實(shí)現(xiàn)DSP資源的管理策略。資源管理器在平臺(tái)管理器之上。平臺(tái)管理器負(fù)責(zé)靜態(tài)裝入DSP代碼,啟動(dòng)或停止DSP實(shí)現(xiàn)數(shù)據(jù)流。平臺(tái)管理器位于GPP OS適配器及負(fù)責(zé)及DSP通信的連接驅(qū)動(dòng)器之上。

DSP上的RTOS是基礎(chǔ),它通過(guò)主機(jī)連接驅(qū)動(dòng)器與GPP通信。在DSP RTOS的上面是資源管理(RM)服務(wù)器。RM服務(wù)器的主要職責(zé)是在資源管理器的控制下動(dòng)態(tài)地創(chuàng)建、執(zhí)行、刪除DSP處理節(jié)點(diǎn),其他職責(zé)包括改變?nèi)蝿?wù)的優(yōu)先級(jí)并響應(yīng)資源管理器的配置命令和狀態(tài)查詢(xún)。一個(gè)專(zhuān)門(mén)的流用來(lái)接收來(lái)自資源管理器的命令,另一個(gè)專(zhuān)門(mén)的流用來(lái)發(fā)響應(yīng)信號(hào)給資源管理器。

DSP任務(wù)節(jié)點(diǎn)是DSP上單獨(dú)執(zhí)行的線(xiàn)程,它實(shí)現(xiàn)信號(hào)處理算法。任務(wù)節(jié)點(diǎn)通過(guò)固定長(zhǎng)度的短消息和與設(shè)備無(wú)關(guān)的流式I/O互相通信或與GPP通信。

3.5 舉例說(shuō)明DSP/BIOS TM橋的實(shí)現(xiàn)過(guò)程

在這個(gè)例子中用DSP進(jìn)行濾波,GPP應(yīng)用程序調(diào)用API控制DSP上的音頻濾波任務(wù)。API用來(lái)控制DSP,但GPP和DSP之間沒(méi)有數(shù)據(jù)流,如圖4所示。

為初始化DSP上的濾波器任務(wù),GPP應(yīng)用程序要完成的工作如下:

·連接到DSP;

·分配濾波器任務(wù)節(jié)點(diǎn)及ADC和DAC設(shè)備節(jié)點(diǎn);

·連接節(jié)點(diǎn);

·創(chuàng)建DSP上的節(jié)點(diǎn);

·啟動(dòng)濾波器節(jié)點(diǎn)。

為終止DSP上的濾波器應(yīng)用,GSP應(yīng)用程序完成的工作如下:

·調(diào)DSP節(jié)點(diǎn),終止API發(fā)消息到濾波器來(lái)終止處理;

·刪除濾波器節(jié)點(diǎn)和ADC,DAC節(jié)點(diǎn);

·與DSP分離。

作為雙核的OMAP TM平臺(tái),其最大的特點(diǎn)是開(kāi)放性及其軟件平臺(tái)和硬件平臺(tái)的獨(dú)立性,同時(shí)基于C的ARM和基于XDAIS算法的DSP使OMAP TM平臺(tái)易于開(kāi)發(fā)和維護(hù),功能強(qiáng)大且可在線(xiàn)升級(jí)。軟件平臺(tái)的核心DSP/BIOS TM橋并不依賴(lài)于固定的操作系統(tǒng),具有可移植性,允許操作系統(tǒng)的更新。DSP/BIOS TM橋技術(shù)是實(shí)現(xiàn)開(kāi)放的多媒體應(yīng)用的核心技術(shù)。XDAIS兼容算法具有可重入和可重定位特性,因此不僅為算法提供標(biāo)準(zhǔn)的界面,而且具有多通道特性,因此不僅為算法提供標(biāo)準(zhǔn)的界面,而且具有多通道特性,并能直接在OMAP TM平臺(tái)上運(yùn)行,是TI推薦的算法封裝方式。目前已經(jīng)有眾多的第三方開(kāi)發(fā)出大量XDAIS兼容算法。OAP TM的軟件開(kāi)發(fā)集成環(huán)境支持多核的CCS2.0 IDE、XDS510及XDS560仿真器,同時(shí)TI還提供OMAP TM EVM做的評(píng)估工具。

linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉