"PCI Latency" patch for VIA Chipsets
Questions and Answers

All executable and document files of this "PCI Latency" patch are Copyright (C) 2001, George E. Breese. All Rights Reserved.

Version 0.19   December 12, 2001

Important notes:

This product could, in a rare case, damage a computer. Use it carefully and at your own risk. By using it, you agree to the terms and conditions identified in the README.HTM document that accompanies this patch.

If you have installed a previous version of this driver, uninstall it before installing this version.


Section 1: What, Why, Which, Who
Section 2: Install, Uninstall
Section 3: PCI Latency
Section 4: The 686B bug
Section 5: Sound card crackling
Section 6: MWQ Patch
Section 7: VIA Technologies


Section 1: What, Why, Which, Who

1.1 What is this patch?

This is a driver for Windows. It is intended to stabilize computers that have VIA chipsets.

1.2 Why do I need this patch? Do I need it at all?

If your computer has any VIA chipset made between 1997 and 2001, and if your computer has any of the following problems, then you might need this driver.

If you have none of these problems, then you do not need this patch.

1.3 What motherboards does this patch support?

There are hundreds of models of motherboard that are supported by this patch. These motherboards can be found in computer systems made by Compaq, Gateway, Quantex, and a host of smaller manufacturers. These motherboards can also be purchased separately.

In order for a motherboard to be supported by this patch, its chipset must be made by VIA. The "chipset" is the set of supporting chips that connect the processor (the CPU) to the rest of the hardware. The important VIA chip can be found near the center of the motherboard and is approximately 3.5cm (1.4") square and flat, although it is sometimes covered by a metal heatsink and/or a small fan.

This patch does not support any motherboards whose chipset was made by other manufacturers. For example, It does not support the AMD 761 chipset, so it does not support any of the following motherboards: Abit KG7, Epox EP-8K7A, Asus A7M266, Gigabyte GA-7DX or GA-7DXR, PCChips M810LMR, FIC AD11. (This is an incomplete list.) Many of these motherboards have a small VIA chip with a part number of VT82C686B, but that chip is not involved.

1.4 What chipsets does this patch support?

To confirm that your computer has the correct chipset, please refer to your motherboard manual. As an alternative, you can download and install Sisoft Sandra and examine its "Mainboard Information" screen.

The following tables show the supported chipsets.

Chipsets for Super Socket 7 processors

Model Part # PCI ID
VP2 VT82C595 0595
VP3 VT82C597 0597
MVP3 VT82C598 0598
MVP4 VT82C501 0501

Chipsets for Pentium II and III processors (the "Apollo" series)

Model Part # PCI ID
Pro VT82C691 0691
Pro BX VT82C692 0692
Pro133 VT82C693A 0691
Pro133A VT82C694X 0691
Pro Plus VT82C693 0693
ProSavage4 PM133 VT8605 0605
PLE133 VT8601 0601
Pro266 VT8633 3091
PX266 VT8653 3101
ProSavage PM266T VT8615 3103

Chipsets for Athlon processors

Model Part # PCI ID
KX133 VT8371 0391
KT133 VT8363 0305
KT133A VT8363A 0305
S3 ProSavage KM133 VT8365 0305
KT266 VT8366 3099
KT266A KT266A 3099
KLE133 VT8361 3112

Pentium 4 chipsets

Part # PCI ID
P4X266 3128

As a safety feature, this patch will not modify any non-VIA chipset.

1.5 Which versions of Windows does this patch support?

It supports all versions of Windows 95, 98, Millennium Edition, NT 4.0, 2000, and XP.

1.6 Who are you? Are you a VIA employee? How can I contact you? Will you answer my questions about my hardware?

I am not a VIA employee. I am merely a hobbyist who owns a lot of VIA-based hardware. I took a greater interest in VIA hardware when I found that I could reprogram it to improve its performance.

I monitor the "VIA Tweaks" section of the support forums at www.viahardware.com. Any problems with this patch can be posted to this section of the forums as well. If you have a problem with your hardware, you should post it in the "General Hardware" section of the forums, where people experienced with your exact hardware can help you.

Suggestions for improving the patch can be emailed to feedback@networking.tzo.com. Remember to mention which patch you use (the "PCI Latency" Patch), the version of the patch (0.19), and the location of the Web site from which you downloaded the patch.

Section 2: Install, Uninstall

2.1 How do I install this patch?

You should have received this in a .ZIP compressed file. Extract the entire .ZIP file to a suitable temporary location. You can, if you wish, delete the ZIP file and/or the extracted files after installing the patch.

Run SETUP.BAT to install the patch.

The patch will be applied when Windows is restarted.

2.2 How do I uninstall this patch?

The driver can be uninstalled from the Add / Remove Programs section of Control Panel. The files will be removed immediately, but the patch will continue to be in effect until Windows is restarted.

If the computer is unstable, the driver can still be removed. Boot the computer in Safe Mode and then use the Add / Remove Programs section of Control Panel to uninstall the driver.

2.3 I uninstalled the patch, but I think it is still present. How can I prove this?

In Windows 95, 98, and ME, look in the WINDOWS\SYSTEM folder for VLATENCY.VXD.

In Windows NT and 2000, look in the WINNT\SYSTEM32\DRIVERS folder for VLATENCY.SYS.

In Windows XP, look in the WINDOWS\SYSTEM32\DRIVERS folder for VLATENCY.SYS.

These folders contain many files of the same type. If you cannot see any VXD or SYS files in these folders in Windows Explorer, then find the "Folder Options" item in the menu and choose Show All Files.

Section 3: PCI Latency

3.1 What is "PCI Latency"?

First off, "latency" is a condition where something is "present yet hidden". In technology, "latency" describes a time when data is needed but not yet available. "PCI latency" is the case where the PCI bus is not yet available.

PCI devices must share the PCI bus fairly. A PCI device must give up shortly after it is told to do so. The amount of extra time that each device spends before releasing the PCI bus is the measure of latency in the PCI bus.

3.2 How does this patch relate to PCI Latency?

This patch lowers PCI latency for the devices attached to the PCI bus. It does this by making adjustments to the chip that manages the PCI bus.

3.3 Why is "PCI Latency" in quotes?

When this patch was first made, it changed two values directly related to PCI latency. Newer versions do much more.

Section 4: The 686B bug

4.1 What is the "686B" bug?

In early 2001, it was discovered that new motherboards with the KT133A chipset could damage data that was being copied between IDE hard disks. The problem was narrowed down to the VT82C686B chip on the motherboard. When the computer's PCI bus was busy, any data copied between the primary and secondary IDE buses could be corrupted. In addition, the computer could crash or reboot during this copying.

The problem occurred more often when a Creative Labs Soundblaster Live card was present.

4.2 Does this patch fix the "686B" bug?

Yes, sort of. This patch is a workaround for the problem, not a complete solution. This patch adjusts the PCI bus to permit the 686B chip to deliver more data without interruption, which has the effect of reducing or eliminating the 686B bug.

Please note that this patch has grown over time to solve more than just the problem of 686B IDE corruption.

4.3 Is the "686B" bug VIA's fault?

The problem seems to be the fault of a bug in the VT82C686B chip. VIA has acknowledged the issue and began working with motherboard manufacturers to stabilize motherboards that have the problem.

4.4 Does this patch do something to the 686B chip?

No. This patch changes settings in the chip that is controlling the 686B. This patch does not directly adjust the 686B chip.

Section 5: Sound card crackling

5.1 My sound card has a crackling noise. Is this the "686B" bug?

No, it is not the 686B bug.

Many sound cards need constant access to the computer's PCI bus. Rather than store entire sounds inside the card, these cards retrieve the sound from the computer's RAM in very small amounts. Any delay in retrieving any piece of the sound will cause a crackling effect in the audio.

5.2 Is my sound problem VIA's fault?

No single party can be entirely blamed for this problem. The maker of the sound card, or the chip on the sound card, might be at fault if their product cannot properly deal with delays that occur on the PCI bus. Those delays can be caused by any device, but they seem to be more prevalent on some VIA-based motherboards.

5.3 How else can I solve sound card crackling?

There are many good suggestions that have been posted on the Internet over time. Here are a few of those suggestions.

Visit the motherboard manufacturer's Web site, or call them for more information.

If you experience audio problems in Windows XP and your computer has a Highpoint IDE or IDE-RAID controller, please download new drivers from Highpoint to address the issue.

If you experience crackling on a SoundBlaster Live card in Windows 2000, upgrade to the latest (3.0 or later) LiveWare drivers from Creative Labs.

Understand that all PCI slots are not created equal. The slot closest to the AGP slot can sometimes have special priority, and a card installed in that slot can interfere with the sound card. Also, some PCI slots are better than others for sound cards, for many technical reasons. To test PCI slot issues, do all of the following. Remove all PCI cards except the sound card and the video card. Reset all BIOS settings to factory defaults. Test the sound card in each PCI slot, playing sounds and listening for crackling each time. Once the best PCI slot is found, install any other PCI cards and test for crackling after installing each one.

Some motherboards for Athlon CPUs will disconnect the CPU when the system is idle. By doing so, the motherboard allows the CPU to "sleep" when idle, and the CPU is cooler as a result. The delay in disconnecting and reconnecting the CPU can cause problems. This "CPU Idle" feature is enabled by some BIOSes, but it is also enabled by shareware CPU-cooling software. Cooling the CPU is desirable, but this feature can be disabled as a last resort. Look for a "CPU Idle" option in the computer's BIOS settings and disable it. Remove any CPU cooling software. Obtain version 0.14 of this PCI Latency patch and install it.

If a sound card continues to experience problems when other PCI devices are installed, the problem can be caused by PCI's native sharing of IRQ lines. PCI cards send signals on these lines to interrupt the CPU and request attention. Some cards or drivers do not work well when sharing an IRQ line with the sound card. The instructions for disabling IRQ sharing are too long to be reproduced here; the instructions involve small changes to BIOS settings and large changes to Windows.

If all options fail, then try another sound card of the same type, or try a different model of sound card. The Turtle Beach Santa Cruz model has been recommended by its owners as a good alternative that does not exhibit sound-crackling issues.

Section 6: MWQ Patch

6.1 What is the MWQ bug?

VIA's chipsets contain a queue to allow data to flow smoothly from the CPU to memory. This "Memory Write Queue" can be overfilled by an AMD Athlon or Duron CPU chip when it executes the MMX instruction "MOVNTQ" repeatedly. This instruction causes a large block of memory to be moved directly to memory. The bug occurs when the chipset fails to handle the overflow correctly. Data can be lost and the computer can become unstable.

The bug is also known as the "register 55" or "Rx55" bug because register number 55 contains the adjustment for the MWQ.

It is known to Linux developers as the "Athlon bug stomper". The first Athlon-enhanced versions of the Linux kernel were unstable on some specific boards, and Linux developers traced the problem to register 55 by comparing working and non-working systems.

Note that the KT266 chipset has a documented adjustment for MWQ. It is located at register 95.

6.2 Which motherboards have the MWQ bug? Which chipsets?

I do not know of an accurate list of motherboards and BIOS versions that contain the misprogrammed register 55.

The chipsets affected are VIA's Athlon chipsets, specifically: KT133, KT133A, KM133, KLE133, KT266.

6.3 Does this patch fix the MWQ bug?

Yes. This patch resets the MWQ setting to VIA's recommended default.

6.4 Is this bug VIA's fault?

From the information currently available, the answer is no. Some motherboard manufacturers tried zealously to increase the performance of their motherboards. They modified a setting that VIA had labeled "Reserved - Do not program".

When the VIA chipset is left at its default settings, the bug apparently cannot occur.

6.5 Does this fix problems with "infinite loop" errors in Windows XP?

The information is incomplete at this time. But, because users have reported the same errors on other systems without Athlon CPUs or VIA chipsets, the answer at this time seems to be "no".

6.6 My system is still unstable in Windows XP, what else can I do?

There are a number of things that can be tried.

For computers with Pentium processors (including Pentium II and III), Disable "Read around Write" in the BIOS.

Adjust memory settings to their slowest and safest configuration in the BIOS.

On the Pro266, Pro266T, KT266, KT266A, and P4X266 chipsets, there is a BIOS setting called "CMD Rate". This setting should be set at "2T", not "1T", for the vast majority of systems. Some BIOSes have a default setting of "1T" which is a mistake.

Use drivers that have been approved by Microsoft's WHQL team.

Section 7: VIA Technologies

7.1 Who / What / Where is VIA Technologies?

VIA is a company based in Taipei, Taiwan. They have offices worldwide. They design and produce integrated circuits, "chips".

7.2 Did VIA make my motherboard?

For all motherboards produced before November of 2001, the answer is no. VIA produces chips, not motherboards.

In November of 2001, VIA began selling motherboards. These boards were designed and built by other manufacturers, but carry the VIA logo. The first series of motherboards all have the VIA P4X266 chipset. VIA intends to speed the acceptance of the P4X266 into the marketplace by providing these motherboards.

7.3 Where can I go for VIA support?

Your computer manufacturer is the official supplier of support for your computer's components. However, some computers are built by hobbyists, and some manufacturers are not able to provide adequate support.

VIA maintains a support Web site at http://www.viaarena.com/. There are articles, drivers, and support forums. All of the material and support answers on the Web site is provided by the marketing department of VIA.

Other forums exist for sharing information about VIA-related problems and solutions. One such site is ViaHardware at http://www.viahardware.com/ . This site is staffed by hobbyists and is not owned or operated by VIA.

7.4 What is your involvement with VIA?

I have no involvement with VIA Technologies Incorporated. As far as I know, only three members of the VIA marketing team know that I exist, and two of those have been unfriendly in past discussions.