User guide

21-44
OpenVera Native Testbench
.vrp, .vrhp, or as specified using option –ntb_vipext, and others.
Only the latter unencrypted files are subject to dependency-based
reordering, and encrypted files are prefixed to them.
Note:
The -ntb_opts dep_check compile-time option specifically
resolves dependencies involving classes and enums. That is, we
only consider definitions and declarations of classes and enums.
Other constructs such as ports, interfaces, tasks and functions
are not currently supported for dependency check.
Using Encrypted Files
VCS-NTB allows distributors of Verification IP (Intellectual Property)
to make testbench modules available in encrypted form. This
enables the IP vendors to protect their source code from
reverse-engineering. Encrypted testbench IP is regular OpenVera
code, and is not subject to special processing other than to protect
the source code from inspection in the debugger, through the PLI, or
otherwise.
Encrypted code files provided on the command line are detected by
VCS, and are combined into one preprocessing unit that is
preprocessed separately from unencrypted files, and is for itself
always preprocessed in –ntb_opts no_file_by_file_pp
mode. The preprocessed result of encrypted code is prefixed to
preprocessed unencrypted code.
VCS only detects encrypted files on the command line (including -f
option files), and does not descend into include hierarchies. While
the generally recommended usage methodology is to separate
encrypted from unencrypted code, and not include encrypted files in
unencrypted files, encrypted files can be included in unencrypted