In computing architecture, a bus is a communication system that transfers data between components inside a computer or between computers. The bus acts as a highway on which data travels within a computer. When used in personal computers, the bus connects all internal components to the CPU and main memory. The term could also refer to the address bus, data bus, or local bus.
How buses work
A bus is either parallel or serial. Parallel buses transmit data across multiple wires. Serial buses transmit data one bit at a time.
All buses consist of two parts: An address bus and a data bus. A data bus transfers the data whereas an address bus transfers information about where the data should go. The bus contains multiple wires known as signal lines that describe the memory location of where the data is being sent or retrieved. Each wire within a bus carries bits of information. The more wires a bus has, the more information it can address. For example, a 32-bit bus can address 4 GB of memory.
A computer’s bus speed is measured in MHz. A fast bus allows data to be transferred faster. It maintains a strict schedule, picking up and dropping off data at regular intervals. For example, if a bus operates at a frequency of 200 MHz, it completes 200 million data transfers per second.
Types of buses
- System bus: A parallel bus transfers 8, 16, or 32-bit channels. It’s the primary pathway between the CPU and memory.
- Internal bus: Enables the communication between internal components, such as internal CPU memory.
- External bus: Communicates with external components, such as a USB or disk drive.
- Expansion bus: Allows expansion boards to access the CPU and RAM
- Frontside bus: Connects the computer’s processor to the RAM and other components on the motherboard.
- Backside bus: Connects the central processing unit to the cache memory, such as Level 2 and Level 3 cache.