Arpad, Is there anything in EBD that prevents is from fully describing the interconnect of an MCM package? I aver that the answer to this question is "No". We could clarify this by submitting the following new BIRD against IBIS 5.1: BIRD XXX Replace the following text: A "board level component" is the generic term to be used to describe a printed circuit board (PCB) or substrate which can contain components or even other boards, and which can connect to another board through a set of user visible pins. The electrical connectivity of such a board level component is referred to as an "Electrical Board Description". For example, a SIMM module is a board level component that is used to attach several DRAM components on the PCB to another board through edge connector pins. An electrical board description file (a .ebd file) is defined to describe the connections of a board level component between the board pins and its components on the board. With A "board level component" is the generic term to be used to describe a printed circuit board (PCB), Multi Chip Module (MCM) or substrate which can contain components or even other boards and MCMs, and which can connect to another board or MCM through a set of user visible pins. The electrical connectivity of such a board level component is referred to as an "Electrical Board Description". For example, a SIMM module is a board level component that is used to attach several DRAM components on the PCB to another board through edge connector pins. An electrical board description file (a .ebd file) is defined to describe the connections of a board level component between the board pins and its components on the board. Walter From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Friday, August 17, 2012 7:42 AM To: 'Arpad_Muranyi@xxxxxxxxxx'; 'IBIS-ATM' Subject: RE: [ibis-macro] Using EBD for stacked die package modeling? Arpad, Sorry, the IBIS 5.0 text is: | A "board level component" is the generic term to be used to describe a | printed circuit board (PCB) or substrate which can contain components or | even other boards, and which can connect to another board through a set of | user visible pins. The electrical connectivity of such a board level | component is referred to as an "Electrical Board Description". For example, | a SIMM module is a board level component that is used to attach several DRAM | components on the PCB to another board through edge connector pins. An | electrical board description file (a .ebd file) is defined to describe the | connections of a board level component between the board pins and its | components on the board. Also, | Keyword: [Reference Designator Map] | Required: Yes, if any of the path descriptions use the Node subparameter | Description: Maps a reference designator to a component or electrical board | description contained in an .ibs or .ebd file. | Usage Rules: The [Reference Designator Map] keyword must be followed by a | list of all of the reference designators called out by the | Node subparameters used in the various path descriptions. | Each reference designator is followed by the name of the .ibs | or .ebd file containing the electrical description of the | component or board, then the name of the component itself as | given by the .ibs or .ebd file's [Component] or [Begin Board | Description] keyword respectively. The reference designator, | file name and component name terms are separated by white | space. By default the .ibs or .ebd files are assumed to exist | in the same directory as the calling .ebd file. It is legal | for a reference designator to point to a component that is | contained in the calling .ebd file. Which says an ebd file can contains .ibs components (packages that contain single chips), and .ebd "modules" that contain multiple chips. There are many examples DIMM-IN-A-PACKAGE and MCM products being delivered today. http://www.electronicspecifier.com/Memory/DIMM-IN-A-PACKAGE-Solution-Based -on-xFD-Technology-Invensas.asp http://www.amkor.com/go/packaging/all-packages/mcm-pbga/mcm-pbga-multi-chi p-module-plastic-ball-grid-array There is nothing in the current EBD specification that distinguishes between FR4 or ceramic substrate. There is nothing in the current EBD specification that distinguishes between vertical or horizontal mount. There is nothing in the current EBD specification that distinguishes between its component being: Flip Chips (IC) Wire Bond Chips (IC) Small Outline Packages containing a single Chip (IC) Multi Chip Modules containing multiple Chips (ICs) So we already have a solution that supports multiple die in a package - EBD, and it works, and it is currently being used to describe the interconnect of BGA and PGA packages in addition to SIMM and DIMM packages . Why would we complicate .ibs when we already have a solution that works and is successfully being used? Walter From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Friday, August 17, 2012 1:41 AM To: 'IBIS-ATM' Subject: [ibis-macro] Using EBD for stacked die package modeling? Walter, First, let's get a typo out of the way. Under "In IBIS 5.0:" you actually quoted something from one of my earlier emails, not something out of the IBIS v5.0 specification, but I assume you were trying to quote something from Section 8 on pg. 165. Anyway, I think we can quote websites, BIRDs, and the IBIS specification all we want in attempt to prove what some of these words mean, and we will not succeed, because these terms are used rather imprecisely. Depending on who we quote and when that quote was written we can find a "definition" that we like to prove our own point. It doesn't look like we are going to be able to settle our difference of opinions that way. I also want to state it upfront that I do not dispute whether EBD could be used the way you propose. What I am saying is that using it that way was not intended, and it doesn't fit in with the way the specification is structured. Instead of trying to prove what "package" and "substrate" really mans, I would like to point out a few technical things from Section 8 (pg. 165) in v5.0. The first sentence starts out like this: | A "board level component" is the generic term to be used to describe a | printed circuit board (PCB) or substrate which can contain components or | even other boards... Note that this is sort of a definition of what a "board level component" is. Also note that in IBIS we have a keyword, called [Component] which is a container for the pin list in the [Pin] keyword, the [Package] and [Package Model] keywords, and the [Model] keywords, among many others. The point here is that in IBIS a [Component] is a packaged chip. Contrast that with "board level component" in EBD, which is defined as a PCB that holds components = [Component]s, i.e. packaged chips. That's what a SIMM or DIMM looked like in our eyes when we wrote IBIS and EBD in the 90's. Yes, there were MCM-s and other fancy devices in those days too, but they were usually used in expensive supercomputers, not commodity PC motherboards, and IBIS was really not targeted for simulating the unusual, rare or expensive stuff. Those guys used SPICE for everything they did, because the thinking was that SPICE is the most perfect and accurate way to model and simulate everything. The next sentence in Section 8 says: ... The electrical connectivity of such a board level | component is referred to as an "Electrical Board Description". These first two sentences make it very clear to me that EBD was invented to model a small PCB with packaged chips on it. Now, why do I say that your proposed way of using EBD for MCM-s or stacked die memory chips doesn't fit in with the way the specification is structured? Look at the keyword hierarchy in Section 3a, pg. 13 in v5.0. We have [Component], under which we have [Pin], [Package], [Package Model]. The [Model] and [Define Package Model] keywords are on the same level as [Component] so that multiple components can use them if they are in the same .ibs file. The "Node" subparameter of the [Path Description] keyword of EBD contains reference designators and pin names to instantiate and connect to a pin of an IBIS [Component] or another "board level component", i.e. another EBD model (pg. 172): | Each reference designator is followed by the name of the .ibs | or .ebd file containing the electrical description of the | component or board, then the name of the component itself as | given by the .ibs or .ebd file's [Component] or [Begin Board | Description] keyword respectively. If an IBIS [Component] is a packaged die, or if an EBD is a "board level component" which carries multiple packaged dice, it doesn't look right to me to consider EBD the package of multiple unpackaged dice and call it the package model of a stacked die module or MCM. This feels like a circular reference to me or walking up-side down on the ceiling of a room, etc... Again, I don't dispute that this couldn't be done, but I feel that it would clutter the specification and make it confusing. The way I think this could be done correctly is by adding a new keyword to IBIS under the [Component] keyword and another one in parallel with it. We could call the first one [Die Model] and the second one [Define Die Model] or similar. This way an IBIS [Component] could contain a definition and call to a package (or multiple slices of a package, if you will) and contain one or more die definitions and calls. The [Define Die Model] could then have a [Pads] keyword (or similar) to define all of its on-die connection points (nodes) and the package and on-die interconnect instances could then be simply connected to the pins listed under the existing [Pin] keyword, and the proposed [Pads] keywords of the die instance(s). While we are at it, we could also make the necessary changes to instantiate the [Model]s in the die definition instead of the [Pin] keyword, and do it so that the [Model] terminals are all available so that on-die interconnects could also be inserted between the pads and [Model]s easily. By doing this we could finally get rid of the age old problem of the assumed pads, and assumed one-to-one paths in the package, etc. This would handle single die or stacked die devices cleanly and appropriately as it is done in hardware. This way we wouldn't have to worry about giving a face lift to EBD's clunky syntax. Thanks, Arpad ==================================================================== From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz Sent: Thursday, August 16, 2012 9:10 PM To: Muranyi, Arpad; 'IBIS-ATM' Subject: [ibis-macro] Re: Topics for 8/21/12 IBIS-ATM meeting Arpad, From http://en.wikipedia.org/wiki/Multi-chip_module A multi-chip module (MCM) is a specialized electronic package where multiple <http://en.wikipedia.org/wiki/Integrated_circuit> integrated circuits (ICs), semiconductor dies or other discrete components are packaged onto a unifying substrate, facilitating their use as a single component (as though a larger IC). The MCM itself will often be referred to as a "chip" in designs, thus illustrating its integrated nature. In IBIS 5.0: - it was designed to describe the printed circuit BOARDs of memory modules in the days when memory modules used to be modeled as a lumped capacitance and we felt that more details were necessary to find the timing to the memory chips on these memory modules In BIRD 36.3 Buffer Issue Resolution Document (BIRD) BIRD ID#: 36.3 ISSUE TITLE: Electric Descriptions of Boards REQUESTER: Stephen Peters, Intel, Hank Herrmann, AMP DATE SUBMITTED: June 23, 1996, Feb. 13, 1997, March 7, 1997, March 31, 1997 DATE ACCEPTED BY IBIS OPEN FORUM: April 8, 1997 ************************************************************************** **** ************************************************************************** **** 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. So the statement of the issue for BIRD 36.3, the EBD BIRD, states quite clearly that EBD satisfies the "need to describe SIMM modules". According to Wikipedia a SIMM (similar to a DIMM) is "a specialized electronic package where multiple integrated circuits <http://en.wikipedia.org/wiki/Integrated_circuit> (ICs), semiconductor dies or other discrete components are packaged onto a unifying substrate". That substrate could be a "board" using FR4, or ceramic. So from the very beginning EBD was targeted to packages (using either board or ceramic substrates), and in practice, every EBD file I have seen has been for packages that are mounted either vertically (SIMM, DIMM) or horizontally (mezzanine style). I think the above statements clearly resolve the issue. You may think that it "is not the right thing to do", But the BIRD Statement of the Issue, IBIS 5.0, Wikipedia, and common practice say otherwise. Walter From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Thursday, August 16, 2012 8:39 PM To: IBIS-ATM Subject: [ibis-macro] Re: Topics for 8/21/12 IBIS-ATM meeting Walter, I am sorry, but I did not get the impression that anything has been resolved in the email thread we had on EBD. At this time I still maintain my position that using EBD for package modeling is not the right thing to do. I know you see things differently, but I don't think that this difference between our views were resolved by any means. Arpad ===================================================================== From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz Sent: Thursday, August 16, 2012 6:52 PM To: IBIS-ATM Subject: [ibis-macro] Topics for 8/21/12 IBIS-ATM meeting All, It has been resolved via e-mail thread that EBD files describe modules containing two or more IC's. These modules can be boards, or packages. Arpad and I plan to evaluate this syntax and the BIRD 125 and 145 syntax and report to the committee with our recommendations. The enclosed presentation summarizes all of the proposed parameter tree syntax by using simple examples that demonstrate the proposed package modeling functionality for IBIS 6.0. I previously sent out an example applying this functionality to an EBD example. Walter Walter Katz wkatz@xxxxxxxxxx Phone 303.449-2308 Mobile 303.335-6156