SCSI
Encyclopedia
Small Computer System Interface (SCSI, icon ) is a set of standards for physically connecting and transferring data between computers and peripheral devices. The SCSI standards define commands
SCSI command
In SCSI computer storage, a command is the basic unit of communication. The SCSI command architecture was originally defined for parallel SCSI buses but has been carried forward with minimal change for use with Fibre Channel, iSCSI and Serial Attached SCSI....

, protocols, and electrical and optical interfaces
Interface (computer science)
In the field of computer science, an interface is a tool and concept that refers to a point of interaction between components, and is applicable at the level of both hardware and software...

. SCSI is most commonly used for hard disks and tape drives, but it can connect a wide range of other devices, including scanners and CD
CD-ROM
A CD-ROM is a pre-pressed compact disc that contains data accessible to, but not writable by, a computer for data storage and music playback. The 1985 “Yellow Book” standard developed by Sony and Philips adapted the format to hold any form of binary data....

 drives. The SCSI standard defines command sets for specific peripheral device types
SCSI Peripheral Device Type
A SCSI Peripheral Device Type is a way of describing what capabilities are provided by a SCSI device. It is a five-bit field which can be found in the first byte provided in response to an Inquiry Command...

; the presence of "unknown" as one of these types means that in theory it can be used as an interface to almost any device, but the standard is highly pragmatic and addressed toward commercial requirements.

SCSI is an intelligent, peripheral, buffered, peer to peer interface. It hides the complexity of physical format. Every device attaches to the SCSI bus in a similar manner. Up to 8 or 16 devices can be attached to a single bus. There can be any number of hosts and peripheral devices but there should be at least one host. SCSI uses hand shake signals between devices, SCSI-1, SCSI-2 have the option of parity error checking. Starting with SCSI-U160 (part of SCSI-3) all commands and data are error checked by a CRC32
Cyclic redundancy check
A cyclic redundancy check is an error-detecting code commonly used in digital networks and storage devices to detect accidental changes to raw data...

 checksum. The SCSI protocol defines communication from host to host, host to a peripheral device, peripheral device to a peripheral device. However most peripheral devices are exclusively SCSI targets, incapable of acting as SCSI initiator
SCSI initiator
In computer data storage, a SCSI initiator is the endpoint that initiates a SCSI session, that is, sends a SCSI command. The initiator usually does not provide any Logical Unit Numbers ....

s—unable to initiate SCSI transactions themselves. Therefore peripheral-to-peripheral communications are uncommon, but possible in most SCSI applications. The Symbios Logic
Symbios Logic
Symbios Logic was a manufacturer of SCSI host adapter chipsets and disk array storage subsystems. It was originally established as a division of NCR Corporation in 1972, before NCR's takeover by AT&T in 1991....

 53C810 chip is an example of a PCI
Peripheral Component Interconnect
Conventional PCI is a computer bus for attaching hardware devices in a computer...

 host interface that can act as a SCSI target.

History

SCSI was derived from "SASI", the "Shugart Associates
Shugart Associates
Shugart Associates was a computer peripheral manufacturer that dominated the floppy disk drive market in the late 1970s and is famous for introducing the 5¼-inch minifloppy disk drive....

 System Interface", developed c. 1978 and publicly disclosed in 1981. A SASI controller provided a bridge between a hard disk drive's low-level interface and a host computer, which needed to read blocks of data. SASI controller boards were typically the size of a hard disk drive and were usually physically mounted to the drive's chassis. SASI, which was used in mini- and early microcomputers, defined the interface as using a 50-pin flat ribbon connector which was adopted as the SCSI-1 connector. SASI is a fully compliant subset of SCSI-1 so that many, if not all, of the then existing SASI controllers were SCSI-1 compatible.

Larry Boucher is considered to be the "father" of SASI and SCSI due to his pioneering work first at Shugart Associates
Shugart Associates
Shugart Associates was a computer peripheral manufacturer that dominated the floppy disk drive market in the late 1970s and is famous for introducing the 5¼-inch minifloppy disk drive....

 and then at Adaptec
Adaptec
Adaptec is a computer hardware brand owned by PMC-Sierra that is used on some of its host adapters for connecting storage devices to computers. The production line of Adaptec is in Indonesia. Products are made to interface with SCSI, Serial ATA, and Serial attached SCSI. Some of its host adapters...

.

Until at least February 1982, ANSI developed the specification as "SASI" and "Shugart Associates System Interface;" however, the committee documenting the standard would not allow it to be named after a company. Almost a full day was devoted to agreeing to name the standard "Small Computer System Interface," which Boucher intended to be pronounced "sexy", but ENDL's Dal Allan pronounced the new acronym as "scuzzy" and that stuck.

A number of companies such as NCR Corporation
NCR Corporation
NCR Corporation is an American technology company specializing in kiosk products for the retail, financial, travel, healthcare, food service, entertainment, gaming and public sector industries. Its main products are self-service kiosks, point-of-sale terminals, automated teller machines, check...

, Adaptec
Adaptec
Adaptec is a computer hardware brand owned by PMC-Sierra that is used on some of its host adapters for connecting storage devices to computers. The production line of Adaptec is in Indonesia. Products are made to interface with SCSI, Serial ATA, and Serial attached SCSI. Some of its host adapters...

 and Optimem were early supporters of the SCSI standard. The NCR facility in Wichita, Kansas
Wichita, Kansas
Wichita is the largest city in the U.S. state of Kansas.As of the 2010 census, the city population was 382,368. Located in south-central Kansas on the Arkansas River, Wichita is the county seat of Sedgwick County and the principal city of the Wichita metropolitan area...

 is widely thought to have developed the industry's first SCSI chip; it worked the first time.

The "small" part in SCSI is historical; since the mid-1990s, SCSI has been available on even the largest of computer systems.

Since its standardization in 1986, SCSI has been commonly used in the Amiga
Amiga
The Amiga is a family of personal computers that was sold by Commodore in the 1980s and 1990s. The first model was launched in 1985 as a high-end home computer and became popular for its graphical, audio and multi-tasking abilities...

, Apple Macintosh
Macintosh
The Macintosh , or Mac, is a series of several lines of personal computers designed, developed, and marketed by Apple Inc. The first Macintosh was introduced by Apple's then-chairman Steve Jobs on January 24, 1984; it was the first commercially successful personal computer to feature a mouse and a...

 and Sun Microsystems
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

 computer lines and PC server systems. Apple started using Parallel ATA (also known as IDE) for its low-end machines with the Macintosh Quadra
Macintosh Quadra
The Macintosh Quadra series was Apple Computer's product family of professional high-end Apple Macintosh personal computers built using the Motorola 68040 CPU. The first two models in the Quadra line were introduced in 1991, and the name was used until the Power Mac was introduced in 1994...

 630 in 1994, and added it to its high-end desktops starting with the Power Macintosh G3 in 1997. Apple dropped on-board SCSI completely (in favor of IDE and FireWire) with the (Blue & White) Power Mac G3 in 1999. Sun has switched its lower end range to Serial ATA
Serial ATA
Serial ATA is a computer bus interface for connecting host bus adapters to mass storage devices such as hard disk drives and optical drives...

 (SATA). SCSI has never been popular in the low-priced IBM PC world, owing to the lower cost and adequate performance of ATA hard disk standard. SCSI drives and even SCSI RAID
RAID
RAID is a storage technology that combines multiple disk drive components into a logical unit...

s became common in PC workstations for video or audio production.

Recent versions of SCSI – Serial Storage Architecture
Serial Storage Architecture
Serial Storage Architecture is a serial transport protocol used to attach disk drives to servers. It was invented by Ian Judd of IBM in 1990...

 (SSA), SCSI-over-Fibre Channel Protocol (FCP), Serial Attached SCSI
Serial Attached SCSI
Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

 (SAS), Automation/Drive Interface − Transport Protocol (ADT), and USB Attached SCSI
USB Attached SCSI
USB Attached SCSI is a computer protocol used to move data to and from USB storage devices such as hard drives, solid-state drives, and thumb drives...

 (UAS) – break from the traditional parallel SCSI
Parallel SCSI
Parallel SCSI is one of the interface implementations in the SCSI family. In addition to being a data bus, SPI is a parallel electrical bus: There is one set of electrical connections stretching from one end of the SCSI bus to the other. A SCSI device attaches to the bus but does not interrupt it...

 standards and perform data transfer via serial communications. Although much of the documentation of SCSI talks about the parallel interface, most contemporary development effort is on serial SCSI. Serial SCSI has a number of advantages over parallel SCSI: faster data rates, hot swapping
Hot swapping
Hot swapping and hot plugging are terms used to describe the functions of replacing computer system components without shutting down the system...

 (some but not all parallel SCSI interfaces support it), and improved fault isolation. The primary reason for the shift to serial interfaces is the clock skew
Clock skew
-In circuit design:In circuit designs, clock skew is a phenomenon in synchronous circuits in which the clock signal arrives at different components at different times...

 issue of high speed parallel interfaces, which makes the faster variants of parallel SCSI susceptible to problems caused by cabling and termination.

iSCSI
ISCSI
In computing, iSCSI , is an abbreviation of Internet Small Computer System Interface, an Internet Protocol -based storage networking standard for linking data storage facilities. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage...

preserves the basic SCSI paradigm
Paradigm
The word paradigm has been used in science to describe distinct concepts. It comes from Greek "παράδειγμα" , "pattern, example, sample" from the verb "παραδείκνυμι" , "exhibit, represent, expose" and that from "παρά" , "beside, beyond" + "δείκνυμι" , "to show, to point out".The original Greek...

, especially the command set, almost unchanged, through embedding of SCSI-3 over TCP/IP.

SCSI is popular on high-performance workstations and servers. RAIDs on servers have almost always used SCSI hard disks, though a number of manufacturers now offer SATA-based RAID systems as a cheaper option. Instead of SCSI, desktop computers and notebooks more typically use ATA
Serial ATA
Serial ATA is a computer bus interface for connecting host bus adapters to mass storage devices such as hard disk drives and optical drives...

 interfaces for internal hard disk drives, and USB, eSATA, and FireWire connections for external devices.

Interfaces

SCSI is available in a variety of interfaces. The first, still very common, was parallel SCSI
Parallel SCSI
Parallel SCSI is one of the interface implementations in the SCSI family. In addition to being a data bus, SPI is a parallel electrical bus: There is one set of electrical connections stretching from one end of the SCSI bus to the other. A SCSI device attaches to the bus but does not interrupt it...

 (now also called SPI), which uses a parallel
Parallel communications
In telecommunication and computer science, parallel communication is a method of sending several data signals simultaneously over several parallel channels...

 electrical bus
Electrical bus
Electric bus is a bus powered by electric energy. "Electric bus" can also refer to:* Bus , used for connecting components of a computer or communication between computers* Busbars, thick conductors acting as nodes in electrical substations...

 design. As of 2008, SPI is being replaced by Serial Attached SCSI
Serial Attached SCSI
Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

 (SAS), which uses a serial
Serial communications
In telecommunication and computer science, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus. This is in contrast to parallel communication, where several bits are sent as a whole, on a link with several parallel channels...

  design but retains other aspects of the technology. Many other interfaces which do not rely on complete SCSI standards still implement the SCSI command protocol; others (such as iSCSI
ISCSI
In computing, iSCSI , is an abbreviation of Internet Small Computer System Interface, an Internet Protocol -based storage networking standard for linking data storage facilities. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage...

) drop physical implementation entirely while retaining the SCSI architectural model
SCSI Architectural Model
The SCSI architectural model provides an abstract view of the way that SCSI devices communicate. It is intended to show how the different SCSI standards are inter-related...

. iSCSI, for example, uses TCP/IP as a transport mechanism.

SCSI interfaces have often been included on computers from various manufacturers for use under Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, Mac OS
Mac OS
Mac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...

, Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 operating systems, either implemented on the motherboard
Motherboard
In personal computers, a motherboard is the central printed circuit board in many modern computers and holds many of the crucial components of the system, providing connectors for other peripherals. The motherboard is sometimes alternatively known as the mainboard, system board, or, on Apple...

 or by the means of plug-in adaptors. With the advent of SAS
Serial Attached SCSI
Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

 and SATA
Serial ATA
Serial ATA is a computer bus interface for connecting host bus adapters to mass storage devices such as hard disk drives and optical drives...

 drives, provision for SCSI on motherboards is being discontinued. A few companies still market SCSI interfaces for motherboards supporting PCIe and PCI-X.

Parallel SCSI

Interface Alternative
names
Specification
document
Connector Width
(bits)
Clock Maximum Electrical
Bandwidth (MB/s) Bandwidth (Mbit/s) Length
(single ended)
Length LVD Length HVD Devices Impedance [Ω
Ohm
The ohm is the SI unit of electrical resistance, named after German physicist Georg Simon Ohm.- Definition :The ohm is defined as a resistance between two points of a conductor when a constant potential difference of 1 volt, applied to these points, produces in the conductor a current of 1 ampere,...

]
Voltage [V
Volt
The volt is the SI derived unit for electric potential, electric potential difference, and electromotive force. The volt is named in honor of the Italian physicist Alessandro Volta , who invented the voltaic pile, possibly the first chemical battery.- Definition :A single volt is defined as the...

]
SCSI-1 Narrow SCSI SCSI-1 (1986) IDC50; Centronics C50 8 5 MHz 5 MB/s 40 Mbit/s 6 m NA 25m 8 5
Fast SCSI SCSI-2 (1994) IDC50; Centronics C50 8 10 MHz 10 MB/s 80 Mbit/s 3 m NA 25m 8 5
Fast-Wide SCSI SCSI-2;
SCSI-3 SPI (1996)
2 x 50-pin (SCSI-2);
1 x 68-pin (SCSI-3)
16 10 MHz 20 MB/s 160 Mbit/s 3 m NA 25m 16 5
Ultra SCSI Fast-20 SCSI-3 SPI IDC50 8 20 MHz 20 MB/s 160 Mbit/s 1.5 m NA 25m 8 5
3 m NA NA 4
Ultra Wide SCSI SCSI-3 SPI 68-pin 16 20 MHz 40 MB/s 320 Mbit/s NA NA 25m 16 5
1.5 m NA NA 8
3 m NA NA 4
Ultra2 SCSI Fast-40 SCSI-3 SPI-2 (1997) 50-pin 8 40 MHz 40 MB/s 320 Mbit/s NA 12m 25m 8
Ultra2 Wide SCSI SCSI-3 SPI-2 68-pin; 80-pin (SCA
Single Connector Attachment
Single Connector Attachment, or SCA, is a type of connection for the internal cabling of SCSI systems. There are two versions of this connector: the SCA-1, which is deprecated, and SCA-2, which is currently in use in most systems...

/SCA-2)
16 40 MHz 80 MB/s 640 Mbit/s NA 12m 25m 16
Ultra3 SCSI Ultra-160; Fast-80 wide SCSI-3 SPI-3 (1999) 68-pin; 80-pin (SCA
Single Connector Attachment
Single Connector Attachment, or SCA, is a type of connection for the internal cabling of SCSI systems. There are two versions of this connector: the SCA-1, which is deprecated, and SCA-2, which is currently in use in most systems...

/SCA-2)
16 40 MHz DDR
Double data rate
In computing, a computer bus operating with double data rate transfers data on both the rising and falling edges of the clock signal. This is also known as double pumped, dual-pumped, and double transition....

160 MB/s 1280 Mbit/s NA 12m NA 16
Ultra-320 SCSI Ultra-4; Fast-160 SCSI-3 SPI-4 (2002) 68-pin; 80-pin (SCA
Single Connector Attachment
Single Connector Attachment, or SCA, is a type of connection for the internal cabling of SCSI systems. There are two versions of this connector: the SCA-1, which is deprecated, and SCA-2, which is currently in use in most systems...

/SCA-2)
16 80 MHz DDR 320 MB/s 2560 Mbit/s NA 12m NA 16
Ultra-640 SCSI Ultra-5 SCSI-3 SPI-5 (2003) 68-pin; 80-pin 16 160 MHz DDR 640 MB/s 5120 Mbit/s 16

Other SCSI interfaces

iSCSI
ISCSI
In computing, iSCSI , is an abbreviation of Internet Small Computer System Interface, an Internet Protocol -based storage networking standard for linking data storage facilities. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage...

>
Interface Alternative
names
Specification
document
Connector Width
(bits)
Clock Maximum
Throughput (MB/s) Throughput (Mbit/s) Length Devices
SSA
Serial Storage Architecture
Serial Storage Architecture is a serial transport protocol used to attach disk drives to servers. It was invented by Ian Judd of IBM in 1990...

1 200 MHz 40 MB/s 320 Mbit/s 25 m 96
SSA 40 1 400 MHz 80 MB/s 640 Mbit/s 25 m 96
FC-AL 1Gb 1 1 GHz 100 MB/s 800 Mbit/s 500m/3 km 127
FC-AL 2Gb 1 2 GHz 200 MB/s 1600 Mbit/s 500m/3 km 127
FC-AL 4Gb 1 4 GHz 400 MB/s 3200 Mbit/s 500m/3 km 127
SAS
Serial Attached SCSI
Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

 1.1
1 3 GHz 300 MB/s 2400 Mbit/s 6 m 16,256
SAS 2.0 1 6 GHz 600 MB/s 4800 Mbit/s 6 m 16,256
Implementation- and network-dependent

Cabling

SCSI Parallel Interface

Internal parallel SCSI cables are usually ribbons, with two or more 50–, 68–, or 80–pin connectors attached. External cables are typically shielded (but may not be), with 50– or 69–pin connectors at each end, depending upon the specific SCSI bus width supported. The 80–pin Single Connector Attachment
Single Connector Attachment
Single Connector Attachment, or SCA, is a type of connection for the internal cabling of SCSI systems. There are two versions of this connector: the SCA-1, which is deprecated, and SCA-2, which is currently in use in most systems...

 (SCA) is typically used for hot-pluggable devices, where external cables are not usually required.

Serial attached SCSI

Serial attached SCSI
Serial Attached SCSI
Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

 uses a modified Serial ATA
Serial ATA
Serial ATA is a computer bus interface for connecting host bus adapters to mass storage devices such as hard disk drives and optical drives...

 data and power cable.

iSCSI

iSCSI
ISCSI
In computing, iSCSI , is an abbreviation of Internet Small Computer System Interface, an Internet Protocol -based storage networking standard for linking data storage facilities. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage...

 (Internet Small Computer System Interface) usually uses Ethernet
Ethernet
Ethernet is a family of computer networking technologies for local area networks commercially introduced in 1980. Standardized in IEEE 802.3, Ethernet has largely replaced competing wired LAN technologies....

 connectors and cables as its physical transport, but can run over any physical transport capable of transporting IP
Internet Protocol
The Internet Protocol is the principal communications protocol used for relaying datagrams across an internetwork using the Internet Protocol Suite...

.

USB Attached SCSI

USB Attached SCSI
USB Attached SCSI
USB Attached SCSI is a computer protocol used to move data to and from USB storage devices such as hard drives, solid-state drives, and thumb drives...

 allows SCSI devices to use the Universal Serial Bus
Universal Serial Bus
USB is an industry standard developed in the mid-1990s that defines the cables, connectors and protocols used in a bus for connection, communication and power supply between computers and electronic devices....

.

Automation/Drive Interface

The Automation/Drive Interface − Transport Protocol (ADT) is used to connect removable media devices, such as tape drives, with the controllers of the libraries (automation devices)
in which they are installed. The ADI standard specifies the use of RS-422 for the physical connections. The second-generation ADT-2 standard defines iADT, use of the ADT protocol
over IP (Internet Protocol) connections, such as over Ethernet
Ethernet
Ethernet is a family of computer networking technologies for local area networks commercially introduced in 1980. Standardized in IEEE 802.3, Ethernet has largely replaced competing wired LAN technologies....

. The Automation/Drive Interface − Commands standards (ADC, ADC-2, and ADC-3) define SCSI commands for these installations.

SCSI command protocol

In addition to many different hardware implementations, the SCSI standards also include an extensive set of command definitions. The SCSI command architecture was originally defined for parallel SCSI
Parallel SCSI
Parallel SCSI is one of the interface implementations in the SCSI family. In addition to being a data bus, SPI is a parallel electrical bus: There is one set of electrical connections stretching from one end of the SCSI bus to the other. A SCSI device attaches to the bus but does not interrupt it...

 buses but has been carried forward with minimal change for use with iSCSI and serial SCSI. Other technologies which use the SCSI command set include the ATA Packet Interface, USB Mass Storage class
USB mass storage device class
The USB mass storage device class, otherwise known as USB MSC or UMS, is a protocol that allows a Universal Serial Bus device to become accessible to a host computing device, to enable file transfers between the two...

 and FireWire SBP-2
Serial Bus Protocol 2
Serial Bus Protocol 2 standard is a transport protocol within Serial Bus, IEEE Std 1394-1995 , developed by T10....

.

In SCSI terminology, communication takes place between an initiator
SCSI initiator
In computer data storage, a SCSI initiator is the endpoint that initiates a SCSI session, that is, sends a SCSI command. The initiator usually does not provide any Logical Unit Numbers ....

 and a target. The initiator sends a command
SCSI command
In SCSI computer storage, a command is the basic unit of communication. The SCSI command architecture was originally defined for parallel SCSI buses but has been carried forward with minimal change for use with Fibre Channel, iSCSI and Serial Attached SCSI....

 to the target, which then responds. SCSI commands are sent in a Command Descriptor Block (CDB
SCSI CDB
In SCSI computer storage, commands are sent in a Command Descriptor Block .Each CDB can be a total of 6, 10, 12, or 16 bytes, but later versions of the SCSI standard also allow for variable-length CDBs. The CDB consists of a one byte operation code followed by some command-specific parameters.A...

). The CDB consists of a one byte operation code followed by five or more bytes containing command-specific parameters.

At the end of the command sequence, the target returns a status code
SCSI Status Code
A SCSI Status Code is used to determine the success or failure of a SCSI command. At the end of any command, the target returns a Status Code byte which should be one of the following:-02h Check condition:...

 byte, such as 00h for success, 02h for an error (called a Check Condition
SCSI check condition
In computer terminology, a Check Condition occurs when a SCSI device needs to report an error.SCSI communication takes place between an initiator and a target. The initiator sends a command to the target which then responds. SCSI commands are sent in a Command Descriptor Block...

), or 08h for busy. When the target returns a Check Condition in response to a command, the initiator usually then issues a SCSI Request Sense command
SCSI Request Sense Command
The SCSI Request Sense command is used to obtain sense data from a target device.The CDB structure is:The response is a set of SCSI sense data which is structured as follows:...

 in order to obtain a key code qualifier (KCQ) from the target. The Check Condition and Request Sense sequence involves a special SCSI protocol called a Contingent Allegiance Condition
SCSI contingent allegiance condition
On a computer SCSI connection, a contingent allegiance condition occurs while a SCSI device reports an error.SCSI communication takes place between an initiator and a target. The initiator sends a command to the target which then responds...

.

There are 4 categories of SCSI commands: N (non-data), W (writing data from initiator to target), R (reading data), and B (bidirectional). There are about 60 different SCSI command
SCSI command
In SCSI computer storage, a command is the basic unit of communication. The SCSI command architecture was originally defined for parallel SCSI buses but has been carried forward with minimal change for use with Fibre Channel, iSCSI and Serial Attached SCSI....

s in total, with the most commonly used being:
  • Test unit ready
    SCSI Test Unit Ready Command
    The SCSI Test Unit Ready command is used to determine if a device is ready to transfer data , i.e. if a disk has spun up, if a tape is loaded and ready etc. The device does not perform a self-test operation. See the Send Diagnostic command....

    : Queries device to see if it is ready for data transfers (disk spun up, media loaded, etc.).
  • Inquiry
    SCSI Inquiry Command
    The SCSI Inquiry command is used to obtain basic information from a target device. The CDB structure is:If the EVPD parameter bit is zero and the Page Code parameter byte is zero then the target will return the standard inquiry data, which is structured as follows:The special fields in the...

    : Returns basic device information.
  • Request sense
    SCSI Request Sense Command
    The SCSI Request Sense command is used to obtain sense data from a target device.The CDB structure is:The response is a set of SCSI sense data which is structured as follows:...

    : Returns any error codes from the previous command that returned an error status.
  • Send diagnostic
    SCSI Send Diagnostic Command
    The SCSI Send Diagnostic command is used to instruct a target device to perform a self-test on a specific LUN. The CDB structure is:The special parameter fields in the CDB have the following meaning:*PF - Page Format:...

     and Receive diagnostic results
    SCSI Receive Diagnostic Results Command
    The SCSI Receive Diagnostic Results command is used to interrogate the results of a self-test. The self-test must have been triggered by a previous Send Diagnostic command which would have defined the self-test required. This is usually associated with one of the available diagnostic pages.The...

    : runs a simple self-test, or a specialised test defined in a diagnostic page
    SCSI diagnostic pages
    SCSI target devices provide a number of SCSI diagnostic pages. These can be used by a Send Diagnostic command to tell a target device to run a specialised self-test. The Receive Diagnostic Results command is used where the results from the self-test operation are non-trivial.Most of the common...

    .
  • Start/Stop unit
    SCSI Start Stop Unit Command
    The SCSI Start/Stop Unit command is used to control the motor in a rotary device such as a SCSI disk-drive. It is also used to load or eject removable media, such as a tape or compact disc...

    : Spins disks up and down, or loads/unloads media (CD, tape, etc.).
  • Read capacity
    SCSI Read Capacity Command
    The SCSI Read Capacity command is used to obtain data capacity information from a target device.The command descriptor block structure is:The special control fields in the CDB have the following meaning:...

    : Returns storage capacity.
  • Format unit
    SCSI Format Unit Command
    The SCSI Format Unit command is used to destructively format a SCSI target device—usually a disk—and prepare the medium to store data. Defect management options may be specified in the CDB. Depending on the device characteristics and capacity, formatting may be a lengthy process...

    : Prepares a storage medium for use. In a disk, a low level format will occur. Some tape drives will erase the tape in response to this command.
  • SCSI Read format capacities: Retrieve the data capacity of the device.
  • Read
    SCSI Read Commands
    - Read :The Read command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs and 8-bit Transfer Length fields. It has been present since the SASI specification...

     (four variants): Reads data from a device.
  • Write
    SCSI Write Commands
    -Write :The Write command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs. The CDB structure is:-Write :...

     (four variants): Writes data to a device.
  • Log sense
    SCSI Log Sense Command
    The SCSI Log Sense command is used to obtain current data from log pages in a SCSI target device. The CDB structure for the Log Sense command is:The special parameter fields in the CDB have the following meaning:...

    : Returns current information from log pages
    SCSI log pages
    SCSI target devices provide a number of SCSI log pages. These can be interrogated by a Log Sense command and in some cases can be set by a Log Select command. The Log Sense and Log Select commands include a 6-bit address field, allowing for 64 possible log pages. There is a standard map of log...

    .
  • Mode sense
    SCSI Mode Sense Command
    The SCSI Mode Sense command is used to obtain current device information from mode pages in a SCSI target device. There are two different versions of the command, a 6 byte version and a 10 byte version.The CDB structure for the Mode Sense command is:...

    : Returns current device parameters from mode pages
    SCSI mode pages
    SCSI target devices provide a number of SCSI mode pages. These can be interrogated by a Mode Sense command and set by a Mode Select command. The Mode Sense and Mode Select commands include a 6-bit address field, allowing for 64 possible mode pages. A description of many of these page codes is...

    .
  • Mode select
    SCSI Mode Select Command
    The SCSI Mode Select command is used to modify device information contained in mode pages in a SCSI target device. There are two different versions of the command, a 6 byte version and a 10 byte version....

    : Sets device parameters in a mode page.


Each device on the SCSI bus is assigned a unique SCSI identification number or ID. Devices may encompass multiple logical units, which are addressed by logical unit number (LUN). Simple devices have just one LUN, more complex devices may have multiple LUNs.

A "direct access" (i.e. disk type) storage device consists of a number of logical blocks, addressed by Logical Block Address (LBA). A typical LBA equates to 512 bytes of storage. The usage of LBAs has evolved over time and so four different command variants are provided for reading and writing data. The Read(6)
SCSI Read Commands
- Read :The Read command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs and 8-bit Transfer Length fields. It has been present since the SASI specification...

 and Write(6)
SCSI Write Commands
-Write :The Write command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs. The CDB structure is:-Write :...

 commands contain a 21-bit LBA address. The Read(10)
SCSI Read Commands
- Read :The Read command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs and 8-bit Transfer Length fields. It has been present since the SASI specification...

, Read(12)
SCSI Read Commands
- Read :The Read command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs and 8-bit Transfer Length fields. It has been present since the SASI specification...

, Read Long
SCSI Read Commands
- Read :The Read command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs and 8-bit Transfer Length fields. It has been present since the SASI specification...

, Write(10)
SCSI Write Commands
-Write :The Write command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs. The CDB structure is:-Write :...

, Write(12)
SCSI Write Commands
-Write :The Write command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs. The CDB structure is:-Write :...

, and Write Long
SCSI Write Commands
-Write :The Write command is only 6 bytes long and is a legacy from early SCSI days. Its use is restricted to 21-bit LBAs. The CDB structure is:-Write :...

 commands all contain a 32-bit LBA address plus various other parameter options.

A "sequential access" (i.e. tape-type) device does not have a specific capacity because it typically depends on the length of the tape, which is not exactly known. Read and write operations on a sequential access device begin at the current tape position, not at a specific LBA. The block size on sequential access devices can either be fixed or variable, depending on the specific device. Tape devices such as half-inch 9-track tape
IBM 9 Track
The IBM System/360, released in 1964, introduced what is now generally known as 9 track tape. As with the earlier IBM 7 track format it replaced, the magnetic tape is ½ inch wide, but has 8 data tracks and one parity track for a total of 9 parallel tracks. Data is stored as 8-bit characters,...

, DDS
Digital Data Storage
Digital Data Storage is a format for storing computer data on a Digital Audio Tape .DDS uses tape with a width of 3.8mm, with the exception of the latest formats, DAT 160 and DAT 320, which are 8mm wide...

 (4 mm tapes physically similar to DAT
Digital Audio Tape
Digital Audio Tape is a signal recording and playback medium developed by Sony and introduced in 1987. In appearance it is similar to a compact audio cassette, using 4 mm magnetic tape enclosed in a protective shell, but is roughly half the size at 73 mm × 54 mm × 10.5 mm. As...

), Exabyte
Exabyte (company)
Exabyte Corp. was a manufacturer of magnetic tape data storage products headquartered in Boulder, Colorado, United States. Exabyte Corp. is now defunct, but company's technology is sold by Tandberg Data under both brand names. Prior to the 2006 demise, Exabyte offered tape storage and automation...

, etc., support variable block sizes.

Device identification

In modern SCSI transport protocols, there is an automated process for "discovery" of the IDs. SSA initiators "walk the loop" to determine what devices are connected and then assigns each one a 7-bit "hop-count" value. Fibre Channel
Fibre Channel
Fibre Channel, or FC, is a gigabit-speed network technology primarily used for storage networking. Fibre Channel is standardized in the T11 Technical Committee of the InterNational Committee for Information Technology Standards , an American National Standards Institute –accredited standards...

 – Arbitrated Loop (FC-AL) initiators use the LIP (Loop Initialization Protocol) to interrogate each device port for its WWN (World Wide Name
World Wide Name
A World Wide Name or World Wide Identifier is a unique identifier which identifies a particular Fibre Channel, Advanced Technology Attachment or Serial Attached SCSI target...

). For iSCSI, because of the unlimited scope of the (IP) network, the process is quite complicated. These discovery processes occur at power-on/initialization time and also if the bus topology changes later, for example if an extra device is added.

On a parallel SCSI bus, a device (e.g. host adapter, disk drive) is identified by a "SCSI ID", which is a number in the range 0–7 on a narrow bus and in the range 0–15 on a wide bus. On earlier models a physical jumper or switch controls the SCSI ID of the initiator (host adapter
Host adapter
In computer hardware, a host controller, host adapter, or host bus adapter connects a host system to other network and storage devices...

). On modern host adapters (since about 1997), doing I/O to the adapter sets the SCSI ID; for example, the adapter often contains a BIOS program that runs when the computer boots up and that program has menus that let the operator choose the SCSI ID of the host adapter. Alternatively, the host adapter may come with software that must be installed on the host computer to configure the SCSI ID. The traditional SCSI ID for a host adapter is 7, as that ID has the highest priority during bus arbitration (even on a 16 bit bus).

The SCSI ID of a device in a drive enclosure that has a backplane is set either by jumpers or by the slot in the enclosure the device is installed into, depending on the model of the enclosure. In the latter case, each slot on the enclosure's back plane delivers control signals to the drive to select a unique SCSI ID. A SCSI enclosure without a back plane often has a switch for each drive to choose the drive's SCSI ID. The enclosure is packaged with connectors that must be plugged into the drive where the jumpers are typically located; the switch emulates the necessary jumpers. While there is no standard that makes this work, drive designers typically set up their jumper headers in a consistent format that matches the way that these switches implement.

Note that a SCSI target device (which can be called a "physical unit") is often divided into smaller "logical units." For example, a high-end disk subsystem may be a single SCSI device but contain dozens of individual disk drives, each of which is a logical unit (more commonly, it is not that simple—virtual disk devices are generated by the subsystem based on the storage in those physical drives, and each virtual disk device is a logical unit). The SCSI ID, WWN, etc. in this case identifies the whole subsystem, and a second number, the logical unit number (LUN) identifies a disk device within the subsystem.

It is quite common, though incorrect, to refer to the logical unit itself as a "LUN." Accordingly, the actual LUN may be called a "LUN number" or "LUN id".

Setting the bootable (or first) hard disk to SCSI ID 0 is an accepted IT community recommendation. SCSI ID 2 is usually set aside for the floppy disk drive while SCSI ID 3 is typically for a CD-ROM drive.

SCSI enclosure services

In larger SCSI servers, the disk-drive devices are housed in an intelligent enclosure that supports SCSI Enclosure Services (SES)
SCSI Enclosure Services
Most recent SCSI enclosure products support a protocol called SCSI Enclosure Services . The initiator can communicate with the enclosure using a specialised set of SCSI commands to access power, cooling, and other non-data characteristics.-SES devices:...

. The initiator can communicate with the enclosure using a specialized set of SCSI commands to access power, cooling, and other non-data characteristics.

See also

  • List of device bandwidths
  • Parallel SCSI
    Parallel SCSI
    Parallel SCSI is one of the interface implementations in the SCSI family. In addition to being a data bus, SPI is a parallel electrical bus: There is one set of electrical connections stretching from one end of the SCSI bus to the other. A SCSI device attaches to the bus but does not interrupt it...

  • Serial attached SCSI
    Serial Attached SCSI
    Serial Attached SCSI is a computer bus used to move data to and from computer storage devices such as hard drives and tape drives. SAS depends on a point-to-point serial protocol that replaces the parallel SCSI bus technology that first appeared in the mid 1980s in data centers and workstations,...

  • Fibre Channel
    Fibre Channel
    Fibre Channel, or FC, is a gigabit-speed network technology primarily used for storage networking. Fibre Channel is standardized in the T11 Technical Committee of the InterNational Committee for Information Technology Standards , an American National Standards Institute –accredited standards...


External links


The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK