From: Luke Kenneth Casson Leighton Date: Fri, 24 May 2019 17:14:57 +0000 (+0100) Subject: add shadowing description X-Git-Tag: convert-csv-opcode-to-binary~4674 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8f0b72389f0c4eb6fb7a556dcfd22b4f74e2ffcd;p=libreriscv.git add shadowing description --- diff --git a/3d_gpu/6600scoreboard.mdwn b/3d_gpu/6600scoreboard.mdwn index e990cbbbb..a65c8198b 100644 --- a/3d_gpu/6600scoreboard.mdwn +++ b/3d_gpu/6600scoreboard.mdwn @@ -83,3 +83,18 @@ from hazards in the process. [[!img dependence_cell_pending.jpg]] +# Shadowing + +Shadowing is important as it is the fundamental basis of: + +* Precise exceptions +* Write-after-write hazard avoidance +* Correct multi-issue instruction sequencing +* Branch speculation + +Modifications to the shadow circuit below allow the shadow flip-flops +to be automatically reset after a Function Unit "dies". Without these +modifications, the shadow unit may spuriously fire on subsequent re-use +due to some of the latches being left in the previous state. + +[[!img shadow.jpg]]