[SI-LIST] Re: Spectre S-parameter based modeling- Stability issues

  • From: "Dmitriev-Zdorov, Vladimir" <vladimir_dmitriev-zdorov@xxxxxxxxxx>
  • To: <si-list@xxxxxxxxxxxxx>
  • Date: Tue, 5 Dec 2006 14:06:32 -0800

Hi Taha/Ihsan,
 

You raise an interesting issue considering frequency-domain analysis
versus time-domain.

 

However, I disagree with your point that frequency-domain analysis gives
a good answer even from non-passive models.

At least, there are many situations where such frequency-domain solution
could be absolutely wrong.

 

Here is the proof. Consider voltage source, resistor Rin and capaciror C
connected in a loop.

We want to find the transfer function as a ratio of the voltage across
the capacitor to the source voltage. As we know, it should be

 

H = Zcap / (Zcap + Rin).

 

Now, consider the piece of Matlab code below. It computes the transfer
function of the 'correct' model, from the passive S-parameter model of
the capacitor, and also from the S-parameter model of the capacitor that
is made non-passive (see the comments).

 

First, run it with Rin = 100; you will see quite reasonable results
(save for about 5% difference, understandable)

Then, try Rin = 2060 or 2080. The dependence is completely wrong and
even the sign of the real/imaginary part is changed.

 

Please note that S-parameter model was created for the capacitor only,
hence we are free to choose any value for Rin.

 

Vladimir

 

%***********************************************************************
******

w = logspace(2,10,1000); % define frequency range

R0 = 50; % characteristic impedance

 

C = 1e-9; % capacitance

k = 1.05; % extra multiplier to create non-passivity

 

% input resistance

Rin = input('Rin = ');

 

S0 = (1 - j*w*R0*C)./ (1 + j*w*R0*C); % 1-port S-parameters of a
capacitor

Sk = k * S0; % make it "slightly" non-passive

 

Z0 = R0*(1+S0)./(1-S0);  % "correct" impedance of the capacitor we get
from S0

Zk = R0*(1+Sk)./(1-Sk);  % impedance we get from non-passive S-model

 

H0 = Z0./(Z0 + Rin);  % original transfer function

Hk = Zk./(Zk + Rin);  % transfer function from non-passive model

    

semilogx(w,real(H0),'r',w,imag(H0),'b',w,real(Hk),'m',w,imag(Hk),'c')

%***********************************************************************
*******

 

 

 

 

>Date: Mon, 4 Dec 2006 10:54:26 -0500

>From: "Taha Amiralli" <thamiral@xxxxxxxxx>

>Subject: [SI-LIST] Re: Spectre S-parameter based modeling- Stability
issues

 

>Ihsan,

>Your comments are definitely correct. No matter how bad the S-parameter
matrices are, with respect to passivity/causality, you >will still get a
frequency response and thus, an IFFT should do the trick.

 

>The thing is that I have read that spectre does use convolution when
computing the time domain response from S-parameter matrices. >So I
guess the question then becomes, why would spectre fail to compute the
transient response of a non passive S-parameter >dataset, as is the case
with Madhu?

 

>Bratfest,

 

>I definitely did not consider all those options... but I am still not
sure why a transient response would be required... If the >design is
lets say an Integrated circuit, with lots of different loads, wouldn't
it suffice to just find out what the max power >levels required are and
provide a power supply that is suited to the task? I guess I am still
unsure of how a transient analysis >would apply since the loading
conditions are different depending on what the integrated circuit is
doing at a certain moment in >time.

 

>Thanks,

 

>Sincerely,

 

>Taha

 

 

 

 


------------------------------------------------------------------
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 FAQ wiki page is located at:
                http://si-list.org/wiki/wiki.pl?Si-List_FAQ

List technical documents are available at:
                http://www.si-list.org

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: