Help with spectrespp

M

mayank

Guest
Hi Guys,

I am at the end of my wits with spectrespp. I am doing everything in
the textbook fashion and yet spectre is giving weird results. If you
have had the same problem before or know a solution to this please
please help. Gory details are given below but the essence is that
..measure is not being translated correctly. Also I could not find exact
documentation of the "cross" function in the mdlref.pdf of spectre
documentation.
My sincere thanks and best regards
Mayank

----------------
I have an hspice file that has measure statements like this
----------------

..meas dc Vtsat find V(g) when i(mx1)='600e-7'
..meas dc Idsat find i(mx1) when V(g)='1.0'

-------------------------
hspice runs perfectly and generated a ms0 file that looks like this
-------------------------
[mayankg: Remove]$ more NT_Vt.ms0
$DATA1 SOURCE='HSPICE' VERSION='U-2003.09 '
..TITLE '*'
vtsat idsat temper alter#
0.4820 5.769e-04 25.0000 1.0000
-------------------------
Now when I used spectrespp on the spice file spice
[mayankg: Remove]$ spectrespp NT_Vt.sp
It creates a mdl file corresponding to the measurement statements. The
mld file looks like this
[mayankg: Remove]$ more NT_Vt.mdl
-------------------------
alias measurement dcrun {
export real vtsat, idsat
run dc
vtsat=V(g)@cross(sig=I(mx1:1)-600e-7)
idsat=I(mx1:1)@cross(sig=V(g)-1.0)
}
foreach temp from {25.0 } {
foreach vg:dc from swp( start=0.0, stop=1.00, step=xvstep ) {
run dcrun as dcrun1
}
}
-------------------------
The corresponding .measure file that is created has only NaN instead of
number!!!
Please why should something like this happen??? Not to me. Plz help.
-------------------------
[mayankg: Remove]$ more NT_Vt.measure
-------------------------
Exported variables from PSF results directory: NT_Vt.raw
Swept Measurements :
Measurement Name : dcrun1

Analysis Type : dc
idsat temp @ 25 vg:dc @ 0 = NaN
idsat temp @ 25 vg:dc @ 0.005 = NaN
....................
idsat temp @ 25 vg:dc @ 0.995 = NaN
idsat temp @ 25 vg:dc @ 1 = NaN

vtsat temp @ 25 vg:dc @ 0 = NaN
vtsat temp @ 25 vg:dc @ 0.005 = NaN
....................
vtsat temp @ 25 vg:dc @ 0.99 = NaN
vtsat temp @ 25 vg:dc @ 0.995 = NaN
vtsat temp @ 25 vg:dc @ 1 = NaN
 
On 30 Nov 2005 19:42:21 -0800, "mayank" <mayank.gupta@gmail.com> wrote:

Hi Guys,

I am at the end of my wits with spectrespp. I am doing everything in
the textbook fashion and yet spectre is giving weird results. If you
have had the same problem before or know a solution to this please
please help. Gory details are given below but the essence is that
.measure is not being translated correctly. Also I could not find exact
documentation of the "cross" function in the mdlref.pdf of spectre
documentation.
My sincere thanks and best regards
Mayank

----------------
I have an hspice file that has measure statements like this
----------------

.meas dc Vtsat find V(g) when i(mx1)='600e-7'
.meas dc Idsat find i(mx1) when V(g)='1.0'

-------------------------
hspice runs perfectly and generated a ms0 file that looks like this
-------------------------
[mayankg: Remove]$ more NT_Vt.ms0
$DATA1 SOURCE='HSPICE' VERSION='U-2003.09 '
.TITLE '*'
vtsat idsat temper alter#
0.4820 5.769e-04 25.0000 1.0000
-------------------------
Now when I used spectrespp on the spice file spice
[mayankg: Remove]$ spectrespp NT_Vt.sp
It creates a mdl file corresponding to the measurement statements. The
mld file looks like this
[mayankg: Remove]$ more NT_Vt.mdl
-------------------------
alias measurement dcrun {
export real vtsat, idsat
run dc
vtsat=V(g)@cross(sig=I(mx1:1)-600e-7)
idsat=I(mx1:1)@cross(sig=V(g)-1.0)
}
foreach temp from {25.0 } {
foreach vg:dc from swp( start=0.0, stop=1.00, step=xvstep ) {
run dcrun as dcrun1
}
}
-------------------------
The corresponding .measure file that is created has only NaN instead of
number!!!
Please why should something like this happen??? Not to me. Plz help.
-------------------------
[mayankg: Remove]$ more NT_Vt.measure
-------------------------
Exported variables from PSF results directory: NT_Vt.raw
Swept Measurements :
Measurement Name : dcrun1

Analysis Type : dc
idsat temp @ 25 vg:dc @ 0 = NaN
idsat temp @ 25 vg:dc @ 0.005 = NaN
...................
idsat temp @ 25 vg:dc @ 0.995 = NaN
idsat temp @ 25 vg:dc @ 1 = NaN

vtsat temp @ 25 vg:dc @ 0 = NaN
vtsat temp @ 25 vg:dc @ 0.005 = NaN
...................
vtsat temp @ 25 vg:dc @ 0.99 = NaN
vtsat temp @ 25 vg:dc @ 0.995 = NaN
vtsat temp @ 25 vg:dc @ 1 = NaN
If you're using IC5141, I'd recommend using:

spectre +csfe yourHspiceNetlist

If using MMSIM60, +csfe is enabled by default. The new front end
can natively parse SPICE netlists rather than having to go via spp.

I'm afraid I'm short of time at the moment, so can't delve further into this.

Andrew.
 
Thanks so much Andrew!!! A part of my nightmare is elevated :D

spectre +csfe works perfectly..

-mayank
ps: if this was on google.answers I should have paid you a million buck
 

Welcome to EDABoard.com

Sponsor

Back
Top