Home
fREEDA User`s Manual
Contents
1. 2 Electro thermal modeling is supported and has been implemented and verified for microwave integrated circuits Electro thermal elements are based on a unique theory that captures thermal nonlinearities S7 S8 3 It is very easy to write a model in fREEDA For example The ekv FET model was added to fREEDA in May 2007 This took approximately four weeks with most of the time spent reverse engineering the ekv model to discover the smoothing algorithms used this information was only available with an NDA Turning the electrical model into a complete electro thermal model took six hours Making changes to the model takes an almost insignificant amount of time as manual derivatives do not need to be developed uses automatic differentiation technology Model code in fREEDA uses is typically 5 to 10 of the code required to implement the model in SPICE About 90 of fREEDA code is off the shelf numerical libraries For example ADOLC was modified to suit KREEDA Y as at the time in 2005 fREEDA was regarded as the most sophisticated implementation of ADOLC 4 fREEDA currently supports 150 models some of the more exotic are fully physical models for molecular electronics S4 and models that capture high order fileters in transient analysis S3 5 fREEDA supports many types of analyses including four main transient analyses each with particular attributes For example one has a dynamic range exceeding 140
2. 26 CHAPTER 2 NETLIST FORMAT Chapter 3 Algebraic Expressions This page is still under development so there may be problems The big one is that expres sions do not work at all now Most places where a numeric value is normally used an expression within braces Y can be used instead An expression can contain any supported mathematical operation constant numeric values parenthesees to indicate precedence commas to sepa rate arguments of a function or parameters Valid parameters must begin with an alphabetic character Places where expressions cannot be used are e As polynomial coefficients e The values of the transmission line device parameters NL and F e The values of the piece wise linear characteristic in the PWL form of the independent voltage V and current I sources e The values of the resistor device parameter TC e As node numbers and e Values of most statements such as TEMP AC TRAN etc Specifically included are e The values of all other device parameters e The values in IC and NODESET statements e The values in SUBCKT statements and e The values of all model parameters 27 28 Table 3 1 Expression operators CHAPTER 3 ALGEBRAIC EXPRESSIONS Operator Precedence Syntax Description Name Index Arithmetic Operators UNARY_PLUS 10 x unary plus UNARY_MINUS 10 x unary minus POWER 9 x y or x y raise to a power x
3. integ integral fsu fsv 4 14 OUT Signal Processing Operators smpltime sweepfrq smplcvt sweepcvt maketime makesweep fft invfft cconv upcconv sconv fconv lpbwfrq current analysis timebase as x and y of result current analysis sweep frequencies as x and y of result interpolate szgnal1 over timebase of signal2 interpolate frq1 over sweep frequen cies of frg2 create timebase starting at t 0 in x and y of result create sweep frequencies starting at f 0 in x and y of result FFT argument should have 2 points inverse FFT argument should have 2 1 points real circular FFT convolution with zero padding unpadded real circular FFT con volution slow time domain real convolu tion fast approximate real convolution lowpass Butterworth filter fre quency response none none signall v signal2 vx frql v frg2 vx tmanx r pts t fmaz r pts t timedata fu fradata cv signall fu signal2 fu signall fu signal2 fu signall fu signal2 fu signall fu signal2 fu frqvec vr corner f order t fu fu Ux Ux Ux Ux cv fu fu fu fu fu CUT 99 60 CHAPTER 4 FREEDA COMMANDS Other Operators catalog produce catalog of elements none func Example out write catalog in list txt Writes the catalog of the elements in the current fREEDA build and puts the catalog in the file list txt 4 15 TRAN 61 4 15 tran Similar to SPICE s tran card with syntax tran st
4. lt term_id gt is either an integer or a string in double quotes and is the name of a terminal in the network lt term_id_list gt is a list of one or more terminal id s separated by white space 4 8 General File Comments The first line of an input file is used as the identifier string and is associated with various output files to identify their origin It is seen strictly as a text string and no processing is done on it If a particular statement won t fit on a single line it may be continued by placing a at the beginning of each additional line All comments are proceeded by an an asterisk and there is no limit to the number of comment lines used in a file A comment may begin anywhere on a line such as after a statement and any text after the asterisk is ignored by the parser 4 9 Element Instance Syntax Each instance of an element in TRANSIM netlist is declared in the same manner with each declaration existing on a separate line The syntax is element instance_id termi term2 model identifier The terms element and identifier are the same as those used in the description of the model statement and instance_id is a unique string that identifies this instance of identifier term1 term2 etc are the terminal specifiers which maybe a string or numeric values 4 10 Netlist Variables Local variables for use inside a netlist may be set with the options command using the same syntax as used to set system
5. Recent advances in harmonic balance techniques for nonlinear microwave circuit simulation AEU Arch Elektron Uebertrag Electron Commun Vol 46 No 4 Jul 1992 p 286 297 M Celik A Atalar M A Tan New method for the steady state analysis of periodically excited nonlinear circuits IEEE Transactions on Circuits and Systems I Fundamental Theory and Applications Vol 43 No 12 Dec 1996 p 964 972 H G Brachtendorf G Welsch R Laur Fast simulation of the steady state of circuits by the harmonic balance technique Proceedings IEEE International Symposium on Circuits and Systems Vol 2 1995 IEEE Piscataway NJ USA p 1388 1391 H G Brachtendorf G Welsch R Laur Simulation tool for the analysis and verifica tion of the steady state of circuit designs International Journal of Circuit Theory and Applications Vol 23 No 4 Jul Aug 1995 p 311 323 I Barbancho Perez I Molina Fernandez Predictor strategies for continuation methods applied to nonlinear circuit analysis Industrial Applications in Power Systems Com puter Science and Telecommunications Proceedings of the Mediterranean Electrotech nical Conference MELECON Vol 3 1996 IEEE Piscataway NJ USA p 1419 1422 M S Basel M B Steer and P D Franzon Simulation of high speed interconnects using a convolution based hierarchical packaging simulator IEEE Trans on Compo nents Packaging and Manufacturing Techn Vol 18 February 1995 pp 74 82 T
6. a list of connected elements and a list of output commands 2 1 1 Lexical fREEDAs grammatical rules are very similar to those of spice whitespace blank a newline followed immediately by a sign a tab a vertical tab a newpage identifier A character sequence beginning with an Alphabetic character A Za z variables A variable must begin with an alphabetic character or a followed by alphanu meric characters or _ or Example HEIGHT height lelement a model of a physical component of a network 13 14 CHAPTER 2 NETLIST FORMAT height 1_1 Note that HEIGHT and height are identical as case is not preserved strings Either as an identifier a continuous sequence of alphanumeric characters or enclosed within double quotes The following special escaped characters are allowed in strings defined within double quotes To include a double quote in a string nTo indicate a newline Examples gate VOLTAGE WAVEFORM Note Strings may continue across lines using the Spice continuation syntax VOLTAGE WAVEFORM or simply by continuing across a line as in VOLTAGE WAVEFORM numbers E or e to indicate exponent dotted command A folowed by alphabetic characters If A line feed or cariage return Capitalization The case of identifiers and keywords is ignored in fREEDA netlists The significance of case is retained only within quoted strings and in that case it
7. index 1 arg V index 1 val s Ux variable num ber of vg string term term term term term elem Arithmetic Operators for reverse polish notation e g 3 4 add 7 OUTPUT CONTROL result same z none CU CU CU 5 4 OPERATORS add sub mult div real imag mag abs addition subtraction multiplication division real part imaginary part magnitude absolute value or magnitude contphase continuous phase prinphase principal value phase conj neg recip complex conjugate additive inverse negative reciprocal 5 4 4 Mathematical Operators db db10 rad2deg deg2rad minlmt maxlmt diff deriv sum integ dB 20 logo dB applied to power 10 log convert radians to degrees convert degrees to radians limit the minimum value limit the maximum value differences derivative sums integral su su fsv fsv SU SU SU SU SU SU SU SU CSU CSU CSU SU CSU CSU CSU SU SU arg fsv min f arg fsv max f fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv prom prom prom prom fsv fsv fsv fsv fsv fsv CSU su sv 69 70 5 4 5 Signal Processing Operators smpltime sweepfrq smplcvt sweepcvt maketime makesweep fft invfft cconv upcconv sconv fconv lpbwfrq current analysis timebase as x and y of result current analysis sweep frequencies as x and y of result interpolate signall over timebase of signal2
8. port group 1 1 1 2 GHZ Y RI R 50 4 0 00355603 0 0233196 0 00121905 0 00496212 0 00121905 0 00496212 0 00355603 0 0233196 The rest of the file consist in a list of frequencies and the associated matrix elements in complex form The parser provides several facilities such as the model statement support for any el ement type and a complete reverse polish notation calculator for the output data The corresponding netlist is shown below Unit Cell Folded Slot Antenna ac start 3 6GHz stop 4 8GHz n_freqs 7 Local reference nodes ref 100 ref 200 CPW structure nport cpw_2 10 20 100 200 filename unitcell yp Transistor small signal model nport amplifier 1 2 0 filename feedback_ne3210s1 yp Field excitation gridex iin 10 100 20 200 ifilename unitcell i efilename dummy e current meters vsource amp1 10 11 vsource amp2 20 22 2 3 EXAMPLE SIMULATION OF A FOLDED SLOT ANTENNA 25 CPW Transmission lines model fsal cpw s 369m w 1m t 10u er 10 8 tand 001 cpw t1 11 100 1 O model fsal length 8 5m cpw t2 22 200 2 0 model fsai length 17 5m out write element vsource amp1 O if in il out out write element vsource amp2 0 if in i2 out Plot magnitude of current gain out plot element vsource amp2 0 if element vsource amp1 O if div mag db in igain out Plot magnitude of voltage gain out plot term 20 vf term 10 vf div mag db in gain out end
9. 1 7 Analysis Specification ac start 3 6GHz stop 4 8GHz n_freqs 7 This line consists in a dot followed by the analysis name and a list of parameters See the analysis catalog for a list of analysis and the description of the paramenters Note that 4 8GHz is equivalent to 4 8e9 or 4 8g This is the same as in Spice 2 1 8 Element Specification nport cpw_2 10 20 100 200 filename unitcell yp Elements are specified with the element type name nport in this example followed by a colon and the element instance name Then a list of nodes or terminals to which the element is connected followed by a paramenter list See the element catalog for a list of available elements and the description of the paramenters The terminals can be named using integer numbers or strings When using strings they must be enclosed in quotes Regular passive elements R L and C also support the standard Spice syntax with the following additions common to all elements in fREEDA 2 2 OUTPUT CONTROL 17 1 A model specification is allowed for all elements 2 Anything that can appear in a model specification can be included in the specification of the element 3 If a parameter is not specified either through an element specification or a model specification then the default parameters for that model will apply to this element 2 1 9 End of Netlist Every netlist must finish with a end control card 2 1 10 Subcircuits The subcircuit def
10. 1999 pp 791 794 M A Summers C E Christoffersen A I Khalil S Nakazawa T W Nuteson M B Steer and J W Mink An integrated electromagnetic and nonlinear circuit simulation environment for spatial power combining systems 1998 IEEE MTT S Int Microwave Symp Dig June 1998 pp 1473 1476 Ptplot http ptolemy eecs berkeley edu java ptplot V Rizzoli F Mastri F Sgallari G Spaletta Harmonic Balance Simulation of Strongly Nonlinear very Large Size Microwave Circuits by Inexact Newton Methods IEEE MTT S Digest 1996 V Rizzoli A Costanzo and A Lipparini An Electrothermal Functional Model of the Microwave FET Suitable for Nonlinear Simulation International Journal of Microwave and Millimeter Wave Computer Aided Engineering Vol 5 No 2 104 121 1995 V Rizzoli A Lipparini A Costanzo F Mastri C Ceccetti A Neri and D Masotti State of the Art Harmonic Balance Simulation of Forced Nonlinear Microwave Circuits by the Piecewise Technique IEEE Trans on Microwave Theory and Techniques Vol 40 No 1 Jan 1992 M M Gourary S G Rusakov S L Ulyanov M M Zharov K K Gullapalli and B J Mulvaney Iterative Solution of Linear Systems in Harmonic Balance Analysis IEEE MTT S Digest 1997 I Moret On the Convergence of Inexact Quasi Newton Methods International J of Computer Math Vol 28 pp 117 137 1987 M S Nakhla J Vlach A Piecewise Harmonic Balance Technique for Dete
11. 7 which are specified using the PNR keywor when the port P element is specified DistortionOutputSpecification specifies the distortion component to be reported in a tabular format of up to 8 columns plus an initial column with the sweep variable The DistortionOutputSpecification is one of the following HD2 HD3 SIM2 DIM2 DIM3 the second harmonic distortion the second harmonic distortion the sum frequency intermodulation component the difference frequency intermodulation compo nent the third order intermodulation component See the DISTO statement for a description of these distortion components DistortionReportType specifies the format for reporting the distortion components It must be one of the following R I E M P DB real part imaginary part magnitude phase 10 log 10 magnitude The default is M for magnitude Note 4 4 PLOT PLOT SPECIFICATION 37 1 There can be any number of PLOT statements 2 All of the output quantities specified on a single PLOT statement will be plotted on the same graph using ASCII characters An overlap will be indicated by the letter X The plot produced by the PLOT statement is a line printer plot While plotting is primitive it can be plotted on any printer and is incorporated in the output log file 3 The plot output of the results of an AC analysis always have a logarithmic vertical scale 38 CHAPTER 4 FREEDA COMMANDS 4 5 print Print Speci
12. CHAPTER 4 FREEDA COMMANDS strings Either as an identifier a continuous se quence of alphanumeric characters or en closed within double quotes The following special escaped characters are allowed in strings defined within dou ble quotes To include a double quote in a string n To indicate a newline Examples gate VOLTAGE WAVEFORM Note Strings may continue across lines us ing the continuation syntax VOLTAGE WAVEFORM or simply by continuing across a line as in VOLTAGE WAVEFORM numbers E or e to indicate exponent dotted command A followed by alphabetic characters at the beginning of a line If A line feed or carriage return Capitalization The case of identifiers and keywords is ignored in TRANSIM netlists The significance of case is retained only within quoted strings and in that case it is always retained Internally characters are mapped to lower case 4 6 STRUCTURE OF A FREEDA NETLIST AT 48 CHAPTER 4 FREEDA COMMANDS 4 7 SPICE Elements All regular SPICE elements have the same syntax as in standard SPICE but with the fol lowing additions 1 A model specification is allowed for all elements 2 Anything that can appear in a model specification can be included in the specification of the element 3 If a parameter is not specified either through an element specification or a model specification then the default parameters for that model will apply to this element
13. dB and particularly useful in modeling RFICs Wavelet transient analysis S9 uses wavelet technology albeit somewhat disappointing because of matrix ill conditioning In time this will be addressed and further support multi physics modeling 1 3 SUPPORTED PLATFORMS 9 fREEDA tbrmTM has an input format that is similar to the SPICE input format with extensions for variables sweeps user defined models and repetitive simulation The program provides a variety of output data and plots The netlist format including output commands is discussed in chapter 2 The program supports several types of analyses subcircuit instances and local refer ence nodes The harmonic balance approach in fREEDA is discussed in chapter The convolution transient is described in chapter fREEDA supports two schematic and layout capture engines One of these is iFREEDA which is based on the QUCS engine and is intricately connected to fREEDA iFREEDA uses the same code tree as fREEDA The other schematic engine is Electric Editor of the Electric VLSI Design System http www staticfreesoft com fREEDA also provides an interactive interface GUI called iFREEDA Both Electric and iFREEDA support local reference terminals fREEDA and iFREEDA are available from http www freeda org fREEDA thrmTM provides a graphical user interface which includes a netlist editor a run manager and a output viewer Details are given in chapter 6 Wh
14. de vices using the FDTD analysis based on the voltage source approach IEEE Microwave Guided Wave Lett vol 6 pp 199 201 May 1996 E Larique S Mons D Baillargeat S Verdeyme M Aubourg P Guillon and R Quere Electromagnetic analysis for microwave FET modeling IEEE microwave and guided wave letters Vol 8 pp 41 43 Jan 1998 T W Nuteson H Hwang M B Steer K Naishadham J W Mink and J Harvey Analysis of finite grid structures with lenses in quasi optical systems IEEE Trans Microwave Theory Techniques pp 666 672 May 1997 M B Steer M N Abdullah C Christoffersen M Summers S Nakazawa A Khalil and J Harvey Integrated electro magnetic and circuit modeling of large microwave and millimeter wave structures Proc 1998 IEEE Antennas and Propagation Symp pp 478 481 June 1998 J Kunisch and I Wolff Steady state analysis of nonlinear forced and autonomous mi crowave circuits using the compression approach Int J of Microwave and Millimeter Wave Computer Aided Engineering vol 5 No 4 pp 241 225 1995 T H Cormen C E Leiserson R L Rivest Introduction to Algorithms The MIT Press McGraw Hill Book Company 1990 A Eli ns Principles of object oriented software development Adison Wesley 1995 R C Martin The dependency inversion principle C Report May 1996 R C Martin The Open Closed Principle C Report Jan 1996 R C Martin T
15. interpolate frq1 over sweep frequen cies of frg2 create timebase starting at t 0 in x and y of result create sweep frequencies starting at f 0 in x and y of result FFT argument should have 2 points inverse FFT argument should have 2 1 points real circular FFT with zero padding unpadded real circular FFT con volution slow time domain real convolu tion fast approximate real convolution convolution lowpass Butterworth filter fre quency response CHAPTER 5 none none signall v signal2 vx frql v frg2 vx tmanx r pts t fmaz r pts t timedata fu fradata cv signall fu signal2 fu signall fu signal2 fu signall fu signal2 fu signall fu signal2 fu frqvec vr corner f order t OUTPUT CONTROL fo fo vr vr vr vr cv fo fo fo fo fo CUT Chapter 6 Graphical User Interface 6 1 Introduction fREEDA supports three interactive front ends e iFREEDA the preferred interface and part of the fREEDA distribution e Electric Editor Very good for VLSI layout not documented e fREEDA GUI not currently distributed but described in this chapter The simulation engine in fREEDA can be used in the traditional way as a stand alone program for example in batch jobs In this mode the program reads an input netlist process its contents and writes the requested output files fREEDA also provides a Graphical User Interface GUI which is more convenient for interactive u
16. is a companion interactive GUI based on the QUCS schematic capture en gine see http qucs sourceforge net ifREEDA uses the Qt is a registered trademark of Trolltech AS in Norway The United States of America and other countries worldwide See http trolltech com copyright for their copyright restriction and http trolltech com products qt lice for licensing information ifREEDA uses the Open Source Edition of Qt fREEDA and ifREEDA are released under the GPL license and so is open source software fREEDA and ifREEDA can be sold but developments that are commercial ized must be made available as open source software The community is welcome to extend the capabilities of FREEDA particularly model development fREEDA currently supports the following analyses transient many types including high dynamic range capability wavelet transient harmonic balance large signal noise analysis including phase noise AC DC There are a large number of models available there are at least 107 but the number grows all the time There is an extensive support for true electro thermal modeling capturing long tail thermal effects We need to develop application notes to show how to use all the capabilities Most of the developments have been reported in Master s theses and PhD dissertations at North Carolina State University University of Arizona Queen s University Contact Michael Steer at m b steerQieee org if you are interest
17. is always retained Internally characters are mapped to lower case 2 1 2 Continuation of Line A line beginning with a plus sign is considered to be the continuation of the previous one 2 1 STRUCTURE OF FREEDA S NETLIST 15 2 1 3 Title Line xxx Unit Cell Folded Slot Antenna As in Spice the first line of the netlist file is the title and does not contain commands 2 1 4 Comments Local reference nodes As in Spice comment lines begin with an asterisk 2 1 5 options Used to set up quantities similar to spice syntax The general syntax is options lt identifier gt lt value gt All identifiers set in a options card are treated as a variable value may be an number or a previously defined variable Preset Options Some variables are preset variable default value defl OPTIONS_DEFAULT_DEFL 100 x 107 defw OPTIONS_DEFAULT_DEFW 100 x 107 defad OPTIONS_DEFAULT_DEFAD 0 defas OPTIONS_DEFAULT_DEFAS 0 tnom OPTIONS_DEFAULT_TNOM 27 numdgt OPTIONS_DEFAULT_NUMDGT 4 cptime OPTIONS_DEFAULT_CPTIME 1 x 10 limpts OPTIONS_DEFAULT_LIMPTS 201 itll OPTIONS_DEFAULT_ITL1 40 itl2 OPTIONS DEFAULT ITL2 20 itl4 OPTIONS DEFAULT ITL4 10 itl5 OPTIONS_DEFAULT_ITL5 5000 reltol OPTIONS_DEFAULT_RELTOL 0 001 trtol OPTIONS_DEFAULT_TRTOL 7 0 abstol OPTIONS DEFAULT ABSTOL 1x107 chgtol OPTIONS DEFAULT CHGTOL 0 01 x 107 vntol OPTIONS_DEFAULT_VNTOL 1 x 1078 pivrel OPTIONS_DEFAULT_PIVREL 1 x es gmin OPTIONS DEFAULT
18. ote Sg Geet es OS We Oe ee Eos 2 2 2 CPlottine 1 a ele ae id a Oke ee PR eS 2 2 3 Running a System Command par Se ey Se ee amp eS 224 td s peceren e Be ed ee a ed e ted oe a a a 2205 Cua Rene Hua banda Bhs dy Se oly ee ole a a od hg 2 20 E eae Ree ea ee ae ee A eS 2 2 7 Network Operator de ahh Skt oo alas e SE Se ee de 2 3 Example Simulation of a Folded Slot Antenna 3 O NNN 10 10 11 11 11 12 12 4 CONTENTS 3 Algebraic Expressions 27 4 fREEDA Commands 31 4 1 inc Include Statement a A a 31 4 2 lib Library Statement aos la A A a 32 4 3 locate Identify Location of Terminals o o a a a a 33 4 4 plot Plot Specification cti ee de A cl sl 34 4 5 print Print Specification esa Des ai A a ea 38 4 6 Structure of a FREEDA Netlist er A Y BERS 45 4 0 1 Lexical Rules 10 gale oa ARA ERRADA AAA 45 A SPICE Elements A A A Se 48 4 8 General File Comments y ts AAA SE eS 48 4 9 Element Instance Syntax y a ae o ee Dae eh ee we wwe Ss 48 4 10 Netlist Variableso E a ag oe AA AA Sh eh 48 4 11 couple Couple Elements dr 226 cy ete Ss aye oye Bob he MS 49 4 11 1 locate Identify Location of Terminals 50 A OGLE a a thei ad eae ds ade d s 51 AO SONIONS A La E dt ds a ae Aar aA 52 AL OM Ay Hue as ardor e paa A AAN AAA A coo Y 53 ANA Calera emer ay AS AT Bee Gs AP SR SP ee eA a ean ee 54 AL TAS Nomerclature oag 2 0 ALA YR ee YR eR ss 54 AMAS O PELOS Y E hh pod ep E
19. the file in a specific directory while INC searches for the file in current directory 4 3 LOCATE IDENTIFY LOCATION OF TERMINALS 33 4 3 locate Identify Location of Terminals Form locate terminal name X Y Description LOCATE is used to identify the position of a terminal Credits Name Affiliation Date Links Michael Steer NC State University Sept 2000 m b steerQieee org www ncsu edu 34 CHAPTER 4 FREEDA COMMANDS 4 4 plot Plot Specification NOT FULLY FUNCTIONAL as of fREEDA 1 3 The plot specification controls the information that is plotted as the result of various analyses Form Form PLOT TRAN OutputSpecification PlotLimits OutputSpecification PlotLimits PLOT AC OutputSpecification PlotLimits OutputSpecification PlotLimits PLOT DC OutputSpecification PlotLimits OutputSpecification PlotLimits PLOT NOISE NoiseO0utputSpecification DistortionReportType PlotLimits NoiseOutputSpecification DistortionReportType PlotLimits PLOT DISTO DistortionOutputSpecification DistortionReport Type PlotLimits DistortionOutputSpecification DistortionReportType PlotLim its DistortionReportType PlotLimits tran is the keyword specifying that this plot statement controls the reporting of results of a transient analysis initiated by the TRAN statement ac is the keyword specifying that this plot statement control
20. variables For example options logici 5 0 options logicO 0 6 options vdiff logici logic2 These local variables do not need to be declared before being set but they must be set before being used Local variables are designed so that common parameters such as microstrip width may be declared in each model statement as a variable with the variables value set once at the top of the netlist Changing width requires changing one variable rather than multiple declarations in different model statements The third options statement above illustrates the use of mathematical operations on local variables in this case the difference between logicl and logicO is assigned to vdiff Various analvses relv on variables set in a 4 11 COUPLE COUPLE ELEMENTS 49 4 11 couple Couple Elements NOT FUNCTIONAL in current version Form couple element instance name element instance name terminal name terminal name Description couple is used to identify the elements that combine to create a coupled element This command is used to indicate which edges or nodes to be simulated as coupled lines The syntax is couple line_1 line_2 line_3 where line_1 etc are the specific names given to each instance of a line or node Note that the type of model used for coupled edges or nodes must be able to handle coupling In general a single line or node that may also be coupled is just a subset of the coupled line case I
21. CIFICATION 41 1 There can be any number of print statements 2 The number of significant digits of the results reported is NUMDGT which is set in a options statement dc and tran Reporting The output specifications available for the DC sweep and transient analyses are I DeviceName Current through a two terminal device such as a resistor R element or the output of a controlled voltage or current source e g I R22 is the current flowing through resistor R22 from node N to Na of R22 I TerminalName DeviceName Current flowing into terminal named TerminalName such as B for gate from the device named DeviceName such as Q12 e g IB Q12 I PortName TransmissionLineName Current at port named PortName either A or B of the transmission line device named TransmissionLineName V TerminalName Voltage at a node of name TerminalName V n n2 Voltage at node n with respect to the voltage at node na V DeviceName Voltage across a two terminal device such as a resistor R element or at the output of a controlled voltage or current source VTerminalName DeviceName Voltage at terminal named TerminalName such as G for gate of the device named DeviceName such as M12 e g VG M12 V TerminalNamel TerminalName2 DeviceName Voltage at terminal named TerminalNamel such as G for gate th respect to the terminal name TerminalName 2 such as S for source of the device named DeviceName such as M12 e g VGS M12 VPortName T
22. GMIN 1 x 107 For the developer the defaults are defined in spice h 16 CHAPTER 2 NETLIST FORMAT Control Options Under Construction 2 1 6 model model c_line tlinp4 zOmag 75 00 k 7 fscale 1 e10 alpha 59 9 Each model is a statement that associates a name lt model name gt with a list of parameter values lt param list gt The parameter names given must be the names of parameters of the element specified after the model keyword Thus alpha and zOmag must be parameters of tlinp4 in the above example Further the values assigned to parameters must be of an appropriate type The parser goes to some lengths to coerce types where the result is sensible i e if you give an integer value 1 to a parameter of float type the parameter will be assigned the floating point value 1 0 However you can t assign string values to float parameters or vice versa The model statements define the default characteristics of the different physical elements models in a network The syntax is as for spice model lt model name gt lt type name gt lt parameter name gt lt value gt Here lt model name gt is an identifier by which the model is referred to lt type name gt is the physical element name that the model refers to the parameter name must be a valid parameter for the element indicated by lt type name gt referred to Any number of models may be specified for a single element 2
23. J Brazil A new method for the transient simulation of causal linear systems de scribed in the frequency domain 1992 IEEE MTT S Int Microwave Symp Digest June 1992 pp 1485 1488 BIBLIOGRAPHY 81 78 79 80 81 82 83 84 85 86 87 88 89 90 P Perry and T J Brazil Hilbert transform derived relative group delay EEE Trans on Microwave Theory and Techn Vol 45 Aug 1997 pt 1 pp 1214 1225 T J Brazil Causal convolution a new method for the transient analysis of linear systems at microwave frequencies IEEE Trans on Microwave Theory and Techn Vol 43 Feb 1995 pp 315 23 A R Djordjevic and T K Sarkar Analysis of time response of lossy multiconductor transmission line networks IEEE Trans on Microwave Theory and Techn Vol MTT 35 Oct 1987 pp 898 908 D Winkelstein R Pomerleau and M B Steer Transient simulation of complex lossy multi port transmission line networks with nonlinear digital device termination using a circuit simulator Conf Proc IEEE SOUTHEASTCON Vol 3 pp 1239 1244 J E Schutt Aine and R Mittra Nonlinear transient analysis of coupled transmission lines IEEE Trans on Circuits and Systems Vol 36 Jul 1989 pp 959 967 P K Chan Comments on Asymptotic waveform evaluation for timing analysis EEE Trans on Computer Aided Design Vol 10 Aug 1991 pp 1078 79 M Celik
24. L O Chua Frequency domain analysis of nonlinear circuits driven by multi tone signals IEEE Transactions on Circuits and Systems Vol CAS 31 No 9 September 1984 pp 766 778 80 66 67 68 69 70 71 72 73 74 75 76 77 BIBLIOGRAPHY A Ushida L O Chua and T Sugawara A substitution algorithm for solving nonlinear circuits with multi frequency components International Journal on Circuit Theory and Application Vol 15 1987 pp 327 355 R J Gilmore and F J Rosenbaum Modelling of nonlinear distortion in GaAs MES FETs 1984 IEEE MTT S International Microwave Symposium Digest May 1984 pp 430 431 G P Bava S Benedetto E Biglieri F Filicori V A Monaco C Naldi U Pisani and V Pozzolo Modelling and perfomance simulation Techniques of GaAs MESFETs for microwave power amplifiers ESA ESTEC Report Noordwijk Holland March 1982 H Makino and H Asai Relaxation based circuit simulation techniques in the frequency domain IEICE Transactions on Fundamentals of Electronics Communications and Computer Sciences Vol E76 A No 4 Apr 1993 p 626 630 A Brambilla D D Amor M Pillan Convergence improvements of the harmonic bal ance method Proceedings IEEE International Symposium on Circuits and Systems Vol 4 1993 Publ by IEEE IEEE Service Center Piscataway NJ USA p 2482 2485 V Rizzoli A Costanzo P R Ghigi F Mastri D Masotti C Cecchetti
25. MULTIPLY 8 TY multiply DIVIDE 8 y x divide PLUS 7 uty plus MINUS 7 ey minus Logical Operators NOT 10 lx NOT GREATER_OR_EQUAL 6 ty greater than or equal LESS_OR_EQUAL 6 z lt y less than or equal GREATER THAN 6 Cy greater than LESS_THAN 6 xy less than EQUAL 5 z y equality NOT EQUAL 5 ai y no equal AND 4 xrky logical and OR 3 xly logical or XOR 2 z Y exclusive or Operators that can be used in expressions are listed in Table 3 1 Here x and y maybe numbers parameters or sub expressions The result of the logical operations is either 0 or 1 Operands are treated as 1 if they are not exactly zero The precedence of the operators is also given in Table 3 1 and follows normal practice A higher precedence number indicates higher prcedence and operators of the same precedence are evaluated from left to right For example idss vgs vgs 2 is evaluated as idss vgs vgs where idss and vgs are parameters defined else where is evaluated as 3 5 4 3 4 gt 23 Functions that can be used in expressions are listed in Table 3 2 Note 3 5 Al 37 4 gt 23 1 The table look up function returns a y value given an x value and a set of x y points defining piece wise linear The number of x y pairs in the table function is limited approximately to 100 A further limit is imposed by the amounjt of information thatmustbe retained during expression evalurion To obtain the full 100 print capabil
26. O Ocali M A Tan and A Atalar Pole zero computation in microwave circuits using multipoint Pad approximation IEEE Trans on Circuits and Systems Jan 1995 pp 6 13 E Chiprout and M Nakhla Fast nonlinear waveform estimation for large distributed networks 1992 IEEE MTT S Int Microwave Symp Digest Vol 3 Jun 1992 pp 1341 1344 R J Trihy and Ronald A Rohrer AWE macromodels for nonlinear circuits Proceed ings of the 36th Midwest Symposium on Circuits and Systems Vol 1 Aug 1993 pp 633 636 R Griffith and M S Nakhla Mixed frequency time domain analysis of nonlinear circuits IEEE Trans on Computer Aided Design Vol 11 Aug 1992 pp 1032 43 M Ozkar Transient analysis of spatially distributed microwave circuits using convolu tion and state variables M S Thesis Department of Electrical and Computer Engi neering North Carolina State University C Gordon T Blazeck and R Mittra Time domain simulation of multiconductor transmission lines with frequency dependent losses IEEE Trans on Computer Aided Design of Integrated Circuits and Systems Vol 11 Nov 1992 pp 1372 87 P Stenius P Heikkila and M Valtonen Transient analysis of circuits including frequency dependent components using transgyrator and convolution Proc of the 11th European Conference on Circuit Theory and Design Part II 1993 pp 1299 1304
27. Reporting The output specifications available for reporting the results of an AC frequency sweep anal ysis includes all of the specification formats discussed above for DC and transient analysis together with a number of possible suffixes DB 10log 10 magnitude magnitude phase real part imaginary part group delay 0 0f where is the phase of the quantity being re ported and f is the analysis frequency In AC analysis the default suffix is M for magnitude Q H D a Li Two Terminal Device Types Supported for AC Reporting The single character identifier for the following elements as well as the rest of the device name can be used as the DeviceName in the I DeviceName and I DeviceName output specifications Element Type Description capacitor diode independent current source inductor resistor independent voltage source lt sDrHUAQ Multi Terminal Device Types Supported for DCand Transient Analysis Reporting The single character identifier for the following elements as well as the rest of the device name can be used as the DeviceName in the I TerminalName DeviceName V TerminalName DeviceName and V TerminalNamel TerminalName2 DeviceName output specifications 44 CHAPTER 4 FREEDA COMMANDS Element Type Description B GaAs MESFET Terminals D drain G gate S source J JFET Terminals D drain G gate S source M MOSFET
28. Stop when the engine is running 6 4 The Output Viewer Window This window is perhaps the most useful of all It is shown in Figure 6 3 The output file is displayed at the left This file contains detailed information about the simulation At the right there is a list of files available for plotting After selecting one or more of these files and depressing the Plot button a plot window appears showing the desired data see Figure 6 4 Any number of plots can be requested Also the plot data is kept in memory by the plot window so it is possible to re run a simulation with different parameters and compare the new and old graphs on the screen An encapsulated postscript file can be generated pressing the corresponding button There are several features provided in the plot window One of the most remarkable is that it is possible to zoom in or out the graph by dragging the left or right mouse button respectively The plotting facility is provided by the ptplot 45 library CHAPTER 6 GRAPHICAL USER INTERFACE Ha Figure 6 4 Plot window 75 Bibliography 1 10 11 12 13 S M S Imtiaz and S M El Ghazaly Global modeling of millimeter wave circuits electromagnetic simulation of amplifiers IEEE Trans on Microwave Theory and Tech vol 45 pp 2208 2217 Dec 1997 C N Kuo R B Wu B Houshmand and T Itoh Modeling of microwave active
29. Terminals B bulk or substrate D drain G gate S source Q BJT Terminals C collector B base E emitter S source Credits Name Affiliation Date Links Michael Steer NC State University Sept 2000 m b steerQieee org www ncsu edu 4 6 STRUCTURE OF A FREEDA NETLIST 45 4 6 Structure of a fREEDA Netlist There are four types of elements used in TRANSIM nodes edges edge coupling groups ECGs and node coupling groups NCGs Within those broad classifications there are a wide variety of individual element types for example mlin microstrip line coax coaxial cable and idealj ideal junction element and model are used synonomously 4 6 1 Lexical Rules A lexical rule defines an identifiable object in the input file That is it defines the equivalent of words Words put togetehr in a particular order define a grammar fREEDA recognizes many words but the important one are as follows whitespace a blank a newline followed immediately by a sign a tab a vertical tab a newpage identifier A character sequence beginning with an al phabetic character A Za z variables A variable must begin with an alphabetic character or a followed by alphanumeric characters or or Example HEIGHT height height 1_1 Note that HEIGHT and height are identical as case is not preserved lelement a model of a physical component of a network 46
30. Y SUPPORTED characteristic impedance of a line complex attenuation of a line admittance parameter of two termi nals argument s any arg v index 1 arg v index 1 val s Ux string term term term term term junct row colt line CUR RENTLY SUP PORTED line NOT CUR RENTLY SUP PORTED term NOT CUR RENTLY SUP PORTED NOT CHAPTER 4 FREEDA COMMANDS result same none CU CU fu fu cu CU CU CU fu 4 14 OUT Arithmetic Operators add sub mult div real imag mag abs contphase prinphase conj neg recip addition addition subtraction subtraction multiplication multiplication division division real part imaginary part magnitude absolute value or magnitude continuous phase principal value phase complex conjugate additive inverse negative reciprocal SU SU SU SU SU SU SU SU SU SU SU SU SU SU SU SU CSU CSU CSU SU CSU CSU CSU SU SU prom prom prom prom prom prom prom prom fsv fsv fsv fsv fsv fsv csu su su 57 58 CHAPTER 4 FREEDA COMMANDS Mathematical Operators db dB 20 log su fsv db10 dB applied to power 10 log su fsv rad2deg convert radians to degrees fsv fsv deg2rad convert degrees to radians fsv fsv minlmt limit the minimum value arg fsv fsu min f maxlmt limit the maximum value arg fsv fsv max f diff differences fsv fsv deriv derivative fsv fsv sum sums fsu fsv
31. al name terminal name terminal name Description out is used to identify the elements that combine to create a coupled element The out command is used to process and output data resulting from a fREEDA run The out statement uses stacks and has a syntax much like a reverse polish notation calculator It is a powerful output engine and can be utilized in its own right or in conjunction with the more usual print and plot statements although these provide much less functionality A variety of signal processing functions including arithmetic operators may be used to ma nipulate the data prior to writing it to a file plotting to the screen or piping it to a system call fREEDA has an interpretive output language which uses a reverse polish syntax The operators operate on a stack and as an operation is performed zero or more arguments are consumed by an operator Details of the various options will be shown at the end of this section but for most situations and netlists the voltages and currents at the various external ports are to be written to output files in standard ASCII format An example is shown below out write term 1 vt in 1v out out write term 2 it in 2i out In the first example the voltage at terminal 1 is written out to file 1v out The second example writes the current going into terminal 2 to the file 2i out 54 4 14 1 Qualifiers type description qualifiers network types term terminal ref
32. art stop delta where start is the starting transient analysis time stop is the ending time and delta is the time increment If delta is zero the finest time increment is used determined by the highest frequency sfrq and the number of frequency points spts 4 16 tran2 Under construction 4 17 tran4 Under construction 62 CHAPTER 4 FREEDA COMMANDS 4 18 tran basel NO LONGER SUPPORTED But it will be The analysis was used in an earlier version and performs convolution based analysis This section defines the options used in Mark Basel s particular form of transient analysis This analysis is not publicly available The variables set in in a options statement for this analysis are shown in Table 4 2 4 18 TRAN BASEL Table 4 2 fREEDA runtime options Variable Name Definition Use iterationdump Debugging dump for ON or OFF each iteration of transient analysis dump Debugging dump of ON or OFF various variables dumpnet Debugging dump of network ON or OFF as interpreted by TRANSIM dcNormal Switch for using ON or OFF threshold error correction spts number of frequency int power of 2 points used in y f Lins Matching network impedance float ohms type form of analysis transient hb sfrq Maximum frequency float hz LPFOrder low pass filter order int 1 2 or 3 impulselength fraction of impulse float 0 1 response to use in transient analysis impul
33. ature is used in describing the output operators 5 3 QUALIFIERS 67 type description scalar numeric types 1 integer floating point r real integer or floating point c complex s scalar integer floating point or complex scalar and mixed numeric types fu floating point vector cu complex vector v floating point or complex vector fsv floating point scalar or vector CSU complex scalar or vector su scalar or vector any prom an appropriately promoted numeric type x suffix to vector types x data required other types any any type string character string var variable name file data file func function pointer 5 3 Qualifiers type description qualifiers network types term terminal or node element circuit element 68 5 4 Operators 5 4 1 General Operators operator dup get put stripx pack system function duplicate object get element of vector modify element of vector remove x data concatenates last vz s on stack execute shell command 5 4 2 Network Operators v if xf vt it ut complex freq domain voltage vec tor at a terminal complex freq domain current vec tor at a terminal complex freq domain state variable vector at a terminal time domain voltage vector at a ter minal time domain current vector at a ter minal time domain voltage vector at an element port 5 4 3 RPN Arithmetic Operators CHAPTER 5 argument s any arg v
34. d after any output specification PlotLimits has the form LowerLimit UpperLimit All quantities will be plotted using the same PlotLimits The default is to automatically scale the plot and perhaps use different scales for each of the quantities to be plotted NoiseOutputSpecification specifies the noise measure to be reported The two options are ONOISE which reports the output noise and INOISE which reports the equiva lent input noise See the NOISE statement for a detailed explanation 36 CHAPTER 4 FREEDA COMMANDS It must be one of the following ONOISE magnitude of the output noise DB ONOISE output noise in dB INOISE magnitude of the equivalent input noise DB INOISE equivalent input noise in dB GAIN voltage gain DB GAIN voltage gain in dB 20 log GAIN GT transducer gain DB GT transducer gain in dB 10 log GT NF spot noise factor DB NF spot noise figure 10 log NF SNR output signal to noise ratio DB SNR output signal to noise ratio in dB 20 log SNR TNOISE output noise temperature SParameterOutputSpecification specifies the S parameter output variables that are to be printed Each variable must have one of the following forms S i j SR i j SI i j SP i j Magnitude of Si Real part of Sij Imaginary part of Sij Phase of S in degrees SDB i j Magnitude of S in dB 20 log S i j SG i j Group delay of Sij The port numbers are 7
35. ed in modifying fREEDA 1 2 A Multi Physics Simulator A number of concepts are supported that enable multiphysics modeling The most important of these are 1 Local reference terminals supplanting universal ground S13 S14 Different physics can have their own reference High speed circuits and microwave circuits do not posses a global ground and so the distributed nature of high speed circuits is naturally captured 8 CHAPTER 1 INTRODUCTION 2 Energy norm fREEDA uses an energy norm in computing solutions S12 15 Each terminal has two quantities potential and flux This contrasts with the con ventional circuit simulator paradigm of solving Kirchoff s Current Law which only addresses flux conservation This solution does not work when there is no flux 3 fREEDA uses state variables and parameterization S16 S1 so that homotopy tech niques do not need to be used to arrive at a solution For example fREEDA can arrive at a solution starting from a zero initial guess The modeling scope is far beyond the modeling capabilities of SPICE like simulators The modeling scope is defined by dx dEn T o eS AA a e J 2 oe eS dex t dirn t dix t dixn t O a ge ge xi t 71 Tp t 71 where F can be nonlinear Note that rue time delays are supported 1 fREEDA supports distributed circuits using UIUC developed technology to use frequency domain characterizations in transient analysis S6
36. eeda elements top of source code tree for elements used in generat ing element documentation These defaults can be overwritten by environment variables as discussed in Section 1 5 5 1 5 RELEASE NOTES 11 1 5 3 Setting up the Cygwin Environment 1 5 4 Setting Up bash_profile It is important that users set up the bash_profile correctly Here is a suitable bash_profile script Gets around the problem of spaces in the directory path This should be added to the file bash_profile in the login directory This is where you will go when you launch cygwin USER mbs USERNoSpaces mbs export HOME USER mount f s b C Documents and Settings USER USERNoSpaces export PATH USERNoSpaces freeda bin PATH export HOMEPATH USERNoSpaces FREEDA_HOME USERNoSpaces freeda 1 5 5 Environment Variables Generally the defaults will be fine for freeda and ifreeda users Environment variables are available to adapt to the local environment These environment variables can be set in the bash_profile file see Section 1 5 4 Environment Internal Default Variable Variable FREEDA_HOME env_freeda_home SUSER freeda FREEDA LIBRARY env_freeda library SFREEDA_HOME library FREEDA_PROJECTS env freeda projects SFREEDA_HOME projects FREEDA PATH env freeda path SFREEDA HOME freeda FREEDA_BIN env freeda bin SFREEDA PATH bin FREEDA_SIMULATOR env freeda simulator FREEDA_PATH simulator FREEDA ELEMENTS env freeda_ ele
37. eep frequencies starting at fmazx r UL f 0 in x and y of result pts i fft FFT argument should have 2 timedata fu cv points invfft inverse FFT argument should have frqdata cv fv 2 1 points cconv real circular FFT convolution signall fu fu with zero padding signal2 fu upcconv unpadded real circular FFT con signall fu fu volution signal2 fu sconv slow time domain real convolu signall fu fu tion signal2 fu fconv fast approximate real convolution signall fu fv signal2 fu lpbwfrq lowpass Butterworth filter fre frquec uz CUL quency response corner f order i 2 3 Example Simulation of a Folded Slot Antenna The netlist format is illustrated using an example This example uses local reference nodes For a discussion of the local reference node concept see chapter fREEDA provides the local references as a convenience tool but it is still possible to treat circuits in a conventional way using the node 0 or gnd as a global reference As a component of a spatial power combining circuit the CPW folded slot antenna 37 see Fig 2 1 with polarizers transmits an amplified version of an incident propagating field In Fig 2 1 the two orthogonal folded slots are connected to each other by a CPW with an inserted MMIC amplifier The system is modeled using the circuit of Fig 2 2 where electro magnetic modeling of this structure is discussed in 38 39 40 Note that three different local reference node
38. elli Sparse user s guide a sparse linear equation solver Dept of Electrical Engineering and Computer Sciences University of California Berkeley Calif 94720 Version 1 3a Apr 1988 R S Bain NNES user s manual 1993 Gnuplot Copyright C 1986 1993 1998 Thomas Williams Colin Kelley and many others M Valtonen and T Veijola A microcomputer tool especially suited for microwave circuit design in frequency and time domain Proc URSI IEEE National Convention on Radio Science Espoo Finland 1986 p 20 M Valtonen P Heikkil A Kankkunen K Mannersalo R Niutanen P Stenius T Veijola and J Virtanen APLAC A new approach to circuit simulation by object orientation 10th European Conference on Circuit Theory and Design Dig 1991 K Mayaram and D O Pederson CODECS an object oriented mixed level circuit and device simulator 1987 IEEE Int Symp on Circuits and Systems Digest 1987 pp 604 607 A Davis An object oriented approach to circuit simulation 1996 IEEE Midwest Symp on Circuits and Systems Dig 1996 pp 313 316 BIBLIOGRAPHY dd 29 30 31 32 33 34 35 36 37 38 39 40 41 B Melville P Feldmann and S Moinian A C environment for analog circuit simu lation 1992 IEEE Int Conf on Computer Design VLSI in Computers and Processors P Carvalho E Ngoya J Rousset and J Obregon Object oriented desig
39. erence CHAPTER 4 FREEDA COMMANDS junct junction node reference NOT CURRENTLY AVAILABLE line line edge reference NOT CURRENTLY AVAILABLE 4 14 2 Nomenclature The following nomenclature is used in describing the output operators type description scalar numeric types n a sae integer floating point real integer or floating point complex scalar integer floating point or complex scalar and mixed numeric types fv cu v fsv CSU SU prom floating point vector complex vector floating point or complex vector floating point scalar or vector complex scalar or vector scalar or vector any an appropriately promoted numeric type suffix to vector types x data required other types any string var file func any type character string variable name data file function pointer 4 14 OUT 59 56 4 14 3 Operators General Operators operator dup get put stripx shell function duplicate object get element of vector modify element of vector remove x data execute shell command UNIX EN VIRONMENT ONLY Network Operators vV vt it zl ymelem z0 gamma yp complex voltage vector at a termi nal complex current vector at a termi nal transient voltage vector at a termi nal transient current vector at a termi nal load impedance at a terminal NOT CURRENTLY SUPPORTED element of the y parameter matrix of a junction NOT CURRENTL
40. erse polish notation e g 3 4 add 7 result same e none cu cu cu fv fv fv 2 2 OUTPUT CONTROL add sub mult div real imag mag abs addition subtraction multiplication division real part imaginary part magnitude absolute value or magnitude contphase continuous phase prinphase principal value phase conj neg recip complex conjugate additive inverse negative reciprocal Mathematical Operators db db10 rad2deg deg2rad minlmt maxlmt diff deriv sum integ dB 20 log dB applied to power 10 log convert radians to degrees convert degrees to radians limit the minimum value limit the maximum value differences derivative sums integral su su fsv fsv SU SU SU SU SU SU SU SU CSU CSU CSU SU CSU CSU CSU SU SU arg fsv min f arg fsv mazx f fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsv fsu prom prom prom prom fsv fsv fsv fsv fsv fsv CSU su sv 21 22 Signal Processing Operators CHAPTER 2 NETLIST FORMAT smpltime current analysis timebase as x and none fu y of result sweepfrq current analysis sweep frequencies none fu as x and y of result smplcvt interpolate signall over timebase of signall v UL signal2 signal2 vx sweepcvt interpolate frq1 over sweep frequen frql v UL cies of frg2 frq2 vx maketime create timebase starting att Oin tmaz r UL x and y of result pts t makesweep create sw
41. fREEDA User s Manual Version 1 3 June 29 2007 Compiled on July 25 2007 Michael B Steer Carlos E Christoffersen Mark Basel Joseph N Hall July 25 2007 All trademarks are the property of their respective owners Contents 1 Introduction El Overview Of FREEDA o is ce tek DA PRR e PO 1 2 A Multi Physics Similator lt ir 2 8 el oN aa SS a 1 3 Supported Platforms ns a as thera od aes he ar Ee he ld ee ap 1 4 Command Line Options ala lt 4 01t 8 o ae A Teor Release Notesi e e oi RA a IS A E 1 5 1 Installation Notes bo 208 se ida do a e a A 1 5 2 Directory ac sd Era ari dat dota G 1 5 3 Setting up the Cygwin Environment 1 5 4 Setting Up bash profile Ls reine a 1 5 5 Environment Variables e ad amp Sorte amp Ade a 1 5 0 ICO B p is rat aa rs aaa hd LO Help cits var A eee o a A a ee Al a a 2 Netlist Format 2 1 Structure Of f REEDATM s Netlist 02 Di a e A acta dd 2d Lecaros y a ae eae Be E ace Rae NS 2 1 2 Continuation of Line ras das s dat A AG 23 AAA E hy an A SU SRA A SS ZA Comme o il o a a a a AL OPTIONS Sr ca al de a pl de A de A amp AS LLO modelky e ik ato geht Ny Ret ehh aed ede me 2 ea a 2 ie 2S 2 1 7 Analysis Specification SAA AA ok de Se Sh 2 1 8 Element Specification a aa 8 o a AA eS A a A eh Os Pa es ies a 2 1 10 SSD CIRO A oe eS ek dd eek hd SG eA AN Ge AS ae 2 Output Conrad reas oA ha OH Ae ahh Ae ads eed eRe eS Beek NAMES oy ogo Bite ke es a
42. fication NOT FULLY FUNCTIONAL as of fREEDA 1 3 Form The print specification controls the information that is reported as the result of various analyses Form print TRAN OutputSpecification OutputSpecification print AC OutputSpecification OutputSpecification print DC OutputSpecification OutputSpecification print DISTO DistortionOutputSpecification DistortionReportType DistortionOutputSpecification DistortionReportType gt TRAN is the keyword specifying that this print statement controls the reporting of results of a transient analysis initiated by the TRAN statement AC is the keyword specifying that this print statement controls the reporting of results of a small signal AC analysis initiated by the AC statement DC is the keyword specifying that this print statement controls the reporting of results of a DC analysis initiated by the DC statement NOISE is the keyword specifying that this print statement controls the reporting of results of a noise analysis initiated by the NOISE statement DISTO is the keyword specifying that this print statement controls the reporting of results of a small signal AC distortion analysis initiated by the DISTO state ment OutputSpecification specifies the voltage or current to be reported in a tabular format of up to 8 columns plus an initial column with the sweep variable Voltages may be specified as an absolute voltage at a node V Term
43. file name or by just adding out if the input file name does not ends with net 10 CHAPTER 1 INTRODUCTION When not running a netlist file KREEDA rrTM accepts the following command line flags Flag Description a generate analysis catalog files c catalog generate element catalog files c elementName generate catalog files for teh element elementName must be lower case h help get help this message 1 licence show license information v version print program version fREEDA is self documenting for analyses and elements Data is taken from the data structures for the elements authors of analyses and elements often provide more extensive documentations 1 5 1 5 1 Release Notes Installation Notes The installation instructions are located in the file README install in the src directory 1 5 2 Directory Structure The simulator assumes the directory structure e U e U e U SER freeda SER library where the libraries reside and not overwritten by new releases SER freeda projects where the projects reside and not overwritten by new releases e USER freeda freeda x x the release In e U e U e U s freeda x x freeda soft link to create USER freeda freeda SER freeda freeda bin SER freeda freeda doc documentation for this release SER freeda freeda simulator top of source code tree for fREEDA and ifREEDA e SUSER freeda fr
44. ger or floating point complex scalar integer floating point or complex nO 3H scalar and mixed numeric types fv floating point vector cu complex vector v floating point or complex vector fsv floating point scalar or vector CSU complex scalar or vector su scalar or vector any prom an appropriately promoted numeric type x suffix to vector types x data required other types any any type string character string var variable name file data file func function pointer 2 2 5 Qualifiers type description qualifiers network types term terminal or node element circuit element 20 2 2 6 Operators General Operators operator dup get put stripx pack system function duplicate object get element of vector modify element of vector remove x data concatenates last vz s on stack execute shell command 2 2 7 Network Operators v if xf vt it ut complex freq domain voltage vec tor at a terminal complex freq domain current vec tor at a terminal complex freq domain state variable vector at a terminal time domain voltage vector at a ter minal time domain current vector at a ter minal time domain voltage vector at an element port RPN Arithmetic Operators CHAPTER 2 NETLIST FORMAT argument s any arg v index 1 arg v index 1 val s Ux variable num ber of vg string term term term term term elem Arithmetic Operators for rev
45. h de Se ee sO ewe ee ee o 56 AO amp Great di ih oe Kee AS Soh ee AE AR AAA Shes 61 ANG eM i Rs ee E a ea ok hi 61 ANTE GRAINS ra ee Seng Smt Se eile ae oat oe Se et ak es Ge ee ie NS 61 Acie trai basel ieus aasi 8S Sie OG ok ee A Bh Ale BG we eo 62 5 Output Control 65 Sl Output Commands o ds Ds et pn eh o oi 65 pile aS WWII ci ok Oe Se ae ce ath ad gia ag et Cae oR te a dee 65 eden PVG a eh a ee ede BJs ea NE 65 5 1 3 Running a System Command era N ee eed eee a 66 Bl Nomenclatires E ata oko a ead dt gated oe ARA ALA 66 A oo God o gt ext eee a beh ee See he Se ee 67 GA a ox ard tu Regs eas eg sa pee els SS Wa kD Me we OD Mee a ee 68 5 4 1 General Operators lt 2 2 8 424 4246 ow eer Ae eS eS OS 68 5 4 2 Network Operators e ye icre de eg be a ee le EG 68 543 RPN Arithmetic Operators lt 4 wet acta A SRS 68 5 4 4 Mathematical Operators 4 2 oid ee OO EDS Bie RIE 69 5 4 5 Signal Processing Operators a ee ae ee PE oe PAE SG 70 6 Graphical User Interface 71 DEL Introduction e AAA ee ee ot ed te ee A 71 62 Phe Netlist Editor yet des de AAA RY 71 6 3 The Analysis Window Zaiat Bi ae ia Bt 73 CONTENTS 6 4 The Output Viewer Window CONTENTS Chapter 1 Introduction 1 1 Overview of fREEDA fREEDA is a multiphysics simulator that is based on the use of compact models as used in circuit simulators FfREEDA Y carries a Gnu Public License GPL and is available at http www freeda org ifREEDA
46. he Liskov Substitution Principle C Report March 1996 R C Martin The Interface Segregation Principle C Report Aug 1996 R C Martin UML Tutorial Part 1 Class Diagrams Engineering Notebook Col umn C Report Aug 1997 75 76 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 BIBLIOGRAPHY A D Robison C Gets Faster for Scientific Computing Computers in Physics vol 10 pp 458 462 1996 J R Cary and S G Shasharina Comparison of C and Fortran 90 for Object Oriented Scientific Programming Available from Los Alamos National Laboratory as Report No LA UR 96 4064 The Object Oriented Numerics Page http oonumerics org Silicon Graphics Standard Template Library Programmer s Guide http www sgi com Technology STL T Veldhuizen Techniques for Scientific C Version 0 3 Indiana Univer sity Computer Science Department 1999 http extreme indiana edu tveld hui papers techniques A Griewank D Juedes J Utke Adol C A Package for the Automatic Differenciation of Algorithms Written in C C ACM TOMS vol 22 2 pp 131 167 June 1996 R Pozo MV v 1 5a Reference Guide National Institute of Standards and Tech nology 1997 M Frigo and S G Johnson FFTW User s Manual Massachusetts Institute of Tech nology September 1998 K S Kundert and A Songiovanni Vincent
47. icrowave and Guided Wave Letters vol 4 April 1994 pp 112 114 M B Steer M N Abdullah C Christoffersen M Summers S Nakazawa A Khalil and J Harvey Integrated electro magnetic and circuit modeling of large microwave and millimeter wave structures Proc 1998 IEEE Antennas and Propagation Symp pp 478 481 June 1998 M N Abdulla U A Mughal and M B Steer Network Charactarization for a Finite Array of Folded Slot Antennas for Spatial Power Combining Application Proc 1999 IEEE Antennas and Propagation Symp July 1999 U A Mughal Hierarchical approach to global modeling of active antenna arrays M S Thesis North Carolina State University 1999 Rational Software UML Resources http www rational com 78 42 43 44 45 La 46 47 48 49 50 51 52 53 BIBLIOGRAPHY M B Steer J F Harvey J W Mink M N Abdulla C E Christoffersen H M Gutier rez P L Heron C W Hicks A I Khalil U A Mughal S Nakazawa T W Nuteson J Patwardhan S G Skaggs M A Summers S Wang and A B Yakovlev Global modeling of spatially distributed microwave and millimeter wave systems IEEE Trans Microwave Theory Techniques June 1999 pp 830 839 C E Christoffersen S Nakazawa M A Summers and M B Steer Transient analysis of a spatial power combining amplifier 1999 IEEE MTT S Int Microwave Symp Dig June
48. ile this is no longer distributed with fREEDA it still exists fREEDA hrmTM allows the addition or removal of new circuit elements in a very simple way It is designed so that new circuit elements can be coded and incorporated into the program without modification to the high level simulator and editor It is also quite simple to add a new analysis type Some insight into the program architecture is given in chapter 1 3 Supported Platforms fREEDA hrmTM has been developed using the GNU compilers All platforms supported by these compilers should be able to run FfREEDA rmTM Most of the program is written in ANSI C using object oriented techniques but it also contains off the shelf libraries and routines written in C and FORTRAN The user s interface is written in Java fREEDA hrmTM has been compiled and run successfully in Solaris and HPUX Linux Windows cygwin with virtually no alteration The main development environment is linux but cygwin should work just as well 1 4 Command Line Options The syntax for the simulator engine invocation is freeda lt netlist file gt lt output file gt or on Cygwin freeda exe lt netlist file gt lt output file gt where lt netlist file gt is the input file name normally ended with net and lt output file gt is the output file name normally ended with out If the output file name is omitted the default output name is formed by replacing net with out in the input
49. inalName or the voltage at one node with respect to that at another node e g V TerminaliName Terminal2Name For the reporting of the results of an AC analysis the following outputs can be specified by replacing the V as follows VR real part VI imaginary part VM magnitude VP phase VDB 10log 10 magnitude In AC analysis the default is VM for magnitude 4 5 PRINT PRINT SPECIFICATION 39 Currents are specified by referencing the name of the voltage source through which the current is measured e g I V VoltageSourceName For the reporting of the results of an AC analysis the following outputs can be specified by replacing the I as follows IR real part II imaginary part IM magnitude IP phase IDB 10log 10 magnitude In AC analysis the default is IM for magnitude NoiseOutputSpecification specifies the noise measure to be reported The two options are ONOISE which reports the output noise and INOISE which reports the equiva lent input noise See the NOISE statement for a detailed explanation It must be one of the following ONOISE RMS output noise voltage DB ONOISE output noise voltage in dB 20 log ONOISE INOISE RMS equivalent input noise voltage DB INOISE equivalent input noise voltage in dB 20 log INOISE GAIN voltage gain DB GAIN voltage gain in dB 20 log GAIN GT transducer gain DB GT transducer gain in dB 10 log GT NF spot noise factor DB NF s
50. inition and instantiation is pretty much as in Spice The definition may appear after or before the instatiation in the netlist Node names inside the subcircuit are local to the subcircuit The following is an example for a three terminal subcircuit subckt era6 1 5 gndi subcircuit definition ends xamp1 10 50 O era6 The name of the subcircuit instance must begin with x 2 2 Output Control fREEDA has an interpretive output language which uses a reverse polish notation syntax The operators operate on a stack and as an operation is performed zero or more arguements are consumed by an opertor This is an extremely powerful way of controlling output Output Commands out write lt qualifier gt lt value gt lt operator gt in lt filename gt or 18 CHAPTER 2 NETLIST FORMAT out plot lt qualifier gt lt value gt lt operator gt lt gnuplotPostambleScript gt lt gnu plotPreambleScript gt in lt filename gt or out system lt string gt 2 2 1 Writing out write lt qualifier gt lt value gt lt operator gt in lt filename gt The write command writes what is left on the stack into the file filename Example out write term 4 vt in 4v out This writes the time domain voltage at terminal 4 using the file 4v out as an output file 2 2 2 Plotting out plot lt qualifier gt lt value gt lt operator gt lt gnuplotPostambleScript gt lt gnu plotPrea
51. io lt max max ifx gt max if dup dup x 0 2 3 ee PEM PLO 4 3x if lt 0 It is good practice to enforce precedence by using parentheses That is use dup a rather than dup xz Chapter 4 fREEDA Commands 4 1 inc Include Statement The inc statement is an efficient way to include subcircuits and common netlist code Form lib FileName Filename is the name of the file to be read Note 1 It must contain only model statements subcircuit definitions between subckt and ends statements and 1ib statements 2 The include file Filename is searched in the current directory INC and the LIB function similarly with the exception that LIB searches for the file in a specific directory while INC searches for the file in current directory 31 32 CHAPTER 4 FREEDA COMMANDS 4 2 lib Library Statement The 1ib statement is an efficient way to include model statements and subcircuits Form lib FileName Filename is the name of the library file Note 1 It must contain only model statements subcircuit definitions between subckt and ends statements and 1ib statements 2 The library file Filename is searched in the directory pointed to by the environment variable specified by the environment variable FREEDA_LIBRARY Libraries could be included using either the INC statement or by the LIB statement INC and the LIB function similarly with the exception that LIB searches for
52. ity in a complicated expression it may be necessary to use an intermediate variable expre Table 3 2 Expression functions Operator Syntax Description SIN sin x sine argument in radians COS cos x cosine argument in radians TAN tan x tangent argument in radians ASIN asin x or arcsin z arcsine result in radians ACOS acos x or arcsin z arccosine result in radians ATAN atan x or arcsin z arctangent result in radians SINH sinh x hyperbolic sine COSH cosh z hyperbolic cosine TANH tanh x hyperbolic tangent EXP exp x exponentiation e ASINH asinh x or arcsinh x arc hyberbolic sine ACOSH acosh x or arccosh x arc hyberbolic cosine ATANH atanh x or arctanh x arc hyberbolic tangent ABS abs 1 absolute x SQRT sqrt x square root yz LN ln x log to base e of x LOG log x or log10 x log to base 10 of x f 1 ifx gt 0 SIGN sign x sign of z EE DB db x decibell 10 log z min if x lt min LIMIT Limit x min maz limit 4 maz if x lt mar x otherwise TABLE table z 1 Y1 En Yn table lookup see note 1 DUPLICATE dup z duplicates x see note 2 IF ice y if x not zero conditional ee z if x is zero 29 30 CHAPTER 3 ALGEBRAIC EXPRESSIONS 1 The dup function duplicates an operand It provides a means to use a sub expression twice while only evaluating it once For example Operation Expansion dup e dup dup x tasa limit dup x max re x
53. mbleScript gt in lt filename gt The plot command writes what is left on the stack into the file filename and initiates a plot The file can be plotted interactively using the fREEDA Output Viewer Also a file named lt filename gt cmd is created This file is a gnuplot 24 script file that plots the desired data The Scripts are optional strings and are used to send additional commands to the gnuplot program lt gnuplotPreambleScript gt is a string of semicolon delineated gnuplot commands prior to the plot command which is automatically issued lt gnuplotPostambleScript gt is a string of semicolon delineated gnuplot commands after the plot command If the option gnuplot is present in the options card the gnuplot program will be called automatically by fREEDA Note that this is generally not needed when using the Output Viewer Example out plot term 4 vt in 4v out There are no script commands here This plots the time domain voltage at terminal 4 using the file 4v out as an output file This functions as both a write and a plot 2 2 3 Running a System Command out system lt string gt Use this to run the string as a command to the operating system 2 2 OUTPUT CONTROL 19 Example out system echo Hello Prints Hello on the screen 2 2 4 Nomenclature The following nomenclature is used in describing the output operators type description scalar numeric types integer floating point real inte
54. ments SFREEDA_SIMULATOR elements FREEDA DOCUMENTATION tmp env freeda documentation Documentation developers should set the variable to FREEDA_PATH doc FREEDA_WEB_DOCUMENTATION http www freeda org doc env_freeda_web_documentation Documentation developers should set the variable to FREEDA PATH doc FREEDA_BROWSER env_freeda_browser cygstart default for CygWin cygstart is not a browser but works this way in fREEDA as it uses the registry table to open the ap propriate application for a file FREEDA_BROWSER env_freeda_browser firefox default if not CygWin environment 12 CHAPTER 1 INTRODUCTION 1 5 6 Known Bugs A list of known simulator bugs is located in the file README bugs in the src directory Known element model bugs are provided in the element documentation 1 6 Help If you need help contact one of the developers or send email to m b steerQieee org Several groups use fREEDA but these are early days for FREEDA so you may have issues that have not been addressed Chapter 2 Netlist Format The netlist input of fREEDA is almost compatible to Spice There are a number of additional features and these are documented below The focus of the additions is to facilitate the addition of new models allow variables and support hierarchical descriptions of coupling in a network 2 1 Structure of fREEDA s Netlist The fREEDA netlist mainly consists in a title an analysis specification
55. n of microwave circuit simulators 1993 IEEE MTT S Int Microwave Symp Digest June 1993 pp 1491 1494 C E Christoffersen and M B Steer Implementation of the local reference concept for spatially distributed circuits Int J of RF and Microwave Computer Aided Eng vol 9 No 5 1999 A I Khalil and M B Steer Circuit theory for spatially distributed microwave circuits IEEE Trans on Microwave Theory and Techn vol 46 Oct 1998 pp 1500 1503 C E Christoffersen M Ozkar M B Steer M G Case and M Rodwell State variable based transient analysis using convolution EEE Transactions on Microwave Theory and Techniques Vol 47 June 1999 pp 882 889 C E Christoffersen M B Steer and M A Summers Harmonic balance analysis for systems with circuit field interactions 1998 IEEE Int Microwave Symp Dig June 1998 pp 1131 1134 B Speelpenning Compiling Fast Partial Derivatives of Functions Given by Algo rithms Ph D thesis Under the supervision of W Gear Department of Computer Science University of Illinois at Urbana Champaign Urbana Champaign Ill January 1980 T F Coleman y G F Jonsson The Efficient Computation of Structured Gradients us ing Automatic Differentiation Cornell Theory Center Technical Report CTC97TR272 April 28 1997 H S Tsai M J W Rodwell and R A York Planar amplifier array with improved bandwidth using folded slots IEEE M
56. n other words if a coupled line model such as cmlin is specified as the line model and the couple statement is not used then the simulator will default to using the uncoupled model in this case mlin This is not a runtime option but is fixed inside the code modules for each model 50 CHAPTER 4 FREEDA COMMANDS 4 11 1 locate Identify Location of Terminals This command is used to define the physical location or a terminal These cartesian coor dinates refer to the locations of the logical terminals of the device The units are meters The syntax is locate term x y locate term x y Z where term is one of the terminals of a device in the netlist and x y and z if provided are the coordinates of that terminal Be default z 0 Credits Name Affiliation Date Links Michael Steer NC State University Sept 2000 m b steerQieee org www ncsu edu 4 12 MODEL 51 4 12 model Description model is used to identify the elements that combine to create a coupled element The syntax of the model statement is model identifier element pari par2 e identifier is any character string name assigned by the user by which this particular model will be referred e model_type is the model name as defined in the c file associated with this model and as declared in pd_physdef c e parl par2 is the parameter list The model statement must be used before it is referred to in the netlist All fREEDA elements ca
57. n utilize a model statement 52 CHAPTER 4 FREEDA COMMANDS 4 13 options Description options is used to identify the elements that combine to create a coupled element This command allows various runtime options and user defined netlist variables to be set prior to execution The various system options will be discussed later in this appendix but the general syntax is options variable value options variable string The first case is used for assigning a numeric value to a variable and the second is used to assign a string Note that double quote marks must be used to surround the string Not typecasting of numeric variables is performed in the options command and thus no distinction is made between floating point and integer values Therefore 2 is the same as 2 00 until the value is actually used in the simulator Exponential notation is denoted by the e operator i e 0 001 1 0e 3 Note that string variables may contain any symbols but must be continuous with no white space between characters i e V_high not V high 4 14 OUT 53 4 14 out Form out write lt qualifier gt 1 lt value gt lt operator gt in lt filename gt This write what is left on the stack into the file filename or out system lt qualifier gt lt value gt lt operator gt This performs a system call of the string equivalent of whatever is left on the stack out terminal name termin
58. pot noise figure 10 log NF SNR output signal to noise ratio DB SNR output signal to noise ratio in dB 20 log SNR TNOISE output noise temperature SParameterOutputSpecification specifies the S parameter output variables that are to be printed Each variable must have one of the following forms S i j Magnitude of Sj SR i j Real part of S SI i j Imaginary part of Sij SP i j Phase of S j in degrees SDB i j Magnitude of 5 in dB 20 log S i j SG i j Group delay of Sy 40 CHAPTER 4 FREEDA COMMANDS The port numbers are i j which are specified using the PNR keyword when the port element is specified DistortionOutputSpecification specifies the distortion component to be reported in a tabular format of up to 8 columns plus an initial column with the sweep variable The DistortionOutputSpecification is one of the following HD2 the second harmonic distortion HD3 the second harmonic distortion SIM2 the sum frequency intermodulation component DIM2 the difference frequency intermodulation compo nent DIM3 the third order intermodulation component See the DISTO statement for a description of these distortion components DistortionReportType specifies the format for reporting the distortion components It must be one of the following R real part I imaginary part M magnitude P phase DB 10log 10 magnitude The default is M for magnitude Note 4 5 PRINT PRINT SPE
59. ransmissionLineName Voltage at port named PortName either A or B of the transmission line device named TransmissionLineName such as T5 e g VA M5 Two Terminal Device Types Supported for DCand Transient Analysis Reporting 42 CHAPTER 4 FREEDA COMMANDS The single character identifier for the following elements as well as the rest of the device name can be used as the DeviceName in the I DeviceName and I DeviceName output specifications Element Type Description capacitor diode voltage controlled voltage source current controlled current source voltage controlled current source current controlled voltage source independent current source inductor resistor independent voltage source lt 3ZPHTIdoMTmndua Multi Terminal Device Types Supported for DCand Transient Analysis Reporting The single character identifier for the following elements as well as the rest of the device name can be used as the DeviceName in the I TerminalName DeviceName V TerminalName DeviceName and V TerminalNamel TerminalName2 DeviceName output specifications Element Type Description B GaAs MESFET Terminals D drain G gate S source J JFET Terminals D drain G gate S source M MOSFET Terminals B bulk or substrate D drain G gate S source Q BJT Terminals C collector B base E emitter S source 4 5 PRINT PRINT SPECIFICATION 43 AC
60. rmination of Periodic Response of Nonlinear Systems IEEE Trans on Circuits and Systems Vol CAS 23 No 2 Feb 1976 A Materka and T Kacprzak Computer Calculation of Large Signal GaAs FET Ampli fier Characteristics IEEE Trans on Microwave Theory and Techniques Vol MTT 33 No 2 Feb 1985 M B Steer Transient and Steady State Analysis of Nonlinear RF and Microwave Circuits ECE603 class notes August 15 1996 BIBLIOGRAPHY 79 54 55 56 57 58 59 60 61 62 63 64 65 J F Sevic M B Steer and A M Pavio Nonlinear Analysis Methods for the Simulation of Digital Wireless Communication Systems International Journal of Microwave and Millimiter Wave Computer Aided Engineering Vol 6 No 3 197 216 1996 J Kunisch and I Wolff Steady State Analysis of Nonlinear Forced and Autonomous Mi crowave Circuits Using the Compression Approach International Journal of Microwave and Millimeter Wave Computer Aided Engineering Vol 5 No 4 241 255 1995 E Ngoya A S R Sommet and R Qu r Steady State Analysis of Free or Forced Oscillators by Harmonic Balance and Stability Investigation of Periodic and Quasi Periodic Regimes International Journal of Microwave and Millimeter Wave Computer Aided Engineering Vol 5 No 3 210 223 1995 Compact Software Microwave Harmonica Elements Library 1994 M J D Powell A hybrid method for nonlinear equations Numerical Me
61. s are required EM modeling yields a port based y parameters of the antennas at each frequency of interest The transfer of data between the EM and circuit simulators typically a file includes a header with port grouping information a port group ing includes terminals associated with a specific local reference node This is required by 2 3 EXAMPLE SIMULATION OF A FOLDED SLOT ANTENNA 23 L w Metal he Width Folded Slot l t slot width port INPUT Z CPW line port 2 MMIC AMPLIFIER 2 a up and out OUTPUT Ground Plane Figure 2 1 Unit cell of the CPW antenna array AMMETER AMMETER 11 10 20 r 22 INPUT OUTPUT FIELD ANTENNAS FIELD EXCITATION o Y EXCITATION a 100 TE CPW TRANSMISSION LINES y Je Figure 2 2 Circuit model of the unit cell The diamond symbol indicates a local reference node 24 CHAPTER 2 NETLIST FORMAT the circuit simulator in order to expand the port based matrix into nodal form and also to check the connectivity of the spatially distributed circuit Below is shown the data file for this example Each port belong to a different group so the element has four terminals After reading the header the circuit simulator knows the number of elements of the matrix and the port number and local reference corresponding to each row and column of the matrix
62. s the reporting of results of a small signal AC analysis initiated by the ac statement dc is the keyword specifying that this plot statement controls the reporting of results of a DC analysis initiated by the dc statement noise is the keyword specifying that this plot statement controls the reporting of results of a noise analysis initiated by the noise statement OutputSpecification specifies the voltage or current to be plotted against the sweep variable The sweep variable is dependent on the type of analysis Voltages may be specified as an absolute voltage at a terminal V TerminalName or the voltage at one terminal with respect to that at another terminal e g V TerminaliName Terminal2Name 4 4 PLOT PLOT SPECIFICATION 39 For the reporting of the results of an AC analysis the following outputs can be specified by replacing the V as follows VR real part VI imaginary part VM magnitude VP phase VDB 10log 10 magnitude In AC analysis the default is VM for magnitude Currents are specified by referencing the name of the voltage source through which the current is measured e g I V VoltageSourceName For the reporting of the results of an AC analysis the following outputs can be specified by replacing the I as follows IR real part II imaginary part IM magnitude IP phase IDB 10log 10 magnitude In AC analysis the default is IM for magnitude PlotLimits are optional and can be place
63. se of the program This GUI is written using the Java language so it can be used in every system where Java is supported In this chapter we describe the different components of the GUI This has now been replaced by iFREEDA but this documentation is provided for completeness and the code is available 6 2 The Netlist Editor The netlist editor is a simple text editor combined with a simulation manager The editor window is shown in Figure 6 1 Besides the normal editing commands the editor provides buttons and keyboard shortcuts to analyze the netlist being edited and see the output of the simulation ql 72 CHAPTER 6 GRAPHICAL USER INTERFACE Transim Netlist Editor File Edit Simulation Analyze View Output Figure 6 1 Netlist Editor window Simulator Output Analyze View Output Figure 6 2 Analysis window 6 3 THE ANALYSIS WINDOW 73 Transim Output Viewer unityp out Figure 6 3 Output Viewer window The editor can edit several files and handle multiple simulations at once by spawning multiple windows 6 3 The Analysis Window The analysis window is used to show the progress of a simulation Figure 6 2 The upper subwindow displays important messages such as when the program starts or stops and also warnings and errors that may occur during the simulation The lower subwindow shows the progress of the simulation The buttons are self explaining The Analyze button changes to
64. sescale scale factor for float any impulse responses ytthresthru relative threshold level float 0 1 for thru and self impulse response terms ytthrescross relative threshold level float 0 1 for cross impulse response terms tolerance stopping difference float any for successive values in Newton iteration maxNoOflterates Maximum number of int any Newton iteration steps per analysis point LPFCornerFrequency corner frequency when float hz using LP filter 63 64 CHAPTER 4 FREEDA COMMANDS Chapter 5 Output Control fREEDA has an interpretive output language which uses a reverse polish notation syntax The operators operate on a stack and as an operation is performed zero or more arguements are consumed by an opertor This is an extremely powerful way of controlling output 5 1 Output Commands out write lt qualifier gt lt value gt lt operator gt in lt filename gt or out plot lt qualifier gt lt value gt lt operator gt lt gnuplotPostambleScript gt lt gnu plotPreambleScript gt in lt filename gt or out system lt string gt 5 1 1 Writing out write lt qualifier gt lt value gt lt operator gt in lt filename gt The write command writes what is left on the stack into the file filename Example out write term 4 vt in 4v out This writes the time domain voltage at terminal 4 using the file 4v out as an output file 5 1 2 Plotting ou
65. t plot lt qualifier gt lt value gt lt operator gt lt gnuplotPostambleScript gt lt gnu plotPreambleScript gt in lt filename gt 65 66 CHAPTER 5 OUTPUT CONTROL The plot command writes what is left on the stack into the file filename and initiates a plot The file can be plotted interactively using the fREEDA Output Viewer Also a file named lt filename gt cmd is created This file is a gnuplot 24 script file that plots the desired data The Scripts are optional strings and are used to send additional commands to the gnuplot program lt gnuplotPreambleScript gt is a string of semicolon delineated gnuplot commands prior to the plot command which is automatically issued lt gnuplotPostambleScript gt is a string of semicolon delineated gnuplot commands after the plot command If the option gnuplot is present in the options card the gnuplot program will be called automatically by fREEDA Note that this is generally not needed when using the Output Viewer Example out plot term 4 vt in 4v out There are no script commands here This plots the time domain voltage at terminal 4 using the file 4v out as an output file This functions as both a write and a plot 5 1 3 Running a System Command out system lt string gt Use this to run the string as a command to the operating system Example out system echo Hello Prints Hello on the screen 5 2 Nomenclature The following nomencl
66. thods for Nonlinear Algebraic Equations P Rabinowitz Editor Gordon and Breach 1988 K S Kundert J K White and A Sangiovanni Vincentelli Steady state methods for simulating analog and microwave circuits Boston Dordrecht Kluwer Academic Pub lishers 1990 M B Steer C Chang and G W Rhyne Computer Aided Analysis of Nonlinear Microwave Circuits Using Frequency Domain Nonlinear Analysis Techniques The State of the Art International Journal of Microwave and Millimeter Wave Computer Aided Engineering Vol 1 No 2 181 200 1991 R J Gilmore and M B Steer Nonlinear Circuit Analysis Using the Method of Har monic Balance A Review of the Art II Advanced Concepts International Journal of Microwave and Millimeter Wave Computer Aided Engineering Vol 1 No 2 159 180 1991 C R Chang Computer Aided Analysis of Nonlinear Microwave Analog Circuits Us ing Frequency Domain Spectral Balance Ph D Thesis Department of Electrical and Computer Engineering North Carolina State University Raleigh NC 1990 D D Amore P Maffezzoni and M Pillan A Newton Powell Modification Algorithm for Harmonic Balance Based Circuit Analysis IEEE Transactions on Circuits and Systems I Fundamental Theory and Applications Vol 41 No 2 February 1994 Y Thodesen K Kundert Parametric harmonic balance IEEE MTT S International Microwave Symposium Digest Vol 3 1996 IEEE Piscataway NJ USA pp 1361 1364 A Ushida and
Download Pdf Manuals
Related Search
Related Contents
PDF Bedienungsanleitung PD-E +050004122-29_r_1-2 PJEZ DISTR_GB e SPA.indd Mini Electric™ Plus - Medicare, Health and Living Copyright © All rights reserved.
Failed to retrieve file