====================================================================== IBIS INTERCONNECT TASK GROUP MEETING MINUTES AND AGENDA http://www.eda.org/ibis/interconnect_wip/ (note new URL) Mailing list: ibis-interconn@freelists.org ====================================================================== Next Meeting Wednesday, October 13, 2010 9 AM US Pacific Time Telephone Bridge Passcode 916-356-2663 5 758-3581 (for international and alternate US numbers, contact Michael Mirmak) LiveMeeting: https://webjoin.intel.com/?passcode=7583581 Agenda: - Attendees - Call for patents - Review of Minutes * Oct. 6, 2010 - Opens - MCP Comments Review and live editing – add mixed-mode terms? - Agenda for Next Meeting - Approve Next Meeting Dates: * Oct. 20, 2010 * Oct. 27, 2010 ====================================================================== Minutes from October 6: Attendees: ---------- (* denotes present) Agilent - Radek Biernacki*, John Moore, Ken Wong Ansoft - Denis Soldo Cadence Design Systems - Terry Jernberg, Brad Griffin, Dennis Nagle, Taranjit Kukal Cisco Systems - Mike LaBonte Green Streak Programs - Lynne Green Hewlett-Packard - Rob Elliott IBM - Greg Edlund ICT-Lanto - Steven Wong Intel - Michael Mirmak* Mentor Graphics Corp. - Arpad Muranyi*, John Angulo*, Vladimir Dmitriev-Zdorov Micron Technology - Randy Wolff*, Justin Butterfield Sigrity - Sam Chitwood, Raymond Y. Chen, Tao Su, Brad Brim* SiSoft - Walter Katz* Teraspeed Consulting Group - Bob Ross* ======================================================================== No patents were declared. Michael Mirmak, during opens, mentioned several minor changes being made to the format of agendas and procedures during meetings. These will bring Task Group practices more into alignment with TechAmerica rules. The team continued its edits of IBIS-ISS rev. 0.6, reviewing written comments from Arpad Muranyi and Bob Ross. Regarding ISS line continuation, Arpad suggested putting a separator in the "cos" or in the "4.356789" number in the given example. Radek Biernacki added that the syntax should support including a space before the \\ as well. Arpad suggested adding more numbers to the 32.67 sequence in the example. Bob added a proposal to put \\ after cos and ( as well. Arpad asked whether a lack of space is required. Radek noted that using \ as a line continuation is acceptable, adding that the entire expression in the example is not a token. Bob added that the spaces in the expression are optional. Arpad noted that, on p.28, parameter passing should be clarified regarding the *definition* of a parameter. Radek added that you can only pass the *value* of the parameter. Arpad suggested that the writer can define a parameter on the subckt definition line, passing values when it’s called. At least one proprietary SPICE variant has an alternate way to do the same thing, with a .param statement *inside* the subcircuit, while still having a mention of it when instantiating the subcircuit. In other words: Method 1: parameter is defined on the .subckt line Method 2: parameter defined as .param inside the subcircuit, but not on .subckt line Both of them can have instantiation statements using parameter names. Examples are shown below: METHOD 1 .subckt TEST n1 n2 .param myparam=5 ... .ends Xexample 5 6 TEST myparam=2 METHOD 2 .subckt TEST n1 n2 myparam=5 ... .ends Xexample 5 6 TEST myparam=2 Arpad suggested removing the section below denoted by ***: A parameter is defined either by a .parameter statement (local to that subcircuit), ***or may be passed into a subcircuit***, or may be defined on a .subckt definition line. Michael asked whether one may pass parameters both by position and by name. Radek replied that this would not be desirable. Further, he expressed reluctance to permit omission of "R=" for resistor values. Arpad suggested that probably one of the other HDLs supports this. The team agreed that out-of-order passing and omission of parameters are both permitted, as shown below: .subckt TEST n1 n2 yourparam=2 myparam=5 ... .ends Xexample 5 6 TEST myparam=2 Bob asked whether global parameters are permitted in IBIS-ISS if the calling SPICE variant supports them. Arpad replied that .global applies only to nodes, not params and that ISS parameters are always local, not global. All agreed that ISS does not permit definition of global parameters. Michael asked whether, per Bob, the top-level tool can declare global parameters that affect IBIS-ISS statements. Radek suggested this was a question of parsing; he suggested keep ISS separate from the rest of the netlist’s assumptions. Arpad added that this was also an engine issue. Radek observed that this situation is similar to a name conflict. Arpad replied that this was slightly different, in that, if we use the same parameter name in a subcircuit, it will be applied locally. He asked whether an ISS subcircuit may use a parameter without defining it explicitly. Michael suggested that this would not be allowed, as ISS would be self-contained. Arpad asked whether ISS contains specific language about this. Bob stated that if a parameter is used but not defined, it's illegal (by the ISS parser). Arpad suggested that further discussion is needed on user-defined global parameters. Michael responded that reserved global nodes (e.g., gnd) are defined; .global is prohibited from applying within ISS, even if you have these defined at the top-level SPICE. Bob suggested adding statements about this to the last ISS section, with .param, as one of the "things to avoid" (as a poor programming practice). Arpad asked whether strict parsing is now being enforced for comment character usage ( *, $). Radek stated that, if an asterisk appears in the middle of the line, the writer has commented out the rest of the line (except for expressions involving *). Bob stated that he assumed a $ can be the first character in a line. Michael noted that, in response to a comment from Arpad, the current draft removes scaling as defined by S=… Arpad asked whether the M scaling factor is permitted. This was useful for transistors, but may be less important for ISS. AR: Michael to provide illustrations of line continuation that are more meaningful AR: Michael to test line continuation examples without spaces AR: Michael to check on where "token" term is used in original documentation AR: Michael to ensure language of ISS states that undefined parameter usage is a parser error. AR: Michael to check on current parsing of comment character placement AR: Michael to check on status of M=