Tuesday, April 14, 2009

SCSI

Introduction to the SCSI interface

The SCSI standard (Small Computer System Interface) is an interface used to connect several different types of peripherals to a computer via a card, known as the SCSI adaptor or SCSI controller (generally connected using a PCI connector).

The number of peripherals that can be connected depends on the width of the SCSI bus. With an 8-bit bus, 8 physical units can be connected and 16 for a 16-bit bus. Since the SCSI controller represents a separate physical unit, the bus can therefore accommodate 7 (8-1) or 15 (16-1) peripherals.

Addressing of peripherals

Peripherals are addressed using identification numbers. The first number is the ID, which is a number designating the controller built into each peripheral (this is defined via the jumpers to be positioned on each SCSI peripheral or by the software). The peripheral may have up to 8 logical units (e.g. a CD-ROM drive with several drawers). The logical units are identified by a LUN (Logical Unit Number). Lastly, a computer may contain several SCSI cards and therefore a card number is assigned to each of them.

Thus, to communicate with a peripheral, the computer must give an address in the following form: "card number - ID - LUN".

Asymmetrical and differential SCSI

There are two types of SCSI bus:

·                                 the asymmetrical bus, known as SE (for Single-Ended), based on a parallel architecture in which each channel circulates on one wire, making it sensitive to interference. The SCSI cables in SE mode have 8 wires for 8-bit transmission (and are known as narrow), or 16 wires for a 16-bit cable (known as wide). This is the most common type of SCSI bus.

·                                 the differential bus carries signals to a pair of wires. The information is coded by difference between the two wires (each conveying the opposing voltage) in order to offset the electro-magnetic disturbances, which allows a considerable cabling distance (of around 25 metres). Generally speaking, there are two modes: LVD mode (Low Voltage Differential), based on 3.3V signals and HVD mode (High Voltage Differential), using 5V signals. Peripherals using this type of transmission are rarer and generally bear the word "DIFF".

The connectors for the two peripheral categories are the same but the electrical signals are different. Therefore the peripherals need to be identified (using the symbols created for the purpose) so as not to damage them!

SCSI standards

The SCSI standards define the electrical parameters of the input/output interfaces. The SCSI-1 standard of 1986 defined the standard commands for controlling the SCSI peripherals on a bus with a frequency of 4.77 MHz with width of 8 bits, meaning that speeds of 5 Mo/s can be achieved.

However, a large number of these commands were optional, thus in 1994 the SCSI-2 standard was adopted. It defines 18 commands known as CCS (Common Command Set). Various versions of the SCSI-2 standard have been defined:

·                                 The Wide SCSI-2 is based on a bus with 16 bits (instead of 8) and offers speed of 10 Mo/s

·                                 The Fast SCSI-2 is a rapid synchronous mode allowing an increase from 5 to 10 Mo/s for the standard SCSI and from 10 to 20 Mo/s for the Wide SCSI-2 (referred to as the Fast Wide SCSI-2)

·                                 The Fast-20 and Fast-40 modes respectively double and quadruple these speeds.

The SCSI-3 standard includes new commands and allows chaining of 32 peripherals and a maximum speed of 320 Mo/s (in Ultra-320 mode).

The following table summarises the characteristics of the various SCSI standards:

Standard

Bus width

Bus speed

Bandwidth

Connector

SCSI-1
(
Fast-5 SCSI)

8 bits

4.77 MHz

5 MB/sec

50 pins
(asymmetrical or differential bus)

SCSI-2 - Fast-10 SCSI

8 bits

10 MHz

10 MB/sec

50 pins
(asymmetrical or differential bus)

SCSI-2 - Wide

16 bits

10 MHz

20 MB/sec

50 pins
(asymmetrical or differential bus)

SCSI-2 - Fast Wide 32 bits

32 bits

10 MHz

40 MB/sec

68 pins
(asymmetrical or differential bus)

SCSI-2 - Ultra SCSI-2
(Fast-20 SCSI)

8 bits

20 MHz

20 MB/sec

50 pins
(asymmetrical or differential bus)

SCSI-2 - Ultra Wide SCSI-2

16 bits

20 MHz

40 MB/sec

 

SCSI-3 - Ultra-2 SCSI
(Fast-40 SCSI)

8 bits

40 MHz

40 MB/sec

 

SCSI-3 - Ultra-2 Wide SCSI

16 bits

40 MHz

80 MB/sec

68 pins
(differential bus)

SCSI-3 - Ultra-160
(Ultra-3 SCSI or Fast-80 SCSI)

16 bits

80 MHz

160 MB/sec

68 pins
(differential bus)

SCSI-3 - Ultra-320
(Ultra-4 SCSI or Fast-160 SCSI)

16 bits

80 MHz DDR

320 MB/sec

68 pins
(differential bus)

SCSI-3 - Ultra-640 (Ultra-5 SCSI)

16

80 MHz QDR

640 MB/sec

68 pins
(differential bus)