Subject: IBIS BIRD64 - Package Model Selector

From: Bob Ross <[email-masked]>
Date: Mon, 25 Oct 1999 17:00:32 -0700

To IBIS Committee:

Arpad Muranyi is submitting BIRD64 - Package Model Selector.

Bob Ross
Mentor Graphics

*******************************************************************************
*******************************************************************************

BIRD ID#:      64
ISSUE TITLE:   Package Model Selector
REQUESTER:     Arpad Muranyi, Intel
DATE SUBMITTED:         10-25-99 
DATE ACCEPTED BY IBIS OPEN FORUM:     Pending

******************************************************************************
******************************************************************************

STATEMENT OF THE ISSUE:

The current IBIS specification (3.2) does not provide a selection mechanism
for multiple package models.  This may be necessary when a certain die is
shipped in various package styles, or when the corner cases of the package
are described with different package models.

This BIRD is written to provide an easy solution to this deficiency.  This
feature will allow simulator tools to implement a user friendly package
model selection interface and/or better automation for batch and sweep
simulations.

******************************************************************************

STATEMENT OF THE RESOLVED SPECIFICATIONS:

A new keyword shall be introduced in the IBIS specification to provide a user
friendly package model selection mechanism for components which use multiple
package models.  The proposed keyword [Package Model Selector] shall contain a
list of all package model names that the simulator can pick from.  The first
entry in the list is considered to be the default package model.  The package 
model names listed under the [Package Model Selector] must follow the rules
for the package model names associated with the [Package Model] keyword.

To help the user of the simulator tool to make an intelligent choice, a
description must appear on the right of each of the package model names in
this list.  The description field can have multiple words as in free flowing
text, but shall not extend beyond the 80 character line length limitation.
(Same rules as in the [Model Selector] keyword.)

|=============================================================================
|     Keyword:  [Package Model Selector] 
|    Required:  No.
| Description:  Used to select a package model from a list package models.
|  Sub-Params:  None.
| Usage Rules:  The [Package Model Selector] keyword can be used in place of 
|               the [Package Model] keyword.  The only difference between the 
|               two keywords is that the [Package Model Selector] allows 
|               multiple package models to be listed.  All package model names
|               must appear below the [Package Model Selector] keyword.
|
|               The first entry under the [Package Model selector] keyword
|               shall be considered the default by the simulator tool.
|
|
[Package Model Selector]
|
208-BGA-pkg-even    BGA  - Even mode single line equivalent package
208-BGA-pkg-odd     BGA  - Odd mode single line equivalent package
208-PQFP-pkg-even   PQFP - Even mode single line equivalent package
208-PQFP-pkg-odd    PQFP - Odd mode single line equivalent package
|

******************************************************************************

ANALYSIS PATH/DATA THAT LED TO SPECIFICATION:

Problem statement

Some components are shipped in multiple package styles.  Also, there are
situations when the corner cases of a package are modeled with multiple
package models.  Currently, in these cases the user of the IBIS model has to
manually edit the IBIS file to change the package model name that is called by
the [Package Model] keyword in order to reference a different package model.
This makes automated simulations difficult, if not impossible.

Possible solutions

Add a new, simple keyword to the IBIS specification which works similar to the
already existing [Model Selector] keyword.

******************************************************************************

ANY OTHER BACKGROUND INFORMATION:

Several IBIS model users expressed their desire in private conversations and
IBIS meetings to have such a package model selection mechanism in the IBIS
specification to make their work easier.

An alternate syntax was suggested by Bob Ross during an EMAIL and telephone
correspondence on 10-25-99.  The suggested syntax is identical to the [Model
Selector] syntax, according to which the [Package Model Selector] would be
assigned a name that is called by the (higher level) [Package Model] keyword.
However, unlike in the [Model Selector] case, there is no need for calling the
[Package Model Selector] from a higher level.  This BIRD favors the simpler
vs. the more consistent approach.

******************************************************************************

---

From: "Matthew Flora" <[email-masked]>
Date: Wed, 27 Oct 1999 09:29:39 -0700

Dear Arpad,

> vs. the more consistent approach.

I'm afraid I prefer the consistent approach over the "simpler" approach.  In
fact, I feel that having the [Package Model Selector] be completely consistent
with [Model Selector] is the simpler approach to use because you won't need to
remember any difference between them.

So, what I'm saying is, I'd like to have the means by which a named [Package
Model Selector] is referenced by a [Model] be by specifying the name of the
[Package Model Selector] in the argument to the [Package Model] keyword in the
[Model].

Regards,
Matthew Flora
Senior Engineer
HyperLynx
(425) 869-2320 PH
(425) 881-1008 FAX
[email-masked]
14715 NE 95th Street, Suite 200, Redmond, WA 98052 USA

---

From: Mike LaBonte <[email-masked]>
Date: Wed, 27 Oct 1999 14:35:49 -0400

Matthew,

I assume you meant to use [Component] instead of [Model], because only components
have [Package Model] references. But I agree with your comments about consistent
use of [* Selector] keywords.

But my other thoughts about [Package Model Selector] are:

1) Seeing a [Package Model] statement and not knowing immediately whether the
   value is actually a package model name or just a key referencing a [Package
   Model Selector] entry is not comforting. This is an existing problem with
   [Model Selector], in my opinion.

2) Users probably will want simulators to transparently select typical, minimum,
   and maximum package models for the corresponding simulations. But if the
   [Package Model Selector] keywords given are "Sears Good Package", "Sears Better
   Package", and "Sears Best Package", the simulator will need help deciding
   which of these is typical, minimum, or maximum.

If it is likely that there will be fast, typical, slow versions of package models,
then maybe we should provide a means for communicating this. The minimum impact
method might be something like:

[Package Model] BGA_typ  BGA_min  BGA_max

where the min and max entries are allowed but optional in versions above IBIS 3.2.
Even if we go with the [Package Model Selector] approach, maybe the selector definition
entries should allow for typ, min, and max?

Mike

Mike LaBonte