基于 S3C2440 的嵌入式多媒體控制器設計
根據(jù)當今移動終端設備多功能、低功耗、易于移植的要求,分別從硬件和軟件系統(tǒng) 2 方面提出了一種基于三星μS3C2440 芯片的嵌入式多媒體娛樂控制器的解決方案,同時介紹了利用 CLinux 構造嵌入式系統(tǒng)的方法,并提出了基于MiniGUI開發(fā)多媒體娛樂軟件的基本方案。通過測試,系統(tǒng)能夠滿足用戶在文字、音視頻處理以及常用有線、無線數(shù)據(jù)交換等多方面的要求。
本文引用地址:http://butianyuan.cn/article/202219.htm由于移動通信技術的高速發(fā)展,移動電話早已超出原有的進行語音通信的領域,正逐步成為手持娛樂終端的中心。手機用戶希望自己的手機在完成通信基本功能的同時還能作為 PDA、MP3 播放器、數(shù)碼相機、攝像機、視頻播放機等。因此,設計出多功能、低功耗的多媒體終端至關重要。ARM+Linux系統(tǒng)具有低功耗、易移植、便于定制的特點,所以我們采用其作為系統(tǒng)設計的理想平臺。
系統(tǒng)設計
本方案由硬件系統(tǒng)和軟件系統(tǒng)2 部分構成,其中硬件系統(tǒng)采用三星的具有 ARM920T 核的 16/32 位多功能、低功耗的嵌入式處理器 S3C2440。S3C2440 是韓國三星公司推出的一款高檔的,可用于手持設備、智能家電等便攜產(chǎn)品開發(fā)的嵌入式微處理器,其主頻處理速度達到400 MHz,完全可以滿足音頻和視頻的處理要求。其主控制芯片及豐富的外圍接口電路可用于創(chuàng)建連接各類設備的集成化驅動程
序和協(xié)議堆棧,如讀寫 USB 的接口、MMC/ CF 多媒體卡接口、AC97 音頻接口、無線網(wǎng)絡接口、IrDA 紅外接口等,給用戶提供了多種與其他系統(tǒng)進行信息交互的功能,可以自由地實現(xiàn)文字、聲音和圖像資料的交換。軟件系統(tǒng)包括μCLinux操作系統(tǒng)、圖形用戶接口 GUI,方便用戶根據(jù)自身的需要,開發(fā)相應的多媒體應用程序。uCLinux 操作系統(tǒng)高效穩(wěn)定,提供了完成嵌入功能的基本地內(nèi)核,能夠處理嵌入式任務和用戶界面,更由于其開發(fā)源碼、定制方便以及易于移植,并不需要 MMU 的支持,可廣泛地用于各種嵌入式系統(tǒng)中。
1 硬件系統(tǒng)
硬件系統(tǒng)S3C2440構成核心電路系統(tǒng),該芯片采用RISC結構,除具有一般嵌入式芯片所具有的總線,SDRAM控制器以外,還具有豐富的擴展功能接口,內(nèi)部集成了TFT/ STN LCD和觸摸屏控制器、 USB Slave ,USB Host , Ir2DA紅外接口、 SD MMC存儲卡接口、 AC97數(shù)字音頻接口等大量的功能模塊。同時,通過外擴的PCI總線,使得系統(tǒng)具有很強的擴展和升級能力,提供了極其豐富的人機交互接口。該芯片采用1. 2 V的工作電壓,功耗很低,能夠滿足消費類電子電源對功耗的要求。同時,電源管理模塊能夠提供系統(tǒng)多種電壓供電,包括芯片內(nèi)核電壓采用1. 8 V供電,芯片的I/ O部分采用3. 3 V供電,而片外的一些常規(guī)集成電路又采用5 V供電。智能電源管理模塊很好地解決了對系統(tǒng)各個部分供電要求的不同,降低了功耗,減少了不同電源之間的干擾噪聲,提高了系統(tǒng)的集成度。由于S3C2440芯片內(nèi)部沒有實現(xiàn)PCI總線,為了使系統(tǒng)具有更強的擴展和升級能力,通過外圍的PCI總線控制器芯片實現(xiàn)系統(tǒng)總線的擴展。該芯片支持PCI2. 1協(xié)議規(guī)范,在33 MHz的總線時鐘頻率下,其峰值傳輸速度可達133 MB/ s ,完全可以滿足數(shù)據(jù)傳輸?shù)囊?。通過PCI總線實現(xiàn)藍牙接口和無線網(wǎng)絡接口,滿足用戶遠距離數(shù)據(jù)傳輸和無線網(wǎng)絡的要求。同時,系統(tǒng)可以連接2.5英寸或者1. 8英寸的小型硬盤,實現(xiàn)用戶信息的移動存儲,用戶可以根據(jù)需要擴大存儲容量。由于在系統(tǒng)中采用了PCI總線控制器,擴展出了PCI總線,使得系統(tǒng)在某種意義上相當于一臺小型PC機,用戶可以很方便地進行硬件系統(tǒng)的擴展和升級。為了滿足有些場合的人機交互,不同于一般的PC機系統(tǒng),要求快捷、 方便的操作要求,我們采用6. 4英寸高亮度彩色TFT LCD觸摸屏,用戶與上層多媒體處理軟件的交互直接通過觸摸屏方式實現(xiàn),提供了良好的人機接口。
圖1為系統(tǒng)的硬件結構框圖。
SHAPE *
MERGEFORMAT
嵌入式多媒體控制器硬件結構框圖
2、軟件部分
軟件系統(tǒng)由μCLinux 操作系統(tǒng)、 嵌入式圖形用戶界面支持系統(tǒng) MiniGUI構成。 μCLinux操作系統(tǒng)包括引導裝載程序、 嵌入式Linux 內(nèi)核、 必要的設備驅動程序、 文件系統(tǒng)J FFS2 等,具有高度模塊化、 易于定制、 可移植性好等優(yōu)點。引導裝載程序Boot Loader 是系統(tǒng)加電后運行的第一段軟件代碼。通過這段小程序,可以初始化硬件設備、 建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。每種不同的 CPU 體系結構都有不同的 Boot Loader ,Boot Loader 是嚴重依賴于硬件而實現(xiàn)的。本系統(tǒng)采用基于ARM920T核的Boot Loader ,且根據(jù)系統(tǒng)硬件設備的實際配置修改了Boot Loader 的源程序,使他能夠運行到我們的系統(tǒng)上。所設計的系統(tǒng)提供了最大128 M可選的 SDRAM和最大128 M可選的 FLASH存儲器,系統(tǒng)運行小型的,經(jīng)過裁剪的Linux 微內(nèi)核。微內(nèi)核由內(nèi)存管理、 進程管理和事務處理構成,包括了所有核心的操作系統(tǒng)功能在內(nèi)。μCLinux 操作系統(tǒng)本身的微內(nèi)核體系結構相當簡單,系統(tǒng)要求的網(wǎng)絡協(xié)議和文件系統(tǒng)以模塊形式置于微內(nèi)核的上層,驅動程序和其他部件可在運行時作為可加載模塊編譯或是添加到內(nèi)核,這為構造定制的可嵌入系統(tǒng)提供了高度模塊化的構件方法。用戶可以結合定制的驅動程序和應用程序來實現(xiàn)自己的附加功能,大大減小了內(nèi)核的體積,便于維護和移植。其中,采用J FFS2 日志閃存文件系統(tǒng)管理非易失性存儲中的結構化文件數(shù)據(jù),J FFS2 是專門為像閃存芯片那樣的嵌入式設備創(chuàng)建的,所以他的整個設計提供了更好的閃存管理,為掉電或系統(tǒng)崩潰等突發(fā)事件提供了很好的數(shù)據(jù)保護機制。
MiniGUI 是一種面向嵌入式系統(tǒng)或實時系統(tǒng)的圖形用戶界面支持系統(tǒng),是遵循 L GPL 條款的純自由軟件,提供了完備的多窗口機制,多字符集和多字體支持,BMP , GIF ,J PEG,PCX,TGA 等常見圖像文件的支持等。他是建立在比較成熟的圖形引擎之上的,比如 SVGALib 和 LibGGI ,系統(tǒng)開發(fā)的重點在于窗口系統(tǒng)、 圖形接口之上,MiniGUI提供了大量的圖形應用編程接口,包含全部功能的庫文件大小僅為 300 k左右,特別適合用在嵌入式系統(tǒng)上開發(fā)控制臺圖形用戶界面的應用程序。同時,由于圖形抽象層( GAL)和輸入抽象層( IAL)概念的引入,將底層圖形硬件和上層的圖形操作和輸入處理分離開來,大大提高了 MiniGUI 的可移植性。利用 GAL 和 IAL ,MiniGUI可以在許多圖形引擎上運行,可以很方便地移植到基于ARM920T核的S3C2440系統(tǒng)上。
評論