Dream Big with Focusrite - Win a dream recording weekend at Air Studios. Click here to enter

PCI Bus Latency Timer Issues

Please note: this article applies to PCI FireWire adapters only, and is not applicable to PCI express FireWire adapters.

When a device on the PCI bus, such as a PCI expansion card gets hold of the PCI bus, the PCI latency Timer starts counting down (from whatever value it is currently set to for the device to zero), and when it reaches zero it releases the bus to let other devices have their turn. If there are none waiting, it will grab the bus again and the countdown will start again.

The PCI Latency Timer setting for a device is measured in terms of clock cycles and can range from a value of zero to 255. If it's set to zero, the device will give up the bus immediately if another device needs it, but as the timer value increases the device will continue using the bus for longer before releasing it, while other devices wait to use the PCI bus.

If all devices on the PCI bus have high settings they may each have to wait longer before they get a chance to transfer data over the PCI buss, but once they get hold of it they can hang on to it for longer this may cause problems with some devices as they have to wait for the bus. However, if all devices have low settings they will swap control of the PCI bus more often, sometimes preventing large data bursts, resulting in increased overheads increasing the load on the CPU.

For most devices this is set in the BIOS to a sensible default setting. Unfortunately some devices, particularly graphics cards and network cards may force their timer settings to a much higher value close to 255, letting them hog the PCI bus for longer than other devices. This can result in glitches and stuttering when streaming audio, distortion and even bursts of, or continuous white noise from your audio outputs.

There is a freeware application available from downloads.guru3d.com. Although the download indicates that it is for XP, it is compatible with Windows Vista (see note below). The tool is not compatible with Windows 7. You can use this to track down any devices on the PCI bus that have high PCI latency timer settings. This displays the current latency values for all expansion devices on the PCI bus and allows you to set the latency value manualy. If you are experiencing clicks and pops and audio glitches on your PC and your graphics card or network card display a high latency try reducing it to 128 or 64 to stop it hogging the bus. You can also try increasing the latency timer value of your Firewire controller if you are using a firewire audio interface.


NOTE : Before Vista will allow you to use the PCI latency tool to change the PCI latency timer settings, you will need to turn User Account Contol off.


Control Panel > User Accounts > Click 'Turn User Account Control on or off'

If you are not experiencing any problems with your audio devices it is not advisable to change these settings.