[ibis-macro] Re: Let me clarify the benifit of getting rid of Use_Init_Output along with Digital Input to Tx GetWave

  • From: "Walter Katz" <wkatz@xxxxxxxxxx>
  • To: <fangyi_rao@xxxxxxxxxxx>, <ibis-macro@xxxxxxxxxxxxx>
  • Date: Thu, 8 Oct 2009 18:47:45 -0400

Fangyi,

Use_Init_Output is totally flawed, it was flawed from the beginning, and it
is finally going to be purged. Lets not try to dissect what was intended to
be. It is broke and everyone including Kumar says it is "totally
 unnecessary".

Your second case is THE case, and is reflected in all of the flow diagrams
that Arpad is presenting.

"In the second case, the AMI_Init and AMI_Getwave calls each represent the
overall device. For example, the AMI_Init call could provide an LTI model
for the device while the AMI_Getwave call provides a time-varying model.  In
this case, results from the AMI_Init and AMI_Getwave calls should be treated
as independent."

I hope that we will be able to pronounce the first case dead (which is
unfortunately the default case in IBIS 5.0). There are no models that exist
that have GetWave_Exists True and do not have Use_Init_Output set to False.

And I will repeat my challenge, does anyone have a REAL vendor supplied
model that has GetWave_Exists True and Use_Init_Output True?

Walter

Walter Katz
303.449-2308
Mobile 720.333-1107
wkatz@xxxxxxxxxx
www.sisoft.com

-----Original Message-----
From: fangyi_rao@xxxxxxxxxxx [mailto:fangyi_rao@xxxxxxxxxxx]
Sent: Thursday, October 08, 2009 6:13 PM
To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx
Subject: RE: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Hi, Walter;

Based on your logic if GetWave_Exists is False, then the modified impulse is
always used. Correct?

For GetWave_Exists=True, don't we still need C to distinguish the two
scenarios stated on page 25 in the spec?

In the default case, the
AMI_Init and AMI_Getwave calls represent filtering performed by sequential
stages of a device, and
the results should therefore be chained together.  In the second case, the
AMI_Init and AMI_Getwave
calls each represent the overall device.  For example, the AMI_Init call
could provide an LTI model
for the device while the AMI_Getwave call provides a time-varying model.  In
this case, results from
the AMI_Init and AMI_Getwave calls should be treated as independent.

Thanks,
Fangyi

From: Walter Katz [mailto:wkatz@xxxxxxxxxx]
Sent: Thursday, October 08, 2009 2:50 PM
To: RAO,FANGYI (A-USA,ex1); ibis-macro@xxxxxxxxxxxxx
Subject: RE: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Fangyi,

What this meant to say is that if GetWave_Exists is False, then
Use_Init_Output should not be in the .ami file, because Use_Init_Output has
no meaning unless GetWave_Exists is True. It is my intent to remove all of
this convoluted explanation in the revised specification.

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 fangyi_rao@xxxxxxxxxxx
Sent: Thursday, October 08, 2009 5:41 PM
To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx
Subject: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Hi, Walter;

Thank you for the explanation. One more question regarding getting rid of
Use_Init_Output. Current spec says that if Use_Init_Output is False,
GetWave_Exists must be True (1st line on page 8). If we remove
Use_Init_Output from the parameters, does it mean GetWave_Exists is always
True and all Tx and Rx models must implement GetWave? If this is the case,
then we can get rid of GetWave_Exists too.

Fangyi

From: Walter Katz [mailto:wkatz@xxxxxxxxxx]
Sent: Thursday, October 08, 2009 2:34 PM
To: RAO,FANGYI (A-USA,ex1); ibis-macro@xxxxxxxxxxxxx
Subject: RE: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Fangyi,

Arpad is exactly right. I defined the digital waveform as.

|  Step 4. The simulation platform produces a digital stimulus waveform.
|          A digital stimulus waveform is .5 when the stimulus is "high",
|          -.5 when the stimulus is "low", and may have a value between
|          -.5 and .5 such transitions occur when the stimulus crosses 0.

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: Thursday, October 08, 2009 5:23 PM
To: ibis-macro@xxxxxxxxxxxxx
Subject: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Yes, that's how you can position the exact location
for the zero crossing to add jitter or DCD in finer
resolution than the sampling time.

Arpad
=====================================================

  _____

From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of fangyi_rao@xxxxxxxxxxx
Sent: Thursday, October 08, 2009 4:04 PM
To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx
Subject: [ibis-macro] Re: Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave
Hi, Walter;

I understand that the digital input swings between -0.5 and 0.5. Is the
waveform allowed to have values between -0.5 and 0.5 during transition?

Thanks,
Fangyi

From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Tuesday, October 06, 2009 1:48 PM
To: Ambrish Varma; IBIS-ATM
Subject: [ibis-macro] Let me clarify the benifit of getting rid of
Use_Init_Output along with Digital Input to Tx GetWave

Ambrish,

We have proven that the "Digital Input" to Tx GetWave is required.

The whole concept of Use_Init_Output was introduced because Kumar and
Cadence rejected requiring the model to implement the convolution of the
impulse response of the Rx linear filter in the Rx GetWave. Kumar repeated
his objection to doing this convolution in a recent IBIS-ATM meeting.

If Use_Init_Output is True then the flow of using an externally generated
waveform (e.g. Spice simulation) as input to the Rx GetWave is broken. It
breaks the flow because the EDA tool is required to convolve the output of
the Rx Init with the input to Rx GetWave. The input to Rx GetWave already
contains the loss of the channel, so does the output of Rx Init.

The argument that model writers are not capable to do this simple
convolution is condescending to say the least.

I would expect anyone who is capable of writing a model is capable of
implement the code described in

  http://en.wikipedia.org/wiki/Overlap-save_method

   (Overlap-save algorithm for linear convolution)
   H = FFT(h,N)
   i = 1
   while i <= Nx
       il = min(i+N-1,Nx)
       yt = IFFT( FFT(x(i:il),N) * H, N)
       y(i : i+N-M) = yt(M : N)
       i = i+N-M+1
   end

So if we get rid of Use_Init_Output, we do not need Init_Returns_Filter
(although SiSoft will be generating models with this as a Model Specific
Parameter, even if it does not become a Reserved Parameter).

I have already spent many man months of effort on Analog Input to Tx
GetWave, and Use_Init_Output, and frankly I do not want to spend any more
time on it.

Walter

Walter Katz
303.449-2308
Mobile 720.333-1107
wkatz@xxxxxxxxxx
www.sisoft.com

Other related posts: