Overview of Computer Buses Explained
Overview of Computer Buses Explained
General introduction
Introduction to the concept of bus ...
2
THE MAIN BUSES OF A COMPUTER
3
The processor bus
The memory bus
.......3
The address bus and the control bus
3
The data bus
THE FIRST ENTRY-EXIT BUSES :…………………………………………………………………………...4
The ISA bus (Industry Standard Architecture) ………………………………………………………………….………4
The MCA bus (Micro Channel Architecture) ... …………………………………………………………………….………5
The EISA bus (Extended Industry Standard Architecture) ...
…….5
LOCAL BUSES The E/S buses presented so far have ONE common point .........................…...6
LOCAL BUSES ……………………………………………………………………………………………………………..……
6
The local bus VESA (VESA local bus or VLB)
…………………………………………………………………………....6
The PCI (Peripheral Component Interconnect) bus ………………………………………………………………....8
The AGP bus (Accelerated Graphics Port) ...
9
Main characteristics of the AGP bus
………………..10
SUMMARY
1
THE ANNEX BUSES
....11
Note: ........................................................................................................................
....11
The USB (Universal Serial Bus) ...
The IEEE 1394 bus (Firewire) …………………………………………………………………………………………………13
History…………………………………………………………………………………………………………………………...14
First generation..............................................................14
Minis and micros
Second generation
Third generation
Fourth generation
Examples of internal information buses...................................................18
Parallel
In series
1
2
General introduction
There is no more notable work of electronics and computer engineers than the
development of various buses. Thanks to the development of this type of architecture, we
Today we can have in our hands, mobile phones and computers.
with very large memory capacities and at the same time easy to execute with
almost instantaneous functions. A mobile device, on its printed circuit boards, displays
truly extraordinary bus designs, transforming them into real tools
we cannot miss today.
In this article, we will explain what buses are in computing and we
we will also detail the different classes that exist for each of them and their
different functions. We will also talk about the evolution of these buses and how it reflects
in their different generations.
2
3
The memory bus ensures the transfer of data between the processor and memory.
main (RAM). The transfer rate of information that passes through the memory bus is
well below that of the information conveyed by the processor bus, which requires the
setting up a memory controller tasked with verifying the interface between the processor bus
the fastest and the slowest RAM. Note that the interface of the main memory bus is
always identical to that of the bus processor: thus, on a system equipped with a processor
64 bits (Pentium type), the memory bus is also 64 bits; this number designates the size
of a memory block. If you are using a 64-bit Pentium processor, each memory block
Added to the RAM during any operation must necessarily be 64 bits. Hence some
constraints when installing RAM modules in your computer in
function of their characteristics: SIMM 32 bits, DIMM 64 bits, etc.).
The address bus and the control bus are in fact subsets of the buses.
processor and bus memory. The latter are constructed from different specialized lines,
some of them are responsible for conveying addresses, others for data or
commands; the address lines constitute the address bus, the command lines
determines the command bus (the processor bus of a Pentium is for example formed
32 address lines, 64 data lines, and a few control lines:
3
4
The address bus indicates the memory address or the address of another bus used during a
data transfer within the computer. The width of the address bus conditions
also the maximum amount of RAM that the processor can address (an address bus
a width of 16 bits thus allows the processor to address 2^16 = 65536 addresses in
memory).
The command bus carries all the signals used to synchronize the different
activities that take place in the functional units of the computer: clock signals,
read/write signals, interrupt signals, etc.
The data bus (or input/output bus) ensures the transmission of data to be processed.
among the different elements of the computer; in this regard, it is just like the address buses
and commands a subset of the processor and memory buses (remember the 64
data lines of the Pentium processor bus). The I/O bus allows not only
components on the motherboard to communicate data with each other, but
also to add additional devices using extension cards; to this
In effect, the I/O bus is characterized by a number of connectors (or slots).
The extension of a computer's capacity through the addition of peripherals is crucial.
because basic systems are unable to meet all user expectations:
essential components can then be attached to the I/O bus connectors.
such as graphics cards, sound cards, network interface cards or adapters
SCSI.
4
5
day successively, with a simple reason: the growing need for performance always
most important computers, related to the emergence of faster processors, software
more demanding and growing multimedia needs.
That's why in 1987, IBM tried to impose a new standard: the MCA bus, superior.
All points on the ISA bus. The MCA bus is a 32-bit bus, operating at 10 MHz, which offers
great ease of configuring connected devices, without jumpers or micro-
5
6
switches. Even better, it also supports bus mastering, meaning the acquisition of
bus control by any device connected to it for transferring
information to another component, without requiring the intervention of the central processor,
which relieves him of so much work and allows him the leisure to take care of other things.
As a counterpoint, the MCA bus is perfectly incompatible with the ISA standard.
that the numerous expansion cards designed for the ISA bus do not work on the
MCA systems. Finally, IBM required royalties from users of the new
model, which led to the rejection of the MCA bus by the entire industry and the
Development of the concurrent EISA bus.
The EISA bus (Extended Industry Standard Architecture):
It appeared in September 1988 as a response to the introduction of the MCA bus by IBM.
the way he planned to use it.
At the origin of the EISA bus, there are nine competing manufacturers of IBM: AST Research,
Compaq, Epson, Hewlett-Packard, NEC, Olivet, Tandy, WYSE and Zenith Data System. The bus
EISA is a 32-bit bus like IBM's MCA, evolving at 8.33 MHz and compatible with
the ISA standard: it adds 90 new connections to a classic ISA connector without
these conditions, the ISA cards can still be used.
with EISA extension connectors. This new format also uses a system
software similar to that of the MCA bus to automate the configuration of the cards
of extension without resorting to jockeys or switches. New development, the bus
EISA integrates for the first time the possibility of sharing an IRQ by several
devices.
LOCAL BUSES The input/output buses presented so far have a common point:
They are relatively slow. This restricted speed is a legacy of the early PCs in
which bus processor and I/O bus shared the same clock frequency of 8 MHz.
The first problems actually appeared in the early 1990s with the
success of graphical interfaces such as Windows: these require processing
of such a large number of video data that the I/O bus has become the bottleneck
the most important of information systems
What is the point of having a processor running at 66 MHz if the transfer rate of...
data on the I/O bus cannot exceed 8 MHz? The solution to this dilemma has been found in
moving some bus extension connectors to a place where they could
benefit from the high speed of the processor bus, somewhat like cache memory
external. This architecture is called a local bus.
LOCAL BUSES:
The I/O buses presented so far have a common point:
They are relatively slow. This restricted speed is an inheritance from the early PCs.
which processor buses and I/O buses shared the same clock frequency of 8 MHz.
6
7
The first problems actually appeared in the early 1990s with the
success of graphical interfaces such as Windows: these require processing
of such a large amount of video data that the I/O bus has become the bottleneck
the most important of information systems
- What is the point of having a microprocessor clocked at 66MHz if the transfer rate...
data on the I/O bus cannot exceed 8 MHz?
The solution to this dilemma was found by moving some extension connectors from the
I/O bus to a location where they could benefit from the high speed of the processor bus,
a little like external cache memory. This architecture is named
local bus
The VESA bus is a 32-bit bus that can theoretically operate at a maximum frequency of
66 MHz. In reality, the electrical characteristics of its connector limit the frequency.
execution at 40 or 50 MHz and, in practice, it turned out that the use of a VL-Bus at a
speeds above 33 MHz are likely to cause numerous problems. By
consequently, 33 MHz has become the maximum acceptable speed for this bus. Furthermore, the
the structure of the VL-Bustel as it was originally designed makes it inseparable from the bus
486 processor. Although the VL-Bus can be adapted to other processors (y
7
8
including the 386 or the Pentium, compatibility remains difficult to achieve and it is linked
with a 486 that the VL-Bus offers the best performance.
Physically, the VESA bus is an extension of the slots used for the base system.
the computer: on a configuration based on the ISA bus, for example, the VL-Bus is found
in the form of an extension of the existing 16-bit ISA connectors.
8
9
The width of the PCI bus is fixed at 32 bits and its operating frequency at 33 MHz.
even if the designation for a 64-bit PCI bus at 66 MHz already exists (these new
Specifications will certainly be introduced by default when justified by the cost of
modifications of the PCI bus to increase its bandwidth). Compared to the VESA bus, the
The PCI bus has the following characteristic:
Like the VL-Bus, the PCI bus supports bus mastering. Furthermore, while the
The frequency of the VL-Bus is intrinsically linked to that of the processor, and that of the PCI bus is...
independent.
*When the VL-Bus is active, it supplants the other local buses and forces the processor to
stop its activities; this is not the case for the PCI bus which operates in parallel with the bus
processor: when the processor sends data to a device,
these are stored in the PCI bus controller's buffer memory; the processor
can then be dedicated to other activities while the controller takes care of routing
the information on the concerned device. Conversely, the devices can
continue to transmit data via the PCI bus even when the processor is active.
One of the major characteristics of the PCI bus is that it constitutes the model of the
Intel Plug & Play (PnP) specifications: this means that expansion cards in the format
PCI do not have riders or switches and they are automatic.
configured via software. Since 1995, most PC systems include a PnP BIOS
which automatically ensures the configuration of devices compliant with this standard.
9
10
system: 3D. The AGP was therefore developed and introduced by Intel starting in 1997 in the
but to address the deficiencies of the PCI bus regarding video.
This leads to the following first observation: the AGP is not a 'bus' in the true sense of the term.
term, since a bus must be able to support multiple I/O peripherals, which
this is not the case for the AGP which only supports one; in reality, it is a 'port', that is to say
to say an independent and direct connection between the processor, the RAM, and the card
graph of the computer system.
The AGP also has the ability to directly access the central memory of the system.
(without intervention from the processor, this is therefore a DMA - Direct Memory Access)
to store a surplus of data when the graphics card memory is
saturated. Even better, the AGP benefits from DIME (Direct Memory Execution) technology,
which allows performing texture calculations directly in main memory before
to load them into the video memory of the card. However, note that the DIME solution
is not faster than the execution of operations in the video memory of the adapter
Graph: first of all because the special bus that connects the video memory to the processor
The graphics on the map are much faster than the AGP; then because the central RAM of
10
11
The computer is generally 4 to 6 times slower than video memory, which slows it down accordingly.
transformations of textures that are performed. The DIME technology is therefore primarily
interesting for configurations with a graphics card that has little
video memory.
The AGP works in bus mastering mode, and another interesting feature is that it can
transmit several requests in succession using the pipelining technique. While the
PCI protocol requires that each request be followed by an acknowledgment of receipt for
to be able to send the following request, the AGP is not obliged to wait for a response from the
processor to send multiple requests simultaneously.
To complete this non-exhaustive list of the capabilities of the AGP, it should be noted that it
incorporates the SBS technology (Side Band Signal Ling, or Side Signaling Band), which
refers to the use of a set of dedicated circuits that add to the AGP: in addition to the 32 bits
In the bus, an additional 8-bit sideband allows the AGP card to send
new requests receiving the data emitted by the motherboard following the requests
previously issued. The SBS also carries a synchronization reference that makes
match the operating modes (1X, 2X, 4X, etc.) of the AGP with those of the card
graphic.
SUMMARY:
11
12
The PC Card bus (formerly PCMCIA): this interface was designed in 1989 by a consortium of more
of 300 computer manufacturers: the Personal Computer Memory Card International
Association (PCMCIA), in order to equip portable computers with the same capabilities
of extension than office machines. The PCMCIA has undertaken to standardize the cards
of portable machines extension in credit card format, with the dimensions
following: 54 x 85 mm for a 68-pin connector; three standard thicknesses have
also adopted, corresponding to as many types of cards:
12
13
Note:
There is a type IV card with a thickness of 15.5 mm, but it is not recognized by the
PCMCIA consortium.
Several modifications of the PC Card standard emerged between 1990 and 1994, which is
stayed during this period a relatively slow 16-bit interface, at the bandwidth
limited bandwidth (2 MB/s), unable to support bus mastering and the 26 lines of
address bus allowed to manage only 64 MB of RAM at most; the main
The advantage of the PC Card bus is primarily the small size of the connectors and cards.
of extension as well as the ability to hot plug and unplug devices.
In 1995, a new version of the PC Card standard was introduced, under the name Card
Bus: this is a 32-bit interface that is much more efficient, operating at 33 MHz.
The supporting bus made me assert that the voltage has been reduced to 3.3V (instead of 5V).
13
14
History
First generation
The first computer buses were bundles of cables that connected the
memory and the peripherals of the computer. Anecdotally referred to as the
14
15
digital trunk
omnibus. Almost always, there was a bus for memory and one or more buses
separated for the peripherals. These were accessible by instructions
separate, with completely different schedules and protocols.
One of the first complications was the use of interrupts. The early
computer programs were performing I/O while waiting in a loop for the
The device should be ready. It was a waste of time for the programs that had
other tasks to accomplish. Furthermore, if the program attempted to perform these others
tasks, the verification of the program can take too much time, resulting in a
data loss. The engineers have therefore ensured that the devices
interrupt the CPU. Interrupts had to be prioritized, as the processor
can only execute code for one device at a time, and some
Some devices are more urgent than others.
To ensure modularity, memory and I/O buses can be combined into one.
unified system bus. In [7]this case, a single mechanical and electrical system can be
used to connect together several of the system's components, or in
in some cases, all.
15
16
Digital Equipment Corporation (DEC) has further reduced the cost of mini-computers
mass-produced and mapped the devices in the memory bus, so that the
input and output devices seemed to be memory locations.
This was implemented in the PDP-11 Unibus around 1969. [8]
For example, a disk drive controller would signal to the CPU that new
the data was ready to be read, how much the CPU would move the data in
reading "the memory location" that corresponded to the disk drive. Almost all
the first microcomputers were built this way, starting with
the S-100 bus of the Alaire 8800 computer system.
16
17
These simple bus systems had a serious drawback when they were
used for general-purpose computers. All the bus equipment had to communicate.
at the same speed, as it shared a single clock.
The increase in processor speed becomes more difficult, as the speed of all
the devices must also increase. When it is not practical or
It is economic to have all the peripherals as fast as the CPU, the CPU must either
entered a state of waiting, either working temporarily at a clock frequency
slower, to communicate with the other peripherals of the computer.
Although acceptable in embedded systems, this problem has not been tolerated.
for a long time in versatile and user-expandable computers.
Such bus systems are also difficult to configure when they are
built from standard commercial equipment.
Second generation
17
18
the current of this problem is that video cards quickly surpass even the
the latest bus systems like PCI, and computers began to
include AGP just to drive the video card. In 2004, AGP was again outdated
by high-end video cards and other peripherals and was replaced by the
new PCI Express bus.
More and more external devices have also started to use their own
bus systems. When disk drives were first introduced
Sometimes, they were added to the machine with a card connected to the bus, which
explain why computers have so many slots on the bus. But in
The 1980s and 1990s saw the introduction of new systems such as SCSI and IDE.
to meet this need, leaving most of the locations of the systems
modern lives. Today, there are probably about five different buses in the
typical machine, supporting various devices.
Third generation
Third generation buses have been appearing on the market since 2001.
environment, notably Hyper Transport and Infini Band. They also tend to be
very flexible in terms of physical connections, allowing them to be used in
the time as internal buses and to connect different machines to each other. This
can lead to complex issues when you try to respond to
different requests, a large part of the work on these systems concerns the
software design, as opposed to the hardware itself. In general, these buses of
third generation tend to resemble more a network than to the
original concept of a bus, with a higher protocol overhead than
first systems, while allowing multiple devices to use
the bus at the same time.
Fourth generation
The Compute Express Link (CXL) is an open interconnection standard for the
high speed CPU-to-device and central unit to memory, intended to accelerate the
next generation of high-performance data centers.
18
19
Parallel
19
20
In series
1 thread
HyperTransport
I²C
PCI Express or PCIe
Serial ATA (SATA), hard disk drive, SSD drive, disc drive
optical, device connection bus for tape drive
Bus SPI (Serial Peripheral Interface)
UNI / O
SMBus
In series
Camera link
Bus CAN ("Controller Area Network")
eSATA
Express Card
Field bus
Interface IEEE 1394 (FireWire)
RS-232
RS-485
Thunderclap
USB
20
21
Future bus
Infini Band
External PCI Express cabling
Quick Ring
Evolutive Consistent Interface (ECI)
Small Computer System Interface (SCSI), device connection bus
for hard disk drive and tape drive
Serial Attached SCSI (SAS) and other serial SCSI buses
Thunderclap
Yap bus, a proprietary bus developed for the Pixar Image Computer
External links
See also
Electronic portal
Address decoder
Bus conflict
Bus error
Mastery of the bus
Communication endpoint
Control bus
Crossbar switch
Memory address
Memory bus (data bus)
Frontal bus (FSB)
External Bus Interface (EBI)
Harvard architecture
Master / slave (technology)
Network on chip
List of device bandwidths
List of network buses
Software bus
21
22
References
22