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 spectre +csfe works perfectly.. -mayank ps: if this was on google.answers I should have paid you a million buck