Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Register Log in

[HELP] NV-SIM Problem?

Status
Not open for further replies.

billjoy

Member level 1
Joined
Apr 19, 2005
Messages
33
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,286
Activity points
1,569
setenv in verilog makefile

Q1:
In NC
if ncvhdl
ncverilog
is ok
but
ncelab with error my example
Here is my run procesure

/==========
ncvhdl -work work ./fa.vhd ==> OK
ncvlog -work work ./adder4.v ==> OK
ncvhdl -work work ./testfixture.vhd ==> OK
ncelab -work work work.cfg_testadd4:configuration ==> not OK
--> message
ncelab:*E,MULVHD:possible bindings for instance of entity 'fa' in
`work.add4:module' are :
VITAL_MEMORY.FA :A
WORk.FA:A
ncelab : *E,CUVMUR:instance for module/UDP 'fa' in unsolved
in 'work.add4:module'.

//=============

what does this mean??
what elab is error??

Q2. In this case , I want to use ncsim generate *.fsdb
Is any master guy can tell me how to do this?
 

nand_gates

Advanced Member level 3
Joined
Jul 19, 2004
Messages
892
Helped
174
Reputation
348
Reaction score
51
Trophy points
1,308
Activity points
6,838
verdi command

It works fine for me I am using NC-sim ver 5.3-s001..


Using Novas Debug Systems with NC-Sim

Linking

We will use Debussy 5.3, LDV 5.0 and SOLARIS2 32bit OS in this example. Other platforms will have similar settings, except for the HP OS, the environment variable is SHLIB_PATH, instead of LD_LIBRARY_PATH. For detailed information please consult Novas Software's Installation documentation (<Novas_install>/doc/installation.pdf).



Platforms Supported:

* HP10 <=> HPPA <=> HP11_32bit
* HP11<=>HP11_64bit
* LINUX
* WINNT (libraries come up only when installed on windows)
* SOL2<=>SOLARIS2<=>SOL7_32bit



Verilog



Dynamic linking



To link the provided compiled library:

setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/nc_xl/SOLARIS2/nc_shared



If you need to generate your own compiled library, the required files are pli.a and veriuser.c

They are located at <Novas_install>/share/PLI/nc_xl/SOLARIS2



Bootstrap Dynamic Linking



setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/nc_xl/SOLARIS2/nc_loadpli1

ncverilog -f run.f +debug +loadpli1=debpli:debpli_boot



Static Linking



Copy and edit Makefile.nc from <Cadence_install_dir>/tools/inca/files

VERIUSER_C = $(NOVAS_HOME)/share/PLI/nc_xl/SOLARIS2/veriuser.c

PLI_OBJECTS = $(NOVAS_HOME)/share/PLI/nc_xl/SOLARIS2/pli.a

> make -f Makefile.nc static

New static executables will be created for ncsim and ncelab

Use these new static executables

> path = (<location of static executables>) $path)

VHDL



Dynamic linking



To link the provided compiled library:

* Compile novas.vhd found in <Novas_install>/share/PLI/nc_vhdl/SOLARIS2
* Add in your vhdl code: use work.novas.all;
* setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/nc_vhdl/SOLARIS2



If you need to generate your own compiled library the required files are novasfmi.c, novascfc.c and novas.a. They are located at: <Novas_install_dir>/share/PLI/nc_vhdl/SOLARIS2



Bootstrap Dynamic Linking



To link the provided compiled library:

* Compile novas.vhd found in <Novas_install>/share/PLI/nc_vhdl/SOLARIS2
* Add in your vhdl code: use work.novas.all;

* setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/nc_vhdl/SOLARIS2/boot

ncelab -f run.f -access+r +loadfmi debfmi:debfmi_boot



Static Linking



Copy and edit Makefile.nc from <Cadence_install_dir>/tools/inca/files

> make -f Makefile.nc static

New static executables will be created for ncsim and ncelab

Use these new static executables

> path = (<location of static executables>) $path)

Mixed Language Design



Dynamic linking

To link the provided compiled library:

* Compile novas.vhd found in <Novas_install>/share/PLI/ldv4.0_vhpi/SOLARIS2
* Add in your vhdl code: use work.novas.all;
* setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/ldv4.0_vhpi/SOLARIS2



If you need to generate your own compiled library the required files are novasfmi.c, novascfc.c, pli_body.o and veriuser.c. They are located at: <Novas_install_dir>/share/PLI/ldv4.0_vhpi/SOLARIS2



Bootstrap Dynamic Linking

* Compile novas.vhd found in <Novas_install>/share/PLI/ldv4.0_vhpi/SOLARIS2/boot
* Add in your vhdl code: use work.novas.all;

* setenv LD_LIBRARY_PATH <Novas_install>/share/PLI/ldv4.0_vhpi/SOLARIS2/boot

ncelab -f run.f -access+r -loadfmi debfmi:debfmi_boot à If Top Level is VHDL

ncelab -f run.f +debug -loadpli1 debpli:debpli_boot à If Top Level is Verilog

Example Use Model



Verilog

Add the following in your Verilog code[1]:

initial begin $fsdbDumpvars; end

> ncverilog +access+r +debug -f run.f

OR

>ncverilog -f run.f +debug +loadpli1=debpli:debpli_boot

> Debussy -f run.f > verdi -f run.f



VHDL

Add the following in your vhdl code: process

begin

fsdbDumpfile("vhdl.fsdb");

fsdbDumpvars(0, "system");

wait ;

end process;



> ncvhdl -work WORK -f run.f

> ncelab -access +r work.system:blk

OR

> ncelab -f run.f -access+r +loadfmi debfmi:debfmi_boot

> ncsim work.system:blk -input stop.do



Example stop.do File: call fsdbDumpfile nc_vhdl.fsdb

call fsdbDumpvars 0 :

run 12500 NS

exit

> vhdlcom -f run.f

> debussy -lib work -top system > verdi -lib work -top system



Mixed

Add the following in your vhdl code: process

begin

fsdbDumpfile("vhdl.fsdb");

fsdbDumpvars(0, "system");

wait ;

end process;

Add the following in your Verilog code:

initial begin $fsdbDumpvars; end

> ncvlog -work WORK -f run.f

> ncvhdl -work WORK -f run.f

> ncelab -access +r work.system:blk

> ncsim work.system:blk



> vericom -f run.f (verilog files only)

> vhdlcom -f run.f (vhdl files only)

> debussy -lib work -top system > verdi -lib work -top system



For Debussy/Verdi Interactive Mode Simulation



In Novas GUI select the appropriate simulator, for example:

nTrace -> Tools --> Option --> Preferences ---> Simulator : NC-VHDL

Executable : ncsim

Run the simulation: nTrace -> Tools --> Interactive Mode ---> Run

Examples for dumping from Debussy/Verdi command line :

> call fsdbDumpvars

> run 12500 ns

> exit

Can also use options in GUI mode in Debussy/Verdi :

nTrace -> Debug ---> User Defined Commands



Dumping from NCSIM GUI



On the NCSIM GUI command line, you can type fsdb command as follows:



> call fsdbDumpfile {"test.fsdb"}



> call fsdbDumpvars 0 {"system"}



--> 0 : level , which specifies how many levels of hierarcy to dump for the subsequent scope

--> system: module / variable , gives either the module scope / variable that specify the objects to dump
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top