ACSI, SCSI and IDE

From Atari Wiki
Revision as of 22:10, 5 December 2023 by Exxos (talk | contribs) (crash fix)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


ACSI

Atari ST ACSI 19 pins port

ACSI is an acronym for Atari Computer Systems Interface. This peripheral bus is very similar to the industry standard SCSI (Small Computer Systems Interface) bus. This peripheral bus allows more than one device to be connected to the computer by way of standard signal lines.

The ACSI is an 8 bit bidirectional data bus that allows data to pass from a peripheral, such as your hard disk, to the host Atari ST computer. The transfer of data may also flow over the bus from the Atari ST to the peripheral. Data may be transferred at a maximum rate of 1.25 MegaBytes/sec and may be transferred to or from any of eight possible control devices attached to the bus. These control devices are addressed as devices 0 to 7.

ACSI makes use of the DMA.

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/IRQ and DRQ/ACK procedures.
  • 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 $0Q-$1 F.
  • Command/Status/Data Transfers - SCSI transfers all Commands, Status or Data information using its REQ/ACK (Request I 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 should nm 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.

(Source:ATARI ACSI/DMA. Integration Guide. June 28, 1991)

ACSI Hints for Mega STE and Stacy

You should keep these rules in mind for the ACSI/DMA bus of the Mega STE:

  • The drive must not require initiator identification. Some drives require the computer to have a SCSI ID of its own, but the Mega STE has no full-featured SCSI bus (only ACSI/DMA) and does not provide this feature.
  • You can only use 1 GByte of the drive's capacity, even if the drive has a higher capacity.
  • Parity should be switched off, the Mega STE does not support parity.
  • The drive at the end of the SCSI chain must not be terminated. Terminating the SCSI device can damage the SCSI adapter.
  • The cable to the drive should be short.
  • The SCSI device must be set to SCSI ID 0.
  • ACSI ID is set by DIP switches on the host adapter.

ACSI ID

Each device on your ACSI bus must have a unique ACSI ID. They are normally set on each device by jumper pin on the devices.For Atari system, the IDs for the ACSI devices must be between 0 and 6.

ACSI Terminating Resistors

As the ACSI is similar to SCSI, there will be a need for terminating resistor. These are added to the last device in the ACSI chain. See SCSI Terminator below, as it is also applicable to ACSI chain.

ACSI Technical description

An excerpt from Atari's official Engineering Hardware Specification which describes aspects of the ACSI protocol and hardware interface an be found here.



SCSI

NCR 5380 chip on a TT030. On the top of it are the empty SCSI terminator sockets and on the right of it is the 50pin SCSI cable.

SCSI stands for “Small Computer Serial Interface”. It communicates along a chain of devices called a SCSI chain, that are hook up with several SCSI cables and SCSI terminators at each end of the SCSI chain. SCSI Terminators are resistors pack that plugs into the cable, newer SCSI devices have terminators built into them and so does not need these standalone SCSI terminator packs.

SCSI on Atari is available on TT and Falcon. SCSI on Atari makes use of the DMA. In order for Atari ST class computer to hook up to SCSI devices, they requires a ACSI to SCSI adapter. The SCSI on TT, Falcon and ACSI-SCSI adapter are all of SCSI-1. Typical SCSI-1 specifications are 25 pins, 7 or less SCSI devices, maximum cable length of 6 meters and a speed of 5 MBytes/Sec.

The SCSI bus in Atari system can support up to 7 major devices (in addition to the computer itself).

SCSI on TT030

The TT implements the complete single-ended (non-differential) SCSI bus by using the NCR5380 SCSI Controller. The NCR5380 is used in 8-bit asynchronous data transfer up to 4.0 Mbytes/second. The SCSI connector provides for connection of SCSI compatible devices through a 25-pin D connector. Internally, the full 50-pin cabling is used.

TT SCSI and ACSI ports at the back panel.

In a typical configuration, the SCSI bus will be used to provide the main mass storage elements of the system. The SCSI bus can also be used for removable media devices such as the Syquest cartridge drives and magnetic tape controllers. The default system hard disk will be SCSI unit 0, device 0.

The TT SCSI chain layout is a typical "T" configuration where the controller is in the middle. The internal SCSI device takes one side of the branch while the external port takes the other side. The internal SCSI device, a hard disk drive, is terminated. However, most TT are shipped with no termination on the other branch or the external port side. Although SCSI law says that we need to terminate both end of the SCSI chain, this was not done on the TT and it also seems to work correctly on the TT. A possible reason for this may be the cable for the internal SCSI device is short and that being the only SCSI hard disk on the chain, the noise interference level is low as only one device is communicating.

SCSI on Falcon

The Falcon SCSI-II port at the back panel.

The Falcon provides an external 50 pins SCSI-II hard disk drive interface. It is provided through a standard NCR5380 SCSI Controller. Transfers can take place at up to 2Mbytes/ second. The controller interfaces to the system through the SDMA IC. The Falcon SCSI controller seems to be internally terminated.

ACSI-SCSI adapters

These adapters allows SCSI devices to be attached to Atari ST class computer ACSI port. The Atari computer will see these devices as ACSI devices. There are limitation to this methods and not all SCSI devices may be usable with this scheme. The limitation depends on the adapter brand and make.

SCSI ID

Each device on your SCSI chain must have a unique SCSI ID. They are normally set on each device by jumper pin on SCSI devices. SCSI controllers are usually set to ID 7. For Atari system, the IDs for the SCSI devices must be between 0 and 6.

SCSI Termination

The SCSI chain requires a SCSI terminator at each end of the SCSI chain. These are SCSI resistor packs that are physically placed at the end of both sides of the chain. If the SCSI terminators are not at the end of the chain, or another SCSI device is placed after the SCSI terminators, you will experience unreliable SCSI communication that can lead to data corruption.

Newer SCSI devices comes with self terminators, and they can be used on the Atari SCSI chain. However, always check that these self terminated SCSI device are only enabled if they are physically the last device in the SCSI chain.

Normally a SCSI device will be added to the external port of the Atari system. For TT030 and Falcon, the terminator will just have to be on the last physical device of the SCSI chain. For ST class computer, check that the ACSI-SCSI adapter is terminating both the ACSI chain as well as the SCSI chain.

Terminator Power

For SCSI terminator to work, it needs power. The Falcon & TT030 external SCSI port does not provide any termination power, so one of the SCSI device will have to be configured to provide this. As for ACSI-SCSI adapters, check to see if they are provided. Normally one device providing the power should be enough but if you have enabled 2 devices, it seems to not hurt the system.

IDE

Falcon IDE port & cable next to the internal PSU (hard disk removed).

The FALCON030 is equipped with an IDE interface. IDE drives can be connected through an internal 44-pin connector. Chip selects and direction control for the IDE interface are provided by the COMBEL IC. The interface resides across the data bus using data bits 0-16. Four address bits are used to control the IDE interface.

Notebook size IDE hard disk can be connected directly to this internal 44-pin connector. A secondary IDE device such as second hard disk, CD drive, DVD drive, CF adapter, SD adapter or any other IDE devices can be connected. For this a 3-way IDE cable is required. The power from the 44-pin may not be able to support two IDE devices and highly dependent on the IDE device connected. However, many have success in connecting a second notebook hard disk, CF adapter and even IDE-SATA converter with a hard disk.





DMA

DMA is an acronym for Direct Memory Access. When used in the context of a computer (such as the Atari ST) and its high performance peripherals (floppy and hard disks, laser printers, tape drives, CD ROMs, etc.). DMA refers to the direct transfer of data between the peripheral device and the computer's memory. This transfer is done without the direct intervention of the processor. The Atari ST provides an external DMA bus connection through the Atari Computer System Interface (ACSI) connector on the Atari ST computer.
(Source: ATARI ACSI/DMA. Integration Guide. June 28, 1991)

Atari ST/TT/Falcon peripheral devices that use the DMA channel include

  • the Atari floppy disk controller (which is connected directly to the DMA channel)
  • internal & external SCSI of TT/MegaST/MegaSTE/Falcon
  • external ACSI port of ST/STE/TT for the Laser printer through its APPC (Atari Page Printer Controller), the Hard Disk through its AHDI (Atari Hard Disk Interface), the CDAR Audio/ROM CD Unit, and the Removable Hard Disk.
  • Sound system on STE, TT & Falcon
  • other ?



Boot Partition limitation

The boot partition is the drives that the driver will boot up from. This is normally the first partition on the hard disk and usually called Drive C:. However, newer hard disk driver software allows other partition (identified by drive alphabets) to be the boot partition. It seems that there is severe limitation on the size of the boot partition, normally impost by the hard disk driver.

Following experiment performed on a Falcon with TOS 4.04 and the internal IDE drive. Drive partition type is BGM.

  • CBHD was able to auto boot up to partition size of 250MB (may be 256MB) and access non-boot partition up to 510MB (may be 512MB).
  • ICD Pro was able to auto boot up to partition size of 1022MB (may be 1GB) and access non-boot partition up to 1GB.
  • HDDriver was able to auto boot up to partition size of 1022MB (may be 1GB) and access non-boot partition up to 1GB.

CBHD and Hddriver was able to access the 40GB hard disk whereas ICD pro can't. ICD Pro was tested using a smaller 10GB hard disk.

Note: The non-boot partition size limitation here is due to GEM DOS. So a TT030 will be limited to 512MB for the driver shown above while the limit for the Falcon will be 1GB. Installing an extended file system like FAT32 or Ext2 file system will enable the system to overcome the size limitation of GEM DOS. FAT32 is available on MagiC and Mint OS. Ext2 file system is available on Mint only.



Other readings



External Links




Back to Main Page