Technical data
6-34 Interactive Diagnostics Environment (IDE)
cache35 (d_refill) - Primary Data Refill from Secondary Cache Test
This verifies the block write/read mode in data cache. It writes to K0 (0x80020000) cached
space, causing the cache to become dirty. Then it replaces the cache line by reading
0x80022000, which is a different cache line with same offset. This causes the data in primary
data cache to be written back to the secondary. The address 0x80020000 is reread and
compared. There should be a cache hit in the secondary cache.
Possible errors:
0104056: Unexpected Cache write through to memory
addr = %x
expected = %x, actual = %x, XOR %x
Seconday TAG %x
0104057: Secondary Cache miss, expected a cache hit
addr = %x
expected = %x, actual = %x, XOR = %x
Data in memory = 0xdeadbeef
Seconday TAG %x
cache36 (sd_dirtywbw) - Secondary Dirty Writeback (Word) Test
This verifies the block (four words) write mode in the data cache. It writes to K0
(0x80020000) cached space, causing the cache become dirty. Then it replace the cache line
by reading 0x80022000, which is a different cache line with same offset. This causes the data
in 0x80020000 write back to secondary which now has the same data as in 0x80020000. A
write to address 0x80060000 will replace the secondary lines, thus forcing a writeback from
the Secondary Cache. Note that there is another flavor of this test, d_dirtywbw.c, that forces
the writeback from the primary line when the secondary line is replaced.
Possible errors:
0105058: Unexpected Cache write through to memory
addr = %x
expected = %x, actual = %x, XOR %x
Seconday TAG %x
0105059: Data read replaced a dirty line in Secondary
Dirty line not written back to memory
addr = %x
expected = %x, actual = %x, XOR %x
Seconday TAG %x










