env Class Reference

VMM Test: Environment Class. More...

Collaboration diagram for env:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 new ()
 Constructor.
virtual void gen_cfg ()
 VMM Environment Step 1 - Generate Configuration.
virtual void build ()
 VMM Environment Step 2 - Build Environment.
virtual task reset_dut ()
 VMM Environment Step 3 - Reset DUT.
virtual task cfg_dut ()
 VMM Environment Step 4 - Configure DUT.
virtual task start ()
 VMM Environment Step 5 - Start Transactors.
virtual task wait_for_end ()
 VMM Environment Step 6 - Wait For End.
virtual task stop ()
 VMM Environment Step 7 - Stop Transactors.
virtual task cleanup ()
 VMM Environment Step 8 - Cleanup.
virtual task report ()
 VMM Environment Step 9 - Report.

Public Attributes

rand env_cfg m_env_cfg
 Environment Configuration.
idv_rst_trans_default m_rst_trans_default
 Reset Transaction Default for this DUT.
idv_rst_data_atomic_gen m_rst_gen
 Reset Atomic Generator.
idv_rst_bfm_xactor m_rst_bfm
 Reset BFM Transactor.
idv_rst_mon_xactor m_rst_mon
 Reset Monitor Transactor.
idv_rst_cov_callback m_rst_cov
 Reset Coverage Callback.
idv_rst_cov_callback m_rst_mon_cov
 Reset Coverage Callback.
idv_rst_data_atomic_gen m_rsttst_gen
 Reset Atomic Generator.
idv_rst_bfm_xactor m_rsttst_bfm
 Reset BFM Transactor.
idv_rst_mon_xactor m_rsttst_mon
 Reset Monitor Transactor.
idv_rst_cov_callback m_rsttst_cov
 Reset Coverage Callback.
idv_rst_cov_callback m_rsttst_mon_cov
 Reset Coverage Callback.

Private Attributes

vmm_log m_log
 Log.

Detailed Description

VMM Test: Environment Class.

The Environment Class (env) is a class that is effectively the test harness. It is used to instantiate the Scenario Layer, the Functional Layer, and the Command Layer. It connects these layers together and to the Signal Layer. The Environment Class is instantiated by the top level test program. The Environment Class extends the vmm_env class.

This VMM environment instantiates the reset transactors to test the reset transactor.

Definition at line 72 of file env.sv.


Member Function Documentation

void env::build (  )  [virtual]

VMM Environment Step 2 - Build Environment.

Builds the verification environment according to the value of the test configuration descriptor. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::reset_dut() method.
Build the testbench, xactors, scoreboard, callbacks.

Definition at line 234 of file env.sv.

task env::cfg_dut (  )  [virtual]

VMM Environment Step 4 - Configure DUT.

Configures the DUT according to the value of the test configuration descriptor. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::start() method.

Note:
The CFG transactors need to be started here because they are responsible for configuring the DUT.

Definition at line 331 of file env.sv.

task env::cleanup (  )  [virtual]

VMM Environment Step 8 - Cleanup.

Performs clean-up operations to let the simulation terminate gracefully. Clean-up operations may include letting the DUT drain off all buffered data, reading statistics registers in the DUT and sweeping the scoreboard for leftover expected responses. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::run() method.
Cleanup the testbench, report any scoreboard errors etc.

Definition at line 379 of file env.sv.

void env::gen_cfg (  )  [virtual]

VMM Environment Step 1 - Generate Configuration.

Randomizes the test configuration descriptor. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::build() method.
Randomize the cfg object(s), print a fatal message if the randomization fails.

Definition at line 222 of file env.sv.

env::new (  ) 

Constructor.

Setup Defaults.
Creates an instance of the verification environment.

Definition at line 212 of file env.sv.

task env::report (  )  [virtual]

VMM Environment Step 9 - Report.

Reports final success or failure of the test and close all files. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::run() method.

Definition at line 387 of file env.sv.

task env::reset_dut (  )  [virtual]

VMM Environment Step 3 - Reset DUT.

Physically resets the DUT to make it ready for configuration. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::cfg_dut() method.

Definition at line 309 of file env.sv.

task env::start (  )  [virtual]

VMM Environment Step 5 - Start Transactors.

Starts all the components of the verification environment to start the actual test. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::wait_for_end() method.

Definition at line 339 of file env.sv.

task env::stop (  )  [virtual]

VMM Environment Step 7 - Stop Transactors.

Stops all the components of the verification environment to terminate the simulation cleanly. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::cleanup() method.

Definition at line 367 of file env.sv.

task env::wait_for_end (  )  [virtual]

VMM Environment Step 6 - Wait For End.

Waits for an indication that the test has reached completion or its objective whatever these may be. When this task returns, it signals that the end of simulation condition has been detected. If this method has not been explicitly invoked in the test program, it will be implicitly invoked by the vmm_env::stop() method.
Wait for notification from gen and scoreboard by calling gen.notify.wait_for(atomic_gen::DONE). Wait for all notifiers in a fork-join block.

Note:
vmm builtin notify is enum int, so use "class::enum" User notify is int so use "handle.datamember"

Definition at line 350 of file env.sv.


Member Data Documentation

Environment Configuration.

Definition at line 56 of file env.sv.

vmm_log env::m_log [private]

Log.

Definition at line 73 of file env.sv.

Reset BFM Transactor.

Definition at line 61 of file env.sv.

Reset Coverage Callback.

Definition at line 63 of file env.sv.

idv_rst_data_atomic_gen env::m_rst_gen

Reset Atomic Generator.

Definition at line 60 of file env.sv.

Reset Monitor Transactor.

Definition at line 62 of file env.sv.

Reset Coverage Callback.

Definition at line 64 of file env.sv.

Reset Transaction Default for this DUT.

Definition at line 59 of file env.sv.

Reset BFM Transactor.

Definition at line 68 of file env.sv.

Reset Coverage Callback.

Definition at line 70 of file env.sv.

idv_rst_data_atomic_gen env::m_rsttst_gen

Reset Atomic Generator.

Definition at line 67 of file env.sv.

Reset Monitor Transactor.

Definition at line 69 of file env.sv.

Reset Coverage Callback.

Definition at line 71 of file env.sv.


The documentation for this class was generated from the following file:

Intelligent Design Verification
Intelligent Design Verification
Project: SVreset, Revision: 1.0.0
Copyright (c) 2008-2010 Intelligent Design Verification.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included here:
http://www.intelligentdv.com/licenses/fdl.txt
doxygen
Doxygen Version: 1.6.3
IDV SV Filter Version: 2.6.3
Sat Jun 19 12:14:22 2010
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV