軟件測試基於嵌入式Linux的PMP系統設計與實現(上) 嵌入式軟件測試
關鍵字:PMP 嵌入式Linux PMP系統簡介
便攜式多媒體播放器(PMP),也就是通常人們所說的MP4,已成為繼MP3以後消費類產品的一個新熱點。PMP的主要優點是:攜帶方便,能夠直接播放高品質音/視頻文件;也可以浏覽圖片,以及作為移動硬盤、數字銀行使用;此外,還有FM、游戲等功能。PMP播放器不僅需要對機體大小有所限制,更重要的是需要一種壓縮效率更高、畫面質量更高的視頻壓縮技術,以及相關編解碼芯片。本文介紹了此PMP系統的軟、硬件設計,重點在軟件設計,此PMP系統方案現在已經進入量產階段。
PMP系統的硬件設計
現階段PMP內部核心架構,大多都是采用CPU搭配DSP的方式。其中,DSP負責編/解碼工作;CPU則是針對文件管理、存取,以及使用接口、周邊組件的控制等進行處理。另外,還需考慮整合硬盤、存儲卡及LCD顯示屏等組件,以及與外部USB接口、操控按鈕間的搭配等問題。
為符合上述要求,PMP的設計需要內建視頻編/解碼芯片,作為模擬與數字兩種信號間轉換之用。另外,設計還需要考慮:用來連接視頻譯碼器與DSP的總線;LCD顯示屏的驅動電路;IDE接口與硬盤控制芯片間的溝通等。
圖1 DM320的結構圖
本系統整體方案是建立在TI DM320基礎之上的。DM320 是一款支持視頻編/解碼的帶有雙CPU核的處理器。針對多媒體器件做專門的處理, 它可以直接支持視頻輸入/輸出, 可以方便的擴展音頻的輸入/輸出, 支持USB ,SDRAM,FLASH,CF/SD/MMC/MS/MS Pro 接口。DM320的結構圖,如圖1所示。
TI DM320將C5409與ARM926整合,即將CPU與DSP同時集成在DM320核心內。芯片采用32MB或64MB容量的SDRAM,以及4MB的閃存,用作加載與存放操作系統。DM320本身已內建LCD控制器、USB2.0 OTG接口控制器,同時讓CCIR-656格式信號經由總線在視頻譯碼芯片與DM320間傳送。由於NTSC/PAL編碼器也被整合在其中,因此也可直接進行復合視頻輸出。
圖2 DM320硬件系統的整體框架圖
另一方面,DM320還可支持CCD/CMOS感光組件的連接,使得未來PMP要導入DSC、DV等更為容易。對於存儲卡的兼容性部分,除現階段主流的CF、SD及MMC外,還包括Memory Stick。此外,此芯片還提供2組RS232串行端口、1組JTAG接口,能支持更多的外圍設備。DM320硬件系統的整體框架圖,如圖2所示。
圖3 PMP軟件設計框圖
PMP系統的軟件設計
因為要兼顧到高質量的音視頻效果、多種外設和有限的系統資源,PMP軟件系統的設計變得相對復雜。系統設計將軟件分為三層結構,如圖3所示。
該系統的最底層是操作系統層,其中包括bootloader引導程序,主要完成系統從FLASH的啟動,LOGO的顯示,以及OS的引導。嵌入式Linux主要包括適合在TI DM320上運行的Linux操作系統,以及各種外圍設備的驅動程序。第2層為CODEC和MMI核層,MMI核包括第3層主GUI和各種應用程序所依賴的各種框架結構和數據結構,如窗口管理,定時器管理等。CODEC部分包括音頻的編解碼程序(主要由ARM實現)和圖像的編解碼程序(主要由DSP實現)。最上層為主GUI和各種應用程序。應用程序包括:FileManager(用來浏覽存儲器中的文件),VideoPlayer(播放視頻文件),AudioPlayer(播放音頻文件),ImageViewer(浏覽圖片),FM(收音機),Games(游戲),Resumes(重新播放音/視頻文件)。