
Functional Description
DMA FIFO
SYM53C810A Data Manual
2-7
Data Paths
T he data path through the SYM53C810A is
dependent on whether data is being moved into or
out of the chip, and whether SCSI data is being
transferred asynchronously or synchronously.
Figure 2-2 shows how data is moved to/from the
SCSI bus in each of the different modes.
T he following steps determine if any bytes remain
in the data path when the chip halts an operation:
Asynchronous SCSI Send
1. Look at the DFIFO and DBC registers and
calculate if there are bytes left in the DMA
FIFO. To make this calculation, subtract the
seven least significant bits of the DBC register
from the 7-bit value of the DFIFO register.
AND the result with 7Fh for a byte count
between zero and 80.
2. Read bit 5 in the SSTAT 0 register to
determine if any bytes are left in the SODL
register. If bit 5 is set in SSTAT 0, then the
SODL register is full.
Synchronous SCSI Send
1. Look at the DFIFO and DBC registers and
calculate if there are bytes left in the DMA
FIFO. To make this calculation, subtract the
seven least significant bits of the DBC register
from the 7-bit value of the DFIFO register.
AND the result with 7Fh for a byte count
between zero and 80.
2. Read bit 5 in the SSTAT 0 register to
determine if any bytes are left in the SODL
register. If bit 5 is set in SSTAT 0, then the
SODL register is full.
3. Read bit 6 in the SSTAT 0 register to
determine if any bytes are left in the SODR
register. If bit 6 is set in SSTAT 0, then the
SODR register is full.
Asynchronous SCSI Receive
1. Look at the DFIFO and DBC registers and
calculate if there are bytes left in the DMA
FIFO. To make this calculation, subtract the
seven least significant bits of the DBC register
from the 7-bit value of the DFIFO register.
AND the result with 7Fh for a byte count
between 0 and 80.
2. Read bit 7 in the SSTAT 0 register to
determine if any bytes are left in the SIDL
register. If bit 7 is set in SSTAT 0, then the
SIDL register is full.
Synchronous SCSI Receive
1. Subtract the seven least significant bits of the
DBC register from the 7-bit value of the
DFIFO register. AND the result with 7Fh for a
byte count between 0 and 80.
2. Read the SSTAT 1 register and examine bits 7-
4, the binary representation of the number of
valid bytes in the SCSI FIFO, to determine if
any bytes are left in the SCSI FIFO.