ARM指令集.pptVIP

  • 27
  • 0
  • 约 50页
  • 2017-09-27 发布于海南
  • 举报
ARM指令集 Author : Steve Furber Advisor: Mei-Ling Chiang Speaker: 徐翔宇 Date: 2007/10/23 Overview 基本概念介紹 Exceptions ARM 指令集 Thumb 指令集 基本概念介紹 Architectural inheritance ARM 可見的暫存器 記憶體組織 ARM 操作模式 Architectural inheritance ARM 體系結構採用 Berkeley RISC 設計中的特徵 (1) Load / Store 架構 (2) 固定的32位元指令 (3) 3位址 (3-address) 指令格式 簡單性 採用RISC方法基本原則 ARM 可見的暫存器(1/2) ARM 可見的暫存器(2/2) CPSR:當前指令暫存器 T: Thumb指令集 I,F:中斷致能 條件碼旗標(N:負數 Z:零 C:進位 V:溢位) 記憶體組織 ARM 操作模式 Exceptions Exceptions Exception的進入 Exception的返回 Exception priorities Exceptions ARM Exception 可以分為3類 指令執行引起的直接異常 ex. 軟體中斷,未定義指令,預取指中止 指令執行引起的間接異常 ex. 資料中止(Load和Store資料存時記憶體發生故障) 外部產生的與指令流無關的異常 ex. 重置,IRQ,FIQ Exception的進入(1/2) 處理器將執行下列動作 進入與特定異常相應的操作模式 將引起異常指令的下一到指令的位址保存到新模式的 r14 中 將CPSR的原值保存到新模式的SPSR中 藉由設置CPSR的第7位元來禁止IRQ,若為快速中斷則設置第6位元來禁止快速中斷 將PC強制賦值 Exception的進入(2/2) Exception的返回 恢復異常發生時的用戶狀態 所有修改過的用戶暫存器必須從處理程式的堆疊中恢復 CPSR必須從相應的SPSR中恢復 PC必須變回到在用戶指令流中相應的指令位址 Exception priorities ARM 優先權如下 重置 資料異常中止 FIQ IRQ 預取指異常中止 SWI,未定義指令 ARM 指令集 資料處理指令 資料傳送指令 控制流程指令 Coprocessor指令 ARM 體系結構總結 資料處理指令(1/5) ARM資料處理指令原則 所有運算元是32位元寬 運算結果為32位元寬放在一個暫存器中 每一個運算元暫存器和結果暫存器都在指令中獨立地指定 資料處理指令(2/5) 資料處理指令(3/5) 資料處理指令(4/5) 資料處理指令(5/5) 算數操作 ex. ADD r0,r1,r2 ; r0=r1 + r2 Bit-wise 邏輯操作 ex. AND r0,r1,r2 ; r0=r1 and r2 暫存器傳送操作 ex. MOV r0,r2 ; r0=r2 Comparison 操作 ex. CMP r1,r2 ; 根據r1-r2的結果設置cc 專門資料處理指令(乘法) ex. MLA r4,r3,r2,r1 ; r4=(r3 x r2 + r1) 資料傳送指令(1/10) 單暫存器 Load 和 Store 指令 Base plus offset 定址 多暫存器資料傳送 資料傳送指令(2/10) 資料傳送指令(3/10) 資料傳送指令(4/10) 資料傳送指令(5/10) 資料傳送指令(6/10) 單暫存器 Load 和 Store 指令 ex. LDR r0,[r1] ; r0=men32[r1] Base plus offset 定址 ex. LDR r0,[r1,#4] ; r0=men32[r1+4] 多暫存器資料傳送 ex. LDMIA r1,{r0,r2,r5} ; r0=men32[r1] ; r2=men32[r1+4] ; r5=men32[r1+8

文档评论(0)

1亿VIP精品文档

相关文档