There are situations in pipelining when the next instruction cannot execute in the following clock
cycle. These events are called hazards, and there are three different types. Structural Hazards, Data
Hazards & Control Hazards. Stall is introduced by hazard.