Arpad, The following describes both the content of AMI_parameters_in and AMI_parameters_out. I think it was always obvious that In and InOut went into AMI_parameters_in and InOut and Out went into AMI_parameters_out. | 3.1.2.6 AMI_parameters (_in and _out) | | Memory for AMI_parameters_in is allocated and de-allocated by the EDA | platform. The memory pointed to by AMI_parameters_out is allocated and | de-allocated by the model. This is a pointer to a string. All the input | from the IBIS AMI parameter file are passed using a string that been | formatted as a parameter tree. | | Examples of the tree parameter passing is: . Walter From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Monday, December 06, 2010 10:48 AM To: ibis-macro@xxxxxxxxxxxxx Subject: [ibis-macro] Re: About the Typos BIRD comments from Fangyi Walter, I think we were just lucky that everything worked out so far. This luck can be explained by many factors, one of which is that there are not too many model makers out there yet. If model writing is in the hands of only a few people, we will not get a wide variety of model styles or spec interpretations in the models they write. But as soon as we will start having a wide variety of people writing the models, we will start seeing a wide variety of interpretations of the specification in those models and trouble will begin because, as far as I can tell, the specification is far from being unambiguous. For example, I still don't know from reading the specification or these emails where the model supposed to return the Out or InOut values. If this is explained in the spec please give me a page number so I could educate myself. I will be more than happy to admit that I overlooked something and delete the corresponding text in my Typos BIRD draft. By the way, the text that you seem feel that should not be included in the Typos BIRD draft (and consequently in the specification) came from none other than yourself in a private email you sent me on October 22 in response to a question I raised about rows 39-40 in our Task List spreadsheet (see attached file). I liked your suggested text, because I felt that it will finally shed light on a few items which needed explanation in the specification. I find it odd that you seem to be opposed to include such explanations in the specification now. Thanks, Arpad ================================================================== From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Monday, December 06, 2010 9:03 AM To: Muranyi, Arpad; ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Re: About the Typos BIRD comments from Fangyi Arpad, If any other member of the IBIS ATM committee felt that additional explanation was warranted I would not object to any suggested additions to the specification as long as they did not change the original intent. There are a number of EDA tools that are now successfully using AMI models build by a number IC vendors and model makers according to the what is written in the current specification. I do not think there has been any problem with the way that data is passed to and from the DLL with the exception that one IC vendor was incorrectly inserting "Format" in the parameters_in string, and of course the confusion of passing tables into a DLL. Walter From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Monday, December 06, 2010 9:49 AM To: ibis-macro@xxxxxxxxxxxxx Subject: [ibis-macro] Re: About the Typos BIRD comments from Fangyi Walter, I would like to ask you to complete your last sentence so we could understand what you were trying to say. (See red comment in the sentence). Thanks, Arpad ======================================================== From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Friday, December 03, 2010 11:09 AM To: Muranyi, Arpad; ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Re: About the Typos BIRD comments from Fangyi Arpad, Actually the current released 5.0 BIRD is rather complete in this area. It is very short on examples, and of course Tables is lacking any coherent explanation on how data in Tables can get passed in or out of the DLL. I would support WHAT? if any other members of the committee feel that the specification needs additional explanation required in addition to a good set of examples. Walter From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Friday, December 03, 2010 11:32 AM To: ibis-macro@xxxxxxxxxxxxx Subject: [ibis-macro] Re: About the Typos BIRD comments from Fangyi Hello AMI Experts, This thread stopped a day or so ago without reaching a conclusion. I am going to summarize the questions I would like to get answered. 1) When does a branch become an "AMI parameter"? Does this have to be spelled out in the IBIS-ATM specification, or does this belong to a Cookbook or HOWTO document? Currently this is what I have in the Typos BIRD draft: |* A branch in the .ami file is an "AMI Parameter" if it |* contains the leaves Type, Usage, and any of the following |* leaves: |* |* Default |* <data_format> or Format <data_format> |* |* and does not contain another branch. A branch which |* contains one or more sub-branches may only contain the |* Description <string> leaf/value pair in addition to the |* sub-branches. 2) What is supposed to be passed into the AMI executable model in the parameter string, and what is supposed to be omitted from this string? Does this have to be spelled out in the IBIS-ATM specification, or does this belong to a Cookbook or HOWTO document? Currently this is what I have in the Typos BIRD draft: ************************************************************************** ****** REMOVE THIS PARAGRAPH if the next few are agreed on:**************************** |* The tree data structure passed in and out of the DLL |* described in section 3.1.2.6 of Section 10 of this document |* is similar to the tree data structure in the .ami file except |* the 'Reserved_Parameters' and 'Model_Specific' branch names are |* not included, the "AMI Parameter" branches become leaves and |* the "AMI parameters" of Usage Info and Out are not included. END OF REMOVED PARAGRAPH******************************************************** ************************************************************************** ****** |* |* The parameter string passed in and out of the DLL (described in |* section 3.1.2.6 of Section 10 of this document) is formatted |* the same way as the tree data structure in the .ami file with |* the following exceptions: |* |* 1) The "Reserved_Parameters" and "Model_Specific" branch |* names are not included |* 2) None of the Description leaf/value pairs are included |* 3) AMI Parameter branches or sub branches with Usage Info |* or Usage Out are omitted, but all other branches or sub |* branches are included |* 4) AMI Parameter branches with Usage In or Usage InOut |* become leaves |* 3) Define how/where the DLL returns Out or InOut parameters and how/where the EDA tool is supposed to look for these values. Does this have to be spelled out in the IBIS-ATM specification, or does this belong to a Cookbook or HOWTO document? There is nothing on this topic in the Typos BIRD draft, nor can I find anything about this in the current IBIS specification. Thanks, Arpad ========================================================================== ====