Wednesday, April 23, 2008

Advanced use of define macro in RVM and VMM of Synopsys

If you have used RVM (Reference Verification Methodology) library for Vera or VMM (Verification Methodology Manual) library for SystemVerilog, implemented by Synopsys, you can recall channel, atomic generator, scenario genertor, rvm_OO_callbacks, vmm_callbacks macros. These macros are generic/reusable macro written using above mentioned two powerful features of define macro.

In VMM for SystemVerilog,
`channel(data_class) // data_class_channel
This macro call creates customized channel class declaration handling object of type data_class.

`atomic_gen(data_class) // data_class_atomic_gen
This macro call creates customized atomic generator class declaration handling object of type data_class.

`scenario_gen(data_class) // data_class_scenario_gen
This macro call creates customized scenario generator class declaration handling object of type data_class.
This macro call all creates classes like 'data_class_scenario', 'data_class_scenario_election', etc.

If you have noticed, implementation of `vmm_callbacks is given in the vmm document.

I hope this information improves your knowledge about using define macro.

$finish;


No comments:

Post a Comment