Skip to content

Extracting additional useful information from the model #1365

@pmundkur

Description

@pmundkur

This issue tries to capture some points discussed in recent meetings, as design constraints for the next version of the JSON bundle. The information below should be readily extractable without much (ideally, none) parsing of Sail syntax.

  • The JSON bundle is closely tied to the model; it would be good to have it be more ISA-centric.

  • Instruction encodings and assembly mappings, and the when conditions on when those encodings are legal. It would be good to easily extract which extensions that instruction belongs to, separately from the other conditions.

  • The fields of CSR bitfields along with doc-comments for those fields. It would be good to also specify the reset values for the fields or the CSR bitfield as a whole.

  • The addresses and names of the actual CSR registers (with a mapping between the CSR register and the associated bitfield).

  • It would be good to differentiate different register types: integer, floating point, vector, CSRs.

  • It would be good to also easily extract which extensions these registers belong to, just as for instructions.

At a minimum, it should be possible to generate the encodings in riscv-opcodes and various encoding diagrams and tables in the manual.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions