-
Notifications
You must be signed in to change notification settings - Fork 91
fix(SimJTAG): remove wire delays for newer version of verilator #748
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
In newer versions of Verilator, functions with delays are not legal,
which causes a compile error:
%Error: /path-to-difftest/src/test/vsrc/common/SimJTAG.v:52:17: Delays are not legal in functions. Suggest use a task (IEEE 1800-2023 13.4.4)
: ... note: In instance 'SimTop'
52 | wire #0.1 __jtag_TDO = jtag_TDO_driven ?
| ^
... See the manual at https://verilator.org/verilator_doc.html?v=5.041 for more assistance.
%Error: Exiting due to 1 error(s)
As the delay not be useful in verilator, thus remove it.
Signed-off-by: Yangyu Chen <[email protected]>
|
I am not sure why we add wire delay for SimJTAG, maybe @poemonsense know about it? |
Maybe just copied from rocket-chip: https://github.com/chipsalliance/rocket-chip/blob/master/src/main/resources/vsrc/SimJTAG.v |
|
The file was brought from https://github.com/chipsalliance/rocket-chip/blob/master/src/main/resources/vsrc/SimJTAG.v. Which verilator version are you using? I'm using v5.042 and it works. If this is a serious issue, we may need to fix in the upstream first to ensure its correctness, given that we don't know why |
I'm also using v5.042. |
|
Are you using the build scripts in difftest? Would you mind try https://github.com/OpenXiangShan/rocket-chip/tree/dev-difftest This is the case we are running in DiffTest CI. The command was like: |
In newer versions of Verilator, functions with delays are not legal, which causes a compile error:
As the delay not be useful in verilator, thus remove it.