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