4
MOTOROLA
The DSP96002 instruction cache is a “real-time” cache and therefore it has no inherent
penalty on a cache miss. In other words, if there is a cache hit, it takes exactly one bus
cycle to fetch the instruction from the on-chip cache - like fetching any other data from an
on-chip memory. If there is a cache miss, it behaves exactly as a “normal” instruction fetch,
as if it were fetching any other data from that external memory.
Furthermore, a “real-time” instruction cache allows the user to declare some code areas
as time-critical and therefore “non-replaceable”. Six new instructions have been added to
the instruction set, allowing the user to lock sectors of the cache, and to flush the cache
contents under software control.
The following list is a summary of the instruction cache features:
• 1K, 32-bit wide, on-chip instruction cache
• Switching from PRAM mode to cache mode is software controlled
• Fully compatible with the DSP96002 PRAM mode when cache is disabled
• 8-way, fully associative, sectored cache
• One-word transfer granularity
• Least recently used (LRU) sector replacement algorithm
• User transparent - no user management required
• No additional wait states on cache miss
• Global cache mode, allowing normal cache operation
• Individual sector locking, preventing replacement of sector contents, but allowing
updating of new entries within sector
• Global cache flush in software, allowing immediate clearing of the contents of the
Instruction Cache
• Global PRAM mode, allowing compatibility with original architecture (including
PRAM disabled and DMA to/from program memory)
• Full cache observability (tags, valid-bits, LRU, locked sectors) with OnCE
commands in debug mode.
2.2
INSTRUCTION CACHE STRUCTURE
A cache controller has been added to the existing Internal Program RAM. Figure 2 shows
a block diagram of the instruction cache controller.
The internal program RAM contains 1024 32-bit words, logically divided into eight 128-
word cache sectors. In a similar way, the external program memory is virtually divided into
128-word sectors. The term “sector” is used, rather than “block”, since a sectored-cache
distinguishes between “sectors” which are the basic replacement units, and “blocks” which
are the basic transfer units. In our case a “block” is a 32 bit word so that one can use the
terms “block” and “word” interchangeably.
Summary of Contents for DSP96002
Page 3: ...1 2 DSP96002 USER S MANUAL MOTOROLA ...
Page 38: ...MOTOROLA DSP96002 USER S MANUAL 3 15 Figure 3 4 Modulo Arithmetic Unit Block Diagram ...
Page 39: ...3 16 DSP96002 USER S MANUAL MOTOROLA ...
Page 53: ...4 14 DSP96002 USER S MANUAL MOTOROLA ...
Page 76: ...MOTOROLA DSP96002 USER S MANUAL 5 23 Figure 5 8 Address Modifier Summary ...
Page 86: ...6 10 DSP96002 USER S MANUAL MOTOROLA ...
Page 101: ...MOTOROLA DSP96002 USER S MANUAL 7 15 Figure 7 9 HI Block Diagram One Port ...
Page 140: ...7 54 DSP96002 USER S MANUAL MOTOROLA ...
Page 166: ...9 10 DSP96002 USER S MANUAL MOTOROLA ...
Page 181: ...MOTOROLA DSP96002 USER S MANUAL 10 15 Figure 10 8 Program Address Bus FIFO ...
Page 337: ...MOTOROLA DSP96002 USER S MANUAL A 149 ...
Page 404: ...A 216 DSP96002 USER S MANUAL MOTOROLA PC xxxx D ...
Page 460: ...A 272 DSP96002 USER S MANUAL MOTOROLA SIOP Not affected ...
Page 484: ...A 296 DSP96002 USER S MANUAL MOTOROLA SSH PC SSL SR SP 1 SP ...
Page 519: ...MOTOROLA DSP96002 USER S MANUAL A 331 ...
Page 718: ...MOTOROLA DSP96002 USER S MANUAL B 199 ...
Page 871: ... MOTOROLA INC 1994 MOTOROLA TECHNICAL DATA SEMICONDUCTOR M Addendum ...
Page 888: ...MOTOROLA INDEX 1 INDEX ...
Page 889: ......