The ARM Instruction Set - University of Texas at Austin
[Pages:85]EE382N-4 Embedded Systems Architecture
The ARM Instruction Set Architecture
8/22/2008
Mark McDermott With help from our good friends at ARM
Fall 2008
EE382N-4 Embedded Systems Architecture
Main features of the ARM Instruction Set
All instructions are 32 bits long. Most instructions execute in a single cycle. Most instructions can be conditionally executed. A load/store architecture
? Data processing instructions act only on registers
? Three operand format ? Combined ALU and shifter for high speed bit manipulation
? Specific memory access instructions with powerful auto-indexing addressing modes.
? 32 bit and 8 bit data types
? and also 16 bit data types on ARM Architecture v4.
? Flexible multiple register load and store instructions
Instruction set extension via coprocessors Very dense 16-bit compressed instruction set (Thumb)
8/22/2008
2
Coprocessors
EE382N-4 Embedded Systems Architecture
? Up to 16 coprocessors can be defined ? Expands the ARM instruction set ? Each coprocessor can have up to 16 private registers of any reasonable size ? Load-store architecture
3
EE382N-4 Embedded Systems Architecture
Thumb
Thumb is a 16-bit instruction set
? Optimized for code density from C code ? Improved performance form narrow memory ? Subset of the functionality of the ARM instruction set
Core has two execution states ? ARM and Thumb
? Switch between them using BX instruction
Thumb has characteristic features:
? Most Thumb instruction are executed unconditionally ? Many Thumb data process instruction use a 2-address format ? Thumb instruction formats are less regular than ARM instruction formats, as
a result of the dense encoding.
4
EE382N-4 Embedded Systems Architecture
Processor Modes
The ARM has six operating modes:
? User (unprivileged mode under which most tasks run)
? FIQ (entered when a high priority (fast) interrupt is raised) ? IRQ (entered when a low priority (normal) interrupt is raised) ? Supervisor (entered on reset and when a Software Interrupt instruction is
executed) ? Abort (used to handle memory access violations) ? Undef (used to handle undefined instructions)
ARM Architecture Version 4 adds a seventh mode:
? System (privileged mode using the same registers as user mode)
8/22/2008
5
EE382N-4 Embedded Systems Architecture
The Registers
ARM has 37 registers in total, all of which are 32-bits long.
? 1 dedicated program counter ? 1 dedicated current program status register ? 5 dedicated saved program status registers ? 30 general purpose registers
However these are arranged into several banks, with the accessible bank being governed by the processor mode. Each mode can access
? a particular set of r0-r12 registers ? a particular r13 (the stack pointer) and r14 (link register) ? r15 (the program counter) ? cpsr (the current program status register)
And privileged modes can also access
? a particular spsr (saved program status register)
8/22/2008
6
The ARM Register Set
EE382N-4 Embedded Systems Architecture
Current Visible Registers
IFUSARIVnsbQQedCorMerMtfMoMooddodeedee
r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 (sp) r14 (lr) r15 (pc)
User
r8 r9 r10 r11 r12 r13 (sp) r14 (lr)
cpsr spsr
Banked out Registers
FIQ
IRQ SVC Undef Abort
r8 r9 r10 r11 r12 r13 (sp) r14 (lr)
r13 (sp) r14 (lr)
r13 (sp) r14 (lr)
r13 (sp) r14 (lr)
r13 (sp) r14 (lr)
spsr
spsr
spsr
spsr
spsr
8/22/2008
7
EE382N-4 Embedded Systems Architecture
Register Organization Summary
User
FIQ
IRQ
SVC
Undef
r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 (sp) r14 (lr) r15 (pc)
User mode r0-r7, r15, and cpsr
r8 r9 r10 r11 r12 r13 (sp) r14 (lr)
User mode r0-r12, r15, and cpsr
r13 (sp) r14 (lr)
User mode r0-r12, r15, and cpsr
User mode r0-r12, r15, and cpsr
r13 (sp) r14 (lr)
r13 (sp) r14 (lr)
cpsr
spsr
spsr
spsr
spsr
Note: System mode uses the User mode register set
Abort
User mode r0-r12, r15, and cpsr
r13 (sp) r14 (lr)
spsr
Thumb state Low registers
Thumb state High registers
8/22/2008
8
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- mode s surveillance principle icao
- reg binary to text online converter
- axi reference guide xilinx
- multiple regression with qualitative information
- encoding of 8086 instructions 8086 instructions are
- the arm instruction set university of texas at austin
- chapter 2 instructions assembly language
- the risc v processor cornell university
- finite state machines
- instruction encoding
Related searches
- university of texas at austin
- university of texas austin tx
- university of texas at austin online
- university of texas at dallas graduate school
- university of texas austin graduate
- university of texas at dallas housing
- university of texas at austin online masters
- university of texas austin graduate school
- university of texas austin nursing
- university of texas at austin athletics
- university of texas austin certificate
- university of texas austin tuition cost