嵌入式ARM基礎原理有哪些
時間:2023-10-23 來源:華清遠見
介紹
1.嵌入式系統
嵌入式系統是一種依附在現實工作和生活中的計算機系統,它將多種技術組合,具備多種應用功能。它將處理器,存儲器,I/O 控制器,實時操作系統以及其它硬件和軟件組成一個完整的系統,通過這樣的組合可以幫助現實社會實現更多的應用層次,再結合現代信息技術,使其所實現的功能更加強大。
2.ARM
a) ARM(Advanced RISC Machine)有3種含義:ARM是一家公司的名稱;這家公司設計的微處理器統稱為ARM;ARM還是一種技術的名稱。
b) ARM技術特征
(1)體積小、低功耗、低成本、高性能;
(2)支持Thumb(16位)/ARM(32位)雙指令集,能很好的兼容8位/16位器件;
(3)大量使用寄存器,指令執行速度更快;
(4)大多數數據操作都在寄存器中完成;
(5)尋址方式靈活簡單,執行效率高;
(6)指令長度固定。
基礎原理
1.RISC微處理器和CISC微處理器區別
RISC(Reduced Instruction Set Computer)是精簡指令集計算機。
側重點:如何使計算機的結構更加簡單和如何使計算機的處理速度更加快速
特點:指令數量少、簡單指令、固定指令長度、減少指令格式和尋址方式、不用或少用微碼控制、能耗較低。
應用:嵌入式處理器、各種移動終端
CISC是復雜指令集計算機。
側重點:硬件執行指令的功能性
特點:指令數量多、設計復雜、能耗高。
應用:intel的處理器(電腦)
2.ARM微處理器結構
ARM內核采用RISC體系結構。ARM體系結構的主要特征如下:
大量的寄存器
Load/Store體系結構
每條指令都條件執行
多寄存器的Load/Store指令
能夠在單時鐘周期執行的單指令內完成一項普通的位移操作和一項普通的ALU操作
通過協處理器指令集來擴展ARM指令集,包括在編程模式種增加了新的寄存器和數據類型
如果報Thumb指令集也當作ARM體系結構的一部分,那邊還可以加上在Thumb體系結構中以高密度16位壓縮形式表示指令集
3.基本數據類型
ARM內核采用32位架構。基本數據類型有以下4種:
Byte : 字節, 8位
HalfWord:半字,16位
Word:字,32位
DoubleWord(Cortex-A支持):雙字,64位

4.工作模式

除用戶模式外,其余6種模式稱為非用戶模式或特權模式;用戶模式和系統模式之外的5種模式稱為異常模式。ARM處理器的運行模式可以通過軟件改變,也可以通過外部中斷或異常處理改變。
5.存儲系統
提供多種類型的存儲器件,如Flash、ROM、SRAM等;
Cache技術;
寫緩存技術(Write Buffer);
虛擬內存和I/O地址映射技術。
6.流水線
處理器按照一系列步驟來執行每一條指令,典型的步驟如下:
從存儲器讀取指令(fetch)
譯碼以鑒別它是屬于哪一條指令(decode)
從指令中提取指令的操作數(這些操作數往往存在于寄存器中)(reg)
將操作數進行組合以得到結果或存儲器地址(ALU)
如果需要,則訪問存儲器以存儲數據(mem)
將結果寫回到寄存器組中(res)
流水線的分類:3級、5級、6級流水線



7.寄存器結構
ARM Cortex-A8處理器共有40個寄存器(32位),被分為若干個組(BANK),這些寄存器包括:
32個通用寄存器。
1個程序計數器(PC指針)。
7個狀態寄存器:1個CPSR當前程序狀態寄存器,6個SPSR備份程序狀態寄存器。

