[ibis-macro] Re: What happens when Init_Returns_Impulse = False?

  • From: "Muranyi, Arpad" <Arpad_Muranyi@xxxxxxxxxx>
  • To: <ibis-macro@xxxxxxxxxxxxx>
  • Date: Mon, 26 Apr 2010 12:11:17 -0700

Walter,
 
This is not a big deal, so I don't want to create a huge
thread out of this, but for the records I want to mention
the following.
 
I agree that the current does say that:
 
"When
| Use_Init_Output is set to "True", the EDA tool is
| instructed to use the output impulse response from the
| AMI_Init function when creating the input waveform
| presented to the AMI_Getwave function."
 
which means that Use_Init_Output is associated with GetWave
functions i.e. time domain simulations.  However, the spec
doesn't say that Use_Init_Output ***is not*** associated
with  the Init functions or the statistical flow.
 
So what I wrote before:  "As the spec is written now,
there is no mention that Use_Init_Output applies to time
domain simulations only." is still CORRECT, unless you
can point me to a specific statement that says that
Use_Init_Output is not applicable to statistical 
simulations.
 
Further, in section 2.3 the current spec says:
 
 
 
Combining this with the previous two section titles:
"2.1 Linear, Time-invariant Equalization Model", and
"2.2 Nonlinear, and / or Time-variant Equalization Model"
and the fact that these two sections talk about the 
statistical flow without GetWave and time domain flow
with GetWave, and that there is only one reference flow
in section 2.3, the reader gets a very strong impression
that what is described in the reference flow applies
to both statistical and time domain simulations.  This
section does not mention that the reference flow describes
only the time domain simulation flow, or that it doesn't
apply to statistical simulations.
 
On the other hand, the reference flow does talk about
Use_Init_Output in connection with the Init functions...
 
These are the thoughts I feel need to be fixed.
 
Regarding your proposed wording, we will have to go through
them carefully to make sure we mean what we say in a clean
and understandable way.  There were quite a few things
which raised my eye brow when I read it, but I am not ready
to comment on each yet.  But in addition to fix the area
you addressed below, I think we should also make a few
corrections in section 2.3.
 
Thanks,
 
Arpad
=============================================================
 
 
 
 
 


________________________________

From: Walter Katz [mailto:wkatz@xxxxxxxxxx] 
Sent: Monday, April 26, 2010 1:24 PM
To: Muranyi, Arpad; ibis-macro@xxxxxxxxxxxxx
Subject: RE: [ibis-macro] Re: What happens when Init_Returns_Impulse =
False?


Arpad,
 
The use of Use_Init_Output has a well defined meaning, although needs to
be corrected because of the digital vs analog input to GetWave.
 
In IBIS 5.0:
 
|               Use_Init_Output:
|
|               Use_Init_Output is of usage Info and type Boolean.  When
|               Use_Init_Output is set to "True", the EDA tool is
|               instructed to use the output impulse response from the
|               AMI_Init function when creating the input waveform
|               presented to the AMI_Getwave function.
|
|               If the Reserved Parameter, Use_Init_Output, is set to
|               "False", EDA tools will use the original (unfiltered)
|               impulse response of the channel when creating the input
|               waveform presented to the AMI_Getwave function.
|
|               The algorithmic model is expected to modify the waveform
in
|               place.
|  
|               Use_Init_Output is optional. The default value for this
|               parameter is "True".
|
|               If Use_Init_Output is False, GetWave_Exists must be
True.
 
First, note that Use_Init_Output only controls the input to GetWave.
Since GetWave is by definition time domain, then in fact Use_Init_Output
is only used for time domain simulations. Your statement "As the spec is
written now, there is no mention that Use_Init_Output
applies to time domain simulations only." is therefore incorrect.
 
 
I would modify this as follows:
 
|               Use_Init_Output:
|
|               Use_Init_Output is of usage Info and type Boolean. 
|               Use_Init_Output has no meaning unless
Init_Returns_Impulse
|               and GetWave_Exist are both True. It is used when the
AMI_GetWave
|               function does not include the LTI equalization that is 
|               returned in the impulse response output if AMI_Init. The
|               AMI_GetWave function may include either additional
equalization
|               and or clock recovery data.
|
|               When Use_Init_Output is set to "True", the EDA tool is
|               instructed to use the output impulse response from the
|               AMI_Init function when using the AMI_Getwave function.
|               For Tx models, the impulse response from Init should be 
|               convolved with the output of AMI_GetWave. For Rx models,
|               the impulse response from AMI_Init should be convolved
with the
|               input to the AMI_GetWave. 
|
|               If the Reserved Parameter, Use_Init_Output, is set to
|               "False", EDA tools will not modify the output of Tx
AMI_GetWave 
|               or the input to Rx AMI_GetWave with the impulse response
output
|               of AMI_Init. 
|  
|               Use_Init_Output is optional, and only applies to models
with 
|               GetWave_Exists=True. The default value for this
|               parameter is "True".
|
|               If GetWave_Exists is False, Use_init_Output should not
be specified.
 
Walter
 
Walter Katz
303.449-2308
Mobile 720.333-1107
wkatz@xxxxxxxxxx
www.sisoft.com
 
-----Original Message-----
From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx]On Behalf Of Muranyi, Arpad
Sent: Monday, April 26, 2010 12:43 PM
To: ibis-macro@xxxxxxxxxxxxx
Subject: [ibis-macro] Re: What happens when Init_Returns_Impulse =
False?
 
Thanks Todd for the "truth table".  I think it makes sense, but I
wonder what approach we should take to fix the spec.  Here is the
problem.
 
As the spec is written now, there is no mention that Use_Init_Output
applies to time domain simulations only.  As a consequence, the first
two cases you describe come across as having two controls which have
basically the same effect, i.e. duplicate controls.  After having
gone through the email thread last week I understand now that this
was not the intent, but the spec can be interpreted this way without
fixing it.
 
So the question is this:  We can tailor the spec to the controls or
the controls to the spec.  Which way should we try to fix this?
Should we just change the explanation text in the spec to reflect
these intentions and then draw the flow diagrams accordingly, or
should try to find a flow diagram that may work in both time domain
and statistical modes with perhaps eliminating one or the other of
these Booleans?  To be honest, I really don't like these two controls
the way they do almost the same, and that their name doesn't reflect
what the real difference is between them, i.e. that one is only
effecting time domain simulations but the other affects both...
 
Thanks,
 
Arpad
========================================================================

JPEG image

Other related posts: