EasyManua.ls Logo

Mips Technologies R4000 - Invalidate Conflicts

Mips Technologies R4000
754 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Chapter 11
282 MIPS R4000 Microprocessor User's Manual
Invalidate Conflicts
From the time the processor issues an invalidate request until that request
is acknowledged, any external coherency request issued to the processor
that conflicts with the unacknowledged invalidate must include a
cancellation.
In the model system shown in Figure 11-12, an acknowledge for the
invalidate is sent to the processor as soon as the invalidate is forwarded to
the system bus. Therefore, while the external agent is waiting to become
a bus master to forward the invalidate request, the external agent must
detect, by using comparators, any external coherency request that conflicts
with the unacknowledged invalidate. If a conflict is detected, the external
agent must not forward the invalidate request to the system bus; instead,
it must rescind the invalidate request and submit the conflicting external
request to the processor, with a cancellation for the invalidate request.
If the response to a coherent read request conflicts with a waiting
unacknowledged processor invalidate request, the external agent detects
this conflict and does not forward the processor invalidate request to the
bus. Instead, it discards the processor invalidate request and issues to the
processor an intervention request that includes a cancellation. The
processor then reevaluates its cache state and either reissues the invalidate
request or issues a coherent read request.
If an invalidate request appears on the bus while the external agent has a
processor invalidate request waiting, and the external agent detects the
conflict, the external agent does not forward the processor invalidate
request. Instead, it discards the processor invalidate request and issues an
external invalidate request that includes a cancellation to the processor.
The processor then reevaluates its cache state and either reissues the
invalidate request or issues a coherent read request.
It is not possible for a write request that conflicts with a waiting processor
invalidate request to appear on the system bus. To issue an invalidate
request, the state of the cache line must be shared with every cache in the
system that contains the line.

Table of Contents