A computer bus is a group of wires through which a data signal passes. A single sender and receiver, in a daisy chain topology, can be connected to a bus. Signals travel on the rising and falling edges of the clock cycle (when it goes from low to high or back again). Data travels on the bus during both the rising and falling edges.
In a bus network, there are two types of data transfers: In a single cycle transfer, the sender can send all the information it needs to in only one clock cycle. In burst mode, each receiver must acknowledge receiving confirmation by transferring a zero onto the bus to prevent errors from propagating across the whole network.

Once this single-bit acknowledgment is received, additional bits can be transferred in subsequent cycles until a zero value is returned, halting the process. The original message bitstream may then begin again after a pre-defined pause period has been met so that receivers have time to prepare for another sequence of transmissions or acknowledgments. For example, since DDR3 memory runs at twice the speed of its FSB, it operates on a "double-pumped" bus. To keep the memory controller from overworking itself as well as maintain as much throughput as possible, only 1 bit of data is transferred in each cycle to/from the memory module.

Why is a computer bus called a bus?

In electronics, a bus is a collection of wires through which signals are sent between the parts of a computer or other digital electronic device. The term originally referred to a set of wires inside a computer on which all the data buses of the machine were connected, including both parallel and bit-serial buses. These internal busses eventually became too crowded with many different types of components that needed access to them and space within the case itself became limited due to advances in circuit technology. So modern computers use external connections between separate printed circuit boards instead.

A computer bus maintains a strict timetable, "catching" data and "dropping it off" at pre-arranged intervals. For example, if a bus operates at a frequency of 200 million data transfers per second, it is said to have a width of 200 MHz. If the data time is 10% of this clock cycle, then the bus has a width of 20 million bits per second.

A central component of all modern computers is the chipset, which integrates the low-level system bus and other buses critical to computer function into one integrated circuit.

Computer bus overview

A computer bus is a communication system made up of hardware and software that helps modules "talk" to each other. The way information moves from one place to another defines the type of bus. In the past, these types included parallel buses and serial buses. The serial bus data rate is less than its parallel counterpart as it sends 1 bit at a time.

The bus is made up of many wires (signal lines) with addressing information that specifies where the data is sent or retrieved in memory. Each wire on the bus transports a bit(s) of information, hence the more wires a bus has, the more information it can address. A 32-bit address bus in a computer can handle 4 GB of RAM.

Types of computer buses

A computer bus is a shared pathway for data to travel, but it can also be an integrated circuit. The shared pathway has many uses. It is used to transport data between central processing units (CPUs), memory, and input/output devices such as mice, keyboards, modems, and printers. A computer bus also allows for expansion cards that are plugged into the motherboard.

External busses vs. local busses

An external bus can be connected to many different types of devices while a local bus can only be connected to components on its board or device. For example, an expansion card from one company made for another company might not fit onto their machine because there would be no way to physically attach it.

Some manufacturers have set up their proprietary protocols that no other company can use. In this case, the components on the boards built by both companies cannot be connected. In addition, different types of buses exist with their uses. Most are parallel busses, which are used to send information back and forth between components very quickly compared to serial busses. They are also used for transferring large amounts of data at one time instead of several small amounts of data at once.

Parallel bus vs. serial bus


A parallel bus uses many lines for transmitting information, while a serial bus sends one bit at a time. Serial buses are used to transmit smaller amounts of data, but they do so very quickly. They are oftentimes found on chips that handle the most delicate tasks done inside computers.

As stated above, there are several types of computer buses with different uses and transfer capabilities. Parallel busses were mentioned above as well as important in transferring large chunks of data. It is also common for two or more different kinds of busses to be found on the same board or device due to their strengths and weaknesses.

Address bus vs. data bus

The address bus sends the physical location of where data is placed or located in memory, while the data bus transfers information to and from that specific location.

As was mentioned above, there are many types of computer buses with different uses and transfer capabilities. Parallel busses were also mentioned above as well as being important in transferring large chunks of data. It is common for two or more different kinds of busses to be found on the same board or device due to their strengths and weaknesses.

Most popular computer buses


Some of the most popular computer buses are PCI, AGP, and ISA. The Advanced Graphics Port (AGP) is a type of local bus that was made specifically for handling high-resolution graphics once the demand became too much for CPUs to handle on their own. It uses a different connector from PCI and ISA cards but operates in a very similar fashion.

The Industry Standard Architecture (ISA) bus is also a local standard used to connect peripheral hardware components such as printers, keyboards, mice, modems, and other devices directly to a computer's motherboard. It can handle slower speeds than its contemporaries because it has fewer wires/pins involved even though it still manages to send information across parallel lines at one time instead of serial lines.

The Peripheral Component Interconnect (PCI) bus is also a local standard that was designed to access input/output peripherals. It can handle faster speeds, has more bandwidth, and uses fewer pins than ISA on its slots. It is important because it serves as an interface between the CPU and peripheral components of a computer.