版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、ARM體系結(jié)構(gòu)廣恢教育第二章ARM體系結(jié)構(gòu) 2.1 ARM處理器工作狀態(tài) 2.2 ARM處理器工作模式 2.3 ARM寄存器 2.4 ARM的異常中斷 2.5 ARM的存儲體系 2.6 ARM片上總線21 ARM處理器工作犬態(tài) ARM狀態(tài)。32位,ARM狀態(tài)卜執(zhí)行字對齊的32位 ARM指令。 Thumb狀態(tài)。16位,Thumb狀態(tài)下執(zhí)行半字對齊 的16位Thumb指令。在程序執(zhí)行的過程中,處理器可在2中狀態(tài)下切換。切換時不影響處理器的模式國寄心器的內(nèi)容。兩種指令集自相應(yīng)的狀態(tài)切換命令。 ARM處理器開始執(zhí)行代碼的時候.只能處于ARM狀態(tài)22 ARM處理器工作犁式ARM微處理器支持7種工作模式
2、用戶模式(usr) : ARM的正常運行模式,通常用來執(zhí)行一般的應(yīng) 用程序。 快速中斷模式(fiq):由外部觸發(fā),用于高速數(shù)據(jù)傳輸或通道處 理。 外部中斷模式(irq):由外部觸發(fā),用于般的外部屮斷處理。 管理模式(SVC):操作系統(tǒng)使用的保護模式。 中止模式(abt):數(shù)據(jù)或者指令預(yù)取指出現(xiàn)錯誤或者丹常時進入該 模式,用于焜擬內(nèi)存或存儲保護。 系統(tǒng)模式(sys):運行具有特權(quán)的操作系統(tǒng)任務(wù)。 未定義模式(und):當未怎義的指令執(zhí)行時進入該模式,可用于 文持硬件協(xié)處理器的軟件仿貞"除了用戶模式外,其他模式均可視為特權(quán)模式22 ARM處理器工作辱式改變ARM處理器匚作模式的方法:軟件
3、改變,改變CPSR4:0位 外部中斷響應(yīng)異常處理2.3 ARM寄存器 ARM總共有37個寄存器,31個通川寄仔器,和6個狀態(tài)寄存器, 但并不是同時可見的。 R0R7:未分組寄存器。 R8R14 :分紐寄存器。 R15:程序計數(shù)器PC。 R13 (SP):在ARM中常用作堆棧指針,應(yīng)用程序初始化 R13,使其指向開曲模式專用的堆棧。 R14(LR): link register,放代當前子程序返冋地址或界常模式 返回拖址。 R15: Program Counter (PC) CPSR (Current Program Status Register)當前程序狀態(tài)寄存器。 SPSR (Saved
4、Program Status Register)備份程序狀態(tài)寄存器,spsr用程序異常中斷請保存被中斷的程序狀態(tài)2.3 ARM寄存器ARM狀態(tài)下的通用需存as與夜序汁數(shù)聒bysfeni & UserFIQSupervisorAboutIRGUndefined卜、= 分18竊TT2f9關(guān)于PSR寄存器PSR分為CPSR和SPSR,它彳門的格工弋111同。Control d tsCondition code flagsOverflowCnrry or borrow or oxtond ZonoMugulrvo or ly lh«n1 1 131 30 29 28 27 26 25
5、 24 238ii76543210|n|z|c|v|-|-|-|-|-|£_龍I | F | T |M4|M3|M2|Ml|M0|IIKzlodo bits Slnlo bit FIQ di&nbic IRQ NZVC:指令作運算時的標志位。 I FT: 1=1 禁 il:IRQ, F=1 禁 il:FIQ, T=1 執(zhí)行 thumb 指令。 Mode bitsUser: 10000Abort: 10111 FIQ: 10001Undefined: 11011 IRQ: 10010System: 11111 Supervisor: 10011運行模式位M4: 0叩具體含義M4
6、: 0處理器模式可訪問的寄存器Ob 10000用尸模式PC, CPSR, R14R0Ob 10001FIQ模式PC, CPSR, SPSRfiq. R14_fiq. R2_fq R7R0OblOOlOIRQ模式PC, CPSRSPSR.irq, R14_irq, R13-irq.Rl 2R0OblOOll管理模式PC, CPSR, SPSRsvc, R14_svc, R13_svc,Rl 2R0OblOll1中止模式PC, CPSR, SPSR abt R14 合bt, R13_abtR12R0ObllOll未定文模式PC, CPSR, SPSR_und, RIJund, R13_und, R
7、12 ROOblUU系換模式PC, CPSR ( ARM74 以本),R14R09條件碼標志的具體含冬標志位含 義N (負標志當用兩個補碼表示的帝符號數(shù)進行運算時,N=1表示運算的結(jié)果為負數(shù),N=0表 示運算的結(jié)果為正數(shù)或寒 N位與運算結(jié)果的最高位相同Z (零標志2=4忠示運算的結(jié)果為黑 K 農(nóng)示運算的結(jié)卑為非零C (進垃標志可以有4種方法設(shè)置C的值:加法運算(包括比較指令CMN):當運算結(jié)果產(chǎn) 生了洪位時(無符號數(shù)溢出,C=b否則ODi減法運算(包括比較指令CMP): 當運算時發(fā)生了借位無符號數(shù)下溢出C=8,否則C=le對干包含移位換作的 m頃慷運算指令.C為移位操作中最時移出住的值。對于其
8、他的非加堿運算指令, C的值通需不改變V (溢出)標志可以有2種方法設(shè)置V的值:對于加僦法運算指令,當操作數(shù)和運算結(jié)果為二 進制的補碼稷示的帶符號數(shù)時,V-1表示符號位溢出。對于其他的非加備運算指 令,V的值赴常不改變。具休可參考各指令的說明102.4 ARM的異常中斷 復(fù)位(reset):當處理器的復(fù)位引腳有效時,系統(tǒng)產(chǎn)生復(fù)位中斷, 程序跳到中斷處理程序處執(zhí)行。復(fù)位屮斷發(fā)生的情況: 系統(tǒng)加電時 系統(tǒng)復(fù)位時 跳轉(zhuǎn)到復(fù)位中斷向量處(0x00000000) 未疋義抬令(undefined instruction):當ARM處理器或者是系 統(tǒng)屮的協(xié)處理器認為當前指令未定義時,產(chǎn)生未定義的指令異 常處
9、理。 軟件中斷(software interrupt):冇用戶定義的中斷指令,在實 時操作系統(tǒng)中町以通過該機制實現(xiàn)系統(tǒng)功能的調(diào)用。2.4 ARM的異常屮斷抬令預(yù)取1|' il:(prefech abort):如果處理器預(yù)取的 指令的地址不存在,或者該地環(huán)不允許當前指令訪 問,處理器產(chǎn)生指令預(yù)取中止異常處理。數(shù)堆訪問屮I上(data Abort):如采數(shù)據(jù)訪問指令的 目標血址木右在,或看該血址入允許占前指令訪問, 處理器產(chǎn)生數(shù)據(jù)訪問屮止異常處理。外部屮斷請求0 RQ):當處理器的外部中斷請求引 腳有效,而且CPSR寄心器的I控制位被清除時,處 理器產(chǎn)生外部屮斷請求(IRQ)異常處理??焖?/p>
10、111斷請求(FIQ):當處理器的外部快速中斷請求 引腳有效,而R.CPSR寄存器的F控制位被清除時, 處理器產(chǎn)生快速屮斷請求(FIQ)界常處理。2.4 ARM的異常中斷開常中斷類型復(fù)位未定義指今開常中斷模式管理模式未定義模式向量地址0x000000000x00000004優(yōu)先級(1最拓)16軟件屮斷(SWI)指令預(yù)取中止管理模式中止模式0x00000008OxOOOOOOOC65數(shù)據(jù)訪冋中止保留IRQ (外部中斷請求)FIQ (快速中斷請求)中止棋式0x000000100x000000140x00000018 OxOOOOOOlC2IRQ模式FIQ模式43ARM處理器對異常中斷的響應(yīng)過程進入
11、異常中斷的過程(山內(nèi)核門動完成) 保/rPC-4值到新的異常模式的Lr中,以便處理完異常后,能 正確返回原程序。 保存CPSR到新的異常模式的SPSR屮。強制改變Mode bits,使ARM進入相應(yīng)的運行模式。 強制PC值,設(shè)置成該界常模式的向量地址,從而跳轉(zhuǎn)到和應(yīng)的 異常處理程序處執(zhí)行程岸。 設(shè)置CPSR中的中斷禁止位,以禁I上中斷發(fā)牛。 從異常中斷返回的過程(需編程實現(xiàn))山鏈接寄存器LR的值恢復(fù)PC,返回到發(fā)生斤常中斷的指令的 下條指令處執(zhí)行程序。從 SPSR 恢復(fù) CPSRo清除中斷屏蔽位。注:當一個異常發(fā)生時,ARM處理器總是切換到ARM狀態(tài)(L!卩非Thumb狀態(tài)).1425 ARM
12、的存儲體系存儲器格式12高地址345678低地址Little Endian format低位字節(jié)存放在低地址如:0x123456781:存儲器中的存儲順序如圖所示。25 ARM的存儲體系存儲器格式78高地址5612低地址Big Endian format高位字節(jié)存放在低地址如:0x123456781:存儲器中的存儲順序如圖所示1726 ARM片上總線 AM BAAdvanced Microcontroller BusArchitecture (先進的微控制器總線體系結(jié)構(gòu)) AM BA總線定義3種規(guī)范 AHBAdvaneed High-performance Bus:用于連接高件能、 高吞吐量的系統(tǒng)模塊,如:CPU、DMA和DSP。它
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度綠色有機農(nóng)資直銷合作合同2篇
- 二零二五年度船運水泥運輸合同爭議解決機制范本2篇
- 2025年度門閘產(chǎn)品進出口貿(mào)易合同范本4篇
- 個性化定制債權(quán)轉(zhuǎn)讓及擔保合同模板版B版
- 二零二五年度集裝箱船舶租賃合同4篇
- 2025年度瓷磚設(shè)計創(chuàng)新研發(fā)采購合同樣本4篇
- 2025年度個人旅游保險及緊急救援服務(wù)合同2篇
- 2025年智能家居系統(tǒng)個性化定制服務(wù)合同4篇
- 2025年度綠色建筑項目投資入股分紅合同4篇
- 2025年度墓地租賃管理及續(xù)租保障合同4篇
- 國家中醫(yī)藥管理局發(fā)布的406種中醫(yī)優(yōu)勢病種診療方案和臨床路徑目錄
- 2024年全國甲卷高考化學(xué)試卷(真題+答案)
- 汽車修理廠管理方案
- 人教版小學(xué)數(shù)學(xué)一年級上冊小學(xué)生口算天天練
- 三年級數(shù)學(xué)添括號去括號加減簡便計算練習(xí)400道及答案
- 蘇教版五年級上冊數(shù)學(xué)簡便計算300題及答案
- 澳洲牛肉行業(yè)分析
- 老客戶的開發(fā)與技巧課件
- 計算機江蘇對口單招文化綜合理論試卷
- 成人學(xué)士學(xué)位英語單詞(史上全面)
- KAPPA-實施方法課件
評論
0/150
提交評論