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

正文內(nèi)容

嵌入式處理器體系結(jié)構(gòu)-在線瀏覽

2025-06-15 19:46本頁面
  

【正文】 處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換: ?ARM狀態(tài) 此時處理器執(zhí)行 32位的字對齊的 ARM指令 ?Thumb狀態(tài) 此時處理器執(zhí)行 16位的、半字對齊的 Thumb指令 ARM處理器的工作狀態(tài) ARM與 THUMB ?THUMB指令是 ARM指令的子集 ?可以相互調(diào)用,只要遵循一定的調(diào)用規(guī)則 ?Thumb指令與 ARM指令的時間效率和空間效率關(guān)系為 : ? 存儲空間約為 ARM代碼的 60%~ 70% ? 指令數(shù)比 ARM代碼多約 30%~ 40% ? 存儲器為 32位時 ARM代碼比 Thumb代碼快約 40% ? 存儲器為 16位時 Thumb比 ARM代碼快約 40~ 50% ? 使用 Thumb代碼,存儲器的功耗會降低約 30% ARM處理器的工作狀態(tài) ARM處理器的工作狀態(tài) Thumb指令集具有靈活、小巧的特點 ARM指令集支持ARM核所有的特性,具有高效、快速的特點 狀態(tài)切換方法 ? ARM指令集和 Thumb指令集均有切換處理器狀態(tài)的指令,并可在兩種工作狀態(tài)之間切換, ? 在開始執(zhí)行代碼時,應(yīng)該處于 ARM狀態(tài)。 切換到 Thumb狀態(tài) ? 當(dāng)操作數(shù)寄存器的狀態(tài)位(位 0)為 1時,可以采用執(zhí)行 BX指令的方法,使微處理器從 ARM狀態(tài)切換到 Thumb狀態(tài)。 ARM處理器的工作狀態(tài) 。 ? 在處理器進行異常處理時,把 PC指針放入異常模式鏈接寄存器中,并從異常向量地址開始執(zhí)行程序,也可以使處理器切換到 ARM狀態(tài)。從 Thumb狀態(tài)切換到 ARM狀態(tài) LDR R0,=Lable BX R0 地址最低位為0,表示切換到 ARM狀態(tài) 跳轉(zhuǎn)地址標號 ARM體系結(jié)構(gòu)直接支持的數(shù)據(jù)類型 ?字節(jié) 8位 ?半字 16位(必須分配為占用兩個字節(jié)) ?字 32位(必須分配為占用 4個字節(jié)) 1 1 1 2 3 4 2 ARM直接支持的數(shù)據(jù)類型 ARM微處理器的存儲器格式 ? ARM體系結(jié)構(gòu)所支持的最大尋址空間為 4GB( 232字節(jié)) ? ARM體系結(jié)構(gòu)將存儲器看作是從 0地址開始的字節(jié)的線性組合。 ? ARM體系結(jié)構(gòu)可以用兩種方法存儲字數(shù)據(jù),稱之為大端格式和小端格式。如鍵盤輸入的信息以及打印機、顯示器輸出的信息等 時間上連續(xù)變化的量,如溫度、壓力、流量等 只有兩個狀態(tài)的量,如閥門的合與斷、電路的開與關(guān)等 CPU與I/O設(shè)備之間的接口信息 反映外設(shè)當(dāng)前工作狀態(tài)的信息 READY信號:輸入設(shè)備是否準備好 BUSY信號:輸出設(shè)備是否忙 …… CPU向外部設(shè)備發(fā)送的控制命令信息 ?讀寫控制信號 ?時序控制信號 ?中斷信號 ?片選信號 ?其它操作信號 ARM處理器的 I/O編址方式 I/O端口的編址方式 I/O端口的編址方法,即 I/O端口的地址安排方式 存儲器映射編址 I/O映射編址 I/O端口的地址與內(nèi)存地址統(tǒng)一編址,即 I/O單元與內(nèi)存單元在同一地址空間 I/O端口與內(nèi)存單元分開編址,即 I/O單元與內(nèi)存單元都有自己獨立的地址空間 ARM處理器的 I/O編址方式 存儲器映射編址 I/O映射方式 優(yōu)點 ?可采用豐富的內(nèi)存操作指令訪問 I/O單元 ?無需單獨的 I/O地址譯碼電路 ?無需專用的 I/O指令 ?I/O單元不占用內(nèi)存空間 ?I/O程序易讀 缺點 ?外設(shè)占用內(nèi)存空間 ?I/O程序不易讀 I/O操作指令僅有單一的傳送指令 ,I/O接口需有地址譯碼電路 舉例 ARM中, I/O端口與內(nèi)存單元統(tǒng)一編址 Intel 80X86系列, I/O端口與內(nèi)存單元分開編址,I/O端口有自己獨立的地址空間,其大小為 64KB ARM處理器的 I/O編址方式 ARM微處理器 I/O編址方式 ? ARM 的 I/O端口都是 內(nèi)存映射 的方式 ,即對 I/O端口的訪問與內(nèi)存的訪問的方式完全一樣 。 ARM處理器的 I/O編址方式 七中處理器工作模式 ARM處理器的工作模式 處理器模式 說明 備注 用戶 (usr) 正常程序執(zhí)行模式 不能直接切換到其它模式 系統(tǒng) (sys) 運行操作系統(tǒng)的特權(quán)任務(wù) 與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq) 支持高速數(shù)據(jù)傳輸及通道處理 FIQ異常響應(yīng)時進入此模式 中斷 (irq) 用于通用中斷處理 IRQ異常響應(yīng)時進入此模式 管理 (svc) 操作系統(tǒng)保護模式 系統(tǒng)復(fù)位和軟件中斷響應(yīng)時進入此模式 中止 (abt) 用于支持虛擬內(nèi)存和 /或存儲器保護 在 ARM7TDMI沒有大用處 未定義 (und) 支持硬件協(xié)處理器的軟件仿真 未定義指令異常響應(yīng)時進入此模式 ARM微處理器: CPU模式 User模式 程序不能訪問有些受保護的資源 只能通過異常的形式來改變 CPU的當(dāng)前運行模式 特權(quán)模式可以存取系統(tǒng)中的任何資源 System模式 與 User模式的運行環(huán)境一樣 但是它可以不受任何限制的訪問任何資源 該模式主要用于運行系統(tǒng)中的一些 特權(quán)任務(wù) FIQ模式 IRQ模式 Supervisor模式 Abort模式 Undefined模式 異常模式: 主要是在 外部中斷 或者程序執(zhí)行 非法操作 時會觸發(fā) ARM處理器的工作模式 用戶模式和特權(quán)模式 ? 除了用戶模式之外的其他 6種處理器模式稱為特權(quán)模式 ? 特權(quán)模式下,程序可以訪問所有的系統(tǒng)資源,也可以任意地進行處理器模式的切換。 ? 用戶模式下,當(dāng)需要進行處理器模式切換時,應(yīng)用程序可以產(chǎn)生異常處理,在異常處理中進行處理器模式的切換。 ARM內(nèi)部寄存器和一些片內(nèi)外設(shè)在硬件設(shè)計上只允許(或者可選為只允許)特權(quán)模式下訪問。 未定義 (und) 中止 (abt) 管理 (svc) 中斷 (irq) 快中斷 (fiq) 系統(tǒng) (sys) ARM處理器的工作模式 ? 異常模式 處理器模式 說明 備注 用戶 (usr) 正常程序工作模式 不能直接切換到其它模式 系統(tǒng) (sys) 用于支持操作系統(tǒng)的特權(quán)任務(wù)等 與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq) 支持高速數(shù)據(jù)傳輸及通道處理 FIQ異常響應(yīng)時進入此模式 中斷 (irq) 用于通用中斷處理 IRQ異常響應(yīng)時進入此模式 管理 (svc) 操作系統(tǒng)保護代碼 系統(tǒng)復(fù)位和軟件中斷響應(yīng)時進入此模式 中止 (abt) 用于支持虛擬內(nèi)存和 /或存儲器保護 在 ARM7TDMI沒有大用處 未定義 (und) 支持硬件協(xié)處理器的軟件仿真 未定義指令異常響應(yīng)時進入此模式 未定義 中止 (abt) 管理 (svc) 中斷 (irq) 快中斷 (fiq) 這五種模式稱為 異常模式 。當(dāng)特定的異常出現(xiàn)時,處理器進入相應(yīng)的模式。 ARM處理器的工作模式 ? 用戶和系統(tǒng)模式 處理器模式 說明 備注 用戶 (usr) 正常程序工作模式 不能直接切換到其它模式 系統(tǒng) (sys) 用于支持操作系統(tǒng)的特權(quán)任務(wù)等 與用戶模式類似,但具有可以直接切換到其它模式等特權(quán) 快中斷 (fiq) 支持高速數(shù)據(jù)傳輸及通道處理 FIQ異常響應(yīng)時進入此模式 中斷 (irq) 用于通用中斷處理 IRQ異常響應(yīng)時進入此模式 管理 (svc) 操作系統(tǒng)保護代碼 系統(tǒng)復(fù)位和軟件中斷響應(yīng)時進入此模式 中止 (abt) 用于支持虛擬內(nèi)存和 /或存儲器保護 在 ARM7TDMI沒有大用處 未定義 (und) 支持硬件協(xié)處理器的軟件仿真 未定義指令異常響應(yīng)時進入此模式 這兩種模式都不能由異常進入,而且它們使用完全相同的寄存器組。操作系統(tǒng)在該模式下訪問用戶模式的寄存器就比較方便,而且操作系統(tǒng)的一些特權(quán)任務(wù)可以使用這個模式訪問一些受控的資源。但是這些寄存器不能被同時訪問,具體哪些寄存器是可編程訪問的,取決微處理器的工作狀態(tài)及具體的運行模式。 ARM處理器的寄存器組織 ARM狀態(tài)下的寄存器組織 ?未分組寄存器 R0~ R7 ?分組寄存器 R8~ R14 ?程序計數(shù)器 PC(R15) ARM處理器的寄存器組織 ?當(dāng)前程序狀態(tài)寄存器 CPSR(R16) 未分組寄存器 R0~ R7 ?在所有的運行模式下,未分組寄存器都指向同一個物理寄存器,他們未被系統(tǒng)用作特殊的用途,因此,在中斷或異常處理進行運行模式轉(zhuǎn)換時,由于不同的處理器運行模式均使用相同的物理寄存器,可能會造成寄存器中數(shù)據(jù)的破壞,這一點在進行程序設(shè)計時應(yīng)引起注意。 ARM處理器的寄存器組織 分組寄存器 R13~ R14 ? R1 R14:每個寄存器對應(yīng) 6個不同的物理寄存器 ? 其中的一個是用戶模式與系統(tǒng)模式共用,另外 5個物理寄存器對應(yīng)于其他 5種不同的運行模式 ? 采用以下的記號來區(qū)分不同的物理寄存器: ? R13_mode ? R14_mode ? mode為以下幾種之一: usr、 fiq、 irq、 svc、 abt、 und。 ? 在 Thumb指令集中,某些指令強制性的要求使用 R13作為堆棧指針。 ARM處理器的寄存器組織 子程序連接寄存器 — R14 ? R14也稱作子程序連接寄存器或連接寄存器 LR。其他情況下, R14用作通用寄存器。 ARM處理器的寄存器組織 程序計數(shù)器 PC(R15) ? ARM狀態(tài)下,位 [1:0]為 0,位 [31:2]用于保存 PC; ? Thumb狀態(tài)下,位 [0]為 0,位 [31:1]用于保存 PC; ? R15雖然也可用作通用寄存器,但一般不這么使用,因為對 R15的使用有一些特殊的限制,當(dāng)違反了這些限制時,程序的執(zhí)行結(jié)果是未知的。 ARM處理器的寄存器組織 程序狀態(tài)寄存器 (CPSR/SPSR) ? 每一種運行模式下又都有一個專用的物理狀態(tài)寄存器,稱為 SPSR(備份的程序狀態(tài)寄存器),異常發(fā)生時, SPSR用于保存 CPSR的值,從異常退出時則可由 SPSR來恢復(fù)CPSR。 ARM處理器的寄存器組織 ? 寄存器 R16用作 CPSR(當(dāng)前程序狀態(tài)寄存器 ), CPSR可在任何運行模式下被訪問,它包括條件標志位、中斷禁止位、當(dāng)前處理器模式標志位,以及其他一些相關(guān)的控制和狀態(tài)位。 寄存器類別 寄存器在匯編中的名稱 各模式下實際訪問的寄存器 用戶 系統(tǒng) 管理 中止 未定義 中斷 快中斷 通用寄存器和程序計數(shù)器 R0(a1) R0 R1(a2) R1 R2(a3) R2 R3(a4) R3 R4(v1) R4 R5(v2) R5 R6(v3) R6 R7(v4) R7 R8(v5) R8 R8_fiq R9(SB,v6) R9 R9_fiq R10(SL,v7) R10 R10_fiq R11(FP,v8) R11 R11_fiq R12(IP) R12 R12_fiq R13(SP) R13 R13_svc R13_abt R13_und R13_irq R13_fiq R14(LR) R14 R14_svc R14_abt R14_und R14_irq R14_fiq R15(PC) R15 狀態(tài)寄存器 CPSR CPSR SPSR 無 SPSR_abt SPSR_abt SPSR_und SPSR_irq SPSR_fiq 無 5 用戶無系統(tǒng)SPSR_abt s c s c 管理SPSR_abt abt t 中止SPSR_und 未定義SPSR_irq irq irq 中斷SPSR_fiq fi fi fi fi fi fi fi 快中斷ARM狀態(tài)各模式下可以訪問的寄存器 寄存器類別 寄存器在匯編中的名稱 各模式下實際訪問的寄存器 用戶 系統(tǒng) 管理 中止 未定義 中斷 快中斷 通用寄存器和程序計數(shù)器 R0(a1) R0 R1(a2) R1 R2(a3) R2 R3(a4) R3 R4(v
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1