(no commit message)
[libreriscv.git] / 3d_gpu / architecture / dynamic_simd / simdscope.mdwn
1 # SimdScope
2
3 Links:
4
5 * <https://bugs.libre-soc.org/show_bug.cgi?id=734>
6
7 TODO
8
9 SimdScope is the user-facing "front" behind which SimdSignal
10 is entirely and transparently hidden. Aside from using it,
11 the goal and its purpose is that
12 developers should under no circumstances have to know
13 that their HDL, which was initially written as scalar
14 nmigen HDL, is behaving entirely transparently as full
15 SIMD capable HDL. There are a few caveats to that: some
16 capabilities such as LHS assignment to an ast.Part are so
17 complex in a SIMD context that SimdSignal in its first
18 version does not implement it. Array is out at the moment
19 as well. Over time this may change.
20
21 SimdScope is used as follows:
22
23 m = Module()
24 elwid = Signal(2)
25 vec_el_counts = { 0b00: 64, 0b01: 32