2010.01.21 17:30

圖解ARM核心,防火長城、禁止偷菜、手機看片都靠它

ADVERTISEMENT

我們簡單談到了手機上的應用處理器,相信大家都有了基礎的理解。當然,其實應用處理是很廣泛通用的名詞,理論上,同一種架構的SoC(系統單晶片,也就是一顆晶片上包含一整個系統所需的各種能力)被用在不同的產品上,還可以再冠上不同的名稱。 比如說用在網通產品上,就可叫做網路應用處理器,被用在手機上,當然就是手機應用處理器,如果是用在多媒體設備中(機上盒、PMP等),就可以叫做多媒體應用處理器。你知道中國大陸和諧的網路世界是怎麼來的?這要拜某家美國公司的高效率通訊內容處理器所築起的網路長城,該處理器也是很多公司行號裡面負責阻擋大家上Facebook偷菜的幫手之一。

▲應用處理器的基本架構,圖為NVIDIA的Tegra應用處理器。

這些應用處理器的架構大同小異,舉例來說,它們可能都包含了CPU核心(ARM或MIPS等等)、顯示核心、DSP、特定的硬體處理線路(安全、多媒體編解碼等),有些特殊的應用處理器也會加入類似FPGA之類的可程式化元件。

ADVERTISEMENT

CPU核心部分,由於本系列主題還是ARM,所以其他處理器IP的討論以後再說,這次我們先從主流ARM11架構切入,再延伸到最高階的Cortex系列。

承先啟後的ARM11

顧名思義,ARM11就是ARM的第11代處理器IP,但是它的指令集則是演進到第六代(ARM9與Xscale屬於第五代),與之前的長輩們相較之下,最大的不同就是支援了單一指令多重資料(SIMD),讓特定演算法的應用程式效能獲得數倍成長。此外,支援Jazelle這個Java解碼加速功能,幫助網路裝置強化Java應用的效能。這對於手機、PDA、MID、Smartbook等Java程式平台相當有用。

ARM11算是最成功、也最流行的ARM核心之一,他還有個兄弟叫做ARM11 MPCore,顧名思義,就是多核心版本的ARM11。跟原本的ARM11比較起來,MPCore的應用並不多,主要是因為MPCore推出後不久,效率更高的Cortex-A8/A9就出現了,這讓MPCore核心的應用處理器(如NVIDIA的Tegra)還沒普及,就已經要改朝換代了。

ADVERTISEMENT

其實ARM11也是ARM架構中的里程碑,比如說,SIMD處理能力,加入32位元處理能力的Thumb-2(前一代的Thumb只能處理16位元指令),都是在此世代中導入。ARM11也原生支援外掛輔助處理器(比如說DSP),能夠提供更廣泛的應用設計,這些特色也都被沿用到最新的ARM核心中。

▲前陣子相當熱門的三星i8000,其應用處理器S3C6410就是基於ARM11體系。

ADVERTISEMENT

ARM11核心家族相當多,比如說高通MSM7系列、NVIDIA的Tegra、三星的S3C64×0、TI的OMAP2系列、Freescale的i.MX等等。這些應用處理器目前都還是主流元件,遍布於各種消費性電子、網路通訊產品中。

高效能代名詞Cortex-A8/A9

接下來的Cortex系列就像ARM11,具有A8、A9兩個別類。簡單來說,後推出的A9就是細部改進的A8核心,而且支援多核心或單核心配置,因此A9可以直接取代A8的定位,換句話說,A8其實比ARM11 MPCore更短命啊!

ADVERTISEMENT

▲iPhone 3GS中的應用處理器出自三星之手,基於ARM Cortex體系。

Cortex系列除了加入了128位元SIMD計算能力,也增加了管線階層數,時脈可一舉飆高到2GHz。換算DMIPS可從2000到8000(四核心配置)。目前採用Cortex-A8的應用處理器,有TI的OMAP3系列、高通的Snapdragon(HTC HD2、Acer Neo Touch)、Freescale的i.MX 51、三星的S5PC100(iPhone 3GS),而目前市面上還沒有Cortex-A9架構產品,不過未來高通Snapdragon QSD8×72、NVIDIA的Tegra 2都是基於多核心的Cortex-A9。

效能取決於設計方式

不過從DMIPS來看效能表現太偏頗,以Tegra為例,一部分的多媒體解碼能力是依靠硬體線路處理,這部份無法完全換算成有意義的效能數字,也因此,CPU核心效能高,不代表應用效能也高。舉Intel為例,就好比Core-i7超頻4GHz+Intel整合型顯示晶片,跑起Crysis必定還是遠遠不如Core2+GTX285。

所以在多媒體及3D效能來說,基於Cortex-A8,時脈高達1GHz的高通snapdragon還是比不上NVIDIA基於ARM11時脈750MHz的Tegra。應用處理器的設計方式與處理單元搭配的方式不同,它們針對的應用市場與實際效能表現也不一樣,CPU核心會有影響,但並不是絕對成正比。

下次,我們用NVIDIA Tegra當例子,討論一款應用處理器還需要些什麼。

【編按】Dark Eric目前是自由作家,過去曾在幾家專業媒體撰寫比LP充血還要硬的技術文章,對半導體技術與市場之類的怪玩意有點小研究,如果大家也想成為特約作者, 歡迎來信與我們討論。

ADVERTISEMENT