From: lkcl Date: Wed, 10 Mar 2021 23:26:56 +0000 (+0000) Subject: (no commit message) X-Git-Tag: convert-csv-opcode-to-binary~45 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=17c77c6adfa87cfd9034d657b1ca2f523250be09;p=libreriscv.git --- diff --git a/openpower/sv/bitmanip.mdwn b/openpower/sv/bitmanip.mdwn index 403320efc..f489225d0 100644 --- a/openpower/sv/bitmanip.mdwn +++ b/openpower/sv/bitmanip.mdwn @@ -4,12 +4,16 @@ **DRAFT STATUS** -this extension amalgamates bitnanipulation primitives from many sources, including RISC-V bitmanip, Packed SIMD, AVX-512 and OpenPOWER VSX. Vectorisation and SIMD are removed: these are straight scalar (element) operations. Vectorisation Context is provided by [[openpower/sv]]. +this extension amalgamates bitnanipulation primitives from many sources, including RISC-V bitmanip, Packed SIMD, AVX-512 and OpenPOWER VSX. Vectorisation and SIMD are removed: these are straight scalar (element) operations making them suitable for embedded applications. +Vectorisation Context is provided by [[openpower/sv]]. + ternaryv is experimental and is the only operation that may be considered a "Packed SIMD". It is added as a variant of the already well-justified ternary operation (done in AVX512 as an immediate only) "because it looks fun". As it is based on the LUT4 concept it will allow accelerated emulation of FPGAs. Other vendors of ISAs are buying FPGA companies to achieve a similar objective. general-purpose Galois Field operations are added so as to avoid huge opcode proliferation across many areas of Computer Science. however for convenience and also to avoid setup costs, some of the more common operations (clmul, crc32) are also added. The expectation is that these operations would all be covered by the same pipeline. +note that there are brownfield spaces below that could incorporate some of the set-before-first and other operations. + # summary minor opcode allocation