[Libre-soc-dev] v3.1B prefix

Jacob Lifshay programmerjake at gmail.com
Fri Dec 4 00:30:31 GMT 2020


On Thu, Dec 3, 2020, 16:11 Luke Kenneth Casson Leighton <lkcl at lkcl.net>
wrote:

> On 12/3/20, Jacob Lifshay <programmerjake at gmail.com> wrote:
>
> > See https://libre-soc.org/openpower/sv/svp_rewrite/svp64/ for a WIP
> version
> > of SVP64, it should explain/answer some of your questions.
>
> ok, so i see a redesign of the 32 bits of the EXT01 space, some fixed
> bits (6, 9) which i will need to look up to understand, but basically
> the TBD bits total 24.


those two fixed bits are used to select an unallocated quarter of the
64-bit prefix space.

>
> the other part is a table of the EXT01 64 Major opcodes.
>

The table is not actually primary opcodes, it is instead a table of bits
6-11 (iirc) of the prefix (matching the table in the v3.1 spec appendix),
showing the spaces already allocated in OpenPower ISA v3.1, as well as
showing the quarter allocated to SVP64. In all cases, the primary opcode of
the prefix is 1. For SVP64, the primary opcode of the suffix is always just
the primary opcode of the underlying instruction, that is not modified.

aside: please use the names from the spec. -- "major opcode" is not a term
defined in the spec.; assuming you meant "primary opcode", please use that
term instead since it's unambiguous (or at least has much less ambiguity)
and is actually defined in the OpenPower ISA spec.

>
> so bear in mind:
>
> * there are 64 v3.0B major opcodes
>

yup, those are all in the suffix, totally unmodified.

Jacob


More information about the Libre-soc-dev mailing list