Embedded C interview question - What is Instruction pipelining ?

Embedded C interview questions

What is Instruction pipelining ?

Pipelining is an architecture, in which a sequence of functional units ("stages"), which performs a task in several steps, likes an assembly line in a factory. Each functional unit takes inputs and produces outputs, which are stored in its output buffer. One stage's output buffer is the next stage's input buffer. This arrangement allows all the stages to work in parallel thus giving greater throughput than if each input had to pass through the whole pipeline before the next input could enter. The costs are greater latency and complexity due to the need to synchronize the stages in some way so that different inputs do not interfere. The pipeline will only work at full efficiency if it can be filled and emptied at the same rate that it can process.

No comments:

Post a comment