|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LICENSE.txt ................... Apache 2.0 license
NOTICE.txt..................... Intellectual property notice
vmm_versions .................. Distribution verification script
patch_vcs ..................... Script to patch a VCS installation*
doc/ .......................... PDF User's Guide
html/ ..................... Developper's Class Reference
index.html ........... Top-level HTML file
sv/
vmm.sv ..................... Standard library top-level file
vmm_ral.sv ................. RAL/MAM top-level file
vmm_sb.sv .................. Scoreboard package top-level file
vmm_hw.sv .................. HAL top-level file
std_lib/ ................... Standard Library source files
RAL/ ....................... RAL source files
sb/ ........................ Scoreboard package source files
HAL/ ....................... HAL source files
examples/ .................. Examples
std_lib/ .......... Basic VMM examples
subenv/ ........... Environment composition example
RAL/ .............. RAL example
sb/ ............... Scoreboard package example
HAL/ .............. HAL example
shared/
bin/ ................... Tool binaries and Scripts
lib/
templates/ ......... Code templates used by 'vmmgen'
|
|
The SystemVerilog source code is believed to be 100% compliant with the IEEE P1800-2008 standard. Any non-compliant usage is unintentional and will be fixed if reported. The examples are provided with Makefiles targetted for the VCS simulator. They are intended as a demonstration only and do not imply that VCS is required to use the VMM code. Any simulator compliant with the IEEE P1800-2008 standard should be able to compile and execute the examples, after a suitable modification of the Makefiles. The source code contains some VCS-specific code included within "`ifdef VCS/`endif" regions. The VCS-specific code enables some additional VMM-awareness functionality with VCS and/or DVE as well as provides some built-in functions for greater run-time performance rather than using the DPI. The VCS-specific code is *NOT* required to correctly simulate the VMM source code. Any reference to the OpenVera (OV) language in the documentation refers to the OV implementation of the VMM library, which is not included in this distribution. OpenVera or an OpenVera simulator is not required to use VMM. Any reference to the Vera or VCS simulator in the documentation is for illustration of how to use VMM with those specific tools. The Vera or VCS simulators are not required to use VMM. The code and examples have been verified with version 2006.06-SP2 of the VCS simulator. |
Installation of VMM requires only unpacking the distribution in a convenient location. No additional installation procedures or scripts are necessary.% mkdir /some/path % cd /some/path % gunzip -c path/to/vmm-1.0.1.tar.gz | tar xvf - |
You must define the environment variable "VMM_HOME" to the path containing the unpackaged distribution. This environment variable is required to run some examples and scripts. It also eases the specification of the location where to pick-up the source file.% setenv VMM_HOME /some/path/vmm-1.0.1 If you have the VCS simulator installed and properly set-up, you can check the content of the distribution by using the command: % $VMM_HOME/vmm_versions You should add $VMM_HOME/shared/bin to your command search path to be able to use the tools and scripts included in the distribution. % setenv PATH $VMM_HOME/shared/bin:$PATH Scripts require that "perl" be visible in your command path. Tools are distributed in binary form for Linux and Solaris. Should you be running on a different operating system or hardware architecture, please contact Synopsys to obtain a suitable version of the tool binaries. You can make the VMM Standard Library visible to your SystemVerilog code by including the file "vmm.sv". `include "vmm.sv" It will be necessary to specify where the VMM source files are located on the compilation command line. This can easily be done via the +incdir command-line option and the VMM_HOME environment variable. % ... +incdir+$VMM_HOME ... When used on a non-VCS simulator, it will be necessary to include the file $VMM_HOME/sv/std_lib/vmm_str_dpi.c to supply the regular expression string matching library. Similarly, it may be necessary to include the file $VMM_HOME/sv/std_lib/vmm_xvc_dpi.c to supply the XVC command parsing and execution library. Please refer to your simulator's documentation on how to include a DPI library. You can make a VMM Application package visible to your SystemVerilog code by including the file corresponding to the application package:
Using the VMM Hardware Abstraction Layer with an architecture other than the VMM_HW_ARCH_NULL architecture requires software and hardware provided by emulation, acceleration or prototyping vendors. This software is not included in this distribution and must be obtained from the appropriate sources. |