freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式系統(tǒng)復(fù)習(xí)20xx新-資料下載頁

2025-05-13 01:07本頁面
  

【正文】 清空流 水線 1102 CortexM3帶分支預(yù)測的 3級流水線推演過程 MOV R0, 00 ADDS R0, R0, 1 CMP R0, 0x7D0 BNE 0x00000202 BX 0X00000300 LDR R1, 00 …… MOV R2, 20 0x0200 0x0202 0x0204 0x0208 0x020A 0X020C …… 0x0300 地址 指令 取指 譯碼 執(zhí)行 MOV step1 ADDS MOV step2 CMP ADDS MOV step3 BNE CMP ADDS step4 ADDS BNE CMP step5 因為帶分支預(yù)測,跳轉(zhuǎn) 指令在譯碼時就被識別, 取指時流水線自動加載跳轉(zhuǎn)后地址的指令。 CMP ADDS BNE step6 BX BNE CMP APSR的 Z=0 APSR的 Z!=01103 CortexM3內(nèi)核概述 0mW/MHzmW/MHz CortexM3 ARM7TDMI內(nèi)核功耗與 ARM7TDMI的對比 1104 CortexM3模塊的內(nèi)部方框圖 N V I CC M 3 內(nèi) 核M P UF P BS W /J T A G D PA H B A P總線矩陣D W TA P Bi / fI T MT P I UR O M 表E T M中 斷睡 眠調(diào) 試指 令 數(shù) 據(jù)跟 蹤 端 口串 行 線或 多 管 腳專 用外 設(shè)總 線( 外 部 )I c o d e 總 線D c o d e 總 線系 統(tǒng) 總 線觸 發(fā)專 用 外 設(shè) 總 線 ( 內(nèi) 部 )C o r t e x M 3S L E E P I N GS L E E P D E E PI N T E R R U P T [ 2 3 9 : 0 ]N M IS W /J T A G1105 ARM CortexM3 體系結(jié)構(gòu) 1. ARM介紹 2. ARM CortexM3處理器內(nèi)核概述 3. CortexM3模塊的內(nèi)部方框圖 4. 編程模式 5. 內(nèi)部寄存器 6. 系統(tǒng)異常(中斷) 7. 嵌套向量中斷控制器( NVIC) 8. 存儲器保護單元( MPU) 1106 特權(quán)訪問和用戶訪問 處理模式 線程模式 特權(quán)訪問 用戶訪問 始終特權(quán)訪問 CortexM3的編程模式 1107 ? 特權(quán)執(zhí)行可以訪問所有資源。 ? 非特權(quán)執(zhí)行時對有些資源的訪問受到限制或不允許訪問。 如部分指令的使用 (設(shè)臵 FAULTMASK和 PRIMASK的 CPS指令 ) 對系統(tǒng)控制空間( SCS)的大部分寄存器的訪問。 特權(quán)訪問和用戶訪問 (非特權(quán)訪問 )的區(qū)別 FAULTMASK PRIMASK SCS …… 用戶訪問 特權(quán)訪問 1108 CortexM3的編程模式 ? 1. 線程模式 CortexM3處理器支持兩種工作模式: 線程模式和處理模式 ? ? 在復(fù)位時處理器進入線程模式 ? 異常返回時處理器進入線程模式 ? 特權(quán)和用戶(非特權(quán))代碼能夠在線程模式下運行 ? 出現(xiàn)異常時處理器進入處理模式 ? 在處理模式中,所有代碼都是特權(quán)訪問的 1109 CortexM3的編程模式 線程模式 特權(quán)訪問 復(fù)位 處理模式 特權(quán)訪問 異常 線程模式 用戶訪問 異常退出 CONTROL[0] = 1 CONTROL[0] = 0 MSR指令臵位 CONTROL[0] 1110 CONTROL[0] 特權(quán)訪問 用戶訪問 1 0 特權(quán)訪問和用戶訪問的切換 控制寄存器的第 0位 在 處理模式 下,通過 MSR指令 清零 CONTROL[0], 退出 處理模式進入線程模式時切換到 特權(quán)訪問 。 MRS R0 CONTROL ORR R0, R0, 0x01 MSR CONTROL R0 在 處理模式 下,通過 MSR指令 臵位 CONTROL[0], 退出 處理模式進入線程模式時切換到用戶訪問 。 在 線程模式特權(quán)訪問 下,通過 MSR指令 臵位CONTROL[0],即可由特權(quán)訪問進入用戶訪問 。 MOV R0 0X00 MSR CONTROL R0 1111 CortexM3的編程模式 主堆棧和進程堆棧 處理模式 線程模式 可用 MSP 始終使用 MSP 也可用 PSP 1112 CortexM3的編程模式 ? CortexM3內(nèi)核有兩個堆棧指針: MSP和 PSP 主堆棧和進程堆棧 ? 結(jié)束復(fù)位后,所有代碼都使用主堆棧 ? 所有異常都使用主堆棧 ? 異常處理程序(例如 SVC)可以通過改變其在退出時使用的EXC_RETURN值來改變線程模式使用的堆棧。 ? 在線程模式中,使用 MSR指令對 CONTROL[1]執(zhí)行寫操作也可以從主堆棧切換到進程堆棧。 ? 堆棧指針 r13是分組寄存器,在 SP_main和 SP_process之間切換。在任何時候,進程堆棧和主堆棧中只有一個是可見的,由 r13指示。 1113 CortexM3的編程模式 通過異常進行堆棧切換 線程模式 主堆棧 復(fù)位 處理模式 主堆棧 產(chǎn)生異常 線程模式 進程堆棧 異常退出 EXC_RETURN[3:0] = 0b1101 EXC_RETURN[3:0] = 0b1001 1114 CortexM3的編程模式 通過 MSR指令修改 CONTROL[1]進行堆棧切換 線程模式 主堆棧 線程模式 進程堆棧 CONTROL[1] 主堆棧 進程堆棧 1 0 控制寄存器的第 1位 一般通過中斷返回進行堆棧切換, MSR指令切換用的極少。 1115 三種執(zhí)行模式的比較 執(zhí)行模式 進入方式 堆棧 SP 用途 特權(quán)線程 模式 1.復(fù)位 2.在特權(quán)處理模式下使用 MSR指令清零CONTROL[0] 使用 SP_main: 1.復(fù)位后默認(rèn) 2. 在退出特權(quán)處理模式前, 修改返回值 EXC_RETURN[3:0]為 0b1001 3.清零 CONTROL[1] 使用 SP_process: 1.在退出特權(quán)處理模式前, 修改返回值 EXC_RETURN[3:0]為 0b1101 2.置位 CONTROL[1] 線程模式(特權(quán)或非特權(quán))+SP_process多用于操作系統(tǒng)的任務(wù)狀態(tài)。 非特權(quán)線程模式 在特權(quán)線程模式或特權(quán)處理模式下使用 MSR指令置位CONTROL[0] 特權(quán)處理 模式 出現(xiàn)異常 只能使用 SP_main 特權(quán)處理模式+SP_main在前后臺和操作系統(tǒng)中用于中斷狀態(tài)。 1116 前后臺系統(tǒng)主堆棧壓棧過程 數(shù)據(jù) … 數(shù)據(jù) 棧頂 棧底 0x20220400 0x202203FC 0x202203F8 數(shù)據(jù) 地址 數(shù)據(jù)增長方向 在 KEIL REALVIEW 和 CROSS編譯器 下,堆棧增長都為 滿遞減 SP 主堆棧 1117 前后臺系統(tǒng)主堆棧壓棧過程 數(shù)據(jù) … 數(shù)據(jù) 棧底 數(shù)據(jù) 地址 數(shù)據(jù)增長方向 在 KEIL REALVIEW 和 CROSS編譯器 下,堆棧增長都為 滿遞減 產(chǎn)生中斷 主堆棧 SP XPSR PC LR R12 R3 … R0 0x20220400 0x202203FC 0x202203F8 硬件自動 壓棧 1118 前后臺系統(tǒng)主堆棧出棧過程 數(shù)據(jù) … 數(shù)據(jù) 棧底 數(shù)據(jù) 地址 退出中 斷 主堆棧 XPSR PC LR R12 R3 R2 R1 R0 通用寄存器 0x20220400 0x202203FC 0x202203F8 SP SP SP SP SP SP SP XPSR PC LR R12 R3 R2 R1 R0 SP SP 退出異常,寄存器恢復(fù)為進入前的值。 1119 操作系統(tǒng)主堆棧和進程堆棧切換過程 主堆棧 任務(wù) 1 任務(wù) 2 復(fù)位 SP 初始化 … 數(shù)據(jù) … 數(shù)據(jù) … 數(shù)據(jù) 棧底 棧底 棧底 棧頂 棧頂 棧頂棧頂 棧頂 棧頂 SP = MSP 1120 操作系統(tǒng)主堆棧和進程堆棧切換過程 主堆棧 任務(wù) 1 任務(wù) 2 進入異常 … 數(shù)據(jù) SP … 數(shù)據(jù) … 數(shù)據(jù) 棧底 棧底 棧底 … R0 SP SP = MSP 1121 操作系統(tǒng)主堆棧和進程堆棧切換過程 主堆棧 任務(wù) 1 任務(wù) 2 退出異 常時 切換到任務(wù) 1 … 數(shù)據(jù) … 數(shù)據(jù) … 數(shù)據(jù) 棧底 棧底 棧底 … R0 SP SP = PSP 在 UCOSII下由 任務(wù) 1切換到任務(wù) 2,先進入異常,再切換到任務(wù) 2 1122 主堆棧和進程堆棧的切換 OSPendSV ...... LDR R0, [R6] 。 OSTCBHighRdyOSTCBStkPtr MSR PSP, R0 ORR LR, LR, 0x04 BX LR 異常返回時,臵位第 2個 Bit,返回線程模式,并使用進程堆棧。 1123 ARM CortexM3 體系結(jié)構(gòu) 1. ARM介紹 2. ARM CortexM3處理器內(nèi)核概述 3. CortexM3模塊的內(nèi)部方框圖 4. 編程模式 5. 內(nèi)部寄存器 6. 系統(tǒng)異常(中斷) 7. 嵌套向量中斷控制器( NVIC) 8. 存儲器保護單元( MPU) 1124 32位通用寄存器 R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R14(LR) R15(PC) XPSR r0~ r12 ,為 13個通用寄存器 低寄存器 , r0r7可以被指定通用寄存器的所有指令訪問 高寄存器 , r8r12可以被指定通用寄存器的所有 32位指令訪問 ,不能被 16位指令訪問。 SP_process SP_main 1125 分組的堆棧指針( SP) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R14(LR) R15(PC) XPSR SP_main 由于 SP忽略了寫入位 [1:0]的值,因此它自動與字,即 4字節(jié)邊界對齊 。 SP_process 處理模式 線程模式 可用 MSP 始終使用 MSP 也可用 PSP 1126 鏈接寄存器 ( LR) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R14(LR) R15(PC) XPSR 鏈接寄存器 ( LR) 在執(zhí)行分支 (branch)和鏈接 (BL)指令或帶有交換的分支和鏈接指令 (BLX)時, LR用于保存 PC的返回地址。 主要用于保存子程序的 返回地址。 LR也用于異常返回。 1127 鏈接寄存器( LR) R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13(SP) R14(LR) R15(PC) XPSR int main ( ) { .
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1