single standard

Industry Standard Architecture

Industry Standard Architecture (in practice almost always shortened to ISA) was a computer bus standard for IBM compatible computers.


ISA originated as an 8-bit system in the IBM PC in 1981, and was extended in 1983 as the XT bus architecture. The newer 16-bit standard, the IBM AT bus, was introduced in 1984. In 1988, the Gang of Nine IBM PC compatible manufacturers put forth the 32-bit EISA standard and in the process retroactively renamed the AT bus to be "ISA" to avoid infringing IBM's trademark on its PC/AT computer.

Designed to connect peripheral cards to the motherboard, ISA allows for bus mastering although only the first 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 6 or 8 MHz. IBM RT/PC also used the 16-bit bus. It was also available on some non-IBM compatible machines such as the short-lived AT&T Hobbit and later PowerPC based BeBox.

In 1987, IBM moved to replace the AT bus with their proprietary Micro Channel Architecture (MCA) in an effort to regain control of the PC architecture and the PC market. (MCA had many features that would later appear in PCI, the successor of ISA, but MCA was a closed standard, unlike ISA (PC-bus and AT-bus) for which IBM had released full specifications and even circuit schematics.) The system was far more advanced than the AT bus, and computer manufacturers responded with the Extended Industry Standard Architecture (EISA) and later, the VESA Local Bus (VLB). In fact, VLB used some parts originally intended for MCA because component manufacturers already had the ability to manufacture them. Both were backwards-compatible expansions of the AT (ISA) bus.

Users of ISA-based machines had to know special information about the hardware they were adding to the system. While a handful of devices were essentially "plug-n-play," this was rare. Users frequently had to configure several parameters when adding a new device, such as the IRQ line, I/O address, or DMA channel. MCA had done away with this complication, and PCI 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 of ISA PnP, a plug-n-play system that 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 can be a major headache, 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 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 of consumer systems. Microsoft's PC 97 specification recommended that ISA slots be removed entirely, 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 towards the turn of the century it was common 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 counterparts—PCI 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 this allowed for greater flexibility.

8-bit ISA (XT bus architecture)

The XT bus architecture is an eight-bit ISA bus used by Intel 8086 and Intel 8088 systems in the IBM PC and IBM PC XT in the 1980s.

The XT architecture has four DMA channels, of which three are brought out to the XT bus expansion slots. Of these three, two are normally allocated to machine functions:

DMA channel Expansion Standard function
0 No Dynamic RAM refresh
1 Yes Add-on cards
2 Yes Floppy disk controller
3 Yes Hard disk controller

The XT bus architecture has single Intel 8259 PIC and eight interrupt lines.

16-bit ISA (AT bus architecture)

The AT bus architecture is an 16-bit version of the ISA (IBM PC/XT) bus first introduced in the IBM PC/AT. IBM officially called this bus the "I/O Channel" of the IBM Personal Computer AT. The AT bus extends the XT-bus by adding a second, shorter, card edge connector alongside and in-line with the 8-bit ISA (XT-bus) connector, which is unchanged. (The bus is extended both logically in function and physically in connector length.) Therefore, compatibility with all 8-bit cards is retained (unless the 16-bit bus is clocked faster than they can handle.) The second connector adds additional interrupt lines, control for four 16-bit DMA channels (from the AT architectures second PIC and DMA controller chips, respectively), four additional address bits (extending the address bus from 20 to 24 bits), 8 additional data bits (for the total of 16), and additional control lines for 8 or 16 bit transfers.

A 16-bit ISA bus (AT bus) slot was originally intended to be implemented with two standard card-edge connector sockets on the motherboard or backplane, and in fact slots were implemented this way in original PC/AT machines manufactured by IBM. However, with the popularity of the AT architecture and the 16-bit ISA bus in general, connector manufacturers introduced specialized connectors that integrated the two aligned card-edge sockets into one unit, with the ISA standard spacing between them. These unified ISA slot connectors can be found in almost all AT-class PCs manufactured after approximately the mid-1980s, including those built by IBM. The ISA slot connector is almost always black, distinguishing it from EISA connectors, which are brown, and PCI connectors, which are white (and shorter, as well as horizontally offset [along the dimension perpendicular to the plane of the card] so as not to align with the edge of an ISA card whose end bracket is aligned with a slot).

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

16-bit ISA

Bus width 16-bit
Compatible with 8-bit ISA, 16-bit ISA
Pins 98
Vcc +5 V, -5 V, +12 V, -12 V
Clock 8.333333 MHz
3.97 MiB/s (pio)
2.65 MiB/s (dma)

Note: The ISA bus speed is actually synchronous with the CPU clock speed, resulting in many differing clock speeds, due to the many different speed machines produced by the many 'IBM clone' manufacturers. This led to problems by the late 1980s, where certain ISA cards would suffer compatibility problems and malfunctions when fitted to machines with bus speeds as high as 16 MHz. This problem was solved with later, highly integrated chipsets that (generally) standardized the 16-bit ISA bus to 8 MHz; this was achieved by under-clocking the CPU to 8MHz only during ISA bus accesses. (This seems dubious--ISA-bus machines were made with clock speeds as high as 200 MHz or more, and most CPUs have dynamic cores, leading them to have minimum clock speeds usually within an order of magnitude of their maximum clock speeds. Therefore, while CPUs as fast as 25 or even 50 MHz might have been underclocked to 8MHz for ISA accesses, the better and more likely approach would have been for ISA accesses to be buffered by the chipset, so that on the ISA side of the chipset operation is at 8MHz, while on the CPU side the interface runs at the normal CPU bus rate, with wait states inserted. This has the added advantage that a pipelined or multi-pipelined CPU such as the Pentium can continue advancing its pipelines at full clock rate while it waits for ISA bus cycles to complete.)

8/16-bit Incompatibilities

Memory address decoding for the selection of 8 or 16-bit transfer mode was limited to 128 KiB sections - A000-BFFF,C000-DFFF, E000-FFFF leading to problems when mixing 8 and 16-bit cards, as they could not co-exist in the same 128 KiB area. (Is this referring to DMA? For general memory or I/O port transfers, each individual bus cycle takes a full, independent 24-bit address with the data length (8 or 16 bits) and memory or I/O selected by the *MEM CS 16 and *IO CS 16 lines. The IBM AT technical reference manual, the original and authoritative [but not comprehensive or always thorough] definition of the AT bus, makes no reference to any constraints for mixing 8- and 16-bit cards.)

Current use

Apart from specialized industrial use, ISA is all but gone today. Even where present, system manufacturers often shield customers from the term "ISA bus", referring to it instead as the "legacy bus" (see legacy 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 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 16 MiB DMA limit (which corresponds to the full address space of the Intel 80286 CPU which was used in the original IBM AT) are likely to stick around for a while.

Starting with Windows Vista, Microsoft is phasing out support for ISA cards in Windows. Vista still supports ISA-PnP for the time being, although it's not enabled by default. However, consumer market PCs discontinued the ISA port feature on their motherboards before Windows XP was released.

ISA was the basis for development of the ATA interface, used for ATA (a.k.a. IDE) and more recently Serial ATA (SATA) hard disks. Physically, ATA is essentially a simple subset of ISA, with 16 data bits, support for exactly one IRQ and one DMA channel, and 3 address bits plus two IDE address select ("chip select") lines, plus a few unique signal lines specific to ATA/IDE hard disks (such as the Cable Select/Spindle Sync. line.) ATA goes beyond and far outside the scope of ISA by also specifying a set of physical device registers to be implemented on every ATA (IDE) drive and accessed using the address bits and address select signals in the ATA physical interface channel; ATA also specifies a full set of protocols and device commands for controlling fixed disk drives using these registers, through which all operations of ATA hard disks are performed. A further deviation between ISA and ATA is that while the ISA bus remained locked into a single standard clock rate (for backward compatibility), the ATA interface offered many different speed modes, could select among them to match the maximum speed supported by the attached drives, and kept adding faster speeds with later versions of the ATA standard (up to 100 MB/s for ATA-6, the latest.) In most forms, ATA ran much faster than ISA. Before the 16-bit ATA/IDE interface, there was an 8-bit XT-IDE interface for hard disks, though it was not nearly as popular as ATA has become, and XT-IDE hardware is now fairly hard to find (for those vintage computer enthusiasts who may look for it.) (Some XT-IDE adapters were available as 8-bit ISA cards, though the interface may never have been available on motherboards.)

A derivation of ATA was the PCMCIA specification, merely a wire-adapter away from ATA. This then meant that Compact Flash, based on PCMCIA, were (and are) ATA compliant and can, with a very simple adapter be used on ATA ports.


IEEE started a standardization of the ISA bus in 1985, called the P996 specification. However, despite there even having been books published on the P996 specification, it never officially progressed past draft status.

See also


Search another word or see single standardon Dictionary | Thesaurus |Spanish
Copyright © 2014, LLC. All rights reserved.
  • Please Login or Sign Up to use the Recent Searches feature