Pass Sequencer to RAL Block

Hi all,

I have created RAL model in UVM , there we have a specific method, by using that i can pass sequencer to RAL block.

tb_cfg.uart_reg_model2.uart_map.set_sequencer(agth[1].seqr, regadp);

Regisre_name.write(status, data, .parent(null));

so, after connection, by using write api, i can update register value in ral MODEL…

My question is, How same thing i can do with OVM.?? till now i found only bus_write(), bus_read() method,

The UVM Register Package has been ported to OVM to give you the same functionality. You can read about it in the OVM Cookbook.

In reply to cgales:

Hi cgales,

The UVM Register Package has been ported to OVM to give you the same functionality. does that mean , i have to write my whole register model, adapter,map,etc by extending from UVM base classes or should i change every “U” to “O”.

or simply i can use the working uvm register model with my ovm test bench??


In reply to Darshan@Dehuniya:

The OVM version of the UVM Register Package has everything the was uvm_* converted to ovm_, so yes, you will have to change everything from uvm_ to ovm_*. The Mentor tools which generate Register Packages from user definitions provide you the option to create either a UVM version or OVM version. Other tools may vary.

In reply to cgales:

Hi cgales,

after importing the “uvm_reg_pkg” i tried to compile my register model code by changing all uvm_* to ovm_*. It is not working and showing below errors.

Error: …/register_model/ near “ovm_reg”: syntax error, unexpected IDENTIFIER

It was working fine, if I revert back all ovm_* to uvm_*.

Please, let me know, what might be the problem for my errors.

In reply to Bhautik Baraiya:

When you are using the UVM Register package with OVM, you should import ovm_register_pkg::* when you want to utilize it. If you are using UVM, there is never a need to import any register package as it is part of UVM. It looks like you are using an old uvm_reg_pkg which is no longer needed with UVM.

In reply to cgales:

Hi cgales,

from when i can download new ovm_register_pkg?

i have ovm_register2.0 packege.

in that i couldn’t find ovm_reg_adapter.svh file. does it mean ovm is not support adapter??

one more question: in ovm_register2.0 pkg , i have found file, in this file they have declared ovm_register_driver, ovm_register_monitor , ovm_register_sequencer… How can i use them? what is use of that agent and class?? share any example if you have…