Tightly-coupled SRAM
5-4
Copyright © ARM Limited 2000. All rights reserved.
5.2.3
I-SRAM load mode
You must initialize the I-SRAM with the required code image before execution from
the I-SRAM.
You can initialize the I-SRAM by writing to the memory from the AM9E-S core data
interface.
The I-SRAM load mode allows this to be done in an efficient manner. Using the load
mode allows you to copy from an address in the data cache or external memory into the
same address within the I-SRAM.
The I-SRAM load mode bit of CP15 Register 1 inhibits reads from the I-SRAM, forcing
reads from addresses that are within the I-SRAM address range to access either main
memory, the data cache. Writes to addresses that are within the I-SRAM range are not
affected by the Instruction Load Mode bit.
The procedure for initializing the I-SRAM using the load mode is as follows:
1.
Enable the I-SRAM and instruction load mode
2.
Load ARM registers from main memory, data cache or data RAM
3.
Store ARM registers into I-SRAM
4.
Increment address pointers and repeat load/store steps until the code image has
been copied.
A suggested assembler code sequence for this procedure is:
MOV R0, #0
; Initialize pointer
LDR R1, =ImageTop
; Define end of code image
MRC p15, 0, R2, c1, c0, 0 ; Read Control Register
ORR R2, R2, #&C0000
MCR p15, 0, R2, c1, c0, 0 ; Enable Instruction RAM and Load Mode
CopyLoop
LDMIA R0, {R2 - R9}
; Load 8 registers from main memory
STMIA R0!, {R2 - R9}
; Store 8 regs into instruction SRAM
CMP R1, R0
; Check if limit reached
BGT CopyLoop
; Repeat if more to do
SWP
and
SWPB
operations to the instruction tightly-coupled memory while it is in load
mode have unpredictable results. The read accesses external memory or the data cache,
and the write updates the instruction tightly-coupled memory.
SWP
and
SWPB
operations must not be performed to addresses in the instruction
tightly-coupled SRAM space while it is in load mode.
Summary of Contents for ARM946E-S
Page 1: ...ARM DDI 0155A ARM946E S Technical Reference Manual ...
Page 6: ...vi Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A 04 Limited Confidential ...
Page 54: ...Programmer s Model 2 34 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 70: ...Caches 3 16 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 78: ...Protection Unit 4 8 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 112: ...Coprocessor Interface 7 14 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...