![](http://datasheet.mmic.net.cn/390000/SYM53C896_datasheet_16836343/SYM53C896_71.png)
SCSI Functional Description
2-45
2.2.16.4 Masking
Masking an interrupt means disabling or ignoring that interrupt. Interrupts
can be masked by clearing bits in the
SCSI Interrupt Enable Zero (SIEN0)
and
SCSI Interrupt Enable One (SIEN1)
(for SCSI interrupts) registers or
DMA Interrupt Enable (DIEN)
(for DMA interrupts) register. How the chip
responds to masked interrupts depends on: whether polling or hardware
interrupts are being used; whether the interrupt is fatal or nonfatal; and
whether the chip is operating in the Initiator or Target mode.
If a nonfatal interrupt is masked and that condition occurs, the SCRIPTS
do not stop, the appropriate bit in the
SCSI Interrupt Status Zero (SIST0)
or
SCSI Interrupt Status One (SIST1)
is still set, the SIP bit in the
Interrupt
Status Zero (ISTAT0)
is not set, and the INTA/ (or INTB/) pin is not
asserted.
If a fatal interrupt is masked and that condition occurs, then the SCRIPTS
still stop, the appropriate bit in the
DMA Status (DSTAT)
,
SCSI Interrupt
Status Zero (SIST0)
, or
SCSI Interrupt Status One (SIST1)
register is set,
and the SIP or DIP bit in the
Interrupt Status Zero (ISTAT0)
register is set,
but the INTA/ (or INTB/) pin is not asserted.
Interrupts can be disabled by setting the SYNC_IRQD bit in the
Interrupt
Status One (ISTAT1)
register. If an interrupt is already asserted and
SYNC_IRQD is then set, the interrupt will remain until serviced. Further
interrupts will be blocked.
When the SYM53C896 is initialized, enable all fatal interrupts if hardware
interrupts are being used. If a fatal interrupt is disabled and that interrupt
condition occurs, the SCRIPTS halts and the system never knows it
unless it times out and checks the
Interrupt Status Zero (ISTAT0)
,
Interrupt
Status One (ISTAT1)
,
Mailbox Zero (MBOX0)
, and
Mailbox One (MBOX1)
registers after a certain period of inactivity.
If ISTAT is being polled instead of using hardware interrupts, then
masking a fatal interrupt makes no difference since the SIP and DIP bits
in the
Interrupt Status Zero (ISTAT0)
inform the system of interrupts, not
the INTA/ (or INTB/) pin.
Masking an interrupt after INTA/ (or INTB/) is asserted does not cause
deassertion of INTA/ (or INTB/).