[ibis-macro] Re: Draft Format and Usage Out Clarifications BIRD

  • From: Mike LaBonte <mlabonte@xxxxxxxxxx>
  • To: "Bob Miller \(APD\)" <bob.miller@xxxxxxxxxxxx>, "Curtis Clark" <curtis.clark@xxxxxxxxx>
  • Date: Wed, 2 Nov 2016 14:20:01 -0400 (EDT)

Some people put PAM4 parameters in Model_Specific, where the rules for them 
are not checked. But tools should also then ignore them with respect to 
their special meanings. Move on with a Range into Reserved_Parameters 
though, and you get errors like this from ibischk6:



E4627 - Illegal Format Range specified for PAM4_UpperThreshold



I have trouble imagining how helpful it would be to allow more formats for 
Out parameters. This is weighing the probability that a model will be coded 
with incorrect calculations against the probability that the model maker 
will put the wrong data in an AMI file. And if there is any complexity to 
the numerical space that simple limits on each parameter can’t express, the 
checks would have to widen the space and allow some illegal value 
combinations through. For example, the ranges for the three PAM4 thresholds 
.might overlap, so if a model produces lower values greater than the center 
value, that might not be flagged as an error based on AMI setting alone.



Mike



From: Bob Miller (APD) [mailto:bob.miller@xxxxxxxxxxxx]
Sent: Tuesday, November 01, 2016 5:57 PM
To: Curtis Clark
Cc: Mike LaBonte; IBIS-ATM
Subject: Re: [ibis-macro] Re: Draft Format and Usage Out Clarifications BIRD



I was recalling my usage from memory;  it was actually the threshold 
parameters, not the offset parameters which were problematic.

 I was doing this in the ami file:

      (PAM4_UpperThreshold (Usage Out)(Range 0.33 0.0 1.0)(Type Float)
         (Description "The decision level for the upper PAM4 eye")
      )
      (PAM4_CenterThreshold (Usage Out)(Range 0.0 -1.0 1.0)(Type Float)
         (Description "The decision level for the center PAM4 eye")
      )
      (PAM4_LowerThreshold (Usage Out)(Range -0.33 -1.0 0.0)(Type Float)
         (Description "The decision level for the lower PAM4 eye")
      )

The EDA tool which did not send these parameters to the model, upon 
receiving no values for the threshold parameters from the executable model, 
quietly used {0.33,0,-0.33} for the trio. But the intention was for the 
model to return these values to the EDA tool based on other hardware tap 
settings and adaptation thereof.

Another popular EDA tool (the one I originally regressed the model on) sent 
these Usage Out parameters to the model in the parameter string and the 
model dutifully returned the real values to the EDA tool.

One could legitimately argue that I "got what I deserved."  But perhaps a 
little clarification in IBIS-AMI is in order.



Regards,

Bob



On Tue, Nov 1, 2016 at 3:27 PM, Curtis Clark <curtis.clark@xxxxxxxxx> wrote:

My guess is that Bob was referring to the default value that is given in the 
spec (0.0) for use when that parameter is not declared in the .ami file at 
all.

Is that right Bob?

Thanks,

Curtis



On Tue, Nov 1, 2016 at 5:23 PM, Mike LaBonte <mlabonte@xxxxxxxxxx> wrote:

The only allowable data Format for many Reserved_Paramneters including the 
PAM4 Lower/Center/Upper ones is Value, and Default is illegal for Format 
Value. So technically there should have been no Default to use, but there 
should have been some kind of Value in the AMI file that a tool could use 
when the model does not output it.. However, since IBIS says “For Usage Out, 
the value in the AMI parameter leaves are determined by the Algorithmic 
Model.” (oops, grammatical error), I don’t think tools should be silent 
about substituting anything. Some people put unusable Values like “NA”, 
attempting to cause a flag to be thrown on the play if it isn’t replaced.



Mike



From: ibis-macro-bounce@xxxxxxxxxxxxx 
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Bob Miller ;(Redacted 
sender "bob.miller" for DMARC)
Sent: Tuesday, November 01, 2016 5:05 PM
To: Curtis Clark
Cc: dmarc-noreply@xxxxxxxxxxxxx; Walter Katz; Mirmak, Michael; IBIS-ATM
Subject: [ibis-macro] Re: Draft Format and Usage Out Clarifications BIRD



The model maker can specify Usage InOut if that's the behavior they want, 
right?

Yes. That's what I did to patch the model. In my particular case it wasn't 
the value passed in that the model wanted or cared about; it merely used the 
presence of the parameter in the parameters_in string to decide whether to 
present the parameter at all in the parameters_out string. So in strict 
terms the usage is not really InOut. This patch had the side-effect of 
allowing the user to select a value for the parameter, which was summarily 
ignored by the model.

Interesting enough (and possibly an issue), the EDA tool used the Default 
value for this Reserved Parameter (PAM4_UpperEyeOffset) when the model 
failed to return a value. No warning, no error, just mystically incorrect 
post-simulation analysis.


I later modified the model to remove this "auto-hide" feature, rendering the 
conundrum moot.

Question: What should the EDA tool do (if anything) when a Usage Out 
parameter defined in the .ami file is NOT returned by the model?


Regards,

Bob



On Tue, Nov 1, 2016 at 2:26 PM, Curtis Clark <curtis.clark@xxxxxxxxx> wrote:

Walter is correct, here's the appropriate section (page 202 of IBIS 6.1):

The EDA tool shall pass a string to the executable model through the 
AMI_parameters_in argument. This string shall contain all of the 
leaf-formatted Usage In and Usage InOut AMI parameters if there are any 
defined in the .ami file. No other information may be included in this 
string. The string shall always include the root name of the parameter tree, 
even if there are no parameters to pass to the algorithmic model.

Even without that explicit statement, I would consider it an error for the 
EDA tool to put Usage out parameters in the AMI_parameters_in string.  The 
model maker can specify Usage InOut if that's the behavior they want, right?

Thanks,

Curtis



On Tue, Nov 1, 2016 at 2:16 PM, Bob Miller <dmarc-noreply@xxxxxxxxxxxxx> 
wrote:

I agree with Walter. Been caught by this before (executable model subtly 
expecting the EDA tool to pass Usage Out parameters into AMI_Init in the 
parameter string). Some do, but more importantly, some don't as there is no 
requirement to do so. I fixed my model rather than demand that all EDA tools 
bow to me.

Regards,

Bob



On Tue, Nov 1, 2016 at 11:46 AM, Walter Katz <wkatz@xxxxxxxxxx> wrote:

MM,



The following implies that Usage Out arguments are passed by the EDA tool to 
the executable model file in the **AMI_Parameters_In string to AMI_Init. I 
do not think that this is correct.



Unless otherwise noted, specific Usage Out arguments or data provided as 
Format are effectively ignored and will be simply passed by the EDA tool to 
the executable model file.



Walter



From: ibis-macro-bounce@xxxxxxxxxxxxx 
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Mirmak, Michael
Sent: Tuesday, November 1, 2016 1:37 PM
To: IBIS-ATM (ibis-macro@xxxxxxxxxxxxx) <ibis-macro@xxxxxxxxxxxxx>
Subject: [ibis-macro] Draft Format and Usage Out Clarifications BIRD



As requested in a previous ATM meeting, please find enclosed a draft BIRD, 
Format and Usage Out Clarifications.



Comments and questions are of course welcome and encouraged.



-          MM













Other related posts: