基于ARM核與DSP核組成的OMAP5910嵌入式系統(tǒng)
開放式多媒體應用平臺(Open Multimedia Application Platform,OMAP)處理器系列包括應用處理器及集成的基帶應用處理器,具有高性能、實時處理及超低功耗的特點,廣泛應用于PDA、Web記事本、遠程通信和醫(yī)療器械等。
OMAP5910處理器是由TI公司的應用最為廣泛的TMS320C55x DSP內(nèi)核與低功耗、增強型ARM925微處理器組成的雙核應用處理器,是OMAP系列的最新成員。TMS320C55x系列可提供對低功耗應用的實時多媒體處理的支持,而ARM925 MPU 可滿足控制和接口方面的處理需要。OMAP5910處理器同時擁有二種產(chǎn)品的最佳性能,包括TI TMS320C55x DSP內(nèi)核的實時處理性能與低功耗、TI增強型ARM925微處理器的靈活性,且通過優(yōu)化處理器間的通信機制,使設(shè)計者可同時享受這二種處理器的最大優(yōu)點?;陔p核結(jié)構(gòu),OMAP5910具有極強的運算能力和極低的功耗,一方面產(chǎn)品性能高、省電,另一方面同其他OMAP處理器一樣,采用開放式、易于開發(fā)的軟件設(shè)施,支持廣泛的操作系統(tǒng),如Linux、Windows、WinCE、Nucleus、Palm OS、VxWorks、Java等。此外,還可以通過API及用戶熟悉且易于使用的工具優(yōu)化其應用程序。
1 OMAP5910的結(jié)構(gòu)及特點
OMAP的結(jié)構(gòu)圖如圖1所示。
1.1 OMAP5910處理器的主要特點
(1)高性能。采用低功耗、高性能的32位ARM9TDMI內(nèi)核和TMS320-C55x DSP內(nèi)核,工作頻率高達150MHz;采用5級的整數(shù)流水線結(jié)構(gòu);支持多媒體處理技術(shù),采用的是TMS320C55x DSP內(nèi)核,增強了對視頻和音頻的解碼能力。
(2)低功耗。多電源管理模式,雙內(nèi)核電壓供給為1.6V;ARM9TDMI內(nèi)核具有16KB指令和8KB數(shù)據(jù)Cache,TMS320C55x DSP內(nèi)核具有24KB的指令Cache;支持2.75V的存儲器和3.3V的I/O接口。
(3)I/O擴展。有4個16位的FLASH/SRAM的存儲空間,1個16位的SDRAM存儲空間。
(4)外圍控制接口。9通道系統(tǒng)可配置DMA控制器;LCD控制器,支持專用的LCD DMA方式,并支持STN(passive monochrome,俗稱單彩)、TFT(active color,俗稱真彩)、STN(passive color,俗稱偽彩)顯示;串行端口(3個UARTs、IrDA、I2C、3個McBSPs、2個MCSIs、MicrowireTM、PWT、PWL、uWire、HDQ/1-Wire);USB接口;支持MMC/SD卡。
(5)時鐘控制。時鐘源:32.768kHz的振蕩器;12MHz/13MHz的振蕩器;可編程的內(nèi)核鎖相環(huán)。
(6)電源管理。Awake模式(正常運行模式)、Big-sleep模式(省電模式)、Deep-sleep(省電模式)模式。
(7)封裝形式。289腳GZG BGA封裝或GDY BGA封裝。1.2 TI925T(ARM9TDMI)內(nèi)核
TI925T(ARM9TDMI)內(nèi)核是采用5階段管道化流水線32位的RISC處理器架構(gòu)的體系結(jié)構(gòu),并采用ARM9作內(nèi)核,同時配備Thumb擴展。它能夠處理32位或者16位的指令和8位、16位、32位的數(shù)據(jù)。這款新型高性能、低功耗的微構(gòu)架兼容ARMv4T指令集,并通過采用協(xié)處理器CP15使體系結(jié)構(gòu)得到增強。系統(tǒng)中的控制寄存器可通過對協(xié)處理器CP15的讀寫來對MMU、Cache和讀寫緩存控制器進行存取操作。這種微構(gòu)架在ARM核的周圍提供了:指令與數(shù)據(jù)存儲器管理單元,指令、數(shù)據(jù)和寫緩沖器,性能監(jiān)控、調(diào)試和JTAG單元以及協(xié)處理器接口,MAC協(xié)處理器和內(nèi)核存儲總線。
TI925T 的MMU具有2個64個項的轉(zhuǎn)換旁路緩存器(TLB)用于指令和數(shù)據(jù)流,每項均可映射存儲器的段、大頁和小頁。為了保證內(nèi)核周期的存取指令和數(shù)據(jù),TI925T包含了分別獨立的1個16KB的指令Cache和8KB的數(shù)據(jù)Cache。二者獨立的好處是可以在同一時鐘周期內(nèi)讀取指令和數(shù)據(jù),而不需要雙端口的Cache。指令和數(shù)據(jù)Cache都是2路相互關(guān)聯(lián)的Cache,以16B為1塊進行操作,并采用最小最近使用(LRU)算法以刷新存儲。另外,TI925T還提供了寫緩沖的性能用于提升內(nèi)核,其能夠緩沖數(shù)據(jù)的容量高達17字。
1.3 TMS320C55x內(nèi)核
TMS320C55x內(nèi)核的主要特點是:有1個64×8位的緩存隊列(Instruction Buffer Queue),2個17位×17位的乘法累加單元(MAC),1個40位的算術(shù)邏輯單元(ALU),1個16位的算術(shù)邏輯單元,1個40位的桶形移位器(Barrel Shifter)和4個40位的加法器。另外還有12條獨立的總線,即:3條數(shù)據(jù)讀總線,2條數(shù)據(jù)寫總線,5條數(shù)據(jù)地址總線,1條程序讀取總線和1條程序地址總線。此外,還有用戶可以配置的IDLE域。內(nèi)核主要由4個單元組成:指令緩沖單元(I單元)、程序流單元(P單元)、地址數(shù)據(jù)流單元(A單元)和數(shù)據(jù)運算單元(D單元)。
1.4 系統(tǒng)控制功能
OMAP5910微處理器的系統(tǒng)控制模塊提供了實時時鐘(RTC)、看門狗(WT)、中斷控制器、功率管理控制器、復位控制器和2個片上振蕩器。
1.5 時鐘和電源管理
OMAP5910微處理器提供了2個振蕩器以輔助管理電源耗損。設(shè)計系統(tǒng)時,在待機模式下可以直接關(guān)閉12MHz的振蕩輸入,只留下32kHz振蕩器來維持系統(tǒng)運作。這樣,不但可以保證系統(tǒng)運行,讓需要維持運行的周邊正常操作(例如用戶可以通過Keypad等輸入裝置來喚醒整個系統(tǒng)),而且可以很容易地關(guān)閉大部分接口設(shè)備,達到控制電源耗損的目的。
電源管理有3種工作模式:Awake模式、Big sleep模式和Deep sleep模式。Awake模式下,整個芯片運行在峰值頻率,32kHz振蕩器和12MHz振蕩器正常工作。當時鐘請求時,可使能外圍器件的12MHz時鐘,并由ULPD DPLL或APLL產(chǎn)生48MHz時鐘。當芯片產(chǎn)生IDLE請求時,芯片工作:在Big sleep模式下,DPLLs 1、內(nèi)部12MHz時鐘被關(guān)閉。在Deep sleep模式下,只有32kHz振蕩器正常工作,整個系統(tǒng)工作將處于最低功耗狀態(tài)。
1.6 EMIFS、EMIFF接口和存儲器
在OMAP5910微處理器核心中,提供了2個擴充內(nèi)存接口:EMIFS和EMIFF。EMIFS接口可以支持128MB的異步靜態(tài)存儲器(ASRAM)、FLASH和ROM。EMIFF接口可以設(shè)定為用來操作同步動態(tài)存儲器(SDRAM),其尋址空間高達128MB。這2個內(nèi)存接口都是獨立運作,可以同時經(jīng)由微處理器核心存取數(shù)據(jù),也可以利用直接內(nèi)存存?。―MA)數(shù)據(jù)。另外還有一個內(nèi)部存儲器區(qū)(IMIF接口的SRAM),用來連接OMAP5910微處理器內(nèi)部的內(nèi)存,實現(xiàn)常用的數(shù)據(jù)存取,如用作微處理器液晶屏幕顯示的圖像緩沖器。而內(nèi)存間數(shù)據(jù)傳輸?shù)目刂苿t由Traffic Controller(流量控制器)來控制,Traffic Controller會對各種傳輸需求依設(shè)定的優(yōu)先級來執(zhí)行數(shù)據(jù)的傳送。
1.7 外圍控制模塊
OMAP5910微處理器有9個獨立通道和7個接收/發(fā)送端口的DMA控制器。DMA控制器可響應內(nèi)部和外部設(shè)備的請求,在MPU TI925T(ARM9TDMI)運行條件下,完成外部寄存器、內(nèi)部寄存器和外部設(shè)備之間的數(shù)據(jù)傳輸。系統(tǒng)DMA的設(shè)置取決于MPU TI925T(ARM9TDMI)內(nèi)核。
此外,OMAP5910微處理器還有一個獨立的DMA通道供LCD控制器專用。LCD控制器提供了支持被動彩色方式STN(偽彩)和主動彩色方式TFT(真彩)顯屏接口,并支持被動單色STN格式。OMAP5910擁有自己專用的通道DMA控制器來控制面板的顯示,所支持的最大顯示分辨率為1024×1024象素,在單色模式下,能支持15級灰度。在STN顯示模式下,彩色顯示最高支持3 375種顏色;而在TFT顯示模式下,彩色顯示最高支持65 536種顏色。LCD控制器將幀緩存中的象素編碼值對應12位寬的256個入口的調(diào)色板RAM,并根據(jù)數(shù)據(jù)寬度決定彩色的數(shù)量。通常可選用片內(nèi)共享的SRAM或者通過EMIFF接口選用外部SDRAM來當作幀緩存器(為優(yōu)化性能推薦選用片內(nèi)共享的SRAM)。
OMAP5910微處理器支持的串口包括:基于通用串行總線2.0版本和開放式主機控制接口1.0a版本的USB Function and Host模塊接口;3個通用異步收發(fā)口(UARTs),其中2個UARTs具有自動調(diào)節(jié)波特率的性能,其波特率調(diào)節(jié)范圍在1 200bps~115.2kbps之間,而另外1個URAT通常用作一般的URAT或者用作IrDA接口使用;3個多通道緩沖串行口(McBSPs)可提供高達128個通道的高速、全雙工通信的串行接口,可直接與T1/E1調(diào)幀器相連接,并支持兼容MVIP、ST-BUS、IOM2、AC97、I2S等協(xié)議的設(shè)備;2個多通道串行口(MCSI)提供了全雙工通信以及對主/從時鐘的控制功能,同時為TMS320C55x 內(nèi)核對外部設(shè)備如:多媒體數(shù)字音頻解碼編碼器或其他模擬轉(zhuǎn)換器等的訪問提供便利的通信接口;基于Philips I2C-BUS 2.1版本的I2C Master/Slave接口(支持多主機(Multimaster)模式),即在I2C總線上的設(shè)備(包括OMAP5910在內(nèi))都可充當接收機或發(fā)送機;支持MMC/SD或SPI協(xié)議并傳輸串行數(shù)據(jù)的MMC/SD卡接口和1個SPI接口。
2 OMAP5910在多媒體通信技術(shù)中的應用和開發(fā)
隨著通信技術(shù)的發(fā)展,新一代移動通信設(shè)備所提供的服務(wù)不僅是話音通信,而且包括移動電子商務(wù)、語音識別、音頻和活動視頻流等復雜的業(yè)務(wù)。因此新的移動通信設(shè)備需要具有更強大的信號處理能力和壽命更長、體積更小的電池。這對于設(shè)備制造商來說,就需要有一個既高效又節(jié)能的系統(tǒng)解決方案。由TI公司推出的面向3G(第三代)無線終端的開放式的多媒體應用平臺(OMAP)就是能滿足上述需求的一個較好的解決方案。
OMAP架構(gòu)的微處理器核心中,以O(shè)MAP5910為例,采用了雙處理器的結(jié)構(gòu),即將高性能、超低功耗的TMS320C55x核與增強型的RISC ARM9TDMI處理器相結(jié)合的結(jié)構(gòu),即采用DSP進行音/視頻信號處理,而RISC處理器起系統(tǒng)控制的作用。這種結(jié)構(gòu)有利于在減少功耗的前提下最大限度地提高3G終端系統(tǒng)的整體性能。通過比較和測試,在相同的信號處理任務(wù)下,單獨的RISC處理器上執(zhí)行所需的時鐘周期數(shù)是TMS320C55x的3倍,其功耗是TMS320C55x的2倍。而TMS320C55x則不同,因其強大的數(shù)字信號處理能力使OMAP平臺非常適合多媒體視頻和音頻的處理,能夠充分實現(xiàn)支持未來采用MPEG4視頻的3G無線通信協(xié)議,且其多媒體通信OMAP的核包括了2個外部存儲器接口和1個內(nèi)部存儲器接口,以及一些與片內(nèi)外設(shè)或外部設(shè)備連接的接口等。
與2G(第二代)手機中大量使用的C54x核相比,OMAP的DSP具有2個主要特點:(1)假設(shè)大多數(shù)2G手機的功能是固定的,軟件存儲在片內(nèi)ROM之中可以直接執(zhí)行,則OMAP會支持動態(tài)的應用環(huán)境,且軟件可以從片外下載,并通過片內(nèi)高速指令緩沖存儲器來執(zhí)行。這就意味著帶有一個DSP實時操作系統(tǒng),就可以管理不斷變化的信息負荷。(2)支持一系列半定制可編程硬件協(xié)處理器。在特定應用中,采用這種方案可以顯著提高性能、功率和效率。例如在電視會議具體的OMAP的體系結(jié)構(gòu)中,可以利用3個視頻協(xié)處理器(分別負責運動估計、DCT和反DCT變換計算及半象素內(nèi)插)與DSP配合工作,用以實現(xiàn)CIF幀(處理速度為每秒10幀)的MPEG4編解碼,進而可以降低50%的DSP負荷,使DSP能同時處理其他業(yè)務(wù)。
OMAP平臺所具有的上述2個特點使其可以提供一種新的功能,即動態(tài)下載和升級。通過下載應用程序可以為手機添加新的功能,如同今天的PC用戶一樣可從互聯(lián)網(wǎng)上下載應用程序。當然,這種動態(tài)下載需要DSP提供可編程的性能并得到OMAP平臺應用程序接口(API)的支持。
在OMAP系統(tǒng)中還提供了一個DSP/BIOS橋,極大地增加了OMAP的功能和易用性,為應用程序設(shè)計者提供了通用處理器與DSP任務(wù)之間溝通的橋梁,因而可以在OMAP平臺開發(fā)環(huán)境下與在單DSP處理器環(huán)境下一樣進行開發(fā)和調(diào)試,而開發(fā)者都無需對2個處理器進行單獨編程,無需面對不同的編程語言環(huán)境等。因此熟練的DSP程序設(shè)計者能夠迅速地適應和掌握那些用于OMAP結(jié)構(gòu)上的技術(shù),而縮短產(chǎn)品的開發(fā)時間。基于OMAP平臺,用戶能夠開發(fā)出眾多的應用軟件,例如調(diào)制解調(diào)器功能和語音識別、安全算法和語音、視頻流等2.5G(2.5代)、3G應用所要求的信號處理能力。
3 結(jié)束語
OMAP5910 處理器已在 2.5G/3G 手持終端及 PDA 市場上具有強勁的發(fā)展勢頭。目前已經(jīng)有愛立信、諾基亞、索尼、Handspring等廠商選擇了TI基于C55x的OMAP硬件和軟件構(gòu)架,作為3G手機的處理器引擎。OMAP平臺也得到了微軟Window CE操作系統(tǒng)、Sybian的EPOC操作系統(tǒng)和SUN的Java 2平臺的支持,因此幾乎能對所有2G、2.5G和3G的無線通信協(xié)議進行兼容。在我國具有自主知識產(chǎn)權(quán)的TD-SCDMA 3G標準終端的研制中也采用了基于C55xS的基帶信號處理技術(shù)。OMAP5910 處理器將 OMAP 平臺固有的優(yōu)勢進一步擴展到了諸如數(shù)字媒體、生物特征識別、定位服務(wù)、增強型游戲及遠程通信等新的客戶、商業(yè)及工業(yè)應用領(lǐng)域。