Glossary

Pipeline hazard

Beginner

A hiccup on the assembly line: a step can’t go ahead because it needs a result that isn’t ready, or the line went the wrong way.

Novice

Something that stops the next instruction from moving down the pipeline: it needs a result that isn’t ready yet (data hazard), it follows a branch whose direction isn’t known yet (control hazard), or it needs a unit another instruction is using (structural hazard).

Expert

A hazard costs roughly the number of stages between where a value is produced and where it is needed, so deeper pipelines lose more cycles per hazard. Forwarding results early, predicting branches and reordering instructions hide part of the cost.

Explained in Architecture (Design Flow).

See also: Pipelining, Branch prediction.

All 896 terms →