Wait state

From Wikipedia, the free encyclopedia

A wait state is a delay experienced by a computer processor when accessing external memory or another device that is slow to respond.

As of 2005, computer microprocessors run at very high speeds, while memory technology does not seem to be able to catch up: typical PC processors like the Intel Pentium 4 and the AMD Athlon run with a clock of several GHz, while the main memory clock ranges from 233 to 533 MHz. Some second-level CPU caches run slower than the processor core.

When the processor needs to access external memory, it starts placing the address of the requested information on the address bus. It then must wait for the answer, that may come back tens if not hundreds of cycles later. Each of the cycles spent waiting is called a wait state.

Wait states are a pure waste for a processor's performance. Modern designs try to eliminate or hide them using a variety of techniques: CPU caches, instruction pipelines, instruction prefetch, branch prediction, simultaneous multithreading and others. No single technique is 100% successful, but together they can significantly reduce the problem.

In other languages