Arpad: There are probably several effective ways to document the general syntax, such as with your proposal shown here. In fact it could be reduced to the last choice with some notes nearby. |* All parameters must be in one of the two following |* formats (order not important): |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (<data_format> <data>) |* (Default <value>) |* (Description <string>)) |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Format <data_format> <data>) |* (Default <value>) |* (Description <string>)) 1. The word 'Format' is optional and can be ignored by EDA tools. The examples in this section not show the word 'Format'. 2. Certain Reserved_Parameter names allow only certain <data_format> selections, as sumarized in Table .... 3. When permitted, the <data_format> selection of Value and Default are always mutually exclusive. Value or Default are required, but Value and Default cannot be used together. 4. <data_format> is always required for selections other than Value 5. Default is optional when <data format> is not Value. ------ These clarification should be documented with the syntax, even if they repeat what is stated 3 or pages elsewhere. Note, rule 3. The current specification requires Format for all parameters except the first four Reserved_Parameters, and makes Default optional. So the cases for Value and Default together are currently allowed. However, due to lack of clarity, it does make sense to make this awkward situation illegal, as proposed. The few models that have this can be fixed. Finally the more general rule, at least for Model_Specific parameters at this time, is that parameter_structures are optionally part of the syntax - recursively. If the whole syntax can be referred to as a 'parameter_structure', the more general syntax is: |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Format <data_format> <data>) |* (Default <value>) |* (Description <string>) (paramater_structure_1) (parameter_structure_2) .... |* ) The example for txtaps illustrates this. The parameter_name 'txtaps' encloses parameter structures for each tap parameter name: '-2' to '2'. This is consistent with the general tree-structure basis of the .ami file. Bob Muranyi, Arpad wrote:
Hello everyone, I am working on incorporating the comments I received yesterday on the Typos_Format_Value_Default_BIRD draft. One of the comments I received was to remove the following lines: These four reserved |* parameters must be in one of the three following formats |* (order not important): | |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Value <value>) |* (Description <string>)) |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Default <value>) |* (Description <string>)) |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Format Value <value>) |* (Description <string>)) Removing these lines doesn't make sense to me because each of the four parameter type description (Reserved, Tx only, Rx only, and Model Specific) begin with a general syntax rule, and removing these lines means that we are removing the general syntax rule description for the Reserved parameters. To try making sense, I looked at what the existing v5.0 specification does when it defines the various parameter syntaxes. Pulling the four occurrences of the syntax rules and putting them closely together, I don't see too many variations between them, except that the reserved parameters have "Default <value>" only, while the rest of them also have "Format <data format>": Reserved parameters: ==================== | (<parameter_name> (Usage <usage>) | (Type <data_type>) | (Default <values>) | (Description <string>)) Tx only parameters: =================== | (<parameter_name> (Usage <usage>) | (Type <data_type>) | (Format <data format>) | (Default <values>) | (Description <string>)) Rx only parameters: =================== | (<parameter_name> (Usage <usage>) | (Type <data_type>) | (Format <data format>) | (Default <values>) | (Description <string>)) Model Specific parameters: ========================== | (<parameter_name> (Usage <usage>) | (Type <data type>) | (Format <data format>) | (Default <values>) | (Description <string>)) Making "Value" available (on Walter's request) for the reserved parameters (first group above) makes the syntax of the four groups identical (as far as I can tell), with the rule that the first group's data_format can only use "Value" (and the additional rule that Value and Default are mutually exclusive). If this conclusion is correct, I would just "factor out" this syntax description and mention it once and apply it to all parameter types in their text. Is that acceptable to all of you?The rule about Value and Default being mutually exclusive is still valid for all parameter types, and the backward compatible"Format Value" will also have to be allowable for the reserved parameters then. So I propose to have this once in the spec: |* All parameters must be in one of the two following |* formats (order not important): |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (<data_format> <data>) |* (Default <value>) |* (Description <string>)) |* |* (parameter_name (Usage <usage>) |* (Type <data_type>) |* (Format <data_format> <data>) |* (Default <value>) |* (Description <string>)) and refer to this in the descriptions of the various parameter groups. At that level we can then specify for the Reserved parameters that they can only use data_format "Value". This would make the specification clearer and more consistent. Please let me know what you think of making these changes. Thanks, Arpad =================================================================== --------------------------------------------------------------------- IBIS Macro website : http://www.eda.org/pub/ibis/macromodel_wip/ IBIS Macro reflector: //www.freelists.org/list/ibis-macro To unsubscribe send an email: To: ibis-macro-request@xxxxxxxxxxxxx Subject: unsubscribe
-- Bob Ross Teraspeed Consulting Group LLC Teraspeed Labs 121 North River Drive 13610 SW Harness Lane Narragansett, RI 02882 Beaverton, OR 97008 401-284-1827 503-430-1065 http://www.teraspeed.com 503-246-8048 Direct bob@xxxxxxxxxxxxx Teraspeed is a registered service mark of Teraspeed Consulting Group LLC --------------------------------------------------------------------- IBIS Macro website : http://www.eda.org/pub/ibis/macromodel_wip/ IBIS Macro reflector: //www.freelists.org/list/ibis-macro To unsubscribe send an email: To: ibis-macro-request@xxxxxxxxxxxxx Subject: unsubscribe