Serial vs. Parallel: The Case for SSA
Dave E. Hall
For many years, much of the storage sold for open systems has been based on SCSI. The original SCSI bus was 8-bits wide and operated at a nominal data rate of 5 MBps. Fast SCSI doubled the clock rate and Wide SCSI increased the width of the bus to 16 bits so that today Fast/Wide SCSI operates at 20 MBps. Ultra SCSI again doubles the clock rate, allowing 20 MBps on an 8-bit bus or 40 MBps on a 16-bit bus.
Parallel SCSI operates as a bus, with one set of wires or signals connecting all devices on the bus. As a result, only one piece of information can be carried on the bus at a time. When a device wants to use the bus, it must first arbitrate with the other devices on the bus for permission. If two devices request the bus at the same time, a predetermined set of priorities decides which device wins control. This priority is based on the device`s SCSI-ID, which also serves as its address. Once a device has successfully arbitrated for the bus, it must get the attention of the target device before sending a command or data.
The rate at which most SCSI devices store or retrieve data is well below the maximum transfer rate of the SCSI bus. Most SCSI disk drives store and retrieve data at approximately 10 MBps, but a Fast/Wide SCSI bus transfers data at 20 MBps. Clearly, it is inefficient to transfer data at 10 MBps across a 20 MBps bus. For this reason, SCSI target devices typically use a data buffer to stage data.
To improve performance, most SCSI devices transfer data in and out of the buffer at the same time. Another technique used to reduce the response time for writes is to begin transferring data into the buffer before the disk`s read/write heads are in position to perform the write. If the device`s buffer is not large enough to accommodate the data from an entire I/O operation, the device may have to disconnect from the SCSI bus and reconnect later. A target device may disconnect and reconnect several times during a long data transfer. Each time it reconnects it has to arbitrate for the bus before it transfers data.
This ability to disconnect and reconnect allows a crude form of multiplexing of the SCSI bus between a number of devices. Due to the length of time required to perform arbitration, SCSI devices attempt to minimize the number of disconnects and reconnects needed to complete an operation. This limits the effectiveness of the multiplexing. Typically, SCSI devices transfer 32KB to 64KB of data before disconnecting. During that time, no other data can be transferred on the bus.
On a SCSI bus, the device with the highest ID "wins" the arbitration phase, creating a "pecking order" among the disks on the bus. Therefore, some records take longer to read or write than others.
In contrast to parallel SCSI, where a cable containing many wires carries the data bits "side by side" in parallel, serial-attached storage uses a serial link. Serial link cables--either copper or fibre optic--carry the data bits one after the other, serially. Although it may seem more efficient to transfer bits in parallel, due to the difficulties with synchronizing data bits, data is actually transmitted as fast or faster serially. Serial implementations also overcome other limitations of SCSI, including the cable length, the number of devices on the bus, the need for terminators and address plugs, and the difficulties in hot plugging.
The Case for SSA
The Serial Storage Architecture (SSA) defines a high- performance serial link for the attachment of I/O devices. It is an ANSI standard and has been optimized for storage applications (e.g., hard-disk drives, host adapter cards, and array controllers). SSA has many advantages over such existing parallel interfaces as SCSI, including more compact cables and connectors and superior performance, scalability, and reliability. IBM began shipping SSA products in mid-1995.
At the heart of any SSA product is the serial interface chip, which has two 20 MBps full-duplex ports. (Full duplex means that you can read and write to the port at the same time.) Total bandwidth is 80 MBps per chip. SSA disks are mechanically identical to SCSI disks (i.e., the read/write heads, platters, and motors are the same).
In I/O-intensive applications, SSA`s performance is up to 3 to 4 times higher than SCSI`s. This performance boost is due to SSA`s full-duplex capabilities and multiple paths--instead of SCSI`s arbitration phase. Future SSA devices will work at twice the speed of the existing spec.
The basic difference between SCSI and SSA lies with the chips. SCSI chips are designed for a bus implementation--with arbitration. SSA chips, on the other hand, enable string, loop, or switch configurations. Current SSA implementations tend to use the loop configuration because it provides fault-tolerant redundancy.
Strings vs. Loops
Another key feature of the SSA chip is point-to-point links. Unlike SCSI, SSA does not use a bus to which each device must arbitrate for access. Instead, SSA uses a system of independent, full-duplex point-to-point serial links, which means that reading or writing data to or from an SSA device does not require arbitration.
Again, unlike devices in a SCSI subsystem, which are connected in a string, the devices in an SSA subsystem are arranged in a loop. In a SCSI configuration, an error or break on the string can cause loss of access to all devices down the string. If the same thing happens in an SSA configuration, devices can still be accessed via either part of the loop.
In a SCSI configuration, only one operation can take place at a time. In an SSA configuration, due to full-duplex links, multiple operations can occur simultaneously, leading to higher overall throughput.
The maximum length of the SCSI cable in a typical Fast/Wide configuration is 6 meters. With SSA, the maximum distance between any two devices is 25 meters using standard cables and 2.4 kilometers with fibre-optic extenders. This increased distance makes configuration more flexible and allows computers and storage to be located in different physical locations for better disaster protection.
The maximum number of devices that can be connected to a SCSI bus is 15. On an SSA loop, the architecture allows up to 127 devices to be attached per adapter--of particular importance for users with large capacity requirements. With appropriate software, SSA loops can be connected to as many as eight computers simultaneously, providing scalability for applications and protection against hardware failures. This means that a large number of disks will require far fewer adapters with SSA than with SCSI.
In short, serial technology provides increased storage capabilities that are unattainable with SCSI. In large transaction-intensive applications, SSA can improve performance by three to four times and it can attach to more than six times the number of drives supported by a SCSI adapter. SSA also simplifies the management of storage by enabling multiple hosts to easily access the same storage repository. Also, the serial design allows problems to be isolated and repaired more quickly, increasing the up-time of these applications. These improvements over SCSI make SSA an optimal solution in data-intensive applications for which scalability, performance, and reliability are paramount.
Dave E. Hall is with IBM Corp.`s Storage Systems Division, SSA Architecture and Development organization in Hampshire, England.