11 CACHE CONTROLLER (CCU)
S1C33L26 TECHNICAL MANUAL
Seiko Epson Corporation
11-1
Cache Controller (CCU)
11
CCU Module Overview
11.1
In order to enable fast access to instructions and data, the S1C33L26 incorporates a cache controller (CCU) that
runs by the 4-Way set associative method. Addresses 0x1f800 to 0x1fbff (1K bytes) and 0x1fc00 to 0x1ffff (1K
bytes) in Area 0 are used as cache memories for instructions and data, respectively, enabling fast access to external
ROM/SRAM/SDRAM in the specified area (excluding access to the embedded memory and internal peripheral
modules from data to be cached).
The cache can be locked before executing an interrupt handler routine of the specified interrupt level, this makes it
possible to avoid refilling the cache by a lower priority interrupt when a routine that requires high-speed process-
ing has been cached. Also, the cache is automatically locked in debugging mode, enabling debugging in a hardware
break in the same timing as the normal operation.
The main features of the CCU are outlined below.
• Cache adopting the 4-Way set associative method with separate memories for instructions (1K bytes) and data (1K
bytes).
• One area can be selected separately for each of the categories, instructions and data, (from Areas 14 to 22) as the
area for caching.
• One-word write buffer is built in to support write through mode.
• Refill is performed using the LRU algorithm.
• A four-word burst reading function is provided to reduce waiting time for refill.
• A locking function works in debugging and interrupts (with specification of the interrupt level).
• An automatic flush function is provided for the instruction cache to work in response to software PC break in de-
bugging.
• The instruction cache RAM and data cache RAM can be used as a general-purpose RAM when the cache func-
tion is disabled.
1.1
Table 11.
Cache Speed
Status
Number of cycles
Reading from the instruction or data cache (upon hitting)
2 cycles
*
1
Concurrent reading from the instruction and data caches (upon hitting)
Reading from IRAM
Writing to the data cache (upon hitting and emptying the write buffer)
2 cycles
*
2
Writing to the data cache (upon mishitting and emptying the write buffer)
Writing to IRAM
1 cycle
Reading from the instruction or data cache (upon mishitting)
Depends on the access setting for the
external memory
Writing to the data cache (when the write buffer is full)
*
1: As the instruction and data caches can be accessed at the same time, performance is maintained even when data
are accessed while instructions are being fetched.
*
2: Data are written to the data cache and the write buffer at the same time in the first cycle and written to an external
memory in the next cycle.
Notes: • The CCU does not have a snooping function (for maintaining the data in the cache memory
to match those in the external memory). The cache and the external memory are maintained
in synch if reading/writing is only executed in the C33 PE Core. Use software to secure data
integrity in cases where data are shared with the DMAC.
• When the CPU executes the halt or slp instruction, the clocks supplied to the C33 PE Core
and cache both stop. To avoid unexpected bus operations, lock or disable the cache and make
sure that the cache has been locked or disabled using the CCU_STAT register.