In reply to khnabeel:
It is recommended that you use the following UVM guidance:
- Make the virtual interface handle part of your agent’s configuration object.
- Mage the agent’s configuration object part of your environment configuration object.
- Set the virtual interface handle to the config_db at the top level of your testbench (as you are doing).
- Create the environment configuration during the test build phase and set it in the config_db during the build phase, creating the agent configuration as well.
- Assign the agent’s virtual interface handle from the config_db to the agent’s configuration object.
- Create the environment.
- Get the environment configuration from the config_db. Set the agent’s configuration object to the config_db.
- Create the agent.
- Get the agent’s configuration from the oonfig_db. Get the virtual interface handle and other configuration parameters from the configuration object.