Cache Line Replacement Policy; Table 4-1. Instruction And Data Cache Array Organization; Table 4-2. Cache Sizes And Parameters - IBM PPC440X5 CPU Core User Manual

Cpu core
Table of Contents

Advertisement

User's Manual
PPC440x5 CPU Core
ated with the line that currently resides in that way. The middle-order address bits form an index to select a
specific set of the cache, while the five lowest-order address bits form a byte-offset to choose a specific byte
(or bytes, depending on the size of the operation) from the 32-byte cache line.

Table 4-1. Instruction and Data Cache Array Organization

Way 0
Set 0
Line 0
Set 1
Line 1
n
n
Set
– 2
Line
n
n
Set
– 1
Line

Table 4-2. Cache Sizes and Parameters

w
Array Size
(Ways)
8KB
32
16KB
64
32KB
64
Note 1: The tag address bits shown in the table refer to the effective address bits,
and are for illustrative purposes only. Because the instruction cache is
tagged with the virtual address, and the data cache is tagged with the real
address, the actual tag address bits contained within each array are
different. See Figure 4-8 and Figure 4-9 on page 113 for instruction cache
tag information, and Figure 4-10 and Figure 4-11 on page 128 for data
cache tag information. Also, see "Instruction Cache Synonyms" on
page -107 for details on instruction cache synonyms associated with the use
of virtual tags for the instruction cache.

4.1.1 Cache Line Replacement Policy

Memory addresses are specified as being cacheable or caching inhibited on a page basis, using the caching
inhibited (I) storage attribute (see Caching Inhibited (I) on page 145). When a program references a cache-
able memory location and that location is not already in the cache (a cache miss), the line may be brought
into the cache (a cache line fill operation) and placed into any one of the ways within the set selected by the
middle portion of the address (the specific address bits that select the set are specified in Table 4-2). If the
particular way within the set already contains a valid line from some other address, the existing line is
removed and replaced by the newly referenced line from memory. The line being replaced is referred to as
the victim.
The way selected to be the victim for replacement is controlled by a field within a Special Purpose Register
(SPR). There is a separate "victim index field" for each set within the cache. The registers controlling the
victim selection are shown in Figure 4-1.
Page 96 of 589
Way 1
n
Line
n
Line
+ 1
n
– 2
Line 2
– 2
n
– 1
Line 2
– 1
Tag
n
(Sets)
Address Bits
8
A 0:23
8
A 0:23
16
A 0:22
Line (
Line (
Line (
Set
1
Address Bits
Address Bits
A 24:26
A 24:26
A 23:26
w
Way
– 2
Way
w
n
Line (
– 2)
Line (
w
n
w
– 2)
+ 1
Line (
w
n
– 1)
– 2
Line
w
n
– 1)
– 1
Line
Byte Offset
A 27:31
A 27:31
A 27:31
September 12, 2002
Preliminary
w
– 1
w
n
– 1)
n
– 1)
+ 1
wn
– 2
wn
– 1
cache.fm.

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents