[ibis-macro] BIRD 156.2 comments

  • From: "Muranyi, Arpad" <Arpad_Muranyi@xxxxxxxxxx>
  • To: 'IBIS-ATM' <ibis-macro@xxxxxxxxxxxxx>
  • Date: Tue, 4 Jun 2013 05:30:17 +0000

Hello everyone,

In the last ATM teleconference I briefly mentioned my comments about
BIRD 156.2, and we had a short conversation about the concern I had
about having to mention Rx_Receiver_Sensitivity in Step 8b.  However,
it seemed that the responses I got were along the lines that we don't
need to say anything about Rx_Receiver_Sensitivity because the resampling
occurs clock times + ½UI.  Since I was not happy with this answer, I
looked at the definition of clock_times and Rx_Receiver_Sensitivity
in the v5.1 specification again.

This is what I read in the spec on pg. 170:

"Each valid value in the clock_times vector shall be used to sample the output 
waveform by adding to it bit_time/2, regardless whether that waveform sample 
occurs in the waveform segment being returned by the current call to 
AMI_GetWave, or in the waveform segment to be returned by the next AMI_GetWave 
call."

This simply states when the sampling should occur.

But step 8b in BIRD 156.2 states that:

"The simulation platform samples the output waveform of Retimer Rx AMI_GetWave 
at ½ UI after each clock tick returned by the function, generates a digital 
stimulus as the input to Tx2's algorithmic model..."

The words "generates a digital stimulus" are the key point here.
Sampling an analog waveform to turn it into a digital signal
implies that the signal is not only sampled, but a decision is
also made on whether its value corresponds to a logic state '1'
or '0'.  This can be done with or without a certain amount of
hysteresis around a given threshold voltage, but the results
will be quite different based on how the decision is made.

Now, the v5.1 specification says the following on Rx_Receiver_Sensitivity
on pg. 190:

"Description: Tells the EDA tool the voltage needed at the receiver data 
decision point to ensure proper sampling of the equalized signal."

and

"In the example below, 100 mV (above +100 mV or below -100 mV is needed to 
ensure the signal is sampled correctly)."

I am not sure about the properness of the words "sampled correctly",
but the way I understand this is that correct sampling means that
the analog waveform is high or low enough to consider it a logic '1'
or '0'.

Putting this together with step 8b in BIRD 156.2, I still feel that
we need to mention whether in the process of generating the digital
stimulus the EDA tool should include the value in Rx_Receiver_Sensitivity
or not.  Not only that, but we should also define what happens when
the analog waveform has a value that corresponds to the "undefined
state" which is between the Rx_Receiver_Sensitivity high and low
values.  Even if we decided not to incorporate Rx_Receiver_Sensitivity
in this A-to-D conversion, we need to define what the threshold value
is for this decision, and how this decision is made in mathematical
terms, using the comparison operators ">", "<", ">=", and "=<".

If we don't define this in the BIRD, different EDA vendors might
implement this with or without Rx_Receiver_Sensitivity or different
decision algorithms (comparison operators), and the simulation
results of different tools may become quite different as a result.

Please let me know if I am missing something...

While I am at it, I noticed that my comment on the wording of step 7a
needs a little more work:

Step 7a. Redriver: The simulation platform convolves the impulse responses 
returned by Rx1's AMI_Init in step 3 and by Rx2's AMI_Init in step 6 to 
obtained the full channel impulse response and uses it to perform statistical 
simulation.

I am not stuck on using these exact recommendations for the wording
as long as it is proper and correct...

Thanks,

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



From: ibis-macro-bounce@xxxxxxxxxxxxx<mailto:ibis-macro-bounce@xxxxxxxxxxxxx> 
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad
Sent: Friday, May 24, 2013 1:06 AM
To: 'IBIS-ATM'


Fangyi, Walter,

There are a couple of spelling mistakes in this paragraph
(marked with red bold):

As mentioned above, a Retimer Rx must has AMI_GetWave (GetWave_Exist = True) 
and the AMI_GetWave function must return clock_ticks. The simulation platform 
shall generate a digital input to the Retimer Tx by sampling the Rx AMI_GetWave 
output waveform ½ UI after each clock tick, The digital stimulus shall have 
values of -½ and +½ UNITS?.



In step 8b, shouldn't we mention that the resampling should
also include the Rx_Receiver_Sensitivity parameter's effect?



This paragraphs also needs a few editorial changes:

Step 7a. Redriver: The simulation platform convolves the impulse responses 
returned by Rx1's AMI_Init in step 3 and by Rx2's AMI_Init in step 6 to 
obtained the full channel impulse response and uses it to perform statistical 
simulation.


Otherwise I think this is a good BIRD...

Thanks,

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

Other related posts: