[SI-LIST] Re: Transmission Line Causality

  • From: <steven.d.corey@xxxxxxxxxxxxxx>
  • To: <si-list@xxxxxxxxxxxxx>
  • Date: Wed, 25 Apr 2007 18:28:14 -0700

In answer to the original poster, the best solution is to use a field
solver that produces causal results -- at least within the requested
frequency interval.  It starts with the most complete information on the
physical system, so it has the best chance of producing an accurate,
causal model.  Black-box post-processing does not have that luxury.
There is a large class of functions that are causal, so you can't expect
that blind post-processing will enforce causality by perturbing your
data to more closely match the original system -- it may send it off in
a different direction.

Short of causal field solver results, there are various ways to match FD
data to analytical functions, thereby enforcing time-domain causality.
But again, such post processing steps operate with no knowledge of the
physical system other than the RLGC parameters you have provided, so
it's not fair to expect them to do the right thing.

As Vladimir has pointed out, given your causal model parameters, you
then need to make sure your simulator maps them to causal (and accurate)
time-domain results, or your prior effort was wasted.

There are number of errors that map strangely or can be implicitly
introduced when converting measurement or field solver data from the FD
to the TD for analysis, characterization and test.  Non-causality is one
the most obvious of these, so it can serve as a lower bound on the total
error in the system.=20

  -- Steve

------------------------------------------------------------------------
-
Steven D. Corey, Ph.D.
Principal Engineer
Tektronix - Enabling Innovation
=20
http://www.tdasystems.com
http://www.tektronix.com
=20
email: steven.corey@xxxxxxxxxxxxx
phone: (503) 627-6816
fax:   (503) 627-2260
------------------------------------------------------------------------
-
=20

>-----Original Message-----
>From: si-list-bounce@xxxxxxxxxxxxx=20
>[mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Gary Otonari
>Sent: Wednesday, April 25, 2007 11:38 AM
>To: vladimir_dmitriev-zdorov@xxxxxxxxxx; si-list@xxxxxxxxxxxxx
>Subject: [SI-LIST] Re: Transmission Line Causality
>
>FYI,
>
>Agilent has put in a lot of work in ADS, to address these challenging =
=3D
>issues
>pertaining to accurate simulation of lossy networks.  The=20
>latest version =3D
>of
>the tool has new causality "enforcement" for both transmission line =3D
>models
>and S-parm data.  There is also a new "passivity" correction for =3D
>measured
>S-parms that exhibit non-physical behavior. =3D20
>
>Agilent currently has an SI Seminar making the rounds, where you can =
=3D
>learn
>about this stuff.  Eric Bogatin is presenting at some stops....
>
>http://www.home.agilent.com/agilent/eventDetail.jspx?cc=3D3DUS&lc
>=3D3Deng&cke=3D
>y=3D3D87378
>7&nid=3D3D-536900532.536905430.08&id=3D3D873787
>
>-- Gary Otonari -- GigaTest Labs
>=3D20
>** Disclaimer -- GigaTest is an Agilent Channel Partner
>
>
>
>-----Original Message-----
>From: si-list-bounce@xxxxxxxxxxxxx=20
>[mailto:si-list-bounce@xxxxxxxxxxxxx] =3D
>On
>Behalf Of Dmitriev-Zdorov, Vladimir
>Sent: Wednesday, April 25, 2007 9:22 AM
>To: si-list@xxxxxxxxxxxxx
>Subject: [SI-LIST] Transmission Line Causality
>
>Hi Sam,
>
>The issue you are rising is very important and I believe it is not
>receiving enough attention. BTW, very similar problem exists for
>S-parameters data and this of course converge in the fact that very
>often we use S-parameters to describe same objects we represent as
>transmission (T-) lines.
>
>I know two quick tests for T-lines causality.
>
>1. Chopped line. You choose a certain type of lossy line and describe a
>long segment of it (e.g. 1 meter with typical PCB PUL=20
>matrices). Perform
>transient simulation by finding response to a step or square pulse.
>Then, represent the same line as a series connection of N pieces each
>1/N meter long, with same parameters. Perform similar analysis, compare
>the results. Ideally, they should be identical. Try the case of large
>dielectric loss.
>
>2. Comparison between transient and AC analysis. Apply sine=20
>input to the
>lossy line, simulate long enough to see the magnitude settled. Repeat
>this for different frequencies of the sine input. Then, run AC analysis
>and compare the response magnitudes you see in AC to those you measured
>in transient. The test may bring surprises especially for lines with
>considerable dielectric losses (frequency dependent) and high enough
>frequencies. Of course, when simulating in time domain, make sure the
>step is small enough not to bring in LTE.
>
>More general observation.
>Model non-causality is a violation of cause-effect relations. Due to
>sequential manner of time domain analysis algorithms, we can never see
>that the model responds prior to receiving the input. However,=20
>this does
>not mean that it corresponds to a causal representation in frequency
>domain. In most cases, the core of lossy T-line model is its frequency
>response (not voltage or current but characteristic admittance and
>delay-less propagation operator). The models differ in how=20
>they (a) form
>those frequency-dependent matrices and (b) how they convert=20
>those matrix
>operators into time domain responses when performing transient=20
>analysis.
>
>Hence, we first need to make sure that those internal frequency domain
>responses are causal. Typically, we can output them (or others, closely
>related to them) from AC analysis. After you get the responses in
>frequency domain, they can be investigated for causality. Any causal
>response is a complex function of frequency where real and imaginary
>parts obey Kronig Kramers relations (derived from Hilbert transforms).
>These relations are not easy to check though. One practical=20
>way to do so
>is e.g. applying Vector Fitting, or transforming them into touchstone
>files and applying ELDO simulation algorithms. The key point is that
>causal dependences can be fitted VERY accurately, non-causal - cannot.
>Of course, you can also right your own IFFT procedure to find the time
>domain response and see if it has something at t<0. However, make sure
>that your frequency response is not 'truncated' otherwise this=20
>IFFT will
>always give you nonzero output for negative time.
>
>> I notice one thing that the G matrix is  exactly linear > > > with
>frequency and C is almost constant which is beacuse=20
>permitvitty is > not
>following frequency dependence and Hilbert realtions. What is=20
>the proper
>way to correct the data without changing other information in result.
>
>Agree. Any matrix-value function (like L,C, etc.) must be causal in
>order to form causal PUL Z or Y matrices. If G is linear (real part!)
>then there should also be defined some behavior for imaginary part, not
>just left zero, otherwise the model is non-causal. The common error is
>that they provide only real part that describes the changing with
>frequency inductance or capacitance or conductance and forget about
>imaginary part.
>
>A good transmission line algorithm must be able to analyze causality of
>the tabulated matrix data and if necessary, restore causality, e.g. by
>restoring missing imaginary parts.
>
>Vladimir
>
>
>Msg: #7 in digest
>Date: Tue, 24 Apr 2007 21:26:06 -0400 (EDT)
>From: Sam Sam <si.rules@xxxxxxxx>
>Subject: [SI-LIST] Transmission Line Causality
>
>Hi,
>  =3D3D20
>  =3D3D20
>  I would like to raise a discussion on testing causality of a=20
>frequency
>dependent lossy transmission line model. I have two concerns. One is
>regarding visually checking causality and the other mathematically
>checking the self-consistency of matrix data. Visually testing=20
>causality
>means applying an input pulse, you get a non-zero signal before the
>minimum propagation time of the line. But what is the minimum
>propagation time. Is it d/c where d is length of line and c equal to
>speed of light/sqrt(Er). I also found that there is another way of
>visually testing using pulse and impulse response.=3D3D20
>  =3D3D20
>  =3D3D20
>  1. Apply a unit step function to input of the line.
>  2  Record the time required for the output pulse to reach 10% of the
>final value compared to the reference time determined by the=20
>time of the
>launched step -this time is the minimum propagation time
>  3. Measure the magnitude of the impulse response at the minimum
>propagation time calculated. If the value at this time or at any
>preceding time exceeds 5% of the final value (unity) it is not causal.
>  =3D3D20
>  But I really dont see how this method works. When i use the same edge
>rate for pulse and impulse responses, they seem to rise at=20
>same time. Or
>may be i am not seeing something here.=3D3D20
>  =3D3D20
>  Secondly, to mathematically verify all  i am doing is using hilbert
>transforms. Reconstructing the imaginary part of Z from the=20
>real part of
>Z where Z =3D3D3D R+j*w*L.And then trying to match the original=20
>L data =3D3D
>versus
>freq and the reconstructed L datawith freq. The error was more than 6%
>and hence i concluded non-causal whcih is also verified by my visual
>test 1 ( i dnt understand visual test2). However when i used the
>reconstructed L data to perform my simulation, the result is crappy. it
>still isnt causal, i am puzzled...
>  =3D3D20
>  What is the efficient way to enforce causality on RLGC data obtained
>from field solvers. I notice one thing that the G matrix is  exactly
>linear with frequency and C is almost constant which is beacuse
>permitvitty is not following frequency dependence and Hilbert=20
>realtions.
>What is the proper way to correct the data without changing other
>information in result.
>  =3D3D20
>  =3D3D20
>  Sam
>
>      =3D3D20
>
>------------------------------------------------------------------
>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 technical documents are available at:
>                http://www.si-list.net
>
>List archives are viewable at:    =3D20
>               //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
> =3D20
>
>------------------------------------------------------------------
>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 technical documents are available at:
>                http://www.si-list.net
>
>List archives are viewable at:    =20
>               //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
> =20
>
>
------------------------------------------------------------------
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 technical documents are available at:
                http://www.si-list.net

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: