Compaq EV68A specifications 12Cache and External Interfaces

Models: EV68A

1 356
Download 356 pages 47.63 Kb
Page 100
Image 100

Cache Coherency

Table 4–5 System Responses to 21264/EV68A Commands and Reactions (Continued)

21264/EV68A

 

 

CMD

SysDc

21264/EV68A Action

 

 

 

RdBlkModx

ReadData

The cache block is filled and marked with a nonwritable status. If the

 

ReadDataShared

store instruction that generated the RdBlkModx command is still

 

ReadDataShared/Dirty

active (not killed), the 21264/EV68A will retry the instruction, gener-

 

 

ating the appropriate ChangeToDirty command. Succeeding store

 

 

commands cannot update the block without external reference.

RdBlkModx

ReadDataDirty

The 21264/EV68A performs a normal fill response, and the cache

 

 

block becomes writable.

RdBlkModx

ChangeToDirtySuccess

Both SysDc responses are illegal for read/modify commands.

 

ChangeToDirtyFail

 

RdBlkModx

ReadDataError

The cache block command was to NXM address space. The 21264/

 

 

EV68A delivers an all-ones pattern to any dependent load command,

 

 

forces a fail action on any pending store commands to this block, and

 

 

any store to this block is not retried. The Cbox evicts the cache block

 

 

from the cache system (with associated victim processing). The cache

 

 

block is marked invalid.

ChxToDirty

ReadData

The original data in the Dcache is replaced with the filled data. The

 

ReadDataShared

block is not writable, so the 21264/EV68A will retry the store instruc-

 

ReadDataShared/Dirty

tion and generate another ChxToDirty class command. To avoid a

 

 

potential livelock situation, the STC_ENABLE CSR bit must be set.

 

 

Any STx_C instruction to this block is forced to fail. In addition, a

 

 

Shared/Dirty response causes the 21264/EV68A to generate a victim

 

 

for this block upon eviction.

ChxToDirty

ReadDataDirty

The data in the Dcache is replaced with the filled data. The block is

 

 

writable, so the store instruction that generated the original command

 

 

can update this block. Any STx_C instruction to this block is forced

 

 

to fail. In addition, the 21264/EV68A generates a victim for this

 

 

block upon eviction.

ChxToDirty

ReadDataError

Impossible situation. The block must be cached to generate a ChxTo-

 

 

Dirty command. Caching the block is not possible because all NXM

 

 

fills are filled noncached.

ChToDirty

ChangeToDirtySuccess

Normal response. ChangeToDirtySuccess makes the block writable.

 

 

The 21264/EV68A retries the store instruction and updates the

 

 

Dcache. Any STx_C instruction associated with this block is allowed

 

 

to succeed.

ChxToDirty

ChangeToDirtyFail

The MAF entry is retired. Any STx_C instruction associated with the

 

 

block is forced to fail. If a STx instruction generated this block, the

 

 

21264/EV68A retries and generates either a RdBlkModx (because the

 

 

reference that failed the ChangeToDirty also invalidated the cache by

 

 

way of an invalidating probe) or another ChxToDirty command.

InvalToDirty

ReadData

The block is not writable, so the 21264/EV68A will retry the WH64

 

ReadDataShared

instruction and generate a ChxToDirty command.

 

ReadDataShared/Dirty

 

InvalToDirty

ReadDataError

The 21264/EV68A doesn’t send InvalToDirty commands offchip

 

 

speculatively. This NXM condition is a hard error. Systems should

 

 

perform a machine check.

InvalToDirty

ReadDataDirty

The block is writable. Done.

 

ChangeToDirtySuccess

 

4–12Cache and External Interfaces

21264/EV68A Hardware Reference Manual

Page 100
Image 100
Compaq EV68A specifications 12Cache and External Interfaces