Wednesday, January 6, 2016

Bus Structure Basics

Bus Structure Basics

Two general types of bus structures are on every motherboard:
l Internal bus: Interconnects main memory, the CPU, and all other components on the motherboard
l External (expansion) bus: Connects the outside world of peripherals to the motherboard

Understanding the internal bus
The internal bus, also known as the system bus, is that maze of wires on the motherboard. It provides the internal components of the computer with four different necessities:
l Power: Power comes to the motherboard straight from the power supply. The motherboard uses the system bus to distribute power to components mounted on or plugged into it.
l Control signals: The control unit within the CPU sends out control signals to coordinate the activities of the system. These signals are carried on the internal control bus.
l Addresses: PC components pass data and instructions between one another using memory location addresses to reference the location of the data or instructions in memory. Addresses are transmitted on the internal address bus .
l Data: Data and instructions are transferred between components on the internal data bus.
Defining the external (expansion) bus
I list the external bus as one of the general bus structures of the PC. This bus, also called the expansion bus, allows peripheral devices to communicate with the motherboard and its components, almost as if they were a part of the motherboard itself. To add a new device to the PC, the device's adapter card is plugged into the expansion bus via a compatible expansion slot on the motherboard. After it's plugged in, the device is able to communicate with the CPU and other system components.
The expansion slot for any of the supported expansion bus architectures comprises a certain number of small metal spring connectors that line each side of the connector slot. The slot connectors match up with the tabs on the card's edge connectors. Like pins in a serial or parallel cable, each connection between the slot and card form a channel that services a particular need of the expansion card. Some channels carry power, some connect to the address and data buses, and others are used for system resources, such as the clock signal , IRQ , I/O address , and DMA interfaces. Here is a brief description of each of these system resources:

Clock signal: This connection provides the card with the signal of the bus clock so that it can synchronize its communications with the buses of the motherboard.
l Interrupt request (IRQ): A request that tells the CPU to interrupt what it's doing to take care of the special needs of the device sending the IRQ. Devices are assigned IRQ numbers so that the CPU knows which device is the rude one. When you install a new device that requires services from the CPU, it is assigned an IRQ number, which enables the CPU to know which device is nagging it and requesting service. On occasion, devices may share an IRQ, provided both devices do not attempt to interact with the CPU at the same time.
l Direct memory access (DMA): DMA channels allow certain devices to bypass the processor and access main memory directly. DMA devices have the intelligence to handle their own data transfers to memory. Some bus architectures allow more DMA channels than others, but two devices can't share a DMA channel.
l Input/Output (I/O) address: This system resource is assigned to a device via its expansion slot.
The I/O address, also called an I/O port or hardware port, allows the CPU to send commands directly to the device by writing them to an assigned area in memory that the device checks frequently. The I/O address is a one-way-only line that works like a reverse IRQ. The CPU uses the I/O address to send a command to the device. If the device responds, it uses the data bus or DMA channel to do so. Only one device can be assigned to an I/O address.
l Bus mastering: Another feature attached to expansion slots and expansion cards that allows one device to interact directly with another is bus mastering. Usually, the expansion card plugged into a slot has a bus master processor on the card that directs this activity. Most modern motherboards, especially those with the PCI bus (see "Plugging into the expansion bus" later in the chapter), support bus mastering because it improves performance.


No comments:

Post a Comment