From: Luke Kenneth Casson Leighton Date: Tue, 8 Jan 2019 09:08:17 +0000 (+0000) Subject: add overview to requirements spec X-Git-Tag: convert-csv-opcode-to-binary~4755 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=740686ffc4a3d6904a920cf1a84db3414c45c7db;p=libreriscv.git add overview to requirements spec --- diff --git a/3d_gpu/requirements_specification.mdwn b/3d_gpu/requirements_specification.mdwn index 9e3506d1d..bfc5f34fb 100644 --- a/3d_gpu/requirements_specification.mdwn +++ b/3d_gpu/requirements_specification.mdwn @@ -34,18 +34,21 @@ An overview of the design is as follows: * 6600-style scoreboards will be augmented with "shadow" wires and write hazard capability on exceptions, branch speculation, LD/ST and predication. -* Each "shadow" capability will be provided by a separate Function - Unit. If there is to exist the possibility of rolling ahead - through two speculative branches, then two **separate** +* Each "shadow" capability of each type will be provided by a separate + Function Unit. For example if there is to exist the possibility of rolling + ahead through two speculative branches, then two **separate** Branch-speculative Function Units will be required: each will hold their own separate and distinct "shadow" (Go-Die wire) and write-hazard over instructions on which the branch depends. * Likewise for predication, which shall place a "hold" on the Function Units that depend on it until the register used - as a predicate mask has been read and decoded. Bits in the - mask that are "zero" will result in "Go-Die" signals being - sent to the Function Units previously (speculatively) allocated - for that (now cancelled) element operation. + as a predicate mask has been read and decoded, there will be + separate Function Units waiting for each predication mask register. + Bits in the mask that are "zero" will result in "Go-Die" signals being + sent to the Function Units previously (speculatively) allocated for that + (now cancelled) element operation. Bits that are "1" will cancel + their Write-Hazard and allow the Function Unit to proceed with that + element's operation. * The 6600 "Q-Table" that records, for each register, the last Function Unit (in instruction issue order) that is to write its result to that register, shall be augmented with "history" capability that aids and