ece 546 lecture 18 ibis - emlab.illinois.edu

35
ECE 546 – Jose Schutt‐Aine 1 ECE 546 Lecture 18 IBIS Spring 2022 Jose E. Schutt-Aine Electrical & Computer Engineering University of Illinois [email protected]

Upload: others

Post on 01-Jun-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 1

ECE 546Lecture ‐18IBISSpring 2022

Jose E. Schutt-AineElectrical & Computer Engineering

University of [email protected]

Page 2: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 2

Inter‐IC Communication Trends

Page 3: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 3

• DDR5 will introduce DFE• DDR5 memory systems will operate near closed

eye at input of DRAM• Designers need to have control over equalization

on both DRAM and memory controller

DFE Challenge

Page 4: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 4

• Serial channels can be characterized using S Parameter data and/or other passive interconnect models

• Millions of bits of behavior are needed to adequately characterize serial links long simulation times

• SERDES transmitters / receivers can be modeled as a combination of analog & algorithmic elements

• DDR5 is upsetting status quo for simulation

Serial Channel Characterization

Page 5: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 5

• I/O Buffer Information Specification is a Behavioral method of modeling I/O buffers based on IV curve data obtained from measurements or circuit simulation.

• The IBIS format is standardized and can be parsed to create the equivalent circuit information needed to represent the behavior of an IC.

• Can be integrated within a circuit simulator using an IBIS translator.

IBIS

Page 6: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 6

• Provided as binary code• Fast, efficient execution• Protects vendor IP• Extensible modeling capability• Allows models to be developed in multiple

languages• Standardized execution interface• Standardized control (.AMI) file

Industry Standard: IBIS

IBIS homepage: http://www.eigroup.org/ibis/

Page 7: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

• Protection of proprietary information

• Adequate for signal integrity simulation

• Models are free from vendors

• Faster simulations (with acceptable accuracy)

• Standardized topology

Advantage of IBIS

Page 8: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 8

PowerClamp

Threshold&

EnableLogic

GNDClamp

GNDClamp

GNDClamp

PowerClamp

PowerClamp

InputPackage

EnablePackage

OutputPackage

PullupRamp

PulldownRamp

PullupV/I

PulldownV/I

IBIS Diagram

Page 9: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

Power_Clamp

GND_Clamp

Vcc

R_pkg

C_pkg

L_pkg

C_comp

GNDGND

IBIS Input Topology

Page 10: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 1010

Vcc Vcc

Power_ClampGND_Clamp

GND GND

C_pkgL_pkg

R_pkg

C_omp

PullupPulldownRamp

IBIS Input Topology

Page 11: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 11

Create an IBIS modelfrom either simulation

or empirical data

Model fromEmpirical data?

No

Yes

Collect Data

Data in IBIStext file

Run IBIS Parser

Parser Pass

Get SPICE I/Oinfo

No

Yes

Run modelon

Simulator

YesModelvalidated?

No Adoptmodel

Run SPICE to IBISTranslator

IBIS Model Generation

Page 12: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 12

IBIS Model

Static data

Page 13: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 13

IBIS Model

Dynamic data

Page 14: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 14

IBIS VT Waveforms

Page 15: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 15

|************************************************************************| Model lvpclpf5_ew|************************************************************************|[Model] lvpclpf5_ewModel_type I/OPolarity Non-InvertingEnable Active-HighVinl = 1.4500VVinh = 1.7500VVmeas = 1.6000V|C_comp 1.737pF 1.396pF 2.077pF||[Temperature Range] 25.0000 70.0000 0.000[Voltage Range] 3.3000V 3.0000V 3.6000V[Pulldown]| voltage I(typ) I(min) I(max)|-3.3000 -62.3070mA -48.2070mA -75.0990mA-3.1000 -62.3070mA -48.2070mA -75.0990mA-2.9000 -62.3070mA -48.2070mA -75.0990mA

IBIS File

Page 16: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 16

|[Pullup]| voltage I(typ) I(min) I(max)|-3.3000 50.6898mA 38.3720mA 61.1590mA-3.1000 50.6898mA 38.3720mA 61.1590mA-2.9000 50.6898mA 38.3720mA 61.1590mA:|[GND_clamp]| voltage I(typ) I(min) I(max)|-3.3000 -7.7650A -6.8810A -8.3930A-3.2000 -7.4070A -6.5660A -8.0040A-3.1000 -7.0490A -6.2520A -7.6150A:|[POWER_clamp]| voltage I(typ) I(min) I(max)|-3.3000 1.1410A 1.1150A 1.1710A-3.2000 1.0910A 1.0670A 1.1200A-3.1000 1.0420A 1.0190A 1.0690A:

IBIS File

Page 17: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 17

[Ramp]| variable typ min maxdV/dt_r 1.7344/9.6534e-11 1.4944/1.4735e-10 1.9469/7.9570e-11dV/dt_f 1.7528/1.4479e-10 1.5200/2.2995e-10 1.9609/1.2362e-10R_load = 50.0000 |[Rising Waveform]R_fixture = 50.000V_fixture = 0.000V_fixture_min = 0.000V_fixture_max = 0.000|| time V(typ) V(min) V(max)|0.000S 3.587e-04 4.167e-04 3.253e-04132.000pS 7.977e-05 1.311e-04 2.383e-04:[Rising Waveform]R_fixture = 50.000V_fixture = 3.300V_fixture_min = 3.000V_fixture_max = 3.600|| time V(typ) V(min) V(max)|0.000S 4.774e-01 5.704e-01 4.246e-0143.200pS 4.772e-01 5.701e-01 4.244e-01

IBIS File

Page 18: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 18

|[Falling Waveform]R_fixture = 50.000V_fixture = 0.000V_fixture_min = 0.000V_fixture_max = 0.000|| time V(typ) V(min) V(max)|0.000S 2.808e+00 2.415e+00 3.156e+0063.000pS 2.809e+00 2.416e+00 3.156e+00126.000pS 2.808e+00 2.416e+00 3.156e+00:|[Falling Waveform]R_fixture = 50.000V_fixture = 3.300V_fixture_min = 3.000V_fixture_max = 3.600|| time V(typ) V(min) V(max)|0.000S 3.299e+00 2.999e+00 3.599e+0052.200pS 3.300e+00 2.999e+00 3.600e+00121.800pS 3.299e+00 2.999e+00 3.599e+00:|| End

IBIS File

Page 19: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 19

1. Arrange static IV data

2. Pulldown data (current vs voltage) Ipd, mpd points

3. Pullup data (current vs voltage) Ipu, mpu points

4. Ground clamp data (current vs voltage) Igc , mgcpoints

5. Power clamp data (current vs voltage) Ipc , mpcpoints

IBIS Processing

Page 20: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 20

• Next Get VT data. VT data is presented as: Rising waveform:

• Voltage versus time for Vfix low VR1 , mr1 points

• Voltage versus time for Vfix high VR2 , mr2 points: Falling waveform:

• Voltage versus time for Vfix low VF1 , mf1 points

• Voltage versus time for Vfix high VF2 , mf2 points

IBIS Processing

Page 21: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 21

out fixtfixt

fixt

V VI

R

out outcap fixt

V t V t tI C

t

out cap fixtI I I out

comp fixt outIV L Vt

IBIS Circuit Analysis

Page 22: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 22

• Pick value Vcomp1• Find closest corresponding currents in static IV

data• Set them as Ipd1, Ipu1, Igc1 and Ipc1• Pick value Vcomp2• Find closest corresponding currents in static IV

data• Set them as Ipd2, Ipu2, Igc2 and Ipc2

IBIS Circuit Analysis

We need to extract Ku and Kd

Page 23: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 23

1 1 1 1 1out u pu d pd pc gcI K I K I I I

2 2 2 2 2out u pu d pd pc gcI K I K I I I

1 1 1 1 1 1u pu d pd out pc gc RHSK I K I I I I I

2 2 2 2 2 2u pu d pd out pc gc RHSK I K I I I I I

1 1 1

2 2 2

pu pd u RHS

pu pd d RHS

I I K II I K I

Rearrange as:

or

IBIS Circuit Analysis2 equations, two unknown system

Solve for Ku and Kd

Page 24: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 24

Example of Ku and Kd

Page 25: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 25

IBIS Simulations

u pu comp d pd comp pc comp gc compK I V K I V I V I V

0comp compout comp C comp G compI V I V I V

Nonlinear system  use Newton‐Raphson

Page 26: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 26

1 2 1 2

1 2 1 2

2

n / n /ext ext n / n / next

ext ext ext out

V V GC V V It

1 2

1 2 2

2

n n /ext extout ext

n /ext

ext ext

C GI VtV

C Gt

1

1 2 1 2 1

2

n npkgout outn / n / n n

comp ext pkg out out

RI IV V L I I

t

1 2 1 2

1 2

2

pkg pkgn / n / ncomp ext out

nout

pkg pkg

L RV V I

tIL R

t

…or Better: Use a LIM Formulation

Page 27: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 27

1 2 1 2

1 2 1 2

2

n / n /comp comp comp n / n / n n

comp comp comp out dev

V V GC V V I I

t

1 2

1 2 2

2

comp compn n n /out dev comp

n /comp

comp comp

C GI I V

tVC G

t

ndev u pu comp d pd comp pc comp gc compI K I V K I V I V I V

IBIS-LIM Solution

Explicit equations

Page 28: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 28

Transient Simulation ExamplesNR and LIM give same results…

Page 29: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 29

… in some cases Newton‐Raphson fails to converge…

Transient Simulation Examples

NR: failed convergence

NR: failed convergenceLIM

LIM

Page 30: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 30

d gd sspd gd d gdK t I K V K t I

u pu sspu pu u puK t I K V K t I

0

sspu pusspu pu

sspu

I VK V

I

0

sspd gdsspd gd

sspd

I VK V

I

Handling Gate Modulation Effects(BIRD 98.3)

LIM‐IBIS formulation can easily be modified… … to handle SSN

Page 31: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 31

Gate Modulation Effects(BIRD 98.3)

Lpu = 5 nHCpu = 0.001 nF

Large power supply inductanceSmall decoupling capacitance

Page 32: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 32

Gate Modulation Effects(BIRD 98.3)

Lpu = 0.005 nHCpu = 0.1 nF

Small power supply inductanceLarge decoupling capacitance

Page 33: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 33

IBIS for Signal Integrity

• Crosstalk• Ringing, Overshoot, undershoot• Distortion, Nonlinear effects• Reflections issues• Line termination analysis• Topology scheme analysis

Visit http://www.eigroup.org/ibis/ibis.htm

Page 34: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 34

faster signal processing algorithms intellectual property protectionused in convolution transient enginesdesigned to be used with fixed time step dataintroduced in IBIS 5.0 specsin these specs the library is specified inside the

IBIS wrapper

Algorithmic Modeling Interface (AMI)

IBIS stands for “I/O Buffer Information Specification”; high-level bufferspecification for circuit modeling http://eda.org/pub/ibis/ver5.0/ver5_0.txt

Page 35: ECE 546 Lecture 18 IBIS - emlab.illinois.edu

ECE 546 – Jose Schutt‐Aine 35

Analysis Method Advantages Drawbacks

IBIS Fast Not accurate

Device Level AccurateNonlinear

Very slowIP liability

Fast convolution Very fastHandles EQInclude bit patterns

Not Silicon SpecificAssumes LTI

Statistical Very FastHandles EQ

Not silicon specificNo bit patternsAssumes LTI

IBIS‐AMI FastHandles Vendor EQIncludes Bit PatternsNot limited to LTI

Implementations vary

Simulation Methods