User Guide: DSim Using Verification Frameworks
UVM
DSim ships with UVM-1.1b, UVM-1.1d, UVM-1.2, and UVM-2020.3.1. All uvm packages required some customization, in part because UVM actually does not compile properly if none of the major vendor's tools are used. Presumably none of the UVM maintainers had any way of testing this.
The recommended approach for configuring your uvm version is to use the command line option -uvm <version>
. Supported versions include: 2020.3.1
, 1.2
, 1.1d
, or 1.1b
.
A custom UVM package can be provided by specifying -uvm <path>
where path is either a relative path or an absolute path. Either will work for on-prem versions of dsim but the relative path is more portable to DSim Cloud. If you want the same custom UVM for use with DSim Cloud it needs to be in a path which will be sync'd to the cloud with your source code and you must use a relative path.
Using Backdoor DPI
If you are using the UVM backdoor functionality, then you should review your use of the +acc
VPI accessibility switches.
The requirements will vary depending on what your testbench does. With reference to the
VPI acess options
the following changes may be required:
- For any HDL signal that the testbench reads:
+acc+r
. - For any HDL signal on which a callback may be set:
+acc+b
. This is required if you are using the IEEE 1800.2 HDL polling function. - For any HDL signal that the testbench will write:
+acc+w
. Since this permission significantly impairs performance it is recommended to use an-acc-specs
file to instrument only those signals that require it. - For any HDL signal that the testbench will force:
+acc+f
. Since this permission significantly impairs performance it is recommended to use an-acc-specs
file to instrument only those signals that require it.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article