bus standards notes
TRANSCRIPT
-
8/8/2019 Bus Standards Notes
1/34
2.1 Industry Standard Architecture
Industry Standard Architecture (in practice almost always shortened to ISA) was a computer
bus standard forIBM compatiblecomputers.
------------------------------------------------------------------------------------------------------------
Five 16-bitand one 8-bitISA slots on a motherboard
Year Created: 1981
Created By: IBM
Superseded By: PCI (1993)
Width: 8 or 16bits
Number of Devices: 1 per slot
Speed: 8 MHz
Style: Parallel
Hotplugging? No
External? No
------------------------------------------------------------------------------------------------------------
History
ISA originated as an 8-bit system in the IBM PC in1981, and was extended in 1983 as the XT
bus architecture. The newer 16-bit standard was introduced in 1984. Designed to connect
peripheral cards to the motherboard, the protocol also allows forbus mastering although only thefirst 16 MB of main memory is available for direct access. The 8-bit bus ran at 4.77 MHz, while
the 16-bit bus operated at 8 MHz. In reference to the XT bus, it is sometimes referred to as the
AT bus architecture. It was also available on some non-IBM compatible machines such as theshort-lived AT&THobbit and laterPowerPC based BeBox.
In 1987, IBM moved to replace the ISA bus with their proprietary Micro Channel Architecture
(MCA) in an effort to regain control of the PC architecture, and the PC market. The system was
far more advanced than ISA, and computer manufacturers responded with the Extended IndustryStandard Architecture (EISA) and later, the VESA Local Bus (VLB). In fact, VLB used some
parts originally intended for MCA due to the fact that component manufacturers already had the
ability to manufacture it. Both were compatible expansions of the ISA standard.
Users of ISA-based machines had to know special information about the hardware they wereadding to the system. While a handful of devices were essentially "plug-n-play," this was rare.
Users frequently had to configure two or three things when adding a new device, such as theIRQ
line, I/O address, or DMA channel. MCA had done away with this complication, and PCI
http://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/IBM_compatiblehttp://en.wikipedia.org/wiki/IBM_compatiblehttp://en.wikipedia.org/wiki/16-bithttp://en.wikipedia.org/wiki/8-bithttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Parallel_communicationshttp://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/1981http://en.wikipedia.org/wiki/1981http://en.wikipedia.org/wiki/1983http://en.wikipedia.org/wiki/1984http://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Bus_masteringhttp://en.wikipedia.org/wiki/Megabytehttp://en.wikipedia.org/wiki/AT%26Thttp://en.wikipedia.org/wiki/AT%26T_Hobbithttp://en.wikipedia.org/wiki/PowerPChttp://en.wikipedia.org/wiki/BeBoxhttp://en.wikipedia.org/wiki/1987http://en.wikipedia.org/wiki/Micro_Channel_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/Plug-n-playhttp://en.wikipedia.org/wiki/Plug-n-playhttp://en.wikipedia.org/wiki/IRQhttp://en.wikipedia.org/wiki/IRQhttp://en.wikipedia.org/wiki/I/O_addresshttp://en.wikipedia.org/wiki/Direct_memory_accesshttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Image:Isa1.jpghttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/IBM_compatiblehttp://en.wikipedia.org/wiki/16-bithttp://en.wikipedia.org/wiki/8-bithttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/IBMhttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Parallel_communicationshttp://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/1981http://en.wikipedia.org/wiki/1983http://en.wikipedia.org/wiki/1984http://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Bus_masteringhttp://en.wikipedia.org/wiki/Megabytehttp://en.wikipedia.org/wiki/AT%26Thttp://en.wikipedia.org/wiki/AT%26T_Hobbithttp://en.wikipedia.org/wiki/PowerPChttp://en.wikipedia.org/wiki/BeBoxhttp://en.wikipedia.org/wiki/1987http://en.wikipedia.org/wiki/Micro_Channel_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/Plug-n-playhttp://en.wikipedia.org/wiki/IRQhttp://en.wikipedia.org/wiki/I/O_addresshttp://en.wikipedia.org/wiki/Direct_memory_accesshttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnect -
8/8/2019 Bus Standards Notes
2/34
actually incorporated many of the ideas first explored with MCA (though it was more directly
descended from EISA).
This trouble with configuration eventually led to the creation ofISA PnP, a plug-n-play systemthat used a combination of modifications to hardware, the system BIOS, and operating system
software to automatically manage the nitty-gritty details. In reality, ISA PnP turned out to be amajor headache much of the time, and didn't become well-supported until the architecture was in
its final days. This was a major contributor to the use of the phrase "plug-n-pray".
PCI slots were the first physically-incompatible expansion ports to directly squeeze ISA off of
the motherboard. At first, motherboards were largely ISA, including a few PCI slots. By the mid-
1990s, the two slot types were roughly balanced, and ISA slots soon were in the minority on
consumer systems. Microsoft's PC 97 specification recommended that ISA slots be removedentirely, though the system architecture still required ISA to be present in some vestigial way
internally to handle the floppy drive, serial ports, etc. ISA slots remained for a few more years,
and it was even possible to see systems with an Accelerated Graphics Port (AGP) sitting near the
central processing unit, an array of PCI slots, and one or two ISA slots near the end.
It is also notable that PCI slots are "rotated" compared to their ISA counterpartsPCI cards
were essentially inserted "upside-down," allowing ISA and PCI connectors to squeeze together
on the motherboard. Only one of the two connectors can be used in each slot at a time, but thisallowed for greater flexibility.
8-bit ISA (XT bus architecture)
The XT bus architecture is an eight-bit ISA bus used by Intel8086 and Intel 8088 systems in
the IBM PC andIBM PC XT in the 1980s.
An 8-bit ISA (XT-bus) mouse adapter
The XT bus has fourDMA channels, of which three are brought out to the expansion slots. Of
these three, two are normally allocated to machine functions:
DMA channel Expansion Standard function
http://en.wikipedia.org/wiki/Plug-n-playhttp://en.wikipedia.org/wiki/BIOShttp://en.wikipedia.org/wiki/BIOShttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/1990shttp://en.wikipedia.org/wiki/Microsofthttp://en.wikipedia.org/wiki/Microsofthttp://en.wikipedia.org/wiki/PC_97http://en.wikipedia.org/wiki/PC_97http://en.wikipedia.org/wiki/Floppy_drivehttp://en.wikipedia.org/wiki/Serial_porthttp://en.wikipedia.org/wiki/Accelerated_Graphics_Porthttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Intel_8086http://en.wikipedia.org/wiki/Intel_8088http://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/IBM_PC_XThttp://en.wikipedia.org/wiki/IBM_PC_XThttp://en.wikipedia.org/wiki/1980shttp://en.wikipedia.org/wiki/Direct_memory_accesshttp://en.wikipedia.org/wiki/Image:ISA_mouse_adapter.JPGhttp://en.wikipedia.org/wiki/Plug-n-playhttp://en.wikipedia.org/wiki/BIOShttp://en.wikipedia.org/wiki/Operating_systemhttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/1990shttp://en.wikipedia.org/wiki/Microsofthttp://en.wikipedia.org/wiki/PC_97http://en.wikipedia.org/wiki/Floppy_drivehttp://en.wikipedia.org/wiki/Serial_porthttp://en.wikipedia.org/wiki/Accelerated_Graphics_Porthttp://en.wikipedia.org/wiki/Central_processing_unithttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Intel_8086http://en.wikipedia.org/wiki/Intel_8088http://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/IBM_PC_XThttp://en.wikipedia.org/wiki/1980shttp://en.wikipedia.org/wiki/Direct_memory_access -
8/8/2019 Bus Standards Notes
3/34
0 No Dynamic RAM refresh
1 Yes Add-on cards
2 Yes Floppy diskcontroller
3 Yes Hard diskcontroller
16-bit ISA (AT bus architecture)
The AT bus architecture is an 16-bit version of the ISA bus first in the IBM PC/AT.
Technical data
8 bit ISA or XT bus architecture
Bus width 8-bit
Compatible with 8 bit ISA
Pins 62
Vcc +5 V, -5 V, +12 V, -12 V
Clock 4.7727266 MHz
http://en.wikipedia.org/wiki/Random_access_memoryhttp://en.wikipedia.org/wiki/Floppy_diskhttp://en.wikipedia.org/wiki/Hard_diskhttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/IBM_PC/AThttp://en.wikipedia.org/wiki/8-bithttp://en.wikipedia.org/wiki/Pinhttp://en.wikipedia.org/wiki/Image:XT_Bus_pins.pnghttp://en.wikipedia.org/wiki/Random_access_memoryhttp://en.wikipedia.org/wiki/Floppy_diskhttp://en.wikipedia.org/wiki/Hard_diskhttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/IBM_PC/AThttp://en.wikipedia.org/wiki/8-bithttp://en.wikipedia.org/wiki/Pin -
8/8/2019 Bus Standards Notes
4/34
16 bit ISA
Bus width 16-bitCompatible with 8 bit ISA, 16 bit ISA
Pins 98
Vcc +5 V, -5 V, +12 V, -12 VClock 8.333333 MHz
Current use
Apart from specialized industrial use, ISA is all but gone today. Even where present, systemmanufacturers often shield customers from the term "ISA bus", referring to it instead as the
"legacy bus" (seelegacy system). The PC/104 bus, used in industrial and embedded applications,
is a derivative of the ISA bus, utilizing the same signal lines with different connectors. The LPC
http://en.wikipedia.org/wiki/16-bithttp://en.wikipedia.org/wiki/Pinhttp://en.wikipedia.org/wiki/Legacy_systemhttp://en.wikipedia.org/wiki/Legacy_systemhttp://en.wikipedia.org/wiki/PC/104http://en.wikipedia.org/wiki/LPC_bushttp://en.wikipedia.org/wiki/Image:ISA_Bus_pins.pnghttp://en.wikipedia.org/wiki/16-bithttp://en.wikipedia.org/wiki/Pinhttp://en.wikipedia.org/wiki/Legacy_systemhttp://en.wikipedia.org/wiki/PC/104http://en.wikipedia.org/wiki/LPC_bus -
8/8/2019 Bus Standards Notes
5/34
bus has replaced the ISA bus as the connection to the legacy I/O devices on recent motherboards;
while physically quite different, LPC looks just like ISA to software, so that the peculiarities of
ISA such as the 16MB DMA limit are likely to stick around for a while.
2.2 Peripheral Component Interconnect
The Peripheral Component Interconnect, or PCI Standard (in practice almost always
shortened to PCI) specifies a computer bus for attaching peripheral devices to a computermotherboard. These devices can take any one of the following forms:
An integrated circuit fitted onto the motherboard itself, called a planar device in the PCI
specification.
An expansion card that fits in sockets.
The PCI bus is common in modern PCs, where it has displacedISA and VESA Local Bus as thestandard expansion bus, but it also appears in many other computer types. The bus will
eventually be succeeded by PCI Express, which is standard in most new computers, and other
technologies.
------------------------------------------------------------------------------------------------------------
five32-bit5-volt PCI expansion slots on a motherboard
Year Created: Mid-1993
Created By: Intel
Superseded By: PCI Express (2004)
Width: 32bits
Number of Devices: 1 per slot
Speed: 133 MB/s
Style: Parallel
Hotplugging? No
External? No
http://en.wikipedia.org/wiki/LPC_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_peripheralhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Expansion_cardhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Industry_standard_architecturehttp://en.wikipedia.org/wiki/Industry_standard_architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/32-bithttp://en.wikipedia.org/wiki/32-bithttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Parallel_communicationshttp://en.wikipedia.org/wiki/Image:Pci-slots.jpghttp://en.wikipedia.org/wiki/LPC_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_peripheralhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Integrated_circuithttp://en.wikipedia.org/wiki/Expansion_cardhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Industry_standard_architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/32-bithttp://en.wikipedia.org/wiki/Motherboardhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Parallel_communications -
8/8/2019 Bus Standards Notes
6/34
------------------------------------------------------------------------------------------------------------
64-bitPCI expansion slots inside aPower Macintosh G4
The PCI specification covers the physical size of the bus (including wire spacing), electricalcharacteristics, bus timing, and protocols. The specification can be purchased from the PCI
Special Interest Group (PCISIG).
History
Work on PCI began at Intel's Architecture Lab circa 1990. PCI 1.0, which was merely acomponent-level specification, was released on June 22, 1992. PCI 2.0, which was the first to
establish standards for the connector and motherboard slot, was released on April 30,1993. PCI
2.1 was released on June 1, 1995.
http://en.wikipedia.org/wiki/64-bithttp://en.wikipedia.org/wiki/Power_Macintosh_G4http://en.wikipedia.org/wiki/PCI-SIGhttp://en.wikipedia.org/wiki/PCI-SIGhttp://en.wikipedia.org/wiki/PCI-SIGhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Intel_Architecture_Labshttp://en.wikipedia.org/wiki/1990http://en.wikipedia.org/wiki/June_22http://en.wikipedia.org/wiki/1992http://en.wikipedia.org/wiki/April_30http://en.wikipedia.org/wiki/April_30http://en.wikipedia.org/wiki/1993http://en.wikipedia.org/wiki/June_1http://en.wikipedia.org/wiki/1995http://en.wikipedia.org/wiki/Image:64bitpci.jpghttp://en.wikipedia.org/wiki/Image:Pci-slots.jpghttp://en.wikipedia.org/wiki/64-bithttp://en.wikipedia.org/wiki/Power_Macintosh_G4http://en.wikipedia.org/wiki/PCI-SIGhttp://en.wikipedia.org/wiki/PCI-SIGhttp://en.wikipedia.org/wiki/Intelhttp://en.wikipedia.org/wiki/Intel_Architecture_Labshttp://en.wikipedia.org/wiki/1990http://en.wikipedia.org/wiki/June_22http://en.wikipedia.org/wiki/1992http://en.wikipedia.org/wiki/April_30http://en.wikipedia.org/wiki/1993http://en.wikipedia.org/wiki/June_1http://en.wikipedia.org/wiki/1995 -
8/8/2019 Bus Standards Notes
7/34
PCI was immediately put to use in servers, replacing MCA and EISA as the server expansion bus
of choice. In mainstream PCs, PCI was slower to replace VESA Local Bus (VLB), and did not
gain significant market penetration until late 1994 in second-generation Pentium PCs. By 1996VLB was all but extinct, and manufacturers had adopted PCI even for 486 computers. EISA
continued to be used alongside PCI through 2000. Apple Computeradopted PCI for professional
Power Macintosh computers (replacing NuBus) in mid-1995, and the consumer Performaproduct line (replacing LC PDS) in mid-1996.
Later revisions of PCI added new features and performance improvements, including a 66 MHz
3.3 V standard and 133 MHz PCI-X, and the adaptation of PCI signaling to other form factors.
Both PCI-X 1.0b and PCI-X 2.0 are backward compatible with PCI standards. With theintroduction of the serial PCI Express standard in 2004, motherboard manufacturers have
included progressively fewer PCI expansion slots in favor of the new standard. Although it is
still common to see both interfaces implemented side-by-side, traditional PCI is likely to slowlydie out in coming years.
The system firmware examines each device's PCI Configuration Spaceand allocates resources.Each device can request up to six areas of memory space orI/Oport space.
They can also have an optional ROMthat can contain executable x86 orPA-RISC code, Open
Firmware or an EFI driver.
In a typical system, the operating system queries all PCI buses at startup time to find out what
devices are present and what system resources (memory, interrupt lines, etc.) each needs. It then
allocates the resources and tells each device what its allocation is.
The PCI configuration space also contains a small amount of device type information, which
helps an operating system choose device drivers for it, or at least to have a dialogue with a userabout the system configuration. Part of this information is a human readable text description of
the device.
Interrupts
Devices are required to follow a protocol so that the interrupt lines can be shared. The PCI busincludes four interrupt lines, all of which are available to each device. However, they are not
wired in parallel as are the other traces. The positions of the interrupt lines rotate between slots,
so what appears to one device as the INTA# line is INTB# to the next and INTC# to the next.Single-function devices always use their INTA# for interrupt signalling, so the device load is
spread fairly evenly across the four available interrupt lines. This alleviates a common problemwith sharing interrupts.
PCI bridges (between two PCI buses) map the four interrupt traces on each of their sides invarying ways. Some bridges use a fixed mapping, and in others it is configurable. In the general
case, software cannot determine which interrupt line a device's INTA# pin is connected to across
a bridge. The mapping of PCI interrupt lines onto system interrupt lines, through the PCI host bridge, is similarly implementation-dependent. The result is that it can be impossible to
http://en.wikipedia.org/wiki/Micro_Channel_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/1994http://en.wikipedia.org/wiki/1996http://en.wikipedia.org/wiki/Intel_80486http://en.wikipedia.org/wiki/2000http://en.wikipedia.org/wiki/Apple_Computerhttp://en.wikipedia.org/wiki/Power_Macintoshhttp://en.wikipedia.org/wiki/NuBushttp://en.wikipedia.org/wiki/1995http://en.wikipedia.org/wiki/1995http://en.wikipedia.org/wiki/Macintosh_Performahttp://en.wikipedia.org/wiki/Processor_Direct_Slothttp://en.wikipedia.org/wiki/1996http://en.wikipedia.org/wiki/MegaHertzhttp://en.wikipedia.org/wiki/MegaHertzhttp://en.wikipedia.org/wiki/Volthttp://en.wikipedia.org/wiki/PCI-Xhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/2004http://en.wikipedia.org/wiki/2004http://en.wikipedia.org/wiki/Firmwarehttp://en.wikipedia.org/wiki/PCI_Configuration_Spacehttp://en.wikipedia.org/wiki/PCI_Configuration_Spacehttp://en.wikipedia.org/wiki/PCI_Configuration_Spacehttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Read-only_memoryhttp://en.wikipedia.org/wiki/Read-only_memoryhttp://en.wikipedia.org/wiki/X86http://en.wikipedia.org/wiki/PA-RISC_familyhttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Extensible_Firmware_Interfacehttp://en.wikipedia.org/wiki/Interrupthttp://en.wikipedia.org/wiki/Micro_Channel_Architecturehttp://en.wikipedia.org/wiki/Extended_Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/VESA_Local_Bushttp://en.wikipedia.org/wiki/1994http://en.wikipedia.org/wiki/1996http://en.wikipedia.org/wiki/Intel_80486http://en.wikipedia.org/wiki/2000http://en.wikipedia.org/wiki/Apple_Computerhttp://en.wikipedia.org/wiki/Power_Macintoshhttp://en.wikipedia.org/wiki/NuBushttp://en.wikipedia.org/wiki/1995http://en.wikipedia.org/wiki/Macintosh_Performahttp://en.wikipedia.org/wiki/Processor_Direct_Slothttp://en.wikipedia.org/wiki/1996http://en.wikipedia.org/wiki/MegaHertzhttp://en.wikipedia.org/wiki/Volthttp://en.wikipedia.org/wiki/PCI-Xhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/2004http://en.wikipedia.org/wiki/Firmwarehttp://en.wikipedia.org/wiki/PCI_Configuration_Spacehttp://en.wikipedia.org/wiki/Input/outputhttp://en.wikipedia.org/wiki/Read-only_memoryhttp://en.wikipedia.org/wiki/X86http://en.wikipedia.org/wiki/PA-RISC_familyhttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Open_Firmwarehttp://en.wikipedia.org/wiki/Extensible_Firmware_Interfacehttp://en.wikipedia.org/wiki/Interrupt -
8/8/2019 Bus Standards Notes
8/34
determine how a PCI device's interrupts will appear to software. Platform-specific BIOS code is
meant to know this, and set a field in each device's configuration space indicating which IRQ it is
connected to, but this process is not reliable.
PCI interrupt lines are level-triggered. This was chosen overedge-triggeringin order to gain an
efficiency advantage when servicing a shared interrupt line in a particular way. However, thisefficiency gain comes at the cost of robustness and flexibility. One interrupting device can easily
block all other devices on the same interrupt line. (See "level-triggered interrupt" forexplanation.)
Later revisions of the PCI specification add support for message-signalled interrupts. In this
system a device signals its need for service by perfoming a memory write, rather than by
asserting a dedicated line. This alleviates the problem of scarcity of interrupt lines. Even ifinterrupt vectors are still shared, it does not suffer the sharing problems of level-triggered
interrupts. It also resolves the routing problem, because the memory write is not unpredictably
modified between device and host. Finally, because the message signalling is in-band, it resolves
some synchronisation problems that can occur with posted writes and out-of-band interrupt lines.
PCI Express does not have physical interrupt lines at all. It uses message-signalled interrupts
exclusively.
Conventional hardware specifications
A typical 32-bit PCI card, in this case a SCSIadapter fromAdaptec
http://en.wikipedia.org/wiki/Interrupt#Level-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Edge-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Edge-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Level-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Message-signalledhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/SCSIhttp://en.wikipedia.org/wiki/SCSIhttp://en.wikipedia.org/wiki/Adaptechttp://en.wikipedia.org/wiki/Image:Intelpromtserverpcixadapter1000mta342.jpghttp://en.wikipedia.org/wiki/Image:32-bit_PCI_card.JPGhttp://en.wikipedia.org/wiki/Interrupt#Level-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Edge-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Level-triggeredhttp://en.wikipedia.org/wiki/Interrupt#Message-signalledhttp://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/SCSIhttp://en.wikipedia.org/wiki/Adaptec -
8/8/2019 Bus Standards Notes
9/34
A PCI-XGigabit Ethernetexpansion card
33.33 MHz clockwith synchronous transfers
peak transfer rate of 133 MB per second for 32-bit bus width (33.33 MHz 32 bits (1 byte 8 bits) = 133MB/s)
32-bit or64-bitbus width 32-bit address space (4 gigabytes)
32-bit port space (now deprecated) 256-byte configuration space
3.3 or 5-volt signaling
reflected-wave switching
Variants
Conventional
PCI 2.2 allows for 66 MHz signaling (requires 3.3 volt signaling) (peak transfer rate of266 MB/s)
PCI 2.3 permits use of 3.3 volt and universal keying, but does not allow 5 volt keyed addin cards.
PCI 3.0 is the final official standard of the bus, completely removing 5-volt capability.
PCI-X doubles the width to 64-bit, revises the protocol, and increases the maximum datarate to 133 MHz (peak transfer rate of 1014 MB/s)
PCI-X 2.0 permits a 266 MHz rate (peak transfer rate of 2035 MB/s) and also 533 MHz
rate, expands the configuration space to 4096 bytes, adds a 16-bit bus variant and allows
for 1.5 volt signaling Mini PCI is a new form factor of PCI 2.2 for use mainly inside laptops
Cardbus is a PCMCIA form factor for 32-bit, 33 MHz PCI Compact PCI, uses Eurocard-sized modules plugged into a PCIbackplane.
PC/104-Plus is an industrial bus that uses the PCI signal lines with different connectors.
Other
PCI Express, or PCIe, (formerly 3GIO/Arapaho), a new interface using PCI programming
concepts, with a serial physical-layer protocol and different connectors. PCI Express isexpected to replace the PCI (and PCI-derived AGP) buses. PCIe slots are not backwards
compatible with PCI or PCI-X expansion cards.
Card's physical size
A full-size PCI card has a height of 107 mm (4.2 inches) and a depth of 312 mm (12.283 inches).
The height includes the edge card connector.
In addition to these dimensions the physical size and location of a card's backplate are alsostandardized. The backplate is the part that fastens to the card cage to stabilize the card and also
http://en.wikipedia.org/wiki/Gigabit_Ethernethttp://en.wikipedia.org/wiki/Clock_signalhttp://en.wikipedia.org/wiki/Synchronoushttp://en.wikipedia.org/wiki/Megabytehttp://en.wikipedia.org/wiki/MBhttp://en.wikipedia.org/wiki/MBhttp://en.wikipedia.org/wiki/32-bithttp://en.wikipedia.org/wiki/64-bithttp://en.wikipedia.org/wiki/64-bithttp://en.wikipedia.org/wiki/Gigabytehttp://en.wikipedia.org/wiki/Deprecatedhttp://en.wikipedia.org/wiki/Bytehttp://en.wikipedia.org/wiki/Reflected-wave_switchinghttp://en.wikipedia.org/wiki/PCI-Xhttp://en.wikipedia.org/wiki/Mini_PCIhttp://en.wikipedia.org/wiki/Cardbushttp://en.wikipedia.org/wiki/Compact_PCIhttp://en.wikipedia.org/wiki/Eurocardhttp://en.wikipedia.org/wiki/Backplanehttp://en.wikipedia.org/wiki/PC104http://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/Accelerated_Graphics_Porthttp://en.wikipedia.org/wiki/Gigabit_Ethernethttp://en.wikipedia.org/wiki/Clock_signalhttp://en.wikipedia.org/wiki/Synchronoushttp://en.wikipedia.org/wiki/Megabytehttp://en.wikipedia.org/wiki/MBhttp://en.wikipedia.org/wiki/32-bithttp://en.wikipedia.org/wiki/64-bithttp://en.wikipedia.org/wiki/Gigabytehttp://en.wikipedia.org/wiki/Deprecatedhttp://en.wikipedia.org/wiki/Bytehttp://en.wikipedia.org/wiki/Reflected-wave_switchinghttp://en.wikipedia.org/wiki/PCI-Xhttp://en.wikipedia.org/wiki/Mini_PCIhttp://en.wikipedia.org/wiki/Cardbushttp://en.wikipedia.org/wiki/Compact_PCIhttp://en.wikipedia.org/wiki/Eurocardhttp://en.wikipedia.org/wiki/Backplanehttp://en.wikipedia.org/wiki/PC104http://en.wikipedia.org/wiki/PCI_Expresshttp://en.wikipedia.org/wiki/Accelerated_Graphics_Port -
8/8/2019 Bus Standards Notes
10/34
contains external connectors, so is usually attaches in a window so it is accessible from outside
the computer case.
A PCI card can be any smaller size, but the backplate must still be full-size and properly locatedso that the card fits in any standard PCI slot.
Many computers have slots for PCI cards but do not have the space for full-size PCI cards. In
some computers, some slots accommodate full-size PCI cards, while others do not because some
part of the computer interferes.
"Half-height" and "half-length" cards and slots are common, and presumably have dimensionshalf those of the full-size cards. Other cards with reduced height are called "low profile" or
"slim."
There is at least one reduced size variation on the backplate and there are very compact card
cages that require that variation. It is not common.
Half-length extension card
Width 0.6 inches (15.24 mm), Depth 6.9 inches (175.26 mm), Height 4.2 inches
(106.68 mm)
2.3 SCSI
SCSI stands for "Small Computer System Interface", and is a standard interface andcommand
set for transferring data between devices on both internal and external computer buses. It ispronounced "scuzzy", most likely because SCSI was formerly known as SASI, the "Shugart
AssociatesSystem Interface" introduced by the company of the same name in 1979, and henceused to be spelled SC/ASI at some point in history. The "small" part is historical; since the mid-
1990s, SCSI has been used on even the largest of computer systems.
SCSI is most commonly used forhard disks and tape storage devices, but also connects a wide
range of other devices, includingscanners, printers, CD-ROM drives, CD recorders, and DVDdrives. In fact, the entire SCSI standard promotes device independence, which means that
theoretically SCSI can be used with any type of computer hardware.
Since its standardization in 1986, SCSI has been commonly used in the Apple MacintoshandSun Microsystems computer lines. SCSI has never been popular in the low priced IBM PC
world, owing to the lower cost and adequate performance of its ATA hard disk standard.
However, SCSI drives and even SCSI RAIDs, are more common in PC workstationsfor video
and/or audio production.
At this time, SCSI is popular on high-performance workstations and servers. RAIDs on servers
almost always use SCSI hard disks. Desktop computers and notebooks more typically use the
http://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/Datahttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Shugart_Associateshttp://en.wikipedia.org/wiki/Shugart_Associateshttp://en.wikipedia.org/wiki/Shugart_Associateshttp://en.wikipedia.org/wiki/Hard_diskhttp://en.wikipedia.org/wiki/Tape_storagehttp://en.wikipedia.org/wiki/Image_scannerhttp://en.wikipedia.org/wiki/Image_scannerhttp://en.wikipedia.org/wiki/Computer_printerhttp://en.wikipedia.org/wiki/CD-ROMhttp://en.wikipedia.org/wiki/CD_recorderhttp://en.wikipedia.org/wiki/CD_recorderhttp://en.wikipedia.org/wiki/DVDhttp://en.wikipedia.org/wiki/1986http://en.wikipedia.org/wiki/1986http://en.wikipedia.org/wiki/Apple_Macintoshhttp://en.wikipedia.org/wiki/Apple_Macintoshhttp://en.wikipedia.org/wiki/Sun_Microsystemshttp://en.wikipedia.org/wiki/Sun_Microsystemshttp://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/Advanced_Technology_Attachmenthttp://en.wikipedia.org/wiki/Redundant_Array_of_Independent_Diskshttp://en.wikipedia.org/wiki/Redundant_Array_of_Independent_Diskshttp://en.wikipedia.org/wiki/Workstationhttp://en.wikipedia.org/wiki/Workstationhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Laptophttp://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/Datahttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Shugart_Associateshttp://en.wikipedia.org/wiki/Shugart_Associateshttp://en.wikipedia.org/wiki/Hard_diskhttp://en.wikipedia.org/wiki/Tape_storagehttp://en.wikipedia.org/wiki/Image_scannerhttp://en.wikipedia.org/wiki/Computer_printerhttp://en.wikipedia.org/wiki/CD-ROMhttp://en.wikipedia.org/wiki/CD_recorderhttp://en.wikipedia.org/wiki/DVDhttp://en.wikipedia.org/wiki/1986http://en.wikipedia.org/wiki/Apple_Macintoshhttp://en.wikipedia.org/wiki/Sun_Microsystemshttp://en.wikipedia.org/wiki/IBM_PChttp://en.wikipedia.org/wiki/Advanced_Technology_Attachmenthttp://en.wikipedia.org/wiki/Redundant_Array_of_Independent_Diskshttp://en.wikipedia.org/wiki/Workstationhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Laptop -
8/8/2019 Bus Standards Notes
11/34
ATA/IDE or the newerSerial ATA interfaces for hard disks, and USB and FireWire connections
for external devices.
Sun Microsystems External SCSI Enclosures
Old Macintosh SCSI port
SCSI Terminator (Centronics connector)
Standards
Parallel SCSI is not a single standard, but a suite of closely related standards which,unfortunately, have confusing names. There are a dozen SCSI interface names, most withambiguous wording (like Fast SCSI, Fast Wide SCSI, Ultra SCSI, and Ultra Wide SCSI); three
SCSI standards, each of which has a collection of modular, optional features; several different
connector types; and three different types of voltage signalling. The leading SCSI cardmanufacturer, Adaptec, has manufactured over 100 varieties of SCSI cards over the years. In
actual practice, many experienced technicians simply refer to SCSI devices by their bus
bandwidth (i.e. SCSI 320 or SCSI 160) in Megabytes per second.
SCSI has evolved since its introduction. Before summarizing the evolution, a distinction shouldbe made between the terminology used in the SCSI standard itself, as promulgated by the T10
committee of INCITS, and common parlance, as codified by the SCSI trade association,SCSITA.
As of 2003, there have only been three SCSI standards: SCSI-1, SCSI-2, and SCSI-3. All SCSIstandards have been modular, defining various capabilities which manufacturers can include or
not. Individual vendors and SCSITAhave given names to specific combinations of capabilities.
For example, the term "Ultra SCSI" is not defined anywhere in the standard, but is used to referto SCSI implementations that signal at twice the rate of "Fast SCSI." Such a signalling rate is not
http://en.wikipedia.org/wiki/Integrated_Drive_Electronicshttp://en.wikipedia.org/wiki/Serial_ATAhttp://en.wikipedia.org/wiki/Universal_Serial_Bushttp://en.wikipedia.org/wiki/FireWirehttp://en.wikipedia.org/wiki/Adaptechttp://en.wikipedia.org/wiki/INCITShttp://en.wikipedia.org/w/index.php?title=SCSITA&action=edithttp://en.wikipedia.org/wiki/As_of_2003http://www.scsita.org/http://www.scsita.org/http://en.wikipedia.org/wiki/Image:SCSC-term.jpghttp://en.wikipedia.org/wiki/Image:SCSI_Mac.jpghttp://en.wikipedia.org/wiki/Image:Sun_Microsystems_External_SCSI_Enclosures.jpghttp://en.wikipedia.org/wiki/Integrated_Drive_Electronicshttp://en.wikipedia.org/wiki/Serial_ATAhttp://en.wikipedia.org/wiki/Universal_Serial_Bushttp://en.wikipedia.org/wiki/FireWirehttp://en.wikipedia.org/wiki/Adaptechttp://en.wikipedia.org/wiki/INCITShttp://en.wikipedia.org/w/index.php?title=SCSITA&action=edithttp://en.wikipedia.org/wiki/As_of_2003http://www.scsita.org/ -
8/8/2019 Bus Standards Notes
12/34
compliant with SCSI-2 but is one option allowed by SCSI-3. Similarly, no version of the
standard requires low-voltage-differential (LVD) signalling, but products called Ultra-2 SCSI
include this capability. This terminology is helpful to consumers, because "Ultra-2 SCSI" devicehas a better-defined set of capabilities than simply identifying it as "SCSI-3."
Starting with SCSI-3, the SCSI standard has been maintained as a loose collection of standards,each defining a certain piece of the SCSI architecture, and bound together by the SCSI
Architectural Model. This change divorces SCSI's various interfaces from the command set,allowing devices that support SCSI commands to use any interface (including ones not otherwise
specified by T10), and also allowing the interfaces that are defined by T10 to develop on their
own terms. This change is also why there is no "SCSI-4".
No version of the standard has ever specified what kind of connector should be used. See"Connectors," below.
The mainstream implementations of SCSI (in chronological order) are as follows, using common
parlance:
SCSI interface overview
InterfaceBus
Width
Clock
SpeedMax Throughput Max Cable Length
Max Devices
(not including
HBA)
SCSI 8-bit 5 MHz 5 MB/s 6 m 7
Fast SCSI 8-bit 10 MHz 10 MB/s 1.5-3 m 7
Fast-WideSCSI
16-bit 10 MHz 20 MB/s 1.5-3 m 15
Ultra SCSI 8-bit 20 MHz 20 MB/s 1.5-3 m 7
Ultra Wide
SCSI16-bit 20 MHz 40 MB/s 1.5-3 m 15
Ultra2
SCSI8-bit 40 MHz 40 MB/s 12 m 7
Ultra2Wide SCSI
16-bit 40 MHz 80 MB/s 12 m 15
Ultra3SCSI
16-bit40 MHzDDR
160 MB/s 12 m 15
Ultra-320
SCSI16-bit
80 MHz
DDR320 MB/s 12 m 15
Ultra-640 16-bit 160 640 MB/s ? m 15
http://en.wikipedia.org/wiki/SCSI_Architectural_Modelhttp://en.wikipedia.org/wiki/SCSI_Architectural_Modelhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/SCSI_Architectural_Modelhttp://en.wikipedia.org/wiki/SCSI_Architectural_Modelhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_connector -
8/8/2019 Bus Standards Notes
13/34
SCSIMHz
DDR
SSA 1 bit200
Mbit
40 MB/s spatial
reuse; full duplex25 m 96
SSA 40 1 bit400
Mbit
80 MB/s spatial
reuse; full duplex25 m 96
FC-AL1Gb 1 bit 1 Gbit100 MB/s per direction; full
duplex
500m(multiMode),3km(monoMode)
127
FC-AL 2Gb 1 bit 2 Gbit
200 MB/s
per direction; full
duplex
500m(multiMode),
3km(monoMode)127
FC-AL 4Gb 1 bit 4 Gbit
400 MB/s
per direction; fullduplex
500m(multiMode),3km(monoMode) 127
iSCSI Dependent upon IP network ??
SAS 3
Gbit/s1 bit N/A
300 MB/s
per direction; full
duplex
6 m16,256 (128 per
expander)
SCSI-1
The original standard that was derived from SASI and formally adopted in 1986 by ANSI. SCSI-1 features an 8-bitparallel bus (withparity), running asynchronously at 3.5 MB/s or 5 MB/s in
synchronous mode, and a maximum bus cable length of 6 meters (just under 20 feetcompared
to the 18 inch (0.45 meter) limit of the ATA interface). A rarely seen variation on the originalstandard included a high-voltage differential (HVD) implementation whose maximum cable
length was 25 meters.
SCSI-2
This standard was introduced in 1994 and gave rise to the Fast SCSI and Wide SCSI variants.
Fast SCSI doubled the maximum transfer rate to 10 MB/s and Wide SCSI doubled the bus width
to 16 bits on top of that (to reach 20 MB/s). However, these improvements came at the cost of areduced maximum cable length to 3 meters. SCSI-2 also specified a 32-bit version of Wide
SCSI, which used 2 16-bit cables per bus; this was largely ignored by SCSI device makersbecause it was expensive and unnecessary, and was officially retired in SCSI-3.
SCSI-3
http://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/ANSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parity_bithttp://en.wikipedia.org/wiki/Cablehttp://en.wikipedia.org/wiki/Advanced_Technology_Attachmenthttp://en.wikipedia.org/w/index.php?title=High-voltage_differential_signaling&action=edithttp://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/ANSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parity_bithttp://en.wikipedia.org/wiki/Cablehttp://en.wikipedia.org/wiki/Advanced_Technology_Attachmenthttp://en.wikipedia.org/w/index.php?title=High-voltage_differential_signaling&action=edit -
8/8/2019 Bus Standards Notes
14/34
Before Adaptec and later SCSITA codified the terminology, the first parallel SCSIdevices that
exceeded the SCSI-2 capabilities were simply designated SCSI-3. These devices, also known as
Ultra SCSI and fast-20 SCSI, were introduced in 1996. The bus speed doubled again to 20 MB/sfornarrow (8 bit) systems and 40 MB/s forwide (16-bit). The maximum cable length stayed at
3 meters but single-ended Ultra SCSI developed an undeserved reputation for extreme sensitivity
to cable length and condition (faulty cables, connectors or terminators were often to blame forinstability problems).
Ultra-2
This standard was introduced c. 1997 and featured a low-voltage differential (LVD) bus. For this
reason ultra-2 is sometimes referred to as LVD SCSI. LVD's greater immunity to noise allowed a
maximum bus cable length of 12 meters. At the same time, the data transfer rate was increased to80 MB/s. Ultra-2 SCSI actually had a relatively short lifespan, as it was soon superseded by
Ultra-3 (Ultra-160) SCSI.
Ultra-3
Also known as Ultra-160 SCSI and introduced toward the end of 1999, this version wasbasically an improvement on the ultra-2 standard, in that the transfer rate was doubled once more
to 160 MB/s by the use ofdouble transition clocking. Ultra-160 SCSI offered new features like
cyclic redundancy check(CRC), an error correcting process, and domain validation.
Ultra-320
This is the Ultra-160 standard with the data transfer rate doubled to 320 MB/s. The latest
working draft for this standard is revision 10 and is dated May 6, 2002. Nearly all new SCSI hard
drives being manufactured at the time of this writing (October 2003) are actually Ultra-320devices.
http://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Terminatorhttp://en.wikipedia.org/wiki/Low_voltage_differential_signalinghttp://en.wikipedia.org/wiki/Double_pumpedhttp://en.wikipedia.org/wiki/Cyclic_redundancy_checkhttp://en.wikipedia.org/wiki/Domain_validationhttp://en.wikipedia.org/wiki/Domain_validationhttp://en.wikipedia.org/wiki/May_6http://en.wikipedia.org/wiki/2002http://en.wikipedia.org/wiki/Hard_drivehttp://en.wikipedia.org/wiki/Hard_drivehttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Terminatorhttp://en.wikipedia.org/wiki/Low_voltage_differential_signalinghttp://en.wikipedia.org/wiki/Double_pumpedhttp://en.wikipedia.org/wiki/Cyclic_redundancy_checkhttp://en.wikipedia.org/wiki/Domain_validationhttp://en.wikipedia.org/wiki/May_6http://en.wikipedia.org/wiki/2002http://en.wikipedia.org/wiki/Hard_drivehttp://en.wikipedia.org/wiki/Hard_drive -
8/8/2019 Bus Standards Notes
15/34
Ultra-640
Ultra-640 (otherwise known as Fast-320) was promulgated as a standard (INCITS 367-2003 or
SPI-5) in early 2003. Ultra-640 doubles the interface speed yet again, this time to 640 MB/s.
Ultra-640 pushes the limits of LVD signaling; the speed limits cable lengths drastically, makingit impractical for more than one or two devices. Because of this, most manufacturers have
skipped over Ultra640 and are developing forSerial Attached SCSIinstead.
iSCSI
iSCSI preserves the basic SCSIparadigm, especially the command set, almost unchanged. iSCSIadvocates project the iSCSI standard, an embedding of SCSI-3 overTCP/IP, as displacing Fibre
Channel in the long run, arguing that Ethernet data rates are currently increasing faster than data
rates for Fibre Channel and similar disk-attachment technologies. iSCSI could thus address both
the low-end and high-end markets with a single commodity-based technology.
Serial SCSI
Four recent versions of SCSI, SSA, FC-AL,IEEE1394, and Serial Attached SCSI(SAS) break
from the traditional parallel SCSI 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
number of advantages over parallel SCSIfaster data rates, hot swapping, and improved
fault isolation. Serial SCSI devices are more expensive than the equivalent parallel SCSIdevices but this is likely to change soon.
Connectors
Centronics 50 SCSI plug
IDC 50 SCSI plug
http://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Paradigmhttp://en.wikipedia.org/wiki/TCP/IPhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Ethernethttp://en.wikipedia.org/wiki/Technologyhttp://en.wikipedia.org/wiki/Commodityhttp://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/IEEE1394http://en.wikipedia.org/wiki/IEEE1394http://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Hot_swappinghttp://en.wikipedia.org/wiki/Image:SCSI_IDC_50_connector.JPGhttp://en.wikipedia.org/wiki/Image:Centronics_50_SCSI_connector.JPGhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Paradigmhttp://en.wikipedia.org/wiki/TCP/IPhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Ethernethttp://en.wikipedia.org/wiki/Technologyhttp://en.wikipedia.org/wiki/Commodityhttp://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/IEEE1394http://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Hot_swapping -
8/8/2019 Bus Standards Notes
16/34
Centronics 50 SCSI sockets
No version of the standard has ever specified what kind ofconnectorshould be used. Specific
types of connectors forparallel SCSI devices were developed by vendors over time. Connectors
for serial SCSI devices have diversified into different families for each type of serial SCSI protocol. This is a brief summary, but see the SCSI connector article for a more detailed
description.
Parallel SCSI connectors
Although parallel SCSI-1 devices typically used bulkyBlue Ribbon Centronics connectors, andSCSI-2 devices typically usedMini-D connectors, it is not correct to refer to these as "SCSI-1"
and "SCSI-2" connectors. One valid rule is that connectors for wide SCSI buses have more pins
and wires than those for narrow SCSI buses. A Centronics-50 or HD-50 connector is for narrow
SCSI, while a Centronics-68 or HD-68 connector is for wide SCSI. On some early devices, wideparallel SCSI busses used two or four connectors and cables while narrow SCSI busses used only
one.
The first parallel SCSI connectors were the Centronics type. They then evolved through two
main stages, High-Density (HD) and most recently SCA - 80 pin.
With the HD connectors, a cable normally has male connectors while a SCSI device (e.g. host
adapter, disk drive) has female. A female connector on a cable is meant to connect to another
cable (for additional length or additional device connections).
Serial SCSI connectors
Most modern server-class SCSI devices use some form of serial SCSI. This could be SSA, FC-
AL, iSCSI orSAS. This has led to a diversity of cables and disk-drive connectors. See the SCSI
connectorarticle for a more detailed description.
SCSI command protocol
In addition to many different hardware implementations, the SCSI standards also include acomplex set of command protocol definitions. The SCSI command architecture was originally
defined forparallel SCSI buses but has been carried forward with minimal change for use with
iSCSI and serial SCSI.
http://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Micro_ribbonhttp://en.wikipedia.org/wiki/Micro_ribbonhttp://en.wikipedia.org/wiki/D-subminiaturehttp://en.wikipedia.org/wiki/D-subminiaturehttp://en.wikipedia.org/wiki/Single_Connector_Attachmenthttp://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Image:Centronics_50_sockets.JPGhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Micro_ribbonhttp://en.wikipedia.org/wiki/D-subminiaturehttp://en.wikipedia.org/wiki/Single_Connector_Attachmenthttp://en.wikipedia.org/wiki/Serial_Storage_Architecturehttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/Fibre_Channelhttp://en.wikipedia.org/wiki/ISCSIhttp://en.wikipedia.org/wiki/Serial_Attached_SCSIhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/SCSI_connectorhttp://en.wikipedia.org/wiki/Parallel_SCSI -
8/8/2019 Bus Standards Notes
17/34
In SCSI terminology, communication takes place between an initiatorand a target. The initiator
sends a command to the target which then responds. SCSI commands are sent in a Command
Descriptor Block (CDB). The CDB consists of a one byte operation code followed by five ormore bytes containing command-specific parameters.
At the end of the command sequence the target returns a Status Code byte which is usually 00hfor success, 02h for an error (called aCheck Condition), or 08h for busy. When the target returns
a Check Condition in response to a command, the initiator usually then issues a SCSI RequestSense command 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.
There are 4 categories of SCSI commands: N (non-data), W (writing data from initiator totarget), R (reading data), and B (bidirectional). There are about 60 different SCSI commands in
total, with the most common being:
Test unit ready: ask the device if it is ready for data transfers (disk spun up, medialoaded...)
Inquiry: return basic device information, also used to "ping" the device since it does not
modify sense data
Request sense: give any error codes from the previous command that returned an errorstatus
Send diagnostic and Receive diagnostic results: run a simple self-test, or a specialised test
defined in a diagnostic page
Start/Stop unit: spin disks up and down, load/unload media
Read capacity: return storage capacity
Format unit
Read (four variants) Write (four variants)
Log sense: return current information from log pages
Mode sense: return current device parameters from mode pages Mode select: set device parameters in a mode page
Each device on the SCSI bus is assigned at least one logical unit number (LUN). Simple devices
have just one LUN, more complex devices may have multiple LUNs. A "direct access" (i.e. disktype) storage device consists of a number of logical blocks, usually referred to by the term
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) and Write(6) commands contain a 21-bit LBA address. TheRead(10), Read(12), Read Long, Write(10), Write(12), and Write Long 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 known exactly. Reads and writes on a sequentialaccess device happen at the current position, not at a specific LBA. The block size on sequential
access devices can typically vary.
http://en.wikipedia.org/wiki/SCSI_initiatorhttp://en.wikipedia.org/wiki/SCSI_initiatorhttp://en.wikipedia.org/wiki/SCSI_targethttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_CDBhttp://en.wikipedia.org/wiki/SCSI_Status_Codehttp://en.wikipedia.org/wiki/SCSI_check_conditionhttp://en.wikipedia.org/wiki/SCSI_check_conditionhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/KCQhttp://en.wikipedia.org/wiki/SCSI_contingent_allegiance_conditionhttp://en.wikipedia.org/wiki/SCSI_contingent_allegiance_conditionhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_Test_Unit_Ready_Commandhttp://en.wikipedia.org/wiki/SCSI_Inquiry_Commandhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_Send_Diagnostic_Commandhttp://en.wikipedia.org/wiki/SCSI_Receive_Diagnostic_Results_Commandhttp://en.wikipedia.org/wiki/SCSI_Receive_Diagnostic_Results_Commandhttp://en.wikipedia.org/wiki/SCSI_diagnostic_pageshttp://en.wikipedia.org/wiki/SCSI_Start_Stop_Unit_Commandhttp://en.wikipedia.org/wiki/SCSI_Read_Capacity_Commandhttp://en.wikipedia.org/wiki/SCSI_Format_Unit_Commandhttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Log_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_log_pageshttp://en.wikipedia.org/wiki/SCSI_Mode_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_mode_pageshttp://en.wikipedia.org/wiki/SCSI_Mode_Select_Commandhttp://en.wikipedia.org/wiki/LUNhttp://en.wikipedia.org/wiki/SCSI_LBAhttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_initiatorhttp://en.wikipedia.org/wiki/SCSI_targethttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_CDBhttp://en.wikipedia.org/wiki/SCSI_Status_Codehttp://en.wikipedia.org/wiki/SCSI_check_conditionhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/KCQhttp://en.wikipedia.org/wiki/SCSI_contingent_allegiance_conditionhttp://en.wikipedia.org/wiki/SCSI_contingent_allegiance_conditionhttp://en.wikipedia.org/wiki/SCSI_commandhttp://en.wikipedia.org/wiki/SCSI_Test_Unit_Ready_Commandhttp://en.wikipedia.org/wiki/SCSI_Inquiry_Commandhttp://en.wikipedia.org/wiki/SCSI_Request_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_Send_Diagnostic_Commandhttp://en.wikipedia.org/wiki/SCSI_Receive_Diagnostic_Results_Commandhttp://en.wikipedia.org/wiki/SCSI_diagnostic_pageshttp://en.wikipedia.org/wiki/SCSI_Start_Stop_Unit_Commandhttp://en.wikipedia.org/wiki/SCSI_Read_Capacity_Commandhttp://en.wikipedia.org/wiki/SCSI_Format_Unit_Commandhttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Log_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_log_pageshttp://en.wikipedia.org/wiki/SCSI_Mode_Sense_Commandhttp://en.wikipedia.org/wiki/SCSI_mode_pageshttp://en.wikipedia.org/wiki/SCSI_Mode_Select_Commandhttp://en.wikipedia.org/wiki/LUNhttp://en.wikipedia.org/wiki/SCSI_LBAhttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Read_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commandshttp://en.wikipedia.org/wiki/SCSI_Write_Commands -
8/8/2019 Bus Standards Notes
18/34
Compatibility
For purposes of discussing compatibility, remember that SCSI devices include both host adapters
and peripherals such as disk drives. When you ask whether you can cable a certain host adapterto a certain disk drive, you are asking whether you can attach those two SCSI devices to the
same SCSI bus.
Different SCSI transports, which are not compatible with each other, usually have unique
connectors to avoid accidental mis-plugging of incompatible devices. For example it is notpossible to plug a parallel SCSI disk into an FC-AL backplane, nor to connect a cable between
an SSA initiator and an FC-AL enclosure.
SCSI devices in the same SCSI transport family are generallybackward-compatible. Within the
parallel SCSI family, for example, it is possible to connect an ultra-3 SCSI hard disk to an ultra-2SCSI controller and use it (though with reduced speed and feature set). However there are some
compatibility issues with parallel SCSI busses which are described in the rest of this section.
Ultra-2, ultra-160 and ultra-320 devices may be freely mixed on the parallelLVD bus with no
compromise in performance, as the host adapter will negotiate the operating speed and busmanagement requirements for each device. You can attach Single-endedand LVDSdevices to
the same bus, but all devices will run at the slower single-ended speed. The SPI-5 standard
(which describes Ultra-640) deprecates single-ended devices, so future devices may not beelectrically backward compatible.
You can attach both narrow and wide SCSI devices to the same parallel bus. To do this, you
must put all the narrow SCSI devices at one end and all the wide SCSI devices at the other end,
and terminate the high half of the bus in between (because the high half of the bus ends with the
last wide SCSI device). You can get a cable designed to connect the wide part of the bus to thenarrow part which either provides a place to plug in a terminator for the high half or includes the
terminator itself. This is sometimes referred to as a cable with high-9 termination. Specificcommands allow the devices to determine whether their partners are using the whole wide bus or
just the lower half and drive the bus accordingly.
As an example of a mixed bus, consider a SCSI wide host adapter with a HD-68 male connector
connected to a SCSI narrow disk drive with a HD-50 female connector. You might make thisconnection with a cable that has an HD-68 female connector on one end and an HD-50 male
connector on the other. Inside the cable's HD-68 connector, there is termination for the high half
of the bus and the cable contains wires for only the low half. The host adapter determines that the
disk drive uses only the low half of the bus, so talks to it using only the lower half. The converseexamplea SCSI narrow host adapter and SCSI wide disk drive also works.
Modern Single Connector Attachment (SCA) parallel SCSI devices may be connected to older
controller/drive chains by using SCA adapters. Although these adapters often have auxiliarypower connectors, use caution: it is possible to destroy the drive by connecting external power.
Always try the drive without auxiliary power first.
http://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/FC-ALhttp://en.wikipedia.org/wiki/Backward_compatibilityhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/LVDShttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Single-endedhttp://en.wikipedia.org/wiki/Single-endedhttp://en.wikipedia.org/wiki/LVDShttp://en.wikipedia.org/wiki/LVDShttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Single_Connector_Attachmenthttp://en.wikipedia.org/wiki/Single_Connector_Attachmenthttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/FC-ALhttp://en.wikipedia.org/wiki/Backward_compatibilityhttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/LVDShttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Single-endedhttp://en.wikipedia.org/wiki/LVDShttp://en.wikipedia.org/wiki/Parallel_SCSIhttp://en.wikipedia.org/wiki/Single_Connector_Attachment -
8/8/2019 Bus Standards Notes
19/34
Each parallel SCSI device (including the computer's host adapter) must be configured to have a
unique SCSI ID on the bus. Also, any parallel SCSI bus must be terminated at both ends with the
correct type of terminator. Both active and passive terminators are in common use, with theactive type much preferred (and required on LVD buses). Improper termination is a common
problem with parallel SCSI installations. In early SCSI buses, one had to attach a physical
terminator to each end, but modern SCSI devices often have terminators built in, and you justhave to switch termination on somehow on the devices at either end of the bus. Advanced SCSI
devices actually detect whether they are last on the bus and switch termination on or off
automatically.
SCSI device identification
In the modern SCSI transport protocols, there is an automated process of "discovery" of the IDs.SSA initiators "walk the loop" to determine what devices are there and then assign each one a 7-
bit "hop-count" value. FC-AL initiators use the LIP (Loop Initialization Protocol) to interrogate
each device port for its WWN (World Wide Name). 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 015 on a wide bus. You
usually set the SCSI ID of the initiator (host adapter) with a physical jumper or switch on early
models. On modern (since about 1997) host adapters, you set the SCSI ID by doing I/O to theadapter; for example, the adapter often contains a BIOS program that runs when the computer
boots up and that program has menus that let you choose the SCSI ID of the host adapter. Or the
host adapter may come with software you can install on the computer to do this. The traditional
SCSI ID for a host adapter is 7, as that ID has the highest priority during bus arbitration (even ona 16 bit bus).
You set the SCSI ID for a target (e.g. disk drive) either with physical jumpers or by your choice
of the slot in which you install the drive in a drive enclosure (each connector on the enclosure'sback plane delivers control signals to the drive to select a unique SCSI ID). A SCSI enclosure
without a backplane often has a switch for each drive in the enclosure to choose the drive's SCSI
ID. The way this works is that the enclosure has a connector that you plug into the drive where jumpers are supposed to go; the switch emulates the necessary jumpers. While there is no
standard that makes this work, drive designers typically set up their jumper headers in the way
that these switches implement.
Note that a SCSI target device (which can be called a "physical unit") is often divided intosmaller "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 simplevirtual disk devices are generated by the subystem based on the storage in those
physical drives, and each virtual disk device is a logical unit). The SCSI ID, WWNN, etc. in thiscase identifies the whole subsystem, and a second number, the logical unit number (LUN)
identifies a disk device within the subsystem.
http://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Identifierhttp://en.wikipedia.org/wiki/Parallel_SCSI#Terminationhttp://en.wikipedia.org/wiki/World_Wide_Namehttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Host_adapterhttp://en.wikipedia.org/wiki/Identifierhttp://en.wikipedia.org/wiki/Parallel_SCSI#Terminationhttp://en.wikipedia.org/wiki/World_Wide_Namehttp://en.wikipedia.org/wiki/Host_adapter -
8/8/2019 Bus Standards Notes
20/34
It is quite common, though incorrect, to refer to the logical unit itself as a "LUN." Accordingly,
you may see the actual LUN called a "LUN number" or "LUN id".
SCSI enclosure services
In larger SCSI servers, the disk-drive devices are housed in an intelligent enclosure that supportsSCSI Enclosure Services (SES). The initiator can communicate with the enclosure using a
specialised set of SCSI commands to access power, cooling, and other non-data characteristics.
2.4 Integrated Device Electronics
No matter what you do with your computer, storage is an important part of your system. In fact,mostpersonal computers have one or more of the following storage devices:
Floppy drive Hard drive
CD-ROM drive
The hard drive and circuit board combination
that typify IDE devices
Usually, these devices connect to the computer through an Integrated Drive Electronics (IDE)
interface. Essentially, an IDE interface is a standard way for a storage device to connect to a
computer. IDE is actually not the true technical name for the interface standard. The originalname, AT Attachment (ATA), signified that the interface was initially developed for the IBM
AT computer. In this article, you will learn about the evolution of IDE/ATA, what the pinouts
are and exactly what "slave" and "master" mean in IDE.
http://en.wikipedia.org/wiki/SCSI_Enclosure_Serviceshttp://electronics.howstuffworks.com/pc.htmhttp://electronics.howstuffworks.com/pc.htmhttp://electronics.howstuffworks.com/floppy-disk-drive.htmhttp://electronics.howstuffworks.com/hard-disk.htmhttp://electronics.howstuffworks.com/cd.htmhttp://en.wikipedia.org/wiki/SCSI_Enclosure_Serviceshttp://electronics.howstuffworks.com/pc.htmhttp://electronics.howstuffworks.com/floppy-disk-drive.htmhttp://electronics.howstuffworks.com/hard-disk.htmhttp://electronics.howstuffworks.com/cd.htm -
8/8/2019 Bus Standards Notes
21/34
IDE Evolution
IDE was created as a way to standardize the use of hard drives in computers. The basic concept
behind IDE is that the hard drive and the controller should be combined. The controller is a smallcircuit board with chips that provide guidance as to exactly how the hard drive stores and
accesses data. Most controllers also include some memorythat acts as a buffer to enhance harddrive performance.
Before IDE, controllers and hard drives were separate and often proprietary. In other words, acontroller from one manufacturer might not work with a hard drive from another manufacturer.
The distance between the controller and the hard drive could result in poor signal quality and
affect performance. Obviously, this caused much frustration for computer users.
The birth of the IDE interface led to combining a controller like this one with a hard drive.
IBM introduced the AT computer in 1984 with a couple of key innovations.
The slots in the computer for adding cards used a new version of the Industry StandardArchitecture (ISA) bus. The new bus was capable of transmitting information 16 bits at
a time, compared to 8 bits on the original ISA bus.
IBM also offered a hard drive for the AT that used a new combined drive/controller. A
ribbon cable from the drive/controller combination ran to an ISA card to connect to the
computer, giving birth to the AT Attachment (ATA) interface.
In 1986, Compaq introduced IDE drives in their Deskpro 386. This drive/controller combinationwas based on the ATA standard developed by IBM. Before long, other vendors began offering
IDE drives. IDE became the term that covered the entire range of integrated drive/controller
devices. Since almost all IDE drives are ATA-based, the two terms are used interchangeably.
Controllers, Drives, Host Adapters
http://electronics.howstuffworks.com/computer-memory.htmhttp://electronics.howstuffworks.com/computer-memory.htmhttp://electronics.howstuffworks.com/bytes.htmhttp://electronics.howstuffworks.com/computer-memory.htmhttp://electronics.howstuffworks.com/bytes.htm -
8/8/2019 Bus Standards Notes
22/34
Most motherboards come with an IDE interface. This interface is often referred to as an IDE
controller, which is incorrect. The interface is actually a host adapter, meaning that it provides a
way to connect a complete device to the computer (host). The actual controller is on a circuitboard attached to the hard drive. That's the reason it's called Integrated Drive Electronics in the
first place!
A close-up of the primary and secondary IDE interfaces
on a motherboard
While the IDE interface was originally developed for connecting hard drives, it has evolved into
the universal interface for connecting internal floppy drives, CD-ROM drives and even sometape backup drives. Although it is very popular for internal drives, IDE is rarely used for
attaching an external device.
There are several variations of ATA, each one adding to the previous standard and maintaining
backward compatibility.
The standards include:
ATA-1 - The original specification that Compaq included in the Deskpro 386. It
instituted the use of a master/slave configuration. ATA-1 was based on a subset of the
standard ISA 96-pin connector that uses either 40 or 44 pin connectors and cables. In the44-pin version, the extra four pins are used to supply power to a drive that doesn't have a
separate power connector. Additionally, ATA-1 provides signal timing for direct
http://electronics.howstuffworks.com/motherboard.htmhttp://electronics.howstuffworks.com/motherboard.htmhttp://electronics.howstuffworks.com/motherboard.htm -
8/8/2019 Bus Standards Notes
23/34
memory access (DMA) and programmed input/output (PIO) functions. DMA means that
the drive sends information directly to memory, while PIO means that the computer's
central processing unit (CPU) manages the information transfer. ATA-1 is morecommonly known as IDE.
ATA-2 - DMA was fully implemented beginning with the ATA-2 version. Standard
DMA transfer rates increased from 4.16 megabytes per second (MBps) in ATA-1 to asmany as 16.67 MBps. ATA-2 provides power management, PCMCIA card support and
removable device support. ATA-2 is often called EIDE (Enhanced IDE), Fast ATA or
Fast ATA-2. The total hard drive size supported increased to 137.4 gigabytes. ATA-2provided standard translation methods forCylinder Head Sector (CHS) for hard drives
up to 8.4 gigabytes in size. CHS is how the system determines where the data is located
on a hard drive. The reason for the big discrepancy between total hard drive size and
CHS hard drive support is because of the bit sizes used by the basic input/output system(BIOS) for CHS. CHS has a fixed length for each part of the address. Look at this chart:
Cylinder 10-bit 1024
Head 8-bit 256
Sector 6-bit 63*
You will note that the number of sectors is 63 instead of 64. This is because a sectorcannot begin with zero. Each sector holds 512 bytes. If you multiply 1,024 x 256 x 63 x
512, you will get 8,455,716,864 bytes or approximately 8.4 gigabytes. Newer BIOSversions increased the bit size for CHS, providing support for the full 137.4 gigabytes.
ATA-3 - With the addition of Self-Monitoring Analysis and Reporting Technology
(SMART), IDE drives were made more reliable. ATA-3 also adds password protection toaccess drives, providing a valuable security feature.
ATA-4 - Probably the two biggest additions to the standard in this version are Ultra
DMA support and the integration of the AT Attachment Program Interface (ATAPI)
standard. ATAPI provides a common interface for CD-ROM drives, tape backup drivesand otherremovable storage devices. Before ATA-4, ATAPI was a completely separate
standard. With the inclusion of ATAPI, ATA-4 immediately improved the removable
media support of ATA. Ultra DMA increased the DMA transfer rate from ATA-2's 16.67MBps to 33.33 MBps. In addition to the existing cable that uses 40 pins and 40
conductors (wires), this version introduces a cable that has 80 conductors. The other 40
conductors are ground wires interspersed between the standard 40 conductors to improvesignal quality. ATA-4 is also known as Ultra DMA, Ultra ATA and Ultra ATA/33.
ATA-5 - The major update in ATA-5 is auto detection of which cable is used: the 40-
conductor or 80-conductor version. Ultra DMA is increased to 66.67 MB/sec with the useof the 80-conductor cable. ATA-5 is also called Ultra ATA/66.
Cable Key
IDE devices use a ribbon cable to connect to each other. Ribbon cables have all of the wires laid
flat next to each other instead of bunched or wrapped together in a bundle. IDE ribbon cables
have either 40 or 80 wires. There is a connector at each end of the cable and another one abouttwo-thirds of the distance from the motherboard connector. This cable cannot exceed 18 inches
(46 cm) in total length (12 inches from first to second connector, and 6 inches from second to
http://electronics.howstuffworks.com/framed.htm?parent=ide.htm&url=http://www.webopedia.com/TERM/D/DMA.htmlhttp://electronics.howstuffworks.com/framed.htm?parent=ide.htm&url=http://www.webopedia.com/TERM/P/PIO.htmlhttp://electronics.howstuffworks.com/framed.htm?parent=ide.htm&url=http://www.webopedia.com/TERM/P/PIO.htmlhttp://electronics.howstuffworks.com/microprocessor.htmhttp://electronics.howstuffworks.com/microprocessor.htmhttp://electronics.howstuffworks.com/flash-memory4.htmhttp://electronics.howstuffworks.com/flash-memory4.htmhttp://electronics.howstuffworks.com/bios.htmhttp://electronics.howstuffworks.com/removable-storage.htmhttp://electronics.howstuffworks.com/framed.htm?parent=ide.htm&url=http://www.webopedia.com/TERM/D/DMA.htmlhttp://electronics.howstuffworks.com/framed.htm?parent=ide.htm&url=http://www.webopedia.com/TERM/P/PIO.htmlhttp://electronics.howstuffworks.com/microprocessor.htmhttp://electronics.howstuffworks.com/flash-memory4.htmhttp://electronics.howstuffworks.com/bios.htmhttp://electronics.howstuffworks.com/removable-storage.htm -
8/8/2019 Bus Standards Notes
24/34
third) to maintain signal integrity. The three connectors are typically different colors and attach
to specific items:
The blue connector attaches to the motherboard.
The black connector attaches to the primary (master) drive.
The grey connector attaches to the secondary (slave) drive.
Along one side of the cable is a stripe. This stripe tells you that the wire on that side is attached
to Pin 1 of each connector. Wire 20 is not connected to anything. In fact, there is no pin at thatposition. This position is used to ensure that the cable is attached to the drive in the correct
position. Another way that manufacturers make sure the cable is not reversed is by using a cablekey. The cable key is a small, plastic square on top of the connector on the ribbon cable that fits
into a notch on the connector of the device. This allows the cable to attach in only one position.
The connector on an IDE cable
Pin Description Pin Description
1 Reset 23 -IOW
2 Ground 24 Ground
3 Data Bit 7 25 -IOR
4 Data Bit 8 26 Ground
5 Data Bit 6 27 I/O Channel Ready
6 Data Bit 9 28 SPSYNC: Cable Select
7 Data Bit 5 29 -DACK 38 Data Bit 10 30 Ground
9 Data Bit 4 31 RQ 14
10 Data Bit 11 32 -IOCS 16
11 Data Bit 3 33 Address Bit 1
12 Data Bit 12 34 -PDIAG
13 Data Bit 2 35 Address Bit 0
-
8/8/2019 Bus Standards Notes
25/34
14 Data Bit 13 36 Address Bit 2
15 Data Bit 1 37 -CS1FX
16 Data Bit 14 38 -CS3FX
17 Data Bit 0 39 -DA/SP
18 Data Bit 15 40 Ground19 Ground 41 +5 Volts (Logic) (Optional)
20 Cable Key (pin missing) 42 +5 Volts (Motor) (Optional)
21 DRQ 3 43 Ground (Optional)
22 Ground 44 -Type (Optional)
Note that the last four pins are only used by devices that require power through the ribbon cable.
Typically, such devices are hard drives that are too small (for example, 2.5 inches) to need a
separate power supply.
Masters and Slaves
A single IDE interface can support two devices. Most motherboards come with dual IDEinterfaces (primary and secondary) for up to four IDE devices. Because the controller is
integrated with the drive, there is no overall controller to decide which device is currentlycommunicating with the computer. This is not a problem as long as each device is on a separate
interface, but adding support for a second drive on the same cable took some ingenuity.
To allow for two drives on the same cable, IDE uses a special configuration called master and
slave. This configuration allows one drive's controller to tell the other drive when it can transferdata to or from the computer. What happens is the slave drive makes a request to the master
drive, which checks to see if it is currently communicating with the computer. If the master drive
is idle, it tells the slave drive to go ahead. If the master drive is communicating with the
computer, it tells the slave drive to wait and then informs it when it can go ahead.
The computer determines if there is a second (slave) drive attached through the use of Pin 39 on
the connector. Pin 39 carries a special signal, called Drive Active/Slave Present (DASP), that
checks to see if a slave drive is present.
Although it will work in either position, it is recommended that the master drive is attached tothe connector at the very end of the IDE ribbon cable. Then, a jumper on the back of the drive
next to the IDE connector must be set in the correct position to identify the drive as the master
drive. The slave drive must have either the master jumper removed or a special slave jumper set,depending on the drive. Also, the slave drive is attached to the connector near the middle of the
IDE ribbon cable. Each drive's controller board looks at the jumper setting to determine whether
it is a slave or a master. This tells them how to perform. Every drive is capable of being either
slave or master when you receive it from the manufacturer. If only one drive is installed, itshould always be the master drive.
-
8/8/2019 Bus Standards Notes
26/34
Many drives feature an option called Cable Select (CS). With the correct type of IDE ribbon
cable, these drives can be auto configured as master or slave. CS works like this: A jumper on
each drive is set to the CS option. The cable itself is just like a normal IDE cable except for onedifference -- Pin 28 only connects to the master drive connector. When your computer is
powered up, the IDE interface sends a signal along the wire for Pin 28. Only the drive attached to
the master connector receives the signal. That drive then configures itself as the master drive.Since the other drive received no signal, it defaults to slave mode.
2.5 Universal Serial Bus
Universal Serial Bus (USB) is a serialbus standard to interface devices. It was originally
designed for computers, but its popularity has prompted it to also become commonplace onvideo game consoles, PDAs, portable DVD and media players, cellphones; and even devices
such as televisions, home stereo equipment (e.g., digital audio players), car stereos andportable
memory devices. The radio spectrum based USB implementation is known as Wireless USB.
------------------------------------------------------------------------------------------------------------
The USB "trident" Icon
Year Created: Jan 1996Width: 1bits
Number of Devices: 127 per host
Speed: up to 480 Mbit/s
Style: Serial
Hotplugging? yes
External? yes
------------------------------------------------------------------------------------------------------------
The USB (Type A and B) Connectors
http://en.wikipedia.org/wiki/Serial_communicationshttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Electrical_connectorhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Video_game_consolehttp://en.wikipedia.org/wiki/Personal_digital_assistanthttp://en.wikipedia.org/wiki/DVDhttp://en.wikipedia.org/wiki/Cellphoneshttp://en.wikipedia.org/wiki/Televisionshttp://en.wikipedia.org/wiki/Digital_audio_playerhttp://en.wikipedia.org/wiki/Car_audiohttp://en.wikipedia.org/wiki/USB_flash_drivehttp://en.wikipedia.org/wiki/USB_flash_drivehttp://en.wikipedia.org/wiki/USB_flash_drivehttp://en.wikipedia.org/wiki/Wireless_USBhttp://en.wikipedia.org/wiki/Wireless_USBhttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Serial_communicationshttp://en.wikipedia.org/wiki/Image:USB_TypeAB_Diagram.svghttp://en.wikipedia.org/wiki/Image:USB_Icon.svghttp://en.wikipedia.org/wiki/Serial_communicationshttp://en.wikipedia.org/wiki/Computer_bushttp://en.wikipedia.org/wiki/Electrical_connectorhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Video_game_consolehttp://en.wikipedia.org/wiki/Personal_digital_assistanthttp://en.wikipedia.org/wiki/DVDhttp://en.wikipedia.org/wiki/Cellphoneshttp://en.wikipedia.org/wiki/Televisionshttp://en.wikipedia.org/wiki/Digital_audio_playerhttp://en.wikipedia.org/wiki/Car_audiohttp://en.wikipedia.org/wiki/USB_flash_drivehttp://en.wikipedia.org/wiki/USB_flash_drivehttp://en.wikipedia.org/wiki/Wireless_USBhttp://en.wikipedia.org/wiki/Bithttp://en.wikipedia.org/wiki/Serial_communications -
8/8/2019 Bus Standards Notes
27/34
A USB Series A plug
Overview
The Universal Serial Bus (USB) was devised as a major component in the transition towards a
legacy-free PC. The intention was to let go of all older serial and parallel ports on personal
computers since these were not properly standardized, and required a multitude ofdevice driversto be developed and maintained.
A USB system has an asymmetric design, consisting of a host controller and multiple daisy-chaineddevices. Additional USB hubs may be included in the chain, allowing branching into a
tree structure, subject to a limit of 5 levels of branching per controller. No more than 127devices, including the bus devices, may be connected to a single host controller. Modern
computers often have several host controllers, allowing a very large number of USB devices to
be connected. USB cables do not need to be terminated.
Because of the capability of daisy-chaining USB devices, early USB announcements predictedthat each USB device would include a USB port to allow for long chains of devices. In this
model, computers would not need many USB ports, and computers shipped at this time typically
had only two. However, for economical and technical reasons, daisy chaining never becamewidespread. To reduce the necessity ofUSB hubs, computers now come with a large number of
USB ports, typically six. Most modern desktop computers have up to half of their total
complement of USB ports on the front panel, to facilitate temporary connection of portabledevices.
USB was designed to allow peripherals to be connected without the need to plug expansion cards
into the computer's ISA, EISA, or PCI bus, and to improve plug-and-play capabilities by
allowing devices to be hot-swapped (connected or disconnected without powering down orrebooting the computer). When a device is first connected, the host enumerates and recognizes it,
and loads the device driverit needs.
http://en.wikipedia.org/w/index.php?title=Legacy-free_PC&action=edithttp://en.wikipedia.org/wiki/Serial_porthttp://en.wikipedia.org/wiki/Parallel_porthttp://en.wikipedia.org/wiki/Parallel_porthttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Symmetryhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Daisy-chainhttp://en.wikipedia.org/wiki/Daisy-chainhttp://en.wikipedia.org/wiki/Daisy-chainhttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/USB_hubhttp://en.wikipedia.org/wiki/Electrical_terminationhttp://en.wikipedia.org/wiki/Electrical_terminationhttp://en.wikipedia.org/wiki/USB_hubhttp://en.wikipedia.org/wiki/Desktop_computershttp://en.wikipedia.org/wiki/Expansion_cardhttp://en.wikipedia.org/wiki/Industry_Standard_Architecturehttp://en.wikipedia.org/wiki/Peripheral_Component_Interconnecthttp://en.wikipedia.org/wiki/Plug-and-playhttp://en.wikipedia.org/wiki/Plug-and-playhttp://en.wikipedia.org/wiki/Hot_swappinghttp://en.wikipedia.org/wiki/Hot_swappinghttp://en.wikipedia.org/wiki/Rebootinghttp://en.wikipedia.org/wiki/Enumerationhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Image:Type_A_USB_connector.jpghttp://en.wikipedia.org/w/index.php?title=Legacy-free_PC&action=edithttp://en.wikipedia.org/wiki/Serial_porthttp://en.wikipedia.org/wiki/Parallel_porthttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Personal_computerhttp://en.wikipedia.org/wiki/Device_driverhttp://en.wikipedia.org/wiki/Symmetryhttp://en.wikipedia.org/wiki/Server_(computing)http://en.wikipedia.org/wiki/Daisy-chainhttp://en.wikipedia.org/wiki/Daisy-chainhttp://en.wikipedia.org/wiki/Peripheral_devicehttp://en.wikipedia.org/wiki/USB_hubhttp://en.wikipedia.org/wiki/Electrical_terminationhttp://en.wikipedia.org/wiki/USB_hubhttp://en.wikipedia.org/wiki/Desktop_computershttp://en.wikipedia.org/wiki/Expansion_cardhttp://en.wikipedia.org/wiki/Industry_Standard_Architecturehttp://en.wikipedia.o