Fangyi, Then this is an ISS subckt that contains a Touchstone file. As I proposed in my proposed enhancement to BIRD 122, that the .ami file (or .ibs file) will call for an Intrinsic_Tstonefile_Tx, Intrinsic_Tstonefile_Rx, Intrinsic_Tx, Intrinsic_Rx, or an ISS subckt. In the case of Intrinsic_Tstonefile_Tx and Intrinsic_Tstonefile_Rx the Tstonefiles will be constructed as below. The Intrinsic_Tx and Intrinsic_Rx are the following ISS subckts: .subckt Intrinsic_Tx DieP PadP DieN PadN Rt=1Meg Rs=1Meg Cc=0. + Vt=0. Cac=0. Rac=1Meg Rd=1Meg Cd=0. E_H EDieP 0 VCVS DieP 0 1. E_L EdieN 0 VCVS DieN 0 1. R_Rs_H EDieP PadP R='Rs' R_Rs_L EDieN PadN R='Rs' R_Rd PadP PadN R='Rd' C_Rd PadP PadN C='Cd' R_Rt_H PadP Vt R='Rt' R_Rt_H PadN Vt R='Rt' V_Vt Vt 0 DC='Vt' C_Cc_H PadP 0 C='Cc' C_CC_L PadN 0 C='Cc' R_ac PadP Nac R='Rac' C_ac PadN Nac C='Cac' .ends Intrinsic_Tx .subckt Intrinsic_Rx PadP DieP PadN DieN + Rt=1Meg Cc=0. Vt=0. Cac=0. Rac=1Meg Rd=1Meg Cd=0. E_H DieP 0 VCVS PadP 0 1. E_L DieN 0 VCVS PadN 0 1. R_Rd PadP PadN R='Rd' C_Rd PadP PadN C='Cd' R_Rt_H PadP Vt R='Rt' R_Rt_H PadN Vt R='Rt' V_Vt Vt 0 DC='Vt' C_Cc_H PadP 0 C='Cc' C_CC_L PadN 0 C='Cc' R_ac PadP Nac R='Rac' C_ac PadN Nac C='Cac' .ends Intrinsic_Rx If an model developer cannot use any of the above templates he can create a .iss subckt that can contain Tstonefiles and terminations as you request below. Does not what I propose require minimum effort for the model developer and EDA tool when the analog model can be represented by one of these intrinsic models, and also allow the user to define a .iss subckt when the analog buffer cannot be represented by an intrinsic buffer analog model? Walter From: fangyi_rao@xxxxxxxxxxx [mailto:fangyi_rao@xxxxxxxxxxx] Sent: Friday, December 02, 2011 12:44 PM To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues Walter; It's fine to include termination in S-parameters. A more flexible approach is to treat S-parameter as one of the circuit components in the analog circuit. Explicitly mandating tools to ignore S12 forbids such flexibility. Fangyi From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Friday, December 02, 2011 9:33 AM To: RAO,FANGYI (A-USA,ex1); ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues Fangyi, The Rx Touchstone file includes the Rx termination! S21 is the signal propagated to the AMI algorithmic model, S11 is the signal reflected back to the channel. S12 is ignored by the EDA tool. One way to accommodate this in some SPICE simulators is to put a Unit Gain Amplifier (E element) between the output of the s parameter element and the SPICE "probe" at the output of the Touchstone file. (I am assuming that port 1 is at the pad of the die, and port 2 is at the input to the algorithmic block of the Rx. Does this explanation clearly define the derivation method that the model developer uses to create the Tstonefile, and the method the EDA tool uses to generate the Impulse Response of the channel when a Tstonefile is used by either the Tx and/or Rx? Walter From: fangyi_rao@xxxxxxxxxxx [mailto:fangyi_rao@xxxxxxxxxxx] Sent: Friday, December 02, 2011 11:50 AM To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues Walter; Termination is part of the Rx circuit. Only IC vendor knows it. EDA tool doesn't. If the tool arbitrarily terminates S-parameter block, the circuit is altered and you get different reflection back to Rx and channel. The ISS BIRD (116) allows the flexibility for model developers to define any termination they want because S-parameter block is just one of the circuit components in the analog model. Fangyi From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Thursday, December 01, 2011 7:05 PM To: RAO,FANGYI (A-USA,ex1); ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues Fangyi, Why not let the EDA tool decide how to terminate it, based on the simulator being used? Walter From: fangyi_rao@xxxxxxxxxxx [mailto:fangyi_rao@xxxxxxxxxxx] Sent: Thursday, December 01, 2011 9:04 PM To: wkatz@xxxxxxxxxx; ibis-macro@xxxxxxxxxxxxx Subject: RE: [ibis-macro] Jitter BIRD issues, and Buffer Tstonefile Issues Hi, Walter; Regarding touchstone file, the Rx E element is equivalent to terminating the Rx S-parameter block with open. Since some internal tools used by IC vendors don't assume the same termination condition, it's better to allow model developers to specify termination to avoid confusion when correlating with internal tools. Regards, Fangyi 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