Data needs to move around the computer, for example:

The way that data is moved from one place to another is via a 'bus'.

A 'bus' is a set of wires or copper tracks that are built into the motherboard. 

A bus usually contains between 1 to 64 wires (or more), the number of wires equals the number of  'bits' that can be transferred in one clock cycle (see clock speed page).

An 8 bit bus has 8 wires - it can transfer 8 bits in one go, with 1 bit on each wire.

A 16 bit bus can transfer 16 bits in one cycle - 1 bit per wire.

Current PCs have 32 bit buses and the newer generation are going to use 64 bit wide buses.

To improve computer performance there are two approaches - use a wider bus (more wires) so that it can transfer more information per cycle, and/or use a bus that is designed to run at a faster rate.

There are specialised buses inside the computer. For example the AGP bus allows very fast graphics cards to be used.

Another very recent innovation is the SATA bus which is actually a 'serial' bus. It only carries 1 bit at a time, but it does so extremely quickly. The new SATA bus is used to connect to suitable hard disks.

 

 

Puzzle: Why would a bus that can only send one bit at a time (e.g. SATA) be effectively faster than a bus that can send 16 bits at a time (IDE bus)?

Answer: Those 16 wires carrying data on the IDE bus are awfully close to one another - so close that they can in fact 'pollute' each other i.e a bit at logic 1 on one wire begins to be corrupted by a logic 0 bit on the wire next door (the technical term is 'cross-talk'). The faster the bus is running then the worse the problem becomes. Eventually the problem becomes so bad that you cannot send the data through the bus without errors creeping in - you have reached its speed limit.

So for very fast operation the solution is to use one wire that can only be a logic 1 or logic 0 at any instant. There is no chance of a neighbouring wire corrupting the data. This is what the new serial buses such as SATA and Firewire are about.

 

Home