[ibis-macro] Usage Dep example

  • From: Mike LaBonte <mlabonte@xxxxxxxxxx>
  • To: ibis-macro@xxxxxxxxxxxxx
  • Date: Wed, 21 Nov 2018 22:01:03 -0500


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 implementsAMI_Resolve."))
   (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 0.01)
   (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  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: