Bus Structures
What Is A
Bus?
From lesson #4,
you'll remember that there are two buses on every
motherboard. The Internal bus is the wiring that
connects the CPU, memory, and all the other components on the
motherboard. The External bus connects all the
peripherals and attachments to the motherboard.
Buses are defined not
only by their placement but by their width. The easiest
analogy for this is a multi-lane highway; The more lanes you
have, the more traffic that can pass through per time
period. The larger the bus width, the more information
that can be transferred in a specific time period. A
32bit data bus can transmit 32 bits of data across the bus at
any one time, where an 8bit data bus can only transmit 1/4th
of the data.
Buses are also under
speed constraints as well. Going back to our highway
analogy, the speed limit on the highway states how fast
traffic moves. On a bus, the speed is measured in
megahertz. (MHz) The only difference between a highway
speed limit and a bus speed is that all traffic on a bus
travels at exactly the speed limit.
The Internal
Bus
The internal bus is
also known as the system bus, and is made up of 4 distinct
parts. Each part fulfills a different function.
(The Internal bus is often referred to as the system bus.
If it is referring to the system bus, they are referring to
the internal bus.)
Power |
The power bus is the wires that provide
electrical power to every part of the
motherboard. |
Control |
The control bus sends out timing signals so that
other components on the motherboard can stay in time
with the CPU. |
Address |
The address bus is used for sending information
on memory addressing. This information tells the
components on the motherboard where to find instructions
and data in memory. |
Data |
The data bus does exactly what it sounds
like. It is responsible for transmitting the
actual data between the system
components. |
When most people talk
about buses in terms of computers, they are referring to the
data bus. They are also talking about the address bus,
because the two are tied together. The address bus sends
the information about where the data is, and the data bus
transfers the information. Without one bus, the other
could not function. In other words, address bus is the
bus driver, and the data is the passenger. Address bus
information contains the source and destination of the
information, directing it to it's proper location.
The External
Bus
The external bus, or
expansion bus, allows peripherals to connect and communicate
with the motherboard and it's components. Where the
wiring on the bottom of the motherboard showed the internal
bus, the connectors on the motherboard where pieces plug in
represent the external bus.
The most common form
of external bus connector is the expansion slot. This is
a row of spring-held copper connectors that make contact with
expansion cards when they are inserted into the slot.
There are several expansion slot types, listed
below;
8-bit
Bus |
This is the
oldest of the bus systems, and isn't used on computers
anymore. It supports 8 Interrupts and 4 DMA
channels, all pre-assigned. |
Industry
Standard Architecture (ISA) |
This was the
first 16-bit bus produces, and was used on almost all AT
motherboards. 8-bit busses and ISA where very
similar, except the ISA boards had an additional set of
circuits that extended into a larger connector.
ISA had 16 interrupts and 8 DMA channels, and used
jumpers and DIP switches to the proper assignment of
IRQ's and and/or DMA's. The ISA system allowed the
bus clock from the CPU clock, allowing the data bus to
run at a slower speed than the the rest of the bus
systems. ISA has almost completely disappeared
from modern computers. |
Micro-Channel Architecture (MCA) |
MCA
introduced the first 32-bit bus structure, developed by
IBM for the PS-2 computer. It featured bus
mastering and a 10 MHz clock speed, and was similar in
shape to the ISA card, except it had twice as many
channels in the same area. It also allowed for
software-configurable IRQ and DMA assignment. MCA
is not used in modern computers. |
Extends
ISA (EISA) |
EISA was an
improvement on ISA in order to compete with MCA.
It only had a 8MHz bus clock in order to remain
compatible with order ISA equipment, but featured
software-configurable IRQ and DMA assignments, and a
32-bit data bus. EISA also had more available I/O
addresses. EISA is also dying out as an option on
modern computers. |
Intelligent Drive Electronics (IDE) |
This
technology is used almost exclusively for fixed-disk
controllers. Extended IDE (EIDE) allows up to 4
fixed disks to be installed into two separate IDE
channels, allowing faster access times and more drive
options. Most modern computers use an EIDE hard
drive controller built into the
motherboard. |
VESA Local
Bus (VLB) |
VLB was an
addition to the 486 computer architecture that tied the
clock speed of the CPU to the data bus. It was
essentially an extension of the ISA slot that was built
right into the motherboard's system bus. The VLB
expansion card had an ISA-style connector and a longer
connector added on the end. It most mostly used
for Video controllers, although some proprietary
manufacturers developed other cards using this
technology. There are rare instances where
586-style boards contained a VLB slot, but were mostly
used by Cyrix and AMD extended 486-style
processors. VLB was never used after the release
of Pentium processors and motherboards. |
Peripherical Component Interconnect
(PCI) |
PCI allows a
local bus support for either 32-bit or 64-bit buses,
allowing it to be used on either Pentium or 486
systems. The PCI bus again separated the bus clock
from the CPU clock, all PCI expansions cards contained a
bridging circuit that allowed the bus to run
independently. It has a 33 MHz bus speed,
introduced Plug-N-Play, requiring no jumpers and
Operating system-configurable IRQ's, DMA's, and I/O
Addresses. All modern computers, including
Macintosh, utilize some format of the PCI bus
architecture. |
Universal
Serial Bus (USB) |
USb is a new
serial connection system that allows up to 127 devices
to connect using a two serial buses. USB devices
are hot-swappable, meaning that they can be plugged and
unplugged from the system without turning off the
system. They are used for everything from mice and
keyboards to scanners and modems, and are used on almost
all modern motherboards. Another format of USB,
called FireWire, is similar to USB, but was invented
previous to USB and is capable of faster speeds.
The FireWire connection was first used by Apple
computers, and is just now starting to gain industry
recognition. |
Advanced
Graphics Port (AGP) |
AGP ports are
the newest bus systems available today. They
combine minimum 66MHz bus speeds with 64 bit bandwidth
to produce high transmission rates PCI is not capable
of. The ability to double and quadruple the bus
speed allows speeds of up to 266MHz out of these slots,
providing much greater ability for the port to perform
advanced processing, like 3d-Texture Mapping and
High-Resolution graphics. AGP is available on all
motherboard produced today, but is strictly used for
video card
installations. |
Every external bus
slot carries a certain number of signals through it's copper
pathways to the external bus. Some of these signals are
used for power, some for IRQ requests, and some connect
directly to the data and address bus. Here are the most
important connections to know.
Clock
Signal |
The clock
signal is used to provide timing information in order
for the bus clock to synchronize it's transmissions with
the system buses. |
Interrupt
Request (IRQ) |
Sometimes the
external bus must carry a request to the CPU that needs
urgent or special attention. This is called an
Interrupt Request, or IRQ. Each external bus
device is given an IRQ value so that the CPU knows which
IRQ's are coming from which devices. IRQ's can be
shared between devices, but only if the two devices
NEVER attempt to use the Interrupt at the same
time. |
Direct
Memory Access (DMA) |
DMA allows
certain types of instructions to totally bypass the
processor and access main memory themselves.
Unlike IRQ's, two devices can not share a DMA channel,
although current system buses provide more DMA channels
than were previously available. Hard drives and
video cards use DMA extensively, mainly because they
have on-board processors that don't necessarily require
CPU access. |
Input/Output Address (I/O) |
As opposed to
an IRQ sending an interrupt to the CPU, I/O addresses
allow the processor to directly access the device.
Each expansion port is identified by a unique I/O
address, which lets the CPU send instructions directly
to the device. The device then responds through
it's DMA channel or the data bus. No two devices
can share the same I/O address. |
Bus
Mastering |
Sometimes a
device requires the ability to talk directly to another
device. This is called bus mastering, and is
controlled by a bus mastering chip installed directly on
the expansion device. |
Plug-And-Play
With the advent of
the PCI architecture came a new standard called Plug-and-Play,
or PnP. This allowed devices to become
self-configurable, meaning no jumpers, DIP switches, or
software had to be changed to install the device. As the
name states, you just plugged in the device and began
playing.
There are several
requirements and standards associated with PnP. The
BIOS, operating system, motherboard, chipset, and device must
be PnP compatible. Windows 95 and 98 are fully PnP
compatible, where Windows NT is only partially
compatible. All PCI and AGP devices are PnP, but not ISA
devices aren't necessarily and VESA Local Bus devices never
were. Remember that all PCI cards are PnP,
but not all PnP cards are PCI.
Bus Widths In
Relation To Architectures
Use the following
table to memorize what architectures are associated with each
bus width.
Bus |
Bus Width |
Bus Speed |
Configuration |
8-Bit |
8 Bit |
8MHz |
Jumpers and DIPs |
ISA |
16 Bit |
8MHz |
Jumpers and DIPs |
MCA |
32 Bit |
10MHz |
Software |
EISA |
32 Bit |
8MHz |
Software |
VesaLocalBus (VLB) |
32 |
Processor Speed |
Jumpers and DIPs |
PCI |
32/64 |
Processor Speed |
Plug-and0Play |
AGP |
64 |
Processor Speed |
Plug-and-Play |
PCMCIA
Another type of bus
used on portables and laptops is a Personal Computer Memory
Card International Association bus, called PCMCIA. (Said
Pick-em-See-ya) It uses credit card-sized cards to offer
expansion services such as Memory, Fixed Drives, NICs and
modems. There are 3 types of PCMCIA slots, and they have
the following properties.
-
Type I - 3.3mm
Thick, Used for memory upgrades.
-
Type II - 5mm
Thick, Used for Modems and Network Interface Cards
-
Type III - Up to
10.5mm think, and used for hard drives and CD-ROM
drives.
Remember that PCMCIA
cards are hot-swappable.
SCSI
Small Computers
System Interface, or SCSI (Said Skuzzy) is another type of bus
used by hard drives, printers, CD-ROM drives, and
scanners. We'll discuss SCSI in depth in later
chapters. Remember that SCSI allows up to 8 devices
daisy-chained in sequence through a single connection, and
that SCSI chains must be terminated on both
ends.
|