Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CS 220 / ARM / ARM1176JZ-S Technical Reference Mmanual.pdf
Источник:
Скачиваний:
45
Добавлен:
16.04.2015
Размер:
4.47 Mб
Скачать

 

 

 

 

 

 

 

 

 

 

Programmer’s Model

 

 

Thumb state general registers and program counter

 

 

System and

 

FIQ

 

Supervisor

 

Abort

 

IRQ

 

Undefined

 

Secure

User

 

 

 

 

 

 

monitor

 

 

 

 

 

 

 

 

 

 

 

R0

 

R0

 

R0

 

R0

 

R0

 

R0

 

R0

 

 

 

 

 

 

 

 

 

 

 

 

 

R1

 

R1

 

R1

 

R1

 

R1

 

R1

 

R1

 

 

 

 

 

 

 

 

 

 

 

 

 

R2

 

R2

 

R2

 

R2

 

R2

 

R2

 

R2

 

 

 

 

 

 

 

 

 

 

 

 

 

R3

 

R3

 

R3

 

R3

 

R3

 

R3

 

R3

 

 

 

 

 

 

 

 

 

 

 

 

 

R4

 

R4

 

R4

 

R4

 

R4

 

R4

 

R4

 

 

 

 

 

 

 

 

 

 

 

 

 

R5

 

R5

 

R5

 

R5

 

R5

 

R5

 

R5

 

 

 

 

 

 

 

 

 

 

 

 

 

R6

 

R6

 

R6

 

R6

 

R6

 

R6

 

R6

 

 

 

 

 

 

 

 

 

 

 

 

 

R7

 

R7

 

R7

 

R7

 

R7

 

R7

 

R7

 

 

 

 

 

 

 

 

 

 

 

 

 

SP

 

SP_fiq

 

SP_svc

 

SP_abt

 

SP_irq

 

SP_und

 

SP_mon

 

 

 

 

 

 

 

 

 

 

 

 

 

LR

 

LR_fiq

 

LR_svc

 

LR_abt

 

LR_irq

 

LR_und

 

LR_mon

 

 

 

 

 

 

 

 

 

 

 

 

 

PC

 

PC

 

PC

 

PC

 

PC

 

PC

 

PC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Thumb state program status registers

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CPSR

 

CPSR

 

CPSR

 

CPSR

 

CPSR

 

CPSR

 

CPSR

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SPSR_fiq

 

SPSR_svc

 

SPSR_abt

 

SPSR_irq

 

SPSR_und

 

SPSR_mon

 

 

 

 

 

 

 

 

 

 

 

 

 

= banked register

Figure 2-8 Register organization in Thumb state

2.9.3Accessing high registers in Thumb state

In Thumb state, the high registers, R8–R15, are not part of the standard core register set. You can use special variants of the MOV instruction to transfer a value from a low register, in the range R0–R7, to a high register, and from a high register to a low register. The CMP instruction enables you to compare high register values with low register values. The ADD instruction enables you to add high register values to low register values. For more details, see the ARM Architecture Reference Manual.

2.9.4ARM state and Thumb state registers relationship

Figure 2-9 on page 2-23 shows the relationships between the Thumb state and ARM state registers. See the Jazelle V1 Architecture Reference Manual for details of Jazelle state registers.

ARM DDI 0333H

Copyright © 2004-2009 ARM Limited. All rights reserved.

2-22

ID012410

Non-Confidential, Unrestricted Access

 

Low registers

High registers

Thumb state

R0

R1

R2

R3

R4

R5

R6

R7

Stack pointer (SP)

Link register (LR)

Program counter (PC)

CPSR

SPSR

Programmer’s Model

ARM State

R0

R1

R2

R3

R4

R5

R6

R7

R8

R9

R10

R11

R12

Stack Pointer (R13)

Link Register (R14)

Program Counter (R15)

CPSR

SPSR

Figure 2-9 ARM state and Thumb state registers relationship

Note

Registers R0–R7 are known as the low registers. Registers R8–R15 are known as the high registers.

ARM DDI 0333H

Copyright © 2004-2009 ARM Limited. All rights reserved.

2-23

ID012410

Non-Confidential, Unrestricted Access

 

Соседние файлы в папке ARM