Skip to content

Towards complete pulpv3 coverage #8

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

Open
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

phsauter
Copy link

@phsauter phsauter commented Jun 21, 2023

Adds opcode definitions that cover almost all instructions in pulpv3 (elw is missing).
This was done as a SoCDAML miniproject in summer 2022.
The entire project consists of changes to:
pulp-platform/riscv-opcodes
pulp-platform/riscv-isa-sim#3
pulp-platform/riscv-tests#5

All are necessary for the goal of having definitions (riscv-opcodes), a reference (riscv-isa-sim) and tests (risv-tests) for the pulpv3 instruction set.

Attached is a slide from the presentation of the project, it shows which instructions were added.
presentation.pdf

phsauter added 10 commits June 21, 2023 16:31
p.ror had only one source register but according to the docs it has two
Different implementations have edited the encoding file directly
instead of generating it, this has caused diverging definitions
of the addresses used.
The current default are the PULPv3 addresses that completely avoid any
known conflicts. Other options are included but commented-out for
the sake of documentation and completeness.
Technically partmac is not a pseudo and it should
be possible to use it independently.
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.

1 participant