Pages 192-193 of the current IBIS 7.0 draft (page 179-180 of IBIS 6.1) contain
a few strange problems with the dependency text and example:
1. Shouldn't the "Rx_Receiver_Sensitivity" be Usage Dep, not Usage Out? The
explanatory text states that Rx_Receiver_Sensitivity is dependent on OP_mode,
and though the last sentence mentions that Rx_Receiver_Sensitivity is
determined by AMI_Init, it's not clear why this case has Usage Out if Usage Dep
is permitted (and involved). Is there an example of where Usage Dep for
Rx_Receiver_Sensitivity would be used (it is a legal option)?
2. The first "sentence" of the explanatory text contains a comma in place of
a period separating it into two sentences. The dividing phrases should read
"...specified by parameter my_file. Both Rx_Receiver_Sensitivity and my_file
depend on...".
3. Note that pages 192 and 193 of the current IBIS 7.0 draft (pages 179 and
180 of IBIS 6.1) use the acronym "API"... which is never defined in the entire
document.
A diagram would very much help here, but I doubt we have the time to include
one.
* MM
Original text
Example:
(Rx_model
(Reserved_Parameters
(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
AMI_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"))
)
(Model_Specific
(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 model what 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 Rx_Receiver_Sensitivity.