Compaq EV67 Network Card User Manual


 
Alpha 21264/EV67 Hardware Reference Manual
Cache and External Interfaces 4–39
System Port
Table 4–32 shows each 21264/EV67 command, with NXM addresses, and the appropri-
ate system response.
Table 4–32 21264/EV67 Commands with NXM Addresses and System Response
21264/EV67
Command NXM
Address System/21264/EV67 Response
ProbeResponse Probe responses for addresses to NXM space are of UNPREDICTABLE status. Although
the final status of a ReadDataError is Invalid, the 21264/EV67 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/EV67 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/EV67 uses to service the original load/
Istream command. If the original load command was speculative, the 21264/EV67 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/EV67 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/EV67 will use to service and execute
the original Istream reference. If the original Istream reference was speculative, the
21264/EV67 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/EV67
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/EV67 indicating a severe error.
CleanVictimBlk The 21264/EV67 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/EV67 will generate Evict com-
mands 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.