雙模智能手機實現(xiàn)方案
為設(shè)計與實現(xiàn)好整個智能手機,首先需要從用戶的角度來考慮功能需求狀況,同時注意其開發(fā)成本。一般而言,智能手機的硬件平臺須從兩部分考慮,即處理器和外設(shè)。
智能手機比普通手機有更高的性能,是因為所采用的核心處理器的不同。普通手機所選用的處理器的運行頻率不過幾十MHz、最多也只一百多MHz,這種處理器處理基本語音功能還可以,但在處理圖像視頻等多媒體數(shù)據(jù)時性能就遠不夠??捎糜谑謾C處理器有:三星的ARM系列、TI 的OMAP 系列、INTEL 的XSCAL系列等。
隨著智能手機的發(fā)展,需要有更高性能的嵌入式微處理器。
本智能手機選用了Intel 公司的基于XScale 架構(gòu)的PXA270 高性能嵌入式處理器,其最高主頻可達624MHz,支持無線多媒體指令集擴展(Wireless MMX),允許PXA270 以較低的時鐘頻率實現(xiàn)增強的多媒體性能。該處理器提供了非常豐富的外設(shè)接口,如LCD、音頻、USB、I2C、SD/MMC、CF、藍牙、WiFi、數(shù)碼相機、鍵盤等接口[7].PXA270 處理器中采用了Wireless MMX和SpeedStep 兩項Intel專利技術(shù),進一步將高性能計算和動態(tài)電源管理技術(shù)相結(jié)合,使得該處理器與其他同類芯片相比,在多媒體處理能力和功耗方面有著非常大的優(yōu)勢。
在選用傳統(tǒng)通信模塊也有多種選擇,本智能手機系統(tǒng)選用了Philips 的Sysol- 3 通信模塊,該模塊包含了基帶芯片、RF 射頻芯片組、Combo Flash 芯片以及GSM/GPRS終端所需的全部軟件功能。Sysol- 3 有著完善的功能和穩(wěn)定的性能,此外還具有非常小的外形尺寸和非常輕的重量,能夠滿足智能手機、數(shù)碼通信設(shè)備等無線終端設(shè)備的薄、輕、小巧的需求。
現(xiàn)在流行的無線網(wǎng)卡接口主要有兩種,一種是基于標(biāo)準(zhǔn)PCMCIA接口,另一種是基于USB接口。因為Intel Xscale PXA270處理器內(nèi)部集成了雙通道16 位PCMCIA PC Card/CF 控制器,支持8 位/16 位I/O模式和Memory模式的訪問。所以我們采用PCMCIA接口來擴展88W8686 無線網(wǎng)卡。
2、軟件平臺設(shè)計
在設(shè)計好智能手機的硬件開發(fā)平臺后,下面需要根據(jù)硬件平臺設(shè)計軟件開發(fā)平臺。系統(tǒng)的Bootloader 通過編譯移植u- boot來實現(xiàn),它對PXA270處理器有較好的支持。然后移植相應(yīng)硬件設(shè)備的驅(qū)動程序,配置和裁減Linux內(nèi)核,完成對Linux的交叉編譯[8].至于根文件系統(tǒng),采用Busybox工具進行編譯生成,并使用mkfs.jffs2 工具創(chuàng)建JFFS2 類型的文件系統(tǒng)映象。最后逐一將u- boot、Linux內(nèi)核及文件系統(tǒng)映象燒寫到Flash 中進行測試運行。
3、DMS SKD層的設(shè)計
關(guān)于DMS(Dual Mode Services)SDK層,終端研發(fā)人員既可以自己設(shè)計實現(xiàn),也可以通過購買使用第三方提供的SDK解決方案,諸如PicoMobile和Ecrio等公司就提供此類方案。SDK的設(shè)計既需要滿足本系統(tǒng)的功能要求,同時也要滿足模塊化、簡約化的要求,從而方便日后進行新功能的擴展與集成。SDK層的工作主要是基于SIP協(xié)議、IMS通信的信令流程、GSM通話信令來進行設(shè)計與實現(xiàn)。與通話有關(guān)的API的實現(xiàn)過程主要是基于SIP 協(xié)議通過發(fā)送或接收相應(yīng)的SIP 信令來實現(xiàn)與服務(wù)器的交互,與硬件有關(guān)的API主要是通過調(diào)用相關(guān)驅(qū)動程序來實現(xiàn)。以上主要實現(xiàn)了與電話業(yè)務(wù)相關(guān)的功能,根據(jù)業(yè)務(wù)的需要,還可以在此基礎(chǔ)上對SDK進行擴展。
4、DMS 后臺服務(wù)設(shè)計
DMS Daemon Service,即DMS 后臺服務(wù)程序,是與DMSSDK層(主要是VCC Engine)交互的主體部分,它的實現(xiàn)工作主要是基于Qtopia 把DMS SDK層提供的API 封裝成可供上層應(yīng)用調(diào)用的公共接口。
其中DMSDaemon 是整體后臺服務(wù)類;DMSTelephonyService負(fù)責(zé)實現(xiàn)電話相關(guān)的功能接口;IMSControlService用于響應(yīng)上層控制程序的IMS服務(wù)請求;一切與底層DMS SDK子系統(tǒng)有關(guān)的調(diào)用由DMSLayer來完成。
三、WIFI驅(qū)動程序設(shè)計
同有線網(wǎng)絡(luò)一樣,接入無線局域網(wǎng)需要網(wǎng)卡設(shè)備,目前WLAN網(wǎng)卡常用的接口有PCI、USB、PCMCIA和CF 卡接口,嵌入式系統(tǒng)常用的WLAN 網(wǎng)卡接口一般有PCMCIA、USB 和CF卡接口,其中PCMCIA和CF卡接口邏輯類似,在本系統(tǒng)的硬件設(shè)計中,采用PCMCIA接口擴展成WLAN接口,接入WiFi 無線網(wǎng)卡。因此如果想要使用無線網(wǎng)卡,需要實現(xiàn)Linux下PCMCIA接口的驅(qū)動程序和具體無線網(wǎng)卡設(shè)備的驅(qū)動程序。Linux內(nèi)核對常用的無線局域網(wǎng)卡的支持都很好,通過內(nèi)核配置時選擇Networkdevice supportàWireless LAN,實現(xiàn)對無線網(wǎng)絡(luò)的支持,因此無線網(wǎng)卡的驅(qū)動程序移植比較簡單。
評論