Jump to content

Instruction prefetch

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Alfio (talk | contribs) at 14:35, 28 September 2003 (new article, basic intro). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

In computing, Instruction prefetch is a common technique used in modern microprocessors to speed up the execution of a program.

Modern microprocessors are much faster than the memory where the program is kept. This means that, literally, the program's instructions cannot be read fast enough to keep the microprocessor busy (see cache memory for a common workaround).

Prefetch is the processor action of getting an instruction from the memory well before it will need it. In this way, the processor will not need to wait for the memory to answer its request.

The prefetched istruction may simply be the next instruction in the program, fetched while the current instruction is being executed. Or, the prefetch may be part of a complex branch prediction algorithm, where the processor tries to anticipate the result of some calculation and fetch the right instructions in advance.

The first mainstream microprocessor to use some forms of instruction prefetch where the Intel 80286 and the Motorola 68020.