CMD640, the California Micro Devices Technology Inc product 0640, is an IDE interface chip for the PCI and VLB buses. CMD640 has some sort of hardware acceleration: WDMA and Read-Ahead (prefetch) support.

CMD Technology Inc was acquired by Silicon Image Inc. in 2001.

ChipProtocolSiI/CMD 640MDMA 1SiI/CMD 643MDMA 2SiI/CMD 646UDMA 2SiI/CMD 648UDMA 4SiI/CMD 649UDMA 5SiI0680UDMA 6

Hardware bug

The original CMD640 has data corruption bugs, some of which remained in CMD646. The data corruption bug is similar to the bug affecting the contemporaneous PC Tech (a subsidiary of Zeos) RZ1000 chipset. Both chipsets were used on a number of motherboards, including those from Intel.

Modern operating systems have a workaround for this bug by prohibiting aggressive acceleration mode and losing about 10% of the performance.

References

External links File containing technical information, FAQs, and tests regarding the corruption issues Linux's description of how it deals with the CMD640 corruption IBM: July 10, 1998 - Warp FixPak TIPS (includes section on how to detect and mitigate CMD640 concerns)

EIDE flaw