Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Per-Page Instruction Description for RV32I #1

Merged
merged 2 commits into from
Aug 16, 2024

Conversation

AFOliveira
Copy link
Collaborator

@AFOliveira AFOliveira commented Aug 16, 2024

Hello!

This PR introduces a continuation of the approach to instruction-per-page documentation for RISC-V that has been followed by newer extensions like "B", Vector crypto and Scalar crypto. We are actively trying to improve the process of documentation generation and believe that aligning the base ISA with these extensions would greatly increase the manual. We recognize that there might be things to improve and that we are fully open to address any feedback.

Key points:

  • Enhanced instruction description structure:
    • Synopsis
    • Mnemonic
    • Encoding - with attributes
    • Description
    • Arguments
    • Operation (SAIL Code - retrieved from the SAIL repository)
    • Included in - (Extensions)
  • Automated documentation generation:
    As discussed in Enhance RISC-V Instruction Documentation riscv/riscv-isa-manual#1590 we are also trying to achieve a nice automation process based on existing repos and minimizing our impact as we possible can. Please take note that, in order to achieve the most of this layout, we refined some of the SAIL Code by hand.

Current status:

  • Proof of concept covering a subset of RISC-V instructions (RV32I)
  • Example output available in the RISC-V instructions PDF riscv-unprivileged.pdf

There is a possibility here to impact the 200+ instructions in the manual that aren't still in this format if this approach is welcomed.

We welcome feedback on the approach, output quality, and potential modifications to existing repositories to support this effort.

Related issues: riscv#1470, riscv#1369, riscv#1253, riscv#1396, riscv#1567

Co-authored-by: Afonso Oliveira  <[email protected]>
Co-authored-by: Alfredo Rodrigyes <[email protected]>
@AlfredoRodrigues4 AlfredoRodrigues4 merged commit 3ec2f19 into main Aug 16, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants