In your own words: a) Define "data hazard" b) Define "control hazard"
a) Data hazard:
Data hazard refers to the issues that occur due to data dependencies among instructions. These instructions modify data in various pipeline stages. This causes change in the order of access in terms of read/write operations. The order of operand execution is changed as well. It also leads to unknown targets and outputs.
b) Control hazard:
These are also called branch hazards. They occur due to the wrong decisions made by the pipeline pertaining to branch instructions. Since there is wrong prediction of the branch, it causes some of the instructions to be ignored and changes the direction of control.
Due to these hazards, the performance suffers great loss due to dependencies on branch instructions and not knowing where to lead the control when they occur.
Get Answers For Free
Most questions answered within 1 hours.