
2-52
Functional Description
last SCSI bus transfer is not transferred to memory. Instead, the byte is
temporarily stored in the
SCSI Wide Residue (SWIDE)
register. The
hardware uses the WSR bit to determine what behavior must occur at
the start of the next data receive transfer. The bit is automatically cleared
at the start of the next data receive transfer. The bit can alternatively be
cleared by the microprocessor or through SCRIPTS. Also, the
microprocessor or SCRIPTS can use this bit for error detection and
recovery purposes.
2.2.18.3 SWIDE Register
This register is used to store data for partial byte data transfers. For
receive data, the
SCSI Wide Residue (SWIDE)
register holds the
high-order byte of a partial SCSI transfer which has not yet been
transferred to memory. This stored data may be a residue byte (and
therefore ignored) or it may be valid data that is transferred to memory
at the beginning of the next Block Move instruction.
2.2.18.4 SODL Register
For send data, the low-order byte of the
SCSI Output Data Latch (SODL)
register holds the low-order byte of a partial memory transfer which has
not yet been transferred across the SCSI bus. This stored data is usually
“married” with the first byte of the next data send transfer, and both bytes
are sent across the SCSI bus at the start of the next data send block
move command.
2.2.18.5 Chained Block Move SCRIPTS Instruction
A chained Block Move SCRIPTS instruction is primarily used to transfer
consecutive data send or data receive blocks. Using the chained Block
Move instruction facilitates partial receive transfers and allows correct
partial send behavior without additional opcode overhead. Behavior of
the chained Block Move instruction varies slightly for sending and
receiving data.
For receive data (Data-In for the initiator or Data-Out for the target), a
chained Block Move instruction indicates that if a partial transfer occurred
at the end of the instruction, the WSR flag is set. The high-order byte of
the last SCSI transfer is stored in the
SCSI Wide Residue (SWIDE)
register rather than transferred to memory. The contents of the SWIDE
register should be the first byte transferred to memory at the start of the