After exploring CPU pipelines and how they can be used to achieve scalar processor speeds, we next look to using multiple execution units often running in parallel to achieve superscalar speeds. Modern CPUs can often execute 2-5 instructions per clock cycle! Multiple execution units permit simultaneous execution of several instructions, each execution unit can be optimized for one general type of instruction making it more efficient.
Just as we explored when discussing pipeline hazards, there are unique challenges that accompany running CPUs at superscalar speeds. In this video we will discus:
* Out-of-order processing – dependencies (hazards)
* Data dependencies
* Control dependencies – flow or branch dependencies
* Parallel speculative execution or branch prediction
* Branch History Table to aid in branch prediction
* Register access conflicts
Please like this video and subscribe and would like to see more like it! [ Ссылка ]
It is part of my Computer Organization and Architecture course which you can find here: [ Ссылка ]
If you have not seen the Little Man Computer (LMC) series of videos, they are highly recommended before this one you can find them here:
* A recommended introduction to Little Man computer video here: [ Ссылка ]
* A "Hello LMC" video where we do a smaller program and talk more in-depth about the instruction cycle and basic instructions: [ Ссылка ]
* And an intermediate step where we introduce branching and explore recreating conditional statements with LMC: [ Ссылка ]
* Finally we explore iteration, labels and advanced LMC: [ Ссылка ]
Here are presentation slides that can be used as a supplement to follow along and as a future reference for this content: [ Ссылка ]
Superscalar CPUs: Multiple, Parallel, Execution Units
Теги
Superscalar CPUs: MultipleParellelExecution Unitssuperscalar vs scalarscalar vs superscalarsuperscalar cpcpu execution pipelinehow does cpu execute instructionscpu fetch decode execute animationcpu execution modecpu execute instructionscpu executioncpu execution unitcpu execution cyclemultiple execution unitsparellel execution unitscomputer sciencecoding coachcpu pipelinecpu pipeline explainedpipelining cpu erklärungcpu pipelining