Walter (and list), Thanks for your recommendations (and sorry for the long time taken to respond). If I may comment, I have a few suggestions of my own, shown below in priority order: 1) Fix the package format 2) Fix the package format 3) Fix the package format Did I mention fixing the package format? :) 4) Add differential measurements, in the style of current IBIS My reasoning: we need to address the areas where IBIS is actually weaker than proprietary alternatives AND weaker than what the industry requires. Lossless, uncoupled packages are no longer suitable and haven't been for some time. Similarly, with so many interfaces being SerDes, not having eye masks and similar measurements makes IBIS antiquated. In general, I understand the resistance to deprecating parts of the existing specification. However, we need to distinguish between: - features that simply aren't used very much - structures and assumptions that actually limit or prohibit expansion, or make improvement very difficult. Transit Time is my favorite example of the first type. We don't need to spend time removing it from the specification, even if no one uses it, as its presence doesn't limit anyone. It also does not interact very much with other keywords. The lack of explicit, named pads in IBIS is my favorite example of the second type. The one-to-one pin-to-pad assumption actually makes expansion of the specification complicated and difficult to understand. To address this second kind of issue, we would likely have to create an "IBIS-Lite" specification that is similar but not backward compatible with the IBIS 5.0 and previous specifications (see below). My other recommendations are procedural: 5) Let us not make the perfect be the enemy of the good (or, as the CPR classes say, "imperfect care given is better than perfect care withheld") In other words, when confronted with a problem, let's not start developing a comprehensive, far-reaching solution that may never get released when a more specific, directed solution would do the trick and could be implemented fast. I believe we may have started down this path twice now, with both package modeling and with C_comp improvements. 6a) Let's not confuse *format* with *solution* (as may be happening in the SSO discussion on the SI-List) 6b) We should ban the following phrase from our discussions: "But you can already do that with the XYZ format/language" We have gone back and forth on the need for table-driven keywords vs. languages. We have also talked about the three audiences for IBIS: tool vendors, IC vendors/designers and system designers. I am realizing that IC vendors/designers can be split into two camps: those who can or do create behavioral algorithms for their parts, and those who cannot or do not. For the latter group, table-based keywords have one enormous advantage over algorithmic or code-based models: they don't require a lot of knowledge to generate. An IC vendor doesn't need to actually know how to create a sim algorithm using DC I-V data to use [Pulldown], [Pullup], etc. They simply need to know the rules of extracting the data, because the burden of developing the algorithm has already been taken up by the spec committee and the tool vendors. Code-based models do indeed enormously increase flexibility, but only for those who know how to write behavioral models to describe the effects in which they're interested. In short, creating a format to express a solution is not the same as having the solution. I would request that we keep that distinction in mind. - MM ________________________________ From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz Sent: Tuesday, January 06, 2009 1:07 PM To: IBIS Macro Subject: [ibis-macro] My recommended course of action for IBIS All, Summary of discussion on my proposed direction for IBIS. 1) Things that could be done quickly with simple new keywords. 2) Major effort, totally new package methodology. 3) and 4) Items that can be done in the Wednesday Interconnect meeting. 5) 6) 7) Probably will not be done. Walter 1) Implement keywords to address differential and high speed differential buffers a. Final Stage Subckt (frequency dependent C_Comp and loss) b. Differential Termination Subckt (makes IBIS models True differential) c. Differential Standard Load Subckt d. Common Mode Voltage e. Simple N-Tap FIR equalization for Tx models f. Simple LTI impedance model instead of IV curves g. Cookbook for generating and using IBIS differential models h. Implement [Specification] statement to point to industry standard measurement and timing rules 2) Package models based on IBIS Interconnect Spice 3) Sparse Touchstone Data 4) Touchstone Port Data (wrapper) 5) Deprecate (remove) lots of unused and useless IBIS stuff from the spec. 6) External Model DLL API 7) Better support for ODT