[ibis-macro] Re: A simple solution to Table

  • From: "Walter Katz" <wkatz@xxxxxxxxxx>
  • To: "'Bob Ross'" <bob@xxxxxxxxxxxxx>, "'IBIS-ATM'" <ibis-macro@xxxxxxxxxxxxx>
  • Date: Tue, 5 Apr 2011 13:28:22 -0400 (EDT)

Bob,

 

I think we will need to make an addition change to the BNF to allow the
values of table parameters to be:

 

(<Parameter> (token token token)(.)(.))

 

Walter

 

From: Bob Ross [mailto:bob@xxxxxxxxxxxxx] 
Sent: Tuesday, April 05, 2011 1:21 PM
To: wkatz@xxxxxxxxxx; 'IBIS-ATM'
Subject: RE: [ibis-macro] A simple solution to Table

 

Walter:

 

My concern about these two DLL  calls:

 

(xyz (1 2 3))  and (xyz (1 2 3) (4 5 6))

 

I do not see how these parenthesis fit into the BNF in section 10 without

redefining the first element of each row as a parameter.

 

|     <tree>:

|       <branch>

|    

|     <branch>:

|       ( <branch name> <leaf list> )

|    

|     <leaf list>:

|       <branch>

|       <leaf>

|       <leaf list> <branch>

|       <leaf list> <leaf>

|    

|     <leaf>:

|       ( <parameter name> whitespace <value list> )

|    

|     <value list>:

|       <value>

|       <value list> whitespace <value>

|     <value>:

|       <string literals>

|       <decimal number>

|       <decimal number>e<exponent>

|       <decimal number>E<exponent>

 

The BNF would have to be changed to add parenthesis grouping

of values into row values for a defined <parameter name>.

 

Bob

 

From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Tuesday, April 05, 2011 3:05 AM
To: IBIS-ATM
Subject: [ibis-macro] A simple solution to Table

 

All,

 

A simple solution to Table. This is consistent with existing ami file and
existing implementation.

 

A Table is either followed by a list of tokens of (Type type)  or a list
of () delimited rows "() Rows". Each row will consist of a list of tokens
of (Type type). (type is either Float Integer UI Boolean String). When a
Table passed to or from the DLL because it is Usage In, Out or InOut, the
data will either be passed as defined in the .ami file. If Table is
followed by a list of tokens, then the value of the parameter in the
AMI_parameters_ string will be a list of tokens. If Table is followed by a
list of () Rows, then the value of the parameter in the AMI_parameters_
string will be a list of () Rows.

 

 

Model_Specific

 

Examples (All Type Integer, Usage In)

 

In AMI File                               In call to the DLL

----------------------                     -------------------

 

(xyz (Table (1 2 3))                  (xyz (1 2 3))

 

(xyz (Table 1 2 3)                    (xyz 1 2 3)

 

(xyz (Table (1 2 3)(4 5 6)))      (xyz (1 2 3) (4 5 6))

 

(xyz (Table 1 2 3 4 5 6))          (xyz 1 2 3 4 5 6)

 

(xyz (Table 1 2 3 

                  4 5 6))                    (xyz 1 2 3 4 5 6)

 

 

If a Table consists of two or more () Rows, then each row shall contain
the same number of tokens.

 

If the first token in the first ()  Row is Labels, it is a Label Row. A
Label Row is informational only and is not passed in or out of the DLL.
The Label Row shall consist of a list of Strings. It should contain the
same number of Strings as there are tokens in each () Rows. 

 

Reserved_Parameters

 

Same rules, but reserved parameters have fixed interpretation conventions
for columns that everyone understands.  For example, Tx_Jitter  and
Rx_clock_PDF, have the same special rules:

Type Float (all numbers are float, but can be recast as integers or float)

1.         First column is to be a row number (actually it looks like a
bin number)

2.         Second column is a time value relative to a center value

3.         Third column is value, from 0 to 1 and with the total of that
column equal to 1.

 

Type UI (all numbers are still float), but the reserved parameter
documentation describes how to recast the number.

1.         Second column is UI and same rules as above

 

 

 

Walter Katz

wkatz@xxxxxxxxxx

Phone 303.449-2308

Mobile 720.333-1107

 

Other related posts: