ARM ARM926EJ-S Technical Reference Manual page 146

Table of Contents

Advertisement

Bus Interface Unit
6.2.4
Byte and halfword accesses
6.2.5
AHB system considerations
6-6
This section describes byte and halfword accesses for:
Address alignment
Thumb instruction fetches
Endianness and byte lane indication.
Address alignment
The ARM926EJ-S BIU performs address alignment checking and aligns AHB
addresses to the necessary boundary. 16-bit accesses are aligned to halfword
boundaries, and 32-bit accesses to word boundaries.
Thumb instruction fetches
All instruction fetches, irrespective of the state of the ARM9EJ-S core, are made as
32-bit accesses on the AHB. If the ARM9EJ-S core is in Thumb state, then two
instructions can be fetched at a time.
Endianness and byte lane indication
The AMBA Specification (Rev 2.0) does not specify any explicit support for endianness.
The ARM926EJ-S processor provides a supplementary signal, DHBL, that indicates
which bytes are to be updated for write transfers and which bytes should contain valid
data for reads. This is created using the address, and the endianness of the access.
The CFGBIGEND signal indicates the current endianness setting used by the
ARM9EJ-S core, and reflects the value held in CP15 c1 (see Control Register c1 on
page 2-12).
Because writes are buffered, the value of the CFGBIGEND signal might be
inconsistent with DHBL if the write-buffer is not drained before changing the
endianness setting in the control register.
DHBL is encoded in little-endian format. For example, a value of b0001 indicates byte
0 in little-endian mode, and byte 3 in big-endian mode.
This section describes AHB considerations for:
Single-layer AHB systems on page 6-7
Multi-layer AHB systems on page 6-7
Multi-AHB systems on page 6-8
Copyright © 2001-2003 ARM Limited. All rights reserved.
ARM DDI0198D

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents