Subject: BIRD 36.1, Board Level Components

From: Stephen Peters <[email-masked]>
Date: Thu, 13 Feb 1997 09:56:00 -0800

Hello fellow IBISains:

     As discussed at the face to face, bird 36 (packaging
and connectors), has been seperated into two birds; one
dealing with board level packaginge (SIMM modules, etc.) the
other dealing stricly with connector modeling.  Following
is BIRD36.1, which is the proposal for packaging modeling.
As mentioned in the text of the bird, this proposal
deals only with un-coupled transmission line descriptions of 
a PCB component.  Boards that require full blown (coupled) 
analysis should be described using the EDIF physical description.
Connector modeling will be described in a seperate, forthcomming,
bird.

             Regards,
             Stephen Peters
             Intel Corp.

------------------ cut here ---------------------------------

Buffer Issue Resolution Document  (BIRD)
BIRD ID#:        36.1
ISSUE TITLE:     Electric Descriptions of Boards
REQUESTER:       Stephen Peters, Hank Herrmann
DATE SUBMITTED:  Feb 13, 1997
DATE ACCEPTED BY IBIS OPEN FORUM:  Pending

******************************************************************************
******************************************************************************
STATEMENT OF THE ISSUE:  There is a need to describe SIMM modules and related
type components that consist of one or more ICs mounted on a PCB board that
connects them to a system thru a set of pins.  The following BIRD proposes a
new type of file called .ebd (Electrical Board Description) that
addresses this need.  This proposal does not encompass an electrical 
description of connectors and other interconnect devices. 

******************************************************************************
STATEMENT OF THE RESOLVED SPECIFICATIONS:  The following text is placed
in the specification after the .pkg file description and before the
[End] keyword description.

==================== ELECTRICAL BOARD  DESCRIPTION ====================

     An Board Level Component is defined as a part that connects one or more 
IC packages to another part or board thru a set of user visible pins.  For 
example, a SIMM module is an board level component in that it connects 
several DRAM packages to a PCB thru an edge connector.  To provide a 
simple electrical description of the connection between the pins of the
board level component and the IC packages, an electrical board description 
file (a .ebd file) is defined.  A fundamental assumption regarding the
electrical board description is that the inductance and capacitance 
parameters listed in the file are derived with respect to well defined 
reference plane(s) within the board.  Also, this current description does 
not allow one to describe electrical (inductive or capacitive) coupling
between paths.  It is recommended that if coupling is an issue than an
electrical description be extracted from the boards physical parameters.

    What is, and is not, included in an Electrical Board Description
is defined by its boundaries.  For the definition of the boundaries, see the
Description section under the [Path Description] Keyword.

Usage Rules:
     A .ebd file is intended to be a stand alone file, not associated with any
.ibs file.  Board level component descriptions are stored in a file
whose name looks like <filename>.ebd, where <filename> must conform to the
naming rules given in the general syntax section of this specification.  The
.ebd extension is mandatory.

Contents:
    A .ebd file is structured similar to a standard IBIS file.  It must
contain the following keywords, as defined in the IBIS specification:
[IBIS Ver], [File name], [File rev], and [End].  It may also contain the
following optional keywords: [Comment char], [Date], [Source], [Notes],
[Disclaimer] and [Copyright].  The actual board level component
description is contained between the keywords [Begin Board Description]
and [End Board Description], and includes the keywords listed below.

[Begin Board Description]
[Manufacturer]
[Number of Pins]                 
[Pin List]                       
[Path Description]
[Reference Designator Map]
[End Board Description]

  More than one [Begin Board Description]/[End Board Description] 
keyword pair is allowed in a .ebd file.

|=============================================================================
|    Keyword: [Begin Board Description]
|   Required: Yes
|Description: Marks the beginning of an Electrical Board Description.
|Usage Rules: The keyword is followed by the name of the board level
|             component.  If the .ebd file contains more than one [Begin
|             Board Description] keyword, then each name must be unique.
|             The length of the component name must not exceed 40 characters
|             in length, and blank characters are allowed.  For every
|             [Begin Board Description] keyword there must be a
|             matching [End Board Description] keyword.
|-----------------------------------------------------------------------------
[Begin Board Description]  16Meg X 8 Simm Module
|
|=============================================================================
|    Keyword: [Manufacturer]
|   Required: Yes
|Description: Declares the manufacturer of the part(s) that use this .ebd
|             file.
|Usage Rules: Following the keyword is the manufacturers name.  It must not
|             exceed 40 characters, and can include blank characters.  Each
|             manufacturer must use a consistent name in all .ebd files.
|-----------------------------------------------------------------------------
[Manufacturer] Quality SIMM Corp.
|
|=============================================================================
|    Keyword: [Number of Pins]
|   Required: Yes
|Description: Tells the parser the number of pins to expect.  Pins are any
|             externally accessible electrical connection to the part.
|Usage Rules: The field must be a positive decimal integer.
|             Note: The simulator must not limit the Number of Pins to any
|             value less than 1,000.
|-----------------------------------------------------------------------------
[Number of Pins] 128
|
|=============================================================================
|    Keyword: [Pin List]
|   Required: Yes
|Description: Tells the parser the pin names of the parts user accessible 
|             pins.  It also informs the parser which pins are connected to
|             power and ground. 
|Sub-params:  pin_name signal_name
|Usage Rules: Following the [Pin List] keyword are two columns.  The first
|             column lists the pin name, the second lists the data book 
|             name of the signal connected to that pin. There must be as many 
|             pin_name/signal_name rows as there are pins given by the 
|             preceding [Number of Pins] keyword.  Pin names must be the 
|             alphanumeric external pin names of the part.  The pin
|             names cannot exceed eight characters in length.  Any pin
|             associated with a signal name that begins with "GND" or
|             "POWER" will be interpreted as connecting to the boards ground
|             or power plane.  In addition, NC is a legal signal name and
|             indicates that the Pin is a 'no connect'.
|             
|-----------------------------------------------------------------------------
|  A SIMM BOARD EXAMPLE
|
[Pin List]
pin_name  signal_name
A1        GND
A2        data1
A3        data2
A4        POWER5    | this pin connects to 5v
A5        NC        | a no connect pin
| .
| .
A22       POWER3.3  | this pin connects to 3.3v
B1        casa
| .
| .
|etc.
|
|============================================================================
|    Keyword: [Path Description]
|   Required: Yes
|Description: This keyword allows the user to describe the connection
|             between the user accessible pins of a part and the pins of
|             the ICs mounted on that part.  Each pin to node connection is
|             divided into one or more cascaded "sections", where each
|             section is described in terms of it's L/R/C per unit length.
|             The Fork and Endfork subparameters allow the path to branch
|             to multiple nodes, or another pin.  A path description is
|             required for each pin who's signal name is not "GND", "POWER"
|             or "NC".
|
|             BOARD DESCRIPTION AND IC BOUNDARIES:
|             In any system, each part interfaces with another part at some 
|             boundary.  Every part model must contain the components 
|             necessary to represent the behavior of the part being modeled 
|             within its boundaries. The boundary definition depends upon 
|             the parts being represented by the model.
|
|             For CARD EDGE CONNECTIONS such as a SIMM or a PC Daughter 
|             Card plugged into a SIMM Socket or Edge Connector, the 
|             boundary should be at the end of the board card edge pads as 
|             they emerge from the connector.
|
|             For any THROUGH-HOLE MOUNTED PART, the boundary will be at 
|             the surface of the board on which the part is mounted.
|
|             SURFACE MOUNTED PART models end at the outboard end of their
|             recommended surface mount pads.
|
|             If the board level component contains an UNMATED CONNECTOR,
|             the unmated connector will be described in a separate file,
|             with it's boundaries being as described above for the
|             through-hole or surface mounted part.
|
| Sub-params: Len, L, R, C, Fork, Endfork, Pin, Node
|Usage Rules: Each individual connection path (user pin to node(s))
|             description begins with the
|             [Path Description] keyword and a path name, followed by the
|             subparameters used to describe the path topology and the
|             electrical characteristics of each section of the path.  The
|             path name must not exceed 40 characters, blanks are not allowed,
|             and each occurrence of the [Path Description] keyword must be
|             followed by a unique path name.  The individual subparameters
|             are broken up into those that describe a sections electrical
|             properties, and those that describe the topology of a path.
|
|             SECTION DESCRIPTION SUBPARAMETERS:
|             The Len, L, R, and C subparameters specify the length, the
|             series inductance and resistance and the capacitance to ground
|             of each section in a path description.
|             Len     The physical length of a section.  Lengths are given
|                     in terms of arbitrary 'units'.  Any non-zero length
|                     requires that the parameters that follow must be
|                     treated as distributed elements by the simulator.
|             L       The series inductance of a section, in terms of
|                     'inductance/unit length'.  For example, if the total
|                     inductance of a section is 3.0nH and the length of the
|                     section is 2 'units', the inductance would be listed
|                     as L = 1.5nH  (i.e. 3.0 / 2). 
|             C       The capacitance to ground of a section, in terms of
|                     capacitance per unit length.
|             R       The series DC (ohmic) resistance of a section, in
|                     terms of ohms per unit length.
|
|             TOPOLOGY DESCRIPTION SUBPARAMETERS:
|             The Fork and Endfork subparameters denote branches from the 
|             main pin-to-node or pin-to-pin connection path.  The Node 
|             subparameter is used to reference an external component 
|             description file.  The Pin subparameter is used to indicate 
|             the point at which a path connects to a user visible pin. 
|             Fork    This subparameter indicates that the sections
|                     following (up to the Endfork subparameter) are part
|                     of a branch off of the main connection path.  This
|                     subparameter has no arguments.
|             Endfork This subparameter indicates the end point of a
|                     branch.  For every Fork subparameter there must be a
|                     corresponding Endfork subparameter.  As with the Fork
|                     subparameter, the Endfork subparameter has no arguments.
|             Node    reference_designator.pin
|                     This subparameter is used when the connection path
|                     connects to a pin of another, externally defined part.
|                     The arguments of the Node subparameter indicate the pin
|                     and reference designator of the external component.  The
|                     pin and reference designator portions of the argument are
|                     separated by a period (".").  The reference designator is
|                     mapped to an external component description (another .ebd
|                     file or .ibs file) by the [Reference Designator Map]
|                     Keyword.  Note that a Node MUST reference a model of
|                     a passive or active component.  A Node is not an
|                     arbitrary connection point between two elements or 
|                     paths.
|             Pin     This subparameter is used to mark the point at which
|                     a path description connects to a user accessible pin.
|                     Every path description must contain at least one 
|                     occurrence of the Pin subparameter.  It may also contain
|                     the reserved word NC.  The value of the Pin subparameter
|                     must be one of the pin names listed in the [Pin List]
|                     section.
|
|             Using The Subparameters to Describe Paths:
|             A section description begins with the Len subparameter and
|             ends with the slash (/) character.  The value of the Len, L,
|             R and C subparameters and the subparameter itself are separated
|             by an equals sign (=); whitespace around the equals sign is
|             optional.  The Fork, Endfork, Node and Pin subparameters are
|             placed between section descriptions (i.e. between the concluding
|             slash of one section and the 'Len' parameters that starts
|             another).  The arguments of the Pin and Node subparameter are
|             separated by white space; no equal sign nor slash (/)
|             character is used.  
|
|             Specifying a Len or L/R/C value of zero is allowed.  If
|             Len = 0 is specified, then the L/R/C values are the total
|             for that section.  If a non-zero length is specified, then
|             the total L/R/C for a section is calculated by multiplying 
|             the value of the Len subparameter by the value of the L,
|             R or C subparameter.  However, as noted below, if a non-
|             zero length is specified, that section MUST be treated as
|             distributed elements.
|
|             Legal Subparameter Combinations for Section Descriptions:
|
|             A)  Len, and one or more of the L, R and C subparameters.  If
|             the Len subparameter is given as zero, then the L/R/C sub-
|             parameters represent lumped elements.  If the Len subparameter
|             is non-zero, then the L/R/C subparameters represent distributed
|             elements and both L and C must be specified, R is optional.
|
|             B) The first subparameter following the [Path Description]
|             keyword must be 'Pin', followed by one or more section
|             descriptions.  The path description can terminate in a node,
|             another pin or the reserved word, NC.
|
|---------------------------------------------------------------------------
|
|
|  AN EXAMPLE PATH FOR A SIMM MODULE
|
[Path Description] CAS_2
Pin J25
Len = 0.5 L=8.35n C=3.34p R=0.01 /
Node u21.15
Len = 0.5 L=8.35n C=3.34p R=0.01 /
Node u22.15
Len = 0.5 L=8.35n C=3.34p R=0.01 /
Node u23.15
|
|  A DESCRIPTION USING THE FORK AND ENDFORK SUBPARAMETERS
|
[Path Description] PassThru1
Pin B5
Len = 0   L=2.0n /
Len = 2.1 L=6.0n C=2.0p /
 Fork
 Len = 1.0 L= 1.0 C= 2p
 Node u23.15
 Endfork
Len = 1.0 l = 6.0n C=2.0p /
Pin A5
|
|=============================================================================
|    Keyword: [Reference Designator Map]
|   Required: Yes, if any of the path descriptions use the Node subparameter.
|Description: Indicates the linkage between a reference designator and the
|             external part it represents.
|Usage Rules: The [Reference Designator Map] keyword must be followed by a
|             list of all of the reference designators defined in the Node
|             subparameter under the [Path Description] keyword.  Each
|             reference designator is followed by the Name of the part to which
|             it is linked and the terms are separated by whitespace.  The part
|             Name may be another .ebd or .ibs model.  A referenced .ebd model
|             may be internal to the calling .ebd file or it may be an external
|             file with an appropriately given pathname.
|-----------------------------------------------------------------------------
[Reference Designator Map]
|
|  EXTERNAL PART REFERENCES
|
u23   80286.ibs
u24   SIMM.ebd
u25   C:\LIBS\LS244.ibs
|
|  AN INTERNALLY DEFINED .ebd MODEL OF A 10K RESISTOR
|
u26   R10K
| 
|=============================================================================
|    Keyword: [End Electrical Description]
|   Required: Yes
|Description: Marks the end of an Electrical Interconnect Description.
|Usage Rules: This keyword must come at the end of each complete electrical
|             interconnect model description.
|
|             Optionally, a comment may be added after the [End Electrical
|             Description] keyword to clarify which board model has
|             ended.
|-----------------------------------------------------------------------------
[End Electrical Description]        | End: 16Meg X 8 Simm Module
|
******************************************************************************
ANALYSIS PATH/DATA THAT LED TO SPECIFICATION: