It is said that computers are digital cities; various devices working together to function as one single unit. And like cities, which require roads for transportation, computers use pathways to transmit information between components.
In the earlier days of computers, parts [like the CPU and the RAM] were not contained within a single IC board. They were mostly separated in individual cabinets. Information traveled from one cabinet to another by bundles of wires, called a busbar — which later became to be known as a bus.
There are two main designs of a computer bus. It can consist of one or multiple lanes. Each lane is a single wire connection. And how data will be transmitted will vary according to the number of lanes.
So let us now take a look at the architectures of the parallel and the serial bus.
A parallel bus uses multiple lanes to transmit information. Data is first broken down into smaller pieces which are then sent across each lane. This works well in many situations, especially, when transmitting information like a memory address.
So by now, you are probably thinking, does the number of lanes within a bus equates to its size? And the answer is both yes and no.
Even though it is fitting to say, one lane equals one bit. In modern computers where size is a factor, this method is impractical; because as the number of lanes increases, so will the area that is needed; for example, a 32-bit bus will require 32 lanes and a 64-bit will need 64 lanes.
To keep circuits small, multiplexers were implemented — this process divided, say a 32-bit address into two halves, and then transmitted them over *two clock cycles* by a 16-lane bus. This method improves the processing power, but at the same time keeps devices relatively small.
The parallel bus remains the dominant mode for transmitting information, within the computer. Components like the RAM and PCI connected devices all use parallel buses when communicating with the CPU. But, in the future, this dominance may decline due to another kind of bus.
Not all devices use multiple lanes when transmitting information. Some stream the information one bit at a time across a single lane. A bus that uses only one lane to transmit, is called a serial bus.
Initially, serial buses were slower than parallel buses and were mostly used for long-distance communications, like, in networking. At first, this choice was mainly because of the cost — it is less expensive to run just a single wire than it is to run multiple wires in parallel.
But as signal integrity and transmission speeds improve, and the fact that parallel buses are more prone to electromagnetic interference, serial buses are also now starting to show up in short range communications — which were once reserved specifically for parallel buses.
Currently, serial buses can be found in connections, like, PCI express, USB, and SATA. And this list will continue to grow for the foreseeable future.
The design of the computer bus has changed over the years. Which had started out as bundles of wires, are now integrated connections within microprocessors and computers’ motherboards.
The system bus:
Before the 1980s, major components in a computer were connected together by a single bus, called the system bus. To reduce cost and space, the system had three functions:
A data bus — which transmitted data.
An address bus — used for finding specify locations, like within memory.
And a control bus — which dealt with operations, for example, reading and writing.
As integrated circuits continued to get smaller and smaller, faster and more efficient bus architectures were implemented. But though the system bus has been phased out (for the most part), it is still being used in certain embedded systems.
By the mid-1980s, CPUs started to use the northbridge and the southbridge, also known as the chipset, to communicate with components. This arrangement gave certain components priority over others.
The northbridge was connected directly to the CPU by the front side bus, also known as the FSB. High-speed components which required the highest priority, like, the RAM and the video card, were connected by their individual buses to the northbridge.
The southbridge, one the other hand, dealt with the shower, or lower priority, connections; like USB, SATA, and ethernet. This can be illustrated by the fact that the southbridge was not directly connected to the CPU, but instead, it was connected to the northbridge by the internal bus.
The arrangement of most to least importance made systems more efficient and much faster.
So buses are important to computers, as roads are to cities. Their present create a unified environment that can function as a single unit. And as systems continue to evolve so will the architecture of the bus.