1. simulation data recovery 2. svs with assura - possible?

R

RobertG

Guest
Hello,

I've encountered recently those 2 problems and maybe someone can help me
to solve them.
1. I've been running mixed simulation for 2 days only to find out
yesterday that it terminated with some error code. I suspect the data file
became too big (more than 2GB, it there a limit by the way? ) because the
simulator complained about writing error. Anyway, under Results browser I
see config -> run1 -> psf -> and here normally is tranSim (I'm writing
from memory, don't remember exactly the name) but this time I also get
tran-tran subdir. Now, I know that if the simulation was finished properly
I would have got only the first entry without this tran-tran and all would
have been ok. But now I can only view the digital signals in the waveform
window (from tran-tran subdir). When I select the analog ones (from
tranSim) I get in CIW: "*Error* Not a waveform object". Coming to my
question, how can I recover this analog data from my simulation file (if
possible)? DO I need to run the whole thing again and pray to finish
successfully this time?
2. I have two netlists from the same circuit but different revisions so
some things were added, some removed but basically the whole hierarchy is
the same. I would like to verify these netlists against each other. I'm
only interested in information about what have changed not how. Is there
any way to do it with assura? I'm thinking about running lvs but with a
netlist file agains a netlist instead of gds. But I don't know how to
modify mcf file to run assura properly. Thank you for any suggestions,

Robert
 
RobertG wrote:
2. I have two netlists from the same circuit but different revisions so
some things were added, some removed but basically the whole hierarchy is
the same. I would like to verify these netlists against each other. I'm
only interested in information about what have changed not how. Is there
any way to do it with assura?
Yup, I think there's a solution doc about it in sourcelink.

Sounds like you're wanting CDL-vs-CDL (you're a little vague
about what the "netlists" in question are). Here's a script
that NVN's a dfII schematic with auLvs views against a CDL
netlist. You can see that essentially that you just call one
of them "layout", the other "schematic" and run nvn on them
directly.

Notice that I'm loading the full normal compare.rul, otherwise
you get no parameter checking!

#!/bin/sh
# $Header: /remote/anproj/mchip_tm90_1.0.0/bin/RCS/mchip_nvn,v 1.2
2004/12/16 03:07:14 jayl Exp $

# Run assura NVN on dfII "schematic" and CDL "layout", using
# standard tsmc0p13 comparison rules.

if [ $# -lt 3 ] ; then
echo Usage: mchip_nvn libname cellname old_netlist
echo Reminder: you better not change any cell/signal names!
exit
fi

LIBNAME=$1
CELLNAME=$2
OLDNET=$3
RUNDIR="./av/lvs"

#
# Generate the nvn .rsf file
#
cat > ${CELLNAME}_nvn.rsf << EORSF
;---- NVN template from mchip_tm90_1.0.0/bin/nvn ----
avParameters(
?workingDirectory "$RUNDIR"
?avrpt t
)
load("/remote/anproc/tsmc0p13/cadence/assura/rcxtech/compare.rul")
avCompareRules(
schematic( netlist( dfII "./${CELLNAME}_nvn.vlr" ) )
)
layout( netlist( cdl "$OLDNET" )
; Device control for CDL netlist input
genericDevice("nfetlv")
swapPins("nfetlv" "(p D S)")
genericDevice("nfet")
swapPins("nfet" "(p D S)")
genericDevice("mcap")
genericDevice("mcap_12f")
genericDevice("mcap_full")
genericDevice("mcap_max")
genericDevice("mcap_234_234")
genericDevice("mcap_234_234_5")
genericDevice("mcap_12345_234")
genericDevice("mcap_us")
genericDevice("alias")
swapPins("alias" "(p PLUS MINUS)")
genericDevice("pad")
)
)
EORSF

cat > ${CELLNAME}_nvn.vlr << EOVLR
;---- VLR (dfII netlisting) template from mchip_tm90_1.0.0/bin/nvn ----
avSimName = "auLvs"
avLibName = "$LIBNAME"
avCellName = "$CELLNAME"
avViewName = "schematic"
avViewList = "auLvs schematic symbol"
avStopList = "auLvs"
avVldbFile = "$RUNDIR/$CELLNAME.sdb"
EOVLR

nvn ${CELLNAME}_nvn.rsf
 

Welcome to EDABoard.com

Sponsor

Back
Top