
SCSI Functional Description
2-51
The third option is to have the system BIOS not report the existence of
the SCSI controller chips when the SCSI BIOS and operating systems
make PCI BIOS calls. This approach requires modifications to the
system BIOS and assumes the operating system uses PCI BIOS calls
when searching for PCI devices.
2.2.18 Chained Block Moves
Since the SYM53C896 has the capability to transfer 16-bit wide SCSI
data, a unique situation occurs when dealing with odd bytes. The
Chained Move (CHMOV) SCRIPTS instruction along with the Wide SCSI
Send (WSS) and Wide SCSI Receive (WSR) bits in the
SCSI Control Two
(SCNTL2)
register are used to facilitate these situations. The Chained
Block Move instruction is illustrated in
Figure 2.9
.
2.2.18.1 Wide SCSI Send Bit
The WSS bit is set whenever the SCSI controller is sending data
(Data-Out for the initiator or Data-In for the target) and the controller
detects a partial transfer at the end of a chained Block Move SCRIPTS
instruction (this flag is not set if a normal Block Move instruction is used).
Under this condition, the SCSI controller does not send the low-order
byte of the last partial memory transfer across the SCSI bus. Instead, the
low-order byte is temporarily stored in the lower byte of the
SCSI Output
Data Latch (SODL)
register and the WSS flag is set. The hardware uses
the WSS flag to determine what behavior must occur at the start of the
next data send transfer. When the WSS flag is set at the start of the next
transfer, the first byte (the high-order byte) of the next data send transfer
is “married” with the stored low-order byte in the SODL register; and the
two bytes are sent out across the bus, regardless of the type of Block
Move instruction (normal or chained). The flag is automatically cleared
when the “married” word is sent. The flag is alternately cleared through
SCRIPTS or by the microprocessor. Also, the microprocessor or
SCRIPTS can use this bit for error detection and recovery purposes.
2.2.18.2 Wide SCSI Receive Bit
The WSR bit is set whenever the SCSI controller is receiving data
(Data-In for the initiator or Data-Out for the target) and the controller
detects a partial transfer at the end of a block move or chained block
move SCRIPTS instruction. When WSR is set, the high-order byte of the