eruisi
Member level 4
Hi,
I try to sweep hold time (latency between data and clock edges for a flop) and measure the impact on clock -> output q delay
If I want to use clock->q delay when hold_fall is 300ps as reference point, and calculate the relative pushout (clk->q - clk->q_ref)/clk->q_ref
Can you help me to achieve that?
Thanks
Eruisi
I try to sweep hold time (latency between data and clock edges for a flop) and measure the impact on clock -> output q delay
Code:
vclk clk 0 pwl (0ps 0v 20.0ns 0v '20.0ns+clk_slew' vdd_sup '30.0ns+clk_slew' vdd_sup '30.0ns+2*clk_slew' 0v '40.0ns+2*clk_slew' 0v '40.0ns+3*clk_slew' vdd_sup)
vd d 0 pwl (0ps 0v '30ns' 0v '30.0ns+clk_slew' vdd_sup '40ns+2.5*clk_slew-0.5*data_slew+hold_fall' vdd_sup '40ns+2.5*clk_slew+0.5*data_slew+hold_fall' 0v)
.tran 1p 100ns sweep hold_fall 300ps -200ps 10ps
.measure tran clk_to_q_rise trig v(clk) val='0.5*vdd_sup' td=30ns rise=1 targ v(q_fo4) val='0.5*vdd_sup' td=30ns rise=1
If I want to use clock->q delay when hold_fall is 300ps as reference point, and calculate the relative pushout (clk->q - clk->q_ref)/clk->q_ref
Can you help me to achieve that?
Thanks
Eruisi