[dvsim] Issue with Gate Level Simulation using SDF File
Nobody has claimed this yet.
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
Hi there,
For fusesoc in dvsim, it will copy the source systemverilog codes into `src` folder and use the copied files for compiling.
But for gate level simulation(netlist already obtained, just replace the file list and add some command) on vcs, the sdf function `$sdf_annotate ( “sdf_file”,,,,,, “scale_type”);` has a very special requirement:
```
“sdf_file”:
The full or relative path of the SDF file. This argument is required and must be in quotation marks. You can specify the file name with the +sdf_file plus option on the command line.
```
which means that if you use this function in tb, the passed in `sdf_file` should be a raw string instead of a string variable.
In this case, the fusesoc will change the relative path during compiling and hence a FileNotFound error regarding sdf file will occur.
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.
Research direction
Start with the dvsim FuseSoC source-copy and compilation flow described in the issue, then reproduce the VCS gate-level simulation using the `$sdf_annotate` entry point. Done means the SDF file remains resolvable after compilation and the simulation no longer reports a FileNotFound error.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system, testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100