+ All Categories
Home > Documents > IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit,...

IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit,...

Date post: 15-Sep-2018
Category:
Upload: phungtu
View: 236 times
Download: 0 times
Share this document with a friend
15
IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 Arpad Muranyi [email protected] Minggang Hou [email protected] Arpad Muranyi [email protected] Minggang Hou [email protected] © © Mentor Graphics Corp., 2008, Reuse by written Mentor Graphics Corp., 2008, Reuse by written permission only. All rights reserved. permission only. All rights reserved. -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 -0.25 -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0.25
Transcript
Page 1: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai

China , November 11, 2008

IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai

China , November 11, 2008

Arpad [email protected] [email protected]

Arpad [email protected] [email protected]

©© Mentor Graphics Corp., 2008, Reuse by written Mentor Graphics Corp., 2008, Reuse by written permission only. All rights reserved.permission only. All rights reserved.

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Page 2: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS22

IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China ,

November 11, 2008

1. Attributes in VHDL-AMS2. An IBIS-AMI example using the FOREIGN attribute3. Conclusions – future work

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Page 3: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS33

Attributes in VHDL-AMSThere are two types of attributes: pre-defined and user defined

— Pre-defined attribute examples:T’left, T’right, T’low, T’high, etc...A’left(n), A’right(n), A’low(n), A’high(n), etc…S’delayed(t), S’stable(t), S’quiet(t), etc…Q’tolerance, Q’dot, Q’integ, Q’above,Q’ltf(num, den), Q’ztf(num, den, t, delay), etc…

— User defined attributes can be given to a wide variety of entity_classes, such as:

procedures, functions, packages, architectures, natures, quantities, terminals,constants, variables, signals, etc… (long list)

One EDA vendor’s VHDL-AMS implementation has a built-in user-defined attribute called “FOREIGN” acting as a C-code interface (which in turn can call practically any compiled code)

— other EDA vendors may have different mechanisms to achieve the same results

Page 4: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS44

Calling IBIS-AMI through VHDL-AMS

The VHDL-AMS model calls a C-code wrapper using the FOREIGN attribute

— the C function argument types are mapped to VHDL-AMS types— obviously there are some limitations, but the wrapper function

can take care of most of the type conversions if necessary— the wrapper function calls the Init, GetWave, and Close

functions according to the IBIS specification— additional features and capabilities (bells and whistles) may be

added to the wrapper function

As a result, IBIS-AMI models can be executed directly from any VHDL-AMS simulator

— all of this is “user code”, no product changes are required

Page 5: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS55

IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China ,

November 11, 2008

1. Attributes in VHDL-AMS2. An IBIS-AMI example using the FOREIGN attribute3. Conclusions – future work

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Page 6: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS66

Block diagram of the following example

Circuit simulator

VHDL-AMS engine

channel modelstep function generator (out)

channel response (in)

call to IBIS-AMI wrapper

IBIS-AMI wrapper

execute IBIS-AMI DLLs

results processing (optional)

plot results

argument type conversion,

optional pre/post-processing,

enforce IBIS rules, etc…

This is only one of many possible ways of implementing IBIS-AMI support via VHDL-AMS

Page 7: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS77

Example with IBIS-AMI Tx and Rx models

Tx driver impedance

Channel model

Rx package and input

capacitance

VHDL-AMS model to

interface the IBIS-AMI DLL

Page 8: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS88

Example circuit descriptionU1 contains a VHDL-AMS model

— it includes a step function generator to excite the “channel”R1 represents a simple resistive driver impedanceTL1, L1, C1 represents a T-line, package and input

— the “channel” can be an arbitrary circuit, including S-parameter models, but it must include the Tx and Rx impedances

The first part of the TD simulation generates a channel response

— the duration is parameterized in the VHDL-AMS modelWhen the channel response is done, the AMI Tx and Rx models are executed using that channel response

— the VHDL-AMS model includes a PRBS pattern generatorAfter that, the results are returned to the simulator through the VHDL-AMS model for plotting

Page 9: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS99

Waveform results of the example

channel response

step function

IBIS-AMI GetWave results

Page 10: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1010

100k bits of PRBS 22 over 20 µs – no EQ

Page 11: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1111

100k bits of PRBS 22 over 20 µs – Tx EQ

~100 mV

Page 12: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1212

100k bits of PRBS 22 over 20 µs – Tx & Rx

~170 mV

Page 13: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1313

IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China ,

November 11, 2008

Attributes in VHDL-AMSAn IBIS-AMI example using the FOREIGN attributeConclusions – future work

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-0.25

-0.2

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Page 14: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1414

Conclusions – future work

IBIS-AMI models (DLLs) are fully supported from VHDL-AMS through attributes

— this is direct execution of the compiled IBIS-AMI modelsAny programming language, capable of producing executables could also be supported the same way

— Matlab, Visual Basic, Perl, you name it— execution speed of the compiled code does not suffer any

degradation through VHDL-AMS since it is executed externally

An IBIS (v5.0) parser will be needed to automate the IBIS parameter extraction for the IBIS-AMI models

— this will happen most likely soon after the IBIS v5.0 parser has been released

Page 15: IBIS-AMI Support via VHDL-AMS - IBIS Open Forum · IBIS-AMI Support via VHDL-AMS Asian IBIS Summit, Shanghai China , November 11, 2008 ... The first part of the TD simulation generates

IBIS-AMI Support via VHDL-AMSIBIS-AMI Support via VHDL-AMS1515


Recommended