[Libre-soc-dev] [SVP64] feedback needed - Pack/Unpack (vpack/vunpack)

Jacob Lifshay programmerjake at gmail.com
Sat Aug 13 03:50:26 BST 2022


On Fri, Aug 12, 2022, 19:05 lkcl <luke.leighton at gmail.com> wrote:

> > how about requiring dest elwidth == src elwidth when
> > pack/unpack is enabled, allowing you to use 1 bit for
> > enabling pack/unpack, and the now available dest elwidth
> > field for selecting what kind of pack/unpack you want?
> > this allows it to fit in 9 bits.
> >Jacob
>
> as i was writing i was just thinking that. the issue is that you
> end up *removing* elwidth overrides from operations, instead
> of damaging the range of regs (r0..r63) now you damage
> src/dest overrides.
>

you missed that elwidth overrides are removed *only* when pack/unpack are
enabled, when they're disabled the dest elwidth field goes back to being
elwidth and not pack/unpack.

pack/unpack-enable field   destelwidth field

0 00 -- no pack/unpack, dest elwidth = 00
0 01 -- no pack/unpack, dest elwidth = 01
0 10 -- no pack/unpack, dest elwidth = 10
0 11 -- no pack/unpack, dest elwidth = 11
1 00 -- reserved
1 01 -- pack/unpack = 01, dest elwidth = src elwidth
1 10 -- pack/unpack = 10, dest elwidth = src elwidth
1 11 -- pack/unpack = 11, dest elwidth = src elwidth

Jacob


More information about the Libre-soc-dev mailing list