beautypg.com

Avago Technologies LSI53C1010 User Manual

Page 65

background image

Instruction Descriptions

3-25

Description

The SCSI Interrupt on-the-Fly instruction causes the chip to conditionally
set the INTFLY bit in the Interrupt Status (ISTAT) register and post an
interrupt request to the external processor. It is invoked if the SCSI
phase, data, or attention condition compares true with the phase, data,
or attention condition described in the instruction.

The NOT qualifier is used to indicate a boolean true/false desired
outcome of the comparison. If the comparison is false, the SCRIPTS
processor will not post the interrupt but will instead fetch the next
instruction and continue SCRIPTS execution.

When the optional data field is used, it is compared to the first byte of
the SFBR. This contains the most recent byte of any kind of data that
has been moved into the SFBR register. The user's SCSI SCRIPTS
program can determine which routine to execute next based on actual
data values received. Using a series of these compares, the algorithm
can process complex sequences with no intervention required by the
external processor.

When the optional MASK keyword and its associated value are specified
the SCRIPTS processor allows selective comparisons of bits within the
data byte. This comparison is illustrated in

Figure 3.2

. During the

comparison, any bits that are set in the mask field will cause the
corresponding bit in the data byte to be ignored for the comparison.

Mask

An 8-bit field that is used to mask the value in SFBR before
the comparison with the data field in the instruction takes
place. As a result of this operation, any bits that are set will
cause the corresponding bit in the data byte to be ignored. If
this field is not specified, a mask of 0x00 is used.

Data

An 8-bit field that is compared with the incoming data after the
mask operation with the mask byte takes place. Comparison
indicates either an equal or not equal condition. If the Data
field is not specified, the compare data bit is cleared and 0x00
is coded for both the mask and data bytes.

Int_Value

A 32-bit user defined value that identifies the cause of the
interrupt. Even though the int_value is stored, since the
processor continues to execute, it is immediately overwritten
with the next instruction fetch. Refer to the

Notes

at the end

of this section for more information.

This manual is related to the following products: