[Libre-soc-dev] bitmanip planning

Jacob Lifshay programmerjake at gmail.com
Fri Nov 5 03:45:46 GMT 2021


On Thu, Nov 4, 2021 at 3:59 PM lkcl <luke.leighton at gmail.com> wrote:
> >, though the
> >instruction
> >encoding might be more trouble.
>
> yes. it barely fits.

Assuming we want to use major opcode 22 for bitmanip instructions for
now, we'll need to decide what to do with the SV ops that are taking
up that space, currently we have:
bits 26..30:
0b00000 setvl
0b00001 svshape
0b00010 svremap
0b00011 svstep

I propose we reassign them to fit in the mode field of ternary:
bits 26..30:
0b00001 ternary
0b01001 setvl
0b10001 svshape/svremap/svstep determined by using bits 21..25
0b11001 TBD

This leaves space for the other encodings:
bits 26..30:
0b00000 ternaryi
0b00001 ternary
0b00010 bitmask
0b00011 xperm/reserved

Should I just do that in the csvs or are there other places that need
to be simultaneously updated?

Jacob



More information about the Libre-soc-dev mailing list