sergiu Posted June 3, 2012 Report Share Posted June 3, 2012 I tried, for some now, to run a successful simulation in Cygwin using Makefiles. I got to a point where the compilation is without errors, only some warnings like: uvm_sequence.svh(89): (qverilog-2283) Extra semicolon in $unit (global) scope (UVM1.0) My problem comes after that. After the vsim command is issued, no printing appears on the screen and I can't write anything in the window anymore. The Questasim does its job, I can the log files but to run it again I have to close the Cygwin and reopen it. If someone could help it, I would really appreciate it. Thanks! Bicspoili 1 Quote Link to comment Share on other sites More sharing options...
dave_59 Posted June 8, 2012 Report Share Posted June 8, 2012 Cygwin releases very frequently - the cygwin.dll has gone from 1.7.9 to 1.7.15 in the past two months. For this reason, Questa is not officially supported on this platform. BTW, this just happened to me a week ago on my own laptop and I just uninstalled/re-installed Questa and the problem went away. Quote Link to comment Share on other sites More sharing options...
chandan Posted September 20, 2012 Report Share Posted September 20, 2012 Hi all, Please help me in running uvm1.0pl with questasim1.0b in cygwin. My settings are as following : 1) $UVM_HOME set to /cygdrive/c/cygwin/home/chandan/uvm-1.0p1 2) $MTI_HOME set to /cygdrive/c/questasim_6.4c/win32/ Using make -f Makefile.questa all for hello_world program which has: GCCCMD = $(GCC) \ -m$(BITS) \ -fPIC \ -DQUESTA \ -g \ -W \ -shared \ -I$(MTI_HOME)/include \ $(DPI_SRC) \ -o $(LIBDIR)/$(LIBNAME).so --------------------------------------------------------- Messages are : mkdir -p ../../../lib g++ -m32 -fPIC -DQUESTA -g -W -shared -I/cygdrive/c/questasim_10.0b/include ../../../src/dpi/uvm_dpi.cc -o ../../../lib/uvm_dpi.so ../../../src/dpi/uvm_dpi.cc:1: warning: -fPIC ignored for target (all code is position independent) /tmp/ccHgShgW.o: In function `uvm_hdl_max_width': /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:51: undefined reference to `_vpi_handle_by_name' /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:56: undefined reference to `_vpi_get_value' /tmp/ccHgShgW.o: In function `uvm_hdl_set_vlog_partsel': /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:110: undefined reference to `_svGetPartselLogic' /tmp/ccHgShgW.o: In function `uvm_hdl_get_vlog_partsel': /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:168: undefined reference to `_svGetBitselLogic' /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:169: undefined reference to `_svPutPartselLogic' /tmp/ccHgShgW.o: In function `uvm_hdl_set_vlog': /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:203: undefined reference to `_vpi_handle_by_name' /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:206: undefined reference to `_vpi_handle_by_name' /home/chandan/uvm-1.0p1/examples/simple/hello_world/../../../src/dpi/uvm_hdl.c:210: undefined reference to `_vpi_printf' Thanks and Regards, Chandan Quote Link to comment Share on other sites More sharing options...
dave_59 Posted September 21, 2012 Report Share Posted September 21, 2012 You should be using the UVM DPI library that comes with Questa. See http://go.mentor.com/uvm1-0-questa Quote Link to comment Share on other sites More sharing options...
chandan Posted September 21, 2012 Report Share Posted September 21, 2012 Thanks Dave. I have now: 1) $MTI_HOME as /cygdrive/c/questasim_10.0b 2)$UVM_HOME as /cygdrive/c/questasim_10.0b/verilog_src/uvm-1.0p1 But I am still getting error as : $ vlog hello_world.sv QuestaSim vlog 10.0b Compiler 2011.05 May 5 2011 -- Compiling module hello_world -- Importing package mtiUvm.uvm_pkg (uvm-1.0p1 Built-in) ** Error: packet.sv(29): (vlog-2163) Macro `uvm_object_utils_begin is undefined. ** Error: packet.sv(29): near "(": syntax error, unexpected '(', expecting function or task ** Error: packet.sv(30): (vlog-2163) Macro `uvm_field_int is undefined. ** Error: packet.sv(31): (vlog-2163) Macro `uvm_object_utils_end is undefined. Quote Link to comment Share on other sites More sharing options...
dave_59 Posted September 21, 2012 Report Share Posted September 21, 2012 Does the hello_world.sv have at the top `include "uvm_macros.svh" You need this because the UVM package is now a separate compilation form the hello_world.sv Quote Link to comment Share on other sites More sharing options...
chandan Posted September 21, 2012 Report Share Posted September 21, 2012 Thanks Dave. With `include "uvm_macros.svh" it works now. I am using : vlog hello_world.sv -writetoplevels questa.tops vsim -sv_lib /cygdrive/c/questasim_10.0b/uvm-1.0p1/lib/uvm_dpi -c -do "run -all; q" -f questa.tops Is there any better option with switches or any modification needed? Quote Link to comment Share on other sites More sharing options...
dave_59 Posted September 21, 2012 Report Share Posted September 21, 2012 (edited) You don't need the -sv_lib switch when using the UVM package that comes with Questa. Edited September 22, 2012 by dave_59 chandan 1 Quote Link to comment Share on other sites More sharing options...
chandan Posted November 18, 2012 Report Share Posted November 18, 2012 (edited) Hi Dave, Coming back to this post again. How to compile the DPI library in questa 10.0b. If I use makefile provided in uvm1.0p1. Messages are : ------------------------------------------ make -f Makefile.questa BITS=32 dpi_lib make[1]: Entering directory `/home/chandan/uvm-1.0p1/examples/simple/hello_world' mkdir -p /cygdrive/c/questasim_10.0b/uvm-1.0p1/lib g++ -m32 -fPIC -DQUESTA -g -W -shared -I/cygdrive/c/questasim_10.0b/win32/include /cygdrive/c/questasim_10.0b/uv m-1.0p1/src/dpi/uvm_dpi.cc -o /cygdrive/c/questasim_10.0b/uvm-1.0p1/lib/uvm_dpi.so /cygdrive/c/questasim_10.0b/uvm-1.0p1/src/dpi/uvm_dpi.cc:1: warning: -fPIC ignored for target (all code is position inde pendent) /tmp/cc9FrhXe.o: In function `uvm_hdl_max_width': /cygdrive/c/questasim_10.0b/uvm-1.0p1/src/dpi/uvm_hdl.c:51: undefined reference to `_vpi_handle_by_name' /cygdrive/c/questasim_10.0b/uvm-1.0p1/src/dpi/uvm_hdl.c:56: undefined reference to `_vpi_get_value' /tmp/cc9FrhXe.o: In function `uvm_hdl_set_vlog_partsel': ------------------------------------------etc The earlier solution is working as you suggested. Thanks and Regards, Chandan Edited November 18, 2012 by chandan Quote Link to comment Share on other sites More sharing options...
dave_59 Posted November 18, 2012 Report Share Posted November 18, 2012 From my perspective, I consider the first release of the UVM 1.0p1 a beta release. I strongly suggest you move to 1.1 or later (1.1c was released a month ago). chandan 1 Quote Link to comment Share on other sites More sharing options...
nim_09@yahoo.com Posted January 22, 2013 Report Share Posted January 22, 2013 Hi, How do you run "make" command on windows? I also have cygwin install on my system and I tried "make" command but it gives same error 'make' is not recognized as an internal or external command, operable program or batch file. You support highly appreciated. -Nimesh Quote Link to comment Share on other sites More sharing options...
dave_59 Posted January 22, 2013 Report Share Posted January 22, 2013 Look at the documentation for your simulator and install the GCC package that it recommends. Quote Link to comment Share on other sites More sharing options...
chandan Posted April 25, 2013 Report Share Posted April 25, 2013 Hi Dave, I am getting the following errors : /cygdrive/c/questasim_10.0b/gcc-4.2.1-mingw32vc9/bin/g++.exe -g -DQUESTA -W -shared -Bsymbolic -x c -I/cygdrive/c/questasim_10.0b/include ../../../src/dpi/uvm_dpi.cc -o ../../../lib/uvm_dpi.dll /cygdrive/c/questasim_10.0b/win32/mtipli.dll -lregex In file included from ../../../src/dpi/uvm_dpi.cc:34: ../../../src/dpi/uvm_regex.cc:26:22: error: vpi_user.h: No such file or directory Please help Regards, Chandan 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.