OVM and amsdesigner

Dear all,

the main question is, if it is possible to use OVM with the amsdesigner together?
So far, after compiling all design files with ncvlog -use5x, the amsdesigner is taking care of the compiling, elaborating and simulating in a 3-step mode. But for compiling OVM it looks like it’s necessary to use irun.

Is it possible to compile OVM with ncvlog ?
or
Is it possible to use the amsdesigner with irun?

thanks,
martin

It is possible to use OVM with AMS. It may be easier to extract the code and compile/run outside of the AMS designer toolbox and run in command
line mode.

irun is the easiest way to go. ncvlog/ncelab/ncsim 3 step mode will
also work. Do you already have ovm code you are ready to compile, or
just looking for a general flow?

Regards,

Jim McGrath


Hi Jim,

so far I'm using 2 scripts. One for compiling the design and creating/changing a config with the hierarchy editor. And a second one for starting th amsdesigner. Based on this flow I want to set up a verification environment using OVM. At the moment I'm just playing around and failed at the point of compiling OVM code. For example just including the OVM base class. Regards, martin<O:p

Hi Martin:

Are you using the OSS netlister or cell based netlister? The OSS netlister gennerates a single file, and cell based multiple files. I am not much of an AMS designer expert, but the best path is to use AMS designer to extract the .vams files, and then use irun to compile in command line mode, outside of AMS designer. Once you have the netlist, you can compile
as follows:

irun -ovm -linedebug netlist.vams top_module.vams

top_module would be the user written file which instantiates the netlist
and the ovm test environment. I would suggest using the Incisive 8.2 release and IC Designer 6.1.3. I can check a bit later and let you know
how to locate the files created by AMS designer.

If you send me your files and scripts, I can have look to see what may
be incorrect.

Regards,

Jim McG.

Hi Jim,

first of all thanks a lot for your support. At the moment it looks like I found a solution which I can get started with.

Here a new config is created:
ncvlog -work $worklib -update -ams -use5x -logfile $logfileDir/amsncvlog.log $AMSDesignFiles
ncvlog -work $worklib -update -sv -use5x -logfile $logfileDir/svncvlog.log $SVDesignFiles
cdsHierEditor -lib $worklib -cell $tbTopModule -view config -mode $mode

So it can be selected out of different views, which makes it easy to swap between schematic and verification model. After that the amsdesigner creates a new netlist.

amsdesigner -lib $worklib -cell $tbTopModule -view config
-rundir $simulationRunDir
-compile all -ncvlogOpts “$ncvlogOpts”
-netlist all \

Now I can include the OMV files and start the simulation.

irun -ovm -gui $worklibDir/tb_toplevel/module/verilog.sv -analogcontrol $simulationRunDir/amsSC.scs

So far this is not really suitable for a regression run and and doesn’t look like a good/the best way to me. I’m still working on my little test example. I will send it to you later and would be great if you can have a look.

Thanks,
martin

Hi Martin:

With OVM, the tests are defined in classes and selected at runtime with the +OVM_TESTNAME option. If you switch views - i.e. generate different DUT configurations, clearly that will require a recompile (whether you have an analog or digital RTL circuit). If you keep the same DUT view, you can take advantage of the test being a class, and change the test at runtime via +OVM_TESTNAME. We have some other nifty features that have added for testing AMS modules as well. That would probably best be an offline discussion. Feel free to contact me directly at mcgrath@cadence.com.

Note that with the 3 step process, in a properly constructed OVM environment, only ncsim needs to be run when changing the test. Using irun, it was constructed to check for changed files before recompiling, so in the same situation, would only run simulation as well.

Regards,

Jim McGrath