[Libre-soc-bugs] [Bug 176] partitioned dynamic bool/all/any/xor operators
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Sun Dec 27 20:25:47 GMT 2020
https://bugs.libre-soc.org/show_bug.cgi?id=176
--- Comment #3 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to ps905 from comment #2)
> >similar to gt/le/eq in form, bool/all/any/xor operators are needed.
>
> >wiki page here
>
> >https://libre-soc.org/3d_gpu/architecture/dynamic_simd/logicops/
> 1. needed some help in understanding if the result has to be specific for
> the width or it has to go through all the possibilities.
well, it turns out that it's pretty straightforward to do all possibilities,
simply by having the 7 bits of partitioning.
> I am guessing that I could be understanding these partitions improperly.
> What I mean is given if width of the signal, and for an example it is 32.
> Does it have to be split into 16x4 and 8x8 as well or only specifically for
> 32x2
all the code written takes 2 parameters:
a) width
b) partition points
take a look at the eq code as an example.
if an instance of the eq class is declared as 32 bit the partition points can
be:
8 8 8 8
16 8 8
8 16 8
8 8 16
16 16
8 24
24 8
32
because the partition settings will be
0 0 0
1 0 0
0 1 0
0 0 1
etc etc.
the code does NOT take a parameter "partition equals 64 bit, partition equals
2x32 bit, partition equals 4x15"
the code takes a parameter indicating the OPENING GATE POINTs... *between* the
8 bit sub-sections
look at the code and the notes that went with it.
https://git.libre-soc.org/?p=ieee754fpu.git;a=blob;f=src/ieee754/part_cmp/experiments/equal_ortree.py;h=470fb603f48c31c84a13e2cf4e240ea7acd2f590;hb=54ebe54bb3dceacfddf376a73088896daf900bc6
the actual code is quite small but it did take a good 2-3 weeks for us to work
through it.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list