(top to bottom)
NIC 10BASE-5/2 NIC 56k Modem The original PC bus was developed by a team led by
Mark Dean at
IBM as part of the IBM PC project in 1981. It was an 8-bit bus based on the I/O bus of the
IBM System/23 Datamaster system - it used the same physical connector, and a similar signal protocol and pinout. A 16-bit version, the
IBM AT bus, was introduced with the release of the IBM PC/AT in 1984. The AT bus was a mostly backward-compatible extension of the PC bus—the AT bus connector was a superset of the PC bus connector. In 1988, the 32-bit EISA standard was proposed by the
Gang of Nine group of PC-compatible manufacturers that included Compaq.
Compaq created the term
Industry Standard Architecture (ISA) to replace
PC compatible. In the process, they
retroactively renamed the AT bus to ISA to avoid infringing IBM's trademark on its PC and PC/AT systems (and to avoid giving their major competitor, IBM, free advertisement). IBM designed the 8-bit version as a buffered interface to the
motherboard buses of the
Intel 8088 (16/8 bit) CPU in the IBM PC and PC/XT, augmented with prioritized interrupts and DMA channels. The 16-bit version was an upgrade for the motherboard buses of the Intel
80286 CPU (and expanded interrupt and DMA facilities) used in the IBM AT, with improved support for bus mastering. The ISA bus was therefore synchronous with the CPU clock until sophisticated buffering methods were implemented by
chipsets to interface ISA to much faster CPUs. ISA was designed to connect peripheral cards to the motherboard and allows for
bus mastering. Only the first 16
MB of main memory is addressable. The original 8-bit bus ran from the 4.77 MHz clock of the 8088 CPU in the IBM PC and PC/XT. The original 16-bit bus ran from the CPU clock of the 80286 in IBM PC/AT computers, which was 6 MHz in the first models and 8 MHz in later models. The
IBM RT PC also used the 16-bit bus. ISA was also used in some non-IBM compatible machines such as Motorola
68k-based
Apollo (68020) and
Amiga 3000 (68030) workstations, the short-lived
AT&T Hobbit and the later
PowerPC-based
BeBox. Companies like
Dell improved the AT bus's performance but in 1987, IBM replaced the AT bus with its proprietary
Micro Channel Architecture (MCA). MCA overcame many of the limitations then apparent in ISA but was also an effort by IBM to regain control of the PC architecture and the PC market. MCA was far more advanced than ISA and had many features that would later appear in PCI. However, MCA was also a closed standard whereas IBM had released full specifications and circuit schematics for ISA. Computer manufacturers responded to MCA by developing the
Extended Industry Standard Architecture (EISA) and the later
VESA Local Bus (VLB). VLB used some electronic parts originally intended for MCA because component manufacturers were already equipped to manufacture them. Both EISA and VLB were backward-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 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 resource allocations. In reality, ISA PnP could be troublesome and did not become well-supported until the architecture was in its final days. A PnP ISA, EISA or VLB device may have a 5-byte
EISA ID (3-byte manufacturer ID + 2-byte hex number) to identify the device. For example, CTL0044 corresponds to Creative Sound Blaster 16/32 PnP. 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-99 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., which was why the software compatible
LPC bus was created. 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. In late 2008, even floppy disk drives and serial ports were disappearing, and the extinction of vestigial ISA (by then the LPC bus) from chipsets was on the horizon. 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. The
AT Attachment (ATA) hard disk interface is directly descended from the 16-bit ISA of the PC/AT. ATA has its origins in the IBM Personal Computer Fixed Disk and Diskette Adapter, the standard dual-function floppy disk controller and hard disk controller card for the IBM PC AT; the fixed disk controller on this card implemented the register set and the basic command set which became the basis of the ATA interface (and which differed greatly from the interface of IBM's fixed disk controller card for the PC XT). Direct precursors to ATA were third-party ISA
hardcards that integrated a
hard disk drive (HDD) and a
hard disk controller (HDC) onto one card. This was at best awkward and at worst damaging to the motherboard, as ISA slots were not designed to support such heavy devices as HDDs. The next generation of
Integrated Drive Electronics drives moved both the drive and controller to a drive bay and used a ribbon cable and a very simple interface board to connect it to an ISA slot. ATA is basically a standardization of this arrangement plus a uniform command structure for software to interface with the HDC within the drive. ATA has since been separated from the ISA bus and connected directly to the local bus, usually by integration into the chipset, for much higher clock rates and data throughput than ISA could support. ATA has clear characteristics of 16-bit ISA, such as a 16-bit transfer size, signal timing in the PIO modes and the interrupt and DMA mechanisms. ==ISA bus architecture==