A bus, in computing terms, is a set of wires designed to transfers data,
addresses and control information from a specified source to a specified
destination. There are two main types of buses:
Internal buses – which connect the various registers and internal components
of the CPU.
External buses – which connect the CPU to main memory and to the
input/output units.
A bus may be unidirectional, capable of sending in one direction only, or it
may be bi-directional. A dedicated bus is a unidirectional bus connecting one
source and one destination.
For these reasons, a shared bus system is often used, even though
simultaneous transfer of data is no longer possible. A further advantage of a
shared bus system is that more devices can easily be added.
To Sum up shared and dedicated buses
- Shared buses have all the devices on one bus – an example being the PCI
bus.
- Dedicated bus is to connect one specific device to another specific device –
an example being the bus that connects the CPU with the main memory.
In addition there are control buses. Control buses are used to send control
signals between the control unit and the ALU, between the processor and memory,
and between processor units and peripherals. Examples of such signals are:
- Signals to directly control the operation of the ALU
- Signals to indicates a status condition such as ‘busy’ or ‘operation
complete’
- Signals to indicate that an error condition such as overflow has
occurred.
- Start and stop signals and timing information