< previous page page_214 next page >

Page 214
0214-01.gif
Figure 4.13
Cache access controller.
A. Cache access controller.
B. I-buffer (including the I-register).
C. Instruction decoder (including branch and run-on instruction manager).
D. Data interlocks (including address interlock manager).
E. Store interlocks and store buffers.
Sub-units B, C, and D are closely related, with relatively more information flow among these units than external to them. Similarly, sub-units A and E control access to the storage system and are closely related to one another. Still, the decoder, for example, must be aware of actions taken by the cache access controller.
We look at each of these sub-units and their effect on system performance.
4.4.1 Cache Access Controller
Requests to the cache may come from one of five sources (Figure 4.13):
1. Data read (from AG).
2. Data write (from AG and store buffer).
3. I-buffer: target I-fetch.
4. I-buffer: in-line I-fetch.
5. External access (I/O, etc.).
If, as usual, the rate of external accesses is low, these can be given highest priority to avoid problems such as I/O run-out or overrun (I/O buffer overflow).
Ignoring external accesses, cache access priority is usually arranged (highest to lowest):

 
< previous page page_214 next page >