The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Apr 28th, 2024, 12:30am
Pages: 1 2 3 
Send Topic Print
How to plot "input reflection coefficient" in ADS (Read 804 times)
DoYouLinux
Community Member
***
Offline



Posts: 80

How to plot "input reflection coefficient" in ADS
Feb 17th, 2010, 2:52am
 
Hi all,

I am just wondering .... I am trying to simulate a single transistor with two 50-ohm ports connected at the base and collector in ADS.

From theory, if the output is terminated with a 50-ohm load, the input reflection coefficient looking into the base is equal to S11. How ever, if the output is terminated with some impedance other than 50 ohm (Gamma_L is not zero), we need to calculate the input reflection coefficient (Gamma_in) as a function of "Gamma_L"

My question is, how could we plot "Gamma_in" in ADS ??? Do we need to edit the equation of Gamma_in by ourselves ? Or, there exists some predefined function ?


Thanks a lot in advance (I will put my schematic soon)

DYL  ;D
Back to top
 
 
View Profile   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #1 - Feb 17th, 2010, 3:17am
 
Assume following.
ZL ; Load Impedance.

Z01 ; Port1 Impedance=Reference Impedance for Port1
Z02 ; Port2 Impedance=Reference Impedance for Port2

You can calculate Gamma_in by various methods.

If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02==conj(ZL), S(1,1) is Gamma_in you want.

If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02!=conj(ZL), use "stos()" function.
http://edocs.soco.agilent.com/display/ads2009/stos%28%29

Scorrected = stos(S, PortZ, {PortZ(1),conj(ZL)})

You can get Gamma_in as Scorrected(1,1).
Here PortZ(1)=Z01, PortZ(2)=Z02.

Of course, you can also calculate Gamma_in by the following.
Gamma_L=(ZL-conj(Z02))/(ZL+Z02)
Gamma_in=S(1,1)+S(1,2)*S(2,1)*Gamma_L/(1-S(2,2)*Gamma_L)

You can define your custom functions in Agilent ADS post processing environment which are commonly usable in ADS native, RFDE and GoldenGate.

See http://www.edaboard.com/viewtopic.php?t=371902

Source codes of original prepared functions exist in "$HPEESOF_DIR/expressions/ael".
You can create your custom function easily by modifying them.


Code:
defun  my_gamma_in(S, ZL, Z02)
{
	  decl  gammaL = (ZL-conj(Z02))/(ZL+Z02);
	  decl  gamma_in=S(1,1)+S(1,2)*S(2,1)*gamma_L/(1-S(2,2)*gamma_L);
	  return gamma_in;
} 


Back to top
 
« Last Edit: Feb 17th, 2010, 6:14am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #2 - Feb 17th, 2010, 7:18am
 
Hi pancho_hideboo,

Thank you so much again for your great reply. However, I am still confused at some points.

1) For the load reflection coefficient (Gamma_L), is it not calculated by "(ZL-Z02)/(ZL+Z02) ? Why is the numerator in your reply equal to "ZL-conj(Z02)" ? From what I understand, your reflection coefficient is a general form. For example, as seen from the attached figure, if Z0 is complex and if ZL is a complex conjugate of Z0, the two impedances are conjugately matched and there will be no reflection at the reference plane. Do I understand correctly ??

However, in ADS, the reference impedance becomes Z0 of the "term" element, not that of the transmission like shown in the figure anymore. Hmmmm .... so where is the reference plan that we can define the "reflection" ???

2) As you can see from another attached figure, if I changed Z0 of "Term 2" to be, for instance, 10 + j20 instead of 50. Now does my load become 10 + j20 ohm and the reference impedance of Term 2 is 10 Ohm.

I am quite confused about reference impedance in ADS and reference impedance used in several text books now  >:(

However, thank you very much again for your nice post

DYL
Back to top
 

gamma.JPG
View Profile   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #3 - Feb 17th, 2010, 7:19am
 
Oh, forgot another figure. Here it is.
Back to top
 

bjt_sch.JPG
View Profile   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #4 - Feb 17th, 2010, 7:30am
 
See http://en.wikipedia.org/wiki/S-parameters
a1=0.5*k*(V1+Z01*I1), b1=0.5*k*(V1-conj(Z01)*I1), k=1/sqrt(real(Z01))
Gamma=b1/a1=(V1-conj(Z01)*I1)/(V1+Z01*I1)=(Zin-conj(Z01))(Zin+Z01), Zin=V1/I1

DoYouLinux wrote on Feb 17th, 2010, 7:18am:
1) For the load reflection coefficient (Gamma_L), is it
not calculated by "(ZL-Z02)/(ZL+Z02) ?
Why is the numerator in your reply equal to "ZL-conj(Z02)" ?
Try to run 1 port s-parameter analysis using Agilent ADS under Z of "Term1" is 50+j*50 and Zload=20+j*30.
Confirm S11 which ADS gives is (Zload-conj(Z))/(Zload+Z) not (Zload-Z)/(Zload+Z).

DoYouLinux wrote on Feb 17th, 2010, 7:18am:
For example, as seen from the attached figure, if Z0 is complex and if ZL is a complex conjugate of Z0, the two impedances are conjugately matched and there will be no reflection at the reference plane.
Do I understand correctly ??
Not correct. Reflection regarding "Voltage Wave" exists even if this reflection coefficient is zero.
This reflection coefficient is for maximum power transmission. That is no reflection for sqrt(Power Wave).
Not for non-distortion(non reflection regarding Voltage Wave) transmission condition.

Definition of reflection coefficient for non reflection regarding Voltage Wave is (Zload-Z)/(Zload+Z) not (Zload-conj(Z))/(Zload+Z).

DoYouLinux wrote on Feb 17th, 2010, 7:18am:
However, in ADS, the reference impedance becomes Z0 of the "term" element,
not that of the transmission like shown in the figure anymore.
Hmmmm .... so where is the reference plan that we can define the "reflection" ???
Signal source having source impedance of Z0 is connected to left of transimission line in your attatched figure.
Consider Tevenin equivalent circuit seeing left from Ref. plane in your attached figure.
If you consider Tevenin equivalent circuit, it is very clear that reference plane is point you showed.

DoYouLinux wrote on Feb 17th, 2010, 7:18am:
2) As you can see from another attached figure,
if I changed Z0 of "Term2" to be, for instance, 10 + j20 instead of 50.
Now does my load become 10 + j20 ohm and the reference impedance of Term 2 is 10 Ohm.
Not correct.
The reference impedance of "Term2" is (10+j*20)ohm not 10ohm.

If you use AC analysis for evaluation of Zin, Z of "Term2" must be ZL.

But if you use SP analysis for evaluation of Zin and Z of "Term2" is conj(ZL),
Gamma_in which you want is given as S11.

DoYouLinux wrote on Feb 17th, 2010, 7:18am:
I am quite confused about reference impedance ADS and reference impedance used in several text books now
Treatment of complex impedance of "Term" in Agilent ADS is very correct.
There are very few books which describe definition of S-parameters when reference impedances are complex number, although I don't know what text books you read.

In Agilent ADS, "SP_Probe" is available for evaluation of Zs,Zin,Zout and ZL.
http://edocs.soco.agilent.com/display/ads2009/SP+Probe+%28S-Parameter+Probe%29

Back to top
 
« Last Edit: Feb 18th, 2010, 3:17am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
Frank Wiedmann
Community Fellow
*****
Offline



Posts: 677
Munich, Germany
Re: How to plot "input reflection coefficient" in ADS
Reply #5 - Feb 18th, 2010, 2:07am
 
pancho_hideboo wrote on Feb 17th, 2010, 7:30am:
There are very few books which describe definition of S-parameters when reference impedances are complex number, although I don't know what text books you read.

The article http://www.mtt.org/measurements/GENERWGCT.PDF is the best reference for this subject I know of. The discussion at http://www.designers-guide.org/Forum/YaBB.pl?num=1251245633 might also be interesting regarding the definition of S-parameters.
Back to top
 
 
View Profile WWW   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #6 - Feb 18th, 2010, 2:29am
 
When reference impedance is real number, definition of s-parameter is very easy.
See http://www.designers-guide.org/Forum/YaBB.pl?num=1266168115/1#1

Frank Wiedmann wrote on Feb 18th, 2010, 2:07am:
The article http://www.mtt.org/measurements/GENERWGCT.PDF is the best reference for this subject I know of.
This is based on "Electro-Magnetic Wave Circuit Theory".
So I think it is very difficult to understand for people who are not microwave theory experts.

Most important issue is understanding "Power Wave formulation" based on "Kaneyuki Kurokawa's formulation".

When reference impedance is real number, sqrt(power wave) is same as voltage wave except for scalar multiplication existing between them.

But when reference impedance is complex number, sqrt(power wave) is different from voltage wave completely.


This board is "Simulators".
So I move back to issue of "Simulators".

I have confirmed that treatment of complex impedance of "Term" in Agilent ADS's SP analysis is very correct.

However I have not confirmed whether treatment of complex impedance of "port" is correct or not in SP analysis of both Cadence Spectre and Agilent GoldenGate.

Cadence Spectre claims supporting "port" with complex impedance at least for small signal analysis.
http://www.designers-guide.org/Forum/YaBB.pl?num=1231076499/5#5

Is there anyone who confirmed treatment of complex impedance of "port" in SP analysis of both Cadence Spectre and Agilent GoldenGate ?
Can they give correct S11 and S21 when both Z01 and Z02 are complex numbers ?
Back to top
 
« Last Edit: Feb 18th, 2010, 4:32am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
Frank Wiedmann
Community Fellow
*****
Offline



Posts: 677
Munich, Germany
Re: How to plot "input reflection coefficient" in ADS
Reply #7 - Feb 18th, 2010, 5:06am
 
pancho_hideboo wrote on Feb 18th, 2010, 2:29am:
Frank Wiedmann wrote on Feb 18th, 2010, 2:07am:
The article http://www.mtt.org/measurements/GENERWGCT.PDF is the best reference for this subject I know of.
This is based on "Electro-Magnetic Wave Circuit Theory".
So I think it is very difficult to understand for people who are not microwave theory experts.

The summary at http://wikis.ua.pt/MTT-11/index.php/S-Parameters_and_VNA_Calibrations might be more accessible.
Back to top
 
 
View Profile WWW   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #8 - Feb 18th, 2010, 6:54am
 
Hi Pancho_Hideboo,

I have just finished my homework, proving your reply. Wow, you are correct about the definition of reflection coefficient that is used by ADS. I attached what I did in ADS and the results here.

Now I am trying to understand the definitions of reflection coefficients you mentioned (I still don't know exactly how to use Quote, sorry about this):

--------------------------------------------------------------------------------
-------------------
Reflection regarding "Voltage Wave" exists even if this reflection coefficient is zero.
This reflection coefficient is for maximum power transmission. That is no reflection for sqrt(Power Wave). Not for non-distortion(non reflection regarding Voltage Wave) transmission condition.

Definition of reflection coefficient for non reflection regarding Voltage Wave is (Zload-Z)/(Zload+Z) not (Zload-conj(Z))/(Zload+Z)
--------------------------------------------------------------------------------
-------------------

Why do we have two definitions: (Zload-Z)/(Zload+Z) and (Zload-conj(Z))/(Zload+Z). As I have proved in ADS, the latter definition is correct, while the first one is not correct  :-/

Thank you very much for your explanation again,

DYL
Back to top
 

1P_sch2.JPG
View Profile   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #9 - Feb 18th, 2010, 6:55am
 
Oh, forgot the results.
Back to top
 

1P_result2.JPG
View Profile   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #10 - Feb 18th, 2010, 7:18am
 
DoYouLinux wrote on Feb 18th, 2010, 6:54am:
Why do we have two definitions: (Zload-Z)/(Zload+Z) and (Zload-conj(Z))/(Zload+Z).
As I have proved in ADS, the latter definition is correct, while the first one is not correct
Both reflection coefficients are correct.
They depend on wave which we have interest in.

First one is based on Voltage Wave.
Second one is based on sqrt(Power Wave).

For complex reference impedance, you have to distinguish S11 from ΓV(=Voltage Wave Refelection Coefficient).

At power matching(=conjugate matching) condition, output waveform is distorted unless input signal is single frequency sinusoidal.

Assume source impedance is Zs=Rs//Cs=1/(1/Rs+j*ω*Cs) and Load impedance is ZL.

If ZL=conj(Zs)=1/(1/Rs-j*ω*Cs)=1/(1/Rs+1/(j*ω*Leq)), (Leq=1/(ω2*Cs)), output waveform is distorted
because we can never realize broadband conjugate matching.

If ZL=k*Zs, (k is real number), output waveform is never distorted.
Here we can realize ZL=k*Zs=(k*Rs)//(Cs/k) over relative wide frequency band.
k=1 is no more than no reflection condition for Voltage Wave.
Back to top
 
« Last Edit: Feb 18th, 2010, 9:32am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #11 - Feb 19th, 2010, 1:47am
 
pancho_hideboo wrote on Feb 18th, 2010, 2:29am:
I have confirmed that treatment of complex impedance of "Term" in Agilent ADS's SP analysis is very correct.

However I have not confirmed whether treatment of complex impedance of "port" is correct or not in SP analysis of both Cadence Spectre and Agilent GoldenGate.

Cadence Spectre claims supporting "port" with complex impedance at least for small signal analysis.
http://www.designers-guide.org/Forum/YaBB.pl?num=1231076499/5#5

Is there anyone who confirmed treatment of complex impedance of "port" in SP analysis of both Cadence Spectre and Agilent GoldenGate ?
Can they give correct S11 and S21 when both Z01 and Z02 are complex numbers ?
I have confirmed treatment of complex impedance of "port" in SP analysis of both Cadence Spectre and Agilent GoldenGate.

Both Cadence Spectre and Agilent GoldenGate can give same S11 and S21 as Agilent ADSsim when both Z01 and Z02 are complex numbers.

But Cadence OCEAN functions, "zm()" and "zref()" can't give correct values. "zref()" ignores imaginary part.

I've not confirmed other Cadence OCEAN functions related to SP analysis.
If you will use Cadence Spectre, you should confirm their validity for complex reference impedance case.
Back to top
 
« Last Edit: Feb 19th, 2010, 7:49am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #12 - Feb 23rd, 2010, 6:17am
 
Hmmm Pancho_Hideboo,

I actually am reading it, from the beginning .... I will come back with some results of my homework soon Smiley

DYL
Back to top
 
 
View Profile   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: How to plot "input reflection coefficient" in ADS
Reply #13 - Feb 23rd, 2010, 9:13pm
 
pancho_hideboo wrote on Feb 17th, 2010, 3:17am:
If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02==conj(ZL), S(1,1) is Gamma_in you want.

If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02!=conj(ZL), use "stos()" function.
http://edocs.soco.agilent.com/display/ads2009/stos%28%29

Scorrected = stos(S, PortZ, {PortZ(1),conj(ZL)})
I have mistakes.
Correctly these have to be : Quote:
If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02==ZL, S(1,1) is Gamma_in you want.

If {S(1,1),S(1,2),S(2,1),S(2,2)} are evaluated under condition of Z02!=ZL, use "stos()" function.
http://edocs.soco.agilent.com/display/ads2009/stos%28%29

Scorrected = stos(S, PortZ, {PortZ(1),ZL})



pancho_hideboo wrote on Feb 17th, 2010, 7:30am:
But if you use SP analysis for evaluation of Zin and Z of "Term2" is conj(ZL),
Gamma_in which you want is given as S11.
I have mistakes.
Correctly this has to be : Quote:
But if you use SP analysis for evaluation of Zin and Z of "Term2" is ZL,
Gamma_in which you want is given as S11.

Back to top
 
 
View Profile WWW Top+Secret Top+Secret   IP Logged
DoYouLinux
Community Member
***
Offline



Posts: 80

Re: How to plot "input reflection coefficient" in ADS
Reply #14 - Feb 24th, 2010, 7:06am
 
Hi Pancho_Hideboo,

Thank you for the correction. However, is Gamma_L still the same:

Gamma_L=(ZL-conj(Z02))/(ZL+Z02)

??

DYL
Back to top
 
 
View Profile   IP Logged
Pages: 1 2 3 
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.