Pipelining strategy is used to implement ______.
2012
Pipelining strategy is used to implement ______.
Answer: B. instruction prefetch — Concept: Pipelining overlaps the phases of successive instructions — fetch, decode, operand fetch, execute, write-back — so that in ideal steady-state…
- A.
instruction execution
- B.
instruction prefetch
- C.
instruction decoding
- D.
instruction manipulation
Attempted by 65 students.
Show answer & explanation
Correct answer: B
Concept: Pipelining overlaps the phases of successive instructions — fetch, decode, operand fetch, execute, write-back — so that in ideal steady-state operation the stages of the datapath work on different instructions at the same time instead of one at a time. That overlap requires the fetch hardware to read instructions out of memory before the processor is ready to decode or execute them, and to hold them until the later stages can take them. Reading an instruction into a buffer ahead of the moment it is actually needed is, by definition, prefetching.
Application to this item:
In a strictly sequential processor the instruction-fetch path is used only during the fetch phase of the current instruction; while that instruction is being decoded, executed and written back, the fetch hardware sits idle.
A pipeline aims to keep the stages occupied at the same time, so in steady-state operation — with no stall or hazard in effect — the fetch stage goes on reading the following instructions while earlier instructions are still in decode and execute.
Those instructions are read before they can be used, so they must be buffered ahead of the decode stage: in the classic instruction-prefetch organisation they are held in an instruction queue (prefetch buffer) between the memory interface and the decode unit, and in a simple pipeline the fetch/decode interstage register plays the same holding role.
Filling that buffer ahead of demand is exactly the operation named instruction prefetch. So, at the fetch end of the datapath, adopting a pipelining strategy is implementing instruction prefetch.
Cross-check — contrast with the other offered terms:
instruction execution — a phase that already exists in a strictly sequential datapath; a pipeline overlaps it with other phases but does not introduce it, so it is not what the strategy adds.
instruction decoding — likewise a phase present in a non-pipelined datapath; pipelining changes when it runs relative to other instructions, not that it runs.
instruction manipulation — the alteration of instruction words themselves, done by self-modifying code, a linker applying relocations, or a binary rewriter; it edits the encoded program rather than naming a phase of the hardware instruction cycle.
Result: pipelining strategy is used to implement instruction prefetch.