agilent ads 模擬手冊 [實習1] 基本操作與射頻放大器設計

54
ηπำسᄤတᆶ೯ ܌زηπำسᄤတᆶ೯ ܌زηπำسᄤတᆶ೯ ܌زηπำسᄤတᆶ೯ ܌زᓎၡᆶسӝჴᡍᓎၡᆶسӝჴᡍᓎၡᆶسӝჴᡍᓎၡᆶسӝჴᡍӼউӃीس ӼউӃीس ӼউӃीس ӼউӃीسኳᔕ ኳᔕ ኳᔕ ኳᔕჴᡍ ჴᡍ ჴᡍ ჴᡍسӈ سӈ سӈ سӈ I ADS ୷ҁᏹբᆶ ୷ҁᏹբᆶ ୷ҁᏹբᆶ ୷ҁᏹբᆶ 1.9 GHz ܫεᏔी ܫεᏔी ܫεᏔी ܫεᏔी ύ୯ԭԃ ύ୯ԭԃ ύ୯ԭԃ ύ୯ԭԃΜД ҁჴᡍᖱကΏԵԾӼউϐᏹբЋнǵीጄٯǵѠ୯ϣӚਠϐჴᡍᖱကǴӆу ҁΓϐкԶԋǶҁΓω౧Ꮲభǵ ޕ܌Ԗज़Ǵϣ܈ԖᒪᅅǵᙤᇤϷόഢϐೀǴ ལፎߞ ([email protected])Ƕ ҁᖱကज़௲ᏢҔǴ߆ᙯၩǶ ୯ҥѠчמεᏢη سApril 2014

Upload: simenli

Post on 08-Aug-2015

313 views

Category:

Engineering


48 download

TRANSCRIPT

Page 1: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

I ADS 1.9 GHz

([email protected])

April 2014

Page 2: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

1

(Advanced Design System, ADS) DCS

1900

I ADS II DCS

1900 III

IV

ADS

Page 3: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

2

1.1

LC

ADS ADS ADS

1.2

1. ADS

1.1 ADS

ADS 1.1 File

View Tools Window DesignKit DesignGiude Help File

View Tools

ADS (Preferences) (Advanced Design System Setup)

Window DesignKit

Foundry IC (

0.18 m CMOS designkit ADS )

DesignGuide ADS

Help ADS

Help

ADS File Browser

Page 4: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

3

2. (Project)

(1) Lab1

(2)

(3) File Browser /networks

/data Data Display Lab1_prj

1.2

3. (Schematic)

(1) ADS File New Design

(2) LPF Analog/RF Network

(3) LPF Ctrl+s /network

ADS (schematic) .dsn design

Ctrl + s (save design)

1.3

Page 5: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

4

4. LC

(1) (Palette) Lump-Components( )

(DC) (AC) (Transient) (S-parameter)

(Circuit Envelope) (Harmonic Balance)

(2) C L

Ctrl+r 1 pF

3 pF 1 nH

Ctrl + r (rotate component)

1.4

(3) Simulation-S_Param SP

Term term 1.5

1.5

Page 6: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

5

(4) SP1 1 GHz

10 GHz 0.5 GHz ADS

1 GHz 1.5 GHz 2 GHz 2.5 GHz 3 GHz… 10 GHz 0.5 GHz

S_ParamSP1

Step=0.5 GHzStop=10.0 GHzStart=1.0 GHz

S-PARAMETERS

Select the parameters

to display out

1.6

(5) F7 ADS

( Data Display ADS .dds

) Data Display Simulate

Simulation Setup Open Data Display when simulation completes

After simulation completed,

the data display window will

pop out.

If data display didn’t pop out, go back your

schematic window and select Simulation Setup. Here is the controlling option

1.7 Data Display

Page 7: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

6

(6) Data Display

Rectangular Plot S(2,1) dB

Marker Marker S(2,1)

Marker Ctrl+s Data Display

1.8 Rectangular Plot

m1freq=dB(S(2,1))=-3.850

5.500GHz

2 3 4 5 6 7 8 91 10

-20

-15

-10

-5

-25

0

freq, GHz

dB(S

(2,1

))

m1

m1freq=dB(S(2,1))=-3.850

5.500GHz

1.9 Marker

Page 8: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

7

(7) .ds /data schematic

/networks Data Display

Open An Existing Data Display Display

1.10 Data Display

5. (Tuning Parameters)

(1) tuning schematic tune

Select the parameters you want to

tune from “schematic” window.

Parameter On/OFF

1.11

Page 9: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

8

(2) Tuning ADS tune

Store tune

Update Schematic schematic

2 3 4 5 6 7 8 91 10

-25

-20

-15

-10

-5

-30

0

freq, GHz

dB

(S(2

,1))

m1

m1freq=dB(S(2,1))=-2.650

5.500GHz

You can save the tuned traces

and show them out.

Tuning by scrolling bar

or specifying values.

Tuning range and step

are also provided.You can update the tuned

values to schematic.

1.12

1.3

LC

ADS

Page 10: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

9

2.1

DCS-1900 GSM

ADS

I-V

BJT I-V (Tracer)

ADS

2.2

1. amp1900 bjt_pkg

2. BJT

(1) Devices-BJT BJT_NPN

BJT_Model Data Sheet

(2) 2.1

( Schematic )

BJT_ModelBJTM1

AllParams=Xti=Xtb=Eg=Trise=Tnom=Approxqb=yesRbModel=MDSLateral=noFfe=

Nk=Ns=Iss=Rbnoi=Fb=Ab=Kb=Af=Kf=Tr=Ptf=Itf=Vtf=Tf=Xtf=

Fc=Mjs=Vjs=Cjs=Xcjc=Mjc=Vjc=Cjc=Mje=Vje=Cje=Imelt=Imax=Cco=Cex=

Dope=Rcm=Rcv=Rc=Re=Rbm=Irb=Rb=Vbo=Gbo=Cbo=Nc=C4=Isc=Kc=

Ke=Ikr=Var=Nr=Br=Ne=C2=Ise=Ikf=Vaf=Nf=Bf=Is=PNP=noNPN=yes

BJT_NPNBJT1

Mode=nonlinearTrise=Temp=Region=Area=Model=BJTM1

BJT_ModelBJTM1BJT_NPN

BJT1

Mode=nonlinearTrise=Temp=Region=Area=Model=BJTM1

Double click

Turn parameter

visibility off.

parameter

visibility off

2.1 (Model Card)

Page 11: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

10

(3) Bf( BJT Beta) Vaf( ) Ise(

) 2.2 Display parameter

on schematic Schematic

BJT_ModelBJTM1BJT_NPN

BJT1

Mode=nonlinearTrise=Temp=Region=Area=Model=BJTM1

Double click

BJT_ModelBJTM1

Ise=0.02e-12Vaf=50Bf=beta

BJT_NPNBJT1

Mode=nonlinearTrise=Temp=Region=Area=Model=BJTM1

Check to show

this parameter.

2.2

(4) ( ) 320 pH ( )

120 fF ”Port” Port

(Collector) (Base) (Emitter)

Data Sheet

(Infineon) SiGe BJT BFP640 Data Sheet

CC2C=120 fF

CC1C=120 fF

LL3

R=L=320 pH

PortP3Num=3

BJT_ModelBJTM1

Ise=0.02e-12Vaf=50Bf=beta

LL1

R=0.01 OhmL=320 pH

LL2

R=L=320 pH

PortP2Num=2

PortP1Num=1

BJT_NPNBJT1Model=BJTM1

Package

parasitics

Package

parasitics

2.3

Page 12: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

11

(5)

View Create/Edit Schematic Symbol

(Symbol) Help Symbol Type Order Pins by ADS

Ctrl+Shift+t Port C

B E

C

B E3

1

2

C

B E

1

32

Ctrl + Shift + t

to add texts ”B, C, E”

Rearrange the

pin location

2.4

(6) ADS

(5) File Design Parameters Q

Symbol Name SYM_BJT_NPN( More Symbols )

Use ADS internal symbol

Package artwork

Save this AEL file

(ADS system file)

2.5 ADS

Page 13: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

12

(7) Design Parameters Parameter beta

100

2.6

3. BJT I-V

(1) dc_curves Schematic (Library) Projects

bjt_pkg Schematic

beta

Create a new design named: dc_curves

Select “Projects”

Open library

Choose “bjt_pkg” we’ve created

and put it into the schematic.

2.7

Page 14: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

13

(2) Library Analog/RF DC_BJT BJT I-V

Curve Tracer FET Curve Tracer

Tracer (Push into Hierarchy) DC_BJT

Tracer

PortCollectorNum=2

PortBaseNum=1

I_ProbeIC

I_DCSRC1Idc=IBB

ParamSweepS1SweepVar="IBB"SimInstanceName[1]="DC1"SimInstanceName[2]=SimInstanceName[3]=SimInstanceName[4]=SimInstanceName[5]=SimInstanceName[6]=Start=IBB_startStop=IBB_stopLin=IBB_points

PARAMETER SWEEP

VARVAR1VCE=1.5IBB=1.0 mA

EqnVar

V_DCSRC2Vdc=VCE

DCDC1SweepVar="VCE"Start=VCE_startStop=VCE_stopLin=VCE_points

DC

MeasEqnmeas1DC_power=IC.i*VCE

EqnMeas

Open Analog/RF library and find the DC tracer for BJT

DC tracer for FET is also available

Put the tracer

into schematic

Push into hierarchy, you can see

how “DC tracer” is implemented.

2.8 BJT I-V Curve Tracer

(3) 2.9 Tracer Base Tracer Collector

Tracer IBB 0 uA 100 uA VCE

0 V 5 V Data Display (IC)

- VCE ( I-V Curve) Marker

PDC=indep(m1)*m1

indep(m1) m1

(4) beta = 160

(5) I-V Curve Tracer 2.10 Insert

Template BJT_curve_tracer

Page 15: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

14

bjt_pkgQ1beta=100

DC_BJTDC_BJT1

VCE_points=41VCE_stop=5.0VCE_start=0IBB_points=11IBB_stop=100 uAIBB_start=0 uA

BJT Curve Tracer

Base Collector

m1indep(m1)=plot_vs(IC.i, VCE)=0.002DC_BJT1.IBB=0.000040

3.000

0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.50.0 5.0

0.000

0.002

0.004

0.006

-0.002

0.008

VCE

IC.i m1

m1indep(m1)=plot_vs(IC.i, VCE)=0.002DC_BJT1.IBB=0.000040

3.000

indep(m1)

3.000

m1

0.002

PDC

0.007

VCE

Eqn PDC=indep(m1)*m1

IC PDC

m1indep(m1)=plot_vs(IC.i, VCE)=0.003DC_BJT1.IBB=0.000040

3.000

0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.50.0 5.0

0.000

0.002

0.004

0.006

0.008

0.010

-0.002

0.012

VCE

IC.i

m1

m1indep(m1)=plot_vs(IC.i, VCE)=0.003DC_BJT1.IBB=0.000040

3.000

indep(m1)

3.000

m1

0.003

PDC

0.010

VCE

Eqn PDC=indep(m1)*m1

IC PDC

Simulate with beta=100, and plot collector

current IC v.s. collector-emitter voltage VCE.

Simulate with beta=160

2.9 BJT I-V Curve

Insert the template

of BJT_curve tracer

The tracing circuits are automatically

generated. All sweeping parameters

are

BJT Curve Tracer

ParamSweepSweep1

Step=10 uAStop=100 uAStart=0 uASimInstanceName[6]=SimInstanceName[5]=SimInstanceName[4]=SimInstanceName[3]=SimInstanceName[2]=SimInstanceName[1]="DC1"SweepVar="IBB"

PARAMETER SWEEP

bjt_pkgQ1beta=100

I_ProbeIC

V_DCSRC1Vdc=VCE

I_DCSRC2Idc=IBB

DCDC1SweepVar="VCE"Start=0Stop=5Step=0.1

DC

VARVAR2VCE =0 VIBB =0 A

EqnVar

DisplayTemplatedisptemp1"BJT_curve_tracer"

TempDisp

2.10 I-V Curve Tracer (Template)

Page 16: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

15

4.

(1) dc_curves.dsn dc_bias.dsn BJT beta 160

I-V Curve IBB - VCE

Data Display Equation

VCE

3 V

(2) 2.11 DC Controller DC1 Output Save by

name VCE Dataset Data

Display ADS ”Var Eqn” Controller

SweepVar( ) Dataset ( IBB)

( Wire) Dataset (

VBE) I_Probe ( IC) VCE

3 V Save by

name Dataset

VBE

VARVAR2

VCE= 3 VIBB =0 A

EqnVar

DCDC1

Step=10 uAStop=100 uAStart=10 uASweepVar="IBB"

DC

V_DCSRC1Vdc=VCE

bjt_pkgQ1beta=160

I_ProbeIC

I_DCSRC2Idc=IBB

IBB

1.000E-52.000E-53.000E-54.000E-55.000E-56.000E-57.000E-58.000E-59.000E-51.000E-4

IC.i

599.8 uA1.430 mA2.349 mA3.325 mA4.341 mA5.389 mA6.462 mA7.557 mA8.669 mA9.798 mA

VBE

754.8 mV777.1 mV789.9 mV798.8 mV805.7 mV811.3 mV815.9 mV819.9 mV823.5 mV826.6 mV

VCE

3.0003.0003.0003.0003.0003.0003.0003.0003.0003.000

Double click the DC controller

Add “variables” pass

to data display

Choose “VCE” then add it

Show the simulated results IC.i, VBE,

and VCE in a table. Here VCE is passed

from the schematic “VAR” block.

2.11 Schematic Dataset

Page 17: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

16

(3) 2.12

VCC 5 V (2) VCE 3 V

RC 2 V IC RC RB IBB

VCE-VBE list IBB

VCE = 3 V IC = 3.325

mA IBB 40uA RB 55.029 kOhm

RC 601.5 Ohm RB 56 kOhm RC 590 Ohm

Eqn Rb=(VCE-VBE)/IBB

Eqn Rc=VRc/IC.i

Eqn VRc=VCC-VCE

IBB

1.000E-52.000E-53.000E-54.000E-55.000E-56.000E-57.000E-58.000E-59.000E-51.000E-4

Rb

224518.366111142.833

73669.69855029.02743886.10336479.13231201.14027250.72624183.63721733.818

Rc

3334.2331398.882

851.344601.500460.687371.123309.494264.671230.704204.133

Rb[3]

55029.027

Rc[3]

601.500

Eqn VCC=5 V

Add an equation to calculate the bias resistance at BJT base

Assume the power rail VCC is 5 V

Calculate the voltage across the bias resistor at collector (here, 2 V)

Calculate the bias resistance at BJT collector

Index = 0Index = 1Index = 2Index = 3

Bias resistor values @ IBB= 40 uA (index=3)

Note that the standard resistance you can

find in practice is 56k Ohm and 590 Ohm.

2.12

(4) dc_bias.dsn dc_net.dsn dc_net 5 V

Simultae Annotate DC Solution

Clear DC Annotation

VC

VBE

V_DCSRC1Vdc=5 V

RRBR=56 kOhm

RRCR=590 Ohm

VARVAR2

VCE= 3 VIBB =0 A

EqnVar

DCDC1

DCI_ProbeIC

bjt_pkgQ1beta=160

Turn off the variable sweeping,

and add bias resistors.

3.03 VVC

799 mVVBE

5 V

5 V

-3.34 mA

V_DCSRC1Vdc=5 V

-39.8 uARRBR=56 kOhm

3.34 mA

RRCR=590 Ohm

VARVAR2

VCE= 3 VIBB =0 A

EqnVar

DCDC1

DC3.34 mA I_Probe

IC

3.31 mA

39.8 uA

-3.34 mA

bjt_pkgQ1beta=160

First run simulation

After simulation, choose annotate DC solution

to show node voltages and branches currents

in the network.

Clear all annotations

2.13

Page 18: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

17

5.

(1) I-V ADS

Transistor Bias Utility I-V

(2) dc_bias2 Library bjt_pkg

Transistor Bias BJT Bias Smart Component 5 V

2.14

(3) DesignGuide Amplifier Tools Transistor Bias

Utility

(4) Utility Vcc 5 V Vce 3 V Ic 3.325 mA

Bias Point Selections ADS I-V

Data Display I-V A

Set characteristic impedance, and base current and collector voltage sweep limits as needed.

In the event that this templatedoes not provide the required informationfor the application, it can be appropriatelymodified.

bjt_pkgQ1beta=160

ParamSweepSweep1

Step=IBBstepStop=IBBmaxStart=IBBminSimInstanceName[6]=SimInstanceName[5]=SimInstanceName[4]=SimInstanceName[3]=SimInstanceName[2]=SimInstanceName[1]="DC1"SweepVar="IBB"

PARAMETER SWEEP

DCDC1

Step=VCEstepStop=VCEmaxStart=VCEminSweepVar="VCE"

DC

OptionsOptions1

Tnom=25Temp=16.85

OPTIONS

VARVAR1

Rload=50 _ohmsIBB=0 AVCE=0 V

EqnVar

VARVAR3Z0=50IBBmin=20 uAIBBmax=100 uAIBBstep=20 uAVCEmin=0.25 VVCEmax=5 VVCEstep=0.1 V

EqnVar

DC_BlockDC_Block2

DC_BlockDC_Block1

DC_FeedDC_Feed2

DC_FeedDC_Feed1

I_DCSRC2Idc=IBB

TermTerm1

Z=Z0Num=1

V_DCSRC1Vdc=VCE

I_ProbeIC

TermTerm2

Z=Z0Num=2

m1VCE=IC.i=5.494mIBB=0.000060

2.200 m2VCE=IC.i=8.793mIBB=0.000100

400.0m

1 2 3 40 5

0.000

0.005

0.010

0.015

-0.005

0.020

IBB=20.0u

IBB=40.0u

IBB=60.0u

IBB=80.0u

IBB=100.u

VCE

IC.i,

A

m1

m2

line_

opt

VCEvals

ICm

axlin

e

m1VCE=IC.i=5.494mIBB=0.000060

2.200 m2VCE=IC.i=8.793mIBB=0.000100

400.0m

12.09 m

Eqn VCEmax=5

523.151

2.969 m 24.56

Eqn PDmax=0.03

Fol low these steps:1) Move marker m2 to the knee of the I-V curve. This sets the maximum collector current during AC operation.2) Specify maximum allowed VCE, VCEmax. The optimal bias point values are determined from the load l ine between marker m2 and the (IC=0, VCE=VCEmax) point.3) Specify maximum allowed DC power dissipation, PDmax, in Watts. 4) Posi tion marker m1 at some other bias point, if desired. (Must be less than VCEmax.)5) DC power consumption, average output power in l inear operation, DC-to-RF efficiency at marker m1 bias point are all calculated.

5.056 m 2.700

4.396 m

545.702

11.87 m

42.59

30.0u

40.0u

50.0u

60.0u

70.0u

80.0u

90.0u

20.0u

100.u

100

150

200

250

50

300

IBB

Bet

a

Beta versus IBB, at ICEspecified by marker m1

DC-to-RF Efficiency,%

DC PowerConsumptionRload

Output PowerWatts dBm

DC-to-RF Effic iency,%

Optimal VCE

Optimal ICE

DC Power Consumption at Optimal Bias

Output Powerat Optimal BiasWatts dBm

Rload atOptimal Bias

Optimal Class A bias point values.

Marker m1 bias point values, (Assuming Class A, AC current l imited to marker m2 value and AC voltage nohigher than VCEmax.)

7.038

4.726

Device IV Curves, Load Lines,and Maximum DC Dissipation Curve

Equations are on the "Equations" page.

Use ADS transistor bias utility

Bias testing setup is automatically

genrated.

2.14 ADS

Page 19: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

18

(5) Vce 3 V Ic 3.325 mA Design

ADS 8 2.15

5 OK ADS

Schematic Push into Hierarchy

RB 55 kOhm RC 594.35 Ohm

RB 56 kOhm RC 590 Ohm

3.00 3.33 m

799. mV 40.0 uA 3.00 V 3.33 mA 0.000 V 3.37 mA

BJT BiasDisplay AssistantTransistor Bias Designer

Achiev ed Bias Perf ormance

Achiev ed Bias Voltage/Current

Desired Bias Perf ormance

Need Help? Please see the Transistor Bias Utility User Manual f or complete instructions on using this Display .

Vce

Ib Vc Ic Ve IeVb

3.00 3.33 mA

Ic

PortP4Num=4

PortP3Num=3

PortP2Num=2Port

P1Num=1

RR3R=0 mOhm

RR2R=55.001167 kOhm

RR1R=594.349814 Ohm

8 biasing topologies are provided

2.15

6.

(1)

2.16 DC Controller

temp( ADS VAR

) -55 125 5

(2) 2.17 Dataset (

dc_temp) dc_net Display

Data Display dc_temp Dataset VCE VBE

Page 20: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

19

VC

VBE

DCDC1

Step=5Stop=125Start=-55SweepVar="temp"

DC

V_DCSRC1Vdc=5 V

RRBR=56 kOhm

RRCR=590 Ohm

VARVAR2

VCE= 3 VIBB =0 A

EqnVar

I_ProbeIC

bjt_pkgQ1beta=160

Sweep temperature

variable “temp” from

-55 to 125 degree.

Show the variable

2.16

m1indep(m1)=plot_vs(VC, temp)=3.079

-55.000

m2ind Delta=dep Delta=-0.122Delta Mode ON

180.000

-40 -20 0 20 40 60 80 100 120-60 140

1.0

1.5

2.0

2.5

3.0

0.5

3.5

temp

VB

EV

C

m1m2

m1indep(m1)=plot_vs(VC, temp)=3.079

-55.000

m2ind Delta=dep Delta=-0.122Delta Mode ON

180.000

Store simulate data into a

separate dataset. Use Add Vs. to plot VBE and VC v.s. temp

2.17

7.

(1) dc_sparam bjt_pkg

(2) ADS Template SP_NWA_T

ADS Data Display

2.18

(3) T

(Bias-Tee) (Probe Station) (Test Fixture)

I-V Tracer

Page 21: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

20

Activate for available gain and stability circles:

SP_NWAX1

Port2Z=50Port1Z=50VBias2=3.03 VVBias1=799 mVNumPoints=101Stop=5 GHzStart=0.1 GHz

+ +

21

bjt_pkgQ1beta=160

DisplayTemplatedisptemp1

"S_21_11_wZoom""SP_NWA_T"

TempDisp

DisplayTemplatedisptemp2

"Circles_Stability""Circles_Ga_Stab"

TempDisp

Eqn F_lim1index=find_index(SP.freq,indep(F_lim1))

Eqn F_lim2index=find_index(SP.freq,indep(F_lim2))

Eqn low_index=if (F_lim1index<F_lim2index) then F_lim1index else F_lim2index

Eqn high_index=if (F_lim2index>F_lim1index) then F_lim2index else F_lim1index

Eqn ph=[-pi::0.01*pi::pi]

Eqn mag_gamma=(VSWRcircleVal-1)/(VSWRcircleVal+1)

Eqn gamma_cmplx=mag_gamma*exp(j*ph)

EqnVSWRcircleVal=2.5

freq (100.0MHz to 5.000GHz)

S(1

,1)

Input Reflection Coefficient

F_lim1freq=dB(S(2,1))=20.323

2.060GHz

F_lim2freq=dB(S(2,1))=19.794

2.501GHz

0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.50.0 5.0

17

18

19

20

21

16

22

freq, GHz

dB(S

(2,1

))

F_lim1F_lim2 F_lim1

freq=dB(S(2,1))=20.323

2.060GHz

F_lim2freq=dB(S(2,1))=19.794

2.501GHz

2.10

2.15

2.20

2.25

2.30

2.35

2.40

2.45

2.50

2.05

2.55

19.8

19.9

20.0

20.1

20.2

20.3

19.7

20.4

freq, GHz

dB(S

(2,1

))

freq (2.060GHz to 2.501GHz)

S(1

,1)

indep(gamma_cmplx) (0.000 to 200.000)

Forward Transmission, dBZoomed Forward Transmission, dB

Zoomed Input Reflection Coefficient

Move markers to set frequency range of datadisplayed in "zoomed" plots

Set value for constant-VSWRcircle here:

Use with S-Parameter Simulations

Insert S-parameter simulation

template SP_NWA_T

No simulation controller needed,

just run simulation.Results are automatically

generated.

2.18 SP_NWA_T

8.

(1) ADS Library

ADS Library

ADS

(2) Data Sheet DesignKit

ADS ADS

(NXP) ADS DesignKit

http://www.nxp.com/models/ Renesas

http://www2.renesas.com/microwave/en/discrete/sigehbt.html DesignKit

(Foundry) TSMC 0.18 um

Mixed-Signal/RF CMOS DesignKit IC

(3) 2.19 Library Microwave Transistor Library RF Transistor Library

Schematic Agilent

AT41533

Page 22: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

21

VBE

pb_hp_AT41533_19950125Q3

V_DCSRC1Vdc=VCE

I_ProbeIC

I_DCSRC2Idc=IBB

2.19

2.3

Design Parameter

I-V

Page 23: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

22

3.1

ADS (AC Simulation)

PSPICE

3.2

1. ac_sim

2.

(1) dc_net ac_sim 3.1

BJT (DC Block)

(AC-coupled Capacitor)

50 Ohm

(2) Vin Vout

(3) DC blocks

BJT

Vout

VinV_ACSRC2

Freq=freqVac=polar(1,0) V

RR1R=50 Ohm

DC_BlockDC_Block2

DC_BlockDC_Block1

RRBR=56 kOhm

bjt_pkgQ1beta=160

Vcc

V_DCSRC1Vdc=5 V

VccRRCR=590 Ohm

AC voltage source

DC block is an ideal ac-coupled capacitor

Same node

3.1

Page 24: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

23

3. AC

(1) AC Controller 100 MHz 4 GHz 100 MHz

3.2

(2) AC Controller Noise Calculate noise

Vout Display CalcNoise

NoiseNode

ACAC1

Step=100 MHzStop=4.0 GHzStart=100 MHz

AC

ACAC1

NoiseNode[1]="Vout"CalcNoise=yesStep=100 MHzStop=4.0 GHzStart=100 MHz

AC

Setup noise

3.2 AC

4. AC

(1) list name vnc

Vout

index

freq=100.0 MHz012345678

freq=200.0 MHz012345678

freq=300.0 MHz0123456

name

_totalQ1.BJT1

Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1R1RBRC

SRC2

_totalQ1.BJT1

Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1R1RBRC

SRC2

_totalQ1.BJT1

Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1R1RB

vnc

1.729 nV1.494 nV8.479 pV1.494 nV75.74 pV833.3 pV24.90 pV242.6 pV0.0000 V

1.728 nV1.492 nV16.93 pV1.492 nV75.65 pV833.0 pV24.89 pV242.5 pV0.0000 V

1.725 nV1.489 nV25.35 pV1.489 nV75.51 pV832.7 pV24.88 pV

3.3 ADS

Page 25: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

24

(2) Schematic Measurement Equation 3.4

Output Measurement Equation

gain_voltage dataset

(3) Data Display gain_voltage dB

Data Display Vout Vin

3.5

Eqn Gain_dB=20*log(gain_voltage)

freq

100.0 MHz200.0 MHz300.0 MHz400.0 MHz500.0 MHz600.0 MHz700.0 MHz800.0 MHz900.0 MHz1.000 GHz1.100 GHz1.200 GHz1.300 GHz1.400 GHz1.500 GHz1.600 GHz1.700 GHz1.800 GHz1.900 GHz2.000 GHz2.100 GHz2.200 GHz2.300 GHz2.400 GHz2.500 GHz2.600 GHz2.700 GHz2.800 GHz

Gain_dB

15.41915.40915.39315.37015.34015.30515.26315.21515.16215.10315.03914.97014.89614.81814.73514.64914.55814.46514.36814.26814.16514.06013.95313.84413.73313.62113.50713.392

Gain_dB1

15.41915.40915.39315.37015.34015.30515.26315.21515.16215.10315.03914.97014.89614.81814.73514.64914.55814.46514.36814.26814.16514.06013.95313.84413.73313.62113.50713.392

dB(gain_voltage)

15.41915.40915.39315.37015.34015.30515.26315.21515.16215.10315.03914.97014.89614.81814.73514.64914.55814.46514.36814.26814.16514.06013.95313.84413.73313.62113.50713.392

Eqn Gain_dB1=20*log(mag(Vout)/mag(Vin))

Add measurement equation in schematic

The variables of measurement equation

would output to dataset by default.

There are several ways to calculate

voltage gain in dB.

3.4

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

4.0

4.5

5.0

5.5

3.5

6.0

freq, GHz

gain

_vol

tage

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

12.0

12.5

13.0

13.5

14.0

14.5

15.0

11.5

15.5

freq, GHz

Gai

n_d

B

Gain in linear scale Gain in dB

1E91E8 4E9

12.0

12.5

13.0

13.5

14.0

14.5

15.0

11.5

15.5

freq, Hz

Gai

n_dB

x-axis in log-scale

3.5

Page 26: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

25

5.

(1)

(2) 3.6

You can write an equation to

calculate the group delay.

3.6

6.

(1)

3.7

ACAC1

NoiseNode[1]="Vout"CalcNoise=noStep=100 MHzStop=4.0 GHzStart=100 MHz

AC

ParamSweepSweep1

Step=0.5Stop=5Start=0SimInstanceName[6]=SimInstanceName[5]=SimInstanceName[4]=SimInstanceName[3]=SimInstanceName[2]=SimInstanceName[1]="AC1"SweepVar="Vdcs"

PARAMETER SWEEP

Vcc

V_DCSRC1Vdc=Vdcs

VARVAR2Vdcs=5 V

EqnVar

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

1

2

3

4

5

0

6

freq, GHz

gain

_vol

tag

e

Use a sweep plane to sweep

variable “Vdcs” with “AC1”

simulation.

Vcc is now controlled by a

variable “Vdcs” to consider

supply rail variations.

Gain versus power rail

voltage variation.

3.7 Parameter Sweep

Page 27: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

26

7.

(1) V_AC ( )

P_AC( 50 ) V_AC

3.8 Term2 3.1 R1

Vout

Vin

MeasEqnMeas1gain_voltage=mag(Vout)/mag(Vin)

EqnMeas

TermTerm2

Z=50 OhmNum=2P_AC

PORT1

Freq=freqPac=polar(dbmtow (0),0)Z=50 OhmNum=1

DC_BlockDC_Block2

DC_BlockDC_Block1

RRBR=56 kOhm

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

index

freq=100.0 MHz012345678

freq=200.0 MHz012345678

freq=300.0 MHz0123456

name

_totalPORT1

Q1.BJT1Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1RBRC

Term2

_totalPORT1

Q1.BJT1Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1RBRC

Term2

_totalPORT1

Q1.BJT1Q1.BJT1.ibeQ1.BJT1.ice

Q1.L1RB

vnc

5.382 nV5.001 nV1.783 nV984.2 pV1.486 nV70.80 pV174.2 pV241.4 pV829.2 pV

5.376 nV4.995 nV1.780 nV983.0 pV1.484 nV70.71 pV174.0 pV241.3 pV829.0 pV

5.365 nV4.984 nV1.777 nV981.1 pV1.481 nV70.56 pV173.6 pV

Port noises are considered

3.8

3.3

( )

Page 28: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

27

4.1

L ADS

(

)

4.2

1. ac_sim sparam_sim.dsn

2.

(1) Term

(RF Choke DC Feed) 4.1

(2) AC DC Block Choke

(RF) RF

(AC ) RF

(

AC )

Vout

Vin

S_ParamSP1

Step=100 MHzStop=4 GHzStart=100 MHz

S-PARAMETERS

VARVAR2Vdcs=5 V

EqnVar

Vcc

V_DCSRC1Vdc=Vdcs

DC_FeedDC_Feed1

RRBR=56 kOhm

DC_FeedDC_Feed2

VccRRCR=590 Ohm

TermTerm2

Z=50 OhmNum=2Term

Term1

Z=50 OhmNum=1

DC_BlockDC_Block2

DC_BlockDC_Block1

bjt_pkgQ1beta=160

Ideal RF chokes

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

18

19

20

21

17

22

freq, GHz

dB(S

(2,1

))

m1

m1freq=dB(S(2,1))=20.422

1.900GHz

Power gain

dB(S(2,1))

4.1

Page 29: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

28

(3) 100 MHz

4 GHz 100 MHz

(4) Data Display Port 1 S11

Marker 1900

MHz

Marker Format

Zo 50 4.2

freq (100.0MHz to 4.000GHz)

S(1

,1)

m2

m2freq=S(1,1)=0.855 / -3.631impedance = Z0 * (10.990 - j4.420)

1.900GHz

freq (100.0MHz to 4.000GHz)

m2

m2freq=S(1,1)=0.855 / -3.631impedance = 549.490 - j221.017

1.900GHz

Readout with “normalized”

impedance. Double click on the mark

m2, and set Zo=50 Ohm

Now you can read out the

impedance referenced to 50

Ohm system.

4.2

3. RF Choke DC Block

(1) Data Display

4.3

[x::y::z] DC Block 10 pF( 8.37 )

RF Choke 120 nH( 1.4k )

Eqn XC=-1/(2*pi*1900M*10e-12) XC

-8.377

Eqn XL=2*pi*1900M*L_val

Eqn L_val=[1n::10n::200n]

L_val

1.000E-91.100E-82.100E-83.100E-84.100E-85.100E-86.100E-87.100E-88.100E-89.100E-81.010E-71.110E-71.210E-71.310E-71.410E-71.510E-71.610E-71.710E-71.810E-71.910E-7

XL

11.938131.319250.699370.080489.460608.841728.221847.602966.982

1086.3631205.7431325.1241444.5041563.8851683.2651802.6461922.0262041.4072160.7872280.168

Use equation to calculate the reactance of capacitor

and inductor. You may represent a variable in an

sequence [x::y::z] to calculate different reactance of

inductors at once.

4.3

Page 30: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

29

(2) sparam_sim.dsn s_match.dsn DC Block 10 pF

RF Choke 120 nH 4.4 1~3 GHz

DC Block pF pF Choke

nH Block Choke

Choke

Choke

Vout

Vin

S_ParamSP1

Step=100 MHzStop=4 GHzStart=100 MHz

S-PARAMETERS

CDC_Block2C=10 pF

LDC_Feed1

R=L=120 nH

LDC_Feed2

R=L=120 nH

CDC_Block1C=10 pF

VARVAR2Vdcs=5 V

EqnVar

Vcc

V_DCSRC1Vdc=Vdcs

RRBR=56 kOhm

VccRRCR=590 Ohm

TermTerm2

Z=50 OhmNum=2Term

Term1

Z=50 OhmNum=1

bjt_pkgQ1beta=160

Use practical values for

chokes and blocks.

4.4 Choke Block

(3) Choke Block 4.5 S(2,1) S(1,2)

Choke Block

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-60

-40

-20

0

20

-80

40

freq, GHz

dB(S

(2,1

))

m2

dB(S

(1,2

))

m2f req=dB(S(2,1))=20.253

1.900GHz

freq (100.0MHz to 4.000GHz)

S(1

,1)

m1

S(2

,2)

m1f req=S(1,1)=0.856 / -3.557impedance = 554.502 - j219.573

1.900GHz

Results using ideal chokes and blocks.

Results using practical chokes and blocks.

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-100

-80

-60

-40

-20

0

20

-120

40

freq, GHz

dB(S

(2,1

))

m1

dB(S

(1,2

))

m1f req=dB(S(2,1))=20.422

1.900GHz

freq (100.0MHz to 4.000GHz)

S(1

,1)

m2

S(2

,2)

m2f req=S(1,1)=0.855 / -3.631impedance = 549.490 - j221.017

1.900GHz

4.5 Choke Block

Page 31: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

30

4.

(1) ( )

( LNA PA )

(2) S12 0 ( unilateral condition)

S12 -60 dB

( S12

0) ADS Optimization

(3) L 4.6 50

DC Block

( )

1 pF 10 nH

1.9 GHz 50

Vout

S_ParamSP1

Step=10 MHzStop=4 GHzStart=100 MHz

S-PARAMETERS

CC_match_inC=1 pF

LL_match_in

R=L=10 nH

CDC_Block2C=10 pF

LDC_Feed1

R=L=120 nH

LDC_Feed2

R=L=120 nH

CDC_Block1C=10 pF

VARVAR2Vdcs=5 V

EqnVar

Vcc

V_DCSRC1Vdc=Vdcs

RRBR=56 kOhm

VccRRCR=590 Ohm

TermTerm2

Z=50 OhmNum=2

bjt_pkgQ1beta=160

TermTerm1

Z=50 OhmNum=1

Input matching network

(L-shape matching)

Frequency step is set to

10 MHz

m2f req=dB(S(2,1))=21.668

1.900GHz

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-60

-40

-20

0

20

-80

40

freq, GHz

dB(S

(2,1

))

m2

dB(S

(1,2

))

m2f req=dB(S(2,1))=21.668

1.900GHz

m1f req=S(1,1)=0.793 / 100.094impedance = 9.739 + j40.943

1.900GHz

freq (100.0MHz to 4.000GHz)

S(1

,1)

m1

S(2

,2)

m1f req=S(1,1)=0.793 / 100.094impedance = 9.739 + j40.943

1.900GHz

Not matched to 50 Ohm

4.6

Page 32: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

31

(4) tuning

1.9 GHz 50 update

Use tuning function to tune the input

to 50 Ohm and update the tuned values

to schematic.

4.7 Tuning

(5) L

Maker m1

( S12 0 S12

m1 50 )

LL_match_out

R=L=14.3 nH

CC_match_outC=0.4 pF

TermTerm2

Z=50 OhmNum=2

LL_match_in

R=L=14.3 nH {t} C

C_match_inC=0.4 pF {t}

S_ParamSP1

Step=10 MHzStop=4 GHzStart=100 MHz

S-PARAMETERS

CDC_Block2C=10 pF

LDC_Feed1

R=L=120 nH

LDC_Feed2

R=L=120 nH

CDC_Block1C=10 pF

VARVAR2Vdcs=5 V

EqnVar

Vcc

V_DCSRC1Vdc=Vdcs

RRBR=56 kOhm

VccRRCR=590 Ohm

bjt_pkgQ1beta=160

TermTerm1

Z=50 OhmNum=1

Input matching network

(L-shape matching)

Add output matching network

(L-shape matching)

freq (100.0MHz to 4.000GHz)

S(1

,1)

m1S(2

,2)

m3

m1freq=S(1,1)=0.181 / -111.418impedance = 41.510 - j14.469

1.900GHz

m3freq=S(2,2)=0.533 / -125.411impedance = Z0 * (0.376 - j0.457)

1.900GHz

After simulation, you can see the input

matching is affected by the output

matching network.

4.8

Page 33: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

32

5.

(1) s_match.dsn s_opt.dsn ADS ADS

(2) Optim/Stat/Yield/DOE Optim Goal Goal

S11( ) 1850 MHz 1950 MHz -10 dB

Goal S22( ) -10 dB Optim 125 (MaxIter)

4.9 4.10 Help

OptimOptim1

SaveCurrentEF=noUseAllGoals=yes

UseAllOptVars=yesSaveAllIterations=noSaveNominal=yesUpdateDataset=yesSaveOptimVars=noSaveGoals=yesSaveSolns=yesSeed= SetBestValues=yesNormalizeGoals=noFinalAnalys is="SP1"StatusLevel=4Des iredError=0.0Max Iters=125OptimType=Random

OPTIM

GoalOptimGoal2

RangeMax[1]=1950 MHzRangeMin[1]=1850 MHzRangeVar[1]="freq"Weight=Max=-10Min=SimInstanceName="SP1"Expr="dB(S(2,2))"

GOAL

GoalOptimGoal1

RangeMax[1]=1950 MHzRangeMin[1]=1850 MHzRangeVar[1]="freq"Weight=Max=-10Min=SimInstanceName="SP1"Expr="dB(S(1,1))"

GOAL

TermTerm1

Z=50 OhmNum=1

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

RRBR=56 kOhm

Vcc

V_DCSRC1Vdc=Vdcs

VARVAR2Vdcs=5 V

EqnVar

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

LDC_Feed1

R=L=120 nH

CDC_Block2C=10 pF

S_ParamSP1

Step=10 MHzStop=4 GHzStart=100 MHz

S-PARAMETERS

CC_match_inC=0.4 pF {t}

LL_match_in

R=L=14.3 nH {t}

TermTerm2

Z=50 OhmNum=2

CC_match_outC=0.4 pF

LL_match_out

R=L=14.3 nH

We are now ready to use “optimization” function to let ADS

automatically find the “best matching component values.”

We have two goals: one is for input matching and the other is

for output matching.

4.9

GoalOptimGoal1

RangeMax[1]=1950 MHzRangeMin[1]=1850 MHzRangeVar[1]="freq"Weight=Max=-10Min=SimInstanceName="SP1"Expr="dB(S(1,1))"

GOAL

GoalOptimGoal2

RangeMax[1]=1950 MHzRangeMin[1]=1850 MHzRangeVar[1]="freq"Weight=Max=-10Min=SimInstanceName="SP1"Expr="dB(S(2,2))"

GOAL

Input: dB(S(1,1))

Output: dB(S(2,2))

Optimization Control

If you don’t know what the parameter

means, please use “Help.”

OptimOptim1

SaveCurrentEF=noUseAllGoals=yes

UseAllOptVars=yesSaveAllIterations=noSaveNominal=noUpdateDataset=yesSaveOptimVars=noSaveGoals=yesSaveSolns=yesSeed= SetBestValues=yesNormalizeGoals=noFinalAnalysis="SP1"StatusLevel=4DesiredError=0.0MaxIters=125OptimType=Random

OPTIM

4.10

Page 34: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

33

(3) ( )

Tune/Opt/Stat/DOE Setup Tuning Tuning Status

Optimization Enable

{o} ADS S11

S22

Double clickClear tuning

Enable optimization

LL_match_in

R=L=14.3 nH {o}

{o} means this

component is set

to be optimized

4.11

(4) S11 S22 -10 dB

C_match_in.C

4.044E-13

C_match_out.C

2.889E-13

L_match_in.L

1.467E-8

L_match_out.L

2.109E-8

m3f req=dB(Optim1.SP1.SP.S)=36.121optIter=64, index=(2,1)

1.900GHzm4f req=dB(Optim1.SP1.SP.S)=-12.905optIter=64, index=(2,2)

1.900GHz

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-60

-40

-20

0

20

-80

40

freq, GHz

dB(O

ptim

1.S

P1.

SP

.S)

m3

m4

m3f req=dB(Optim1.SP1.SP.S)=36.121optIter=64, index=(2,1)

1.900GHzm4f req=dB(Optim1.SP1.SP.S)=-12.905optIter=64, index=(2,2)

1.900GHz

m1f req=Optim1.SP1.SP.S(1,1)=0.273 / -133.666optIter=64impedance = Z0 * (0.638 - j0.272)

1.900GHz

m2f req=Optim1.SP1.SP.S(2,2)=0.226 / -154.179optIter=64impedance = Z0 * (0.650 - j0.135)

1.900GHz

freq (100.0MHz to 4.000GHz)

Opt

im1.

SP

1.S

P.S

(1,1

)

m1

Opt

im1.

SP

1.S

P.S

(2,2

)

m2

m1f req=Optim1.SP1.SP.S(1,1)=0.273 / -133.666optIter=64impedance = Z0 * (0.638 - j0.272)

1.900GHz

m2f req=Optim1.SP1.SP.S(2,2)=0.226 / -154.179optIter=64impedance = Z0 * (0.650 - j0.135)

1.900GHz

Optimized results for dB(S(1,1)) and dB(S(2,2)) equal to -10 dB

4.12

Page 35: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

34

(5) S11 S22 Goal -20 dB 4.13 S11

S22 -20 dB (S21) S11

S22 50

C_match_in.C

3.015E-13

C_match_out.C

2.112E-13

L_match_in.L

2.064E-8

L_match_out.L

2.840E-8

m3f req=dB(Optim1.SP1.SP.S)=37.031optIter=120, index=(2,1)

1.900GHzm4f req=dB(Optim1.SP1.SP.S)=-20.254optIter=120, index=(2,2)

1.900GHz

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-60

-40

-20

0

20

-80

40

freq, GHz

dB(O

ptim

1.S

P1.

SP

.S)

m3

m4

m3f req=dB(Optim1.SP1.SP.S)=37.031optIter=120, index=(2,1)

1.900GHzm4f req=dB(Optim1.SP1.SP.S)=-20.254optIter=120, index=(2,2)

1.900GHz

m1f req=Optim1.SP1.SP.S(1,1)=0.086 / -144.263optIter=120impedance = Z0 * (0.866 - j0.087)

1.900GHz

m2f req=Optim1.SP1.SP.S(2,2)=0.097 / -147.607optIter=120impedance = Z0 * (0.844 - j0.089)

1.900GHz

freq (100.0MHz to 4.000GHz)

Opt

im1.

SP

1.S

P.S

(1,1

)

m1

Opt

im1.

SP

1.S

P.S

(2,2

)

m2

m1f req=Optim1.SP1.SP.S(1,1)=0.086 / -144.263optIter=120impedance = Z0 * (0.866 - j0.087)

1.900GHz

m2f req=Optim1.SP1.SP.S(2,2)=0.097 / -147.607optIter=120impedance = Z0 * (0.844 - j0.089)

1.900GHz

Optimized results for dB(S(1,1)) and dB(S(2,2)) equal to -20 dB

4.13

(6) 4.14 Simulate Update Optimization Values

Schematic

Disable Optim

LL_match_in

R=L=20.637 nH {-o}

OptimOptim1

SaveCurrentEF=noUseAllGoals=yes

StatusLevel=4DesiredError=0.0MaxIters=125OptimType=Random

OPTIM

Disable optimization for matching componentsUpdate optimization values

After the optimization,

deactivate the OPTIM

controller to turn off

this function.

4.14

Page 36: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

35

(7) Optim s_opt.dsn s_final.dsn Tuning

4.15 S11 S22 -33 dB

m3freq=dB(var("S"))=35.168(2,1)

1.900GHz

m4freq=dB(var("S"))=-39.575(2,2)

1.900GHzm5freq=dB(var("S"))=-33.824(1,1)

1.900GHz

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

-60

-40

-20

0

20

-80

40

freq, GHz

dB(v

ar("

S")

)

m3

m4m5

m3freq=dB(var("S"))=35.168(2,1)

1.900GHz

m4freq=dB(var("S"))=-39.575(2,2)

1.900GHzm5freq=dB(var("S"))=-33.824(1,1)

1.900GHz

m1freq=S(1,1)=0.020 / 171.484impedance = Z0 * (0.961 + j0.006)

1.900GHz

m2freq=S(2,2)=0.011 / -12.184impedance = Z0 * (1.021 - j0.005)

1.900GHz

freq (100.0MHz to 4.000GHz)S

(1,1

) m1

S(2

,2) m2

m1freq=S(1,1)=0.020 / 171.484impedance = Z0 * (0.961 + j0.006)

1.900GHz

m2freq=S(2,2)=0.011 / -12.184impedance = Z0 * (1.021 - j0.005)

1.900GHz

As you can see: Improved gain with improved matching.

4.15

6.

(1) s_final.dsn s_circles.dsn -factor

1 ADS Simulation-S_Param

Mu MuPrim 4.16

OptionsOptions1

MaxWarnings=10GiveAllWarnings=yesI_AbsTol=I_RelTol=V_AbsTol=V_RelTol=Tnom=25Temp=16.85

OPTIONS

S_ParamSP1

CalcNoise=yesStep=10 MHzStop=1950 MHzStart=1850 MHz

S-PARAMETERS

NsCircleNsCircle1NsCircle1=ns_circle(nf2,NFmin,Sopt,Rn/50,51)

NsCircle

GaCircleGaCircle1GaCircle1=ga_circle(S,30,51)

GaCircle

MuPrimeMuPrime1MuPrime1=mu_prime(S)

MuPrime

MuMu1Mu1=mu(S)

Mu

CC_match_outC=0.22 pF

CC_match_inC=0.35 pF

LL_match_out

R=6 OhmL=27.1 nH

LL_match_in

R=12 OhmL=18.3 nH

TermTerm1

Z=50 OhmNum=1

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

RRBR=56 kOhm

Vcc

V_DCSRC1Vdc=Vdcs

VARVAR2Vdcs=5 V

EqnVar

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

LDC_Feed1

R=L=120 nH

CDC_Block2C=10 pF

TermTerm2

Z=50 OhmNum=2

Mu(source) Mu(load) Constant gain circle

(here, set gain = 30 dB)

Constant NF circle

(min NF is auto calculated)

Frequency range is from

1850~1950 MHz with 10

MHz here. (avoid drawing

too many traces)

IEEE defined standard temperature

with noise analysis.

4.16 ADS

Page 37: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

36

(2) 4.16 Simulation-S_Param

GaCircle( ) NsCircle

S_Param CalcNoise Options

16.85 ( IEEE ) 51

30 dB 51

ADS ( nf2)

1850 MHz~1950 MHz

(

)

(3) Display GaCircle NsCircle

( ) Mu MuPrim

1 1850 MHz 1950 MHz (

)

(4)

(

)

cir_pts (0.000 to 51.000)

GaC

ircle

1N

sCirc

le1

1.86 1.87 1.88 1.89 1.90 1.91 1.92 1.93 1.941.85 1.95

0.5

1.0

1.5

2.0

2.5

0.0

3.0

freq, GHz

Mu1

MuP

rime1

freq

1.850 GHz1.860 GHz1.870 GHz1.880 GHz1.890 GHz1.900 GHz1.910 GHz1.920 GHz1.930 GHz1.940 GHz1.950 GHz

nf(2)

3.1533.1713.1893.2073.2253.2433.2613.2803.2983.3163.335

NFmin

1.0551.0561.0561.0561.0571.0571.0571.0581.0581.0581.058

Sopt

0.788 / -20.779 0.789 / -20.735 0.791 / -20.691 0.792 / -20.646 0.794 / -20.602 0.795 / -20.557 0.797 / -20.512 0.798 / -20.467 0.800 / -20.421 0.801 / -20.376 0.802 / -20.330

The load impedances that can result in constant gain (30 dB)

from 1850 MHz to 1950 MHz. (resulted traces are circles)

The maximum available power gain is

around the center of the circles.

The source impedances

that can result in

constant NF from

1850 MHz to 1950 MHz.

(traces are circles)

The minimum noise figure is

around the center of the NF circles.

When the minimum NF point is enclosed with the

constant gain circles, the desired gain and NFmin can

be simultaneously achieved while matched at the

blue point in such frequency range.

Stable: Mu > 1

nf(2) means the NF when port 2 is output port. When

the source is matched to Sopt, the Nfmin can be

achieved.

4.17

Page 38: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

37

7. s2p

(1) s2p_data

s2p s3p s4p ADS dataset

dataset s2p

(2) sparam_sim.dsn s2p

4.18 Write data file from dataset sparam_sim

dataset mybjt.s2p

Here, we are going to save the

transistor s-parameter simulated in

“sparam_sim.” If you forget what is

this, just open that design and you will

know. (It simulates the s-parameter of

the BJT at certain bias point)

4.18 s2p

(3) Data Items S2P mybjt.s2p

mybjt.s2p bjt_pkg

0.5 1.0 1.5 2.0 2.5 3.0 3.50.0 4.0

18

19

20

21

17

22

freq, GHz

dB(S

(2,1

))dB

(spa

ram

_sim

..S(2

,1))

The blue circles are from s2p file, and the red line is the

results from sparam_sim.

S2PSNP1File="mybjt..s2p"

21

Ref

SweepPlanSwpPlan1

Reverse=noSweepPlan=UseSweepPlan=Start=100 MHz Stop=3 GHz Step=100 MHz Lin=

SWEEP PLAN

S_ParamSP1

Step=1.0 GHzStop=10.0 GHzStart=1.0 GHzSweepPlan="SwpPlan1"

S-PARAMETERS

TermTerm2

Z=50 OhmNum=2

TermTerm1

Z=50 OhmNum=1

4.19 file-based

Page 39: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

38

(4) Create

Symbol 4.20

S2PSNP1File="mybjt..s2p"

21

Ref

PortP2Num=2

PortP1Num=1

bjt_s2pQ2

TermTerm2

Z=50 OhmNum=2

TermTerm1

Z=50 OhmNum=1

Place pinsGo to “File” -> “Design Parameters…”

Go to Library find your file-based amplifier bjt_s2p

4.20 file-based

8. s2p

(1) Tools Instrument Server Agilent HPIB

HPIB ( 16)

dataset dataset 4.21

(2)

ADS

(3)

(I-V Curve Tracer

)

(4) ADS ADS Display

csv ASCII Excel Matlab

RF

Page 40: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

39

4.21

4.3

DC Blocks RF Chokes

DC Block

Choke ADS tuning

optimization ADS

ADS

Page 41: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

40

5.1

ADS

1dB 3

5.2

1. (Harmonic Balance, HB)

(1) s_final.dsn hb_basic.dsn

(2) P_1Tone 1900 MHz -40 dBm 5.1

(3) Simulation-HB (Harmonic Balance, HB)

Freq[1] 1900 MHz Order[1] 3

1900 MHz

Freq[1] Freq[2]

Freq[3] Order[1]

Order[1] 3

(DC) 1900 MHz( ) 3800 MHz( )

5700 MHz( )

Vc

Vb

Vout

Vin

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas

HarmonicBalanceHB1

Order[1]=3Freq[1]=1900 MHz

HARMONIC BALANCE

P_1ToneRF_Source

Freq=1.9 GHzP=dbmtow(-40)Z=50 OhmNum=1

TermTerm2

Z=50 OhmNum=2

LL_match_in

R=12 OhmL=18.3 nH

CC_match_outC=0.22 pF

CC_match_inC=0.35 pF

LL_match_out

R=6 OhmL=27.1 nH

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

RRBR=56 kOhm

Vcc

V_DCSRC1Vdc=Vdcs

VARVAR2Vdcs=5 V

EqnVar

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

LDC_Feed1

R=L=120 nH

CDC_Block2C=10 pF

This means we have a source numbered 1 and its frequency

is Freq[1] = 1900MHz. In the simulation, we like to consider

3-harmonics into account, so Order[1]=3. The output voltage Vout is computed with 3-harmonics and the

DC-component. Now, we want to see the power of the

fundamental component (i.e. 1900 MHz) which is Vout[1]. The DC-

component is Vout[0], the 2nd harmonic is Vout[2], and the 3rd

harmonic is Vout[3].

5.1

Page 42: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

41

(4) P_1Tone 1900 MHz Freq[1]

1900 MHz Freq[1] 1800 MHz

1900 MHz 1900

MHz

(5) (1)~(3) Data Display Vout

dBm(Vout) Vout 5.2

Vout DC 1.9 GHz 3.8 GHz 5.7 GHz

( Order[1]=3 )

m1freq=dBm(Vout)=-4.876

1.900GHz

1 2 3 4 50 6

-80

-60

-40

-20

-100

0

freq, GHz

dBm

(Vou

t)

m1

m1freq=dBm(Vout)=-4.876

1.900GHz dBmout

-4.876

DC Fundamental

@1.9 GHz

2nd harmonic

@3.8 GHz

3rd harmonic

@5.7 GHz

Use dBm(v) to transform voltage into power

with 50 Ohm impedance in default.

5.2

(6)

( ) V1 f1

A1

A1V1

( )

( )

f1

(Harmonics)

Page 43: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

42

(7) (6)

(

)

(3)

Order[1]=3 3

Order[1] 1

(Fundamental component)

( Order[1] )

CPU

(8) (6) (7)

Page 44: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

43

(9) (8)

(Saturation power, Psat) 1 dB (1 dB gain

compression point) (Intermodulation intercept point)

(10) (5) Vin Vout Time domain signal

5.3 HB

Vin Vout ADS

HB

-2

0

2

-4

4

ts(V

in),

mV

0.2 0.4 0.6 0.8 1.00.0 1.2

-100

0

100

-200

200

time, nsec

ts(V

out),

mV

2

3

4

1

5

ts(V

c), V

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.00.0 1.1

790

800

810

780

820

time, nsec

ts(V

b), m

V

Choose Vin, Vout, Vc and Vb in

Time-domain

5.3 ts()

Page 45: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

44

(11) list Mix Mix 0, 1, 2, 3

5.4

freq

0.0000 Hz1.900 GHz3.800 GHz5.700 GHz

Mix

0123

Vout

0.000 / 0.000 0.180 / -14.199

0.001 / -170.939 1.963E-5 / 46.135

“Mix” is the index sequence of the frequency components:

Mix = 0, 1, 2, 3

Mix[0] = 0 : DC

Mix[1] = 1 : Fundamental

Mix[2] = 2 : 2nd harmonic

Mix[3] = 3 : 3rd harmonic

5.4 Mix index

(12) Vout dBm(Vout[1]) [1] Vout

5.5 dBm(Vout[2])

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas dBmout

-4.876

dBm(Vout[1])

-4.876

Measurement equation

in schematic

List it in data display

OR

Just manipulate Vout[1] in

data display

freq

0.0000 Hz1.900 GHz3.800 GHz5.700 GHz

Mix

0123

dBm(Vout)

<invalid>-4.876

-49.839-84.141

dBm(Vout) lists out the power of all components.

If you want fundamental power: use dBm(Vout[1])

2nd harmonic power: use dBm(Vout[2])

3rd harmonic power : use dBm(Vout[3])

5.5

(13) dBm() ADS dBm()

50 5.6 50 Vout

dBm(Vout[1]) dBm(Vout[1], 50)

Vin Zin Zin 50

dBm(Vin[1]) I_Probe

5.7

dBm(Vin[1], Zin)

50 dBm(Vin[1]) dBm(Vin[1], Zin)

Page 46: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

45

Here, we are using “Voltage” and 50 Ohm (default) to calculate power.

Warning: (1) For the output, Vout is just on a 50 Ohm term that’s OK!

(2) For the input, is Vin on a 50 Ohm term? Or, say, Zin = 50 Ohm?

Is it correct to use dBm(Vin[1],50) to calculate input power? Incorrect!

VoutTermTerm2

Z=50 OhmNum=2

CC_match_outC=0.22 pF

LL_match_out

R=6 OhmL=27.1 nH

Vin

LL_match_in

R=12 OhmL=18.3 nH

CC_match_inC=0.35 pF

P_1ToneRF_Source

Freq=1.9 GHzP=dbmtow(-40)Z=50 OhmNum=1

CDC_Block1C=10 pF

Zin

5.6

Vin

I_ProbeI_inP_1Tone

RF_Source

Freq=1.9 GHzP=dbmtow(-40)Z=50 OhmNum=1

LL_match_in

R=12 OhmL=18.3 nH

CC_match_inC=0.35 pF

Eqn P_deliv_dBm=10*log(0.5*real(Vin[1]*conj(I_in.i[1])))+30

Eqn Z_in=Vin[1]/I_in.i[1]

dBm(Vin[1])

-40.214

P_deliv_dBm

-40.003

dBm(Vin[1],Z_in)

-40.003

Z_in

47.619 / 0.686

Insert the current probe named “I_in”

Calculate the input impedance and the real

input power in data display.

You can use dBm(Vin[1], Z-in) referenced to

the real input impedance.

5.7

2. 1 dB (P1dB)

(1) 1 dB

( )

(2) hb_basic.dsn hb_compression.dsn 1 dB

5.8

Page 47: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

46

RF_pwr Sweep Parameter

dataset hb_comp Data Display dbmout

RF_pwr RF_pwr

RF_pwr Marker m1

(Gain compression)

( ) RF_pwr

Vin

Vc

Vb

Vout

VARVAR3RF_pwr=-40

EqnVar

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas

HarmonicBalanceHB1

Step=1Stop=-20Start=-50SweepVar="RF_pwr"Order[1]=3Freq[1]=1900 MHz

HARMONIC BALANCE

P_1ToneRF_Source

Freq=1.9 GHzP=dbmtow(RF_pwr)Z=50 OhmNum=1

XDBHB2

GC_MaxInputPower=100GC_OutputPowerTol=1e-3GC_InputPowerTol=1e-3GC_OutputFreq=1.9 GHzGC_InputFreq=1.9 GHzGC_OutputPort=2GC_InputPort=1GC_XdB=1Order[1]=3Freq[1]=1.9 GHz

GAIN COMPRESSION

I_ProbeI_in

TermTerm2

Z=50 OhmNum=2

LL_match_in

R=12 OhmL=18.3 nH

CC_match_outC=0.22 pF

CC_match_inC=0.35 pF

LL_match_out

R=6 OhmL=27.1 nH

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

RRBR=56 kOhm

Vcc

V_DCSRC1Vdc=Vdcs

VARVAR2Vdcs=5 V

EqnVar

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

LDC_Feed1

R=L=120 nH

CDC_Block2C=10 pF

-45 -40 -35 -30 -25-50 -20

-10

-5

0

5

-15

10

RF_pwr

dB

mou

t

m1

m1indep(m1)=plot_vs(dBmout, RF_pwr)=3.358

-31.000

Dataset name: hb_comp

Plot Output power v.s. Input power

Linear region

Gain compression

Saturate

5.8 (Pout v.s. Pin)

(3) 5.9 ( dB )

RF_pwr RF_pwr

( ) 1 dB (

) 1 dB 1 dB

IP1dB 5.10

1 dB

1 dB OP1dB

Page 48: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

47

Eqn Gain_db=dBmout-RF_pwr

-45 -40 -35 -30 -25-50 -20

26

28

30

32

34

24

36

RF_pwr

Gai

n_db

Gain compression effect

(large signal, high power region)

Linear gain (small signal, low power region)

-45 -40 -35 -30 -25-50 -20

26

28

30

32

34

24

36

RF_pwr

Gai

n_db

1 dB

1 dB gain compression point

Input power at 1 dB

gain compression point is call IP1dB

5.9 1 dB IP1dB

-14 -12 -10 -8 -6 -4 -2 0 2 4-16 6

26

28

30

32

34

24

36

dBmout

Gai

n_db

m3

m3dBmout=plot_vs(Gain_db, dBmout)=34.358

3.358

-45 -40 -35 -30 -25-50 -20

26

28

30

32

34

24

36

RF_pwr

Gai

n_db

1 dB

1 dB gain compression point

Input power at 1 dB

gain compression point is call IP1dB

1 dB

1 dB gain compression point

Output power at 1 dB

gain compression point is call OP1dB

Many people would say “P1dB” to describe the gain compression effect (nonlinear

effect). More correctly, you may ask that does he mean IP1dB or OP1dB?

5.10 IP1dB OP1dB ( x )

(4) IP1dB OP1dB 5.11 (dBmout)

(RF_pwr) 5.11

Gain_db[0] Gain_db 1 (index=0)

-50 dBm

( )

(Lin_pwr) (RF_pwr) ( dB )

Page 49: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

48

1 dB 1 dB (

1 dB 1 dB)

Marker m4 IP1dB

OP1dB IP1dB -31 dBm OP1dB 3.4 dBm 5.11

Psat 4.7 dBm

Eqn Lin_pwr=RF_pwr+Gain_db[0]

m4indep(m4)=plot_vs(dBmout, RF_pwr)=3.358

-31.000

-45 -40 -35 -30 -25-50 -20

-10

-5

0

5

10

15

-15

20

RF_pwr

dBm

out m4

Lin_

pwr

m4indep(m4)=plot_vs(dBmout, RF_pwr)=3.358

-31.000

Output power drops 1 dB

from the linear power

IP1dB

1 dB

OP1dB

Linear power relation (if no compression)

5.11 IP1dB OP1dB

(5) P1dB (IP1dB OP1dB)

OP1dB OP1dB

OP1dB

IP1dB

IP1dB

IP1dB OP1dB

IP1dB OP1dB

Psat

( ) OP1dB

( Psat OP1dB )

OP1dB Psat

Page 50: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

49

3. (IP3) HB IP3out ip3_out()

(1) hb_compression.dsn hb_2tone.dsn P_nTone

RF_freq = 1900 MHz

tone_spacing = 10 MHz 5.12

(2) 2

P1dB (One-tone CW

test Single-tone CW test) IP3

(Two-tone CW test)

(3)

0 1

2 (

2 )

(Intermodulation products IM )

1 2mf nf+ 1f 2f m n ( ) m

n (order) ( m n+ )

Vin

HarmonicBalanceHB1

Step=1Stop=-20Start=-50SweepVar="RF_pwr"Order[2]=4Order[1]=4Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2MaxOrder=8

HARMONIC BALANCE

VARVAR3

tone_spacing=10 MHzRF_freq=1900 MHzRF_pwr=-40

EqnVar

VARVAR2Vdcs=5 V

EqnVar

P_nTonePORT1

P[2]=dbmtow(RF_pwr)P[1]=dbmtow(RF_pwr)Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2Z=50 OhmNum=1

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas

I_ProbeI_in

LL_match_in

R=12 OhmL=18.3 nH

CC_match_inC=0.35 pF

CDC_Block1C=10 pF

Use P_nTone source to provide

2 sinusoidal signals.

fcenter= 1900 MHz

Tone spacing = 10 MHz

Freq[2] Freq[1]

Intermodulation (IM) products

Two-tone CW test for evaluating nonlinearity

MaxOrder = number of mixing products

Freq[1] is a variable or a number.

Order[1] = 4 means the component at

Freq[1] will be calculated with 4

harmonics.

5.12

Page 51: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

50

(4) ( )2, 1m n= = − ( )1, 2m n= − = 3

(Third order inptermodulation product, IM3) ( )1 22 f f− ( )1 2f f− +

1f 2f 1 1905 MHzf = 2 1895 MHzf = IM3

1915 MHz 1885 MHz IM3 ( ) IM3

(

IM2 )

( IM3 IM5 IM7 ) ( IM2 IM4 IM6

) IM3

IM3

(5) (4) Data Display dBm(Vout)

(Frequency span)

1880 MHz 1920 MHz IM3

IM3 -46 dBm(

AM/PM IM3 AM/PM )

-5 dBm IM3

( ) IM3 IM3

( ) IM3

IM3 -41 dBc

2 4 6 8 10 12 140 16

-150

-100

-50

-200

0

freq, GHz

dBm

(Vou

t)

m1

m1freq=dBm(Vout)=-4.935

1.895GHz

1.89 1.90 1.911.88 1.92

-150

-100

-50

-200

0

freq, GHz

dBm

(Vou

t)

m1 m2

m1freq=dBm(Vout)=-4.935

1.895GHzm2freq=dBm(Vout)=-5.002

1.905GHz

Show the result of dBm(Vout) See close to 1900 MHz

3rd order intermodulation products (IM3)

5.13 (Intermodulation distortion, IMD)

Page 52: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

51

(6) (5) IM3

IM3

(IP3 TOI, third order intercept)

P1dB IP3 OIP3 IIP3 OIP3

IP3 IM3

IIP3 OIP3

OIP3

(7) OIP3

OIP3 IP1dB 10 dB

( ) 5.14

Simulation-HB IP3out lower band OIP3( 1895

MHz lower IM3 1885 MHz ) upper band OIP3(

1905 MHz upper IM3 1815 MHz ) Data Display

OIP3 16 dBm OIP3 Data Display

ADS IP3in ip3_in() IIP3

{1, 0} {2, -1} { m, n}

freq

0.0000 Hz10.00 MHz20.00 MHz30.00 MHz40.00 MHz1.865 GHz1.875 GHz1.885 GHz1.895 GHz1.905 GHz1.915 GHz1.925 GHz1.935 GHz3.770 GHz

MixMix(1) Mix(2)

01234

-3-2-101234

-2

0-1-2-3-443210

-1-2-34

Vin Vb

IP3outipo1upper_toi=ip3_out(Vout,{1,0},{2,-1},50)

P0

Pin

IP3out

IP3outipo2lower_toi=ip3_out(Vout,{0,1},{-1,2},50)

P0

Pin

IP3out

I_ProbeI_in

P_nTonePORT1

P[2]=dbmtow(RF_pwr)P[1]=dbmtow(RF_pwr)Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2Z=50 OhmNum=1

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas

HarmonicBalanceHB1

Step=Stop=Start=SweepVar=Order[2]=4Order[1]=4Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2MaxOrder=8

HARMONIC BALANCE

VARVAR3

tone_spacing=10 MHzRF_freq=1900 MHzRF_pwr=-40

EqnVar

VARVAR2Vdcs=5 V

EqnVar

LL_match_in

R=12 OhmL=18.3 nH

CC_match_inC=0.35 pF

RRBR=56 kOhm

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

Prepare to simulate IP3 or the

TOI (third order intercept)

upper_toi

15.914

lower_toi

15.679

Eqn cal_toi_upper=ip3_out(Vout,{1,0},{2,-1},50)

Eqn cal_toi_lower=ip3_out(Vout,{0,1},{-1,2},50)

cal_toi_upper

15.914

cal_toi_lower

15.679

Use IP3out in schematic

You can also calculate by using

function ip3_out() in data display

5.14 OIP3

Page 53: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

52

4. (IP3)

(1) hb_2tone.dsn hb_2toneip3.dsn

-45dBm -30 dBm 5.15

Vin

Vc

Vb

Vout

HarmonicBalanceHB1

Step=1Stop=-30Start=-45SweepVar="RF_pwr"Order[2]=4Order[1]=4Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2MaxOrder=8

HARMONIC BALANCE

VARVAR3

tone_spacing=10 MHzRF_freq=1900 MHzRF_pwr=-40

EqnVar

IP3outipo1upper_toi=ip3_out(Vout,{1,0},{2,-1},50)

P0

Pin

IP3out

IP3outipo2lower_toi=ip3_out(Vout,{0,1},{-1,2},50)

P0

Pin

IP3out

I_ProbeI_in

P_nTonePORT1

P[2]=dbmtow(RF_pwr)P[1]=dbmtow(RF_pwr)Freq[2]=RF_freq-tone_spacing/2Freq[1]=RF_freq+tone_spacing/2Z=50 OhmNum=1

MeasEqnMeas1dBmout=dBm(Vout[1])

EqnMeas

VARVAR2Vdcs=5 V

EqnVar

TermTerm2

Z=50 OhmNum=2

LL_match_in

R=12 OhmL=18.3 nH

CC_match_outC=0.22 pF

CC_match_inC=0.35 pF

LL_match_out

R=6 OhmL=27.1 nH

bjt_pkgQ1beta=160

VccRRCR=590 Ohm

RRBR=56 kOhm

Vcc

V_DCSRC1Vdc=Vdcs

CDC_Block1C=10 pF

LDC_Feed2

R=L=120 nH

LDC_Feed1

R=L=120 nH

CDC_Block2C=10 pF

5.15

(2) Data Display 5.16

OIP3 16 dBm

3 3 IP3out ip3_out()

IP1dB 10dB 5.16

IP1dB 10dB

Eqn Lin_pwr=RF_pwr_in+Gain_db_upper[0]

Eqn Gain_db_upper=dBm(mix(Vout,{1,0}))-RF_pwr

Eqn RF_pwr_in=[-45::1::10]

Eqn IM3_upper=dBm(mix(Vout,{2,-1}))

Eqn IM3_lin=IM3_upper[0]+3*(RF_pwr_in-(-45))

-44 -42 -40 -38 -36 -34 -32 -30 -28 -26 -24 -22 -20 -18 -16 -14 -12-46 -10

-60

-50

-40

-30

-20

-10

0

10

20

-70

30

RF_pwr

dBm

(mix

(Vou

t,{1,

0})

)dB

m(m

ix(V

out,{

2,-1

}))

RF_pwr_in

Lin

_pw

r

m1

IM3

_lin

m1indep(m1)=plot_vs(Lin_pwr, RF_pwr_in)=16.106

-19

Valid input power region to

calculate OIP3

OIP3

IP1dB- 10 dB

5.16 OIP3

Page 54: Agilent ADS 模擬手冊 [實習1] 基本操作與射頻放大器設計

53

(3) IP3out ip3_out()

5.17 OIP3

4

IP1dB 10 dB 10 dB

ADS (ip3out()

4 )

m1indep(m1)=plot_vs(Lin_pwr, RF_pwr_in)=1.106

-34

-44 -42 -40 -38 -36 -34 -32 -30 -28 -26 -24 -22 -20 -18 -16 -14 -12-46 -10

-60

-50

-40

-30

-20

-10

0

10

20

-70

30

RF_pwr

dB

m(m

ix(V

ou

t,{1

,0})

)d

Bm

(mix

(Vo

ut,{

2,-

1})

)

RF_pwr_in

Lin

_pw

r

m1

IM3_

lin

m1indep(m1)=plot_vs(Lin_pwr, RF_pwr_in)=1.106

-34

Invalid input power region to

calculate OIP3

Wrong OIP3

5.17 OIP3

5.3

HB IP3 IM3

IP3 IP3

ADS Data Display (

)