
SCSI Functional Description
2-43
SIST0 and SIST1 –
The
SCSI Interrupt Status Zero (SIST0)
and
SCSI
Interrupt Status One (SIST1)
registers contain SCSI-type interrupt bits.
Reading these registers determines which condition or conditions caused
the SCSI-type interrupt, and clears that SCSI interrupt condition.
If the SYM53C895A is receiving data from the SCSI bus and a fatal
interrupt condition occurs, the chip attempts to send the contents of the
DMA FIFO to memory before generating the interrupt.
If the SYM53C895A is sending data to the SCSI bus and a fatal SCSI
interrupt condition occurs, data could be left in the DMA FIFO. Because
of this the DMA FIFO Empty (DFE) bit in
DMA Status (DSTAT)
should be
checked.
If this bit is cleared, set the CLF (Clear DMA FIFO) and CSF (Clear SCSI
FIFO) bits before continuing. The CLF bit is bit 2 in
Chip Test Three
(CTEST3)
. The CSF bit is bit 1 in
SCSI Test Three (STEST3)
.
DSTAT –
The
DMA Status (DSTAT)
register contains the DMA-type
interrupt bits. Reading this register determines which condition or
conditions caused the DMA-type interrupt, and clears that DMA interrupt
condition. Bit 7 in DSTAT, DFE, is purely a status bit; it will not generate
an interrupt under any circumstances and will not be cleared when read.
DMA interrupts flush neither the DMA nor SCSI FIFOs before generating
the interrupt, so the DFE bit in the
DMA Status (DSTAT)
register should
be checked after any DMA interrupt.
If the DFE bit is cleared, then the FIFOs must be cleared by setting the
CLF (Clear DMA FIFO) and CSF (Clear SCSI FIFO) bits, or flushed by
setting the FLF (Flush DMA FIFO) bit.
SIEN0 and SIEN1 –
The
SCSI Interrupt Enable Zero (SIEN0)
and
SCSI
Interrupt Enable One (SIEN1)
registers are the interrupt enable registers
for the SCSI interrupts in
SCSI Interrupt Status Zero (SIST0)
and
SCSI
Interrupt Status One (SIST1)
.
DIEN –
The
DMA Interrupt Enable (DIEN)
register is the interrupt enable
register for DMA interrupts in
DMA Status (DSTAT)
.
DCNTL –
When bit 1 in the
DMA Control (DCNTL)
register is set, the
IRQ/ pin is not asserted when an interrupt condition occurs. The interrupt
is not lost or ignored, but is merely masked at the pin. Clearing this bit