ARM R4 Manuale Utente

Pagina di 456
Level One Memory System 
ARM DDI 0363E
Copyright © 2009 ARM Limited. All rights reserved.
8-16
ID013010
Non-Confidential, Unrestricted Access
When either the LSU or the AXI slave interface is performing a read-modify-write operation on 
a TCM port, various internal data hazards exist for either the AXI-slave interface or the LSU. 
In these cases, additional stall cycles are generated, beyond those normally required for 
arbitration. For optimum performance of the processor when configured with ECC, ensure that 
all write bursts to the TCM from the AXI slave interface write an entire data chunk, that is, 
32-bits or 64-bits, naturally aligned, depending on the error scheme.
8.4.5
TCM initialization
You can enable the processor to boot from the ATCM or the BTCM. The INITRAMA and 
INITRAMB pins, when tied HIGH, enable the ATCM and the BTCM respectively on leaving 
reset. The LOCZRAMA pin forces one of the TCMs to have its base address at 
0x0
. If 
LOCZRAMA is tied HIGH, the initial base address of the ATCM is 
0x0
, otherwise the initial 
base address of the BTCM is 
0x0
. In both cases, the initial base address of the other TCM is 
implementation-defined, see Configurable options on page 1-13
The ATCM Region Register and BTCM Region Register respectively determine the base 
address for the ATCM and BTCM. For information on how to read the TCM region registers, 
see c9, BTCM Region Register on page 4-57 or c9, ATCM Region Register on page 4-58 as 
appropriate. For information about pre-loading data into the TCMs, see TCM on page 3-3.
8.4.6
TCM port protocol
Each TCM port operates independently to read and write data to and from the memory attached 
to it. Information about which memory location is to be accessed is passed on the TCM port 
along with write data and associated error code or parity bits, if appropriate. In addition, the 
TCM port provides information about whether the access results from an instruction fetch from 
the PFU, a data access from the LSU, or a DMA transfer from the AXI slave interface. Each 
TCM port also has an associated parity bit, computed from the address and control signals for 
that port.
Read data and associated error code or parity bits are read back from the TCM port. In addition, 
the TCM memory controller can indicate that the processor must wait one or more cycles before 
reading the response, or signal that an error has occurred and must be either aborted or retried. 
For more information about TCM errors, see External TCM errors.
For more information about TCM port protocol, the signals and timing, see the Cortex-R4 and 
Cortex-R4F Integration Manual
.
8.4.7
 External TCM errors
Each TCM port has a number of features that support the integration of a TCM RAM with an 
error checking scheme implemented in the RAM controller logic outside of the processor, that 
is, by the integrator.
Errors can be signaled to each TCM port if the external error checking scheme detects one and, 
if enabled, the processor generates an instruction or data abort or an AXI error response as 
appropriate. On a TCM read from either the instruction-side or data-side, the TCM controller 
can indicate that the read must be retried instead of generating an abort. 
You can enable external errors for each TCM port individually by setting the appropriate bits in 
the Auxiliary Control Register. See c1, Auxiliary Control Register on page 4-38. If external 
errors are not enabled for a TCM port, the processor ignores any error signaled on that port. You 
can pin-configure the processor to set the enable bits, and therefore enable external error 
checking on reset, by tying off the ERRENRAM input as required.