Skip to content

[cheriot,rtl] Integrate TRVK filter into Ibex Top#2456

Draft
thommythomaso wants to merge 3 commits into
lowRISC:masterfrom
thommythomaso:tbenz/cheriot-ibex-int
Draft

[cheriot,rtl] Integrate TRVK filter into Ibex Top#2456
thommythomaso wants to merge 3 commits into
lowRISC:masterfrom
thommythomaso:tbenz/cheriot-ibex-int

Conversation

@thommythomaso

@thommythomaso thommythomaso commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

This PR depends on #2455.

The `stream_fork` and `stream_join` modules are used in some CHERIoT memory IPs.

Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
@thommythomaso thommythomaso self-assigned this Jun 30, 2026
@thommythomaso thommythomaso force-pushed the tbenz/cheriot-ibex-int branch 4 times, most recently from 9a2ee2d to 748b234 Compare June 30, 2026 09:35
thommythomaso added a commit to thommythomaso/opentitan-tbenz-pub that referenced this pull request Jun 30, 2026
This commit updates the vendored ibex to `thommythomaso/ibex-tbenz-pub`.
This has to be updated to point to `lowrisc/ibex` as soon as lowRISC/ibex#2455
and lowRISC/ibex#2456 are merged.

Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
@thommythomaso thommythomaso force-pushed the tbenz/cheriot-ibex-int branch 2 times, most recently from f8eaaff to 8348e15 Compare June 30, 2026 13:24
thommythomaso added a commit to thommythomaso/opentitan-tbenz-pub that referenced this pull request Jun 30, 2026
This commit updates the vendored ibex to `thommythomaso/ibex-tbenz-pub`.
This has to be updated to point to `lowrisc/ibex` as soon as lowRISC/ibex#2455
and lowRISC/ibex#2456 are merged.

Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
Signed-off-by: Thomas Benz <tbenz@lowrisc.org>
@thommythomaso thommythomaso force-pushed the tbenz/cheriot-ibex-int branch from 8348e15 to c2bd352 Compare July 1, 2026 06:24

@andreaskurth andreaskurth 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.

Mostly LGTM, thanks @thommythomaso!

A few comments/suggestions below

Comment thread rtl/ibex_top.sv
Comment on lines +1285 to +1286
trvk_revbm_data_intg_error |
trvk_revbm_device_error;

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.

Shouldn't these feed into alert_major_bus_o? Potentially worth discussing with Pascal and/or Pirmin

.trvk_revbm_addr_o ( ),
.trvk_revbm_rdata_i ('b0 ),
.trvk_revbm_rdata_intg_i ('b0 ),
.trvk_revbm_err_i ( ),

@andreaskurth andreaskurth Jul 3, 2026

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.

Suggest tying off (only the last line)

Comment thread rtl/ibex_top.sv
trvk_revbm_rdata_i,
trvk_revbm_rdata_intg_i,
trvk_revbm_err_i,
trvk_rtag,

@andreaskurth andreaskurth Jul 3, 2026

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.

suggest tying off in this branch (only the last line) - otherwise it's both undriven and unused, which may cause lint problems

Comment thread rtl/ibex_top.sv
Comment on lines 16 to +26
@@ -21,6 +22,8 @@ module ibex_top import ibex_pkg::*; #(
parameter ibex_pkg::pmp_cfg_t PMPRstCfg[PMP_MAX_REGIONS] = ibex_pkg::PmpCfgRst,
parameter logic [PMP_ADDR_MSB:0] PMPRstAddr[PMP_MAX_REGIONS] = ibex_pkg::PmpAddrRst,
parameter ibex_pkg::pmp_mseccfg_t PMPRstMsecCfg = ibex_pkg::PmpMseccfgRst,
parameter int unsigned CheriotRevBitmapAddrWidth = 32'd9,
parameter int unsigned CheriotRevBitmapBaseAddr = 32'h0,

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.

Suggest documenting the new parameters in integration.rst. Not a blocker - if you prefer to do this later, please create an issue.

Similarly, I suggest describing the internal workings of this PR and #2455 in the reference guide - also not blocking but should be tracked in an issue if defered.

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