[multi_top,clock] Make dv_lib clock frequencies compatible with multi-top
@alees24 is already working on this.
Since Apr 30, 2025.
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
Description
The dv_lib clock frequencies for block-level sims are randomized for earlgrey using https://github.com/lowRISC/opentitan/blob/master/hw/dv/sv/dv_utils/dv_macros.svh#L609. This is okay for simple blocks but can cause trouble for blocks with multiple clocks since the clock ratios can be too far off admissible values. One example is clkmgr for darjeeling, where this makes the "clk" configured via dv_lib to be about the same rate as the AON clock. A similar setting that is problematic for darjeeling is the special setting of the AON clock frequency: this was helpful for earlgrey but will be detrimental for darjeeling.
I think this may explain the failures of clkmgr_frequency_timeout for darjeeling: the clkmgr clk_i is running too slow so the alert arrives much later than the test expects it, but at least it arrives in the case I am examining.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.