Skip to content

[rtl] Switch to ratified bitmanip extensions - #2459

Open
thommythomaso wants to merge 1 commit into
lowRISC:masterfrom
thommythomaso:tbenz/bitmanip
Open

[rtl] Switch to ratified bitmanip extensions#2459
thommythomaso wants to merge 1 commit into
lowRISC:masterfrom
thommythomaso:tbenz/bitmanip

Conversation

@thommythomaso

@thommythomaso thommythomaso commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

This PR switches the RTL of Ibex from our currently unratified bitmanip extension to the officially ratified extensions.

An overview of the changes can be found here.

This PR only introduces the RTL changes and ensures the CI tests pass. Certain scalar crypto extensions are not yet fully verified; see #2468.

@marnovandermaas marnovandermaas left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Initial comments from me. Do you think it is worth squashing the commits that just remove things? I think it may be excessive to have 9 separate commits for removing instructions.

Comment thread rtl/ibex_decoder.sv
Comment thread rtl/ibex_decoder.sv Outdated
Comment thread doc/01_overview/compliance.rst
@thommythomaso

Copy link
Copy Markdown
Contributor Author

Initial comments from me. Do you think it is worth squashing the commits that just remove things? I think it may be excessive to have 9 separate commits for removing instructions.

I have them as individual commits to help people review the changes. I would have squashed all into one after the review process. What do you think?

@thommythomaso
thommythomaso marked this pull request as ready for review July 16, 2026 06:53

@SamuelRiedel SamuelRiedel left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for cleaning up the bitmanip @thommythomaso. I did a quite thorough review, but most of it should be easy to fix.

The only thing that is left is that we should update RISC-V DV to also support the latest ratified extensions. I saw that the ratified B extensions are supported already, but for the scalar crypto ones, we currently simply enable the Zbp still, right? I think this is good enough for now, but we should create an issue documenting the current state, like which instructions are emitted by riscv-dv and which aren't and what we would ideally want to then clean up the DV in a second step at least.

Comment thread doc/01_overview/compliance.rst Outdated
Comment thread doc/01_overview/compliance.rst Outdated
Comment thread doc/03_reference/instruction_decode_execute.rst Outdated
Comment thread doc/03_reference/instruction_decode_execute.rst
Comment thread dv/cosim/spike_cosim.cc
Comment thread rtl/ibex_decoder.sv Outdated
Comment thread rtl/ibex_decoder.sv Outdated
Comment thread rtl/ibex_decoder.sv Outdated
Comment thread rtl/ibex_tracer_pkg.sv Outdated
Comment thread rtl/ibex_alu.sv Outdated
This PR removes the unratified bitmanip extensions from Ibex and switches to the ratified set.

We remove `Xzbe0p93`, `Xzbf0p93`, `Xzbr0p93`, `Xzbt0p93`, and `Xzbe0p93`, replacing them with
`Zbkb` and `Zbkx`.

Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
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.

3 participants