The ISA bus

The ISA bus

Since about 1984, standard bus for PC I/O functions has been named ISA (Industry Standard Architecture). It is still used in all PC's to maintain backwards compatibility. In that way modern PC's can accept expansion cards of the old ISA type.

  • ISA was an improvement over the original IBM XT bus, which was only 8 bit wide. IBM's trademark is AT bus. Usually, it is just referred to as ISA bus.
  • ISA is 16 bit wide and runs at a maximum of 8 MHz. However, it requires 2-3 clock ticks to move 16 bits of data.
  • The ISA bus has an theoretical transmission capacity of about 8 MBps. However, the actual speed does not exceed 1-2 MBps, and it soon became too slow.
The ISA bus has two "faces" in the modern PC:
  • The internal ISA bus, which is used on the simple ports, like keyboard and serial or parallel ports.
  • As external expansion bus, which can be connected with 16 bit ISA adapters. ISA-slots is especially used with the common 16 bit sound boards.

The problem with the ISA bus is partly its narrow width. It can not transfer enough bits at a time, and partly its lack of "intelligence." The lack of intelligence means that the CPU controls the data transfer across the bus.

The CPU can not start a new assignment, until the transfer is completed. You can observe that, when your PC communicates with the floppy drive (the LED on the floppy drive drive goes on), while the rest of the PC is waiting. That is the fault of the ISA bus. The ISA bus can be a tease, when you install new expansion cards (for example a sound card). Many of these problems derive from the tuning of IRQ and DMA, which must be done manually on the old ISA-bus.

Every component occupies a specific IRQ and possibly a DMA channel. That can create conflict with existing components. Read module 5 about expansion cards and these problems. An illustrated Guide to I/O-busses MCA, EISA and VLB In the 80's, a demand developed for busses more powerful than the ISA. IBM developed the MCA bus and Compaq and others responded with the EISA bus. None of those were particularly fast, and they never became particularly successful outside the server market. MCA IBM's top of the line bus from 1987 is named Micro Channel Architecture. Contrary to ISA, MCA is patented, and IBM demanded high royalty fees, when other PC manufacturers wanted to use it. Thus it never became a great success, despite its advanced design.

It was a classic example of poor marketing strategy. The MCA bus is 32 bit wide and "intelligent." The cards configure themselves with respect to IRQ. Thus, they can be installed without adjustments of jumper switches or other features. The MCA bus is also relatively fast with transfer rates of up to 40 MBps in 32 bit mode at 10,33 MHz. MCA requires special adapters. There have never been too many adapters developed, since this bus is by and large used only in IBM's own PC's.

EISA EISA is a bus from 1988-89. It is designed by the "Gang of Nine:" the companies AST, Compaq, Epson, Hewlett-Packard, NEC, Olivetti, Tandy, Wyse and Zenith. It came in response to IBM's patented MCA bus. EISA is intelligent with bus mastering, divided interrupts and self configuration. It is 32 bit wide, and runs at 8 MHZ. But, like the MCA, it did not have great success. EISA is compatible with ISA in the sense that ISA adapters can be installed in EISA slots. The EISA bus is still used in many servers.

Vesa Local Bus This Bus called VLB for short. It is an inexpensive and simple technology. This bus only achieved status as an interim phenomenon (in 1993-94). VLB was widely used on 486 system boards, where the system bus runs at 33 MHZ. VLB runs directly with the system bus. Therefore, data transfer is at CPU speed, synchronous and in width. The problem with VLB was compatibility. Adapters and system system boards would not always work together. Vesa is an organization with about 120 members, mostly monitor and graphics card manufacturers. Therefore, most VLB cards were video cards.

The PCI bus

The PCI is the nineties high speed bus for PC's. PCI stands for Peripheral Component
Interconnect. This bus is made by Intel. It is used today in all PC's and other computers.
The PCI is actually 32 bit wide, but in practice it functions like a 64 bit bus. It has a maximum
transmission capacity of 132 MBps. PCI is the most advanced (and, most expensive) bus.

According to the specifications - not in practice, it can have up to 8 units with a speed up to 200 MHZ . The bus is processor independent. Therefore, it can be used with all 32 or 64-bit
processors, and it is found also on other computers than PC's. It is also compatible with the ISA bus, in that the PCI bus can react on ISA bus signals, create the same IRQ's, etc.
The PCI bus is buffered in relation to the CPU and the peripheral components. This means,
that the CPU can deliver its data to the buffer, and then proceed with other tasks.

The bushandles the further transmission in its own tempo. Conversely, the PCI adapters can also transmit data to the buffer, regardless of whether the CPU is free to process then. They are placed in a queue, until the system bus can forward them to the CPU. Under optimal
conditions, the PCI bus transmits 32 bits per clock tick. Sometimes, it requires two clock ticks. Because of this, the peripheral PCI units operate asynchronous .

Therefore, the PCI (contrary to the VL bus) is not a local bus in a strict sense. Finally, the PCI bus is intelligent relative to the peripheral components, in that Plug and Play is included in the PCI specifications. All adapter cards for the PCI configure themselves. Plug and Play is abbreviated PnP.

On modern system boards, the PCI bus (like ISA) has two "faces:"

  • Internal PCI bus, which connects to EIDE channels on the system board.
  • The PCI expansion bus, which typically has 3-4 slots for PCI adapters.
The PCI bus is continuously being developed further. There is a PCI Special Interest Group,
consisting of the most significant companies (Intel, IBM, Apple, and others), which coordinate
and standardize the development. It has been announced, that PCI should be developed with a
higher bus speed (66 MHZ) and greater width (64 bit). At the moment, it looks like alternative
busses will be marketed. An example is the high speed AGP video bus (Accelerated Graphics