21264/EV68A Hardware Reference Manual
Cache and External Interfaces 4–39
System Port
Table 4–32 shows each 21264/EV68A command, with NXM addresses, and the appro-
priate system response.
Table 4–32 21264/EV68A Commands with NXM Addresses and System Response
21264/EV68A
Command NXM
Address System/21264/EV68A Response
ProbeResponse Probe responses for addresses to NXM space are of UNPREDICTABLE status. Although
the final status of a ReadDataError is Invalid, the 21264/EV68A fills the block Valid/
Clean and uses an atomic Evict command to invalidate the block. Systems that send
probes to NXM space to the 21264/EV68A must disregard the probe result.
RdBlk
RdBlkSpec
RdBlkVic
Load references to NXM space can be speculative. In this case, systems should respond
with a SysDc ReadDataError fill that the 21264/EV68A uses to service the original load/
Istream command. If the original load command was speculative, the 21264/EV68A will
remove the load instruction that generated the NXM command, and start processing
instructions down the correctly predicted path. If the command was not speculative, there
must be an error in the operating system mapping of a virtual address to an illegal physi-
cal address, and the 21264/EV68A provides an all ones pattern as a signature for this bug.
The NXM block is not cached in the Dcache or Bcache.
RdBlkI
RdBlkSpecI
RdBlkVicI
Istream references to NXM space can be speculative. In this case, systems should respond
with a SysDc ReadDataError fill, which the 21264/EV68A will use to service and exe-
cute the original Istream reference. If the original Istream reference was speculative, the
21264/EV68A will remove the instructions started after the mispredicted instruction that
generated the NXM reference, and start instruction processing down the correctly pre-
dicted path. If the reference was not speculative, there must be an error in the operating
system mapping of a virtual address to an illegal physical address, and the 21264/EV68A
provides an all ones pattern as a signature for this bug. The NXM block is not cached in
the Bcache, but can be cached in the Icache.
RdBlkMod
RdBlkModSpec
RdBlkModVic
Store instructions to NXM space initiate RdBlkMod commands. Again, speculative store
instructions are removed. Nonspeculative store instructions are forced to fail, much like
STx_C instructions that fail. The NXM block is not cached in the Dcache or Bcache.
WrVictimBlk Dirty Victims to NXM space are illegal. Systems should perform a machine check, with
the 21264/EV68A indicating a severe error.
CleanVictimBlk The 21264/EV68A can generate CleanVictimBlk commands to NXM space if the Cbox
CSR BC_CLEAN_VICTIM[0] bit is asserted and a SysDc ReadDataError has been gen-
erated. Systems that use clean victims must faithfully deallocate the CleanVictim VAF
entry.
Evict If the Cbox CSR ENABLE_EVICT is asserted, the 21264/EV68A will generate Evict
commands to NXM space. Systems may use this command to invalidate their duplicate
tags. Systems must respond with SysDc ChangeToDirtyFail to retire the NXM MAF
entry.
RdBytes
RdLWs
RdQWs
Load instructions to I/O space are not speculative, so an I/O reference to NXM space is
an error. Systems must respond with ReadDataError and should generate a machine
check to indicate an operating system error.
WrBytes
WrLWs
WrQWs
Store instructions to I/O space are not speculative, so an I/O reference to NXM space is
an error. Systems must respond by deallocating the appropriate IOWB entries, and should
generate a machine check to indicate an operating system error.
FetchBlk
FetchBlkSpec
Loads to noncached memory in NXM space may be speculative. Systems must respond
with a SysDc ReadDataError to retire the MAF entry.