User manual

...the world's most energy friendly microcontrollers
2012-04-24 - Giant Gecko Family - d0053_Rev0.96 40
www.energymicro.com
7.5.2 MSC_READCTRL - Read Control Register
Offset Bit Position
0x004
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Reset
0x0
0
0
0
0
0
0
0x1
Access
RW
RW
RW
RW
RW
RW
RW
RW
Name
BUSSTRATEGY
PREFETCH
RAMCEN
EBICDIS
ICCDIS
AIDIS
IFCDIS
MODE
Bit Name Reset Access Description
31:18 Reserved
To ensure compatibility with future devices, always write bits to 0. More information in Section 2.1 (p. 3)
17:16 BUSSTRATEGY 0x0 RW Strategy for bus matrix
Specify which master has low latency to bus matrix
Value Mode Description
0 CPU
1 DMA
2 DMAEM1
3 NONE
15:9 Reserved
To ensure compatibility with future devices, always write bits to 0. More information in Section 2.1 (p. 3)
8 PREFETCH 0 RW Prefetch Mode
Set to configure level of prefetching.
7 RAMCEN 0 RW RAM Cache Enable
Enable instruction caching for RAM in code-space
6 EBICDIS 0 RW External Bus Interface Cache Disable
Disable instruction cache for external bus interface.
5 ICCDIS 0 RW Interrupt Context Cache Disable
Set this bit to automatically disable caching of vector fetches and instruction fetches in interrupt context. Cache lookup will still be
performed in interrupt context. When set, the performance counters will not count when these types of fetches occur.
4 AIDIS 0 RW Automatic Invalidate Disable
When this bit is set the cache is not automatically invalidated when a write or page erase is performed.
3 IFCDIS 0 RW Internal Flash Cache Disable
Disable instruction cache for internal flash memory.
2:0 MODE 0x1 RW Read Mode
After reset, the core clock is 14 MHz from the HFRCO and the MODE field of MSC_READCTRL register is set to WS1. The reset
value is WS1 because the HFRCO may produce a frequency above 16 MHz before it is calibrated. WS1 or WS1SCBTP mode is
required for a frequency above 16 MHz. If software wants to set a core clock frequency above 16 MHz, this register must be set to
WS1 or WS1SCBTP before the core clock is switched to the higher frequency. When changing to a lower frequency, this register
can be set to WS0 or WS0SCBTP after the frequency transition has been completed. If the HFRCO is used as clock source, wait
until the oscillator is stable on the new frequency to avoid unpredictable behavior.
Value Mode Description
0 WS0 Zero wait-states inserted in fetch or read transfers
1 WS1 One wait-state inserted for each fetch or read transfer. This mode is required for a core
frequency above 16 MHz.
2 WS0SCBTP Zero wait-states inserted with the Suppressed Conditional Branch Target Prefetch
(SCBTP) function enabled. SCBTP saves energy by delaying Cortex-M3 conditional
branch target prefetches until the conditional branch instruction is in the execute stage.
When the instruction reaches this stage, the evaluation of the branch condition is
completed and the core does not perform a speculative prefetch of both the branch
target address and the next sequential address. With the SCBTP function enabled,
one instruction fetch is saved for each branch not taken, with a negligible performance
penalty.
3 WS1SCBTP One wait-state access with SCBTP enabled.