您好,登錄后才能下訂單哦!
一顆ARM架構(gòu)芯片的軟硬件構(gòu)成
一顆ARM架構(gòu)芯片硬件和軟件是一顆芯片系統(tǒng)互相依存的兩大部分。
1.硬件
主控CPU:
運(yùn)算和控制核心?;鶐酒緲?gòu)架采用微處理器+數(shù)字信號處理器(DSP)的結(jié)構(gòu),微處理器是整顆芯片的控制中心,會運(yùn)行一個實(shí)時嵌入式操作系統(tǒng)(如Nucleus PLUS),DSP子系統(tǒng)負(fù)責(zé)基帶處理。
應(yīng)用處理器則可能包括多顆微處理器,還有GPU。
微處理器是ARM的不同系列的產(chǎn)品(也可以是x86架構(gòu)),可以是64位或者32位。處理器內(nèi)部通過“內(nèi)部總線”將CPU所有單元相連,其位寬可以是8-64位。
總線:
計算機(jī)的總線按功能可以劃分為數(shù)據(jù)總線、地址總線和控制總線,分別用來傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號。
CPU內(nèi)部部件由內(nèi)部總線互聯(lián),外部總線則是CPU、內(nèi)存、輸入、輸出設(shè)備傳遞信息的公用通道,主機(jī)的各個部件通過總線相連接。
外部設(shè)備通過相應(yīng)的接口電路再與外部總線相連接,從而形成了硬件系統(tǒng)。外部總線通過總線接口單元BLU與CPU內(nèi)部相連。
片上總線標(biāo)準(zhǔn)高級微控制器總線結(jié)構(gòu)AMBA定義了高性能嵌入式微控制器的通信標(biāo)準(zhǔn)。
定義了三組總線:AHB(AMBA高性能總線)、ASB(AMBA系統(tǒng)總線)、和APB(AMBA外設(shè)總線)。
AHB總線用于高性能、高時鐘工作頻率模塊。AHB為高性能處理器、片上內(nèi)存、片外內(nèi)存提供接口,同時橋接慢速外設(shè)。DMA、DSP、主存等連在AHB上。
ASB總線主要用于高性能系統(tǒng)模塊。ASB是可用于AHB不需要的高性能特性的芯片設(shè)計上可選的系統(tǒng)總線。
APB總線用于為慢速外設(shè)提供總線技術(shù)支持。
APB是一種優(yōu)化的,低功耗的,精簡接口總線,可以支持多種不同慢速外設(shè)。由于APB是ARM公司最早提出的總線接口,APB可以橋接ARM體系下每一種系統(tǒng)總線。
外設(shè)I/O端口和擴(kuò)展總線:
GPIO通用端口、UART串口、I2C、SPI 、SDIO、USB等,CPU和外擴(kuò)的芯片、設(shè)備以及兩顆CPU之間(如基帶處理器和應(yīng)用處理器之間)進(jìn)行通信的接口。
一般來說,芯片都會支持多種接口,并設(shè)計通用的軟件驅(qū)動平臺驅(qū)動。
存儲部件和存儲管理設(shè)備:
Rom、Ram、Flash及控制器。處理器系統(tǒng)中可能包含多種類型的存儲部件,如Flash、SRAM、SDRAM、ROM以及用于提高系統(tǒng)性能的Cache等等,不同的芯片會采用不同的存儲控制組合。
外設(shè):
電源和功耗管理、復(fù)位電路和watchdog定時復(fù)位電路(前者是系統(tǒng)上電運(yùn)行、后者是Reset或者超時出錯運(yùn)行)、時鐘和計數(shù)器、中斷控制器、DMA、 輸入/輸出(如鍵盤、顯示器等)、攝像頭等。
2.軟件芯片上的軟件主要包括Boot代碼、操作系統(tǒng)、應(yīng)用程序以及硬件的firmware。
Boot程序引導(dǎo)設(shè)備的啟動,是設(shè)備加電后在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段小程序。
通過這段小程序,我們可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。
操作系統(tǒng)是管理和控制計算機(jī)硬件與軟件資源的計算機(jī)程序,其五大管理功能是:
1處理器管理,主要包括進(jìn)程的控制、同步、通信和調(diào)度。
2存儲器管理,主要包括內(nèi)存的分配、保護(hù)和擴(kuò)充,地址映射。
3設(shè)備管理,主要包括設(shè)備的分配、處理等。
4文件管理,主要包括文件的存儲空間管理,目錄管理,文件的讀寫和保護(hù)。
5作業(yè)管理,主要包括任務(wù)、界面管理,人機(jī)交互,語音控制和虛擬現(xiàn)實(shí)等。
應(yīng)用處理器上的操作系統(tǒng)有Android、IOS等,不必多說;基帶處理器上則會運(yùn)行一個RTOS(如Nucleus PLUS)管理整個基帶系統(tǒng)上的任務(wù)和部件間的通信。
應(yīng)用程序是為了完成某項(xiàng)或某幾項(xiàng)特定任務(wù)而被開發(fā)運(yùn)行于操作系統(tǒng)之上的程序。
應(yīng)用處理器上,結(jié)合操作系統(tǒng)API和庫函數(shù),用戶可以開發(fā)各色應(yīng)用程序;基帶處理器上則一般只有少量必要的軟件支持。
硬件firmware則是簡化軟件與硬件的交互,讓硬件操縱起來更容易。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。