[Libre-soc-dev] SimdSignal scalar/vector switching and SimdShape.width
lkcl
luke.leighton at gmail.com
Sat Oct 30 12:44:46 BST 2021
On October 30, 2021 9:43:11 AM UTC, lkcl <luke.leighton at gmail.com> wrote:
>* a new function __call__ to be added to SimdScope which takes a
>module parameter
https://git.libre-soc.org/?p=ieee754fpu.git;a=blob;f=src/ieee754/part/simd_scope.py;h=2f7e264db7eef56136ec6f28e8563dcdb196d848;hb=HEAD#l69
done, this is a little clearer/shorter than e.g. with oldscope.copy_but_override_module(m) or something
>* SimdScope to be permitted to have module=None
done.
still TODO, detect module=None.
this will have ramifications for the usage: although it will be possible to declare SimdShapes, it's not going to be possible to have SIMD Signals outside of the Elaboratables they are used in.
i thought originally, it would be ok to actually modify the pipeline data structures so as to pass SimdSignals within them, but because of the need to have a Module so that SimdSignal can create its own submodules this isn't practical.
fortunately with casting it becomes possible to have data structures that remain scalar but are uocast on input to the relevant Elaboratable inside a given ALU and downcast on output.
l.
More information about the Libre-soc-dev
mailing list