[ibis-macro] Re: Jitter BIRD issues, and Buffer Tstonefile Issues

  • From: "Walter Katz" <wkatz@xxxxxxxxxx>
  • To: "'Dmitriev-Zdorov, Vladimir'" <vladimir_dmitriev-zdorov@xxxxxxxxxx>, <fangyi_rao@xxxxxxxxxxx>, <ibis-macro@xxxxxxxxxxxxx>
  • Date: Tue, 06 Dec 2011 17:13:32 -0500 (EST)

Vladimir,

 

I generally agree with your points 1 and 2.

 

3.2 is incorrect:

In Statistical, only Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, and Rx_Clock_Recovery_Sj are applied.

I believe I said that in statistical Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, Rx_Clock_Recovery_Sj, Rx_Rj, Rx_Sj and Rx_DCD are
applied.

 

1.       The current BIRD 123 states that Rx_Rj, Rx_DCD, and Rx_Sj shall
be applied to both Time Domain and Statistical methods.

a.       In Time Domain, Rx_Rj, Rx_DCD, and Rx_Sj can be applied to times
in clock_times, statistically to the clock_times PDF, or statistically to
the persistent eye.

b.      In Statistical, Rx_Rj, Rx_DCD, and Rx_Sj are combined
statistically along with Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, and Rx_Clock_Recovery_Sj.

 

Walter

 

From: Dmitriev-Zdorov, Vladimir
[mailto:vladimir_dmitriev-zdorov@xxxxxxxxxx] 
Sent: Tuesday, December 06, 2011 5:08 PM
To: wkatz@xxxxxxxxxx; fangyi_rao@xxxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx
Subject: RE: [ibis-macro] Re: Jitter BIRD issues, and Buffer Tstonefile
Issues

 

 

 

From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Thursday, December 01, 2011 8:05 PM
To: fangyi_rao@xxxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx
Subject: [ibis-macro] Re: Jitter BIRD issues, and Buffer Tstonefile Issues

 

Fangyi,

 

 

Walter,

 

I generally support your jitter proposal. We maybe we should add some
explanations to the usage of these parameters.

 

1.       Possible redundancy was mentioned today, because practically the
effect from Rx clock jitter and Rx CDR jitter could be summed up by EDA
tool or Rx model and represented in either Rx or Clock Recovery groups, or
even produced by the output clocks from GW model. I agree however that it
makes sense to list these parameters separately, to simplify their
handling and understanding by user. It is not difficult for EDA tool to
collect the effects from different jitter parameters together if needed.

2.        We need to avoid possible confusion when using the words
'statistical' and 'time domain' methods. Our convention is that
'statistical' analysis means simulation without GetWave calls, while time
domain simulation is a relatively long analysis with multiple GetWave
calls. With respect to Rx_XX and Rx_Clock_Recovery_XX groups, there is an
additional choice for EDA platform in time domain flow, to apply either
straightforward time domain implementation of such jitter, for example, by
calling the rand() functions, once every bit, or by accounting for the
same amount of jitter statistically, on the post processing stage (after
time domain simulation is completed). The choice should be up to EDA tool,
since both approaches have their advantages and limitations. In other
words, in statistical flow, all jitter parameters are applied
statistically, but in time domain flow, some could be applied in time
domain and some statistically (if possible).

3.       It's not quite clear for me the following from your previous
email:

 

                       It has been suggested that Rx_Rj, Rx_DCD, and Rx_Sj
shall apply to just Time Domain.

1.       In Time Domain, Rx_Rj, Rx_DCD, and Rx_Sj can be applied to times
in clock_times, statistically to the clock_times PDF, or statistically to
the persistent eye.

2.       In Statistical, only Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, and Rx_Clock_Recovery_Sj are applied.

 

We understand Rx_Clock_Recovery_XX parameters are substitute for clock
ticks that we can use either in statistical flow or in time domain when
clocks are not returned. It seems logical to have Rx_XX type parameters
for statistical flow, too, since they correspond to a different source of
jitter. This is what the existing spec says. What is a motivation for this
change?

Vladimir

 

 

 

 

 

From: ibis-macro-bounce@xxxxxxxxxxxxx
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Tuesday, November 29, 2011 2:31 PM
To: IBIS-ATM
Subject: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues

 

All,

 

The remaining major issue is the handling of Rx_Rj, Rx_DCD, and Rx_Sj.

1.       It has been requested that Rx_Dj be added.

2.       First a discussion on how the Rx clock is handled in the
following two cases

a.       Time Domain

                                                               i.      Rx
AMI_GetWave returns clock ticks in *clock_times.

b.      Statistical

                                                               i.      Rx
AMI_GetWave does not return clock ticks in *clock_times.

                                                             ii.
Using Rx AMI_Init

3.       The current BIRD 123 states that Rx_Rj, Rx_DCD, and Rx_Sj shall
be applied to both Time Domain and Statistical methods.

a.       In Time Domain, Rx_Rj, Rx_DCD, and Rx_Sj can be applied to times
in clock_times, statistically to the clock_times PDF, or statistically to
the persistent eye.

b.      In Statistical, Rx_Rj, Rx_DCD, and Rx_Sj are combined
statistically along with Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, and Rx_Clock_Recovery_Sj.

4.       It has been suggested that Rx_Rj, Rx_DCD, and Rx_Sj shall apply
to just Time Domain.

a.       In Time Domain, Rx_Rj, Rx_DCD, and Rx_Sj can be applied to times
in clock_times, statistically to the clock_times PDF, or statistically to
the persistent eye.

b.      In Statistical, only Rx_Clock_PDF, Rx_Clock_Recovery_Rj,
Rx_Clock_Recovery_DCD, and Rx_Clock_Recovery_Sj are applied.

 

Regarding Tstonefile.

1.       Fangyi and I agreed the there is no requirement that S12=S21, and
that S21 can be small or zero.

2.       Fangyi and I agreed that the input to the Tx, and the output of
the Rx S element be isolated with a unit gain amplifier (E element) as in
the following example of a Tx Tstonefile wrapped in an ISS subckt:

a.  .subckt Intrinsic_Tstonefile_Tx DieP PadP DieN PadN file='NA'

b.  * Port order of Touchstone file is DieP PadP DieN PadN

c.  E_H EDieP 0 VCVS DieP 0 1.

d.  E_L EdieM 0 VCVS DieN 0 1.

e.  S1 EDieP PadP EDieN PadN 0 mname=A 

f.  .model A TSTONEFILE=file 

g.  .ends Intrinsic_Tstonefile_Tx

3.       There are now three proposals to implement Tstonefile in .ibs
and/or .ami files.

a.       BIRD 120 proposes the following example, where  (Voh-Vol) = Peak
to Peak voltage swing:

 
i.      (Tstonefile (List "xwc.s4p" "wc.s4p" "nc.s4p" "bc.s4p" "xwc.s4p") 

 
ii.      (Usage Info) (Type String) 

 
iii.      (Description "Extreme Worst, Worst, Nominal, Best, Extreme
Best"))

 
iv.      (Vol  (Value 0.) (Usage Info)(Type Float))

 
v.      (Voh (Range 1 .3 1.2) (Usage Info)(Type Float))

b.      There are a number of BIRDs submitted by Arpad and Ambrish. I have
requested that the above example be implemented using the syntax proposed
in these alternative BIRDs.

 

Walter

 

 

Walter Katz

wkatz@xxxxxxxxxx

Phone 303.449-2308

Mobile 720.333-1107

 

Other related posts: