揭秘ARM架構(gòu)芯片的軟硬件組成
ARM是微處理器行業(yè)的一家知名企業(yè),設計了大量高性能、廉價、耗能低的RISC處理器、相關(guān)技術(shù)及軟件,適用于多種領域,比如嵌入控制、消費/教育類多媒體、DSP和移動式應用等。
2016年7月27日,公司發(fā)財報顯示,第二季度稅前利潤為1.301億英鎊(約合1.71億美元),同比增長5%。在2016年9月,ARM以240億英鎊的價格被軟銀收購。
盡管被收購,但我們不容錯過ARM芯片系列!硬件和軟件是一顆ARM架構(gòu)芯片互相依存的兩大部分,本文總結(jié)了一顆芯片的軟硬件組成,以作為對芯片的入門級概括吧!
硬件方面
主控CPU:運算和控制核心。基帶芯片基本構(gòu)架采用微處理器+數(shù)字信號處理器(DSP)的結(jié)構(gòu),微處理器是整顆芯片的控制中心,會運行一個實時嵌入式操作系統(tǒng)(如Nucleus PLUS),DSP子系統(tǒng)負責基帶處理。應用處理器則可能包括多顆微處理器,還有GPU。微處理器是ARM的不同系列的產(chǎn)品(也可以是x86架構(gòu)),可以是64位或者32位。處理器內(nèi)部通過“內(nèi)部總線”將CPU所有單元相連,其位寬可以是8-64位。
總線:計算機的總線按功能可以劃分為數(shù)據(jù)總線、地址總線和控制總線,分別用來傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號。CPU內(nèi)部部件由內(nèi)部總線互聯(lián),外部總線則是CPU、內(nèi)存、輸入、輸出設備傳遞信息的公用通道,主機的各個部件通過總線相連接。外部設備通過相應的接口電路再與外部總線相連接,從而形成了硬件系統(tǒng)。外部總線通過總線接口單元BLU與CPU內(nèi)部相連。
片上總線標準高級微控制器總線結(jié)構(gòu)AMBA定義了高性能嵌入式微控制器的通信標準。定義了三組總線:AHB(AMBA高性能總線)、ASB(AMBA系統(tǒng)總線)、和APB(AMBA外設總線)。
AHB總線用于高性能、高時鐘工作頻率模塊。AHB為高性能處理器、片上內(nèi)存、片外內(nèi)存提供接口,同時橋接慢速外設。DMA、DSP、主存等連在AHB上。ASB總線主要用于高性能系統(tǒng)模塊。
ASB是可用于AHB不需要的高性能特性的芯片設計上可選的系統(tǒng)總線。APB總線用于為慢速外設提供總線技術(shù)支持。
APB是一種優(yōu)化的,低功耗的,精簡接口總線,可以支持多種不同慢速外設。由于APB是ARM公司最早提出的總線接口,APB可以橋接ARM體系下每一種系統(tǒng)總線。
外設I/O端口和擴展總線:GPIO通用端口、UART串口、I2C、SPI 、SDIO、USB等,CPU和外擴的芯片、設備以及兩顆CPU之間(如基帶處理器和應用處理器之間)進行通信的接口。一般來說,芯片都會支持多種接口,并設計通用的軟件驅(qū)動平臺驅(qū)動。
存儲部件和存儲管理設備:Rom、Ram、Flash及控制器。處理器系統(tǒng)中可能包含多種類型的存儲部件,如Flash、SRAM、SDRAM、ROM 以及用于提高系統(tǒng)性能的Cache等等,不同的芯片會采用不同的存儲控制組合。參見博文”arm架構(gòu)的芯片memory及智能機存儲部件簡述“
外設: 電源和功耗管理、復位電路和watchdog定時復位電路(前者是系統(tǒng)上電運行、后者是Reset或者超時出錯運行)、時鐘和計數(shù)器、中斷控制器、DMA、 輸入/輸出(如鍵盤、顯示器等)、攝像頭等。
一顆ARM9架構(gòu)芯片主控器及外圍硬件設備組成如下圖所示:
軟件方面
芯片上的軟件主要包括Boot代碼、操作系統(tǒng)、應用程序以及硬件的firmware。
Boot程序引導設備的啟動,是設備加電后在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序。通過這段小程序,我們可以初始化硬件設備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。
操作系統(tǒng)(英語:Operating System,簡稱OS)是管理和控制計算機硬件與軟件資源的計算機程序,其五大管理功能是:
1處理器管理,主要包括進程的控制、同步、通信和調(diào)度。
2存儲器管理,主要包括內(nèi)存的分配、保護和擴充,地址映射。
3設備管理,主要包括設備的分配、處理等。
4文件管理,主要包括文件的存儲空間管理,目錄管理,文件的讀寫和保護。
5作業(yè)管理,主要包括任務、界面管理,人機交互,語音控制和虛擬現(xiàn)實等。
應用處理器上的操作系統(tǒng)有Android、IOS等,不必多說;基帶處理器上則會運行一個RTOS(如Nucleus PLUS)管理整個基帶系統(tǒng)上的任務和部件間的通信。
應用程序是為了完成某項或某幾項特定任務而被開發(fā)運行于操作系統(tǒng)之上的程序。應用處理器上,結(jié)合操作系統(tǒng)API和庫函數(shù),用戶可以開發(fā)各色應用程序;基帶處理器上則一般只有少量必要的軟件支持。
硬件firmware則是簡化軟件與硬件的交互,讓硬件操縱起來更容易。
再來看看ARM處理器系列
ARM微處理器包括下面幾個系列,以及其它廠商基于 ARM 體系結(jié)構(gòu)的處理器,除了具有ARM 體系結(jié)構(gòu)的共同特點以外,每一個系列的 ARM 微處理器都有各自的特點和應用領域。
ARM7系列
ARM7 系列微處理器為低功耗的 32 位 RISC 處理器,最適合用于對價位和功耗要求較高的消費類應用。
ARM9系列
ARM9 系列微處理器在高性能和低功耗特性方面提供最佳的性能。
ARM9E系列
ARM9E 系列微處理器為可綜合處理器,使用單一的處理器內(nèi)核提供了微控制器、 DSP 、 Java應用系統(tǒng)的解決方案,極大的減少了芯片的面積和系統(tǒng)的復雜程度。 ARM9E 系列微處理器提供了增強的 DSP 處理能力,很適合于那些需要同時使用 DSP 和微控制器的應用場合。
ARM10E系列
ARM10E 系列微處理器具有高性能、低功耗的特點,由于采用了新的體系結(jié)構(gòu),與同等的 ARM9器件相比較,在同樣的時鐘頻率下,性能提高了近 50 %,同時, ARM10E 系列微處理器采用了兩種先進的節(jié)能方式,使其功耗極低。
SecurCore系列
SecurCore 系列微處理器專為安全需要而設計,提供了完善的 32 位 RISC 技術(shù)的安全解決方案,因此, SecurCore 系列微處理器除了具有 ARM 體系結(jié)構(gòu)的低功耗、高性能的特點外,還具有其獨特的優(yōu)勢,即提供了對安全解決方案的支持。[!--empirenews.page--]
Intel 的Xscale、StrongARM
Intel StrongARM SA-1100 處理器是采用 ARM 體系結(jié)構(gòu)高度集成的 32 位 RISC 微處理器。它融合了 Intel 公司的設計和處理技術(shù)以及 ARM 體系結(jié)構(gòu)的電源效率,采用在軟件上兼容 ARMv4 體系結(jié)構(gòu)、同時采用具有 Intel 技術(shù)優(yōu)點的體系結(jié)構(gòu)。
其中,ARM7、ARM9、ARM9E和ARM10為4個通用處理器系列,每一個系列提供一套相對獨特的性能來滿足不同應用領域的需求, 而SecurCore 系列專門為安全要求較高的應用而設計。