< previous page page_397 next page >

Page 397
In the remainder of this chapter, we look at (1) single or split caches with either fully blocked, partially blocked, or nonblocking interactions with memory, and (2) interleaved caches.
As we will see, simple caches with either fully or partially blocked memory interactions can easily be modeled without using queueing theory. We model nonblocking caches in a manner similar to the treatment of multi-programmed processor-I/O systems. Finally, we model interleaved caches in much the same way we modeled interleaved memory systems.
6.8.1 Fully and Partially Blocking Caches
The addition of a cache to a memory system complicates the performance evaluation and design. For copyback systems with write allocate (CBWA), the requests to memory consist of line-read requests and line-write requests. For write-through systems without fetch-on-write (WTNWA), the requests consist of line-read requests and word-write requests.
In order to develop models of memory systems with cache, two basic parameters must be evaluated:
1. Tline access, the time it takes a cache to access a line in memory.
2. Tbusy, the potential contention time during which the memory is busy and the processor/cache is available to make requests to memory.
In the following sections, we discuss these parameters and then apply them to the evaluation of various caches.
6.8.2 Accessing a Line (Tline access)
We consider pipelined single processor systems. The usual memory arrangement for supporting fast line access involves the use of:
1. Interleaving.
2. Fast sequential page mode.
3. A combination of the two.
We consider each of these arrangements in this section.
For our interleaved memory module analysis, we assume that the cache has a line size of L physical words. (The physical word is defined by the bus word size.) The memory is low-order interleaved to degree m, where m ³ L. The total time to move a line is given by:
d87111c01013bcda00bb8640fdff6754.gif
Tline = Tline access = Tline-read = Tline-write = Ta + (L - 1) Tbus,
where Ta is the word-access time, and Tbus is the shared bus cycle time. (Usually Tbus is the same as the internal processor cycle time.) The memory system, while interleaved, does not begin to process a request until it is completely free.

 
< previous page page_397 next page >