- Computers & Software»
- Computer Hardware
Computer Bus Structure
A bus is a collection of wires that connect several devices within a computer system. When a word of data is transferred between units, all its bits are transferred in parallel. A computer must have some lines for addressing and control purposes.
Three main groupings of lines:
1. Data Bus. This is for the transmission of data.
2. Address Bus. This specifies the location of data in MM.
Control Bus. This indicates the direction of data transfer and coordinates the timing of events during the transfer.
Single Bus Structure
All units are connected to a single bus, so it provides the sole means of interconnection. Single bus structure has advantages of simplicity and low cost.
Single bus structure has disadvantages of limited speed since usually only two units can participate in a data transfer at any one time. This means that an arbitration system is required and that units will be forced to wait.
Only two units can actively use the bus at any given time. Bus control lines are used to arbitrate multiple requests for the use of the bus.
Buffer Registers are used to hold information during transfers.
Two Bus Structure
In the first configuration, the processor is placed between the I/O unit and the memory unit. The processor is responsible for any data transfer between the I/O unit and the memory unit. The processor acts as a “messenger.” In this structure, the processor performance and capability is not being maximized. Most of the time, the processor is doing data transfer between these units instead of performing more complex applications. Also, the processor is idle most of the time waiting for these slow devices.
In the second configuration, I/O transfers are made directly to or from the memory. A special purpose processor called peripheral processor or I/O channel is needed as part of the I/O equipment to control and facilitate such transfers. This special processor is the direct memory access(DMA) controller. It allows main memory to perform data transfer between I/O units.