[Libre-soc-bugs] [Bug 782] add galois field bitmanip instructions

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Tue Mar 8 18:45:32 GMT 2022


https://bugs.libre-soc.org/show_bug.cgi?id=782

--- Comment #47 from Jacob Lifshay <programmerjake at gmail.com> ---
(In reply to Luke Kenneth Casson Leighton from comment #44)
> > there is no top half. gfbmul returns the entire answer. if we tried to make
> > a gfbmulh, it would always return 0 unless the reducing polynomial had a
> > degree of  more than 64 (64 is the max in the current design).
> 
> by that logic clmulh should not exist.  there is something missing
> here which needs to be explained and clarified.

clmul is polynomial multiplication where the coefficients are GF(2), not
GF(2^k) multiplication.

GF(2^k) multiplication has the additional step of calculating the polynomial
remainder of dividing by the reducing polynomial -- essentially taking what
would be the top half and merging it into the bottom half, leaving the top half
now empty. This is similar to why the integers mod 16 have zeros everywhere
except the least significant hex digit, because the mod 16 operation removed
them, leaving zeros.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the libre-soc-bugs mailing list