CADENCE OVM_RGM2.3 RELEASE OVM_RGM2.3 is the OVM version of the Cadence Register and Memory package that has been tested by multiple users on all major commercial simulators.
A UVM_RGM2.3 version exists on uvmworld.org contribution area.<br>
<br>
<u><strong>Library Enhancements</strong></u>: </p>
<p> <strong>General library enhancements:</strong></p>
<ul>
<li>Ability to disable and enable Register update and compare coverage on-the-fly</li>
<li>The VHPI related code becomes conditional to allow DPI run for verilog-only-backdoor on other simulators that do not support VHPI</li>
<li>Added support for shared indirect registers (no parser support at this release)</li>
<li>Added support for indirect address stored in a register's field rather than the entire register. The library automatically updates the field when iterating on indirect registers</li>
<li>Fine granularity control on field randomization control using a mask</li>
<li>[get|set]_field_value issue error when field not found instead of warning</li>
<li>Added rel_name and rel_offset fields in reg-sequence to allow prepend of name and add offset. This enables module to system sequence reuse on top of the container capabilities</li>
</ul>
<p><strong>Built-in-test:</strong></p>
<ul>
<li>Added filtering using address ranges</li>
<li>'debug' switch that prints the filtered registers when '1'</li>
<li>Added example on how to control built-in-seq parameters procedurally</li>
</ul>
Parser:
- Vendor-extension 'indirect_areg_fld' to indicate field of addr reg holding address
- Vendor-extension 'hdl_pattern' for one dimensional and two dimensional array registers.
- Vendor-extension 'randomize_mask' to mask out randomization of fields of register
- Default value of address map size = MAXSZ instead of 'h10000
Examples:
- Indirect shared register example under simple_examples (indirect_shared)
- Changed simple_example/built_in_seq and added filtering using addr range and coverage disabling
- Modified ipxact_examples and added more examples of vendor extension usage
- ipxact_examples has array register example using 'hdl_pattern' vendor-extension
- Field level randomization control example simple_examples/fld_level_rand_control
Bug Fixed:
- Built-in-seq get_config over-riding value if no set_config
- Built-in-seq should source the configs of base sequence class in setup
- ovm_rgm_base 'size' type was int, made ovm_rgm_addr_t
- Fifo register not checking for REG_RD_RSVD
- Function get_field_props returning null field property object
Please look at the docs/release-notes.txt for more details.
For more information about using the ovm_rgm package please contact ovm_contributions@cadence.com
|