There are 2 handshaking modes on the SCSI bus, used for transferring data: ASYNCHRONOUS and SYNCHRONOUS. ASYNCHRONOUS is a classic Req/Ack handshake. SYNCHRONOUS is "sort of" Req/Ack, only it allows you to issue multiple Req's before receiving Ack's. Wha t this means in practice is that SYNCHRONOUS transfers are approx 3 times faster than ASYNCHRONOUS.
SCSI-1 allowed asynchronous transfers at up to 1.5 Mbytes/Sec and synchronous transfers at up to 5.0 Mbytes/Sec.
SCSI-2 had some of the timing margins "shaved" in order that faster handshaking could occur. The result is that asynchronous transfers can run at up to 3.0 bytes/Sec and synchronous transfers at up to 10.0 Mbytes/Sec. The term "FAST" is generally applied to a SCSI device which can do syncrhonous transfers at speeds in excess of 5.0 Mbytes/Sec. This term can only be applied to SCSI-2 devices since SCSI-1 didn't have the timing margins that allow for FAST transfers.
For each signal that needs to be sent across the bus, there exists a pair of wires to carry it. The first in this pair carries the same type of signal the single-ended SCSI carries. The second in this pair, however, carries its logical inversion. The re ceiver takes the difference of the pair (thus the name differential), which makes it less susceptible to noise and allows for greater cable length.
For each signal that needs to be sent across the bus, there exists a wire to carry it.
SCSI may now transfer data at bus widths of 16 and 32 bits. Commands, status, messages and arbitration are still 8 bits, and the B-Cable has 68 pins for data bits. Cabling was a confusing issue in the closing days of SCSI-2, because the first project of S CSI-3 was the definition of a 16-bit wide P-Cable which supported 16-bit arbitration as well as 16-bit data transfers. Although SCSI-2 does not contain a definition of the P-Cable, it is quite possible that within the year, the P-Cable will be most popul ar non-SCSI-2 feature on SCSI-2 products. The market responds to what it wants, not the the arbitrary cutoffs of standards committees.
A 10 MHz transfer rate for SCSI came out of a joint effort with the IPI (Intelligent Peripheral Interface) committee in ASC X3T9.3. Fast SCSI achieves 10 Megabytes/second on the A-Cable and with wider data paths of 16- and 32-bits can rise to 20 Megabytes /second and even 40 Megabytes/second. However, by the time the market starts demanding 40 Megabytes/second it is likely that the effort to serialize the physical interface for SCSI-3 will attract high-performance SCSI users to the Fiber Channel.
A word of caution. At this time the fast parameters cannot be met by the Single Ended electrical class, and is only suitable for Differential. One of the goals in SCSI-3 is to identify the improvements needed to achieve 10 MHz operation with Single Ended components.
The Single Ended electrical class depends on very tight termination tolerances, but the passive 132 ohm termination defined in 1986 is mismatched with the cable impedance (typically below 100 ohms). Although not a problem at low speeds when only a few dev ices are connected, reflections can cause errors when transfer rates increase and/or more devices are added. In SCSI-2, an active terminator has been defined which lowers termination to 110 ohms and is a major boost to system integrity.
In SCSI-1, initiators were limited to one command per LUN e.g. a disk drive. Now up to 256 commands can be outstanding to one LUN. The target is allowed to re-sequence the order of command execution to optimize seek motions. Queued commands require Tag messages which follow the Identify.
Asynchronous is faster on short cables, while synchronous is faster on long cables. The reason has to do with the propagation delay of the cable; the turn around time of the silicon; and the interlocked nature of the asynchronous handshake.
1) We have measured propagation delays from various cables and found an average of 1.7 nanoseconds per foot, which is roughly 5.25 ns per meter.
2) The turn-around time is the amount of time the SCSI chip takes to change an output in response to an input. If REQ is an input then ACK is an output. Or if ACK is an input then REQ is an output. Typical turn-around time for the 53C90 is 40 nanoseco nds.
3) The asynchronous transfer uses an interlocked handshake where a device cannot do the next thing until it receives positive acknowledgment that the other device received the last thing.
First REQ goes true (driven by Target), then ACK is permitted to go true (driven by Initiator), then REQ is permitted to go false, then ACK is permitted to go false.
Thus we have four "edges" propagating down the cable plus 4 turn-around delays. Asynchronous transfer requires 55 ns setup and no hold time (paragraph in 5.1.5.1 in SCSI-1 or SCSI-2) which gives an upper speed limit around 18 MB/s. A detailed analysis s hows that the setup time subtracts out. This is mostly because we are running at one-third the max rate, but also because setup for the next byte can begin anytime after ACK is received true or REQ is received false, depending on who is receiving. You c an either take my word for it or draw the waveforms yourself. Thus, the asynchronous transfer reduces to:
(4 * 1.7 * 1) + (4 * 40ns) = 167 ns = 6 MB/s (1 foot cable)
(4 * 5.25 * 6) + (4 * 40ns) = 286 ns = 3.5 MB/s (6 meter cable)
(4 * 5.25 * 25) + (4 * 40ns) = 685 ns = 1.5 MB/s (25 meter cable)
Note: cables longer than 6 meters require external differential transceivers which add delay and degrade the performance even more than indicated here.
Our simulations say that under very best conditions (fast silicon, low temperature, high voltage, zero length cable) we can expect more than 8 MB/s asynchronously. In the lab, I routinely measure 5 MB/s on 8 foot cables. So, if you were writing the data manual for this, how would YOU spec it?
The framers of the SCSI spec threw in synchronous mode to boost the performance on long cables. In synchronous mode, the sending device is permitted to send the next byte without receiving acknowledgment that the receiver actually received the last byte. Kind of a ship and pray method. The acknowledgment is required to come back sometime, but we just don't have to wait for it (handwave the offset stuff and the ending boundary conditions). In this mode any external transceivers add a time shift, but no t a delay. So if you negotiate for 5 MB/s, you get 5MB/s regardless how long the cable is and regardless whether you are single-ended or differential. But you can't go faster than 5.5 MB/s, except in SCSI-2.
Synchronous mode does have a hold time (unlike asynch) but again, setup and hold times subtract out. In SCSI-1 synchronous mode, the speed limit comes from the combined ASSERTION PERIOD + NEGATION PERIOD which is 90ns + 90ns = 180ns = 5.5 MB/s. Our 53C9 0 family doesn't quite hit the max, but we do guarentee 5.0 MB/s. In SCSI-2, anything above 5.0 MB/s is considered to be FAST. Here the maximum transfer rate is explicitly limited to 100 ns or 10MB/s; you don't have to read between the lines to deduce i t.
Interesting tid-bit: given a SCSI-2 FAST period of 100 ns and a cable delay of 131 ns on a 25 meter cable, you can actually stack 1.31 bytes in the 8-bit cable. In FAST and WIDE SCSI you can stack 5.24 bytes in this copper FIFO.
An active terminator actually has one or more voltage regulators to produce the termination voltage, rather than using resistor voltage dividers.
This is a passive terminator:
TERMPWR ------/\/\/\/------+------/\/\/\/----- GND | | SCSI signal
Notice that the termination voltage is varies with the voltage on theTERMPWR line. One voltage divider (two resistors) is used for each SCSIsignal.
An active terminator looks more like this (supply filter caps omitted):
+-----------+ TERMPWR -----| in out |------+------/\/\/\/-------SCSI signal | gnd | | +-----------+ | | +------/\/\/\/-------SCSI signal | | GND ---------------+ | +------/\/\/\/-------SCSI signal | etc.
Assuming that the TERMPWR voltage doesn't drop below the desired termination voltage (plus the regulator's minimum drop), the SCSI signals will always be terminated to the correct voltage level.
The SCSI specification is available from:
Global Engineering Documentation in Irvine, CA (714) 261-1455
SCSI-1: Doc # X3.131-1986 from:
IN-DEPTH EXPLORATION OF SCSI can be obtained from:
THE SCSI ENCYLOPEDIA and the SCSI BENCH REFERENCE can be obtained from:
SCSI: UNDERSTANDING THE SMALL COMPUTER SYSTEM INTERFACE was published by Prentice-Hall, ISBN 0-13-796855-8
Adaptec Phone Numbers: