From: lkcl Date: Fri, 22 Oct 2021 15:12:06 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~3558 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a538167fff412eaca8b411cf2ed4741dcc962080;p=libreriscv.git --- diff --git a/3d_gpu/architecture/dynamic_simd/simdscope.mdwn b/3d_gpu/architecture/dynamic_simd/simdscope.mdwn new file mode 100644 index 000000000..3deb89ec9 --- /dev/null +++ b/3d_gpu/architecture/dynamic_simd/simdscope.mdwn @@ -0,0 +1,25 @@ +# SimdScope + +Links: + +* + +TODO + +SimdScope is the user-facing "front" behind which SimdSignal +is entirely and transparently hidden. Aside from using it, +the goal and its purpose is that +developers should under no circumstances have to know +that their HDL, which was initially written as scalar +nmigen HDL, is behaving entirely transparently as full +SIMD capable HDL. There are a few caveats to that: some +capabilities such as LHS assignment to an ast.Part are so +complex in a SIMD context that SimdSignal in its first +version does not implement it. Array is out at the moment +as well. Over time this may change. + +SimdScope is used as follows: + + m = Module() + elwid = Signal(2) + vec_el_counts = { 0b00: 64, 0b01: 32