[IBIS-Users] putting together typ/min/max data in ibis file

From: Anand Ramalingam <anandr_at_.....>
Date: Mon Mar 17 2008 - 15:19:42 PDT
Hi All,

 

I am putting together data from typ/min/max corners in a single ibis
file.

I am not sure whether I am doing this in a correct manner

for GND/PWR clamp curves and Pulldown/Pullup curves.

This is because I see the shift in Vcm for min/max cases when 

simulate using the ibis files I have generated.

 

I read through the cookbook but I think it does not answer what I was
looking for.

 

Let me explain how I generate data for different corners for 

pulldown, pullup and gnd/pwr clamps.

 

typ corner: vdd(typ) = 1.8 V

min corner: vdd(min) = 1.7 V

max corner: vdd(max) = 1.9 V

 

vss = 0 for all corners.

 

* PULLDOWN:

 

typ/min/max:

 

Generate I-V curves with voltage being swept form [-1.8, 3.6]V 

for all corners.

 

* PULLUP:

 

(1) typ:

 

Generate I-V curves with voltage being swept form [-1.8, 3.6]V.

Since vdd(typ) = 1.8 v translate the voltages to 

1.8-[-1.8, 3.6] = [3.6, -1.8]

 

(2) min:

 

Generate I-V curves with voltage being swept form [-1.9, 3.5]V.

Since vdd(min) = 1.7 v translate the voltages to 

1.7-[-1.9, 3.5] = [3.6, -1.8]

 

(3) max:

 

Generate I-V curves with voltage being swept form [-1.7, 3.7]V.

Since vdd(max) = 1.9 v translate the voltages to 

1.9-[-1.7, 3.7] = [3.6, -1.8]

 

Before writing the pullup and pulldown data to ibis file 

I subtract the clamp current from the pullup/pulldown currents. 

Generation of clamp current is described next.

 

* CLAMP CURRENTS

 

(1) typ:

 

* For clamp data generate currents in the following voltage range 

[-1.8:0.1:3.6] V //[start:incr:end]

 

and then split the data such that 

GND Clamp: contains currents from [-1.8, 1.7]

PWR Clamp: contains currents from [1.8, 3.6] 

    Since PWR Clamp is written wrt to vdd(typ)

    the voltages that are written to the ibis file is:

    1.8-[1.8, 3.6] = [0, -1.8]

 

(2) min: 

 

* For clamp data generate currents in the following voltage range 

[-1.8:0.1:3.5] V //[start:incr:end]

 

and then split the data such that 

GND Clamp: contains currents from [-1.8, 1.7]

PWR Clamp: contains currents from [1.7, 3.5] 

    Since PWR Clamp is written wrt to vdd(min)

    the voltages that are written to the ibis file is:

    1.7-[1.7, 3.5] = [0, -1.8]

 

* min clamp data has the current corresponding to 1.7 being

present in GND clamp (as 1.7 V) and also in PWR clamp (0 V).

 

(3) max: 

 

* For clamp data generate currents in the following voltage range 

[-1.8:0.1:3.7] V //[start:incr:end]

 

and then split the data such that 

GND Clamp: contains currents from [-1.8, 1.7]

PWR Clamp: contains currents from [1.9, 3.7] 

    Since PWR Clamp is written wrt to vdd(max)

    the voltages that are written to the ibis file is:

    1.9-[1.9, 3.7] = [0, -1.8]

 

* max clamp data skips the data corresponding to 1.8 V.

It is not contained either in GND clamp or in PWR clamp.

 

 

Here are my questions. 

(Hopefully someone is still around and reading this!)

 

1) The most obvious question, 

Is my data generation correct?

 

2) Assuming my data generation is correct:

Is the following subtraction right?

 

  * min:

  Pulldown data [-1.8, 3.6] is subtracted by 

  clamp data {[-1.8, 1.7] U [1.7, 3.5]}

    * Pulldown data [1.8, 3.6] is subtracted 

      by clamp data  in the range [1.7, 3.5]

 

  * max:

  Pulldown data [-1.8, 3.6] is subtracted by 

  clamp data {[-1.8, 1.7] U [1.9, 3.7]}

    * Pulldown data [1.8, 3.6] is subtracted 

      by clamp data in the range [1.9, 3.7]

 

 

  There is a shift by 0.1 V in these subtractions 

  (the same thing can be observed for Pullup data)

  and I think this is causing the shift in the Vcm for 

  min/max corners.

 

 

Can someone point out my errors and point to right docs for

which show the right way to do the slicing/dicing for

typ/min/max data.

 

 

Thanks for your patient reading.

Anand


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


--------------------------------------------------------------------
|For help or to subscribe/unsubscribe, e-mail majordomo@eda-stds.org
|with the appropriate command message(s) in the body:
|
|  help
|  subscribe   ibis       <optional e-mail address, if different>
|  subscribe   ibis-users <optional e-mail address, if different>
|  unsubscribe ibis       <optional e-mail address, if different>
|  unsubscribe ibis-users <optional e-mail address, if different>
|
|or e-mail a request to ibis-request@eda-stds.org.
|
|IBIS reflector archives exist under:
|
|  http://www.eda-stds.org/pub/ibis/email_archive/ Recent
|  http://www.eda-stds.org/pub/ibis/users_archive/ Recent
|  http://www.eda-stds.org/pub/ibis/email/         E-mail since 1993
Received on Mon Mar 17 15:21:19 2008

This archive was generated by hypermail 2.1.8 : Mon Mar 17 2008 - 15:22:09 PDT