![](http://datasheet.mmic.net.cn/390000/SYM53C876_datasheet_16836340/SYM53C876_183.png)
SYM53C876/876E Data Manual
5-21
SCSI SCRIPTS Instruction Set
Memory Move Instructions
tests for an active SCSI SATN/ signal.
Bit 16 Wait For Valid Phase
If the Wait for Valid Phase bit is set, the
SYM53C876 waits for a previously unserviced
phase before comparing the SCSI phase and
data.
If the Wait for Valid Phase bit is clear, the
SYM53C876 compares the SCSI phase and
data immediately.
Bits 15-8
Data Compare Mask
The Data Compare Mask allows a SCRIPT to
test certain bits within a data byte. During the
data compare, if any mask bits are set the cor-
responding bit in the SFBR data byte is
ignored. For instance, a mask of 01111111b
and data compare value of 1XXXXXXXb
allows the SCRIPTS processor to determine
whether or not the high order bit is set while
ignoring the remaining bits.
Bits 7-0
Data Compare Value
This 8-bit field is the data compared against
the SCSI First Byte Received (SFBR) register.
These bits are used in conjunction with the
Data Compare Mask Field to test for a particu-
lar data value. If the COM bit (DCNTL, bit 0)
is cleared, the value in the SFBR register may
not be stable. In this case, do not use instruc-
tions using this data compare value.
Second Dword
Bits 31-0
Jump Address
This 32-bit field contains the address of the
next instruction to fetch when a jump is taken.
Once the SYM53C876 fetches the instruction
from the address pointed to by these 32 bits,
this address is incremented by 4, loaded into
the DSP register and becomes the current
instruction pointer.
Memory Move Instructions
For Memory Move instructions, bits 5 and 4
(SIOM and DIOM) in the DMODE register
determine whether the source or destination
addresses reside in memory or I/O space. By set-
ting these bits appropriately, data may be moved
within memory space, within I/O space, or
between the two address spaces.
The Memory Move instruction is used to copy the
specified number of bytes from the source address
to the destination address.
Allowing the SYM53C876 to perform memory
moves frees the system processor for other tasks
and moves data at higher speeds than available
from current DMA controllers. Up to 16 MB may
be transferred with one instruction. There are two
restrictions:
1. Both the source and destination addresses
must start with the same address alignment
(A(1-0) must be the same). If source and
destination are not aligned, then an illegal
instruction interrupt occurs. For the PCI
Cache Line Size register setting to take effect,
the source and destination must be the same
distance from a cache line boundary.
2. Indirect addresses are not allowed. A burst of
data is fetched from the source address, put
into the DMA FIFO and then written out to
the destination address. The move continues
until the byte count decrements to zero, then
another SCRIPT is fetched from system
memory.
The DSPS and DSA registers are additional hold-
ing registers used during the Memory Move; how-
ever, the contents of the DSA register are
preserved.
Bits 31-39 Instruction Type—Memory Move
Bits 28-25 Reserved