[ibis-macro] Re: Tricky AMI branching question

  • From: Walter Katz <wkatz@xxxxxxxxxxxxx>
  • To: "michael.mirmak@xxxxxxxxx" <michael.mirmak@xxxxxxxxx>, IBIS-ATM <ibis-macro@xxxxxxxxxxxxx>
  • Date: Thu, 2 Apr 2020 01:41:59 +0000

MM,

Note that Model_Specific and Reserved_Parameter branches are described in two 
sections of IBIS 7.0. In the [External Model] section and in the AMI section. 
The below section for .ami files is quite explicate that the Root can have only 
one or two branches and they must be either Reserved_Parameters, or 
Reserved_Parameters and Model_Specific. I guess there is no limitation of 
Reserved_Parameters or Model_Specific branches below (<Root>( 
Reserved_Parameters( or below (<Root>( Model_Specific(, but these would have no 
particular meaning to the EDA tool.

We could make it a rule to not allow Model_Specific or Reserved_Parameters 
branches or parameters other than one of each below the Root node. Or just 
leave what is in IBIS 7.0 alone.

The concept of a .ami file having a "selector" is interesting. I think the way 
to do this with a minimal impact on EDA tools is to allow multiple roots in the 
.ami file, and the EDA tool would need a "Root Selector".

Do you think there is a need for having a "Root Selector" capability?

Walter

[cid:image001.jpg@01D6086E.5DF35060]

From: ibis-macro-bounce@xxxxxxxxxxxxx <ibis-macro-bounce@xxxxxxxxxxxxx> On 
Behalf Of Mirmak, Michael
Sent: Wednesday, April 1, 2020 9:04 PM
To: IBIS-ATM <ibis-macro@xxxxxxxxxxxxx>
Subject: [ibis-macro] Tricky AMI branching question

The IBIS specification currently contains a lot of rules regarding the 
Model_Specific and Reserved_Parameters branches within a .ami file.  However, 
at least in 7.0, there are some curious anomalies:


  1.  There's no explicit requirement that a given .ami file contain only one 
Reserved_Parameters branch, but one is certainly required
  2.  Similarly, while connecting Model_Specific and Reserved_Parameters 
branches to the root branch is explicitly permitted (these are the only ones 
permitted), it does not actually seem to be required

What this suggests is that one could create different branches connected to the 
root, each subsuming a Model_Specific and a Reserved_Parameters branch, but 
within the same .ami file.  This would effectively become the equivalent of a 
model selector, but for .ami files.

I should note that the parser does *not* support the syntax I am suggesting 
here - putting branches between the root and the Model_Specific branch, or root 
and the Reserved_Parameters branch results in errors.

However, was this option envisioned?  If not, do we need stricter language in 
the specification to make the placement requirements for these branches more 
explicit?

Thanks in advance...


  *   MM

JPEG image

Other related posts: