CPU pipeline model.
We model the pipeline as consisting of three stages: fetch (
DecodeUnit), and execute (
ExecuteUnit). For each CPU step
(i.e. attempt to execute one instruction bundle) the following happens:
- first, the fetch unit is invoked to fetch the bundle encoding;
- if fetch succeeded, the decode unit is invoked to decode the bundle;
- if decode succeeded, the execute unit is invoked.
Regardless of the individual stage outcomes, the next CPU step is restarted from the fetch stage.
Error returned from
A model implementation of a CPU decode unit.
A model implementation of a CPU execute unit.
A model implementation of a CPU fetch unit.