[ibis-macro] Re: Usage Dep example

  • From: Mike LaBonte <mlabonte@xxxxxxxxxx>
  • To: ibis-macro@xxxxxxxxxxxxx
  • Date: Mon, 26 Nov 2018 11:18:23 -0500

If it has required this much discussion, then we probably need a well-considered BIRD, for a future spec. I do think that dropping "Rx analog model" for IBIS 7.0 would be a good idea. It leaves us with an example in which the purpose of "my_file" is not explained, but at least it doesn't mislead.


On 11/26/2018 12:48 AM, Muranyi, Arpad wrote:


Like I said in my previous email, I initially suggested the same as you, to use

Ts4file and move it up to the Reserved Parameter section, but others in that

meeting felt that it would be too much of a change, and we could just do what

we did, change it to my_file and thereby disassociate the example from the

BIRD158 concepts.  We just forgot to change the Description.  I think the easiest

and quickest way to fix this would be to change the Description (and if we still

don’t like it we can file it away as a known issue and address it for the next

revision). Do you think that would be still too confusing?




*From:*Mike LaBonte [mailto:mlabonte@xxxxxxxxxx]
*Sent:* Saturday, November 24, 2018 7:08 PM
*To:* Muranyi, Arpad <Arpad_Muranyi@xxxxxxxxxx>; ibis-macro@xxxxxxxxxxxxx
*Subject:* Re: [ibis-macro] Usage Dep example

Yes, we eliminated "TStonefile" because it was not an official means to designate an on-die model, and we did not want to imply that. But "my_file" is still described as the "Rx analog model", and that is an impossible example because only a Reserved_Parameter can do that. Maybe the issue here is that we have not yet found a purpose for Usage Dep, other than to calculate an analog model.

Stretching to find an example: maybe a Tx buffer that has presets could have Dep tap coefficients that AMI_Resolve would report out, based on the preset input. That would allow the EDA tool to know the coefficients in advance, and pass them into AMI_Init. But even that is not a great example, because the preset could simply be passed to AMI_Init, which would report the calculated coefficients as Out parameters. And Dep parameters are not passed to AMI_Init anyway, so the EDA tool would never know to pass the coefficients back in. This would not be a valid example.

Can anyone think of a Model_Specific Dep parameter that makes more sense? If not, then since we do now have Ts4File, to me it makes sense to use that as the example. What we have now is confusing. An alternative would be to delete "Rx analog model. " from the Description in that example, and simply leave it vague what my_file is for.


On 11/24/2018 6:36 PM, Muranyi, Arpad wrote:


    If I remember correctly, “my_file” used to be “Tstonefile” in this
    example, and

    I raised the same questions as you did.  Instead of changing it to
    Ts4file and

    moving it to the Reserved Parameters section, it was decided to
    change it to

    “my_file” because the purpose of the file could be all kinds of
    things, other than

    a BIRD158 style buffer model.  We just forgot to change the
    Description after

    we did that.  Even though I agree with you, I think since the
    group decided to

    handle the situation this way, we should just correct the
    Description so that

    it would not make people think that this is a BIRD158 style buffer




    [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] *On Behalf Of *Mike LaBonte
    *Sent:* Wednesday, November 21, 2018 9:01 PM
    *To:* ibis-macro@xxxxxxxxxxxxx <mailto:ibis-macro@xxxxxxxxxxxxx>
    *Subject:* [ibis-macro] Usage Dep example


    Making an editorial pass through IBIS 7.0, I came across a
    slightly technical question. The example for AMI Usage Dep has
    AMI_Resolve setting the name of the analog model file based on
    other inputs:



             (AMI_Version (Usage Info) (Type String) (Value"7.0")

               (Description"This is a v7.0 AMI file."))

             (Resolve_Exists (Usage Info) (Type Boolean) (Value True)

               (Description"Indicates whether the executable model implements        

             (Model_Name (Usage In) (Type String) (Value"ignore_me")

               (Description"IBIS model name"))

             (Rx_Receiver_Sensitivity (Usage Out) (Type Float) (Range 0.0 0.0 

               (Description"Value depends on OP_mode and data rate"))

             (Init_Returns_Impulse (Usage Info) (Type Boolean) (Default True)

               (Description"Impulse response is returned"))

             (GetWave_Exists (Usage Info) (Type Boolean) (Default True)

               (Description"GetWave Exists"))



             *(my_file (Usage Dep) (Type String) (Value **"ignore_me.s4p**")*

        *      (Description **"Rx analog model. Value depends on OP_mode**"))*

             (my_corner (Usage In) (Type String) (Corner"Typ" "Min" "Max")

             (Description"Informs the executable modelwhat[ML1] <#_msocom_1>   
corner is selected by user"))

            (OP_mode (Usage In) (Type Integer) (List 0 1 2 3)

               (Description"Operation mode"))




        In this example, the Rx analog model is represented with a
        4-port Touchstone file specified by parameter my_file, Both
        Rx_Receiver_Sensitivity and my_file depend on the legacy IBIS
        model name, parameter my_corner, and parameter OP_mode, which
        specifies the device operation mode. Rx_Receiver_Sensitivity
        also depends on bit_time. Parameters Model_Name, my_corner and
        OP_mode, having usage type In, are included in both input
        parameter strings to AMI_Resolve and AMI_Init. my_file is of
        usage type Dep, and its dependency on Model_Name, my_corner
        and OP_mode is resolved in AMI_Resolve, which returns the
        value of my_file. Rx_Receiver_Sensitivity is of usage type
        Out, and its dependency on Model_Name, my_corner, OP_mode and
        bit_time is resolved in AMI_Init, which returns the value of

    My question is, now that we have Ts4File to formally specify the
    name of an analog model file, should "my_file" above be replaced
    by "Ts4File", which would also require moving it to
    Reserved_Parameters? As it stands, this is not really a legitimate
    example. It is the EDA tool that must know the analog model to get
    the channel impulse response, and there is no way an EDA tool
    should be using my_file, or any Model_Specific parameter, for
    that. I can't think of any example where a Model_Specific
    parameter would need to be Usage Dep.



Other related posts: