deshiashish Posted February 21, 2012 Report Share Posted February 21, 2012 Hi All, I am trying to migrate my OVM Testbench to UVM. I am using UVM 1.1 with irun(64): 10.20-s107. After doing the basic migration using the option "+UVM_USE_OVM_RUN_SEMANTIC" I made change to remove all DEPRECATED code and re-ran compilation with option "+define+UVM_NO_DEPRECATED". But I am getting following compilation error from UVM_RGM package (uvm_rgm_2.5). I see that the code used there is actually DEPRECATED as per UVM guidelines. Can somebody help me in knowing why is this coming and how to resolve it? `uvm_update_sequence_lib_and_item(uvm_rgm_reg_op) | ncvlog: *E,NOTDIR (/uvm_rgm_2.5/sv/uvm_rgm_sequencer.sv,39|36): `uvm_update_sequence_lib_and_item: not a recognized directive or macro [2.7.3][16.3.1][16(IEEE)]. Thanks. Quote Link to comment Share on other sites More sharing options...
uwes Posted February 21, 2012 Report Share Posted February 21, 2012 hi, the uvm_update_sequence_lib_and_item macro is deprecated thats why removing all deprecated code from the lib using +define+UVM_NO_DEPRECATED is causing an compile error. im not entirely sure whether uvm-rgm-latest (2.7.5) (http://www.uvmworld.org/contributions-details.php?id=125&keywords=Cadence_UVM_RGM2.7.2_release) comes without deprecated code - but you might want to try. /uwe Quote Link to comment Share on other sites More sharing options...
deshiashish Posted February 21, 2012 Author Report Share Posted February 21, 2012 Thanks UWES. Does it mean that I need to remove the deprecated code from UVM_RGM package also? I tried the new uvm_rgm-2.7.5 and it also gives the same error. Quote Link to comment Share on other sites More sharing options...
Roman Posted February 21, 2012 Report Share Posted February 21, 2012 Thanks UWES. Does it mean that I need to remove the deprecated code from UVM_RGM package also? I tried the new uvm_rgm-2.7.5 and it also gives the same error. I had manually changed the deprecated codes from UVM_RGM package to UVM1.1 recommended styles , It could work very well. I think Cadence will remove all deprecated codes from UVM_RGM package in following release. Quote Link to comment Share on other sites More sharing options...
deshiashish Posted February 21, 2012 Author Report Share Posted February 21, 2012 I had manually changed the deprecated codes from UVM_RGM package to UVM1.1 recommended styles , It could work very well. I think Cadence will remove all deprecated codes from UVM_RGM package in following release. Thanks Roman. I saw your contribution and tried it, but I get a compilation error over use of function "remove_sequence". I see that function "remove_sequence" is under " `ifndef UVM_NO_DEPRECATED " inside "uvm-1.1/src/seq/uvm_sequencer_base.svh" so I get compilation error. How do you get past this issue? Quote Link to comment Share on other sites More sharing options...
Roman Posted February 21, 2012 Report Share Posted February 21, 2012 Hi, The old version works here long time ago, maybe there are other issues with this version in your TB. I am using RGM2.6.1 with modification. No time to move to 2.7.5 so far. For you , Why not move to 2.7.5 and modify deprecated codes based on http://www.uvmworld.org/contributions-details.php?id=107&keywords=Appnote:_Migrating_from_OVM_to_UVM-1.0? Quote Link to comment Share on other sites More sharing options...
deshiashish Posted February 21, 2012 Author Report Share Posted February 21, 2012 That is exactly what I am trying to do with uvm-1.1 & UVM_RGM-2.5 or UVM_RGM-2.7.5. The only point of confusion is, why is the DEPRECATED code present in UVM_RGM package. I was expecting that it does not have OVM deprecated code. Quote Link to comment Share on other sites More sharing options...
adielkhan Posted February 21, 2012 Report Share Posted February 21, 2012 Hi, Looks like your problems are with the Cadence RGM package. As this package is NOT part of UVM or supported by Accellera please contact the author for issues to do with that package. The UVM register abstraction layer package is called UVM_REG and is part of UVM developed within Accellera with the support from all contributing companies. If you would like to use Accellera standard and supported code then upgrade your code to use UVM_REG. How to do migrations from OVM_RGM to UVM_REG are part of DVCon 2012 and papers will be available from DVCon website. thanks, adiel. Quote Link to comment Share on other sites More sharing options...
uwes Posted February 21, 2012 Report Share Posted February 21, 2012 (edited) hi, while i agree with adiel on the fact that UVM_RGM is a Cadence owned packaged and UVM_REG is part of the UVM standard and RGM is not - i think no one needs to rush and replace RGM and migrate to REG. UVM_RGM is a cadence contribution package which is in use throughout customers and has been used in numerous projects. you may consider switching to UVM_REG when starting a new project, building a whole new model etc. but if UVM_RGM is already present in the original OVM|UVM TB you should think twice if you want to add the effort of switching the models ... /uwe Edited March 1, 2012 by uwes Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.