Search

Pipeline

Hazards (Pipeline Hurdles)

Structural Hazard
Hardware cannot support combination of instructions at once
Data Hazard
Instruction depends on result of prior instruction still in the pipeline (missing socket)
Control Hazard
Occurs when
Pipelining of branches & other instruction that change the PC
Common solution is to stall the pipeline until the hazard is resolved, inserting one or more “bubbles” in the pipeline
Two different instruction use same hardware in same cycle
Pause for a while and it will fix it self (stall)
Common Hazards:
1.
Memory
2.
Floating point - since many floating point instructions require many cycles, it’s easy for them to interfere with each other
3.
Starting up more of one type of instruction than there are resources.

Reference