Jump to content

Front-side bus

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 98.203.203.77 (talk) at 00:08, 25 April 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

File:Motherboard diagram.png
A typical north/southbridge layout

In personal computers, the Front Side Bus (FSB) is the data transfer bus that carries information between the CPU and the northbridge of the Motherboard.

Some computers also have a back side bus which connects the CPU to a memory cache. This bus and the cache memory connected to it are faster than accessing the system RAM via the front side bus.

The bandwidth or maximum theoretical throughput of the front side bus is determined by the product of the width of its data path, its clock frequency (cycles per second) and the number of data transfers it performs per cycle or clock tick. For example, a 32-bit (4-byte) wide FSB operating at a frequency of 100 MHz that performs 4 transfers per tick has a bandwidth of 1600 megabytes per second (MB/s).

The number of transfers per tick is dependent on the technology used. For example, GTL+ performs 1 transfer/tick, EV6 2 transfers/tick, and AGTL+ 4 transfers/tick. Intel calls the technique of 4 transfers per cycle Quad Pumping.

Notice that many manufacturers publish the "speed" of the FSB in megatransfers per second (MT/s), not the FSB clock speed (in megahertz (MHz)). The MT/s rating is affected by how many transfers are performed each clock cycle. For example, if a motherboard has a FSB clocked at 266 MHz and performs 4 transfers per clock tick, the FSB is rated at 1066 MT/s. This is what some manufacturers publish as the "speed" of the FSB.

History and Current usage

The front side bus has been a part of computer architecture since applications first started using more memory than a CPU could reasonably hold.

Most modern front side buses serve as a backbone between the CPU and a chipset. The chipset (usually a combination of a northbridge and a southbridge) is the connection point for all other buses in the system. Buses like the PCI, AGP, and memory buses all connect to the chipset in order for data to flow between the connected devices. These secondary system buses usually run at speeds derived from the front side bus speed.

In response to AMD's Torrenza initiative, Intel has opened its FSB CPU socket to third party devices [1][2]. Prior to this announcement, made in Spring 2007 at Intel Developer Forum in Beijing, Intel had very closely guarded who had access to the FSB, only allowing Intel processors in the CPU socket. This is now changing, the first example being FPGA co-processors, a result of collaboration between Intel-Xilinx-Nallatech [3] and Intel-Altera-XtremeData [4] [5].

CPU

The frequency at which a processor (CPU) operates is determined by applying a clock multiplier to the front side bus (FSB) speed. For example, a processor running at 550 MHz might be using a 100 MHz FSB. This means there is an internal clock multiplier setting (also called bus/core ratio) of 5.5. That is, the CPU is set to run at 5.5 times the frequency of the front side bus: 100 MHz × 5.5 = 550 MHz. By varying either the FSB or the multiplier, different CPU speeds can be achieved.

Memory

Setting a FSB speed is related directly to the speed grade of memory a system must use. The memory bus connects the northbridge and RAM, just as the front side bus connects the CPU and northbridge. Often, these two buses must operate at the same frequency. Increasing the front-side bus to 170 MHz in most cases also means running the memory at 170 MHz.

In newer systems, it is possible to see memory ratios of "4:5" and the like. The memory will run 5/4 times as fast as the FSB in this situation, meaning a 133 MHz bus can run with the memory at 166 MHz. This is often referred to as an 'asynchronous' system. It is important to realize that due to differences in CPU and system architecture, overall system performance can vary in unexpected ways with different FSB-to-memory ratios.

In a complex image, audio, video, gaming, and scientific applications where the data set is large, FSB speed becomes a major performance issue. A slow FSB will cause the CPU to spend significant amounts of time waiting for data to arrive from system memory.

Peripheral Buses

Similar to the memory bus, the PCI and AGP buses can also be run asynchronously from the front side bus. In older systems, these buses operated at a set fraction of the front side bus frequency. This fraction was set by the BIOS. In newer systems the PCI, AGP, and PCI Express peripheral buses often receive their own clock signals, which eliminates their dependence on the front side bus for timing.

Overclocking

Overclocking is the practice of making computer components operate beyond their stock performance levels.

Many motherboards allow the user to manually set the clock multiplier and FSB settings by changing jumpers or BIOS settings. Many CPU manufacturers now "lock" a preset multiplier setting into the chip. It is possible to unlock some locked CPUs; for instance, some Athlons can be unlocked by connecting electrical contacts across points on the CPU's surface. For all processors, increasing the FSB speed can be done to boost processing speed.

This practice pushes components beyond their specifications and may cause erratic behaviour, overheating or premature failure. Even if the computer appears to run normally, problems may appear under heavy load. For example, during Windows Setup, you may receive a file copy error or experience other problems [6]. Most PCs purchased from retailers or manufacturers, such as Hewlett-Packard or Dell, do not allow the user to change the multiplier or Front Side Bus settings due to the probability of erratic behavior or failure. Motherboards purchased separately to build a custom machine are more likely to allow the user to edit the multiplier and FSB settings in the PC's BIOS.

Pros and Cons

Pro

Although the front side bus architecture is an aging technology, it does have the advantage of high flexibility and low cost. There is no theoretical limit to the number of CPUs that can be placed on a FSB, though performance will not surely scale linearly across additional CPUs (due to the architecture's bandwidth bottleneck).

Con

The front side bus as it is traditionally known may be disappearing. Originally, this bus was a central connecting point for all system devices and the CPU. However, in recent years this has been breaking down with increasing use of individual point-to-point buses. The front side bus has recently been criticized by AMD as being an old and slow technology that bottlenecks today's computer systems. While a faster CPU can execute individual instructions faster, this is wasted if it can't fetch instructions and data as fast as it can execute them; when this happens, the CPU must wait for one or more clock cycles until the memory returns its value. Furthermore, a fast CPU can be delayed when it must access other devices attached to the FSB. Thus, a slow FSB can become a bottleneck that slows down a fast CPU.

See also