基于OMAP架構(gòu)的智能手持設(shè)備設(shè)計
關(guān)鍵詞:手持設(shè)備;SoC;OMAP1510;嵌入式操作系統(tǒng)
引言
傳統(tǒng)的手持設(shè)備,如人們較為熟悉的PDA,基本功能均比較簡單,主要是管理個人信息,如通訊錄、備忘錄,以及計算器、錄音和辭典等功能。這些功能都是固化的,不能根據(jù)用戶的要求進行改進,而且在人機接口、多媒體和影音支持方面都還有很大的欠缺。隨著3G時代的到來,結(jié)合人們對未來新信息家電的要求,新一代手持設(shè)備將定位于整合寬帶通訊與多媒體功能,支持彩色液晶屏幕以及更快速的數(shù)據(jù)處理能力等。顯而易見,這樣的手持設(shè)備將會是一個復雜的嵌入式系統(tǒng),因此其設(shè)計實現(xiàn)也不同于傳統(tǒng)的以單一微處理器為核心,以專用的控制程序?qū)崿F(xiàn)應(yīng)用功能的簡單設(shè)備;而代之以SoC為核心,以通用性較強的嵌入式操作系統(tǒng)為軟件平臺,應(yīng)用軟件可擴展的設(shè)計方案。
硬件平臺核心—SoC
傳統(tǒng)的手持設(shè)備通常使用一個RISC微處理器,處理數(shù)據(jù)的輸入輸出、數(shù)字計算以及屏幕輸出等工作,如市面上最常見的PALMPDA就采用Motorola的DragonBall32位RISC微處理器。而對于復雜的嵌入式系統(tǒng),僅有微處理器是不夠的,要額外再加上其它特殊的處理芯片,比如說DSP(數(shù)字信號處理器)、閃存或者LCD驅(qū)動等,這就產(chǎn)生了SoC,即結(jié)合多種芯片架構(gòu),將許多特殊功能的處理單元整合到一塊芯片中。這樣做的優(yōu)點不僅是提供了一個功能強大,易于開發(fā)的硬件平臺,而且由于整合多個功能模塊在一塊芯片上,在功率消耗方面將會有顯著的降低,并且可以避免信號處理中產(chǎn)生的雜波。
現(xiàn)在SoC的最新技術(shù),在于結(jié)合RISC微處理器與數(shù)字信號處理器DSP和其它外圍控制器于一身,通過整合RISC微處理器的通用性功能和DSP多媒體通訊的專用特性來達到效率成本和省電的最佳比例。由于SoC在設(shè)計和制造中的復雜性,現(xiàn)在只有為數(shù)不多的大型半導體廠商可以完成。其中,最具有代表性的是Intel公司推出的Xscale架構(gòu)和德州儀器公司(TI)的OMAP架構(gòu),這兩種SoC均定位于面向新一代個人移動信息平臺。本設(shè)計使用的SoC核心是TI公司的OMAP1510,下面將結(jié)合它的結(jié)構(gòu)和功能闡述具體設(shè)計方案。
TI的OMAP1510
OMAP為德州儀器公司(TI)最新推出的一項先進的SoC技術(shù),其最大特點是整合了TI的DSP核心和ARM的RISC微處理器以及各種外圍控制器。各部分的功能和作用簡介如圖1所示。
圖1 OMAP1510的核心部分
OMAP1510SoC的核心有兩部分,一是175MHz的ARM925RISC微處理器,可作為嵌入式操作系統(tǒng)的控制核心,處理人機接口等系統(tǒng)功能主控的相關(guān)運算;另一個是200MHz的數(shù)字信號處理器———TMS320c55x,用于處理大量的實時多媒體信息,如MPEG1、MPEG2、MPEG4或是其它的音頻、視頻信息流。
DSP和ARM RISC微處理器分別由兩個操作系統(tǒng)所控制,DSP采用TI自己的微核心———DSP/BIOSII,可以在上面方便地開發(fā)符合實時運算效率的軟件組件;而ARM微處理器則使用一般的嵌入式操作系統(tǒng)來控制,如我們熟悉的WindowsCE,Linux等。為有效地支持整個OMAP平臺,兩個處理器之間的資料通信就成為關(guān)鍵。針對這一點,TI提出DSP/BIOSBridge作為解決方案,能夠讓應(yīng)用程序開發(fā)人員在雙處理器架構(gòu)下撰寫程序,就有如在單一處理器上一樣方便。
OMAP SoC在開發(fā)工具方面使用的是TI流行的CodeComposerStudio(CCS),這套開發(fā)工具包含了程序編譯器、仿真器以及程序調(diào)試器等,熟悉CCS后,使用這些工具可以很方便地開發(fā)各種基于OMAP的應(yīng)用程序,尤其在撰寫DSP的應(yīng)用組件時,通過CCS可以很容易的在DSP/BIOS上整合支持影像及音頻數(shù)據(jù)處理的組件,而不必花太多心思了解底層操作系統(tǒng)的運作方式。
目前,對于OMAP1510,支持得比較好的操作系統(tǒng)是Symbian公司的EPOC。它的整個系統(tǒng)為Client-Server架構(gòu),可以在Windows操作系統(tǒng)上使用Symbian QuartzC++SDK6.0開發(fā)EPOC上的OMAP應(yīng)用程序,應(yīng)用程序采用OMAP中的DSP用來處理多媒體資料,并在上面執(zhí)行TIDSP/BIOS,而ARM處理一般性工作。舉例來說,在上面開發(fā)的MPEG4播放功能,就是由DSP實現(xiàn)MPEG4的解壓縮功能,在ARM上面執(zhí)行如檔案處理、畫面處理等工作,同時EPOC建立一個Multimedia Server來負責相互之間的信息溝通,并建立相關(guān)的API以利于應(yīng)用程序的擴充。
在系統(tǒng)調(diào)試方面,OMAP提供了一個JTAG接口,在芯片上還整合了多功能的周邊控制組件。例如LCD控制器、內(nèi)存擴充接口,紅外接口、藍牙接口,觸控式面版擴充接口及USB接口等等,可以方便的配合各種輸入輸出設(shè)備使用以及進行功能擴充。
軟件設(shè)計
圖2是本系統(tǒng)完整的軟件構(gòu)架框圖。其中,驅(qū)動程序(DeviceDrivers),微核心(MicroKernel)和系統(tǒng)服務(wù)三層組成了操作系統(tǒng)。與一般的計算機系統(tǒng)不同,由于嵌入式系統(tǒng)的硬件都已經(jīng)固定下來,所以驅(qū)動程序都內(nèi)建在操作系統(tǒng)里。微內(nèi)核完成狹義的“操作系統(tǒng)”功能,如控制計算機的硬件裝置,內(nèi)存和檔案系統(tǒng)的管理,系統(tǒng)資源的分配和內(nèi)存管理等等。
圖2 軟件架構(gòu)框圖
為了實現(xiàn)“跨平臺”要求,操作系統(tǒng)在驅(qū)動程序之上再建立一層硬件抽象層,通過對硬件的抽象描述,可降低和底層硬件的耦合度。即使底層的硬件不同,只要有適當?shù)尿?qū)動程序,整個系統(tǒng)的架構(gòu)不需改變就可以運作。這主要是為以后的系統(tǒng)擴展和移植做準備。
系統(tǒng)服務(wù)指的是位于語言層次,提供程序語言呼叫的一組接口及其操作。其作用類似于Dos下的“int21h”指令,即提供中斷服務(wù)程序。只要應(yīng)用程序向操作系統(tǒng)請求協(xié)助,系統(tǒng)服務(wù)就會被調(diào)用。這一層還包含了對系統(tǒng)語言庫的支持。次上層的圖形用戶接口(GUI)與其它函數(shù)庫的作用是提供可視化組件,供在上面開發(fā)的應(yīng)用程序直接調(diào)用,做成接口。此外,還有一些較高級的函數(shù)庫也在這一層出現(xiàn),如多媒體函數(shù)庫。這一層是決定應(yīng)用程序設(shè)計難易的關(guān)鍵。最上層是應(yīng)用程序,主要包括網(wǎng)絡(luò)瀏覽器、e-mail、文件管理等常用功能。應(yīng)用程序的質(zhì)量和數(shù)量是手持設(shè)備產(chǎn)品主要的競爭力之一,如市場占有率第一的PalmOS機種就有數(shù)萬種應(yīng)用程序,并提供完善的接口供用戶開發(fā)和擴展.
擴展應(yīng)用
如前文所述,OMAP1510提供了多個周邊組件作為擴充功能的接口,只要加入適當?shù)尿?qū)動程序和設(shè)置,即可以方便的進行各種應(yīng)用功能擴充。如其中的藍牙接口,就是為了實現(xiàn)現(xiàn)在對手持設(shè)備越來越重要的無線接入功能而準備。另外,為了成功的過渡到第三代移動通信,OMAP還提供了一個語音通信的接口模塊,開發(fā)者可以選擇將手機的功能集成在其中,做成類似于Smartphone 的產(chǎn)品。以此SoC為核心的PDA ,不但大大提高了原有功能的處理效率,而且具有多媒體和寬帶通訊功能,在服務(wù)商的支持下,可以實現(xiàn)與朋友通過無線數(shù)據(jù)傳輸聯(lián)機玩身歷其境的游戲。
發(fā)展趨勢
未來的手持設(shè)備將是計算、通信、網(wǎng)絡(luò)、存儲、娛樂、電子商務(wù)等多功能的融合。而OMAP 架構(gòu)的SoC ,以其強大的多媒體處理能力,豐富的擴展功能接口和本身的高效、省電等優(yōu)點,廣泛應(yīng)用于實時的多媒體影音數(shù)據(jù)處理、語音識別系統(tǒng)、網(wǎng)絡(luò)通信、無線通訊與電子商務(wù)等領(lǐng)域。目前已經(jīng)有許多世界性的大廠宣布將以O(shè)MAP 作為新一代無線通訊的新信息家電產(chǎn)品核心,如Nokia 、SONY、Handsprin 及Ericsson 等; 此外,還有超過400 家的廠商正在發(fā)展與 OMAP 架構(gòu)相關(guān)的應(yīng)用軟件與周邊裝置。