beautypg.com

4 sodl register, 5 chained block move scripts instruction – Avago Technologies LSI53C876E User Manual

Page 64

background image

2-42

Functional Description

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.11.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.11.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 initiator or Data-Out for 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

SCSI Wide

Residue (SWIDE)

register should be the first byte transferred to memory

at the start of the chained Block Move data stream. Since the byte count
always represents data transfers to/from memory (as opposed to the
SCSI bus), the byte transferred out of the

SCSI Wide Residue (SWIDE)

register is one of the bytes in the byte count. If the WSR bit is cleared
when a receive data chained Block Move instruction is executed, the data
transfer occurs similar to that of the regular Block Move instruction.
Whether the WSR bit is set or cleared, when a normal block move
instruction is executed, the contents of the

SCSI Wide Residue (SWIDE)

register are ignored and the transfer takes place normally. For “N”
consecutive wide data receive Block Move instructions, the 2nd through
the Nth Block Move instructions should be chained block moves.