之所以寫這個題目,和大家一樣,我的汽車時事也是主要來自于公眾號。但是我發(fā)現(xiàn)關注了這么多公眾號,卻沒有人寫過關于ARM的內容。身為一個汽車軟件工程師,在我的日常工作中已經明顯的感受到了轉變,從Classic autosar -> Adaptive autosar;控制器上的主芯片從一個個MCU慢慢變成了ARM MPU。那么我們經常聽說啥芯片是ARM架構的,到底是什么呢 ?![]()
ARM(英國公司)
首先ARM是一家英國公司,是全球領先的半導體知識產權(IP)提供商。ARM設計了大量高性價比、耗能低的RISC處理器(精簡指令集)、相關技術及軟件。換言之,ARM公司本身并不靠自有的設計來制造或出售CPU,而是將處理器架構授權給有興趣的廠家。![]()
這些ARM合作伙伴有機會圍繞這些處理器設計和制造他們的系統(tǒng),或者將他們的生產外包給其他人,但是無論如何要在商業(yè)市場上出售這些設計的實現(xiàn)。許多三星,蘋果,華為的智能手機和平板電腦以及高通公司生產的基本上所有設備都利用了ARM的某些知識產權。而我們經常所說的ARM芯片,其實指的是運用ARM架構開發(fā)的芯片。近日,全球最大的半導體IP公司Arm公布了2020年第4季的銷售狀況。根據(jù)報告指出,僅在2020年第4季,全球基于Arm IP的芯片出貨達到了創(chuàng)紀錄的67億顆,超越了x86、ARC、Power 和MIPS 等其他架構芯片出貨的總和。
ARM架構
歷史的長河里面,有過許許多多的CPU架構,它們之間的差異性非常大,經過時間、用戶的檢驗,我們平常所接觸到CPU架構也就剩X86和ARM兩者,按照最核心的不同可以被分為兩大類,即“復雜指令集”與“精簡指令集”系統(tǒng),也就是經常看到的“CISC”與“RISC”。
![]()
ARM基于RISC(精簡指令集計算),而Intel(x86)基于CISC(復雜指令集計算)。造成他們使用不同該指令集的原因在于,面向的設備、對象、性能要求是不一樣。手機SoC普遍都是采用ARM提供的核心作為基礎,依據(jù)自身需求改變SoC的核心架構,而ARM正是RISC精簡指令集的代表人物。CPU巨頭Intel、AMD所采用的X86架構已經沿用了數(shù)十年,是CISC復雜指令集的典型代表。
![]()
ARM的CPU指令在本質上是原子的,指令數(shù)量和微操作之間有著非常緊密的聯(lián)系。相比之下,CISC提供了更多指令,其中許多指令執(zhí)行多項操作(例如優(yōu)化的數(shù)學和數(shù)據(jù)移動)。這樣可以帶來更好的性能,但是解碼這些復雜的指令會消耗更多的功率。![]()
ARM的PC滲透
ARM處理器本身定位于嵌入式平臺,應付輕量級、目的單一明確的程序,現(xiàn)在應用在移動設備上正是得心應手。x86定位于桌面和服務器,這些平臺上很多應用是計算密集型的,比如多媒體編輯、科研計算、模擬等等。
本來兩者相安無事,一個專注于嵌入式而另一個專注于個人PC業(yè)務,直到出現(xiàn)了第一個攪局的 —— 蘋果M1芯片,以蘋果的影響力,毫無疑問這是對x86架構的一次巨大挑戰(zhàn)。![]()