[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> 
[mailto:ibis-macro-bounce@xxxxxxxxxxxxx]<mailto:[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<mailto:wkatz@xxxxxxxxxx>
Phone 303.449-2308
Mobile 720.333-1107

Other related posts: