![](http://datasheet.mmic.net.cn/390000/SYM53C876_datasheet_16836340/SYM53C876_163.png)
SYM53C876/876E Data Manual
5-1
SCSI SCRIPTS Instruction Set
SCSI SCRIPTS
Chapter 5
SCSI SCRIPTS Instruction Set
After power up and initialization, the
SYM53C876 can operate in the low level register
interface mode, or use SCSI SCRIPTS.
With the low level register interface, the user has
access to the DMA control logic and the SCSI
bus control logic. An external processor has
access to the SCSI bus signals and the low level
DMA signals, which allows creation of compli-
cated board level test algorithms. The low level
interface is useful for backward compatibility with
SCSI devices that require certain unique timings
or bus sequences to operate properly. Another fea-
ture allowed at the low level is loopback testing. In
loopback mode, the SCSI core can be directed to
talk to the DMA core to test internal data paths
all the way out to the chip’s pins.
The following sections describe the benefits and
use of SCSI SCRIPTS.
SCSI SCRIPTS
To operate in the SCSI SCRIPTS mode, the
SYM53C876 requires only a SCRIPTS start
address. The start address must be at a dword
(four byte) boundary. This aligns all the following
SCRIPTS at a dword boundary since all
SCRIPTS are 8 or 12 bytes long. Instructions are
fetched until an interrupt instruction is encoun-
tered, or until an unexpected event (such as a
hardware error) causes an interrupt to the exter-
nal processor.
Once an interrupt is generated, the SYM53C876
halts all operations until the interrupt is serviced.
Then, the start address of the next SCRIPTS
instruction is written to the DMA SCRIPTS
Pointer register to restart the automatic fetching
and execution of instructions.
In the SCSI SCRIPTS mode the SYM53C876 is
allowed to make decisions based on the status of
the SCSI bus, which frees the microprocessor
from servicing the numerous interrupts inherent
in I/O operations.
Given the rich set of SCSI oriented features
included in the instruction set, and the ability to
reenter the SCSI algorithm at any point, this high
level interface is all that is required for both nor-
mal and exception conditions. Switching to low
level mode for error recovery is not required.
The following types of SCRIPTS instructions are
implemented in the SYM53C876:
I
Block Move—used to move data between the
SCSI bus and memory
I
I/O or Read/Write—causes the SYM53C876
to trigger common SCSI hardware sequences,
or to move registers
I
Transfer Control—allows SCRIPTS
instructions to make decisions based on real
time SCSI bus conditions
I
Memory Move—causes the SYM53C876 to
execute block moves between different parts
of main memory
I
Load and Store—provides a more efficient
way to move data to/from memory from/to an
internal register in the chip without using the
Memory Move instruction
Each instruction consists of two or three 32-bit
words. The first 32-bit word is always loaded into
the DCMD and DBC registers, the second into
the DSPS register. The third word, used only by
Memory Move instructions, is loaded into the
TEMP shadow register. In an indirect I/O or