Mike, A "Function" is a method of returning a value for any given set of independent variable. In this case the value is an imaginary number representing the phase and amplitude of a signal measured at some "node" of a circuit when a sine wave of amplitude one and frequency f is inserted at another node. This is a "Transfer Function". Touchstone is a mathematical way of expressing this function to a software tool by stating what the value of this function is at some specified sampled frequencies. A Spice PWL is another, similar, way of describing a function. A polynomial expansion (e.g. Taylor series) is another representation of a function. A Taylor series expansion is only an approximation (unless one can support an infinite number of coefficients). Unfortunately, Touchstone does not force any standards on how many frequencies need to be sampled, or how the function is to be interpolated between the sampled points. A Pole Zero representation of a Transfer Function can only be correct at N frequencies if there are N Poles and Zeros. A Pole Zero representation has the advantage of telling the EDA tool how to interpolate between these accurately sampled points. Walter -----Original Message----- From: ibis-interconn-bounce@xxxxxxxxxxxxx [mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Mirmak, Michael Sent: Monday, July 20, 2009 6:26 PM To: Walter Katz; IBIS-Interconnect Subject: [ibis-interconn] Re: Sparse Touchstone Proposal, with some more thought pu into it In as much as "Framis" is a neologism it may save a lot of argument. :-) Perhaps I am a bit obtuse, but fundamentally, my objection has been to the word "function" in this context. To my math-avoiding mind, a function is any expression containing an equals sign and one or more variables. Touchstone files contain no expressions or equations but only values or coefficients. Therefore, no functions are involved. Awaiting a deluge of corrections. - MM From: ibis-interconn-bounce@xxxxxxxxxxxxx [mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz Sent: Saturday, July 18, 2009 6:32 PM To: IBIS-Interconnect Subject: [ibis-interconn] Sparse Touchstone Proposal, with some more thought pu into it All, I think we can all agree that an Sij (imaginary number as a list of sampled frequencies) is a numerical approximation of a Transfer Function. I would like to name this a "Framis". Here is a BNF an enhancements to Touchstone to handle Sparse Matrix data that should satisfy all of the issues raise in the past several meetings. [Number of Unique Framis's] <number of unique framis's> {Framis Names] 1 <framis name> 2 <framis name> . <number of unique framis's> <frames name> {End Framis Names] [Sparse Framis Data] <frames name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . <frames name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . (<row,column>) (<row,column>) (<row,column>) (<row,column>) . < frames name> : (<row,column>) (<row,column>) (<row,column>) (<row,column>) . [End Sparse Framis Data] The actual network data will have at each frequency <number of unique framis's> imaginary numbers. [Framis Names] section is optional, the default <framis name> of any Framis is its' <framis number>. A <framis name> can consists of any legal IBIS character, except ":" is not allowed as a Framis name. Walter Walter Katz Chief Scientist Signal Integrity Software, Inc. wkatz@xxxxxxxxxx 303.449-2308