[SI-LIST] Re: (no subject)

  • From: Yu Liu <yu_liu@xxxxxxxxxxxxx>
  • To: si-list@xxxxxxxxxxxxx
  • Date: Tue, 10 Dec 2002 19:21:29 -0800

Hi,

I agree with Raj that mixed-domain simulation is a challenging job.

However, the fairly easy S-parameter checker as proposed only reflects 
an idealized linear situation. In real applications, people combine the 
nonlinear circuits (e.g. on chip Tx/Rx) with linear parts (e.g. off-chip
packages/FR-4),(see the following figure), and perform transient 
simulation and generate eye-patterns. For Multi-Gbps applications, the 
integrated SPICE approach seems to be the only viable method.

                                 +------------+
                +----+   +---+   | BackPlane  |   +---+   +----+  ______
       PRBS>----| Tx |---|Pkg|---|            |---|Pkg|---| Rx |   /  \
           >----|    |---|   |---|    FR-4    |---|   |---|    |  _\__/_
                +----+   +---+   |            |   +---+   +----+
                                 +------------+


As for the first proposed approach, let's suppose you have a 2-port 
S-parameter data. For each frequency, there are four things you need to 
model: reflection at both ports, as well as forward/reverse 
transmission. Suppose you need one element for each parameter (there 
could be more), then there would be four elements. And suppose there are 
1000 frequency points, then the total number of elements will be 4000.

Now suppose you need to model a 20-pin connector, with 1000 frequency
points, you would need 400,000 elements (could be more) to describe
the whole S-parameter data. So the computer resource is quite demanding.
Yes, you can look at those elements. But how are you going to handle any
deficiencies in program generated elements when they are beyond the
users control?

In the integrated SPICE approach, which is the (2) proposed from Raj's 
post, no matter how many ports you have, and how many frequency
points there are, you just need one element in your netlist. You don't 
go through the lengthy model generation/curve fitting/optimization 
procedures. And the user retains full control of the DC S-parameter values.

-- 

Best Regards,

Yu
===

Apache Design Solutions
1881 Landings Drive
Mountain View, CA 94043
Tel:  (650)237-5410
Fax:  (650)969-4170
Email: yu_liu@xxxxxxxxxxxxx
web: www.apache-da.com


Raj Raghuram wrote:

> Mick, Ege, Hassan, and others,
> 
> As mentioned, there are primarily two approaches to do SPICE type transient
> simulations for components described in S-parameters.
> 
> (1)   Convert S-parameters to certain forms, either equivalent circuit
> representations or certain table lookup format, from which SPICE engines can
> read and run.
> 
> (2)   Enable a SPICE solver to read S parameters directly.  The SPICE solver
> will then internally do the things in (1), or do convolution directly which
> can be quite demanding for computer resources for large number of such
> circuit components.
> 
> While it may appear more attractive to have the time domain circuit
> simulator directly read in and use the S-parameters, deficiencies in the
> representation used are not then easily seen. Often the original
> S-parameters or the circuit model representing them may not be stable,
> causal, and passive. Also, extrapolation of the S-parameter data to DC is
> often a problem and separate DC values may be needed.
> 
> It is technically very challenging to have accurate and reliable transient
> simulations from S-parameters of complicated responses.  There are quite a
> number of tools out there.  A tool that is claimed to have such a
> capability, either through (1) or (2), does not necessarily mean it can do a
> good job.
> 
> One of the major issues, in time domain simulations by a SPICE circuit
> solver, is whether the circuit really behaves in the way it should behave,
> as characterized by its original S parameters.
> 
> Here is a way to check whether the tool really does the job it is supposed
> to do.   Assume you have a two-port circuit described by S parameters.
> You have a SPICE equivalent circuit of the two-port network or your solver
> can directly read-in S parameters.   Connect port one with a time-varying
> voltage source Vs(t) and a 50 ohm resistor, connect port 2 with a 50
> resistor as shown in the following graph.   Run the SPICE engine to get the
> transient voltages V1(t), V2(t) and Vs(t).
> 
>                50 ohms       --------------
>              |-------|       |            |
>        |-----|       |------o|            |------|
>        |     |-------|    +  |            | +    |
>       ---                    |            |     ---
>  Vs(t)|+|              V1(t) |            |V2(t)| | 50 ohms
>       |-|                    |            |     | |
>       ---                 -  |            | -   ---
>        |--------------------o|            |------|
>      -----                   |            |
>       ---                    --------------
>        -
> 
> Take Fourier transforms of Vs, V1 and V2; then the S parameters of the
> two-port circuit can be extracted as follows:
> 
>               S11 = (V1(f)-Vs(f)/2)/(Vs(f)/2)
>               S21 = V2(f)/(Vs(f)/2)
> 
> One can find S22 and S12 in a similar way by moving Vs to port 2.
> 
> The S parameters extracted from the above procedure represent the actual
> S-parameters of the two-port circuit in transient simulations; the amount of
> their deviation from the original S-parameters reflects how accurate the job
> is done.
> 
> The above tests are fairly easy to do with any SPICE solvers.  I have some
> netlist templates available and I would be happy to provide you if you are
> interested.
> 
> 
> Best Regards,
> 
> Raj Raghuram
> Sigrity, Inc.
> "Achieve what others can't"
> raghu@xxxxxxxxxxx
> http://www.sigrity.com
> 4675 Stevens Creek Blvd. , Ste 130
> Santa Clara, CA-95051
> PH: 408-260-9344 x116
> CELL: 408-390-7614
> FAX: 408-260-9342
> 
> 
> 
> ------------------------------------------------------------------
> To unsubscribe from si-list:
> si-list-request@xxxxxxxxxxxxx with 'unsubscribe' in the Subject field
> 
> or to administer your membership from a web page, go to:
> //www.freelists.org/webpage/si-list
> 
> For help:
> si-list-request@xxxxxxxxxxxxx with 'help' in the Subject field
> 
> List archives are viewable at:     
>               //www.freelists.org/archives/si-list
> or at our remote archives:
>               http://groups.yahoo.com/group/si-list/messages 
> Old (prior to June 6, 2001) list archives are viewable at:
>               http://www.qsl.net/wb6tpu
>   
> 
> 
> .
> 
> 



------------------------------------------------------------------
To unsubscribe from si-list:
si-list-request@xxxxxxxxxxxxx with 'unsubscribe' in the Subject field

or to administer your membership from a web page, go to:
//www.freelists.org/webpage/si-list

For help:
si-list-request@xxxxxxxxxxxxx with 'help' in the Subject field

List archives are viewable at:     
                //www.freelists.org/archives/si-list
or at our remote archives:
                http://groups.yahoo.com/group/si-list/messages 
Old (prior to June 6, 2001) list archives are viewable at:
                http://www.qsl.net/wb6tpu
  

Other related posts: