Jump to content
Sign in to follow this  
ggupta

OVM RGM Porting to UVM

Recommended Posts

Hi,

For the next project we are porting our methodology to UVM.

I have one basic question, whether UVM supports RGM or it is completely RAL now??

Also is RAL supported by Cadence??

 

 

Thanks a lot,

 

Regards,

Gaurav

Share this post


Link to post
Share on other sites

UVM_REG is a combination of VMM and OVM/UVM RGM.  It is the register open standard.  Tool generation is vendor specific (there are a lot of third party tools out there too -- which produce IP-XACT 1.5). For Cadence, iregGen takes in IP-XACT 1.5 xml.  This makes use of the vendor Extensions.  I think RAL has been expanded to produce the register model in SystemVerilog.

Share this post


Link to post
Share on other sites

depends what you means with RAL.

 

RAL (the register model) has been upgraded significantly and is now part of UVM. that register model is labeled UVMREG and the cadence register generator supports that model. that means ireggen can generate output for UVMREG. 

 

RAL (the register input description) is not supported by ireggen. ireggen main input is based upon the IPXACT standard.

 

regards

/uwe

Share this post


Link to post
Share on other sites

GG,

 

If you have a Register Model for UVM_REG and an adapter, you are good to go for upfront things like reading and writing registers using the UVM_REG API calls.

 

Now you have to decide on how to do prediction (this keeps the register model and the actual DUT synchronized.)

Initially you can go with auto-prediction (by default it is off), but eventually you will want to create a predictor for your bus transactions (which tracks both actual bus transactions coming from the register model and other sources.)

 

Turning on auto-predict will monitor your register transactions, but not all the transaction on the bus (outside of the register model.) This known as implicit prediction.

 

Explicit prediction is done when you extend uvm_reg_predictor:

 

Explicit Register Predictor The uvm_reg_predictor class defines a predictor component, which is used to update the register model’s mirror values based on transactions explicitly observed on a physical bus.

 

More on this in 5.9.3 on in the User's Guide

 

Lisa

Share this post


Link to post
Share on other sites
IDesignSpec™ - Create Executable Design Code From The Specification – UVM Register Generator

IDesignSpec™ is an award winning semiconductor design and verification product that allows an IP, chip or system designers to create the register map specification for their digital system once and automatically generate all of the required outputs from it.

A wide range of outputs are available such as UVM, OVM, RALF, SystemRDLIP-XACT and user defined outputs created using Tcl or XSLT scripts. IDesignSpec’s PATENTED technology improves engineer’s productivity and design quality.

Check out - https://www.agnisys.com/products/idesignspec-uvm-register-generator/

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×