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
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