ACSI and SCSI The Differences

Some important differences between ACSI and SCSI:

Physical cable connection - ACSI uses a 19 pin shielded cable versus the 50 pin flat ribbon cable used by SCSI.

The master/slave relationship - This defines who is in charge of bus operations between the computer and its peripherals. The ACSI bus specifies that the host computer is always in control of the bus as opposed to SCSI which allows both computers and peripherals to initiate control of the bus .

Maximum cable length - ACSI allows a maximum of 2 feet between devices with a total length allowable of 88". However, total cable length should be minimized in the interests of signal reliability. SCSI has a total allowable length of approximately 18 feet.

Maximum Number of Devices - System reliability requires that no more than four ACSI peripheral controllers be daisy-chained to an Atari ST.

Utilization of the SCSI Message phase (extended status) - SCSI allows it and ACSI doesn't.

Connect and Disconnect - the ability for a device to disconnect after receipt of a command and connect only when data is to be transferred. ACSI does not utilize this, SCSI can.

Bus Termination-SCSI uses open-collector bus drivers with 220/330 ohm termination resistors. ACSI uses CMOS or LSTTL level interfacing without terminating resistors.

Request/Acknowledge-There is an important conceptual difference between ACSI and SCSI regarding the Request/Acknowledge handshaking. SCSI uses a simple REQ/ACK procedure, whereas ACSI has CS/IRO and DRQ/ACK procedures. See "Command/Status/Data Transfers" below for a detailed explanation of this difference.

Maximum Command Number-Because the ACSI controller device number is encoded in the most significant three bits of the command byte, the device can only use commands in the range $00-$1F.

Command/Status/Data Transfers-SCSI transfers all Commands, Status or Data information using its REQ/ACK (Request / Acknowledge) handshake. Whether this is done in a "DMA" mode or with byte by byte transfers through the controller processor, is a function of the SCSI controller used. ACSI provides for two methods of transferring information between the host processor and peripheral:

1. Software Handshake Method where each byte is transferred under processor control. This method uses the _CS and JRQ signals. The processor asserts _CS to transfer a byte and the peripheral asserts JRQ to notify the processor that it is ready to receive or send the byte. The direction of the transfer is determined by the R/_W signal. This handshake sequence is always used for sending commands and receiving the single byte of status issued upon error or command completion. This method should not be used for data transfer.

2. DMA Method where the processor issues a command (using the Software Handshake Method above) specifying the peripheral device involved in the data transfer, the type of command, the maximum number of blocks (512 bytes) to be transferred. Note that DMA time-shares the bus with the processor - only taking the bus when it needs to fill/empty its FIFOs. The FIFOs minimize the overhead involved in obtaining and releasing the bus. Transfer is considered complete when all bytes are transferred (i.e. the DMA count register == 0) or when an error occurs. This method uses the _DRQ/_ACK handshake for each byte transferred under DMA control. This is a very fast hardware handshake that occurs without any intervention from the processor. _ACK is a response to the peripheral device generated _DRQ signal and signifies that the host has received a byte or has one ready to send. _DRQ is asserted by the peripheral device when it is ready to send or receive a byte.

CHAPTER 3* UNDERSTANDING THE HARDWARE

+1 0

Average user rating: 5 stars out of 1 votes

Post a comment

  • Receive news updates via email from this site