ARM9TDMI Processor Core Memory Interface
3-6
Copyright © 1998, 1999 ARM Limited. All rights reserved.
ARM DDI0145B
3.3
Endian effects for instruction fetches
The ARM9TDMI will perform 32-bit or 16-bit instruction fetches depending on
whether the processor is in ARM or Thumb state. The processor state may be
determined externally by the value of the
ITBIT
signal. When this signal is LOW, the
processor is in ARM state, and 32-bit instructions are fetched. When it is HIGH, the
processor is in Thumb state and 16-bit instructions are fetched.
When the processor is in ARM state, its endian configuration does not affect the
instruction fetches, as all 32 bits of
ID[31:0]
are read. However, in Thumb state the
processor will read either from the upper half of the instruction data bus,
ID[31:16]
, or
from the lower half,
ID[15:0]
. This is determined by the endian configuration of the
memory system, which is indicated by the
BIGEND
signal, and the state of
IA[1]
.
Table 3-2 shows which half of the data bus is sampled in the different configurations:
When a 16-bit instruction is fetched, the ARM9TDMI ignores the unused half of the
data bus.
Table 3-2 Endian effect on instruction position
Little BIGEND = 0
Big BIGEND = 1
IA[1] = 0
ID[15:0]
ID[31:16]
IA[1] = 1
ID[31:16]
ID[15:0]
Summary of Contents for ARM9TDMI
Page 6: ...Contents vi Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...
Page 12: ...Preface xii Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...
Page 16: ...Introduction 1 4 Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...
Page 22: ...Programmer s Model 2 6 Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...
Page 110: ...Test Issues 6 6 Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...
Page 154: ...Index Index 4 Copyright 1998 1999 ARM Limited All rights reserved ARM DDI0145B ...