I’m getting similar messages that previous posters when trying to elaborate the design:
*ncelab: *E,CUVHNF (/vlsicad/soft2010lnx/IUS82HF015/tools/ovm/sv/src/tlm/ovm_imps.svh,94|35): Hierarchical name component lookup failed at ‘ok_to_put’.
NONBLOCKING_PUT_IMP (m_imp, T, t) | ncelab: *E,CUVHNF (/vlsicad/soft2010lnx/IUS82HF015/tools/ovm/sv/src/tlm/ovm_imps.svh,94|35): Hierarchical name component lookup failed at 'ok_to_put'.
NONBLOCKING_PUT_IMP (m_imp, T, t)
|
ncelab: *E,CUVHNF (/vlsicad/soft2010lnx/IUS82HF015/tools/ovm/sv/src/tlm/ovm_imps.svh,94|35): Hierarchical name component lookup failed at ‘ok_to_put’.
irun: E,ELBERR: Error during elaboration (status 1), exiting.
I compiled all source codes using ‘irun -compile -sv -ovm’ also including the OVM source library using ‘-ovmhome’. After running ‘irun -sv -ovm -f compile_ius.f’ to my top level module, I got the elaboration errors. File ‘compile_ius.f’ was a modification of the file supplied with OVM 2.0.3.
I could not find ‘ok_to_put()’ method from the OVM reference manual supplied with IUS 8.20 although error messages seem to indicate that I have not implemented such methods somewhere in my code. I have used the macro `ovm_nonblocking_imp_decl in several places. I’m currently trying to use OVM 2.0.1 with IUS 8.20-s015. The code compiled and ran just fine with Modelsim 6.5c using OVM 2.0.3. I do not have a chance to switch to newer versions of IUS, so I have to find a compatible OVM version with IUS 8.20-s015.
If I wanted to use OVM 2.0.3, should I compile ovm_pkg.sv first, before compiling and running my own code, and then link the compiled library to my code?
I tried compiling ovm_pkg.sv (OVM 2.0.3) using ‘irun -sv -compile ovm_pkg.sv’ but got the following errors messages:
*irun(64): 08.20-s015: (c) Copyright 1995-2009 Cadence Design Systems, Inc.
file: ovm_pkg.sv
Q.delete(); //SV 2008
|
ncvlog: *E,NPITEM (ovm_macros.svh,30|5): Not a valid package item: ‘module/udp instance’ [SystemVerilog].
(include file: ovm_macros.svh line 30,
include file: ovm.svh line 23, file: ovm_pkg.sv line 26)
Q.delete(); //SV 2008
|
ncvlog: *E,EXPLPA (ovm_macros.svh,30|5): expecting a left parenthesis (‘(’) [12.1.2][7.1(IEEE)].
(include file: ovm_macros.svh line 30,
include file: ovm.svh line 23, file: ovm_pkg.sv line 26)
if(ovm_report_enabled(VERBOSITY)) \
|
ncvlog: *E,NULLEI (macros/ovm_message_defines.svh,107|38): zero length escaped identifier [2.7.1(IEEE)].
(include file: macros/ovm_message_defines.svh line 107,
include file: ovm_macros.svh line 39, `include file: ovm.svh line 23, file: ovm_pkg.sv line 26)
…
*Thanks in advance, and I’d appreciate all the help I can get to be able run the code with IUS. Let me know if you need more information.