Anda di halaman 1dari 12

ASITIC & Eldo Tutorial for EE6240 RF Integrated Circuits

A. La! ser"ers etc


You may use the FPGA lab to run your ASITIC and Eldo simulations for this course. Both
simulation softwares are installed on all machines in this lab. The machine i addresses are
!".#.$.%!&$"' and you can run simulations remotely on these throu(h an )ssh &*+ command.
You may also install and run Eldo on your ersonal comuters. You can find more information
about this here. Similarly' you can download and install the latest )Grac,le+ release of ASITIC on
your ersonal comuters.
#. Setting u$ %our ter&inal session to run Eldo & ASITIC
Your default lo(in to the FPGA lab machines uses the - shell ./sh0. Add the followin( lines to the
./shrc file in your home directory1
e2ort 3453ICE6SE5FI3E7!#!#8!".#.9.:%1!#!#8!".#.9.:;1!#!#8!".#.9.:<
e2ort 4GC5A4S5=>4E7?tools?4entor?A4S5@""$5@5I*3
e2ort PAT=7APAT=1A4GC5A4S5=>4E?bin1?tools?asitic
If you donBt haCe a ./shrc file' create one in your home directory and add these lines to it. These are
sourced eCerytime you lo(in' but for the first time alone you will haCe to source it manually with a
)source ./shrc+ command .unless you want to lo( out and lo( bac, in0. You are now ready to run
Eldo.
C. Sa&$le ASITIC sessions
Samle ASITIC sessions are aCailable on the ASITIC website here. It is a (ood idea to (o throu(h
this before startin( your inductor desi(n.
'. Eldo 'ocu&entation
Eldo documentation is aCailable on the FPGA lab machines in the followin( locations.
=T431 ?tools?4entor?A4S5@""$5@5I*3?docs?htmldocs?eldo5rf?eldo5rf.htm
PDF1 ?tools?4entor?A4S5@""$5@5I*3?docs?dfdocs?eldo5rf.df
E. Setting u$ an Eldo netlist
An Eldo netlist file is of the form )filename.cir+. You will need to create this file and add all
aroriate ortions to it1 actiCe?assiCe networ, to be analysed' Colta(e?current sources' simulation
otions' lottin( functions' comments etc. To run Eldo on your netlist' use this command on the
terminal window1 )eldo filename.cir+
F. E(a&$le circuits and si&ulations
E(a&$le )*+ L,&atc- circuit AC and S,$ara&eter si&ulation
3oo, at samle netlist E! on the class website1 3match.cir. This file simulates the hi(h&ass 3&
match circuit we desi(ned in class to transform a @""F load imedance down to ;"F.
The first line of the .cir file is a comment. You can use this to describe what you are doin(
with the netlist e.(. )S&Parameter analysis for Imedance 4atchin( usin( 3&match+. Any
other lines in the body of your netlist that you want to use for comments should start with a
)G+H e.(. )G&&&&&3C circuit&&&&&+
C! is a caacitor between nodes ! and @ of Calue ".#<;F
3! is an inductor between nodes @ and " of Calue #.<<n=
I3 is the @""F load resistor
node B"B is the reference (round node
J! is a BortB source at the inut. You will need to add a ort wheneCer you want to run an S&
arameter simulation. In this case' the load resistor I3 is ,nown' and we are interested only
in transformin( it to a desired imedance at the inut. Therefore' we will run a !&ort S&
arameter simulation with the inut ort source set to ;"F. This will allow us to simulate
and lot S
!!
.
The ).>P+ statement simulates the DC oeratin( oint of the circuit.
The ).AC+ statement erforms an AC analysis. In this case' we are sweein( between
!"4=/ and !"G=/' with !"" oints er decade .of freKuency swee0
The ).lot+ command here lots the S
!!
in dB
The ).e2tract+ can be used to e2tract further Calues from the .AC simulation .such as -in'
etc0. All of these can be lotted manually from the basic .lot command too
The ).otion comat+ will become necessary when you start usin( transistors to assure sice
model comatibility
).E6D+ indicates the end of the netlist file
6ow' let us try runnin( this netlist with Eldo .run this command1 )eldo 3match.cir+0. You will see a
bunch of commands (o by on your screen' and it will end in somethin( li,e this1
If you loo, at the files in your wor,in( directory' you will see a bunch of other files named
3match.G' which are the outut files' lo( files etc. The actual simulation outut is contained in
3match.wdb.
.ie/ing t-e out$ut+ The outut can be (rahically Ciewed by runnin( the )e/waCe+ command.
Lhen you do this' the e/waCe window oens u' and loo,s somethin( li,e this1
You will now oen the database by naCi(atin( to1 File &&M >en &&M 3match.wdb. >n the to left
ane' you will see B3matchB under currently oen databases. If you clic, on the BNB si(n' it should
oen u the AC simulation result. Lhen you left&clic, on BACB' the bottom left ane should show all
the simulation results O S.!'!0 Pall S
!!
resultsQ and SDB.!'!0 PS
!!
ma(nitude in dB from .e2tract
commandQ. To lot' ri(ht&clic, on the aroriate result. Ii(ht&clic,in( on SDB.!'!0 will allow you
to lot only S
!!
in dB Cersus freKuency. Ii(ht&clic,in( on S.!'!0 will allow you to lot S
!!
in a
Cariety of ways .throu(h the Blot asB choice that os u01 dB' ma(nitude' real' ima(inary' smith&
chart etc' as shown in the screenshot below.
As you can see' the S
!!
at @.%G=/ is around &%;dB' which indicates an e2cellent match to ;"F at the
inut.
E(a&$le )2+ L0A circuit 1ain! 0F and II23 si&ulations
In this e2amle' we will simulate the 9""4=/ 36A circuit shown in the fi(ure below. The samle
36A netlist is aCailable on the class website1 lna.cir. This netlist erforms Gain' 6F and IIP:
simulations. Iecall the F
min
for this circuit .it was coCered in class0. You can comare it to the
simulated Calue to see how far you are from the otimum noise match situation.
The ).include ibm"!:.lib+ line adds the transistor models to the netlist.
.subc,t creates a sub&circuit definition. In this case' the sub&circuit models the additional
drain and (ate noise sources' as well as the correlation coefficient.
An e2amle transistor definition is .in Kuotes' bold0 )4* 03 03 0 0 C45S0 67*.08
L70.*3u+. This indicates the followin(1 transistor name is 4!H the order of nodes is drain&
(ate&source&bul,H model name is C4>S6H Lidth L and 3en(th 3 are !um and ".!:um
resectiCely.
For inut matchin(' the simulation is similar to that used in =L!. For IIP
:
and Gain
simulations' we use a J! ort definition that includes two tones fund! and fund@.
The ).aram+ statement is used to define Cariable Calues' in this case Pin' f! and f@.
The ).ste+ statement is used to swee Cariables. In this case Pin is swet from &:"dBm to
N!"dBm in stes of !dB.
The ).sst+ statement erforms a steady state analysis. This is Cery useful in analysin(
circuits of a lar(e&si(nal nature' but haCin( a eriodically Caryin( oeratin( oint. In this
case' we are usin( it to analyse the intermodulation erformance of the 36A. You should be
careful in secifyin( the number of harmonics of the fundamental that you want to analyse.
In the case of nominally small&si(nal' mildly non&linear circuits li,e 36As' the number of
harmonics will not affect the simulation results too much Rnharm!7!" will usually be
sufficientS. =oweCer' simulations on mi2ers and JC>s will show (reater imact.
4odellin( noise correlation and short&channel effects1
Eldo inherently models noise based on lon(&channel assumtions i.e. T 7 @?:. Therefore we need to
model an additional noise ower with an eKuiCalent T 7 @ O @?: 7 %?:. Le will also need to include
U 7 ".$;' V 7 % and WcW 7 ".:9; in this additional noise ower.
To ,ee thin(s relatiCely simle' we will model all additional noise sources as resistors. Iemember
that drain thermal noise current' induced (ate noise Colta(e .in series with the (ate0 and resistor
thermal noise current?Colta(e are all roortional to %,T in some form or the other. Le can
therefore model all 4>SFET noise sources by choosin( aroriate resistor Calues and?or alyin(
scalin( factors on these in the form of different controlled sources .JCJS' JCCS' CCJS' CCCS0.
Le will show below that we can also model the correlation&coefficient c usin( controlled sources.
Start off with two !&F resistors' r
(!
and r
(@
' with each haCin( one side (rounded and the other left
oen as shown below. The DC Colta(e on the second node is also ".
3et us start off with drain current noise O it is the easier of the two to model. The noise of a !&F
resistor is %,TXf. Le want a current noise ower of i
2
n1
7 %,TY.%?:0Y.(
m
?".$;0YXf' which is easy to
model1 determine (
m
from the oeratin( oint of the transistor' and set the (ain of the JCCS I
"
as
C 7 P.TO@?:0Y.(
m
?U0Q
!?@
. 6odes 6! and 6@ of I
"
are connected to D and S resectiCely of the
aroriate transistor.
Gate noise is a bit more difficult to model' due to correlation. Le will achieCe this in the followin(
way1 remember that the thermal noise of resistors r
(!
and r
(@
are comletely uncorrelated' and the
noise Colta(es are therefore in Kuadrature. Le will scale these by two arameters A 7 WcW Z B 7
.!OWcW
@
0
!?@
' and add them. The resultin( noise ower v
2
n1
is eKual to %,TXf' but the noise Colta(e is
rotated by an aroriate an(le relatiCe to the noise Colta(e of r
(!
such that the correlation between
the two is WcW 7 ".:9;. Finally' Colta(e v
n1
is now scaled by a Calue D 7 P.V0YRU?.;(
m
0SQ
!?@
to create a
noise Colta(e v
n2
across 6: and 6%. This Colta(e is to be connected in series with the (ate of the
aroriate transistor.
6ote that T 7 @' V 7 %' U 7 ".$; and WcW 7 ".:9; can be .and haCe been' in the e2amle circuit0 easily
arameterised. =oweCer' (
m
is a function of the si/e and bias current of the transistor. ECery time
these are modified' (
m
has to be determined from an oeratin( oint simulation and the Calue
aroriately udated in the netlist.
Simulations and results1
Iunnin( the command )eldo lna.cir+ will erform only a .o simulation and will enable you to
determine (
m
Calue.s0. Iunnin( the command )eldo lna.cir &define rf+ will also run the .sst
simulations for 6F and IIP:.
Jolta(e Gain as a function of Pin .lot c(ain5Colta(e under E*T01
The actual Colta(e (ain Calue is the one at low owers .[!:.@dB0.
Fundamental and I4: owers as a function of Pin .lot o! and o: under E*T01
IIP: as a function of Pin .lot c(ain5Colta(e under E*T01
The actual IIP: Calue is the one based on e2traolation at low inut ower .!@.$9dBm in this case0.
6F as a function of freKuency .lot S6F54AG5! under SST6>ISE01
E(a&$le )3+ .C5 circuit 2-ase noise and fre9uenc%,"s,control "oltage:current si&ulations
In this e2amle' we will simulate a :&sta(e current&starCed Iin( >scillator circuit. Iemember that
the delay of an inCerter is a function of itBs BbiasB current. If the current is reduced' the inCerter delay
increases' and therefore the freKuency of oscillation decreases. The JC> is controlled by a current
inut' and it tunes between @;"4=/ and %""4=/. The samle JC> netlist is aCailable on the class
website1 Cco.cir. Since oscillators are autonomous circuits' the steady state analysis synta2 is
sli(htly different for JC>s as comared to other IF circuits. This netlist erforms hase noise and
freKuency Cersus control&current simulations.
The netlist is set to swee current I
C
and and lot f Cs I
C
. Iemember that for each chan(e in I
C
' the
circuit reaches a new steady&state oscillatory condition. Study the netlist to see how it e2tracts f Cs
I
C
behaCiour shown below. Phase noise simulation has been disabled because you donBt need hase
noise .at this time0 for each control current settin(H hase noise simulations are tyically time
consumin(.
You can also lot the transient oututs at different oints usin( the .$lot tsst ;;; command. The
Colta(es at nodes n!' n@' n: are shown below.
The netlist needs to be sli(htly modified to run hase noise simulations at a sin(le control
Colta(e?current Calue' because this does not need a steady&state s/ee$ analysis. For this simulation'
comment out this line1
.ste$ $ara& iias <0u *20u *0u
and uncomment these lines1
;.sstnoise "=n3> -ar& =*> dec *00 *0? *01
;.$lot sstnoise d=s$-i>
The rin( oscillator hase noise Cersus freKuency offset is shown below.

Anda mungkin juga menyukai