1. 程式人生 > >Qualcomm,Freescale,MTK平臺下Android開發的比較

Qualcomm,Freescale,MTK平臺下Android開發的比較

這幾年做了一些平臺下的Android專案,下面具體對比一下幾個平臺Android開發,主要涉及的平臺有Qualcomm,Freescale,MTK。這幾個平臺也都非常有代表性:

1.Qualcomm毫無疑問,肯定是通訊這塊的大牛廠商,目前很多通訊協議和專利都跟這個公司有關係,當然它在ARM應用處理器這塊也是有很高的造詣,也是Android聯盟裡面最早加入的成員。收款Android手機G1也是Qualcomm平臺做出來的。CDMA這塊肯定是毫無疑問的老大,VIA的CDMA的東西相對來說穩定性還是成熟度還是較差的。

2.Freescale,在ARM應用處理器這塊一直是一個傳統的大公司跟TI這些晶片都一樣,如果你需要開發一個手機裝置,就需要依賴別人的Baseband晶片(chip on board)或者是模組,如果是3G模組的話,那恭喜你,八成那個模組裡面的核心也是一顆Qualcomm的晶片。Moto的Mailstone就是一顆TI的心,我們之前的電信lifepad就是一顆Freescale的芯,加上了若干不同的3G Modem。

3.MTK眾所周知的臺灣晶片公司,被眾人BS的山寨機之父,但是從領一種角度來說,MTK也是一個偉大的公司,它的出現改變了一個產業,通過這種Trunkey的方法,讓更多的人可以參與到手機的研發(更多的可能就是整合)來。MTK的Android和臺灣的另一家公司很像,訊巨集,他們主要推的都是基於2.75G的Android中低端解決方案。ST-Ericsson的Android解決方案跟這個也很類似。

Qualcomm和MTK方案的比較:

1.市場定位不同,Qualcomm的Android解決方案主要是7K系列和8K系列,都是一個Modem ARM+Application ARM,目標中高階3G解決方案,6K這種低端平臺主要還是Qualcomm自己的BREW方案。MTK的6516這個解決方案,採用的也是Modem ARM(2.75G)+Application ARM的方案,方案雖然相同,但是裡面的ARM核心在效能上卻差了很多,Qualcomm平臺比較差的7X25系列,裡面的Application ARM也是一顆ARM11。

2.開發模式不同,Qualcomm的程式碼基本上還是按照它們自己的開發板去釋出的,所以就是有很多工作需要去做,包括Modem測的程式碼,已經Application測的程式碼都是有大量修改的,Qualcomm這個Android構架中Modem ARM是個主控,並且射頻一些天線選擇以及通訊的SSBI都是允許進行修改的。MTK的就不同了,所有的外設基本都是它們推薦的,Modem測的程式碼也是不允許有任何修改,釋出的程式碼直接就是一個bin檔案。總體來說,MTK的開發難度更小一點,產品化更好一點。

3.程式碼模式不同,總體來說Qualcomm Application ARM釋出的程式碼最接近於開源的Android程式碼,其中的程式碼的下載方式(採用repo),程式碼的管理也是採用了git,不同的版本也是用branch和tag進行了區分。MTK的程式碼就比較簡單了,保留了Android的原始碼,刪除了git相關資訊,並且全部程式碼裡面加上了它們的版權資訊,裡面的makefile構架也進行了修改,當然還是有MTK的風格,採用了大量的perl指令碼進行一些程式碼的生成和編譯,編譯命令也是呼叫的一個perl指令碼。

Qualcomm和Freescale方案的比較:

1.產品成本和效能,如果是需要開發3G手機或者需要進行移動互聯的產品,毫無疑問Qualcomm方案從布板到成本都優於使用一顆效能強勁的Application Processor+模組或者modem,二套執行儲存環境都是硬成本。但是Freescale的優勢有在於強勁的處理能力,以及對於多外設,多媒體,流媒體的處理能力。

2.開發模式,Qualcomm平臺的程式碼會分為Modem測程式碼和Android測程式碼(Application Processor測),開發Qualcomm平臺那就需要二塊一起去配合完成功能。Freescale平臺程式碼就是Android程式碼,不過也是進行過修改的,Makefile有些修改,kernel採用了自己的kernel,modem測如果是模組的話,也就簡單一些,不用操心那麼多,在Application測只需要在ril裡面講相應的AT cmd調通就可以了。如果是chip on broad那就麻煩一些了,就需要按照modem選用的平臺去除錯了。

很多具體細節的比較在這裡我就不進行詳細的描述了,後面如果不涉及到版權和安全問題,還將繼續對這些平臺的開發以及Android進行更深入詳細的分析。