7、ARM體系結(jié)構(gòu)的基本概念
(1)ARM:Advanced RISC Machine。
(2)ARM體系結(jié)構(gòu)中支持兩種指令集:ARM 指令集和Thumb 指令集。
(3)ARM內(nèi)核有T、D、M、I四個功能模塊:
A、T 模塊:表示16位Thumb,可以在兼顧性能的同時減少代碼尺寸。
B、D 模塊:表示Debug,內(nèi)核中放置了用于調(diào)試的結(jié)構(gòu),通常為一個邊界掃描鏈JTAG。
C、M 模塊:表示8位乘法器。
D、I 模塊:表示EmbeddedICE Logic,用于實(shí)時斷點(diǎn)觀測及變量觀測的邏輯電路部分。
(4)ARM處理器有7種運(yùn)行模式:
A、用戶模式(User):正常程序執(zhí)行模式,用于應(yīng)用程序。
D、快速中斷模式(FIQ):快速中斷處理,用于高速數(shù)據(jù)傳輸和通道處理。
C、外部中斷模式(IRQ):用于通用的中斷處理。
D、管理模式(SVE):供操作系統(tǒng)使用的一種保護(hù)模式。
E、數(shù)據(jù)訪問中止模式(Abort):用于虛擬存儲及存儲保護(hù)。
F、未定義指令中止模式(Undefined):當(dāng)未定義指令執(zhí)行時進(jìn)入該模式。
G、系統(tǒng)模式(System):用于運(yùn)行特權(quán)級的操作系統(tǒng)任務(wù)。
除了用戶模式之外的其他6種處理器模式稱為特權(quán)模式,在這些模式下,程序可以訪問所有的系統(tǒng)資源,
也可以任意地進(jìn)行處理器模式切換,其中,除了系統(tǒng)模式外,其他的5種特權(quán)模式又稱為異常模式。
處理器模式可以通過軟件控制進(jìn)行切換,也可以通過外部中斷或異常處理過程進(jìn)行切換。大多數(shù)的用
戶程序運(yùn)行在用戶模式下,這時,應(yīng)用程序不能訪問一些受操作系統(tǒng)保護(hù)的系統(tǒng)資源,應(yīng)用程序也不能直
接進(jìn)行處理器模式切換。當(dāng)需要進(jìn)行處理器模式切換時,應(yīng)用程序可以產(chǎn)生異常處理,在異常處理中進(jìn)行
處理器模式的切換。這種體系結(jié)構(gòu)可以使操作系統(tǒng)控制整個系統(tǒng)的資源。
當(dāng)應(yīng)用程序發(fā)生異常中斷時,處理器進(jìn)入相應(yīng)的異常模式。在每一種異常模式種都有一組寄存器,供
相應(yīng)的異常處理程序使用,這樣就可以保證進(jìn)入異常模式時,用戶模式下的寄存器不被破壞。
系統(tǒng)模式并不是通過異常過程進(jìn)入的,它和用戶模式具有完全一樣的寄存器,但是系統(tǒng)模式屬于特權(quán)
模式,可以訪問所有的系統(tǒng)資源,也可以直接進(jìn)行處理器模式切換,它主要供操作系統(tǒng)任務(wù)使用。
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |