Subject: RE: Problem with clocked driver

From: "Ingraham, Andrew" <[email-masked]>
Date: Fri, 1 Sep 2000 11:53:33 -0400

>So, to get a pulldown IV curve, I would set the input low, wiggle the
>clock and then sweep the IV curve.  To get a pullup IV curve, I would
>set the input high, wiggle the clock and then sweep the IV curve.

I believe this means you would need to do the "sweep" as a .TRANsient
simulation, not the normal .DC sweep.  Program the voltage source on the
output to do a rather slow ramp over the sweep range.  Keep the ramp rate
down in the volts/microsecond range.  If the simulation takes too long,
experiment with faster rates and compare results.

Andy

---

From: "Hassan Ali" <[email-masked]>
Date: Fri, 1 Sep 2000 11:01:50 -0500

Arpad,

Thanks for your response.

Could you please give me an example of an HSPICE netlist that implements the
technique you suggested? That is, the technique of performing the DC sweep
after clocking the buffer.

The idea of using initial conditions doesn't work in this case as I do not
have access to the internal nodes because this model is encrypted.

Thanks.

Regards.

Hassan.

-----Original Message-----
From: Muranyi, Arpad [mailto:[email-masked]]
Sent: Friday, September 01, 2000 11:04 AM
To: Ali, Hassan [KAN:0G15:EXCH]; ibis
Subject: RE: Problem with clocked driver

Ali,

This buffer seems to have flip/flop in it which doesn't seem to get
initialized correctly at t=0 and both its pullup and pulldown drivers
seem to be on at t=0.  This could be fixed if you could initialize
some of the internal nodes for t=0 using the .IC statement.  However,
you can ignore this and just clock the buffer a few times before you
begin the actual sweep to get the IV curves.

Arpad Muranyi
Intel Corporation
=====================================================================

-----Original Message-----
From: Hassan Ali [mailto:[email-masked]]
Sent: Thursday, August 31, 2000 11:18 AM
To: ibis
Subject: Problem with clocked driver

I'm trying to create an IBIS model of a differential driver from its
encrypted HSPICE model. The driver operates with the P and N outputs each
terminated with 50 ohm to VDD (=1.8V). This driver has a couple of unusual
characteristics:

- transient simulation shows that at time=0 the driver output is around
950mV regardless of the input stimulus voltage.
- the driver has a clock input as one of the driver subcircuit parameters.
The driver output follows the driver input stimulus only upon receiving a
rising clock edge.

Does anybody know how I should go about creating the IBIS model of this
driver (say using s2ibis2 program)?

Thanks.

Hassan.

---

From: "Hassan Ali" <[email-masked]>
Date: Fri, 1 Sep 2000 12:18:00 -0400

Hi Andy,

Thanks for your clarification. Just to be clear with your suggestion: are
you saying that I should connect at the output a transient source with a
rather slow ramp that changes the voltage (over time) in the range required
by IBIS (e.g. -Vdd to 2Vdd for pulldown) and measure  output voltage and
current at several time points? The other question: when should I start
taking the data?

Please clarify further.

Thanks.

Hassan.

-----Original Message-----
From: Ingraham, Andrew [mailto:[email-masked]]
Sent: Friday, September 01, 2000 11:54 AM
To: ibis
Subject: RE: Problem with clocked driver

Andy

---

From: "Ingraham, Andrew" <[email-masked]>
Date: Fri, 1 Sep 2000 12:40:40 -0400

> rather slow ramp that changes the voltage (over time) in the range
> required by IBIS (e.g. -Vdd to 2Vdd for pulldown) and measure  output
> voltage and current at several time points?
 
Yes, that's the idea.  If you (or s2ibis) would have connected a DC voltage
source to the output, and swept it using the .DC statement, instead you
should set the voltage source to generate a PULSE or PWL waveform.  Then
measure its current into the driver's output pin.  Once you extract I(t) and
corresponding V(t) points, ignore t.

>  The other question: when should I start taking the data?
 
Toggle the clock to get the flip/flop into the state you want it, and wait a
few nanoseconds for it to stabilize.  Then start ramping the voltage source.
You just want to wait long enough after the clock for all transient effects
to die out, and then ramp it slowly enough that it can almost be considered
steady-state, compared to the speeds at which the device usually switches.
If in doubt, try doubling or halving the ramp rate and see if it changes the
resulting I-V characteristics.

I am not sure if pulling the output pin to -Vdd (especially during SPICE's
initial transient solution phase) might cause any problems.  If so, start
with the voltage source set to something more benign (like 0V), then ramp it
to -Vdd, then up to 2Vdd, for example.

Andy