Atmel ARM-Based Evaluation Kit AT91SAM9N12-EK AT91SAM9N12-EK Data Sheet

Product codes
AT91SAM9N12-EK
Page of 248
Tightly-Coupled Memory Interface 
ARM DDI0198D
Copyright © 2001-2003 ARM Limited. All rights reserved.
5-19
5.4
TCM programmer’s model
After reset, the behavior of the TCMs is controlled by the state of the TCM Region 
Register, CP15 c9.
5.4.1
Enabling the ITCM
The ITCM can automatically be enabled at reset using the INITRAM pin. If 
INITRAM is held HIGH during system reset, and the VINITHI pin is deasserted, the 
ITCM is enabled with the ITCM region base set to 
0x0
. This allows boot code to be run 
from the ITCM. Boot code must be pre-loaded into the TCM for this to be useful.
If INITRAM is LOW during system reset and the ITCM is disabled, the ITCM can be 
enabled by writing to the ITCM Region Register. See TCM Region Register c9 on 
page 2-29
.
Note
 If INITRAM = 1 and VINITHI = 1, the ITCM is enabled at system reset but the 
ARM926EJ-S processor boots from 
0xFFFF0000
.
5.4.2
Enabling the DTCM
Unlike the ITCM there is no way of automatically enabling the DTCM at reset. The 
DTCM can only be enabled by writing to the DTCM Region Register. See TCM Region 
Register c9
 on page 2-29.
5.4.3
Disabling the ITCM
Disable the ITCM by clearing bit 0 of the ITCM Region Register, CP15 c9. This register 
must be written using a read-modify-write operation.
5.4.4
Disabling the DTCM
Disable the DTCM by clearing bit 0 of the DTCM Region Register, CP15 c9. This 
register must be written using a read-modify-write operation.
5.4.5
Cachable and bufferable attributes
All MMU page table entries used to map TCM address space must be marked 
noncachable. This is required for forward compatibility.