From: lkcl Date: Sun, 5 Sep 2021 14:36:04 +0000 (+0100) Subject: (no commit message) X-Git-Tag: DRAFT_SVP64_0_1~230 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=679a3de53116d57db5956fb80ea0be6220ed75c4;p=libreriscv.git --- diff --git a/openpower/sv/branches.mdwn b/openpower/sv/branches.mdwn index 98e6c7720..4a7976dfa 100644 --- a/openpower/sv/branches.mdwn +++ b/openpower/sv/branches.mdwn @@ -320,6 +320,14 @@ Available options to combine: * `ALL` or `ANY` behaviour corresponding to `AND` of all tests and `OR` of all tests, respectively. +The most obviously useful combinations here are to set `BO[1]` to zero +in order to turn `ALL` into Great-Big-NAND and `ANY` into +Great-Big-NOR. Other Mode bits which perform behavioural inversion then +have to work round the fact that the Condition Testing is NOR or NAND. +The alternative to not having additional behavioural inversion +(`SNZ`, `VSb`, `CTi`) would be to have a second (unconditional) +branch directly after the first, which the first branch jumps over. +This contrived construct is avoided by the behavioural inversion bits. # Pseudocode and examples