From: lkcl Date: Tue, 5 Oct 2021 19:29:38 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~3702 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=af6dc8c6e6c8b0376acec66833889f3a160257c7;p=libreriscv.git --- diff --git a/3d_gpu/architecture/dynamic_simd/repl.mdwn b/3d_gpu/architecture/dynamic_simd/repl.mdwn new file mode 100644 index 000000000..5e676cc4f --- /dev/null +++ b/3d_gpu/architecture/dynamic_simd/repl.mdwn @@ -0,0 +1,29 @@ +# PartitionedSignal nmigen-aware Repl + +* + +Partitioned Repl is very similar to [[cat]] and +[[assign]]. The output completely changes depending +on the partition mask. + +Take a PartitionedSignal: + + partition: p p p (3 bits) + a : AAA3 AAA2 AAA1 AAA0 (32 bits) + +When the partitions are 32-bit, the output is: + + partition: p p p (3 bits) + out : AAA3 AAA2 AAA1 AAA0 BBB3 BBB2 BBB1 BBB0 (64 bits) + +When 2x16, the top 2 halves of A and B are Catted together, +and likewise the lower: + + partition: p p p (3 bits) + out : AAA3 AAA2 BBB3 BBB2 AAA1 AAA0 BBB1 BBB0 (64 bits) + +Finally when 4x8, each byte is concatenated: + + partition: p p p (3 bits) + out : AAA3 BBB3 AAA2 BBB2 AAA1 BBB1 AAA0 BBB0 (64 bits) +