手機裡的G速一哥:高通 Snapdragon

手機裡的G速一哥:高通 Snapdragon

這條龍最近很熱門,因為目前的高階手機核心時脈第一個突破G(點?)的,就是高通Snapdragon這條龍。好吧,其實Snapdragon的翻譯不是龍,而是草,是一種金魚草,據說長的像金魚,而且也是7月12日的誕生花語,表面上悠遊自在,骨子裡充滿知識與內涵。 翻做金魚草真的一點霸氣都沒有了,所以還是叫Snapdragon就好。這顆處理器算是許多應用處理器的開路先鋒,首先導入Cortex-A8(或者該說是ARMv7),並且應用在手機、Smartbook產品上的就是它。在所有手機應用處理器中,是第一個,也是目前唯一一個時脈破G的,也就是說,只要手機廣告詞上有個1GHz處理器核心,那就是它。目前已經有HTC、TOSHIBA、Google(骨子裡也是HTC)、Acer加入,未來NOKIA、LG、SonyEricsson也會採用這顆處理器,HP及聯想不久前也宣布要推出基於Snapdragon的Smartbook,高通真的是意氣風發,不可一世啊。

手機裡的G速一哥:高通 Snapdragon

▲由HTC打造,掛上Google名號的Nexus,核心也是鼎鼎大名的Snapdragon。

其實高通也不會太輕鬆,畢竟後起之秀非常多,每波後浪的應用處理器規格又一個比一個更像怪物,好在,高通的優勢短期間內還沒有幾家廠商能夠取代,那就是….(高通:整合性啦!)

身為目前業界唯一的G級產品,Snapdragon的核心到底有何玄機?

手機上的十核心

一如NVIDIA的Tegra,我們也把Snapdragon分為幾個區塊來看,Snapdragon整整有十個核心,贏過Tegra一代的7個與二代的8個核心。大家不要把中間那塊logo也算進去喔。不好意思,Snapdragon架構圖找不到清晰版的,如果有朋友在路上撿到高解析的圖檔,也請幫忙pass一下唷,乾溫。

手機裡的G速一哥:高通 Snapdragon

▲Snapdragon架構圖。

從架構圖來看,先從核心部分的processors區塊說起,裡頭包含應用處理計算與MODEM兩部分,其中MODEM與MSM7系列用的一樣,是由ARM9加1顆MDSP組成。這顆MODEM完全用來處理通訊功能,不具備通用處理能力,跟Tegra的功耗管理模組不同,沒辦法在特殊狀況下取代應用處理器核心。另外由於用上了DSP,還有高達1GHz的核心時脈,因此Snapdragon的功耗管理並沒有Tegra那般出色。不過也已經遠遠勝過同時期的Cortex-A8競爭產品了。

應用處理核心部分相當值得大書特書,它是基於ARM的ARMv7指令集重新設計出來的架構,這是在2005年,高通宣布採用ARM的新指令集設計的新核心,名稱為Scorpion(天蠍座),目標時脈是設定在1GHz,隔年就發表了Snapdragon這顆應用處理器。

之前我們也提過,高通的ARMv7核心其實與本家Cortex-A8非常相似,都是超純量架構,dual-issue,且支援了NEON這個DSP核心(被高通改名為VeNum),因為基本架構相通,ARM的開發工具都可以順利的在高通Scorpion上執行。

手機裡的G速一哥:高通 Snapdragon

▲青出於藍更勝於藍的Scorpion核心

平平是A8,高通的大不同

但Scorpion也不是完全照抄Cortex-A8喔,不然他的貴33指令集授權就沒有意義了。其中最大的改變,就是Scorpion的內部DSP,也就是NEON(高通:要叫VeNum!)處理單元可以同時運算128bit的資料,是Cortex-A8版NEON的兩倍,而Scorpion中的SIMD資料路徑,可以在不用的時候關掉其中一半,多少省一些電。且Scorpion的管線階層也比Cortex-A8稍高,Scorpion具備了13階load/store管線,以及兩個整數處理管線,其中一個是加法減法器,十階管線,另一個是類似MACs的十二階算數暫存器,可進行較複雜的運算。Scorpion也具備了一個高達23階的浮點/SIMD管線,而其VFPv3浮點處理單元也管線化了,這也與Cortex-A8不同。

較深的管線理論上可以讓Snapdragon輕鬆達到更高的時脈,但我們看到,原始65nm製程Cortex-A8可達1.1GHz,Scorpion則是約1GHz左右,怎麼會這樣咧?其實這是顧慮到功耗,當Cortex-A8以1.1GHz執行時,功耗太高,並不適合手機應用。因此你會發現採用TI高階Cortex-A8應用處理器的手機,核心時脈最高都只有600MHz左右。而在類似的功耗條件下,高通可以達到1GHz,如果降頻成600MHz執行,核心功耗就只需TI競爭產品的三分之二,由此可見高通在功耗管理方面的高明之處。此外,整合了3G晶片也有助於降低整體功耗。

而Scorpion核心部分的變動,也讓它在相同時脈下的效能比原始的Cortex-A8高一些。比方同樣是1GHz時脈,Cortex-A8可達2000DMIPS,Scorpion則可達2100DMIPS,大量串流運算環境之下,效能差距還會更高。

放影片靠處理器

至於在通訊處理單元部分,與MSM7系列相同,支援了目前熱門的各種2/3G通訊標準,也整合了新一代的GpsOne,可以藉助AGPS來達到更快速與準確的定位能力。通常這會與RF介面合併規劃,不過高通的區塊圖是分開的,也就由它囉,RF介面與MSM7系列也相同,要連接到外部的Transciver與Reciver晶片,才能執行各種通訊功能。

接著在影像與音效部分,都只包含Codec,不含任何硬體處理能力。也就是說,影片、音效的編解碼處理都要透過應用處理器的Scorpion核心與ADSP來進行,而應用處理器的時脈高,效能也好,所以處理起來也不難,但是影片播放時的功耗表現就不是那麼漂亮了。所以我們看到機王HTC HD2,放影片的話一兩個小時就沒電了,跟Tegra號稱十個小時以上的連續播放時間完全不能比。

2D加速很順暢

在繪圖核心方面,整合的是AMD Imageon家族中的Z430核心(後來AMD把Imageon賣給了高通),另外還整合了部分2D處理電路,比MSM7系列強化許多。因此,在Snapdragon平台上拉動視窗、移動2D畫面,要比在MSM7系列核心平台上順多了,算是把之前不足的部分給補足了。

至於顯示與周邊連接部分(這兩個區塊應該也要算成同一類),外部連接部分與MSM7系列類似,都支援了主流的連接介面,而顯示介面最高可外接1280*720解析度的顯示器,而Snapdragon最高能吃的影片解析度也剛好是720P。不過在下一代雙核Snapdragon(8×72)中,外部顯示最高支援到1440*900,核心卻支援1080P編解碼,這樣的設定就有點狗屁不通了。

封閉的開發平台

從65nm的成功,高通下一步就是推出45nm低功耗版本,並且把時脈拉高到1.3GHz,讓競爭者落後的距離更遠。當然,最新的ARM雙核架構高通也不可能放過,不久前公布的消息中,高通已經表示今年底會推出雙核版本的Snapdragon應用處理器,而實際產品約明年就可以看到,面對競爭者環伺,高通顯得老神在在。

最後,我們來談談高通的應用開發,高通其實是家非常封閉的公司,從MSM7系列,到Snapdragon,都沒有釋出過任何SDK給應用開發人員。他們的概念就是只提供通用開發平台,而不讓別人針對硬體開發應用程式,能動到硬體核心的,只有高通自己。這也造成了過去在MSM7時代,應用程式只能透過標準API來進行加速動作。

這點對軟體業界其實是好事,但是高通對於這些通用API的支援態度也不算太好。舉例來說,當初其顯示驅動有極大的缺陷,2D/3D效能非常差,影片只能讓WMP支援H.264硬體解碼,第三方影片播放程式根本接觸不到核心部分,也沒有現成API可以使用。雖然有一部分歸咎於微軟WM平台的問題,但高通的不積極還是讓第三方應用開發者碰了一鼻子灰。

手機裡的G速一哥:高通 Snapdragon

再看看韓國三星,其對本家應用處理器就採取開放態度,不僅釋出了針對各作業平台的SDK,從桌面2D/3D API,到光線、動作感應都有各自的SDK可應用,改版速度也相當驚人。雖然這些並不是業界的標準API,而是針對特定硬體的API,但是讓開發者感到窩心的話,自然也願意全力支持。我們看三星的應用程式商店,已經打的有聲有色,高通卻沒有半個類似的平台可以發揮,少了硬體的開放,也失去了藉由拉近程式設計師,來達到更高市佔率,甚至創造特定規格獨佔的機會。(高通:我們光靠授權IP與賣應用處理器就賺翻了,又何必淌這個渾水?)

手機裡的G速一哥:高通 Snapdragon

▲三星的SDK支援度高,因此有相當多第三方軟體作者為其開發專屬應用軟體及遊戲。

Dark Eric
作者

使用 Facebook 留言
519c54b13372c281305d96a6d2390379?size=48&default=wavatar
1.  XD (發表於 2010年3月01日 10:54)
又是高通又是snapdragon...這名字好有大陸味:P
D35cdd31de2f00fe4b385a73b272f841?size=48&default=wavatar
2.  Yapin (發表於 2010年5月26日 17:10)
請教專家您知到哪裡買得到snapdragon開發版?多謝!
發表回應
謹慎發言,尊重彼此。按此展開留言規則