More on 'the
mother of all boards'
Last
week I men- tioned that the
motherboard is a sandwich of printed circuits that act like roads
and highways that you find in a city, connecting places and providing
a medium of transport between them. These 'roads' are known as "system
buses" because they carry electronic data in binary form that
in turn are represented by different voltages in the circuits. Strictly
as a comparison, these highways also have means of regulating traffic-devices
that act like traffic lights for example even though their workings
are more complex and dynamic than those of actual traffic lights.
I also mentioned that the motherboard provides the infrastructure
for the various components of the machine to function effectively.
So understanding how the motherboard works is crucial if you want
to get a good understanding about how the computer works in general.
System buses
While providing
services such as supporting basic input and output functions, the
system buses play a critical role in the performance of your computer.
I also have to mention here that the defining component of a motherboard
is its chipset - two prominent processor chips on the motherboard
that are termed as the 'north bridge' and the 'south bridge'. There
are many other components that form the motherboard but this week
we will focus our discussion on system buses.
The components
inside your computer talk to each other in various different ways.
Most of the internal system components, including the processor,
cache, memory, expansion cards and storage devices, talk to each
other over one or more "buses".
A bus, in computer
terms, is simply a channel over which information flows between
two or more devices (technically, a bus with only two devices on
it is considered by some a "port" instead of a bus). A
bus normally has access points or places into which a device can
tap to become part of the bus, and devices on the bus can send and
receive information from other devices. The system buses can be
divided physically as internal buses (those printed onto the motherboard
for communication among internal devices) and external buses (interfaces
to secondary devices which are not part of the motherboard). All
these data buses can also be categorised as 'serial' or 'parallel'
buses as well, but we will come to that later.
You may remember
our discussion about processors, where we discussed the three main
components of the processor as the Arithmetic/Logic Unit (ALU),
Control Unit (CU) and Memory. As a matter of fact, even though the
processor itself contains a little bit of its memory within it (this
is known as 'Level 1 Cache Memory' and since it is inside the processor
itself, it is very fast, but...), most of the computer's memory
is outside the processor and plugged into the motherboard - yes
I am referring to Random Access Memory (RAM). There are many types
of RAM and sometimes these different types function differently
(more on this later). So since these memory units are outside the
processor, it is the motherboard that provides the data link between
the processor and RAM and this is known as the "Front Side
Bus" (FSB) - one of the more important buses on the motherboard.
As you already
know, modern processors can process enormous amounts of data at
super-fast speeds, but it is a very difficult task to make the computer
memory act as fast as the processor and transport data at such high
rates. In other words, the processor could be capable of processing
more data than what the memory can provide in a given time which
could result in the processor being idle most of the time with nothing
to do while it waits for more data to come in and as a result a
lot of processor time being wasted. This would look a lot like a
typical traffic jam on a busy street.
So to solve
this problem, we have to make the memory run faster and enable fast
data rates between the memory and the CPU. This is where the FSB
comes in to provide faster data rates between the memory and the
CPU by increasing the speed and capacity of data flow. Take a highway
for example and think of how we can enable more traffic to flow
in a given period of time. Now consider the two types of data buses
- 'serial' and 'parallel'. One way would be to increase the number
of lanes in the highway so that more vehicles could move through
and this is essentially what parallel system buses attempt to do.
When it comes to electronic data, we can provide parallel wires
and thus increase the data flow. The other way to increase the flow
of traffic is to make the vehicles move faster and faster. This
means to increase the speed at which data flows through the wires
and one way of doing this is by increasing the frequency of the
data bus and theoretically this method can be applied to both serial
and parallel busses. You may wonder then as to "why not have
parallel busses that functions at high frequency?" In practice
however, this is not possible due to issues such as 'interference'
and 'noise' in the medium which I will explain when we talk about
networks.
Even though
'increasing the number of lanes' was a popular option of increasing
the data rates in the past, recent experiments and research in data
communication technologies suggest that the way to progress is through
serial buses for increased data rates. As a result, serial buses
such as USB (Universal Serial Bus) and 'Firewire' have become very
popular as they provide fast data rates.
There is a
lot more to be learnt about the motherboard as this discussion continues
(in fact we haven't discussed the most important parts yet). Until
then, write in with your ideas and questions to technopage.
|