-
Notifications
You must be signed in to change notification settings - Fork 880
Fix packet_type_o port type mismatch in rv_tracer #3186
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
base: master
Are you sure you want to change the base?
Conversation
|
Hi @JeanRochCoulon, can you have a look at this one? |
|
Hi, This PR removes the I guess the error/warning you get comes from the instantiation (in |
|
Hi, Removing the [N-1:0] dimension would therefore break this indexed logic, e.g., at line 747 or line 853 of rv_tracer.sv |
|
@numero-744 and @MaxCThales, you are correct about what this PR does. However as pointed out in #3185, the code in question is not legal SystemVerilog, so we should fix it. |
|
Have you tried the suggestion from my previous message? (Adding an This new dimension can be fixed as To reduce the number of changed line, one could use an intermediary signal as show in the pseudocode below: packet_type_t [0:0] packet_types;
packet_type_t packet_type;
...
.N(1),
...
.packet_type_o (packet_types),
...
assign packet_type = packet_types[0]; |
Add [0:0] unpacked array dimension to packet_type signal declarations in ariane_xilinx.sv and ariane_testharness.sv to match the rv_tracer output port type (it_packet_type_e [N-1:0] with N=1). This replaces the previous approach of removing [N-1:0] from rv_tracer.sv, which would have broken indexed logic for N>1. Ref: openhwgroup#3185
c007d89 to
5c508ef
Compare
|
Thanks @numero-744, @MaxCThales, and @MikeOpenHWGroup for the thorough review. You are right that removing I have reworked the PR following @numero-744's suggestion, the fix is now applied, and keeping
I have verified it with the DSIM 2026 simulator, and the previous port type compatibility issue in #3185 has been resolved. |
Ref: #3185
This PR removes the unpacked array dimension ([N-1:0], with N=1) from the
rv_tracer packet_type_o port to avoid a scalar enum vs [0:0] array type
mismatch under strict SystemVerilog typing (e.g. DSim).