來源:本文內(nèi)容來自Expreview超能網(wǎng),,謝謝,。
ARM架構(gòu)是一種采用獨(dú)特的ARM指令集系統(tǒng),、并且根據(jù)不同適用范圍開發(fā)的處理器體系結(jié)構(gòu),。經(jīng)過30多年的發(fā)展,目前ARM架構(gòu)有針對(duì)不同類型計(jì)算設(shè)計(jì)的體系結(jié)構(gòu),。簡單來說有這幾種,。 Cortex-A:針對(duì)高性能計(jì)算。如我們目前手機(jī)SoC中常出現(xiàn)的Cortex-A76等。 Cortex-R:針對(duì)實(shí)時(shí)操作處理,。主要是面向嵌入式實(shí)時(shí)處理器,。在汽車的電子制動(dòng)系統(tǒng),工業(yè)控制領(lǐng)域等領(lǐng)域比較常見,。 Cortex-M:專為低功耗,、低成本系統(tǒng)設(shè)計(jì)。目前火熱的IoT領(lǐng)域常常見到采用Cortex-M架構(gòu)的處理器,。 ARM架構(gòu),更主要的是ARM指令集系統(tǒng),。不同于x86架構(gòu)的復(fù)雜指令集(CISC)架構(gòu),,是一種精簡指令集(RISC)架構(gòu)。相對(duì)于CISC架構(gòu)處理器,,采用精簡指令集設(shè)計(jì)的ARM架構(gòu)設(shè)計(jì)目標(biāo)是能在盡量高的時(shí)鐘頻率下通過很少周期執(zhí)行的指令集,。大幅減少不常用的指令,降低芯片復(fù)雜度,。采用Load/Store指令體系結(jié)構(gòu),,處理器通過load、store指令存取內(nèi)存中的數(shù)據(jù),,針對(duì)邏輯,、算術(shù)等運(yùn)算,CPU只處理寄存器中的數(shù)據(jù),。同時(shí)由于這個(gè)原因,,包括ARM在內(nèi)的很多RISC架構(gòu)處理器都有很多寄存器來存放指令及數(shù)據(jù)。為了方便指令的解碼,,雖然ARM處理器不是單周期指令,,但是其絕大多數(shù)指令是定長的,加快了常用操作的速度,。 同時(shí)ARM也沒有完全局限于此,,ARM架構(gòu)還有像Thumb指令集、條件執(zhí)行等技術(shù),,進(jìn)一步提高處理器效率,。 所以總結(jié)來說,ARM架構(gòu)就是采用精簡指令集計(jì)算機(jī)結(jié)構(gòu),、但有自己特色,,根據(jù)不同用途有不同型號(hào)的處理器架構(gòu)。 那么為什么高通,、三星都以來ARM架構(gòu)呢,?有以下幾點(diǎn)原因可供參考。 首先是授權(quán)。眾所周知,,x86架構(gòu)由于授權(quán)問題只有幾家可以生產(chǎn),,包括現(xiàn)在的Intel、AMD,,曾經(jīng)的威盛,。而全美達(dá)也只是生產(chǎn)出了基于純軟件模擬x86處理器的CPU。國內(nèi)的兆芯及海光也有一定的授權(quán)限制,。 除了x86外,,另一套著名的指令集系統(tǒng)MIPS是可以授權(quán)生產(chǎn)的,雖然授權(quán)費(fèi)用比較貴,,但是其靈活性極高,,所以出現(xiàn)了比較嚴(yán)重的“碎片化”。有能力設(shè)計(jì)的都在自主設(shè)計(jì)微架構(gòu),、添加指令等,。如國內(nèi)的龍芯、索尼的PSP游戲機(jī)等,。 而ARM的授權(quán)方式有多種,。首先是處理器授權(quán),這種授權(quán)方式只授權(quán)已經(jīng)設(shè)計(jì)好的內(nèi)核,,工廠等買到后自己發(fā)揮的余地不多,。如海思部分麒麟處理器就是采用這種方式。還有一種是架構(gòu)/指令集授權(quán),,這種方式在微結(jié)構(gòu)設(shè)計(jì)上有更多的靈活性,,如蘋果的vortex,三星的M3,、M4,、高通的Krait等。同時(shí)即使廠商在定制自己的微架構(gòu),,但是在指令集上有限制,,這樣即使廠商修改軟件層面如編譯器等工具,也不需要大更改,。所以出現(xiàn)了現(xiàn)在Android手機(jī)處理器多家爭鳴的情況,。既保證了兼容性,廠商又能充分發(fā)揮,。所以高通,、三星等廠商選擇ARM處理器也是最好的選擇。 雖然現(xiàn)在MIPS及IBM的Power架構(gòu)也已開源,,而且現(xiàn)在也有RISC-V這樣一開始就開源且已初具規(guī)模的開源指令集及架構(gòu),,但是獨(dú)特的授權(quán)策略讓ARM擁有了一批忠實(shí)擁躉,。 其次是適用范圍。雖然ARM架構(gòu)在強(qiáng)調(diào)低功耗高性能,,但是其在近幾年前適用范圍還是相對(duì)較窄的,,一直活躍在嵌入式、手持設(shè)備等低功耗領(lǐng)域,。合作伙伴也是多生產(chǎn)低功耗處理器,。甚至Intel也曾經(jīng)出品過基于ARM指令集的XScale處理器,Dell曾經(jīng)生產(chǎn)過基于這個(gè)處理器的PDA(恍如隔世,,很老的概念了),。而本世紀(jì)頭十年最火的手機(jī)品牌諾基亞的塞班智能手機(jī)中也使用過ARM11架構(gòu)的處理器。而現(xiàn)在高通,、三星是重要的手機(jī)SoC設(shè)計(jì)生產(chǎn)商,,所以他們選擇ARM架構(gòu)不僅可以迅速切入低功耗處理器市場,而且也可以借助ARM的豐富經(jīng)驗(yàn)快速設(shè)計(jì)出強(qiáng)大的處理器,。 最后就是乘上了移動(dòng)互聯(lián)網(wǎng)的東風(fēng),在智能手機(jī)最需要計(jì)算性能的時(shí)候提供了足夠的性能,,為處理器設(shè)計(jì)生產(chǎn)廠商提供了足夠的經(jīng)驗(yàn),。ARM公司早在2002年(距2019年已經(jīng)17年了)就開發(fā)出了ARM11架構(gòu)及處理器。而到了8年之后的2010年,,依舊有手機(jī)使用ARM11架構(gòu)處理器的手機(jī),,如曾經(jīng)小編使用過的摩托羅拉ME600后空翻使用的是高通MSM7201A SoC,其CPU部分就是ARM11架構(gòu),。而隨后Cortex-A8早在2005年就研發(fā)完成了,。所以等Android手機(jī)開始興起時(shí),ARM公司及其合作伙伴就已經(jīng)擁有足夠的經(jīng)驗(yàn)了,,而性能也符合當(dāng)時(shí)Android手機(jī)的需求?,F(xiàn)在高通的驍龍?zhí)幚砥骷叭堑腅xynos處理器在Android手機(jī)界是重要的組成部分,所生產(chǎn)的SoC CPU部分都是采用ARM設(shè)計(jì)的內(nèi)核或指令集的,。 高通,,三星等公司就是因?yàn)榕cARM公司緊密的合作讓我們擁有了現(xiàn)在這么強(qiáng)大的智能手機(jī),所以他們算是休戚與共了,。同時(shí)高通,、三星在依賴ARM提供的處理器架構(gòu)、指令集的同時(shí),,ARM也需要像三星,、臺(tái)積電等公司的支持,將還是代碼的處理器內(nèi)核編程實(shí)際的硅芯片,。所以這并不是一個(gè)誰依賴誰的問題,,而是各方通力合作的結(jié)果。 |
|