OK, let me know about the RISE/FALL issue, once y...
# xyce
e
OK, let me know about the RISE/FALL issue, once you figure it out.
m
I'm not able to figure out why it is missing one of the measure TARGs. It is clearly described and clearly transitions, but it thinks the transition is at time 0.0 which is before the TD value starts. You can replicate with:
Copy code
Xyce sh_stim.sp
ngspice results: clk2q_delay = 1.336590e-10 targ= 2.013366e-08 trig= 2.000000e-08 setup_hold_time = -7.500000e-09 targ= 1.250000e-08 trig= 2.000000e-08 xyce results: CLK2Q_DELAY = 1.186285e-10 with trig time= 2.000000e-08 and targ time= 2.011863e-08 Measure Start Time= 1.900000e-08 Measure End Time= 4.000000e-08 SETUP_HOLD_TIME = FAILED with trig time= 2.000000e-08 and targ time= 0.000000e+00 Measure Start Time= 1.200000e-08 Measure End Time= 4.000000e-08
There are a few model warnings, but they should be ok if ignored.
(We get them with ngspice too)
Does xyce require that a targ occur after a trig?
I think that is the issue. In other sims, you can measure negative things like setup times that may be negative.
If I swap the trig and targ it works. But that isn't a solution because I cannot know whether it will have a positive or negative setup time.
e
OK, good to know. I didn’t work on the various MEASURE options myself, so I’ll have to check.
I’ve reproduced the error that you describe. I’ll probably hand this issue over to the guy who worked on most of the .MEASURE features. But if he doesn’t have time, I’ll dig into it myself.
👍 1
m
I'm digging into the code as well. Open source. 🙂
e
Cool. 🙂. Most of the MEASURE related code is in this directory: Xyce/src/IOInterfacePKG/Output
m
Yup, looking at it now
Is there an easy way to build with debug symbols?
e
If you are building using the autotools, then you need to include the “-g” flag on the CXXFLAGS and CFLAGS line. CXXFLAGS more important.
So I might have this for the CXXFLAGS argument: CXXFLAGS=” -std=c++11 -g -O3 ”
Sometimes, it works better with lower optimization levels.
So with the updated CXXFLAGS, re-configure, then rebuild from (unfortunately) scratch.
m
The source looks very nice BTW
I think I'm going to be a convert
e
thanks!