X-Git-Url: https://git.libre-soc.org/?p=crowdsupply.git;a=blobdiff_plain;f=updates%2F003_2018dec04_microarchitecture.mdwn;h=84bb5b0937ce3c7c7a8ec6c7be977341c23f65bd;hp=b1735c55efcfa253e650600108d6e44a19afd1d4;hb=10e56a569927d8be99e12965508d6f864f1086e4;hpb=b49ff837818de691693548ab1b01e0fa9561b8dd diff --git a/updates/003_2018dec04_microarchitecture.mdwn b/updates/003_2018dec04_microarchitecture.mdwn index b1735c5..84bb5b0 100644 --- a/updates/003_2018dec04_microarchitecture.mdwn +++ b/updates/003_2018dec04_microarchitecture.mdwn @@ -83,13 +83,13 @@ and, crucially, some ALUs may take longer than others, and the algorithm simply does not care. In addition, there may be a really simple way to extend the Reorder Buffer tags to accomodate SIMD-style characteristics. -We also may need to have simple Branch Prediction, because some of the -loops in [Kazan](https://salsa.debian.org/Kazan-team/kazan/) are particularly -tight. A Reorder Buffer can easily be used to implement Branch Prediction, -because, just as with an Exception, the ROB can to be cleared out -(flushed) if the branch is mispredicted. As it is necessary to respect -Exceptions, the logic has to exist to clear out the ROB: Branch Prediction -simply uses this pre-existing logic. +We also may need to have simple Branch Prediction, because some of +the loops in [Kazan](https://salsa.debian.org/Kazan-team/kazan/) +are particularly tight. A Reorder Buffer (ROB) can easily be used +to implement Branch Prediction, because, just as with an Exception, +the ROB can to be cleared out (flushed) if the branch is mispredicted. +As it is necessary to respect Exceptions, the logic has to exist to +clear out the ROB: Branch Prediction simply uses this pre-existing logic. The other way in which out-of-order execution can be handled is called scoreboarding, as well as explicit register renaming. These schemes