Simulation
Simulation
TM
2009
AWRDE Simulation and Analysis Guide Version 9.0 Edition AWR Corporation
1960 E. Grand Avenue, Suite 430 El Segundo, CA 90245 USA Phone 310.726.3000 Fax 310.726.3005 Website www.awrcorp.com support@awrcorp.com Technical Support Phone 888.349.7610
2009 AWR Corporation. All Rights Reserved. Printed in the United States of America. No part of this guide may be reproduced in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the express written permission of AWR Corporation. Analog Office , APLAC , AWR , and Microwave Office and corresponding logos are registered trademarks of AWR Corporation. ACETM, Advancing the wireless revolutionTM, AnalystTM, AWR ConnectedTM, AWR Design EnvironmentTM, AWR Signal IntegrityTM, AXIEMTM, EMSightTM, EM SocketTM, iNetTM, RFATM, RFBTM, RFITM, TestWaveTM, Unified Data ModelTM, and Visual System SimulatorTM, and corresponding logos are trademarks of AWR Corporation. All other product and company names mentioned herein may be the trademarks or registered trademarks of their respective owners. The information in this guide is believed to be accurate. However, no responsibility or liability is assumed by AWR Corporation for its use.
1. Preface .......................................................................................................................................... 11 1.1. About This Book .................................................................................................................. 12 1.1.1. Additional Documentation ........................................................................................... 12 1.1.2. Typographical Conventions .......................................................................................... 13 1.2. Getting Online Help .............................................................................................................. 14 2. Simulation Basics ............................................................................................................................ 21 2.1. Measurement-based Simulation ............................................................................................... 22 2.2. Choosing a Simulator Type ..................................................................................................... 24 2.3. Swept Parameter Analysis ...................................................................................................... 26 2.3.1. Sweep Control Types .................................................................................................. 26 2.3.2. Displaying Swept Parameter Data ................................................................................ 215 2.3.3. Number of Sweep Points vs. Number of Simulation Points ............................................... 220 2.4. Tuning, Optimizing, and Yield .............................................................................................. 223 2.4.1. Variable Browser ...................................................................................................... 223 2.4.2. Tuning .................................................................................................................... 224 2.4.3. Optimization ............................................................................................................ 225 2.4.4. Yield Analysis .......................................................................................................... 240 2.5. Working with Hierarchy ....................................................................................................... 248 2.6. Using Simulation Filters and Switch View Lists ........................................................................ 249 2.6.1. Simulation Filters ..................................................................................................... 249 2.6.2. Switch Views and Switch Lists ................................................................................... 249 2.7. Using Scripted APLAC ........................................................................................................ 257 2.7.1. Using the Scripted APLAC Simulator ........................................................................... 257 2.7.2. Using SCRIPT Blocks ............................................................................................... 257 3. DC Analysis .................................................................................................................................. 31 4. Linear Analysis ............................................................................................................................... 41 4.1. Using the Linear Simulator ..................................................................................................... 42 4.1.1. Linear Solver ............................................................................................................. 42 4.1.2. Linear Circuit Design .................................................................................................. 42 4.1.3. Linear Noise Analysis ................................................................................................. 42 5. AC Analysis ................................................................................................................................... 51 5.1. AC Noise Analysis ................................................................................................................ 52 6. Harmonic Balance Analysis ............................................................................................................... 61 6.1. Harmonic Balance (Nonlinear) Analysis .................................................................................... 62 6.1.1. Harmonic Balance Background ..................................................................................... 62 6.1.2. Accuracy, Speed, and Convergence ................................................................................ 64 6.1.3. Harmonic Balance Options ........................................................................................... 68 6.1.4. Setting Up HB Simulations ......................................................................................... 615 6.1.5. Harmonic Balance Examples ....................................................................................... 616 6.1.6. Nonlinear Measurements ............................................................................................ 623 6.2. Multi-rate (Nonlinear) Harmonic Balance Analysis .................................................................... 626 6.2.1. Using MRHB ........................................................................................................... 629 6.3. Nonlinear Noise Analysis ..................................................................................................... 632 6.3.1. Noise in Nonlinear Circuits ......................................................................................... 632 6.3.2. Noise Analysis ......................................................................................................... 633 6.3.3. Performing Noise Simulations ..................................................................................... 634 6.4. Nonlinear Oscillator Analysis ................................................................................................ 639 6.4.1. Oscillator Analysis in the Frequency Domain ................................................................. 639 6.4.2. The Oscillator Probe .................................................................................................. 639 6.4.3. Analysis Flow .......................................................................................................... 640 6.4.4. Performing Oscillator Simulations ................................................................................ 641
AWR Proprietary
Contents 6.4.5. Oscillator Tuning ...................................................................................................... 645 6.4.6. Phase Noise ............................................................................................................. 646 6.5. Linear Harmonic Balance Analysis ........................................................................................ 647 7. Transient Analysis ........................................................................................................................... 71 7.1. Transient Analysis Basics ....................................................................................................... 72 7.1.1. Measurements Using Transient Analysis Simulators .......................................................... 72 7.1.2. Data File Size ............................................................................................................ 72 7.1.3. Restrictions on the Circuit Topology .............................................................................. 73 7.2. Sources in Transient Simulators .............................................................................................. 74 7.3. Models in Transient Simulators ............................................................................................... 75 7.3.1. Causality of the Models ............................................................................................... 75 7.4. HSPICE Specific Concerns .................................................................................................. 713 7.4.1. Common HSPICE Options ......................................................................................... 713 7.4.2. Divergent Transient Simulations in HSPICE .................................................................. 713 8. Electromagnetic Analysis .................................................................................................................. 81 8.1. Creating EM Structures with Extraction .................................................................................... 82 8.1.1. Extraction Overview ................................................................................................... 82 8.1.2. Extraction Setup Basics ............................................................................................... 84 8.1.3. Extraction Flow .......................................................................................................... 84 8.1.4. Schematic Layout ....................................................................................................... 84 8.1.5. Extract Block ........................................................................................................... 812 8.1.6. STACKUP Block ...................................................................................................... 814 8.1.7. Selecting Models and Shapes for Extraction ................................................................... 814 8.1.8. Viewing EM Structures Before Simulation ..................................................................... 816 8.1.9. Hierarchy ................................................................................................................ 816 8.1.10. EM Optimization, Tuning, and Yield Analysis ............................................................. 817 8.1.11. Layout Issues with EMSight ..................................................................................... 818 8.2. EM Editor .......................................................................................................................... 821 8.2.1. Creating EM Structures without Extraction .................................................................... 821 8.2.2. EM Annotations and Cut Planes .................................................................................. 840 8.2.3. Configuring Stackup .................................................................................................. 854 8.3. Automated Circuit Extraction (ACE) ....................................................................................... 859 8.3.1. Overview of Extraction Setup ...................................................................................... 859 8.3.2. Advanced Extraction Topics ........................................................................................ 869 8.4. EMSight ............................................................................................................................ 873 8.4.1. The Electromagnetic Solver ....................................................................................... 873 8.4.2. EMSight Enclosure ................................................................................................... 873 8.4.3. Adding Ports ............................................................................................................ 874 8.4.4. De-embedding .......................................................................................................... 879 8.4.5. Conductor Meshing ................................................................................................... 882 8.4.6. EM Solver Options ................................................................................................... 883 8.4.7. The Moment Tables in EMSight .................................................................................. 884 8.4.8. Using the EMSight Simulator Effectively ...................................................................... 884 8.4.9. Advanced Frequency Sweep (AFS) ............................................................................ 8101 8.4.10. Determining Proper Cell Size for Accurate Simulation .................................................. 8103 8.4.11. Partitioning Large Structures .................................................................................... 8107 8.4.12. Tips to Speed Up Simulations .................................................................................. 8113 8.5. AXIEM ........................................................................................................................... 8114 8.5.1. The Electromagnetic Solver ...................................................................................... 8114 8.5.2. Using AXIEM ........................................................................................................ 8114 8.5.3. Solvers .................................................................................................................. 8118
AWR Proprietary
Contents 8.5.4. Adding Ports .......................................................................................................... 8119 8.5.5. AXIEM Meshing .................................................................................................... 8147 8.5.6. AXIEM Solver Options ............................................................................................ 8173 8.5.7. Advanced Frequency Sweep (AFS) Options ................................................................. 8174 8.5.8. Using Preset Options ............................................................................................... 8176 8.5.9. Iterative Solver Options ............................................................................................ 8176 8.5.10. Iterative Solver Convergence Issues .......................................................................... 8177 8.5.11. Accuracy/Performance Issues ................................................................................... 8178 8.5.12. Passivity Enforcement ............................................................................................ 8179 8.6. NET-AN ......................................................................................................................... 8181 8.6.1. Parasitic Extraction .................................................................................................. 8181 A. Advanced Analysis Topics ............................................................................................................... A1 A.1. APLAC HB Simulator Convergence Guide .............................................................................. A2 A.1.1. DC Analysis ............................................................................................................ A3 A.1.2. APLAC Harmonic Balance ......................................................................................... A3 A.2. APLAC Transient Simulator Convergence Guide ....................................................................... A7 A.2.1. DC Analysis ............................................................................................................ A8 A.2.2. Transient Analysis ..................................................................................................... A8 A.3. HB Simulator Convergence Guide ........................................................................................ A12 A.3.1. Circuit Operation Checks (Not changing simulator options) ............................................. A12 A.3.2. Harmonic Balance Settings Options ............................................................................ A12 A.4. Internal Stability Analysis Methods ....................................................................................... A17 A.4.1. MWO Approach to Internal Stability Analysis .............................................................. A17 A.4.2. Performing Internal Stability Analysis ......................................................................... A19 A.4.3. Termination Impedances ........................................................................................... A20 A.5. Antenna Analysis Methods ................................................................................................. A21 A.5.1. Selection of the Boundary Condition ........................................................................... A21 A.5.2. Re-Radiation of Equivalent Currents into Free Space ..................................................... A22 A.5.3. Antenna Measurements and Drawing Coordinate Systems ............................................... A22 A.5.4. Antenna Measurement Types ..................................................................................... A23 A.5.5. Antenna Measurement Polarizations ........................................................................... A24 A.5.6. Guidelines for Antenna Analysis ................................................................................ A25 A.6. Using Temperature in Simulations ......................................................................................... A27 Index .......................................................................................................................................... Index1
AWR Proprietary
Contents
AWR Proprietary
Chapter 1. Preface
The AWR Design EnvironmentTM suite incorporating Microwave Office, Analog Office, and Visual System SimulatorTM software is a powerful fully-integrated design and analysis tool for RF, microwave, millimeterwave, analog, and RFIC design that allows you to incorporate circuit designs into system designs without leaving the AWR Design Environment (AWRDE). Microwave Office (MWO) and Analog Office (AO) allow you to create complex circuit designs composed of linear, nonlinear, and EM structures, and generate layout representations of these designs. They allow you to perform fast and accurate analysis of your designs using linear, nonlinear harmonic balance, nonlinear Volterra-series, electromagnetic (EM), APLACTM, and HSPICE simulation engines, and feature real-time tuning and optimizing capabilities. Visual System Simulator (VSS) is the system level design component of the AWR Design Environment suite. With VSS you can analyze a complete communications system, from data encoding through transmission, reception, and data decoding.
AWR Proprietary
AWR Proprietary
About This Book The AWR Design Environment Quick Reference document lists keyboard shortcuts, mouse operations, and tips and tricks to optimize your use of the AWR Design Environment. This document is available within the AWRDE by choosing Help > Quick Reference. AWR Design Environment Known Issues lists the known issues for this release. This document is available on your program disk as KnownIssues.htm.
Anything that you select (or click on) in the AWRDE, such Shown in a bold alternate type. Nested menu selections are as menus, submenus, menu items, dialog box options, shown with a ">" to indicate that you select the first menu buttons, and tab names item and then select the second menu item from the menu: Choose File > New Project. Text that you enter using the keyboard Shown in bold type within quotes: Enter "my_project" in Project Name. Keys or key combinations that you press Shown in a bold alternate type with initial capitals. Key combinations using a "+" indicate that you press and hold the first key while pressing the second key: Press Alt+F1. Filenames and directory paths Shown in italics: See the DEFAULTS.LPF file. Contents of a file, fields within a file, command names, Shown in an alternate type: command switches/arguments, or output from a command Define this parameter in the $DEFAULT_VALUES field. at the command prompt
AWR Proprietary
Email AWR Support Check for Update Show Files/Directories Show License Agreement About
In addition, the following context-sensitive Help is available: Context-sensitive Help buttons in each dialog box. For example, to view Help for a specific measurement, select the measurement in the Add Measurement dialog box, and click Meas. Help. Context-sensitive Help for each element or system block in the Element Browser, accessed by right-clicking an element and choosing Element Help. You can also access element Help by choosing Help > Element Help after creating a schematic or system diagram, or by clicking Element Help in the Element Options dialog box. Context-sensitive help for using the AWRDE Script Development Environment, accessed by selecting a keyword (i.e., object, object model, or Visual Basic syntax), and pressing F1.
AWR Proprietary
AWR Proprietary
Measurement-based Simulation
Annotations
EM Structures
Output Equations
The most common measurements are those on graphs. However, the other objects listed also cause simulation. Annotations: simulation results displayed directly on a schematic, such as DC currents. See Chapter 7, Annotations for details. EM Structures: listed separately since they always simulate if they are enabled and have not changed since their last simulation. They are not measurement-driven because typically their simulation times are long and their results are stored in the project for use as subcircuits. The only way to ensure an EM structure does not simulate is to disable the EM structure. Output Equations: identical to measurements on graphs except they are assigned to a variable that can then be operated on by equations. See Section 8.3, Using Output Equations for details. Output equations are easily forgotten because the Output Equations window must be open to know that they are in a project. Graph Measurements: the most common type used in designs. These plot simulation output on various types of graphs. See Chapter 6, Graphs, Measurements, and Output Files for details. Optimizer Goals: another way you can set up measurements. These goals are typically measurements on existing graphs, but you can set up measurements only available to the optimize process. See Section 2.4, Tuning, Optimizing, and Yield for details.
AWR Proprietary
Measurement-based Simulation Yield Goals: another way you can set up measurements. These goals are typically measurements on existing graphs, but you can set up measurements only available to the yield process. See Chapter 6, Graphs, Measurements, and Output Files for details. Output Files: simulation results written to a file. See Section 6.3, Working with Output Files for details. For larger designs, it can be difficult to track all of the measurements configured for a project. Simulation filters are a feature that prevents different types of simulations. See Section 2.6.1, Simulation Filters for details.
AWR Proprietary
AWR Proprietary
Note that EM simulations are not set using this mechanism; they are set when an EM structure is created. See Section 8.2, EM Editor for details.
AWR Proprietary
BIASTEE ID=X2 2 2 3
RF DC
3
RF & DC
DC & 1 RF
DC RF 2
1 SUBCKT ID=S1 NET="Device Model" 3
There are three ways to set up frequency sweeps in the AWRDE. 1. Project frequencies 2. Document frequencies 3. SWPFRQ frequencies Project frequencies are the default frequencies used in any new project. Double-click the Project Options node in the Project Browser and click the Frequencies tab to edit your project frequency list. Click the Apply button when complete. See the section called Project Options Dialog Box: Frequencies Tab for details on this dialog box. Document frequencies are a second frequency list that you can set on each simulation document (schematic, data file, EM structure and netlists). For data files, these are frequencies included in the data file. For the others, these are set on the options for that document. To access the document frequencies, right-click the document in the Project Browser, choose Options and click the Frequencies tab. By default, the document frequencies are identical to the project frequencies.
AWR Proprietary
Swept Parameter Analysis Note the Use project defaults check box in the upper left of the dialog box. This check box must be cleared to enable setting frequencies local to each document. You can specify a third frequency sweep by using a SWPFRQ block on a schematic (from the Simulation Control category in the Element Browser). The swept frequency values are entered in the Values column of the SWPFRQ Element Options dialog box. If you want to specify frequency sweeps differently than a linear sweep, there are built-in equations that you can easily use with the SWPFRQ block. See the section called Swept Functions for details. When adding measurements, you can choose which frequency set to use. In the Add/Modify Measurement dialog box Sweep Freq option you can click the arrow at the right to choose between the document and project frequencies.
The frequency range and number for points for the frequency range you are selecting also displays. There are many frequency sweep control types, but the three most commonly used are: FDOC - document frequencies (the frequencies that are local to an individual schematic, data file, EM structure, etc.). By default, a measurement uses the document frequencies as the swept parameter. FPRJ - project frequencies (the frequencies that are global to the project and set in the Project Options dialog box). Sweep defined by the SWPFRQ block - control placed in a schematic (identified by the ID of the control, typically FSWPx where x is an integer).
AWR Proprietary
Swept Parameter Analysis Figure 2.2. Using Document Frequencies as the Swept Parameter
AWR Proprietary
Swept Parameter Analysis Figure 2.4. Using Frequencies Specified by a SWPFRQ Simulation Control Block in the Schematic
In addition to the three commonly used frequency sweep types, other possible frequency sweep types are: FDOCN - this option is available if the document referred to by the measurement contains noise data (such as a Touchstone S-parameter file with a noise data block). The frequencies that are swept are the frequencies at which the noise data are defined. F_SYMB - this option is available if the document contains a port that produces a digital bit stream and the symbol rate is specified (for example, PORT_ARBS, PORT_PRBS). In this case, F_SYMB is the only option available, regardless of other frequency sweep controls that may be associated with the document. F_OSC- this option is available if the document contains an oscillator analysis element that defines a frequency range (such as OSCAPROBE). In this case, F_OSC is the only option available, regardless of other frequency sweep controls that may be associated with the document. For DC-only simulations, no frequency sweep option is presented. POWER Sweep Control Some electrical elements such as the swept power ports are used as sweep controls. If at least one of these elements is present in a schematic, the swept parameter associated with that element is presented as a sweep option when adding or modifying a measurement for that schematic. Figure 2.5, Port 1 Changed to a Swept Power Port shows the same schematic as Figure 2.1, Schematic Containing a SWPFRQ Simulation Control, except Port 1 is changed to a swept power port. When adding or modifying a measurement, this additional power sweep displays as one of the swept parameter options (see Figure 2.6, Swept Power Port in the Schematic Presented as a Sweep Option). The available options specify how the swept variables are displayed.
AWR Proprietary
Swept Parameter Analysis Figure 2.5. Port 1 Changed to a Swept Power Port
BIASTEE ID=X2 2 2 3
RF DC
3
RF & DC
DC & 1 RF
DC RF 2
1 SUBCKT ID=S1 NET="Device Model" 3
Figure 2.6. Swept Power Port in the Schematic Presented as a Sweep Option
Freq Sweep
Power Sweep
AWR Proprietary
Swept Parameter Analysis Voltage/Current Sweep Control Swept voltage and current sources (both AC and DC) can be used as sweep sources, and work in the same manner as swept power ports discussed previously. Variable Sweep Control (SWPVAR) In addition to frequency, power, voltage and current, any variable can be swept during a simulation. To sweep a variable: 1. In the Element Browser, click the Simulation Control category, then select a SWPVAR simulation control and place it on the schematic. 2. Create a variable using an equation. 3. Specify this variable for the SWPVAR control VarName parameter. 4. In the SWPVAR control Values parameter, specify the values over which the variable will be swept. 5. Set the UnitType parameter if necessary (see the section called Using Units with the Swept Variable Control (SWPVAR)). 6. Assign the variable to the appropriate model parameter or equation. 7. Add/modify the appropriate measurement and specify how the swept variable results are to be displayed. Figure 2.7, Using a SWPVAR Simulation Control Block in a Schematic shows an example of using the SWPVAR simulation control in a schematic. Figure 2.7. Using a SWPVAR Simulation Control Block in a Schematic
The swept parameter associated with the SWPVAR control is available as a sweep option when adding or modifying a measurement for that schematic.
AWR Proprietary
Swept Parameter Analysis Figure 2.8. With a Swept Variable Control (SWPVAR) in the Schematic (Figure 2.7, Using a SWPVAR Simulation Control Block in a Schematic), SWPVAR Displays as a Sweep Option
Sweep Option
Sweep Ordering Sweep types are given the following priority/ordering during simulation: Frequency Power Voltage/Current Variable Within each category, sweeps are sorted alphabetically by ID. In the Add/Modify Measurement dialog box, the sweeps are listed based on this ordering. Using Units with the Swept Variable Control (SWPVAR) The UnitType parameter of the SWPVAR control sets the unit type for the values specified by the Values parameter. Note that the values are in base units, (MKS units - meters, ohms, volts, amps, etc.). For example, if the Values parameter is set to stepped(1, 10, 1) and UnitType is set to Inductance, the variable is swept from 1 to 10 Henries in steps of 1 Henry. To simplify unit entry, you can append SPICE-convention unit modifiers to values. For example, you can enter "1n" instead of "1e-9" to specify 1 nanohenry. In the previous example, you can set the Values parameter to stepped(1n, 10n, 1n) or stepped(1, 10, 1)*1n to sweep the variable from 1 to 10 nH in steps of 1 nH. These modifiers
AWR Proprietary
Swept Parameter Analysis follow SPICE rules; they are not case-sensitive, they must follow the number directly without a space in between, and any characters directly following the modifier are ignored. The x-axis of the graphs in the following figures illustrate the results of using the SWPVAR control with and without units. Figure 2.9. Swept Variable Simulation Result without Specifying Unit Type for the Swept Variable Values
Figure 2.10. Swept Variable Simulation Result Specifying Unit Type of "Inductance" for the Swept Variable Values
Finally, all dependent parameters should use base units. To specify base units, choose Options > Project Options and click the Schematics/Diagrams tab on the Project Options dialog box, then select the Dependent parameters use base units check box.
AWR Proprietary
Swept Parameter Analysis Figure 2.11. Setting the "Dependent parameters use base units" Option
Specifying Swept Variable Values The MWO/AO equation system provides an extremely flexible means of specifying the values to sweep. Several examples follow. For more information about specifying vector values using the equation system, see Section 8.5, Equation Syntax. Basic vector syntax - specify a vector of values by listing all of the values within curly brackets. For example: x={3, 5, 7} stepped function - specify a vector of values. For example, to specify a vector of values that range from 0 to 10 in steps of 2, use the following syntax: x=stepped(0, 10, 2) points function - specify a vector of values. For example, to specify a vector of values that range from 1 to 10 with a total of 10 points, use the following syntax: x=points(1, 10, 10) data_file function - the values used for a swept variable can come from a data file. For example, if a text data file named "df1.txt" contains a column of numbers, a vector of values can be specified using the following syntax: x=data_file("df1.txt", "", "") vfile function - used in a similar manner as the data_file function: x=vfile("df1.txt")
AWR Proprietary
- If another swept parameter is being used for the x-axis, selecting this option displays the swept data evaluated at every frequency value (a separate trace for each frequency value displays on the graph). - Adds the frequency parameter to the tuner. You can then use the slider control to view the sweep at each frequency value separately.
Select with tuner
- Represents each individual frequency. If another swept parameter is being used for the x-axis, selecting a single frequency displays the swept data at only the selected frequency.
Freq = xxx
Variable Sweep Display Options Figure 2.13, SWPVAR Display Options shows the display options available for a variable sweep.
Use for x-axis
Plot all traces - If another swept parameter (such as frequency) is being used for the x-axis, selecting this option displays
the swept data evaluated at every variable value (a separate trace for each variable value displays on the graph).
Select with tuner - Adds the variable parameter to the tuner. Only the trace(s) associated with the selected value display.
- By default, every permutation in a multi-dimensional sweep simulation is simulated. Selecting this option prevents simulation at these sweep values. Since simulations are not performed at these values, this option can be helpful in reducing simulation time. Anything that refers to that variable uses the actual variable value during the simulation.
Disable sweep
- Each individual swept variable value is presented. If another swept parameter is used for the x-axis (such as frequency), selecting a single value displays the swept data at only the selected value.
Var = xxx
AWR Proprietary
Example Graphs Figure 2.14, Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Document Frequencies for the X-Axis shows the results of an S-parameter measurement, S(1,1), for the schematic in Figure 2.7, Using a SWPVAR Simulation Control Block in a Schematic. Document frequencies are used for the x-axis. Each value of the swept variable Lswp defined by the SWPVAR block, is plotted by setting Plot all traces. A frequency sweep is performed for each value of the swept variable Lswp. Figure 2.14. Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Document Frequencies for the X-Axis
Figure 2.15, Graph of S(1,1,)Measurement for the Schematic in Figure 2-7 Using Lwsp Swept Inductance Variable as the X-Axis shows similar results, except the swept inductance variable, Lswp, is used for the x-axis. A sweep is performed at each frequency value.
AWR Proprietary
Swept Parameter Analysis Figure 2.15. Graph of S(1,1,)Measurement for the Schematic in Figure 2-7 Using Lwsp Swept Inductance Variable as the X-Axis
Figure 2.16, Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Swept Variable Lswp for the X-axis shows the simulation results when the swept inductance variable, Lswp, is used for the x-axis and a single frequency (5 GHz) is selected. Figure 2.16. Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Swept Variable Lswp for the X-axis
Figure 2.17, Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Frequency for the X-Axis shows the simulation results when frequency is used for the x-axis and the value of Lswp at which the frequency sweep is selected by using the tuner (SWPVAR.SWP1 is set to Select with tuner).
AWR Proprietary
Swept Parameter Analysis Figure 2.17. Graph of S(1,1,) Measurement for the Schematic in Figure 2-7 Using Frequency for the X-Axis
Parameter Markers You can display parameter (variable) markers on graph traces. Parameter marker setting are located on the Markers tab of the Graph Properties dialog box (see the section called Graph Properties Dialog Box: Markers Tab). Parameter markers are designated with a 'p' and differ from normal data/trace markers. Parameter markers allow you to identify traces that are associated with a particular swept variable value. Figure 2.18. Parameter Markers Identify Individual Traces Associated with Each Point in a Parameter Sweep
Measurement Notation The measurements on graphs use the following notation: DocName.~DisabledSweeps.$FreqSwp:MeasName(MeasArgs)[Swp1 display, Swp2 display, ...], where DocName - the name of the document (schematic, data file, etc.) referred to by the measurement. ~DisabledSweeps - the ID's of any SWPVAR controls whose sweeps are disabled (multiple sweeps may be disabled). $FreqSwp - the name of the frequency sweep control ($FPRJ, $FSWP, etc.). If the document frequencies ($FDOC) are used for the frequency sweep, the $FDOC identifier does not display in the measurement notation because $FDOC is the default frequency sweep (this also keeps the measurement notation short).
AWR Proprietary
Swept Parameter Analysis MeasName - the name of the measurement. MeasArgs - the arguments for the measurement (this may be empty). [Swp1 display, Swp2 display, ...] - each element of this set indicates how each sweep should display. The number of elements equals the number of swept parameters present in the document. The possible options are: X - use this sweep for the x-axis. * - plot all traces. T - select with tuner. ~ - disable sweep. - indicates the one-based index of a single sweep value, used to display a particular trace associated with the swept parameter.
Positive integer number
For example, consider the following measurement associated with the schematic in Figure 2.19, Schematic Used in the Measurement Notation Example: Schematic1.~SWP2.$FPRJ:DB(|Pcomp(PORT_2,1_0)|)[*,X,T,~] Here, the document name is "Schematic1", the sweep associated with the SWPVAR control with the ID of SWP2 is disabled, the project frequencies $FPRJ are used as the swept frequencies and Pcomp is the measurement (in dBm) with two arguments. Inside the square brackets, * indicates that traces are plotted for each frequency. X indicates that the second sweep (the power at port 1 in this case) is to be used for the x-axis. T indicates that the third sweep (SWPVAR.SWP1) value is selected with the tuner. Finally, ~ indicates that the fourth sweep (SWPVAR.SWP2) is to be disabled. Figure 2.19. Schematic Used in the Measurement Notation Example
PORT_PS2 P=1 Z=50 Ohm Fdelt=0.1 GHz PStart=-30 dBm PStop=10 dBm PStep=2 dB 2
& DC
RF DC
3
2 PORT P=2 Z=50 Ohm SWPVAR ID=SWP2 VarName="Vdd" Values={ -1,0,1 } UnitType=None Xo . . . Xn
DC RF
DC & RF
AWR Proprietary
Swept Parameter Analysis Figure 2.20. Measurement Dialog Box Associated with the Measurement Notation Example
AWR Proprietary
Swept Parameter Analysis Figure 2.21. Measurement with Two Swept Variables Set to Display Single Values
To mitigate the large number of simulation points, you can disable the two variable sweeps and the variables set to the single values of interest to reduce the number of simulation points to 10, which is the number of frequency points.
AWR Proprietary
Swept Parameter Analysis Figure 2.22. Measurement with Two Swept Variable Sweeps Disabled
AWR Proprietary
AWR Proprietary
If the Value of a variable is beyond or equal to one of the constraints (Lower or Upper), then the constraint is highlighted in red. If the Value is inside of the constraint range but is close to a constraint (within 5% of the difference between the limits), the constraint is highlighted in yellow.
2.4.2. Tuning
You can use the Variable Tuner to tune a parameter value and observe the resulting response on the graph of that circuit. To tune a parameter value and observe the resulting response: 1. Click on the schematic window to make it active. 2. Click the Tune Tool button on the toolbar. 3. Move the cursor over the desired variable to see the complete variable name. A dark cross cursor displays in a circle. 4. Click to activate the parameter for tuning. The parameter displays in an alternate color. 5. Click on the graph window for that schematic to make it active. 6. Choose Simulate > Tune. The Variable Tuner displays. For more information about the tuner dialog box, see the section called Variable Tuner Dialog Box.
AWR Proprietary
Tuning, Optimizing, and Yield 7. Click on a tuning button and slide the tuning bar up and down. Observe the simulation change on the graph as the variables are tuned. Press Ctrl while dragging a slider to continually update displayed variables and parameters and layout views. 8. To remove a variable from the tuner, click the button to the right of the variable name in the Variable Tuner dialog box.
2.4.3. Optimization
Optimization is a process whereby the AWRDE automatically adjusts designated circuit parameters such as circuit-element values, transmission-line lengths, and similar quantities to achieve user-specified performance goals such as minimum noise figure and flat gain. The circuit parameters to be adjusted must be variables or parameters with an assigned numeric value (not other variables) that have been selected for optimization. A variable or parameter can be selected for optimization by editing its properties, or by setting the optimization property in the Variable Browser. Optimization is controlled by an error function, which provides a numerical error value based on the difference between calculated and desired performance. The optimization process attempts to find the minimum of this function. Optimization is an iterative process: The AWRDE calculates the error function, modifies the variables, and calculates again. The optimizers use algorithms that cause the performance to move closer to the goals (i.e. the error to decrease) after each iteration. An important feature of the AWRDE is that noise, linear and nonlinear performance can be optimized simultaneously. Optimizer Operations
The Error Function
The AWRDE optimizers adjust the values of the optimization variables to achieve performance goals defined by the goals displayed under Optimizer Goals in the Project Browser. They do this by minimizing the following mean-square error function:
W Q
n=1 q=1
Qn
n n
| Gn( f q) M n( f q)|
Ln
where the fq are the analysis frequencies and |Gn-Mn| is the error in a parameter. Mn is the magnitude of an S parameter, noise figure, IM level, or similar quantity, Wn is a weight, and Ln is the order of the norm. Clearly, if parameter Mj has a large weight Wj, the error for the parameter will contribute heavily to the error function, so an optimizer will reduce the error in Mj more than in other, less heavily weighted, parameters. In the previous equation, N is the number of goals that are specified for the optimization, and Qn is the number of frequency points that falls within the goals range. The L factor used as part of the error function described previously is related to the definition of the norm of the error vector (i.e. minimizing the L2 norm is equivalent to setting the value of L to 2). For the purpose of this discussion, the error vector is considered a vector of scalar values that represent the error of a single parameter at a set of frequency points. The true error function is a sum of the error function values determined by each goal. The most common value for L is 2, which is equivalent to a least squares optimization. A value of 1 optimizes the scalar difference, while values higher than 2 tend to put a higher weight on the largest difference.
AWR Proprietary
Tuning, Optimizing, and Yield An exception is that a value of L=0 is used to specify the equivalent of the infinity norm which is defined as the maximum element in the error vector. A value of L=0 effectively causes the optimization to minimize the maximum deviation from the goal (this has been called a min-max optimizer in some programs). The definition of the L factor can be set individually for each goal. This allows the optimization of one goal using a least-squares criteria (L=2) and the optimization of another goal using a minimize the maximum criteria (L=0). Optimization Guidelines When optimizing circuits you should follow these guidelines: Limit the number of frequencies During optimization, the circuit is analyzed at each frequency in the project frequency list. It is a good idea to minimize the number of analysis frequencies; by doing so, you can make the optimization proceed very rapidly. In a narrowband circuit, it is often adequate to use only the band-edge frequencies, and even in broader circuits it is rarely necessary to use more than a few frequency points. Termination Criteria The optimizers terminate after the desired number of iterations, when the error function drops to zero, when interrupted, or when the optimizer determines that no further improvement is possible. DO NOT be afraid to interrupt an optimizer. When you restart it, it begins with the variables it had when it terminated; you lose nothing. Speed Be patient while using the optimizers. They often run for a long time while nothing appears to be happening. Be assured, the optimizer is working on your problem. Frequency Selection The selection of frequencies affects the optimization in much the same way as the selection of weights: a range having many frequency points is effectively weighted more heavily than one having only a few points. Conflicting Goals Although the process of optimization may seem magical to a novice circuit designer, it is in fact anything but magic: it is no more or less than a very useful tool, and, like any tool, must be used properly. Even the best optimizers are nontrivial devices, and they must be approached with some intelligence. The greatest reason by far for the failure of an optimizer to yield reasonable results is that the user attempts to make it do something that is impossible, such as forcing a simultaneous conjugate match on a circuit having K<1, or something that is unreasonable, such as optimizing an amplifier simultaneously for noise figure, input and output match, and gain when the initial design is sloppy. The use of conflicting goals will impede or prevent the optimizer's progress; it is often not obvious that goals are conflicting. For example, the following set of goals usually gives poor results when applied to the design of a transistor amplifier:
Myamp:DB(|s[2,1]|) = 12 Myamp:DB(|s[2,2]|) = -30 Myamp:DB(NF) < 1.0
This set of constraints instructs the optimizer to minimize the noise figure and output return loss while achieving a specific gain. This set of goals may seem reasonable, but in fact it puts three constraints on the matching circuit, while only two can be met by the two degrees of freedom (source and load impedance) available. Such requirements are, of course, often real and necessary, but they require trade-offs based on engineering judgment. The optimizer may be helpful in making those trade-offs, but it cannot circumvent the need for them.
AWR Proprietary
Tuning, Optimizing, and Yield Noise/Intermodulation Goals Minimizing noise and minimizing IM distortion are inherently conflicting goals. In fact, any optimization involving IM performance is likely to introduce a subtle conflict with any other performance parameter. Local and Global Minima The local optimizers find only the local minimum of the error function; they generally cannot find the global minimum, unless, of course, it happens to be the local one as well. Consequently, the most successful optimization occurs when the initial design is good enough so that the best local minimum is the global minimum and when you are willing to experiment with optimization weights and frequency ranges, to limit the number of variables, and to try a different optimizer when one fails to yield satisfactory results. For example, the following is a sensible approach to the design of a low-noise transistor amplifier: 1. Design the input circuit and optimize it for noise figure using the transistor described by its S-parameters and noise statements alone. 2. Calculate the output reflection coefficient. 3. Design the output matching circuit and optimize it for either a specific value of gain or a conjugate match (not both). Optimize the amplifier circuit as a whole for gain or output match, and noise figure. By optimizing the circuit in parts, the probability of achieving a successful design is much greater than it would be if the amplifier were optimized as a whole at the outset. S-parameter Fitting for FETs The following process works well for extracting FET models. The trick to the method is to determine the two most critical items, the internal transconductance Gm and series resistance Rs, before beginning the fitting process, and to get good initial estimates of other model parameters from low-frequency Y parameters. (These can be calculated easily because series inductances can be ignored and other simplifying assumptions are reasonable.) It is remarkable how much easier it is to fit a FET model to a set of S-parameters when Rs is fixed at the outset. 1. Measure Rs and the internal Gm at dc (the internal Gm is dId/dVg, where Vg is the voltage across the gate-depletion capacitance, not the gate-to-source terminal voltage). Assume initially that Rd=Rs. A good value of Rs is difficult to obtain, but it is essential for successful fitting. Remember that the internal Gm is not the same as the Gm measured at the FETs terminals. 2. Convert the measured S-parameters below 1 GHz to Y-parameters, and estimate the gate-to-source capacitance Cgs, the gate-to-drain capacitance Cgd, the drain-to-source capacitance Cds and output resistance Rds from these. (Do this analytically, not with the optimizer.) Also check Gm against Y21. If the device is packaged, you must apportion the input and output capacitances between the package parasitics and Cgs and Cgd; assume that the package capacitances at the input and output are 0.15 to 0.2 pF (70-mil ceramic package) and the package capacitance between the drain and gate terminals is approximately 0.05 to 0.1 pF. 3. Perform the S-parameter fitting at microwave frequencies with relatively heavy weighting on the phases. Keep Gm, Rds, and Rs constant (i.e. do not make them variables) and put fairly tight constraints on the capacitances (0.01 0.05 pF). Use the random optimizer initially, and when it slows, switch to the gradient or simplex. You can "tweak" the numbers with the tune mode if necessary or experiment with weights and other optimizers. 4. Be certain that the topology of your FET model is meaningful. The model of a chip FET is straightforward, but a model of a packaged device can be difficult to generate. If the device is packaged, remember to include gate, source, and drain inductances within the package; these will probably be surprisingly high: 0.4 to 0.6 nH for a 70-mil package. Even a chip FET may have a few tens of picohenries of gate, source, and drain inductance.
AWR Proprietary
Tuning, Optimizing, and Yield 5. If your results are nonsensical (i.e. element values are clearly incorrect) repeat the process with tighter constraints on the variables. Remember, the best device model is not necessarily the one that reproduces the measured S-parameters the best; it is the one that gives the most meaningful circuit element values. Constraining Element Parameters Lower bound and upper bound are limits (constraints) that can be assigned to any independent variable. The optimizer does not increase the value of the variable above the upper bound nor decrease the value below the lower bound. To apply limits to an element parameter, double-click the element to display the Element Options dialog box. Select from the list of parameters the parameter to be limited, and then select Limit and enter values in Lower and Upper. To select the variable for optimization, select Opt in the same dialog box.
An alternative and perhaps easier method for setting the constraints is through the Variable Browser (choose View > Variable Browser). You can change the values and the limits by typing directly into the cells of the Variable Browser. Right-click the column heading to select the columns you want to display; select Lower and Upper if they do not already display.
AWR Proprietary
To select a variable for optimization, click the Optimize column. To constrain the variable, click the Constrained column. To select a variable for tuning, click the Tune column. Setting Optimization Goals Optimization goals can be associated with any measurement or output equation in a project. Adding Optimizer Goals To add an optimizer goal there must first be items in the project that can be measured (for example, schematics or EM structures). Choose Project > Add Opt Goal or right-click Optimizer Goals in the Project Browser and choose Add Opt Goal. Modifying and Managing Optimizer Goals The Goals dialog box allows you to edit, view, and sort all optimization goals (even disabled goals) for a project. To access this dialog box choose Simulate > Optimize to display the Optimizer dialog box, then click the Goals tab at the bottom of the dialog box. In the Goals dialog box you can right-click the column header to choose which columns to display, rearrange columns by dragging them to another column location, change the displayed column width, and click individual column names to toggle an ascending/descending sort process.
AWR Proprietary
Tuning, Optimizing, and Yield To modify an individual optimizer goal, you also can right-click the goal in the Project Browser and choose Properties to display the Modify Optimization Goal dialog box. Deleting Optimizer Goals To delete an optimizer goal, right-click the goal in the Project Browser and choose Delete Goal. Disabling Optimizer Goals To disable/enable individual optimizer goals, right-click the goal and choose Toggle Enable. When one or more goals are disabled, you can right-click on Optimizer Goals and choose Toggle All Opt Goals to reverse the disabled/enabled status of all goals. To disable all optimization goals, right-click Optimizer Goals in the Project Browser and choose Disable All Opt Goals. You can re-enable all optimization goals by choosing Enable All Opt Goals. Optimizer Goals on Graphs If a measurement is placed on a graph and it is used by a goal as well, it is displayed on the graph in the same color as the measurement. If the goal is selected by clicking it with the mouse, you can move, stretch, or delete it.
Output Match
0
-10
-20
-30
-40
DB(|S(2,2)|) LPF
100 300 500 700 Frequency (MHz) 900 1000
-50
Currently this feature is only available for measurements on rectangular grids that have linear X and Y axes. If either axis is changed to a logarithmic scale then the goal is no longer visible. Optimizing Variables The AWRDE automatically determines if a variable that is selected for optimization has any effect on enabled optimization goals. This check determines if the enabled goals have a dependency on the variables selected for optimization. If there is no dependency, the variable is excluded from the variables for optimization. If none of the enabled goals depend on any of the variables selected for optimization, the optimizer reports an error indicating that there is nothing to optimize. The automatic check does not change the optimization settings for individual goals, so it provides a convenient method for controlling which variables are to be optimized on. For example, in a project with two schematics where both have optimizeable variables and optimization goals for measurements, you can control which schematic is optimized by enabling and disabling the goals for each schematic. It
AWR Proprietary
Tuning, Optimizing, and Yield is not necessary to turn the optimization off for variables in schematics that you do not want to optimize. You can simply disable any goals for the schematic. Performing the Optimization To optimize the circuit, choose Simulate > Optimize. The optimizers are controlled by entries in the Optimizer dialog box. You can change this dialog box display between a mode-less and standard window by right-clicking the title bar and selecting an option.
The Cost History is a small plot of the cost function as a function of the iteration number. This graph automatically "wraps" and scales as the iteration progresses. The various optimization methods are described as follows; the remaining dialog box options are described in the section called Optimizer Dialog Box. controls what the optimizer does when a simulation error is encountered. With this option checked, if an error is found, the optimizer stops and shows the following dialog box.
Stop on simulation errors
In this mode, you can revert to the error state to investigate the error. When this option is not selected, simulation errors are ignored and the optimization process continues. A good example of this use would be two microstrip lines connected by a step model, with the width of both lines set to optimize. Some combinations of the two widths will violate the maximum difference between the widths for the step model. In this case, you might want the optimizer to skip any cases where the error was found to keep searching for a valid answer. Optimization Methods You can select the desired optimization method in Optimization Methods. There are a number of optimization methods supported in the AWRDE. The main methods (of which there are variations) are described as follows.
AWR Proprietary
Random steps from an initial starting point in the search space. The random optimizer is probably the best optimizer to use when the number of variables is large, because it operates almost as efficiently with a large number of variables as with a small number and requires a minimal number of functional evaluations (i.e. complete circuit analyses) per iteration. This is, theoretically the "dumbest" optimizer, but it works surprisingly well in some cases.
Gradient Optimization
We loosely call the Davidon-Fletcher-Powell optimizer (also known as the Fletcher-Powell method) a gradient method; precisely, it is a quasi-Newton optimizer. It is the most powerful, per iteration, of the three optimizers, but requires a large number of functional evaluations per iteration. It is the best optimizer to use for simple circuits with straightforward requirements: the larger number of functional evaluations does not slow the optimization appreciably, but the optimizer converges on a solution very quickly. It is also quite good (although perhaps not as good as the simplex method) at following difficult contours. Experience shows that the gradient optimizers often do not work well with passive circuits as compared to the simplex optimizer.
Simplex Optimization
The downhill simplex search (based on the Nelder-Meade optimizer) is relatively slow but very robust. A nice property of the simplex optimizer is that it follows difficult contours in the error function quite well, although slowly. It also finds the precise optimum, in contrast to the gradient optimizer, which tends to wander when it gets close to the optimum; therefore, the simplex optimizer is very good for finishing an optimization after the gradient optimizer "bottoms out." The simplex optimizer has a fairly long initialization process, requiring a number of functional evaluations at least as large as the number of variables, and often more. After initialization, its speed is relatively insensitive to the number of variables, but its improvement of the error function, per iteration, may be small when a large number of variables are in use. The simplex optimizer creates a constellation of N+1 points on the error surface, where N is the number of variables selected for optimization. The N+1 points in the search space define a simplex. The method works by contracting the highest point in the current simplex through the opposite face of the simplex (reflection). Other modifications to the simplex that are performed during the search are expansion and contraction. The method performs the down hill moves until it reaches a local minimum. To avoid early convergence at a poor local minima, the method is restarted periodically using N new random points, and the best point in the previous simplex.
Genetic Algorithms
The chromosomes used for the optimization problem is the vector of continuous constrained variables that define the search space. Each gene is represented by a single scalar value in the vector. The genetic algorithms used in the AWRDE differ somewhat from the standard genetic algorithms. The typical combinatorial optimization versions of genetic algorithms create new points in space from two previous points in the space, by gene cross-over and mutation. The AWRDE versions have been modified to be better suited to continuous optimization problems. The modification involves a method of generating a number (the child gene) from two other numbers (the parent genes) in a somewhat random fashion. The generated number should be similar to either of the parent numbers, but not identical. The general algorithm was borrowed from the standard discrete optimization algorithms that can be found in the literature. For each of two parent numbers selected at random (biased towards more fit parents), two children numbers are generated. Two methods for the generation of the child genes are implemented in the AWRDE.
Gaussion Mutation
For each parent gene, a number is generated from a normal distribution using the parent as a mean for the distribution. The standard deviation of each distribution is taken to be the mutation rate and is computed from a user-defined maximum
AWR Proprietary
Tuning, Optimizing, and Yield mutation, and a similarity ratio. The similarity ratio is computed from the similarities between the parent chromosomes (Not Genes) and is given by
W Q
n=1 q=1
Qn
n n
| Gn( f q) M n( f q)|
Ln
where N is the dimension of the search space (length of the chromosome), M=Upper-Lower, and a and b are the parents being compared. The above S varies from 1 (a=b) to 0 (a=0, b=M). One number is generated from each parent, and the assignment of each of the two generated genes to the child chromosomes is done at random with equal probability. If the Max Mutation rate were zero, then the children would inherit identical genes from either parent.
Uniform Mutation
In the second method, a gene is generated using a uniform random distribution between the two parent gene values. Once one child gene is generated, the second gene is generated as a mirror image about the center of the distribution. A random, normally distributed, zero mean deviation is then added to each gene value to provide a mutation mechanism. The standard deviation for this distribution is computed using the same method as the Genetic method above. The following figure demonstrates the procedure.
Simulated Annealing is used in conjunction with the downhill simplex method discussed previously. The simulated Annealing method is incorporated into the downhill simplex method by adding a small temperature-dependent probabilistic deviation to the cost of each point in the simplex. Then a similar deviation is subtracted from any new point that is tried as a replacement for the current high point in the simplex. This will in effect, always take a downhill move, and sometimes take an uphill move with a probability based on the current temperature. By carefully controlling the rate of temperature change, the problem can be slowly "cooled" so that the solution converges to a global optimum instead of a local optimum. The Annealing schedule used is defined by
k T = T0 1 K
AWR Proprietary
Tuning, Optimizing, and Yield where K is the total number of evaluations, k is the number of evaluations made so far, and To and a are parameters that can be adjusted to tune the performance of the algorithm. The following graph shows a plot with To=100 and a=4.
Simulated Annealing is used in conjunction with the local random optimization method discussed previously. The simulated Annealing method is incorporated into the random search method by adding a small temperature-dependent probabilistic deviation to the cost of each evaluation. This in effect, always takes a downhill move, and sometimes takes an uphill move with a probability based on the current temperature. By carefully controlling the rate of temperature change, the problem can be slowly "cooled" so that the solution converges to a global optimum instead of a local optimum.
Random (Global)
This optimizer randomly selects trial points from the entire solution space in search of the optimum. This method should only be used when there are only a few variables to be optimized and the error function is highly irregular or discontinuous. After finding a solution with this optimizer, it is highly recommended that a local method be used to bring the final solution closer to the optimum. When there are many variables to be optimized it is likely that this method will not find any significant improvement within a reasonable amount of time. Pointer Optimization The Pointer optimizer combines the power and robustness of four widely used and accepted search methods - linear simplex, downhill simplex, sequential quadratic programming, and genetic algorithm - with the ease of its unique automated training feature. This self-training ability allows the pointer to determine automatically the best search procedure for a given problem. You specify a target objective and an allowable number of iterations for the optimization. The pointer selects the best combination of optimizers and step sizes to find the best solution in that time. Training can also increase your chances of finding the optimal answer under different design conditions (constraints, design starting points, etc.). Furthermore, the process of training almost always finds the true global optimum in a fraction of the total training time. Pointer determines not only the optimal design but how best to find that design. You do not need to be an expert (or even have any knowledge) of the various search algorithms to successfully apply them. Pointer's optimizers can be divided into three groups: genetic algorithms, downhill simplex methods, and sequential quadratic programming methods. These methods are described as follows:
Genetic Algorithms
Genetic algorithms use mutation or recombination and selection to minimize the objective function. They begin with a large number of points randomly distributed over the design space (at least one point for every dimension of the problem if possible). In mutation, each of the points produces a number of new points that are normally distributed around the original point. The best point out of this next generation of points is selected. In recombination, a random number of
AWR Proprietary
Tuning, Optimizing, and Yield points exchange parameter values. Again, the best points are selected for the next iteration. This recombination mechanism allows points to move towards a point with a low objective function value. A standard deviation represents the average step size. This standard deviation adds one dimension to every parameter in each point in the algorithm. Those points with the best standard deviation have the highest chance of finding the global minimum. Initially, the evolution method converges very rapidly, but eventually has trouble converging to the exact solution. It does, however, deal well with complex topographies.
Downhill Simplex Methods
The downhill simplex method is a geometrically intuitive algorithm. A simplex is defined as a body in n dimensions consisting of n+1 vertices. Specifying the location of each vertex fully defines the simplex. In two dimensions, the simplex is a triangle. In three dimensions, it is a tetrahedron. As the algorithm proceeds, the simplex makes its way downward toward the location of the minimum through a series of steps. These steps can be divided into reflections, expansions, and contractions. Most steps are reflections which consist of moving the vertex of the simplex where the objective function is largest (worst) through the opposite face of the simplex to a lower (better) point. Reflections maintain the volume of the simplex. When possible, an expansion can accompany the reflection in order to increase the size of the simplex and speed convergence by allowing larger steps. Conversely, contractions "shrink" the simplex, allowing it to settle into a minimum or pass through a small opening like the neck of an hourglass. This method has the highest probability of finding the global minimum when it is started with big initial steps. The initial simplex will then span a greater fraction of the design space and the chances of getting trapped in a local minimum are smaller. However, for complex hyper-dimensional topographies, the method can break down.
Sequential Quadratic Programming Methods
The sequential quadratic programming (SQP) method is a generalization of Newton's method for unconstrained optimization. However, SQP can solve nonlinearly constrained optimization problems with differentiable objective and constraint functions. The search direction is the solution of a quadratic programming subproblem, at each iteration. In this search method, the objective function is replaced by a quadratic approximation. The SQP method is used for problems with smooth objective functions (or problems that are continuously differentiable in the design space) and on small problems with up to 100 variables. Pointer uses an SQP program designed by Dr. Klaus Schittkowski.
Linear Methods
Linear methods (also called linear programming or linear optimization) are ideally suited to problems in which the objective function O and constraints ci are a linear combination of the design variables xi. Although the nonlinear optimizers described previously will solve linear problems, they are much slower. Unfortunately, linear algorithms are unable to cope with nonlinear problems. Optimization times can be greatly reduced if you can formulate your problem as a linear one. Pointer uses the linear simplex algorithm (not to be confused with the downhill simplex algorithm for nonlinear topographies). It is based on a Gauss-Jordan elimination procedure for solving systems of linear equations.
Hybrid Methods
Cocktails, or combinations of optimizers, are even more robust than simple restarts of one scheme. One robust rapidly converging cocktail is an evolution strategy followed by a simplex. Similarly, a good cocktail for smooth topographies would be the combination of a Monte Carlo (random) method with a gradient method. The gradient method is started from numerous randomly generated points in space with the best resultant point retained.
AWR Proprietary
Tuning, Optimizing, and Yield An "optimizer" in Pointer is really a hybrid optimizer consisting of a combination of the genetic, downhill simplex, gradient, and linear simplex algorithms. The choice of algorithms and the number of iterations, restarts, and step-sizes are determined automatically through the use of Pointer's self-training feature.
Practical Tips
Note the following when optimizing a problem: Start small: It is very dangerous to jump into the optimization of a problem with a very large number of design variables and constraints. Grow your optimization problem by adding no more than five design variables at a time, always trying to understand the answer at every level. Test exhaustively before adding complexity. Once you reach ten or more design variables, it becomes difficult to understand the answer intuitively. Acceptance of your results: If at all possible, use the same objective functions (codes) that will later be used to determine the final performance of the design. Furthermore, there are cases in which the designs are already quite refined and optimization improves them by only a few percent. Therefore, the difference (error) between the objective optimum and the objective used to determine the final performance must be significantly less than the incremental improvement due to the optimization. Your organization will then be less skeptical about the improvement claimed. Sensible objective functions, variables, and constraints: Apart from the obvious requirements for a sensible objective function, you need at least as many active degrees of freedom as there are active constraints to improve the design. In industry, many engineers have a tendency to put too many constraints, effectively freezing the design in its previous form. In academia, many researchers use too few constraints, and therefore work with oversimplified topographies. These topographies are of course easy to optimize, but seldom yield useful results. Improve your topography: The fewer problematic topographical features the objective function has, the more rapidly convergence is achieved. It is possible to use gradient methods for very smooth objective functions without many local minima. In practice, however, such smooth design spaces are rare. Still every effort should be made to improve the analysis code and eliminate these difficult topographies.
Pointer Optimizer Usage
In its simplest form the Pointer optimizer is used just like a random or gradient optimizer. In this mode you select Pointer - Gradient Optimization in Optimization Methods. This optimizer has been trained on a variety of circuits and often produces good results. NOTE: The Pointer optimizer requires that all optimization variables be constrained. If you do not constrain your variables it does so internally, and you may not get the desired results. You should verify that all of your variables are properly constrained before running the Pointer algorithms.
AWR Proprietary
To achieve the best results from the Pointer optimizer it should be trained. When training the optimizer it is important to note that you do not have to perform the training on the exact circuit you want to optimize. For example, if you frequently design microstrip coupled-line filters with different number of sections and frequency bands it is not necessary to re-train the optimizer for each filter. Once trained, the optimizer can adapt to changes in the circuit. On the other hand, an optimizer trained for a microstrip filter may not be well suited to optimizing a nonlinear power amplifier. For this reason, the training process allows you to save your training results in a file. You can keep separate files for different types of circuits. Training Training is Pointer's unique feature that designs the best optimization routine to solve your problem. A training session is also an optimization session, so at the end of a successful training session, you also have the minimum/maximum for the current set of constraints, parameters, etc. if you give Pointer enough time. The goal of training is to give you an optimization route that takes approximately half of the function calls of the regular automatic optimizer. Training takes longer to complete than a regular optimization session. If you are going to repeat a job many times, however, it is worth the time you spend on it since using the trained optimizer can cut your single job optimization time at least in half. You do not need to be physically present during a training job; it can be done overnight, over a weekend, over a vacation, or while you are doing something else.
AWR Proprietary
To create a trained optimizer you must first set up your circuit for normal optimization, including selecting optimization variables and creating optimization goals. You then choose Simulate > Optimize. In the Optimizer dialog box, select Pointer - Train an Optimizer in Optimization Methods.
This is the maximum number of iterations Pointer runs. It tries to stop at the Iteration Target, but if it has not converged on a solution, it continues to run until this Maximum.
Iteration Target: Pointer attempts to converge to a solution in this number of
iterations. To properly explore the design space you should set this value so the optimization runs for several hours. You should set the Maximum Iterations several times larger than this number.
Start Pt. Robustness:
Starting point robustness refers to how well the trained optimizer can cope with different initial design variable sets. A robustness of zero means that the training algorithm only considers performance from a single starting point (the current design variable set). A robustness of one means the algorithm randomly evaluates performance from starting points across the entire domain. Starting point robustness should be a real value between zero and one inclusive. It should be set as small as possible to minimize the time required to produce a trained optimizer.
Trained Optimizer Name: This is the name used to identify the trained optimizer. This file is stored in the same directory
as the project you are optimizing. If you want to use this optimizer with a design in a different directory you need to use Windows Explorer to copy this file to that directory.
AWR Proprietary
Tuning, Optimizing, and Yield To start the training process, click Start. If the design reaches the limit set in Maximum Iterations before stopping, the optimizer was not properly trained. This is most often caused by setting the Iteration target value too low.
Using a Trained Optimizer
A trained optimizer is used the same way as a regular optimizer. Choose Simulate > Optimize to display the Optimizer dialog box, and then select Pointer - Run Trained Optimizer. You must specify the name of an optimizer file that is in the same directory as your design and the number of iterations you want to run, then click Start.
Discrete Optimization Only the Pointer and Random optimizers support discrete optimization. Variables are discrete when they reference a vector. For example, to optimize a width of microstrip line you can declare a vector widths=stepped(20,50,1) variable and then use the vector for all w parameters of the MLIN element, like w=widths[10]. The optimizer optimizes the index. You can declare discrete quantities with any available vector notation. The Discrete_Filter_Optimization.emp project in the \Examples subdirectory of the AWRDE program directory is provided as a discrete optimization example.
AWR Proprietary
Optimizing Variables The AWRDE automatically determines if a variable that is selected for optimization has any effect on enabled optimization goals. This check determines if the enabled goals have a dependency on the variables selected for optimization. If there is no dependency, the variable is excluded from the variables for optimization. If none of the enabled goals depend on any of the variables selected for optimization, the optimizer reports an error indicating that there is nothing to optimize. The automatic check does not change the optimization settings for individual goals, so it provides a convenient method for controlling which variables are to be optimized on. For example, in a project with two schematics where both have optimizeable variables and optimization goals for measurements, you can control which schematic is optimized by enabling and disabling the goals for each schematic. It is not necessary to turn the optimization off for variables in schematics that you do not want to optimize. You can simply disable any goals for the schematic.
AWR Proprietary
Tuning, Optimizing, and Yield Setting Statistical Properties Any independent variable or parameter can have statistical properties assigned to it. To set the statistical properties for an element, double-click the element to display the Element Options dialog box. Click the Statistics tab on the dialog box. Click the Use (Use statistics) column to assign the parameter random values based on the other settings during a yield analysis or a yield optimization. If Use is not selected, the statistical properties are ignored during a yield analysis or a yield optimization. Click the Opt (Optimize yield) column to allow modification of the nominal value of the parameter during a yield optimization. If the parameter value is also constrained, then the yield optimizer uses these constraints to ensure that the nominal value is not changed to an unacceptable value. If a parameter is used for yield optimization, you must also select Use. allows you to specify different statistical distributions. Currently, only uniform and normal (Gaussian) distributions are supported. Variation can be specified using the Tol column. Variation depends on what distribution type is set. If the distribution is Uniform, the variation is represented by a uniform distribution that is non-zero for the nominal value +/- the variation value. The variation value can be specified in a percentage (select the In% column) of the nominal value, or as an absolute variation. If Distribution is Normal, the variation specifies the standard deviation of the distribution (specified as a percentage of the nominal value or as an absolute variation).
Distribution
You can set the statistical properties of independent variables the same way by right-clicking the variable on the Schematic or Equation window and choosing Properties. Setting Yield Analysis Goals The statistical analysis requires the specification of the goals used to determine if a circuit has acceptable (pass) or unacceptable (fail) performance. You can add a yield goal by choosing Project > Add Yield Goal or by right-clicking Yield
AWR Proprietary
Tuning, Optimizing, and Yield in the Project Browser and choosing Add Yield Goal. Yield goals are set and edited very similarly to optimization goals (see the section called Setting Optimization Goals). The only difference is that there are fewer options associated with the yield goals. For example, there is not an equality yield goal and there is no weighting associated with a yield goal. The Meas > Goal type indicates that the measured value must be greater than the goal for passing performance.
Goals
You can add as many yield goals to the project as desired. During a yield analysis, if any of the yield goals indicate a violation, that trial is considered to have failed.
Performing the Analysis The yield analysis performs a Monte Carlo analysis of the circuit. For each trial, the parameter values that are set to have statistical distributions are set to random values based on the parameter's statistical distribution. A simulation is then performed and the yield goals are computed to determine if the trial failed or passed. The number of trials that are required to obtain an accurate estimate of yield depends on the degree of confidence that is desired for the estimate and the actual value of yield. The following relationship can be used to compute the number of trials needed for a given degree of confidence in the yield estimate. It is important to note that the number of parameters used in the yield analysis does not effect the number of trials that are needed for a given confidence level.
N=
( C ) Y (1 Y )
2
In the previous expression, N is the number of trials, Y is the estimated yield, is the percent error and C is the confidence level expressed as a number of standard deviations (a C of 2 corresponds to 95.4% confidence level).
AWR Proprietary
Tuning, Optimizing, and Yield The yield analysis is invoked by choosing Simulate > Yield Analysis.
The maximum number of trials (iterations) that can be performed during a yield analysis can be set in the Yield Analysis dialog box. The number of iterations and the percentage of circuits that are passing yield displays in the dialog box during the analysis.
Performance Variation
The measurements that display on the graphs plot traces for each statistical trial simulated during the Monte Carlo analysis. The following graph shows a plot of the input reflection coefficient for a simple circuit.
AWR Proprietary
Yield Goal
Output Match
20
-20
-40
DB(|S(2,2)|) LPF
-60 100 300 Frequency (MHz) 500 690
Displaying Performance Variation There are several options for displaying the performance variations of measurements plotted during a yield analysis. The Graph Properties dialog box Yield Data tab is used to set these options. The options control how the traces for each trial display on the graph. You can display the traces for passed trials, failed trials, or all trials. You can also display the mean value of the traces. The color used to display the traces for each trial can be the same as the measurement, or it can be gray so that the nominal value is distinguishable from the trials. Other available options include the display of the range of values as a standard deviation, two standard deviations, or as the lowest and highest values computed so far. These ranges can display as a trace of min/max values, as range bars that are centered about the trace, or as a filled envelope that shows the computed range. You can choose Graph > Clear Frozen to clear the traces that are accumulated on a graph as a result of a yield analysis. Analyzing the Results Each parameter with a statistical variation can take on a range of values. This range of values is divided into a set of discrete ranges called bins. The bins are used to keep track of the number of passes and fails as a function of the parameter value. As the yield analysis proceeds, the statistical parameter space is sampled at random. The value of each parameter falls into one of these bins for each trial. A parameter value that falls within the range of one of the bins for a single passing trial adds to the number of passing trials for that bin. A parameter value that falls within the range of one of the
AWR Proprietary
Tuning, Optimizing, and Yield bins for a single failing trial adds to the number of failing trials for that bin. The percentage of trials that pass are computed from the number of passing trials and the number of failing trials. You can plot the binned results for each statistical parameter as a histogram. The histogram displays the percentage yield as a function of the parameter value. Each bar in the histogram represents one bin. The numbers on the top of the bars display the total number of trials that fell into that bin. The height of each bar represent the percent of the values that passed the yield. To create a component sensitivity histogram, create a histogram graph and then add a YSens measurement to the graph (select Yield as the Measurement Type in the Add/Modify Measurement dialog box). An example histogram is shown in the following figure. The component sensitivity histogram can be used to determine how sensitive the yield is to the parameter variations. The histogram can also indicate if the yield could be improved by changing the nominal value of the parameter. If the peak of the component sensitivity histogram distribution is centered around the nominal value of the component, then the parameter is said to be "centered". A peak of the distribution that is not centered about the nominal value indicates that the yield could be improved by changing the nominal value. If the distribution of the component sensitivity histogram is flat, then the yield is not sensitive to the value of the component. A narrow distribution indicates that the yield is sensitive to the component value.
The previous distribution indicates a variable that is close to being centered (the peak of the distribution is about 175, while the nominal value is 180). The following histogram shows an uncentered variable.
AWR Proprietary
The following displays a histogram for a parameter to which yield is not sensitive.
Yield Optimization As indicated previously, a peak of the component sensitivity histogram distribution that is not centered about the nominal value indicates that the yield could be improved by changing the nominal value. The yield optimization capability within the AWRDE automatically adjusts selected nominal parameter values to improve the yield. The yield optimization is invoked by choosing Simulate > Yield Analysis. In Analysis Methods, select Yield Optimization. The following dialog box displays.
AWR Proprietary
Yield optimization requires a Monte Carlo analysis for each iteration of the yield optimization algorithm. The number of trials needed for each analysis depends on the desired degree of confidence in the yield estimate and on the yield value. The confidence level used during the yield optimization is specified by Maximum error. The number of trials that are needed for the given confidence level are then computed automatically as the yield analysis continues using the current computed yield value. Each iteration of the yield optimization finishes when there have been a sufficient number of trials for the specified confidence level. A maximum number of trials per iteration must also be set in the yield optimization dialog box (Maximum Iterations). This number is used as an upper limit to the number of trials that are used to estimate the yield. If the confidence level cannot be achieved with the maximum number of trials, then the computed yield based on the maximum number of trials is used instead. The yield analysis also allows the specification of a dampening factor. The dampening factor determines the size of the corrections that are used for each iteration of the yield optimization algorithm. If the dampening factor is close to one, then large corrections are made (that may overshoot the optimum yield values). If the dampening factor is small, then the yield optimization makes small corrections in the nominal parameter values as the yield is optimized. Usually the default dampening should be sufficient. If the yield tends to "bounce around" during yield optimization, then a smaller value of dampening should be tried. A larger value of dampening may be helpful for speeding the search for an optimum solution.
AWR Proprietary
AWR Proprietary
AWR Proprietary
Without Switch Views and Switch Lists, you can build a schematic as shown. However, if you want to use Switch Views you have three different ways to model the inductor, including: 1. Distributed model for a microstrip inductor 2. Lumped element inductor 3. EM simulation In the filter schematic, the inductor component must be a subcircuit as shown in the following figure.
SUBCKT PORT ID=S1 P=1 NET="inductor1" Z=50 Ohm
1 2
The name of each Switch View is important to consider early in your design. You should establish a naming convention that makes sense for the entire design. Typically, the Switch View is named for its purpose, such as LVS or EM. In this example, the LVS named Switch Views is used for the proper LVS representation of each component, and the EM named Switch Views is used when there is an EM simulation available for the component. Adding Switch Views Any schematic can have a Switch View. To create a Switch View, you create a new schematic or rename an existing schematic using the naming convention "default_name/switch_view_name" where "default_name" is the name of the existing schematic you are making the Switch View. If the Switch View you are using uses EM results or measured data,
AWR Proprietary
Using Simulation Filters and Switch View Lists you must first create the schematic for the Switch View and then add to that schematic the EM or measured data block as a subcircuit. Switch View schematics must have the same number of ports as the "default_name" schematic. In the previous filter example you create Switch Views for the inductor in the circuit. The schematic setup for Switch Views is shown. The model in the inductor1 schematic is shown in the following figure.
MRINDSB2 ID=MSP1 NS=5 L1=70 um L2=45 um L3=65 um LN=35 um AB=180 W=10 um S=5 um WB=10 um HB=2 um LB=0 um EPSB=1 TDB=0 TB=1 um RhoB=1
You need to add a Switch View for the lumped element inductor used for the LVS netlist. Here you add a new schematic named "inductor1/LVS".
When you add this schematic, it displays differently in the Project Browser, showing you that it is a Switch List of the "inductor1" schematic.
Inside this schematic is a lumped element inductor with two ports, as show in the following figure.
AWR Proprietary
Adding Switch Lists The Switch List is the mechanism through which you pick a different Switch View for each measurement. A Switch List tells the simulator which model to substitute for the default model when performing a simulation. To create a Switch List: 1. Choose Simulate > Simulator Configurations and click the View List Configurations tab. 2. Under Configurations, click the New button. In the Create New Simulation Configuration dialog box, enter a name for the new configuration, then click OK. The name you enter is the name chosen when adding measurements to the project. 3. Select the new configuration name under Configurations, and then under Design View Lists click the New View List button.
AWR Proprietary
Using Simulation Filters and Switch View Lists 4. In the Edit Switch List dialog box, ensure that Select top level design for Switch List is set as a schematic that is using a Switch View, as this populates the Available views window. You can also click the Add View Name button to add additional Switch View names. 5. In the Available views area, select any view name and click the Add button to add this view to the current View list. Note that you can add several Switch View names to any view list. When you do, the first Switch View found in this list is used in simulation. Use the Move Upand Move Down buttons to change the order in the Switch List. 6. Click OK to add the View List to your project. 7. Repeat, as necessary, to create Switch Lists for the other Switch Views in your project. When you add or edit a measurement, you select the Switch List name you want for the measurement under Configuration in the Add/Modify Measurement dialog box. The options available are Default or any Switch List names you have configured. For example, to create a Switch List to use the LVS Switch Views: 1. Create a configuration named "For LVS".
2. Click the New View List button to display the Edit Switch List dialog box. Select Filter from Select top level design for switch list since this schematic uses a subcircuit that has Switch Views.
AWR Proprietary
3. Click LVS in the Available views section and then click the Add button to add it to the View list, then click OK.
4. When complete, the new Switch List displays under Configurations in the Simulation Configuration dialog box and you can use it in simulation. You can select this Switch List and edit or delete it using the buttons at the bottom of the dialog box.
AWR Proprietary
5. For example, to look at the magnitude of S21 of the filter using the lumped element inductor Switch View, select For LVSas the Configuration when adding the measurement from the Add/Modify Measurement dialog box.
AWR Proprietary
Using Simulation Filters and Switch View Lists For this example, a second Switch List was set up to use any EM models. The following graph shows results with the For LVS and Electromagnetic Switch Lists.
s21
0 -0.5 -1 -1.5 -2 -2.5 -3 0.1 1.1 2.1 3.1 Frequency (GHz) 4.1 5
AWR Proprietary
The APLAC netlist written by the AWRDE has the following structure: 1. Prepare statement (if present, Prepare must always be the first item in the netlist) 2. Before circuit description SCRIPT blocks
AWR Proprietary
Using Scripted APLAC 3. Circuit description (all the elements in the schematic except SCRIPT blocks) 4. Sweep statement(s) defining the analysis and the measurements 5. After circuit description SCRIPT blocks The SCRIPT block POSITION parameter defines whether the SCRIPT block belongs in the Before circuit description or the After circuit description group. The ORDER parameter defines the netlisting order of the SCRIPT blocks within each group, such that the SCRIPT block with the greatest order is netlisted last. The SIM parameter defines whether the SCRIPT block is allowed to spawn a Scripted APLAC simulation or not.
AWR Proprietary
Chapter 3. DC Analysis
DC Analysis calculates the DC operating points of circuits. You can use DC simulation to generate data on plots, for example, the IV curves of a transistor and annotating DC values on a schematic. It is also the first simulation step when performing other simulations such as linear, harmonic balance, or transient. Any circuit with a nonlinear model or a source with a DC component automatically requires DC simulation. For example, you might have a nonlinear transistor model that is biased up and you are doing a linear measurement such as (S(2,1)). The DC simulation must occur first to get the linear characteristics of the nonlinear transistor model. The following are the most common measurements used for the DC simulator alone: IDC and VDC are available under the Nonlinear > Current and Nonlinear > Voltage categories when adding or editing measurements. These are DC current with all AC sources turned off. If you are sweeping power, these values are flat versus power. IVCurve and IVCurve2 are available under the Nonlinear > Current category when adding or editing measurements. These are DC measurements used specifically with IVCurve sources to easily plot IV curves of transistors. Any schematic annotations beginning with "DC" are DC simulator only. One of the most common mistakes users make is to use the IDC measurement in a power amplifier and not understand why the value is constant versus input power. Due to self-biasing effects, the DC current should vary as input power is increased, because for IDC, none of the AC sources are on. The proper way to look at the DC value of a circuit under AC drive conditions is to use the Icomp measurement with a harmonic index of 0. For example, see the following graph that shows the IDC and Icomp measurements and the DC value of a power amplifier power sweep.
DC Current
60
50 Current (mA)
40
30
The measurements agree at low power and then diverge quickly and the amplifier goes into saturation.
AWR Proprietary
AWR Proprietary
AWR Proprietary
AWR Proprietary
Chapter 5. AC Analysis
AC analysis calculates the linear (i.e. small signal) response of the circuit to stimuli or noise generating elements. As with port-based linear analysis, an initial DC analysis calculates the operating point of all nonlinear elements, which determines their linear equivalent for the AC analysis. Unlike the port-based linear analysis, however, AC is a nodal analysis that calculates complex voltages and currents, at all nodes and through all branches. AC analysis can include one or more stimuli with arbitrary magnitude(s) and phase(s), but it only simulates one frequency at a time. It uses the Tone 1 frequency sweep for all sinusoidal voltage and current sources in the circuit, as well as any other sources with an ACMag parameter that is set to a non-zero value. All of these stimuli are on for the simulation. Non-sinusoidal signal sources are assumed to be of zero value (voltage sources are shorted, and current sources are open circuit). Regardless of type, all ports act as terminations only, not stimuli. To perform AC analysis, add AC measurements in the Add/Modify Measurements dialog box by selecting Linear > AC as the Measurement Type. AC analysis is supported by APLACTM and HSPICE simulators, so select Aplac AC Noise or HSpice AC Noise from Simulators. For AC voltage and current measurements, selecting the dB check box calculates 20*log10( |measurement| ). For example, if the magnitude of the input voltage is 1V, then a voltage magnitude measurement in dB is the voltage gain of the circuit from the input source to wherever the measurement is made. Because AC is a linear analysis, the magnitude of the input has no effect on the gain; for example, if the voltage gain is 10, then 1mV input yields 10mV out, and 1kV input yields 10kV out, the DC supply is ignored after the initial DC analysis.
AWR Proprietary
AC Noise Analysis
AWR Proprietary
AWR Proprietary
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Multi-tone simulations (those that involve an application of two or more sinusoids that are harmonically unrelated) are very common in RF and microwave applications but, again, very difficult to handle in time domain simulators. Consider, for example, an amplifier that is to be tested by an application of two equal-amplitude sinusoids located at 9.999 GHz and 10.001 GHz. Such a test is frequently applied to determine the third-order intercept, a popular figure of merit of an amplifier's linearity. The two-tone input may be viewed as a high-frequency carrier modulated by a comparatively very slow sinusoid where, in this case, fcarrier = 10 GHz and fmodulation = 1 MHz. So, there are 10,000 carrier cycles per one cycle of the modulation (envelope) signal and, in addition, the simulator must follow the slow envelope over several periods to determine the steady-state. More importantly, a time domain simulator takes many steps per carrier cycle in order to maintain accuracy. In all, each unknown circuit waveform (in a time domain simulator, "unknown circuit waveforms" are usually the node voltages and certain branch currents) is sampled at hundreds of thousands of instants to find the solution, and worse, the number of samples increases with the ratio of carrier/envelope bandwidth. The solution process is therefore slow, memory consuming, and often simply impractical. Many high-frequency circuits are high-Q, implying that they exhibit transients that last over hundreds and even thousands of carrier cycles. RF and microwave designers are primarily interested in steady-state responses, and time is wasted in the process of simulating through the transients. HB simulators overcome these problems in a rather elegant and efficient manner, by resorting to a frequency domain formulation of circuit equations (equations that arise from an application of Kirchoff's laws and the circuit elements' constitutive relations.) The frequency domain formulation is obtained by substituting the unknown waveforms with their phasor equivalents, and then matching the phasor coefficients that correspond to distinct frequencies. The following figure illustrates the principle behind HB simulation.
As shown in this figure, the circuit is partitioned in two subnetworks -- one that contains all the linear elements and another that encompasses the nonlinear devices. The voltages at the interconnecting ports are considered as the unknowns, so the goal of HB analysis is to find the set of voltage phasors in such a way that Kirchoff's laws are satisfied to desired accuracy. One way to state this goal in formal terms is: Find V1(k),V2(k),...,VN(k) for all k such that relation |IL(k)-INL(k)|< holds at each interconnecting port. Here, k is the set of significant frequencies in the port voltage spectra and specifies the desired accuracy.
(6.1)
(6.2)
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis The solution search, in most general terms, consists of the following steps: 1. Specify the set of significant frequencies, specify the desired accuracy, and determine an initial guess at the solution. 2. Calculate the currents that enter the linear subnetwork. 3. Calculate the currents through the nonlinear devices. 4. Calculate the difference between the two sets of currents. 5. Determine a new guess at the solution in a way that reduces the difference. 6. Repeat the process starting at Step 2 until Kirchoff's laws are satisfied. The elegance of the HB approach, in reference to the problems seen by time domain simulators, lies in the following observations: At each step of the iterative solution search, the currents entering the linear subnetwork are related to the interconnecting port voltages by the linear subnetwork's Y-parameters. Distributed components, therefore, are simulated in the most natural way, by means of frequency domain linear circuit techniques. The frequency domain representation of two-tone signals, as will soon be apparent, usually consists of less than 100 terms. This is in contrast to the time domain representation that requires hundreds of thousands of samples. HB simulators impose the steady-state conditions by virtue of phasor expansion of the unknown signals. Simulation times are, therefore, independent on the length of circuit transients. Knowing the basic steps of HB analysis, a number of practical questions need to be answered. Some of these questions have a significant impact on the accuracy, speed and ultimate success of the simulation, as discussed in the following sections.
For the purposes of simulation, you truncate this representation to a finite set of terms by discarding components beyond some point n=N. The act of spectrum truncation is a natural one, however, as high-frequency terms become less significant due to the band-limited nature of physical circuits.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Generally, the choice of N depends on the degree of nonlinearity. Power amplifiers operating deep in compression, for example, require more terms than low-noise amplifiers or amplifiers that behave almost linearly. The former may require N=8, for example, while the latter may need as little as N=3. The idea of spectrum truncation is slightly more complicated in the case of "multi-tone" excitations. A multi-tone excitation involves two or more tones that are not integer-related, as in the previous example that involved 1=9.999 GHz and 2=10.001 GHz. In that case, it may be shown that circuit phasors correspond to frequencies in the set
In general, the spectral components that are retained in the simulation are given by |m1+n2| , where
(6.3)
m = M, ..., M n = N, ..., N
In the previous figure, the truncation was performed using M=N=2. The terms n1 are often referred to as tone-1 harmonics and, similarly, m2 are called tone-2 harmonics. The multipliers m and n are referred to as harmonic indices. The quantity |m|+|n| is known as the order of an intermodulation (also, mixing or distortion) product. The two-tone spectrum shown in the figure may be simplified further by discarding intermodulation products that are higher than some K=|m|+|n|. In a near-linear low-noise amplifier tested under two-tone excitation, for example, experience shows that the terms at 22-21 and 22+21 are negligibly small. These terms being of order 4, it may be reasonable to exclude them from consideration by setting K=3. Modern HB simulators, like the one featured in MWO/AO, are very efficient and, in terms of speed, far less sensitive to the number of frequencies than programs of the early 1990s; the speed improvement gained by limiting K is therefore small, and setting it to a small number should be avoided. The case of three-tone analysis is analogous to the two-tone situation described previously. Three-tone simulations are very useful for (but not limited to) linearity testing of mixers, where the circuit is subject to an LO excitation and two-closely spaced sinusoids as an IF (or RF) input. In this case, every waveform in the circuit has an equivalent phasor representation at frequencies in the set
AWR Proprietary
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Oversampling is an effective means of reducing the effects of aliasing without paying a significant penalty in simulation time. The question arises as to when to use it and what the right oversampling sampling factor should be. In MWO/AO, the default oversampling factor is 1. This should be sufficient in a great majority of simulations with the possible exception of intermodulation analysis of mixers. In mixer intermodulation analysis, the simulator must be able to capture intermodulation products that can be as much as 100 dB smaller than the largest signal in the circuit (normally, the LO). Since the LO is very large, otherwise minor aliasing effects could effectively "mask out" the crucial intermodulation products or, at least, cause errors in their calculation. You can prevent this by properly selecting the set of significant frequencies, and by selecting a larger oversampling factor. You should check the results by repeating the simulation with a larger set of significant frequencies and a larger oversampling factor. Specifying Simulation Accuracy HB simulation is an iterative process that terminates when Kirchoff's laws for the circuit are satisfied. Two criteria are used to determine whether these laws are satisfied: the maximum absolute error and the maximum relative error between the linear and nonlinear currents at each frequency and at each interconnecting port. The simulation ends when either of these two criteria are met:
| I L(k ) I N L(k ) | < abs | I L(k ) I N L(k ) | | I L(k ) + I N L(k ) | < rel
The default values used in the MWO/AO simulator are sufficient in a majority of situations, but you should be cautious when simulating circuits that feature very small, but nevertheless significant, signals. Convergence The simulator makes a finite number of attempts at satisfying Kirchoff's laws, after which it either reports convergence failure or it resorts to source stepping. Convergence failures, though rare, are usually a consequence of very strongly nonlinear circuit behavior. In such cases, one difficulty encountered by the simulator is a lack of a "good guess" at the solution. Normally, the DC solution or the linear approximation of the circuit constitute a good guess, but that may not be the case for strongly nonlinear circuits. To find a better initial guess, the simulator reduces the specified excitation level (thereby lowering the level of circuit nonlinearity) and attempts to find the "reduced" solution. Upon success, it uses that solution as the initial guess when solving the original problem. Sophisticated convergence control algorithms in MWO/AO, coupled with source stepping, result in successful convergence in most situations. Occasionally, however, the simulator fails to converge. The following are some of the common causes and solutions: Circuit instabilities. If the circuit being analyzed is not conditionally stable (or, in the case of oscillator analysis, unconditionally unstable), harmonic balance is likely to have a difficult time converging. Often an instability is caused by S-parameter data that has been extrapolated to DC or the higher harmonics of the simulation frequency. With the default (linear) interpolation, this extrapolation often results in devices that generate power. Too few frequency components. If the circuit being analyzed is strongly nonlinear, it is important, both for accuracy and convergence, to specify a sufficient number of frequencies in the simulation. Ensuring this is the first step in troubleshooting convergence problems.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Nonlinear device modeling. Discontinuities in nonlinear model equations and their derivatives are a common source of convergence difficulties. When utilizing user-defined models, it is imperative to model nonlinear functions and their derivatives smoothly. General-purpose models have been devised with continuity in mind, but problems can still occur if their parameters are entered or extracted incorrectly. Too few iterations. You are usually given control over the number of iterations taken by the simulator in finding the solution. Sometimes, increasing this number is a simple remedy for convergence difficulties. Further options for speeding up or improving convergence are available on the Harmonic Balance tab of the Circuit Options dialog box. See Section 6.1.3, Harmonic Balance Options for more information.
The following are descriptions of the available options: Tone Harmonics For Tone 1, Tone 2, and Tone 3, the entries under Number of harmonics correspond to the quantities M, N and P in the section called Choice of Significant Frequencies. Oversample factor is the oversampling factor "r " discussed in the
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis section called Calculation of Nonlinear Device Currents. The default value r=1 is adequate in most situations; a possible exception is intermodulation analysis of mixers. Harmonic Limiting enables spectral truncation of harmonic components an order higher than Max Order, which is analogous to the quantity K in the section called Choice of Significant Frequencies. Applying Max Order to intermods truncates only the intermodulation products with orders higher than Max Order, while including all the harmonics specified for each tone under Number of harmonics.
Limit harmonic order
For example: in a two-tone simulation, Tone 1 and Tone 2 are set to seven harmonics each, Max Order is set to five, and both Limit harmonic order and Apply Max order to intermods only are selected. The following table shows the harmonics included in the simulation:
Convergence
Absolute Error and Relative Error are the quantities abs and rel from the section called Specifying Simulation Accuracy,
which ultimately sets the accuracy of the simulation. Linearization Choose any of the Linearization methods along with a degree of tolerance to speed up the simulation. If the models don't fit the chosen linearization model within the specified tolerance, the simulator uses the approximate nonlinear model. The default is No linearization. Iteration Settings sets the limit on the number of attempts at finding the solution. If this number is exceeded, the simulator reports convergence failure or it resorts to source stepping. Source stepping may be disabled in the Circuit Options dialog box on the Circuit Solvers tab, but it should never be necessary.
Max Iterations
The Circuit Options dialog box Harmonic Balance tab contains options you can try for convergence help. Click Configuration Wizard to display the HB Configuration Wizard dialog box.
AWR Proprietary
In Select a predefined set of convergence settings you can choose which solver strategy the engine uses. If your circuit is converging slowly or poorly, you can choose a different strategy. If your circuit always source-steps, you can speed up the simulation by selecting Start with source stepping. When you select this option, the simulator starts the simulation by reducing the port drive levels by the amount specified in Initial source reduction in dB, and then begins stepping up the power by the Initial source step size in dB. You can also change the error tolerance for the initial power steps under Tolerance control for initial steps. To access more advanced HB options, click the Advanced button to display the Advanced Harmonic Balance Options dialog box.
AWR Proprietary
Select Save results in project for use as a starting guess for harmonic balance and Use saved results as the initial guess for harmonic balance to speed up convergence during tuning, optimization, or yield analysis. These options may also cause convergence problems though. For example, if the circuit has changed enough between simulations that the old results are a poor initial guess, the simulation may not converge. Similarly, you can select Don't use previous sweep point for starting guess for HB and Don't use previous sweep points for starting guess for DC for faster convergence during tuning, optimization, or yield analysis if the circuit has changed enough between simulations. Under Solver Options you can choose Node Based (Default) or Port Based (Occasionally Faster). Node Based uses nodal analysis of the circuit, whereas Port Based only calculates the voltages at the ports. You can us a Port Based solver for a circuit that does not converge easily. By default, the simulator stops sweep on convergence or simulation failure. Selecting Continue sweep on failure causes the simulator to run the entire sweep. You can select Disable partial results if you do not want the partial results due to convergence failure, simulation failure, or user-terminated simulation to display. Under Compute and save results from you can select which node voltages and currents are saved after a simulation. By default, all voltages and currents associated with nonlinear elements are saved, as well as all linear node voltages and currents. For circuits with large numbers of linear components but few nonlinear elements, clearing the All linear V and I check box may save memory and simulation time. Selecting Q, C, and G for nonlinear sources also saves charge, capacitance, and conductance for nonlinear current and charge sources. Saving excessive amount of results limits the size of a circuit being analyzed due to memory consumption.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Under Convergence Aids, you can set the value of the series resistance (1e-6 ohms by default) which are inserted by the simulator between the linear and nonlinear portions of the circuit. Select the Add conductance across nl elements check box to add a large (1e6 ohms by default) resistor across all nonlinear elements. Solver Strategy and Training File automatically chooses the options that solve the problem in the least amount of time. To use the training feature, select the training file name (a default hb_config_learn.txt training file is provided) and then select Train the solver for fastest simulation in Select solver strategy. With this strategy, the solver automatically tries each set of configurations in the configuration training file when the simulation runs. You should set a reasonable MAX_RUN_TIME within the training file to prevent the simulator from running excessively long with a convergence failure. After the training simulation is complete, the configuration options for the fastest simulation display under Trained solver configuration. After the training is complete, reset Select solver strategy to Default solver (can be used with trained configurations and/or saved results) to set the configuration options for the next time you run the solver.
Config. file for automated training
Name value
AWR Proprietary
HB_SOLVE Base solver used to solve the HB problem. RELAX_SOLVER Continuation solver used to improve convergence. The continuation solver uses a base solver (or another continuation solver). RELAX_SOLVER2 If a different approach to continuation is desired for sweep points other than the first point, specify this solver. STRATEGY_SOLVE The "top level" solver used to solve the problem. Some strategy solvers use other strategy solvers. For example, the trained solver uses the strategy solver specified in the training set. The following table provides a list of configuration commands: Command HB_SOLVE Argument HB_BaseSolver_H HB_BaseSolver_H RELAX_SOLVE HB_SourceStep_D HB_SourceStep_P HB_SourceStep_R Description Default solver - best scaling Use reduced y-matrices - may work better with lots of parasitic elements Default source stepping algorithm (advanced) Start with reduced source and increase to find the solution. The algorithm starts out source stepping with configurable parameters on how it steps.
STRATEGY_SOLVE
HB_Strategy_Dc_FIRST Default strategy. Solve for the DC solution first and use it for a starting guess for the HB solution HB_Strategy_Dc_FIRST Solve the HB problem without solving for the dc first as a starting point. This option can sometimes be significantly faster for problems that converge easily.
MAX_RUN_TIME
Time in seconds
Specify the max number of seconds to allow the solver to obtain convergence. This should always be set when optimizing settings.
You must use the OPTION command to set any of the following options. For example, to set the Krylov subspace max size to 10, add:
OPTION NLS_OP_MaxNumSubDim 10
AWR Proprietary
NLS_OP_MaxNumSubDim Max size of subspace for harmonic balance. Reducing this 100 may reduce memory usage for large problems. A size of 10 may be reasonable (a smaller size may degrade convergence though). TRY_LESS_TONE OPT_ITER_MAX OPTIMIZE_TYPE Try using less tones for a starting value. A value of zero indicates that all tones should be used. Maximum number of iterations to use when using the optimizer with training. Type of optimizer to use with optimizeable options.1=Random Optimizer 2=Pointer Optimizer 1 (1,2) 0 (0-N)
Script for training the HB simulator $HB_CONFIG_BEGIN Each solver set represents a different approach to the problem ---Fixed step size--$HB_SOLVE_BEGIN STRATEGY_SOLVE HB_Strategy_DC_First RELAX_SOLVE HB_SourseStep_D RELAX_SOLVE2 HBSourceStep_D HB_SOLVE HB_BaseSolver_H MAX_RUN_TIME 40 Options for nonlinear solver OPTION_OPTD NLS_OP_MaxNumBakTrak 1 3 20 OPTION NLS_OP_NormTypeFlags 6 OPTION NLS_OP_EtaControl 1 OPTION NLS_OP_StepAcceptMethod 3 OPTION NLS_OP_NormHistLength 4 OPTION NLS_OP_ContOnNR_Failure 1 OPTION_OPT NLS_OP_FixStepSize 0.1 0.7 1.0 OPTION NLS_OP_UpdateFactorMethod 2 OPTION_OPT TRY_LESS_TONE 1 3 10 OPTION OPT_ITER_MAX 400 $HB_SOLVE_END --- Default controlled step size ------$HB_SOLVE_BEGIN STRATEGY_SOLVE HB_Strategy_DC_First RELAX_SOLVE HB_SourceStep_D RELAX_SOLVE2 HB_SourceStep_D HB_SOLVE HB_BaseSolver_H Options for nonlinear solver OPTION NLS_OP_MaxNumBakTrak 3 OPTION NLS_OP_NormTypeFlags 6 OPTION NLS_OP_EtaControl 1 OPTION NLS_OP_StepAcceptMethod 3
AWR Proprietary
(6.4)
(6.5)
The tone-1 fundamental, 1, is controlled (as always) by the Nonlinear Frequencies or Project Frequency controls. There are several methods to specify the tone-2 fundamental. Some sources allow direct specification of 2, and others allow a specification of 2 as an offset from the tone-1 fundamental. The fundamental frequency of the second tone may, in addition, be specified as a function of the fundamental frequency of the first tone. To specify tone-2 as a function of tone-1, you use the _FREQH1 reserved variable. For example, if =0.1 GHz, you can define 2 by entering _FREQH1 + 0.1 for the tone-2 source frequency. Three-tone Analysis Three-tone simulations use the set |m1+n2+p3|
(6.6)
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis The fundamentals may be specified directly in the source (using the PORTFN element) or by a combination of single and two-tone elements. For example, tone-1 and tone-2 may be specified by the PORT2 element while PORTFN may be used to specify the third. Multi-tone Analysis MWO/AO version 6 or later supports simulations with up to eight tones. Number of Harmonics and Oversample Factor options for tones 4 through 8 are set directly on the port (or voltage or current source.) Double-click the element symbol in the schematic to display the Element Options dialog box, then click the Show Secondary button. The NHarm and NSamp parameters set the number harmonics and oversampling factor, respectively. Sources There are two types of sources in MWO/AO: port sources and discrete sources. Discrete sources, which are found under Sources in the Element Browser, are ideal voltage or current sources. Port sources, which are found under Ports in the Element Browser, are defined by their available power and termination impedance. Port sources serve two purposes. First, they provide a convenient and intuitive definition of power sources; second, they define the inputs and outputs of a circuit, allowing its use as a subcircuit within another schematic. There are several types of ports used to specify excitations. A port is added to a schematic by dragging it from the Element Browser and dropping it on the schematic. You can also double-click an arbitrary Port element and change the Port Type on the Element Options dialog box Port tab. For example, consider the simple termination (passive port) element located on the main toolbar:
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis 2. On the Frequencies tab of the Project Options dialog box, delete the default range if necessary, and set the simulation for a single frequency.
Note that you can select frequencies by right-clicking the schematic in the Project Browser, choosing Options and then clearing the Use Project Defaults check box in the Options dialog box. 3. Change PORT 1 to a nonlinear source by double-clicking the Port symbol to display the Element Options dialog box, and then clicking the Port tab. Under Port type choose Source, and select the Swept power check box.
AWR Proprietary
4. Type "0", "5", and "1" respectively for PStart, PStep, and PStop. You can also add a swept power port directly to the schematic by dragging one from the Ports > Harmonic Balance category in the Element Browser and dropping it on the schematic. 5. Verify that the simulation options are set correctly by double-clicking Circuit Schematics in the Project Browser. On the Harmonic Balance tab, for Tone 1, specify "7" as the Number of harmonics, and leave the remaining options at their default values. 6. Add a graph by right-clicking Graphs in the Project Browser and choosing Add Graph. Select Rectangular as the Graph Typeand click OK. 7. Right-click the new graph under Graphs in the Project Browser and choose Add Measurement. In the Add Measurement dialog box, select Nonlinear > Power as the Measurement Type and LSSnm as the Measurement. This measurement plots the large-signal S-parameters from port m to port n, over a power range. The S-parameters may be measured at any of the harmonics taken into account by the simulator (in this case, 7 harmonics of the fundamental). 8. Select your schematic name in Data Source Name, select PORT_2 for Port (To), PORT_1 for Port (From), and 1 for both Harmonic Indices. For Sweep Freq (FDOC) select Plot All Traces, and under PORT_1 (the port power sweep) select Use for x-axis. Select the dB check box under Complex Modifier to display the results in decibels.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis The following figure displays these selections.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis 9. To add the voltage spectrum at the output, add another graph and measurement. Select Nonlinear > Voltage as the Measurement Type, Vharm as the Measurement, PORT_2 as the Measurement Component, and Pwr = 5 dBm as PORT_1, then click OK. 10. Run the simulation by clicking the Analyze button on the toolbar, by pressing F8, or by choosing Simulate > Analyze. The voltage spectrum and gain compression graphs should look like the following graphs.
Two-tone Amplifier Analysis Suppose you now want to analyze the same amplifier under two-tone excitation. You can create another project, or more conveniently, create another schematic in the existing project and copy-and-paste the circuit in the new schematic window. 1. Assuming that the two-tones are located at 1 GHz and 1.01 GHz, specify 1 GHz on the Frequencies tab of the Options dialog box for the newly created schematic (2.99 GHz is the tone-1 fundamental frequency for this schematic). 2. The simplest way to incorporate a two-tone source is by using ports. You can select a two-tone source from Ports in the Element Browser. You can also edit the existing PORT_PS1 element by double-clicking it, and on the Port tab of the Element Options dialog box, selecting a new port type. Select Tone 1 & 2 as the Tone Type and click OK. Click OK again to change the port element in the schematic to PORT_PS2, a two-tone swept-power source. The following figure shows the schematic.
AWR Proprietary
3. Edit the port parameters if necessary, so that PStart = "-20 dBm", PStop = "10 dBm", PStep = "1 dB" and Fdelt = "0.02 GHz". 4. Right-click Circuit Schematics in the Project Browser and choose Options to display the Circuit Options dialog box. On the Harmonic Balance tab, enter "5" for Number Of Tone 1 Harmonics and "5" for Number Of Tone 2 Harmonics. Clear the Use Project Defaults check box. 5. Suppose the power at frequency f1 (2.99 GHz) and at 2f1-f2 (2.97 GHz) are of interest. Add another rectangular graph to the project and add a measurement to it. Select Nonlinear > Power as the Measurement Type in the Add Measurement dialog box, and select Pcomp as the Measurement. Select the appropriate schematic in Data Source Name, select PORT_2 as the Measurement Component, and click on the arrows to the right of the Harmonic Index options to select 1 for the first, and 0 for the second. You can also click the "..." button next to the Harmonic Index arrows to display the frequencies at all the harmonics and choose 2.99 GHz for fundamental. Select Plot all traces in Sweep Freq and select Use for x-axis for PORT_1.
AWR Proprietary
6. Add another measurement to plot the intermodulation power by following a similar procedure, only this time using (2,-1) as the Harmonic Index pair. 7. Run the simulation. The simulation response shown in the following graph should display.
Three-tone Mixer Analysis This example demonstrates the three-tone analysis capabilities of MWO/AO. It is based on the FET_Mixer.emp example project in the \Examples subdirectory of the MWO/AO program directory. 1. To start, save the example as another project, for example FET_Mixer_3t.emp. 2. Create another schematic named "Three tone" and copy the circuit diagram from the "FET Mixer" schematic.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis 3. Set the document frequencies for the new circuit to 1890 MHz. 4. Edit the Port 1 (LO) source, as described previously, by setting the Tone type to Tone 3. 5. Set the frequency of the port to 1400 MHz. Edit Port 2 (input) by setting Tone type to Tone 1 & 2, Pwr1=Pwr2 = "-10 dBm" and Fdelt = "20 MHz". The Three-tone schematic should now look like the following schematic.
6. Set the following options for the new circuit: Number Of Tone 1 Harmonics to "3" Number Of Tone 2 Harmonics to "3" Number Of Tone 3 Harmonics to "11" Max Order to "11". 7. Add a graph and add a Pharm measurement from the Nonlinear > Power category to display the spectrum at the IF port (Port 3). The spectrum should display as follows.
AWR Proprietary
Harmonic Balance (Nonlinear) Analysis Nonlinear measurements require knowledge of currents or voltages (or both). A variety of elements have been provided for use in identifying the voltages and currents. Measuring Voltages and Currents The following shows the voltmeter and ammeter elements.
Voltage can be measured in the usual fashion, by placing a voltmeter in parallel with the unknown voltage; likewise, current is measured by placing an ammeter in series with the branch where the unknown current flows. When the simulation terminates, you can display the measured quantities by selecting Nonlinear Voltage or Nonlinear Current in the Add Measurement dialog box. Measuring Power The following figure shows the schematic of a power meter.
The meter measures the current through a branch and the voltage across it, and uses the measured quantities to calculate average power. You can display the measured power by selecting Nonlinear Power in the Add Measurement dialog box. Nonlinear Measurement Notes Commonly, you want to measure power supplied by a source and power dissipated in a load (or voltages and currents associated with the source and the load.) These tasks are easily accomplished using various meters, but the use of ports provides an even simpler alternative. Namely currents, voltages, and powers are automatically computed for ports, as shown in the following figure.
AWR Proprietary
Note that the voltages and currents at the pins of nonlinear devices are available by default. Measuring these using the measurement devices directly is preferable to inserting additional elements like voltmeters and ammeters into the schematic.
AWR Proprietary
f1
RF IN IF OUT
LO
f2
where f1 is the tone set at the input port and f2 is the tone set at the LO of the mixer. With HB analysis, there are many mixing products from f1 and f2 at the output of the mixer. See the spectrum plot before for a sample spectrum at the output of the mixer.
AWR Proprietary
For this example the amplifier at the output of the mixer is narrow band. See the amplifier response trace on the graph that shows the amplifier is matched at the f1+f2 signal and quickly attenuates the other frequencies. For traditional HB simulation, the amplifier at the output is solved for all the possible frequencies. For MRHB, the amplifier at the output is configured to only simulate at the dominate frequency. The following figure shows the spectrum at the output for the traditional HB analysis.
Spectrum Output
0
-100
-200
-300
AWR Proprietary
Spectrum Output
0
-100
-200
-300
Finally, the following figure shows the voltage waveforms at the output of the circuit.
Waveforms
0.1
0.05
-0.05
In this simple example, there may not be a lot of time and memory savings from having the last amplifier use a limited set of frequencies. On circuits with several frequency translations, however, the item and memory savings is significant. See examples in the AWRDE to see circuits that are significantly faster without a loss of accuracy when using MRHB.
AWR Proprietary
will include the following harmonics. Note that there are two signals from the LO frequency (1 and 2 GHz) and then there are three sidebands for each of these frequencies.
AWR Proprietary
Spectrum
0
-50
-100
For the Diamond TRUNC type you specify the maximum order for all the tones. The settings are as follows
ID=HB1 NTONES=2 TRUNC=Diamond MAXHARMDIA=3 TONESPEC1="f1" TONESPEC2="f2" Fo . . . Fn
will include the following harmonics. Note that there are two signals from the LO frequency (1 and 2 GHz) and then the number of sidebands for each LO frequencies decreases for each higher tone 1 signal.
AWR Proprietary
Spectrum
0
-50
-100
-150
For the Box and Diamond TRUNC type you specify the maximum number for each tone and the maximum order for all the tones.
AWR Proprietary
The low frequency portion represents low frequency noise, such as flicker noise, whereas the flat portion denotes the contribution of thermal and shot noise sources. For the purpose of simulation, the noise spectrum is divided in a finite number of intervals over the frequency range of interest, as the following figure illustrates:
where each noise "sample" represents the noise power contained in a 1 Hz bandwidth. If the circuit behaves linearly, a noise sample at some frequency n contributes to output noise power at n only, as follows:
Noise-related performance measures, such as noise figure and noise temperature, are computed by established correlation matrix techniques [1] [638]. This is more complicated in the presence of a large signal drive, such as the LO pump in a mixer. If noise is assumed to be small by comparison to large-signal waveforms, the action of the LO is frequency translation of noise samples by the multiples of the LO frequency, as shown in the following figure.
AWR Proprietary
NL and NNL are random phasors of noise currents evaluated at each of the noise sidebands. NL represents the Norton equivalents of all bias-independent noise sources, such as thermal noise sources, scattered within the linear subcircuit; NNL represents bias-dependent noise sources contributed by the nonlinear components. Mean-square values of random noise phasors are their spectral densities. In the case of shot noise, for example,
This expression is valid at DC only and is not used as such in the simulator. The large signal current through the device "modulates" the noise source. Reference [2] [638] describes appropriate modifications to DC spectral densities in the presence of modulating large-signal waveforms.
AWR Proprietary
The mixer shown in the schematic operates as an upper-sideband downconverter, with IF frequency in the range 0.5-0.6 GHz. The LO frequency is 3.5 GHz. A noise analysis is executed if the noise control element NLNOISE (located in MeasDevice > Controls in the Element Browser), is placed on the schematic. The following figure shows the schematic symbol of the NLNOISE element.
The following are NLNOISE parameters: PortTo is the index of the output port. In the example, the output is the IF port and its index is 3. PortFrom is the index of the input port. In the example, the input is port 1 (RF). NFstart, NFend, and NFsteps define the range of noise frequencies to sweep over. SwpType defines the type of noise frequency sweep (linear or log). Noise Frequency Notes: The following are comments on noise frequencies defined by NFstart, NFend, and NFsteps. Recall that noise is analyzed about all the multiples of the LO, as shown in the following figure.
AWR Proprietary
If you are interested in the noise figure of a downconverting mixer, for example, the most natural way to define noise frequencies is to specify the bounds of the upper-sideband noise range (N1,upper), which is 4.0 - 4.1 GHz in the example. However, any other frequency range is acceptable as well, as the simulator automatically sets up the remaining sidebands. Therefore, the "noise frequency range" should be interpreted as the width of any one of the sidebands shown in the figure. Nonlinear Noise Analysis Noise analysis can be carried out with one-tone or two-tone large signal excitation. The noise analysis with one large signal tone is much faster, as it has been optimized using an iterative solution of the linear systems and FFT-speed matrix vector multiplications with conversion matrix. The noise analysis with two large signal tones is significantly slower, therefore nonlinear noise analysis with one large signal tone is the default setting. You can enable the nonlinear noise analysis with two-tone large signal tones using the secondary parameters of NLNOISE, LSTone, and SSTone, as shown in the following figure.
Measurements You can compute the noise figure, the noise temperature, and the output spectral density of a noisy circuit. The large-signal excitation may be swept in power and/or frequency, in addition to the noise frequency sweep. Suppose that in the previous mixer example you want to compute the noise figure and the output spectral density. With the RF port terminated and the noise control element properly defined, the mixer example schematic displays as shown in the following schematic.
AWR Proprietary
Noise analysis can be carried out with one-tone or two-tone large signal excitation. The noise analysis with one large signal tone is much faster, as it has been optimized using the iterative solution of the linear systems and fast and exact matrix-vector multiplications using special properties of the conversion matrix. To compute the noise figure, you need to specify the appropriate noise frequencies at the output and the input. In a down-converting mixer, the appropriate sidebands are the IF for the output, and the upper-sideband RF for the input. MWO/AO can perform the nonlinear noise analysis with one-tone or two-tone large signal analysis. The first type of nonlinear noise analysis is more common as it is significantly faster, and sufficiently accurate in most practical situations when the power of RF signal is much smaller than that of the LO. One-tone noise analysis means that the large signal solution is obtained with one tone only, that of the local oscillator (LO) whose frequency is denoted f0. All other tones, including RF are treated as perturbations to the large signal solution driven by the LO. All noise sideband frequencies f are then expressed as: h1f0+h2f where h1=-N.....N with N being the number of tone 1 harmonics. The index h2 can only take two values, +1 for Upper sideband and -1 for Lower sideband. f is the offset frequency of the frequency sweep specified in the NLNOISE element. This example addresses noise conversion from RF to IF. For fIF, h1=0 h2=1 (h2=1 means Upper in the dialog box) For fRF, h1=1 h2=1 (h2=1 means Upper in the dialog box) The harmonic indices fIF and fIF are specified in the following dialog box.
(6.7)
AWR Proprietary
The settings in this figure correspond to the index pairs for IF frequency (output) and for RF frequency (input). The following figures show the noise figure and power spectral density (Nonlinear Noise NPo_NL measurement) at the output port.
AWR Proprietary
You can calculate conversion gain in the standard manner, using two-tone large-signal S-parameter measurements. Alternatively, the conversion gain may be calculated with the Nonlinear Noise Conv_G_SP measurement. This measurement displays the conversion gain that is computed as a by-product of noise simulation. This is a "small-signal" version of conversion gain, accurate when the input power level is appreciably smaller (for example, 15 dB or more) than the LO power. Simulation Controls Conversion matrix analysis, which forms a basis for nonlinear noise simulation, requires an equal number of LO harmonics and noise sidebands. To perform an analysis that takes into account the noise sidebands shown in the noise analysis range figure, for example, the large-signal response needs to be computed at 7 LO harmonics (including DC). For noise simulation, the number of tone-1 harmonics in Harmonic Balance options is essentially the number of tone-1 harmonics with noisy sidebands. The large-signal solution is transparently computed at a larger number of harmonics, as required by conversion noise analysis. All other HB controls apply to the large-signal solution in the usual manner. References [1] J. Dobrowolski, Introduction to Computer Methods for Microwave Circuit Analysis and Design, Artech House, 1991. [2] V. Rizzoli, E. Mastri, D. Massoti, "General noise analysis of nonlinear circuits by the piecewise harmonic-balance technique," IEEE Trans. MTT, May 1994, pp 807-819. [3] S. Maas, Microwave Mixers, Artech House, 1993.
AWR Proprietary
Now, suppose that a sinusoidal voltage source of amplitude V and frequency p is applied to the oscillator at the node denoted by X as shown in the following schematic.
AWR Proprietary
Z() =
0 = p p
that is, it presents a short circuit at the source frequency and an open circuit elsewhere. The combination of the source and the ideal impedance element is referred to as the oscillator probe. Next, suppose that the probe voltage is equal to the steady state operating voltage at node X. Under those circumstances, no current flows through the probe at frequency p. In addition, by the definition of the probe impedance, no current flows through the probe at any other harmonic of p. The probe no longer disturbs the circuit, its frequency equals the oscillation frequency, and its amplitude equals the amplitude, at the node to which the oscillator is connected, of the original, probe-free oscillator. This argument leads to the conclusion that the problem of solving for an oscillator's steady-state operation can be approached by: Connecting the oscillator probe to a suitable node in the circuit Finding the amplitude and frequency of the probe that results in zero current flow through the probe In this manner, in effect, oscillator analysis is reduced to standard HB analysis running in the inner loop of a routine that attempts to locate probe parameters (amplitude and frequency) that result in zero current flow through its terminals. The outlined procedure is the basis for oscillator simulation in MWO/AO.
AWR Proprietary
In the first step, the simulator attempts to locate the start-up frequency based on a condition related to the well-known loop gain criterion. Knowing that the loop gain saturates to magnitude 1 in the large-signal steady state, the simulator steps the probe voltage in an attempt to detect loop gain saturation. The neighborhood of gain saturation is used as the starting point for the analysis outlined in the previous section, whereby the voltage and frequency of the probe are adjusted in a way that results in zero probe current.
AWR Proprietary
2 1
B
3
Oscaprobe
The OSCAPROBE element is next introduced between the resonator and the active device, which is the probe's recommended location. When the simulation is executed, MWO/AO automatically performs an oscillator analysis, carrying out the steps shown in the analysis flowchart. Probe Parameters To a varying degree, probe parameters influence the speed, and ultimately, the convergence of an oscillator analysis. Although most users find the oscillator analysis fast and simple to use, it is helpful to become familiar with probe parameters in the event that the analysis fails, either internally or due to user error. The following shows the schematic symbol of the oscillator probe.
AWR Proprietary
The most significant probe parameters are Fstart and Fend. These two parameters indicate the range to search for start-up frequency. Choosing roughly +- 25% of the resonator's center frequency is sufficient in most cases. Fsteps is the number of steps used in the search for start-up frequency, and it rarely needs to be changed from default. Exceptions may occur in extremely high-Q cases, where you may need to increase Fsteps or narrow the frequency range. The probe has a number of secondary parameters that are used to aid convergence or to increase simulation speed, but are otherwise best left at default values. VpMax and Vsteps for example, control the probe voltage stepping as discussed in Section 6.4.3, Analysis Flow. The simulator steps the probe voltage, from a small value to VpMax in steps of Vsteps, in an attempt to locate a suitable starting point for rigorous oscillator analysis. If the simulator occasionally returns a "Could not find a starting point for oscillator analysis" message, you are prompted to increase Vsteps and/or VpMax. The value of V=VpMax/Vsteps is used to limit the maximum Newton step in oscillator analysis, so specifying a very large Vsteps value could slow the simulation. Parameters of lesser significance are Iter and Damp. Iter is the total number of analysis iterations and Damp is a parameter for the so-called damped Newton iteration. Decreasing Damp or increasing Iter from default values may improve convergence in rare circumstances. NOTE: In addition to the mentioned parameters, several of the probe's secondary parameters are designated as "not used". These parameters are manipulated internally by the simulator, and are likely to be removed in a future release. Harmonic Balance Parameters Harmonic balance simulation runs in the inner loop of oscillator analysis, so harmonic balance parameters apply as usual, controlling the number of harmonics and simulation accuracy.
AWR Proprietary
Probe Connection The location of the probe plays an important role in oscillator simulation. The recommended location is at a node connecting the resonator and the active device. In many cases an alternate probe location results in successful and even slightly faster simulations; however, you are encouraged to follow the recommended placement of the probe. Not doing so opens the possibility of failure to detect start-up in an otherwise well-built oscillator. Post-processing Capabilities All nonlinear measurements apply to oscillator analysis in the usual way. You can view voltages, currents and power at any port or meter, in the time or the frequency domain. You can examine dynamic load lines and power efficiency in the same way as amplifiers. One additional measurement is the Oscillator OSC_FREQ measurement, which you can use to display the oscillation frequency. In the event that a bias is swept, as in the case of a VCO, the x-axis automatically displays the value of the tuning voltage. If no swept voltage source is present in the circuit, the OSC_FREQ measurement displays the oscillation frequency on both axes. Limitations and Peculiarities of Oscillator Analysis MWO/AO is capable of single-tone analyses of free running (but possibly voltage-controlled) oscillators only; support for self-oscillating mixers and injection-locked oscillators is not included in the present version. You must place the probe in a top-level schematic. If a frequency component measurement, such as Vcomp or Pcomp, is defined prior to the execution of an oscillator simulation, the oscillation frequency is not known at the time of creation. For this reason, Harmonic Index in the Add/Modify Measurement dialog box displays a multiple of an arbitrarily chosen fundamental equal to 1 GHz. After the simulation is complete, the indices are reset to the correct oscillation frequency. Note that the arbitrarily chosen frequency affects the appearance of the Add/Modify Measurement dialog box, not the validity of displayed results.
AWR Proprietary
Nonlinear Oscillator Analysis Increasing the Speed of Convergence A typical oscillator simulates between less than a second and five seconds on a modern computer, depending on the number of harmonics, the output power, the oscillator Q, the number of active devices in the circuit, and the level of complexity of linear models. To improve the speed of the simulation, you should attempt to decrease the value of the VMax and Vsteps parameters. The number of harmonics has a significant impact on simulation speed, but reducing it below 5 is not recommended. The accuracy settings have a relatively small impact on analysis times, and should not be altered in an attempt to speed up simulations.
The parameters of primary significance are: Freq, which specifies the desired oscillation frequency Par, which specifies the parameter to be varied
AWR Proprietary
Nonlinear Oscillator Analysis Note the format of the Par parameter specification. To vary the length of a coaxial line whose id in the schematic is CX1, for example, the Par specification should read COAX.CX1.L. Like the analysis probe, OSCTPROBE has a number of secondary parameters: Par_low Par_high VpMax VpSteps Iter Ftol Par_low and Par_high set limits on the value of the element parameter to be optimized. If left unspecified, the limits are +- 30 percent of the nominal parameter value. The remaining parameters have the same meaning as their OSCAPROBE equivalents.
OFstart, OFend and OFsteps define the noise sweep range, as an offset from the carrier. SwpType selects between linear and log sweep. With the noise control in place, a phase noise analysis is performed automatically, following a large-signal oscillator simulation.
AWR Proprietary
AWR Proprietary
AWR Proprietary
AWR Proprietary
AWR Proprietary
Transient Analysis Basics data saved, because large data files take longer to process when calculating and displaying the measurements. There are three ways to reduce the amount of data saved: reduce the length of the simulated time over which data is saved, save fewer time points to reduce the "length" of the data, and/or reduce the number of variables that are saved (the "width" of the data). The Circuit Options dialog box Transient tab provides an option that offers two ways of controlling the length of the data. The simulated time and maximum step size can be set, either by specifying the number of periods and using the harmonic balance settings, or by specifying the start and stop times, and the step size. See the section called Circuit Options Dialog Box: Transient Tab for more information. As previously stated, all transient simulations start at time=0, so the start time is the time at which data begins to be saved. Data from previous time points is not recorded. This can reduce the data file size considerably, by excluding undesired transient effects in the early part of the analysis. Each transient simulator may treat the step value slightly differently; for example, one may use the specified step size as the maximum and another may save simulation results only at those steps. Generally, however, increasing the step size reduces resolution, and reduces the data saved. The individual options for each simulator allow greater control over the resolution of the saved data. You can use the Save Currents and Save Voltages options on the Transient Options dialog box Results tab to reduce the width of the data. See the section called Transient Options Dialog Box: Results Tab for more information.
AWR Proprietary
AWR Proprietary
1 I M[Y ()] = P V
AWR Proprietary
Models in Transient Simulators In this expression, P.V. represents the Cauchy principal value of the integral. It is well known that the imaginary part of Y(w) should be an odd function and equal to zero at zero frequency, and that the real part Re[Y(w)] should be an even function. If the real part is constant as a function of frequency, the imaginary part is required to be exactly zero. Non-causal models are not translated into transient simulators unless a causality correction is possible. If a circuit contains such a model, an error message displays and the transient simulation is not performed. Lumped Models Although harmonic balance simulations are possible with negative resistances, capacitances, and inductances, transient simulations of such circuits almost certainly diverge. This is not a fault of the transient simulator or the model translation, but a reflection of the fact that the solution of circuit equations with negative R, L, C is quite often a function that tends to infinity. Of course, negative R, L, and C are unphysical ("do not exist"). The negative slope of dV/dI of a V-I curve of a device is not the same as negative R. Non-causal lumped models (for example, frequency-independent complex admittance ADMIT, frequency-independent complex impedance IMPED, and QHYB) are not translated into transient simulators. You should replace these models with causal models for transient simulations. For example, a frequency-dependent complex impedance model (ZFREQ) is causal if the real and imaginary parts are specified correctly, and you can use it for transient simulations. Some software that matches circuit parameters of fixed topology subcircuits to the frequency-dependent S- or Y-parameters as a function of frequency may end up with subcircuits containing negative R, L, and C. This match is of no use in transient simulations. MWO/AO contains code that takes the S- or Y- parameters of a device and produces subcircuits suitable for transient simulations. Several lumped models in MWO/AO are causal for particular values of parameters. For example, the controlled sources (VCVS, VCCS, CCVS, CCCS) with frequency roll-off of the coefficient
M = Mo
exp ( jT A) 1+ j
f F
are causal, provided A=0 or . In this case, you can use them in transient simulations for these parameter values, and an error message displays for the parameter values that violate the causality condition (A0 or , in this example). The code also rejects the case of A= and you must set A=0 and change the sign of M if A= is desired. Transmission Line Models MWO/AO can perform accurate transient simulations with transmission line models that have frequency-dependent parameters. There are several controls for transient simulations with transmission lines. You can choose an option to perform an accurate simulation of transmission lines (all or individually), or use various approximations. Choose Options > Default Circuit Options and click the Modeling tab on the Circuit Options dialog box to access the SPICE Model Extraction Options. See the section called Circuit Options Dialog Box: Modeling Tab for more information. For the most accurate simulation results, select Level 3 - Distributed or Level 4 - Most accurate available. All of the other transmission line modeling options are approximations that may be adequate in some cases but are generally less accurate and inadequate in other cases. These options are useful for preliminary work such as layout verification or determining the correct bias condition for transistors.
AWR Proprietary
Models in Transient Simulators If you select Level 3 - Distributed or Level 4 - Most accurate available, the options on the Tx Lines tab of the Transient Options dialog box become relevant. See the section called Transient Options Dialog Box: Tx Lines Tab for more information. You can easily verify the accuracy of transient simulations with transmission line models by setting up a small linear circuit and comparing transient results to harmonic balance results according to the second condition discussed in Section 6.2, Multi-rate (Nonlinear) Harmonic Balance Analysis. If you plan to use approximate transmission line models, you should study the effect of these approximations by setting up a small test circuit and comparing the result of the approximations to the accurate result. NOTE: Transient simulations with transmission lines of negative length (or with negative delay) are impossible, as such models are non-causal. Some transmission line models issue an error message to this effect if transient simulations are attempted. There is one more causality requirement for transient simulation of transmission line models. The characteristic admittance Yo and the characteristic impedance Zo=Yo-1 need to be causal functions of frequency such that the Hilbert transform or the real part is equal to the imaginary part. This condition is violated for several MWO/AO models such as MCLIN (coupled microstrip line). In this case, transient simulations are performed not for the original model but for the model corrected for causality. In these cases you see disagreement between harmonic balance and transient simulations. Furthermore, in some rare cases a divergence of transient simulations with non-causal transmission line models may occur. Short transmission lines have the effect of restricting the time step of transient simulations such that the time step cannot exceed the propagation delay of the fastest mode of the transmission line. Recognizing this, the translation uses a lumped approximation (RLC-Pi circuit) for transmission lines with electrical length less than MaxDelayFraction of the period of the MaxFrequency (maximum frequency of interest). Behavioral Filter Models MWO/AO supports accurate transient simulations with behavioral lumped filter models (located in General > Filters group in the Element Browser). Lowpass, highpass, bandpass, and bandstop filters of Butterworth, Elliptic, Chebyshev, and Bessel type are supported. In addition, an accurate translation is available for the Distributed Lowpass Butterworth Filter. Transient simulations with realistic Q-factor of the filter are easier (for example, converge faster) than those with nearly infinite Q (such as Q=1012). Translation of the filter models uses the exact 2 x 2 admittance matrix Y(s) that is represented by four VCCSs with frequency-dependent transconductance. No fitting of any kind takes place in obtaining equivalent models for the lumped filters. No additional circuit nodes are created for behavioral filter models, thus resulting in efficient transient simulations. For some filter models, an additional approach is creation of lumped filter models using the Filter Synthesis Wizard (see Section 9.1, AWR Filter Synthesis Wizard for more information). The results of transient simulations with this approach are expected to be the same for infinite Q. The Filter Synthesis Wizard does not account for finite Q of the filter elements, thus creating ideal filters consisting of Ls and Cs. Models for Piecewise Voltage and Current Sources HB simulations are possible with sources specified as discontinuous (zero rise or fall time), such as a rectangular pulse or a saw-tooth signal. Nevertheless, transient simulations with discontinuities in the stimuli are not advised. They may work for lumped circuits, but not for distributed circuits. If you specify zero rise or fall time of a source, it is replaced with 1/ Maximum Frequency, where Maximum Frequency is the maximum frequency used for extraction of transmission line models, and a related warning message displays. Any other positive value you specify is accepted as is. You can set Maximum Frequency on the Tx Lines tab of the Transient Options dialog box. See the section called Transient Options Dialog Box: Tx Lines Tab for more information on this option.
AWR Proprietary
Models in Transient Simulators You may want to obtain the unit step response of a circuit. In this case it is necessary to choose a non-zero rise time that is sufficiently small so the result is close enough to the unit step response, yet large enough to avoid convergence problems. The exact value depends on the specific circuit, and is usually established by trial and error. An initial value of "Tr=1/ Maximum Frequency" is recommended for this trial and error procedure. Simplifying Assumptions for Several Lumped Models The following models with frequency-dependent Q factor in the form of
f Q( f ) = Q f Q
( )
are translated for transient analysis with the simplifying assumption a=1: CAPQ, INDQ, PLCQ, SLCQ, CHIPCAP, CHIPCAP2. The capacitor models from Dielectric Laboratories, Inc., (BOARDCAP, CHIPCAP, DICAP, GAPCAP, and MULTCAP) are modeled as a linear capacitor unless you select Level 4 - Most accurate available as the SPICE model extraction option, in which case a rational approximation is used. Transient Simulation with Models Specified by Frequency-dependent N-port Parameters MWO/AO supports transient simulation of models specified by their S-, Y-, or Z-parameters as a function of frequency (for example, Touchstone format .sNp files). You can choose two fundamental methods to perform transient simulations with these models: rational approximation with subsequent equivalent circuit generation (default) numerical convolution (with four different settings which may work best in a particular case). For successful simulation, the following requirements must be satisfied: 1. The device model must be causal. Solutions of Maxwell equations are causal, so if the model is obtained using a field solver with sufficiently accurate settings, it should be causal. Multiple publications deal with the subject of testing causality of experimental data (also referred to a Kramers-Krnig relation). 2. The number of frequency samples must be sufficient to resolve the resonances in the frequency range of interest. This is easily judged by plotting the frequency dependence in X-Y plot. You should plot the frequency dependence of the matrix elements of the short-circuit admittance matrix Y, as this is the matrix that forms the stamp for modified nodal analysis. 3. The number of frequency samples should be sufficient for the linear system of equations to be over-determined. Generally, this means no less than 50 frequency points, however it can be less for very simple frequency-dependence. If the numerical convolution is used, the required number of frequency samples is even greater. In this case, the simulator code interpolates linearly between the frequency samples, and the results should still be sufficiently accurate. 4. The value at DC is very desirable. It is usually easy to calculate-- no field solver is needed. Transient simulation of these devices is controlled in the Element Options dialog box on the Model Options tab. Right-click the subcircuit in the schematic and choose Properties to display the Element Options dialog box, then click the Model Options tab. See the section called Element Options Dialog Box: (Subcircuit) Model Options for more information. Three groups of options are available: use of rational approximation of the Y matrix, rational approximation of the S matrix directly, or use of numerical convolution implemented in the transient simulator itself. In case of rational approximation to either the Y or S matrix, the passivity of the generated approximation is enforced, and an equivalent circuit for the simulator is generated using Voltage Controlled Current Sources with the s-dependence in a form that is
AWR Proprietary
Models in Transient Simulators supported by the simulator. The aim of the models is accurate but efficient transient simulation; adding the fewest sources and internal nodes. The availability of advanced frequency domain controlled sources in some simulators makes the usage of VCCS far superior to generating the equivalent circuit with R, L, C, K elements. Testing has demonstrated that in the majority of cases the rational approximation yields a more accurate transient simulation, and a far superior simulation performance for long transient simulations than the convolution. If rational approximation is selected, the code first checks the passivity of the model specified by the Touchstone file or an EM structure. Passivity in this context refers to the N-port absorbing active power delivered to it at all the frequencies given in the Touchstone file or EM structure. The lack of passivity means that the N-port has an internal power source and is capable of delivering active power to the rest of the circuit. Formally the passivity test is equivalent to establishing the positive-definiteness of the matrix G=Re Y at all frequencies of interest. The same passivity criterion can be expressed in terms of the scattering matrix S, and states that eigenvalues of the matrix A=U-SHS should be non-negative. In this expression, U is the identity (unit) matrix, and the superscript "H" denotes Hermitian-conjugate of the matrix. A Linear/PASSIVE measurement is available to help you determine at which frequencies the model is non-passive, and the magnitude of passivity violation. If the passivity check is enabled and finds the model to be non-passive, the code switches to use of direct numerical convolution. There are three possible reasons for the lack of passivity in the model: A systematic error in the measurements or EM simulation if the N-port represents a linear passive device, such as a portion of interconnect, or a coupler Numerical errors in EM simulations and unavoidable random measurement errors The model represents an N-port device that has an internal power source (for example an amplifier described by its S-parameters). In this case, S-parameter description is a rough approximation that may or may not be adequate for a particular transient simulation. In the amplifier example, the model amplifier is linear regardless of the magnitude of the input signal, while in practice the linearity can be reasonably assumed only for a particular range of the amplitudes. A small passivity violation can still occur for the model that is intended to be passive (such as interconnect), due to the numerical errors of EM simulations or experimental errors. You can override (skip) passivity checks by selecting a Make passiveoption. If the results were obtained from EM simulations, you should check the results by using PASSIVE measurements. If the passivity violation is found to be small, AWR recommends overriding the passivity check by using the corresponding setting. If the passivity violation is found to be large, you should review the EM simulation settings or experimental setup for systematic errors. Testing has shown that Advanced Band Synthesis of the Sonnet EM solver often yields small passivity violations as previously described. In such cases you can override the passivity check by selecting the Make passiveoption. Guidelines for Use of Rational Approximation Using the rational approximation approach (the code developed by AWR) is recommended for transient simulations of passive devices specified by frequency-dependent S-parameters. The following are the advantages of the rational approximation approach: Results of transient simulations are often much more accurate than those of numerical convolution. Fewer data samples are needed (still resonances need to be resolved). The non-uniform grid of frequency points is handled well, and is recommended (more points near the resonances to resolve them, and fewer points where the Y or S matrix varies slowly). After an initial cost of obtaining the rational approximations, the simulations are much faster. The CPU time-scales linearly with the length of transient simulations (not quadratically as is the case for numerical convolution).
AWR Proprietary
Models in Transient Simulators To use the rational approximation approach, select an option under Fitting to Y Parameters or Fitting to S Parameters. You cannot use this approach for active devices. If the lack of passivity is detected, the code automatically switches to the usage of numerical convolution, but you can override passivity checks by selecting Make passiveoptions that skip them. Typically, for models that correspond to interconnect, it is beneficial to fit directly to S parameters using one of the Fitting to S parameters options. If the EM simulations were performed with ideal conductors (zero resistivity), fitting to S parameters is strongly recommended. Fitting to Y parameters does not work well. Fitting to S parameters is also recommended for large N-ports (number of ports N>4), and N-ports with large electrical length (delay between ports). When fitting to S parameters, passivity of the resulting rational approximation can be enforced either from f=0 (DC) to the maximum frequency given for the model (for the Use Convolution if not passive options and Make passive in band option, or for the entire frequency axes Make passive everywhere option). Normally, it is sufficient to enforce passivity for the frequency range of interest, as the power content outside that frequency range is negligible. However, on rare occasions you might encounter transient simulations diverging with the diagnostic "Internal time step too small in transient simulations". If this occurs, you should select Make passive everywhere under Fit to S Parameters to fix the problem. Note that using Make passive everywhere increases the time necessary to construct the rational approximation, and may cause a slight decrease in the accuracy of approximation. Fitting to Y parameters may provide more accurate results of transient simulations for small N-ports with significant coupling, such as spiral inductors. This setting works well if the f=0 (DC) result is available, and may also require a number of low frequency data points to be provided, as Y matrix exhibits fast variation as a function of frequency near DC. Most available EM solvers cannot perform simulation at f=0 (DC), and there is a practical limit on the minimum frequency fmin at which the EM simulations can be performed (fmin=1 MHz for EMSightTM). Extrapolation to DC from the lowest available frequency works better for S parameters than for Y parameters due to more smooth frequency variation. Fitting to Y parameters is the method of choice for the optimal distribution of frequency samples; however, in less than ideal situations, fitting to S parameters is often preferable. For historic reasons, fitting to Y parameters remains the default. The passivity criterion used are very strict, and it is common to override a passivity check that is intended to prevent using rational approximation with devices that are active by intent, and to alert a user if there are large passivity violations for the devices that are passive by intent (such as interconnect). Unlike small passivity violations (see the Help for the Linear > PASSIVE measurement for guidelines on which passivity violations are considered "small" and "large"), significant passivity violations indicate a serious problem with EM simulations or measurements and disqualify the results from being used. The rational approximation approach involves obtaining the rational approximation for the given frequency-dependence of Y matrix in the form of
Y (s) = Y 0 + Y 1s +
(
i=1
N0
Ai Ai + s pi s p (1) i
with the same set of poles for all matrix elements where A'i is complex conjugate of Ai. The fitting proceeds in two stages. First the common set of poles is determined, and then the residues Ai for each matrix element are found. 1 This form assures causality and stability (as all poles are selected such that Re pi<0). Furthermore, the passivity condition expressed as positive-definiteness of G=Re Y is enforced for all frequencies in the file.
For information on the optimal approach for determining the common set of poles, see B. Gustavsen: "Computer code for rational approximation of frequency-dependent admittance matrices", IEEE Trans. on Power Delivery, vol. 17. no. 3, pp. 1093-1098, October 2002.
AWR Proprietary
Models in Transient Simulators When fitting to Y matrix, the code starts with NP=20 pairs of complex conjugate poles, and may reduce the number of poles for simple frequency dependencies. Fitting of the rational approximation in the form (1) requires that the system of equations be overdetermined. If the number of frequency samples is insufficient, a warning message displays and the number of pole pairs is reduced. The success of fitting in this case is not guaranteed and you are encouraged to provide more frequency samples. Obtaining more frequency samples by interpolation between the available samples is not advised as it does not provide any new useful information. A rational approximation in form (1), even with the reduced number of poles, is a far superior way to interpolate frequency dependencies than linear or even spline interpolation. For the S matrix approximation, the approximation is obtained for each matrix element individually, with each having its own set of poles. The number of poles to use is determined dynamically, based on the complexity of the dependence to be approximated, and the quality of the obtained approximation. The code can automatically increase the order of approximation if needed, or decrease it to avoid "overfitting". As a result, rational approximation of S matrix requires fewer frequency samples, and takes less time. Since this approach involves fitting each matrix element individually, fitting to S matrix works well for large N-ports. Rational Approximation and the Time Step Control When simulating the propagation of digital signals through distributed devices ("pulses propagating through interconnect"), you may need to override the default Use HB settings on the Transient tab of the Circuit Options dialog box, and specify the transient time step explicitly. Transient simulators usually use variable time steps with sophisticated time step control, but an unreasonable starting value in the Step option can still yield poor results, or even divergence. The optimal setting for the transient time step Step varies depending on the circuit, but general guidelines can be provided. If Tr is the rise time, and Tf is the fall time of the pulse, a reasonable setting for Step ranges from 0.1 min(Tr, Tf) to 0.01 min (Tr, Tf). You can often get good results with a relatively large time step of about 0.1 min(Tr, Tf). Each transient simulator also has its own options for increasing accuracy, such as the ACCURATE=1 option in HSPICE, as shown in the following figure. Consider a simulation with Tr=Tf=0.1 ns when transient waveform of the length 100 ns is needed (perhaps for the calculation of an eye diagram), using HSPICE. In this case, setting Step=0.1*Tr=0.01 ns and ACCURATE=1 (the HSPICE option that determines whether its time step control algorithm attempts to obtain fast or accurate simulations) is a good choice, as shown in the following figure. If Use HB settings is selected in this example, the initial step is determined as 1/(4 f0 Nh), where f0 is the fundamental frequency, and Nh is the number of harmonics specified on the Harmonic Balance tab. For a reasonable case, for the period T= 4 ns, Nh=5 (default setting in a new project), the result is f0=0.25 GHz. The time step would be 0.2 ns, which is unsatisfactory.
AWR Proprietary
Since Tr=0.1 ns, you can reasonably assume that providing the frequency response from f=0 (DC, or as close to DC as possible, for example, 1 MHz) up to fM=1/Tr=10 GHz is sufficient with high accuracy. Nevertheless, it is wise to provide results for the N-port parameters (S or Y parameters) from 0 to 2 fM. Note that some out-of-band frequency samples are needed to ensure passivity of the generated rational approximation. Generally, if the range of interest is from 0 to fM, provide the samples from 0 to approximately 2fM, with more coarse grid for f > fM. Third-Party Circuit Simulators For third-party simulators, HSPICE and SPECTRE, the AWRDE uses a consistent circuit description, regardless of the analysis type: linear, AC, or transient. Models are always translated (if necessary) so they can be simulated with the third-party transient simulator. This provides an excellent opportunity to compare the behavior of a distributed AWR model in the simulator of choice, to its original implementation in the AWR simulators. For example, you can plot the port parameters (or other linear measurement) using the default and HSPICE linear simulators, on the same graph, and compare the two to see the impact of the rational approximation on the model.
AWR Proprietary
If unphysical oscillations in the solution occur they can sometimes be suppressed by simultaneously setting the integration method to "Gear" (instead of the default trapezoidal method) and limiting the maximum time step that the transient simulator is allowed.
LVLTIM=3
This time step control option prescribes DVDT time step control with time step reversal. This setting is useful for increased accuracy. W-element does not allow LVLTIM=2, therefore you should not use it for circuits containing transmission lines.
PIVOT=3 PIVTOL=1e-6
Useful if the DC or transient analysis failed due to the system matrix having zero diagonal element (a "Zero conductance to ground for node <number>" warning message displays in the netlist). These options cause pivoting while solving the linear system of equations. Note that modified nodal analysis may infrequently have zero diagonal elements, so this setting helps convergence. By default, HSPICE assumes that the system matrix is diagonally dominant, and uses no pivoting.
AWR Proprietary
AWR Proprietary
EM Structures node EM Structures subnodes represent each added EM structure. Right-click an EM structure and chosse Options to specify local EM structure options.
Parasitic extraction is a process where metal interconnects are simulated with a simulator to produce a model for the interconnect. Parasitic extraction and EM simulation are configured and used the same way; the only difference is the simulator used. This chapter discusses EM simulation, however, parasitic extraction is performed in the same way. There are generally two methods you can use to create new EM structures. The first method is to manually create a new EM structure, add shapes (either by drawing or copying shapes from layouts), add ports, configure frequencies and options, etc. This process involves you performing the steps in the EM structure. The second method is to use Extraction flow, where EM structures are generated from schematic layouts.
AWR Proprietary
AWR Proprietary
The geometry to be simulated in the extraction comes directly from the Layout View of the commanding schematic. This concept is essential to the methodology of the extraction process; the contents of the Layout View are modeled using a physical simulator. Physical Simulators Physical simulator is a generic term for a simulator that uses layout geometry and a physical stackup to produce a network that electrically represents the physical structure that can be used with a circuit simulator. AWR uses this generic term because the AWRDE has several types of physical solvers (either AWR technology or 3rd parties integrated through the EM Socket): EMSight - AWR's electromagnetic solver; the results are in the form of network parameters. AXIEM - AWR's electromagnetic solver; the results are in the form of network parameters. ACE - AWR's transmission line extractor; the results are in the form of a netlist of transmission line elements. Parasitic Extractors - 3rd party solvers, currently OEA from NetAn and VeloceRF from Helic; the results are in the form of RLCK netlists.
AWR Proprietary
Creating EM Structures with Extraction Other EM solvers - Other vendors using the EM Socket for full EM analysis; the results are in the form of network parameters. Why Use Extraction? An iNetTM can only be simulated using the extraction process. Allows for an easy way to account for coupling that is not included in models (for example, coupling of two transmission lines due to proximity in layout, coupled spiral inductors, etc.). The physical simulation is used for simulation results only, not as a layout cell in your design. Significantly reduces the sources of error for performing physical simulation versus the manual process of doing the same, such as: copying layout or drawing EM structures layout by hand, adding ports and wiring up into a schematic as a subcircuit. For simple structures the advantage is significant, for large structures (over a few ports) the manual process is not manageable. When Not to Use Extraction If the physical geometry does not come from a schematic element's layout. This includes geometry from artwork files (GDSII or DXF files) or non-standard geometry (for example, an ellipses). You want to use a physical simulation as a design element and get the layout from the physical simulation layout.
AWR Proprietary
Creating EM Structures with Extraction shorted. The AWR Design Rule Check engine (see Section 5.1, Design Rule Checking (DRC)) can search for rat lines and shorts (for iNets only). You must decide how to ensure the layout is correct before running extraction. The physical solvers available are in two generic classes: shape based and path based extractors. For shape based extractors (such as EMSight and OEA) a meshing operation must occur to determine the connectivity of the entire structure. In this case, any rat line or touching shapes affect the results, as if the circuit was fabricated this way. For path based extractors (such as ACE and VeloceRF) the layout objects simulated are paths. Since a path is a connection from point A to point B with some width, the path contains the connectivity information and so no meshing operation is needed. In this case, any rat lines or touching shapes do not create open circuits or shorts. If you are unsure of what your physical solver will do in either one of these situations, AWR recommends that you create some simple test structures to test these issues, or always ensure your layout has no shorts or rats lines. Issues with Hierarchy See Section 8.1.9, Hierarchy for details on hierarchy issues. EM Extracting Elements with Grounds Some elements with layout in the AWRDE have a built-in ground connect, for example the MLSC (short-circuited microstrip line). If these elements are used for EM extraction, the extraction process doesn't understand how to ground one end of this line and so won't be extracted properly. For example, see the following schematic and the resulting EM structure for EMSight that is generated.
EXTRACT ID=EX1 EM_Doc="MLSC_EX" Name="EM_Extract" Simulator=EMSight X_Cell_Size=1 um Y_Cell_Size=1 um PortType=Default STACKUP="" Extension=100 um Override_Options=Yes Hierarchy=Off
STACKUP Name=SUB2
Notice in the EM structure that the right end of the structure is not touching the enclosure outline nor has any sort of via to the top or bottom of the structure. In this case this line simulates as an open rather than a short.
AWR Proprietary
The correct approach is to use an MLIN element in the schematic and then use a separate ground element on one end of the line as follows.
EXTRACT ID=EX1 EM_Doc="MLSC_EX" Name="EM_Extract" Simulator=EMSight X_Cell_Size=1 um Y_Cell_Size=1 um PortType=Default STACKUP="" Extension=100 um Override_Options=Yes Hierarchy=Off
STACKUP Name=SUB2
AWR Proprietary
Creating EM Structures with Extraction Notice that the EM structure created has two edge ports, one on each side. With the extraction flow, this EM result replaces the MLIN in the schematic, and since one end of the MLIN is grounded, one end the EM structure gets grounded in the schematic simulation.
Vias to ground are another case where extraction can be difficult. The following figure shows a via to ground in a schematic.
EXTRACT ID=EX1 EM_Doc="EM_Extract_Doc" PORT Name="EM_Extract" P=1 Simulator=EMSight Z=50 Ohm X_Cell_Size=5 um Y_Cell_Size=5 um PortType=Default STACKUP="" Extension=100 um Override_Options=Yes Hierarchy=Off
Since the via is a two-node model, the extraction flow needs to add a second port at the bottom of the via. There should not be a port here, however, because the via is connected to the bottom of the enclosure.
AWR Proprietary
Creating EM Structures with Extraction There are two solutions to this problem. The simplest is to use the VIA_1P model which is a one-port model with ground included in the model. The second work-around is to place the via in a schematic where the via is grounded and one port is added.
You can then use this schematic as a subcircuit where you want your vias, as shown in the following figure.
STACKUP Name=SUB1 EXTRACT ID=EX1 EM_Doc="new" Name="EM_Extract" Simulator=EMSight X_Cell_Size=5 um Y_Cell_Size=5 um PortType=Default STACKUP="" Extension=100 um Override_Options=Yes Hierarchy=Off
The final step is to set up the subcircuit to extract, instead of the via model itself. AXIEM Extraction Ports Because AXIEM does not have grounded sidewalls (no Extension parameter on the STACKUP to set the de-embedding distances) and there are many types of ports that you can use in the simulation, AXIEM needs a means to control
AWR Proprietary
Creating EM Structures with Extraction configuring ports when creating an EM structure from a schematic layout. This is done by adding an extraction port to your schematic layout. To add an extraction port, select the item in your schematic layout to which you want to add the port, choose Draw > Extraction Port and then place the port on an edge of the selected shape. This is the same as adding ports in an AXIEM EM structure. In the following figure an extraction port is added to the schematic layout.
You can now set port properties that are transferred to the EM document created during extraction. For example, you can change the ground type, the mutual group type, or de-embedding. You can also change the reference plane distance. Double-click the extraction port to display the Properties dialog box. On the Port Attributes tab, enter the value you want to de-embed in Ref. Plane Distance. When you do this, the reference plane draws outside of the shape to which it is connected. For example, the previous structure has a reference plane extension of 100um.
Note that the EM structure created from extraction adds this length to the shapes extracted.
AWR Proprietary
The extraction ports are only suggestions. They are only used if the EM structure created with extraction needs a port where the extraction port is located in the layout; for example, when you have two MLINs in a schematic connected together and you are extracting both. If you place an extraction port between the two MLINs, the settings from the extraction port are not used since there is not a port in this location in the EM structure.
You can place extraction ports at any level of your hierarchical design. If there are ports at the same location but at different levels of hierarchy, the extraction port at the higher level of hierarchy is used. The extraction ports created at one level of hierarchy are unique in the extracted document, there are not any settings that are shared (such as port number or mutual groups). For example, see the following figure where two of the schematics created above are used through hierarchy, so the layout looks as follows,
AWR Proprietary
Notice that there is a port 1 and 2 and not two ports with number 1. It would be valid in AXIEM to have two ports with the same number. You could only achieve that with extraction ports when using them at the same level of hierarchy.
AWR Proprietary
Creating EM Structures with Extraction Area Pins Area pins are layout objects where an area is used to define the allowed connection location. There are several cases where you will want area pins included in the EM structures generated from extraction. There are two classes of area pins for extraction. Ports that have layouts that are area pins are the first case, and any other area is the second case. The main reason to have a port with layout is when using iNets. Often you need your port to have layout to define where to connect to a layout through hierarchy. Also, you often need a port to have a layout so you can get a rat line (between the port and whatever it is connected to) so you can route an iNet. By default, if an extracted element is connected in the schematic to a port with an area pin, that area pin's layout is extracted. Area pins that are not connected to extracted elements are not extracted. On the EXTRACT block, you can change the Extract_PinShapes parameter to "Yes" and then area pins (on p-cells) that are touching other extracted elements are included in the EM structure generated from extraction. You can override this behavior per area pin. Select the shape that has the area pin in layout, right-click and choose Shape Properties and select the Faces tab. In Face, select the face number of interest. In the Area Pins section, change Extract pins connected to extracted objects to either Default, Yes, or No. See the section called Cell Options Dialog Box: Faces Tab for more information about this dialog box. Default is the behavior previously described regarding the different types of area pins. Yes and No override any other settings that control how area pins are extracted.
AWR Proprietary
Creating EM Structures with Extraction Simulator Defaults The EXTRACT block has tabs to control simulator options so you can make changes here rather than directly on the EM structure. You can set options directly on the EM structure. This is not recommended since the EM structure is generated from a schematic with an EXTRACT block that can override the options on the EM structure. If you must set options directly on the EM structure, make sure to set the EXTRACT Override_Options parameter to "No". Extraction EM Frequencies When an extraction is first performed (or the EM structure is first created) the set of frequencies from the Frequencies tab are used. Once the EM structure is set up with these frequencies, no further automatic update of the frequencies is done, unless the structure is deleted and recreated. From this point, you can modify the EM structure simulation frequencies and they remain unchanged. When a schematic is simulated the EM results may have to be interpolated or extrapolated if the frequencies for the schematic are different than those of the extracted EM structure. Often, to speed the electromagnetic simulation process, you may want to reduce the frequency set if the port parameters do not vary quickly over frequency. Depending on the simulator associated with the EM structure, this may or may not reduce the simulation time. Because the simulation frequencies are not altered after creation of the EM structure some common errors can occur. If the simulation frequencies of the controlling schematic are altered after the extraction EM structure is created, these changes are not forwarded to the EM structure. This is to allow the customization of the frequencies as previously mentioned. Another common error in the EM structure simulation frequencies occurs when you perform a nonlinear simulation on the schematic using a harmonic balance or time domain simulator. In either case, the EM structure is asked to supply port parameter information from DC to some higher multiple of the simulation frequency. For harmonic balance simulations this is at DC, harmonics of the fundamental and possibly mixing products of a multi-tone analysis. You must configure the EM structure frequencies in a manner appropriate to the analysis being performed. For a time domain simulation, a rational function expansion is performed on the EM structure to create a time domain model. To create this function, the EM structure is asked to supply additional frequency domain data. You must ensure that the set of simulation frequencies applied to the EM structure is appropriate for the simulation performed on a parent schematic. Multiple Extractions in a Single Schematic With Different Group Names You can apply multiple extractions within the same schematic to different EM structures and different group names. You should use this technique if two sections of the schematic are physically separated such that you expect minimal coupling between the extraction groupings. All that is required to enable multiple extractions is to have multiple EXTRACT blocks to the schematic. In this case, each EM_Doc and Name should be unique. This is the main reason that when setting up for extraction you must specify a name for the extract group. Multiple Extractions in a Single Schematic With the Same Group Names You can apply multiple extractions within the same schematic to different EM structures and the same group names. In this case, each EM_Doc should be unique and the Name should be same. The frequencies for all the EXTRACT blocks must be unique. The application of this feature is to allow different simulator settings or even different simulators for different frequency ranges, yet allowing the extraction flow to manage creating all of the EM structures and merging all of the data together after all the simulations are complete. For example, you might want AXIEM with thin metal for your DC point, AXIEM with thick metal for your in-band frequencies (and meshed at your highest in-band frequency), and
AWR Proprietary
Creating EM Structures with Extraction then AXIEM with thin metal for your harmonic frequencies (and mesh at your highest harmonic frequency), or you might want to use ACE for DC and then EMSight for the rest of your frequencies, etc.
AWR Proprietary
STACKUP Name=SUB2
PORT P=2 Z=50 Ohm MTRACE2 ID=X1 W=20 um L=200 um BType=1 M=1
EXTRACT ID=EX1 PORT EM_Doc="EM_Extract_Doc"P=1 Name="EM_Extract" Z=50 Ohm Simulator=EMSight X_Cell_Size=1 um Y_Cell_Size=1 um PortType=Default STACKUP="" Extension=100 um Override_Options=Yes Hierarchy=Off
MTEE$ ID=TL3
2
Similarly, in the Layout View, the layout cells associated with that extraction are marked as shown in the following figure.
AWR Proprietary
8.1.9. Hierarchy
The Extraction flow supports extraction through hierarchy. When a schematic has an EXTRACT block, the extraction process looks for models or shapes to extract through all levels of hierarchy. There are several ways to change this behavior. EXTRACT Blocks Through Hierarchy The default behavior is for the top level EXTRACT block to override all lower level EXTRACT blocks, causing all extraction to be performed as one flat simulation. You may want an EXTRACT block at lower levels of hierarchy for when you simulate that level. The Hierarchy parameter on the EXTRACT block controls how extraction is executed throughout the design hierarchy
EXTRACT ID=EX1 EM_Doc="EM_Extract_Doc" Name="EM_Extract" Simulator=EMSight X_Cell_Size=5 mil Y_Cell_Size=5 mil PortType=Default STACKUP="" Extension=100 mil Override_Options=Yes Hierarchy=Off
When Hierarchy is set to "Off" for any EXTRACT block at a lower level other than the top level being simulated, any shapes associated with the lower level EXTRACT block are only extracted by the top level EXTRACT block. Hierarchy is being flattened, and any lower level shapes are included as part of the top level extraction. If there is no top level EXTRACT block, then nothing is extracted.
AWR Proprietary
Creating EM Structures with Extraction When Hierarchy is set to "On" for any EXTRACT block at a lower level than the top level being simulated, any shapes associated with the lower level EXTRACT block are extracted in the lower level document and the top EXTRACT block extracts any shapes not associated with the lower level block. Hierarchy is being preserved, and any lower level shapes are extracted at the lower level, and are included in top level simulations as a separately extracted subcircuit. If there is no top level EXTRACT block, the lower level is extracted. Extracting Subcircuits Hierarchy is created in a design by using a SUBCKT model and specifying the name of the subcircuit. By default, the extraction process pushes into each subcircuit looking for items to extract. However, if you set the SUBCKT block itself to extract, the process will not push any lower into hierarchy. There are several situations where you would want to extract the SUBCKT model. The first situation is when you assign an artwork cell to your subcircuit. For example, you could create a transmission line model from lumped RLC elements. Since this model has no layout, you could use this model as a subcircuit and then assign an artwork cell to the layout cell for the subcircuit. The second situation is when you are using an EM structure as a subcircuit in your design (not created with extraction) and you want to extract the layout from this EM structure into a larger EM simulation. For example, if you need to use EMSight to simulate several discontinuity models and you are using these EMSight results in your overall design, then you wanted to simulate the complete design using AXIEM. In this case, you would set up your EM subcircuits to use extraction, just like any other model. When extracting EM subcircuits, you might end up with the metal used for any de-embedding distance undefined. This occurs when an EM subcircuit is connected directly to a port, because the extraction process doesn't know what is connected to the EM subcircuit. You can fix this problem by setting the connect type for the ports in the EM document. To do this, select the port in the EM layout, right-click, choose Shape Properties, and click the Cell Port tab. See the section called Properties Dialog Box: Cell Port Tab for more information about this dialog box. You then select the connection type for this port.
AWR Proprietary
For EM optimization, tuning, and yield analysis to operate correctly, you must set the layouts to automatically snap together so that each time a parameter changes the layout is automatically updated, and correctly represents what needs to be simulated. (Choose Options > Layout Options and on the Layout tab under Layout Cell Snap Options set Snap together to Auto snap on parameter changes.) See the section called Layout Options Dialog Box: Layout Tab for more information. Tuning and optimizing on parameters that affect the layout results in resimulation as the layout changes. Tuning and optimizing swept variables (SWPVAR blocks) is NOT supported, however, since swept values do not affect layout (their value for layout is derived from the default swept parameter equation value). Currently, only variation on model geometry is allowed; you cannot vary dielectric height or dielectric constants using the extraction flow.
AWR Proprietary
Notice that port 2 is not an edge port but rather a via port.
AWR Proprietary
Creating EM Structures with Extraction If the two edges are lined up exactly, then both will have edge ports.
Case 2. Using extraction where connections cannot be made on the outside of the structure. For example, two lines with a chip capacitor between them with only the lines set for extraction. Two of the connections are external to the structure; these can use edge ports. Two connections, however, are internal and must use via ports. A via port in EMSight is a port that extends vertically from the layer it is on down one layer, and then a source is attached at the bottom of the via. Via ports and EMSight must be considered very carefully before deciding if using them is acceptable. Via ports have some inductance due to the vertical metal simulation that is not de-embedding from your simulation. You need to determine if this inductance is significant or not at your simulation frequencies. Via ports only go through one level of dielectric. If the via port does not go to the bottom of the structure, the excitation of this port is not correct. NOTE: AXIEM has different types of ports that are more suitable for connections that cannot use edge ports. If EMSight's port issues are significant, you might consider using AXIEM.
AWR Proprietary
EM Editor
8.2. EM Editor
8.2.1. Creating EM Structures without Extraction
This section describes how to use EM structures in the AWRDE when you create the EM structures by themselves. Structures are generated by drawing shapes in an EM structure, importing DXF or GDSII files, or copying layout from schematic layouts or artwork cell layouts. Note that this approach is covered in an example in the "Using the Electromagnetic Simulator" chapter of the Microwave Office Getting Started Guide. This section is organized in the order of the steps you take when creating a new EM structure. Creating a New EM Structure To create a new EM document: 1. Right-click EM Structures in the Project Browser and choose New EM Structure, or choose Project > Add EM Structure. The New EM Structure dialog box displays.
2. Enter a name for the EM structure, select an available simulator from the list, choose from the Initialization Options, then click Create. An EM structure window opens in the workspace, and the Project Browser displays the new EM structure and its subnodes under EM Structures. You can generate new EM structures directly from DXF or GDSII files, see the section called Creating Shapes by Importing GDSII/DXF Files for more information.
AWR Proprietary
EM Editor Initialization Options When creating an EM structure, the initialization offers several options for the physical Stackup used (dielectric layers, conductors, etc.). This allows you to set up a structure's physical stackup once for a process rather than for each new EM structure. You can always change Stackup properties after the EM structure is created. The initialization can be the complete Stackup or a starting point. There are three initialization options:
From Stackup: AWR recommends this method because it allows the most flexibility. The other methods are supported only for legacy designs. One or more STACKUP blocks (located under the Substrates category in the Element Browser)
placed in the AWRDE Global Definitions window are required to use this option. You can place multiple STACKUP blocks with different configurations for different Stackup properties. When you select this option, a Use Stackup drop-down list displays for selection of any of the enabled STACKUP blocks in Global Definitions. For more information on configuring STACKUP blocks, see Section 8.2.3, Configuring Stackup
From LPF:
You can define the global Stackup properties in LPF files. This information is entered between the $EM_SETUP_BEGIN and $EM_SETUP_END statement sections. See Section 4.4, The Layout Process File (LPF) for more information. Since you can have multiple LPFs and multiple EM Layer Mapping settings in each LPF, when you select this option there are options for choosing the LPF and EM mapping to use.
Default:
Uses the EM Stackup information in the default (first in the list) LPF in the project, and the first EM layer mapping in the default LPF. This is the default setting since there is always an LPF and EM mapping in a project, but not always STACKUP blocks in the project. This is a common option if the EM structure Stackup properties are configured after the EM structure is created.
Enclosure Size and Grid After the EM structure is created, the next step is to set up the enclosure size and grid. In the Project Browser, double-click the Enclosure node below the name of the EM structure. The Element Options - ENCLOSURE Properties dialog box displays. The settings on the Enclosure tab are used differently for different simulators. For more information about the Enclosure tab, see the section called Element Options-(EM) ENCLOSURE Properties: Enclosure Tab. Please see the description of the Enclosure tab for each simulator. (See Section 8.4.2, EMSight Enclosure for enclosure specifics for EMSight.) See the section called Enclosure Settings for Enclosure specifics for AXIEMTM. Stackup Properties The additional tabs when double-clicking the Enclosure node below the name of the EM structure are for configuring the properties of the EM Structure in the z direction, such as dielectric layers, conductors, etc. This setup is common for several flows; see Section 8.2.3, Configuring Stackup for more information on how to set this up. If a STACKUP from the Global Definitions was used to initialize the EM structure, then additional setup may not be necessary. Drawing Shapes in EM Structures This section describes drawing and editing EM structures within the AWRDE. Two methods are available for editing the EM structure depending on the simulator (AWR simulators versus third-party simulators integrated into the AWRDE). If using AWR simulators, please continue to the next section. The first method of editing available with all the simulators that have been integrated via the EM Socket interface is the EM structure Layout Editor (the AWRDE Layout Editor). For third-party electromagnetic simulators, the EM Socket integration may allow drawing and editing the EM structure in the third-party solver Native Editor. Note that implementation of a Native Editor is optional for the third-party integration, and some vendors may choose not to do so. In this case, only the AWRDE Editor is available.
AWR Proprietary
EM Editor The representations in the two editors are ensured identical. However, due to potential inconsistencies between the editors, one of the two editors is defined as the default editor. This default editor holds the master definition of the geometry, and the other (child) editor attempts to represent the geometry as closely as possible. For selection of the default editor see the section called Options Dialog Box: General Tab. All changes to the geometry should be made through the default editor once selected. The child editor should only represent a structure view. If the AWRDE editor is the default, you can make the changes in the Native Editor. On exiting the Native Editor you are prompted whether or not to change the default editor to the Native Editor, make a best effort translation of the geometry, or cancel all changes. If you select the Native Editor as the default editor, all the edit functionality of the AWR EM Layout editor is turned off, and it essentially becomes a geometry viewer. You can change the default editor any time on the EM Options Dialog Box General tab and a best effort translation is performed. To open the Native Editor from the AWRDE, right-click the EM document under EM Structures in the Project Browser and choose Open in Native Editor. A new window opens with the solver's Native Editor. Note that the AWRDE blocks all input until the Native Editor is closed. Documentation for using the Native Editor should be available from the third-party solver vendor.
AWR EM Layout Environment
This section describes the use of the AWR EM structure Layout Editor. Note that this editor is used for planar circuit geometries and does not support editing or viewing generalized 3D objects. After specifying the enclosure, you can create the structures with the appropriate Draw menu options or by using the toolbar buttons. Before drawing shapes, you should understand the following sections. EM structures use the same layout editor as the Schematic Layout Editor and the Artwork Cell Editor in the AWRDE. Each shape must have physical properties (dielectric layer number, conductor or via, and material type) defined for simulation purposes. When editing an EM structure, you click on the Layout tab on the main window to view the Layout Manager, as shown in the following figure.
AWR Proprietary
EM Editor
LPF Manager. All LPFs for the project are stored here
EM Layers and Via Select Pane. These controls select the active layer for the EM structure for viewing and adding new shaped to an EM structure.
Stackup Display. This displays the metals and vias location in the dielectric stackup.
Status Display Bar, Displays the status of the shape drawn in EM Document.
LPF Manager All the LPFs (layer processing files) loaded in the program display here. A Default LPF is always loaded into the program. Artwork Cell Manager Artwork cells (DXF or GDSII) imported or created in the AWRDE are listed here; see Section 3.8.5, Creating Artwork Cell Libraries for details. EM Layers and Via Selection Pane This selection pane sets the active layer for creating or editing shapes by the EM Layer properties (layer number, material type and conductor or via). Stackup Display Pane This is a cross-sectional view of the dielectric stackup. It also displays the location of conductors and vias based on their EM layer.
AWR Proprietary
EM Editor Drawing Layers Display Pane This selection pane sets the active layer for creating or editing shapes by the Drawing Layer name. Drawing Layers are the named layers that are used for creating shapes. Only those drawing layers that are assigned or mapped to EM Layers are available for creating shapes in an EM document. Drawing Layers are assigned to EM Layers through the EM Layer Mapping, see the section called EM Layer Mappings for details. NOTE: If this pane is not visible when you first try to view it, move the mouse to the bottom of the Stackup Display Pane until the cursor changes to an up and down arrow, then click and drag upwards to expose the pane. Status Display Bar The status display bar displays information such as dimension, area, drawing layer name, EM Layer, and the material type for a selected shape.
Drawing Shapes by Stackup Parameters
Once you completely define your Stackup properties, you can draw a conductor or via by selecting a Material and EM Layer. You do not need to set up the EM mapping and you can choose any material to draw either as a conductor or via with any extension. A shape is drawn on an EM layer and since it does not have a corresponding Drawing layer or material in the mapping table, a new Drawing layer is automatically created in the form of +Lay_<layer number>_<material type>_<shape type> where: <layer number> = physical layer of the shape <material type> = material type of shape, using only valid materials defined for that structure <shape type> = COND for conductor and VIA for a via. For these auto-generated layers, the EM mapping is automatically set in Local EM Mapping (the EM Layer Mapping tab in the Element Options - ENCLOSURE Properties dialog box). The EM mapping for auto-generated layers cannot be altered from the Local EM Mapping. Drawing a ConductorConductors are created by selecting the EM Layer and Material. Depending on the EM Layer and material selected, the conductor displays in the Stackup display as shown in the following figure. NOTE: You must select an EM Layer and material to draw a shape. The following figure indicates that there is no prior EM Mapping table set as there is no drawing layer displayed in the Drawing Layers display pane.
AWR Proprietary
EM Editor
Select EM Layer
Select Material
Select Conductor
After selecting the conductor, you can add a new conductor shape by choosing Draw and a menu option for a shape such as Rectangle, Polygon, Path, or Ellipse. These drawing options are also available on the Draw Tools toolbar using the following buttons.
After the conductor shape is created, a drawing layer (as explained in a previous section) is automatically created as shown in the following figure.
AWR Proprietary
EM Editor
Drawing a Via Vias are used for connecting shapes on different layers. To draw a via, select an EM Layer, select Via, and select an Extent number as its extension into layers, as shown in the following figure. Select a different Extent number and notice how the via extension changes in the Stackup display.
AWR Proprietary
EM Editor
Select EM Layer
After the via is selected, to add a new via shape, choose Draw > Rectangle or any desired shape option. These drawing options are also available on the Draw Tools toolbar.
Drawing Shapes by Drawing Layers
If EM mapping (see the section called EM Layer Mappings) is already set for drawing layers, simply select the drawing layer in the Drawing Layers selection pane and draw the shapes. The shapes are drawn in their corresponding EM layers; you do not need to select the EM Layer and Material Drawing a Conductor Select a drawing layer defined for conductor. The location of the layer in the stackup displays in the Stackup display as shown in the following figure.
AWR Proprietary
EM Editor
Drawing a ViaWhen an EM mapping is set up for Via, you can draw the via by simply selecting the drawing layers displayed in the Drawing Layers pane, or as previously explained. A via must be at least one cell wide. The length of a via is the same as the dielectric layer thickness. The top and bottom of the via are meshed as normal planar conductors, so it is not necessary to overlap a connecting planar conductor with the via. The current carried in the via is modeled as uniform z-directed volume current. The Via model assumes that the length of the via is relatively short compared to the wavelength. If the structure requires the via to be relatively long compared to the wavelength, the substrate should be split into several "thin" dielectric layers so that the via is modeled by several shorter vias stacked on top of each other. The following figure shows the via position and extension based on the EM Layer and Extent.
AWR Proprietary
EM Editor
If Line type mapping (see the section called Line Type Mapping) is already set, simply draw a shape on any layer, select the shape, right-click and choose Shape Properties.
AWR Proprietary
EM Editor
In the Properties dialog box, select the Use process layers check box, then select a Line type to use. The cross-section display in this dialog box shows you where the selected Line type is mapped in the current stackup. You can use Line types only to find conductors, not vias.
Creating Shapes by Importing GDSII/DXF Files
You can generate new EM structures from DXF or GDSII files, see the section called Importing GDSII/DXF as an EM Structure for more information.
Defining Shapes by Copying Artwork
There are cases where the shapes for EM structures come from a DXF or GDSII Artwork Cell Library: You are drawing geometry directly in a DXF or GDSII library in the AWRDE. The DXF or GDSII library you are using has multiple top level cells. You cannot directly import such file structures into an EM structure, so you must first import them into the Artwork Cell Editor and then copy and paste them into an EM structure layout. To copy DXF or GDSII Artwork Cell Library shapes to an EM structure: 1. Open the cell from the library. 2. Select the shapes you want to copy to the EM document (or use Ctrl-A to select all). 3. Copy the shapes (Ctrl+C or choose Edit > Copy). 4. Create a new EM structure and size the enclosure based on the dimensions of the artwork cell. 5. Paste the shapes into the EM document (Ctrl-V or choose Edit > Paste). The shapes in DXF and GDSII files do not have the physical properties (for example, dielectric layer, material type, and whether or not it is a via) defined for them so you must define these properties. See the section called Cleaning Up EM Layer Mapping for more information.
AWR Proprietary
EM Editor
Selecting Shapes
To select a shape, simply click it. To select multiple shapes, Shift-click the shapes. Alternatively, you can select multiple shapes by clicking outside of the shapes and dragging a selection box. To select a shape from amongst overlapping shapes, hold down the Ctrl + Shift keys and click the overlapping shapes multiple times until the correct shape is selected.
Editing Shape Properties
Select a shape in the EM structure, right-click and choose Shape Properties or choose Edit > Shape Properties. Click the Layout tab to edit shape properties such as the EM Layer and Material, and to switch between Conductor or Via. Change the mesh property on the Mesh tab. For more information about this dialog box, see the section called Properties Dialog Box: Layout Tab.
Editing Shapes
Because the EM Layout Editor is the same as the Schematic Layout Editor, all of the schematic layout editing functionality is also available for EM layouts. For information on all of the edit commands available in layout Draw tools, see Section 3.3, Schematic Layout and EM Layout Draw Tools.
Moving Shapes to Different Layers
You can move selected shapes to different layers by clicking the Move Up or Move Down buttons on the toolbar. The material does not change.
Displaying Layers
The Stackup Display shows the status of a drawing layer. Depending on the EM Layer Mapping settings, the Stackup Display warns of conditions such as the material name defined in the LPF missing in the EM Enclosure, the Drawing Layer missing EM Mapping, and the EM Layer corresponding to a Drawing Layer missing in the EM Enclosure.
AWR Proprietary
EM Editor
Right-click in the Drawing Layers pane for various display options as shown in the following figure. Select an appropriate option to display shapes in the EM document. The Layout tab in the Default EM Option dialog box also contains additional display options.
By default, only layers that have the EM Mapping table filled are displayed in the Drawing Layers pane. Choosing this option displays the complete list of drawing layers. The layers that do not have EM Mapping set display with a blue "X" on them. Choosing this option again resets it to default. When an unmapped layer is selected, an "Unmapped" message displays in the Stackup Display. If an EM Layer or Material name defined in the EM Mapping table is not present in the Enclosure, the drawing layers display with a red "X" on them.
AWR Proprietary
EM Editor
Only the shapes on drawing layers that do not have EM mapping set display in an
EM document.
Show Shapes on Mapped Layers: Show Shapes on Missing Layers:
Only the shapes on drawing layers with EM mapping set display in an EM document. Only the shapes on missing EM layers display in an EM document. Only the shapes on active EM layers display in an EM document.
Using Ports Ports are required to define the external connections to the EM structure. Each simulator handles ports differently. (See Section 8.4.3, Adding Ports for Enclosure specifics for EMSightTM.) See Section 8.5.4, Adding Ports for Enclosure specifics for AXIEM. 3D Layout The 3D layout of an EM structure is used for many things including: 1. Visually verifying what shapes will be simulated. 2. Visually verifying that the structure looks right in terms of shapes being conductors or vias. 3. Many of the annotations for EM structures (such as mesh, current, E-fields,etc) are displayed in the 3D view of the EM structure. Open a 3D layout of an EM structure by first opening the 2D layout of the EM structure by double clicking on the EM structure in the Project Browser. Then open the 3D layout by first activating the 2D window and selecting View > View 3D EM Layout or by clicking on the View 3D EM Layout icon from the EM Layout toolbar. You can rotate the 3D view by clicking in the view and dragging it. To change the viewing orientation choose View > View From and choose an orientation such as bottom, back, left, or right.
AWR Proprietary
EM Editor You can open several 3D Layouts of the same EM structure. This is useful for viewing different annotations on different 3D layout views (for example the mesh on one view and the current on a second view). To open additional 3D layouts, activate the 3D layout and select Window > New Window or by clicking on the New Window icon from the Standard toolbar. Setting Frequencies Each EM structure in the project has its own frequency range. In addition, the project also has a specifiable frequency range. The frequency range used by an individual structure can be set to use the project's frequency range by selecting the Use Project Defaults check box in the Options dialog box Frequencies tab. The project's frequency range is specified by double-clicking Project Options in the Project Browser and clicking the Frequencies tab. See the section called Project Options Dialog Box: Frequencies Tab for more information. If the project frequencies are overridden, the EM structure is only simulated at the specified frequencies. You can specify the EM structure's frequency range by selecting the EM structure in the Project Browser, right-clicking and choosing Options. The Options dialog box displays. Click the Frequencies tab.
See the section called Options Dialog Box: Frequencies Tab for more information. If an EM structure is used in a schematic that has a different frequency range or a measurement on the EM document requires another set of frequencies, these frequencies are interpolated or extrapolated from the specified frequencies using the options specified on the Interpolation tab of the Project Options dialog box. See the section called Project Options Dialog Box: Interpolation/Passivity Tab for more information. This dialog can also be used to set the meshing frequency for the simulation. A check box is provided which sets the meshing frequency equal to the highest frequency in its set of simulation frequencies. Alternatively, the meshing frequency can be specified explicitly although it is required that the meshing frequency entered must be greater than the highest simulation frequency. Not all simulators integrated via the EM Socket use the meshing frequency to determine the mesh. EMSight always uses the highest simulation frequency when determining the mesh and thus does not use the meshing
AWR Proprietary
EM Editor frequency option. When using an alternative third-party EM simulator, you should consult the documentation provided by that vendor to determine if this option is used. Advanced Frequency Sweeps Some EM simulators have advanced frequency sweep capabilities, also called fast frequency sweeps and other names. The basic capability is a simulation mode where you specify the start and stop frequencies and the simulator figures out the frequencies needed to obtain an accurate response. Each simulator has different capabilities. See the associated documentation for each solver for these capabilities. (See Section 8.4.9, Advanced Frequency Sweep (AFS) for AFS specifics for EMSight.) Exporting EM Structures If exporting an EM structure for use in another project, AWR recommends that you set your frequencies on the EM structure rather than using the project defaults. If using the project defaults, the structure will likely need to be simulated again to get the proper response for the project frequencies. Meshing EM simulators must mesh the shapes in the structure for simulation. The mesh is critical to getting accurate answers and also to solving the problem in a reasonable amount of time. You can control EM structure mesh at the following three levels: 1. Project level options that apply to all EM structures in the project, see the section called EM Options Dialog Box: Mesh Tab 2. EM structure options that apply to only the current EM structure, see the section called Options Dialog Box: Mesh Tab 3. Shape options that apply to only the current shape in an EM structure, see the section called Properties Dialog Box: Mesh Options Tab Each simulator has different controls and considerations for meshing. See the simulator- specific pages on meshing for more detail. (See Section 8.4.5, Conductor Meshing for specifics for EMSight and Section 8.5.5, AXIEM Meshing for specifics for AXIEM.) Importing and Linking to EM Structures
Importing EM Structures
To import an existing EM structure (must have been exported first before it can be imported): 1. Right-click EM Structures in the Project Browser, and choose Import EM Structure. 2. In the dialog box that displays, locate the desired EM structure. EM structures have a .eml extension. While importing an EM structure, the simulator is automatically set to EMSight, however, you can change this after the import is complete. If the simulation was of the structure was complete when the structure was exported, the simulation results are stored in the project. We recommend when exporting EM structures to set the frequency list local to the EM structure. If using the global frequency list, the imported project could have a different frequency list than the exported project, thus causing the EM structure to simulate again
Linking To EM Structures
To link to an existing EM structure (which was exported first): 1. Right-click EM Structures in the Project Browser, and choose Link To EM Structure.
AWR Proprietary
EM Editor 2. In the dialog box that displays, locate the desired EM structure. EM structures have a .eml extension. While importing an EM structure, the simulator is automatically set to EMSight, however, you can change this after the import is complete. NOTE: When an EM structure is linked, the linked file must always be available for the project to read.
Importing GDSII/DXF as an EM Structure
You can directly import into an EM document GDSII/DXF that contains only one cell. If the GDSII or DXF file contains multiple cells, you should import the file as a library in the Layout Manager under the Libraries node and then copy the shapes into the EM document as explained in the section called Defining Shapes by Copying Artwork. To import GDSII or DXF into an EM document: 1. Right-click EM Structures in the Project Browser and choose Import GDSII or the GDSII or DXF file and click Open.
Import DXF.
2. Enter a name for the EM structure, select an available simulator from the list, choose an appropriate Initialization Option (see the section called New EM Structure Dialog Box), and then click Create. 3. If the project does not have corresponding drawing layer names for the layer names in the file the AWRDE automatically creates these drawing layers. Click OK to accept this auto-generation.
4. An EM structure window opens in the workspace, and the Project Browser displays the new EM structure and its subnodes under EM Structures. 5. If you have proper EM mapping set up (see the section called EM Layer Mappings ) the shapes are automatically mapped to correct EM layers. If you do not have EM mapping set up then you need to assign the material properties and EM layer for all of the shapes. See the section called Cleaning Up EM Layer Mapping for more information. Exporting EM Structures To export an EM structure along with its enclosure, dielectric stackup, and the material properties information so it can be simulated in other projects without any set up, right-click the EM structure in the Project Browser and choose Export EM Document. The Save As dialog box displays. Specify the location to which you want to export the EM structure and enter the file name under which you want to save it. This file can only be imported in AWRDE. You can also export the shapes in an EM structure to any of the supported artwork file types. There are two approaches to export, based on how the EM structure was set up.
AWR Proprietary
EM Editor
Exporting From Schematic Layout
If your EM structure has been configured to use the drawing layers for your process, the simplest way to export the layout is to use the EM structure as a subcircuit in a schematic layout and then export the layout for the schematic. You can tell if this approach will work if you place an EM structure in a schematic and the layout shapes all draw on the proper layers. See Section 5.3, Exporting the Layout for more information on exporting a schematic layout.
Exporting From EM Layout
If your EM structure has not been configured to use the drawing layers for your process. This typically happens if shapes are simulated using the EM properties (EM layer, material, etc) without worrying about the layer name. Another clue is that the drawing layer names for shapes in the EM structure begin with the "+" symbol. In this case, you should follows these steps to export the layout for the EM structure: 1. Select Options > Environment Options, select the Layout Tab and make sure the Show EM Document's LPF is checked and close this dialog. 2. Click on the Layout Tab, and double click on the LPF name for the EM structure you want to export. The LPF will be listed under the Layer Setup node of the Layout Manager and will have the same name as the EM Structure with a "+" symbol before the name. 3. Configure the proper export mapping (GDSII, DXF, Gerber, etc). See Section 5.3, Exporting the Layout for more information on setting up this mapping. 4. Right-click the EM structure in the Project Browser, choose Export EM Layout, and select the file format. One common problem is that the layer names can have "+" symbols in the name which is not allowed in some other programs that read DXF files. To fix this problem: 1. When setting up the export mapping, provide layer names that do not have these characters. 2. Select Options > Layout Options, click the Export/LPF tab and select the Remove illegal chars in layer names check box. Cleaning Up EM Layer Mapping When generating EM structures by importing DXF or GDSII files or copying shapes from an Artwork Cell Layout, typically the EM Mapping needs to be corrected before simulation can happen. Please remember to view the 3D layout of any EM structure to see all the shapes that currently have EM layer mapping. There are several ways to fix up EM Layer Mapping after shapes have been added to an EM structure so the shapes simulate with the proper physical properties.
Changing Shape Properties
Select the shape inside the EM document, right-click and choose Properties. In the Properties dialog box, choose an appropriate EM Layer and Material and specify whether it is a conductor or via.
AWR Proprietary
EM Editor
For many shapes: 1. Right-click in the Drawing Layers pane and select Uncloak unmapped layers to display all layers in your process. If a layer name has a blue X through the first column, it doesn't have a mapping set up. 2. Right-click in the Drawing Layers pane and select Hide All to turn off the visibility for all of the drawing layers. 3. Go through the drawing layers list and turn on each unmapped layer. For layers with shapes, select all the shapes in the layout (Ctrl+A), right-click and choose Properties to change the electrical properties for all the selected shapes. Advantages: This is a simple procedure using the user interface to change the properties for the shape, especially for only a few shapes. Disadvantages: This procedure must be done per shape, so is difficult when there are many shapes. This procedure is not guaranteed to map the shapes to a drawing layer in the current list. It uses a derived layer (beginning with a "+" character) if EM Layer mapping does not exist for the properties set. This is acceptable if you don't use your EM structure as a subcircuit in a larger design and want the layout to be correct for your process. Fixes the EM Layer Mapping for this structure only. If there are others you need to perform the same process again.
Changing EM Structures EM Layer Mapping
Change the EM Layer mapping for the EM structure as explained in the section called EM Layer Mappings. Advantages: It is very simple to change the EM Layer mapping for each drawing layer. Disadvantages:
AWR Proprietary
EM Editor This process fixes the EM Layer Mapping for this structure only. If there are others you need to perform the same process again.
Changing the Parent LPF EM Mapping
To change the Parent LPF EM mapping after creating the EM structure: 1. Open the EM Layer Mapping from the LPF used to create the EM structure. 2. Configure the EM Layer mapping in this LPF. When complete, close the dialog box. 3. Right-click the edited LPF and choose Update Dependent LPFs. 4. In the dialog box that displays, select the EM structures to update and then click OK. Advantages: This procedure changes the EM Layer Mapping for the entire project, so other EM structures can use this same mapping. Disadvantages: This procedure can be difficult to perform, since editing the EM Layer Mapping in the LPF is more difficult because the dielectric layers and materials are not defined. You must type in the dielectric layer and materials exactly for this to function. If you have multiple LPFs in your project or multiple EM Layer Mappings in an LPF, it can be difficult to know which one to update. Disabling EM Structures for Simulation To stop an EM structure from being computed, right-click the structure in the Project Browser and choose Toggle Enable. Forcing Resimulation When an EM structure has completed simulation, the results are stored in the structure until something changes in the structure that requires it to simulate again. Under some circumstances, you may want to force the structure to simulate as if it were a newly created structure. To force resimulation, right-click the structure in the Project Browser and choose Force Resimulation. Using EM Structures in a Schematic EM structures are added to schematics as subcircuits the same way other subcircuits are added. The port numbers in the EM structure correspond to the port numbers of the subcircuit. When used as a subcircuit, the S-parameters of an EM structure are used in the schematic simulation. The layout for the EM subcircuit is generated from the EM structure layout by setting up EM mapping as explained in the the section called AWR EM Layout Environment.
AWR Proprietary
EM Editor The following information applies specifically to EM structures that use EMSight and AXIEMTM as the EM solver. If you specify a third-party solver, you should check the vendor documentation for details on the method(s) used for EM simulation. Cut planes are a way to "cut" the 3D layout of an EM structure to better see what is happening internal to the structure. To add an annotation to an EM structure, right-click the EM structure in the Project Browser and choose Add Annotation to display the Add Annotation dialog box.
Click the Meas Help button to view the Help for the selected annotation. NOTE: For simulators that extract equivalent circuits (such as ACE and Net-AN), you can view the extracted values on the EM structure. The annotation is located under the ERC measurement type and is named CKT_EXT3D. The following are examples of a mesh, current, and e-field annotation from the EMSight simulator.
AWR Proprietary
EM Editor
AWR Proprietary
EM Editor Mesh Annotations Viewing the structure mesh provides you with a good indication of the complexity of the problem, and whether or not you might have accuracy issues. You should always view your mesh before simulating. There are three mesh annotations:
EM_MESH:
A mesh viewed in the 3D layout of the structure. Cut planes do not affect this mesh annotation. A mesh viewed in the 2D layout of the structure.
EM_MESH_2D: EM_MESH_F:
A mesh viewed in the 3D layout of the structure. Cut planes affect this mesh annotation. This 3D mesh has some advanced features to help diagnose your circuit, as discussed in the following section. You should use this annotation with thick metal to better see which shapes are using thick metal.
The most common mistake is not selecting the Synchronize Mesh option on each of these annotations. With this option off, the mesh does not update when you edit your geometry. You can select this option for small structures when the mesh time is very small, so you can make edits and the mesh updates quickly. For large structures where the mesh time is long, you should not select this option so you can make many edits and the mesh won't update until you close and reopen the view of the structure.
EM_MESH_F Features
The unique features of the EM_MESH_F annotation are the Opacity and Color Key options. Opacity controls the transparency of each layer. For example, see the following 3D figure of this via transition.
With the Opacity set to 0, the shapes have no color; only the mesh displays.
AWR Proprietary
EM Editor
With the Opacity set to 0.5, the shapes are partially transparent, so you can see the mesh and all the shapes through the 3D structure.
With the Opacity set to 1, the shapes are filled solid so you can only see the top shapes from the angle from which you are viewing the structure.
AWR Proprietary
EM Editor
The Color Key controls how the shapes get their color in the 3D view. There are two options, Material and Net ID. For Material, every shape using the same defined conductor types has the same color. In this example, all shapes use the same conductor.
For Net ID, every shape physically connected has the same color. In this example, the ground plane and the signal line are not connected, so they display in different colors.
AWR Proprietary
EM Editor
The Net ID is a good check to ensure that your structure is connected as desired. For example, in the following annotations, the first structure has a via connecting the two rectangles, and therefore they are the same color. The second structure has no via, thus no connection, and the shapes are shown on different nets (different colors).
AWR Proprietary
EM Editor
Cut Planes Cut Planes provide an easy way to look inside a structure to see the mesh or current flow. They work with any EM document 3D view and cut the layout shapes, the EM_MESH_F annotation, and the current and E-field annotations. To turn on a cut plane click the Use Cut Plane button on the EM 3D Layout toolbar.
The following figure shows the cut plane with just the EM structure geometry at one location.
The following figure shows the cut plane moved closer to the center of the structure.
AWR Proprietary
EM Editor
You can edit the cut plane location with the following operations: Change the cut plane axis with keys x,y,z Flip the cut plane axis with keys Shift + x,y,z Drag the cut plane to move its location
AWR Proprietary
EM Editor
The following is an example of the cut plane being used with the EM_MESH_F annotation.
The following is an example of the cut plane being used with the EM_CURRENT annotation.
AWR Proprietary
EM Editor
Current Animation & E-Field Visualizations EMSight and AXIEM provide both qualitative and quantitative information for analyzing EM structures. While measurements and graphs are great for quantifying performance, it is the current animation and E-field visualization features that can provide the most insight into the behavior of structures.
Current Animation
In the 3D layout of the structure, you can view the current distribution found during the solution process. The graphical display of the current distribution provides a visualization of the vector current distribution. Arrows indicate the direction of the current flow, while the color (and also the arrow size) indicates the magnitude. The lighter colors (yellow) represent the higher magnitude, while the darker colors (blue/black) represent the smaller magnitude. A toolbar also provides the current density values. Viewing the Current Distribution To view the current distribution in 3D, right-click the EM structure name in the Project Browser and choose Add Annotation. Choose the EM_CURRENT measurement as shown in the following dialog box.
AWR Proprietary
EM Editor
Click the Meas Help button for more information on the options in this dialog box. Animating the Current Distribution To animate the current distribution in the 3D view, click the Animate Play button on the EM 3D Layout toolbar after the solution is completed. When the animation is first started it creates a set of frames (this step appears as a slower animation). After the frames are created, the animation automatically starts by cycling through the frames. The number of frames used for the animation is set on the Current View tab in the Options dialog box.
AWR Proprietary
EM Editor
Pausing the Animation To pause the animation to view a single frame, click the Animate Pause button on the EM 3D Layout toolbar. Stopping the Animation To stop the animation click the Animate > Animate Stop button on the EM 3D Layout toolbar. Selecting the Animation Frequency When more than a single frequency point is specified when solving the EM problem, the frequency used for the animation is controlled in the bottom of the Edit Annotation on the EM Structure dialog box. You should select the animation frequency from a list of frequencies. NOTE: If using the AFS feature for EM, this frequency selection is not accurate because the simulation frequencies are unknown before simulation occurs. In this case, you should make a duplicate EM structure and only simulate a few frequencies without AFS enabled, where you want to view the currents. Viewing Animation Versus Phase When you first view currents, if you open the tuner, you can tune over the source phase. The number of tune states is set by the number of frames per cycle set on the Current View tab of the EM Options dialog box or the (local EM structure) Options dialog box. Terminations and Excitations EMSight and AXIEM allow you to specify the magnitude and phase of the port excitation. The current distributions that arise from different modes of operation can be visualized by specifying the relative phases of different ports. Any port can be either a port excitation or a termination. For terminated ports, you can specify the termination impedance. The specification of the terminations and excitation only affect the animation and not the S-parameter solution. The solution that is used to compute the S-parameters use short-circuited terminations. The current solution for short-circuited terminations is a standing wave. To visualize how the currents flow through a structure, the solution of the structure with loaded terminations must be computed. By default, EMSight and AXIEM compute the current solution for the loaded terminations in an extra step after the S-parameters are already determined. This extra step takes very little time (however, it can be disabled for EMSight on the EMSight tab of the EM Options dialog box or Options dialog box).
AWR Proprietary
EM Editor
E-Field Visualization
Currently, E-fields are only possible in EMSight, not AXIEM. The tangential electronic field (E-field) can also be computed in addition to current distributions. E-field animations are viewable in the 3D view of the structure. The graphical display of the E-field provides a visualization of the tangential E-field in any XY plane. Arrows are used to indicate the direction of the field, while the color (and also the arrow size) is used to indicate the magnitude of the voltage. The lighter colors (yellow/green) represent the higher magnitude, while the darker colors (blue/black) represent the smaller magnitude. A toolbar also provides the E-field density values. Unlike the current animations, E-field simulations increase simulation time. Viewing the E-field Distribution To view the E-field distribution in the 3D view, right-click the EM structure name in the Project Browser and choose Add Annotation. Select EM_E_FIELD as shown in the following dialog box.
Click the Meas Help button for more information on the options in this dialog box. The E-field is only calculated for the layer specified in Layer Number. You cannot view the E-field for the top or bottom of the enclosure if that boundary condition is using Perfect Conductor. AWR recommends using the Approx Open boundary condition for viewing the E-field on the top or bottom.
AWR Proprietary
EM Editor Viewing and Animating the E-field All of the same options for viewing and animating currents are available for E-fields.
Dielectrics define properties such as relative permittivity and loss tangent. The following table lists common dielectric substrate material properties. Material Air Alumina Quartz Silicon Gallium Arsenide RT Duroid(R) 5880 RT Duroid(R) 5870 Dielectric Constant 1.0 9.8 3.78 11.9 12.9 2.20 2.33 Loss Tangent 0 <0.0015 <0.0001 ~0.003 0.001 <0.0009 0.0012
AWR Proprietary
Conductors define the conductivity of a material. The following table lists common conductor material properties. Material Silver Copper Gold Aluminum Nickel
Impedance Definitions
Conductivity 6.14x107 5.88 x 107 4.10 x 107 3.53 x 107 1.47 x 107
Impedances define the resistive (low and high frequency) properties of a material. The Low frequency parameter specifies the DC resistance (ohms/square) of the planar conductor. The DC resistance is used, assuming there is a uniform current distribution in the cross-section of the conductor. The DC resistance is typically set to the following value where is the conductivity of the conductor and t is the thickness.
1 RDC = t
The High frequency loss coefficient specifies the loss associated with the conductor at frequencies where the thickness of the conductor is significantly thicker than the skin depth. Since the loss associated with the skin depth effects are proportional to the square root of frequency, the skin depth loss coefficient is multiplied by the square root of frequency to provide an ohms/square value that is used for loss computations. The high-frequency loss coefficient is multiplied by a (1+j) factor to represent the equal real and imaginary components of the surface impedance that is associated with the skin depth phenomena. The high frequency loss coefficient is given by:
RH F =
At low frequencies, the DC resistance is used in the computation of conductor loss, while at high frequencies the high frequency loss coefficient is used to compute conductor loss. In the transition region (frequencies where the skin depth is close to the thickness of the conductor) both factors are used. The Excess surface reactance is used to model the reactance associated with superconductors. It should not be used for normal conductors. For more information about the Material Defs tab of this dialog box, see the section called Element Options-(EM) ENCLOSURE Properties Dialog Box: Material Defs. Tab. Dielectric Layers The stackup must contains a minimum of two dielectric substrate layers. The following figure shows a 3D picture of a multi-layer structure.
AWR Proprietary
EM Editor
Often the top dielectric layer is set with the properties of air (or a vacuum), although this is not necessary. There is no practical limit on the number of dielectric layers that can be included in the enclosure. The height of the enclosure is the sum of all the dielectric layer thicknesses. To enter the substrate layers, click the Dielectric Layers tab on the ENCLOSURE Properties dialog box. To insert a dielectric layer click Insert to add new layers below the selected layer, or Delete to delete the selected layer. The boundary conditions for the top and bottom of the enclosure are user-defined.
You can edit the boundary settings on the Dielectric Layers tab of the ENCLOSURE Properties dialog box. For more information see the section called Element Options-(EM) ENCLOSURE Properties Dialog Box: Dielectric Layers Tab. Conductor Materials The materials properties defined on the Material Defs tab are assigned to conductors on the Materials tab. Click the Materials tab to enter a conductor name. Each conductor is assigned one of the named materials from this dialog box. You can always use the default conductor "Perfect Conductor" (a perfect conductor material) for a material property. For a conductor, the thickness only affects the loss characteristics if the material is defined as a conductor on the Material Defs tab. Impedances already define their loss characteristics. For more information see the section called Element Options-(EM) ENCLOSURE Properties Dialog Box: Materials Tab. EM Layer Mappings EM Layer mapping determines how shapes in an EM layout are used in simulation. There are three common use models:
AWR Proprietary
EM Editor EM simulation, but not using the EM structure with layout in a larger design. In this case, EM Layer Mapping does not apply since when drawing shapes in EM layout, you set the EM layer and material for each shape and the software manages the EM Layer Mapping. EM simulation, and using the EM structure with layout in a larger design. The EM Layer Mapping is necessary to create the connection between the drawing layer name and the physical EM properties for shapes on that layer. In this model you can use the EM Structure as a subcircuit in a design and the layout works properly. Extraction flow requires EM mapping since shapes in schematic layout use drawing layers. EM Layer mapping determines how shapes in schematic layout are simulated during the extraction process. Note that in a 3D view of any EM structure you only see shapes that have EM layer mapping configured. There is a slight difference between editing these properties from the Enclosure node of an EM structure and editing the Active EM Mapping and LPF Nameproperties of a STACKUP model on the EM Layer Mapping tab. The Enclosure node of an EM structure does not need to set either of these properties because the mapping is stored in the EM structure directly. A STACKUP block, however, does not have an EM structure. Since a project can have more than one LPF (not particularly common) and each LPF can have more than one EM layer mapping setup, the STACKUP block allows you to select which mapping you want to set up. You can set up the EM layer mapping directly in the LPF files, however, AWR recommends using the stackup for several reasons: The values for the Material are included in a drop-down box because they are already defined. When editing in the LPF directly, you must type in these names exactly. You can visualize in the cross-sectional view where the mapping places the conductor or via in the physical stackup. The LPF editor does not define a stackup, so you don't have this visual.
AWR Proprietary
EM Editor For more dialog box information on the EM layer mapping of an EM Structure, see the section called Element Options-(EM) ENCLOSURE Properties Dialog Box: EM Layer Mapping Tab. For more information on the EM layer mapping of a STACKUP block, see the section called Element Options-(Schematic) STACKUP Properties Dialog Box: EM Layer Mapping Tab. Line Type Mapping Line type mapping is used for the shapes defined by line types, and is typically only used for extraction. Line type mapping addresses common situations such as when an object in layout needs to be drawn with many layers for processing purposes, but only needs to simulate as one shape in EM structures. For example, a plated line in a MMIC process, where the line typically consists of a bottom metal, a dielectric etch layer, and a top metal layer. In EM structures, this line is more efficient to simulate as only one shape. When drawing shapes in an EM structure, you can tell shapes to use Line Types (this is not very common). See the section called Drawing Shapes by Line Types. Line type mapping defines how this line type is simulated. During the extraction flow, some items in schematic layout use line types that include line models such as microstrip lines and stripline, and any shapes draw in layout with the Use Process Layer option selected. Extraction only uses line type mapping if Extract Line Types on the EXTRACT block is set to Yes. If set to No, all of the different shapes for any objects using line types are flattened in the EM layout and only EM layer mapping is necessary. For more information about the Line Type tab, see the section called Element Options-(EM) ENCLOSURE Properties Dialog Box: Line Type Tab. EM Layer Mapping vs. Line Types Each STACKUP element has an EM Layer Mapping tab and a Line Type tab, both of which are used to define the physical properties (conductor properties, conductor location in stackup) used for EM simulation. Each simulator type and situation differs.
AWR Proprietary
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.1. Circuit Schematic for Automated Circuit Extraction
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.016 ErNom=12.9 Name=SUB1 PORT P=1 Z=50 Ohm
TFR ID=TL1 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB1
TFR ID=TL2 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB1
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.016 ErNom=12.9 Name=SUB2
TFR ID=TL4 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB2
TFR ID=TL3 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB2
Extraction Process Before the extraction process, perform the following steps manually: 1. Set up Line Types in the LPF (Layout Processing File). See Section 4.4, The Layout Process File (LPF) for information on how to configure the LPF. This is essential, as the extraction process only recognizes the line types defined in STACKUP. The same line types then must be used with iNet routing. 2. The extraction process is controlled by the STACKUP element, which needs to be set up carefully to best represent the circuit and to ensure the accuracy of the results.
AWR Proprietary
Automated Circuit Extraction (ACE) 3. Via modeling must be set up. A Via mapping text file and via model need to be defined to model the via during extraction. Configuring the STACKUP Element The first step in setting up the extraction process is to set up the STACKUP element. If this element is already configured for the Process Design Kit (PDK) you can use it from the kit. The STACKUP element is used to set up the dielectric stackup for the circuit being extracted. It represents a generalized multi-layered substrate stackup. Figure 8.3, Addition of the STACKUP Element to the Original Schematic. shows the addition of this element. Figure 8.3. Addition of the STACKUP Element to the Original Schematic.
STACKUP Name=SUB3 MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.016 ErNom=12.9 Name=SUB1 PORT P=1 Z=50 Ohm
TFR ID=TL1 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB1
TFR ID=TL2 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB1
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.016 ErNom=12.9 Name=SUB2
TFR ID=TL4 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB2
TFR ID=TL3 W=3 mil L=5 mil RS=50 F=10 GHz MSUB=SUB2
After you add the STACKUP element you need to set its properties to represent the desired dielectric stackup. In this example, it duplicates the stackup of the MSUB elements. Double-click the STACKUP element to display its Element Options dialog box. You must configure the Material Defs, Dielectric Layers, Materials, and Line Type tabs. See Section 8.2.3, Configuring Stackup for details on setting up the STACKUP. Figure 8.4, Nets routed with iNets shows the layout nets routed with iNets. The upper set of resistors is routed on line M1 and the lower one is routed with line M2.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.4. Nets routed with iNets
Adding the Extraction Control Element The second step in setting up an automatic extraction is to add an EXTRACT control element to the schematic. The EXTRACT element extracts the net(s) and assigns them to a group which is used by a linear circuit simulator. The X and Y_Cell_Size and Extension parameters are not used and can be ignored. The EXTRACT element is located in the Element Browser in the Simulation Control category. Figure 8.5, Addition of the EXTRACT Simulation Control shows the schematic with the EXTRACT simulation control added. Figure 8.5. Addition of the EXTRACT Simulation Control
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB3
EXTRACT ID=EX1 EM_Doc="Circuit_Extract_Doc" Name="Circuit_Extract" Simulator=ACE X_Cell_Size=1 mil Y_Cell_Size=1 mil STACKUP="SUB1" Override_Options=Yes Hierarchy=Off
STACKUP Name=SUB1
PORT P=1 Z=50 Ohm MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB2
AWR Proprietary
Automated Circuit Extraction (ACE) The EXTRACT element parameters must be configured for automatic extraction. See the EXTRACT element in the Microwave Office/Analog Office Element Catalog Help for details. The following briefly reviews these parameters in the context of the extraction process: EM_Doc - the name of the extracted document to be created to collect the nets associated with the extraction. Name - the name for the extraction group. This name is also used for extraction through levels of hierarchy. Simulator - the name of the simulator used to simulate this extraction document. This should be set to ACE. X and Y Cell Size - the cell sizes used in the extracted document. This does not affect the circuit simulation. STACKUP - the name of the STACKUP element used to determine the dielectric stackup of the extracted document. If let blank, it uses the first one found in the schematic or the Global Definitions. Create_Enclosure - turns on or off the automatic reconfiguration of stackup after the extracted document is created. Create_Shapes - determines whether or not to send the shapes to the extracted document every time a simulation is required. Extension - not used in circuit extraction. Override_Options - simulator options can be set on the EXTRACT block as well as directly on the EM document. With this option set to Yes, the options set on the EXTRACT block override the options set directly on the EM structure. Hierarchy - determines how to treat this extraction block if used at lower levels of hierarchy, see Section 8.1.9, Hierarchy for more information. Extract_LineTypes - set this to No. If the extracted network will be simulated with a transient simulator, the EXTRACT block has a SPICE Model Generation tab that controls how ACE extracted netlists are used in transient simulations. Adding iNets and/or Line Models to the Extraction Group Both iNets and certain distributed models are supported for ACE, including the MLIN, CLIN_SYM_2-10, CLIN_ASYM2-16, MCFIL, MLEF, MCTRACE, and MTRACE2 elements. The next step in setting up the circuit extraction is to associate iNets and/or line models with the extraction group. In this example both of the iNets are associated with the extraction group. There are two ways to associate with the extraction group. One is to select the wire or model in the schematic and the other is to select the layout objects. Selecting a wire in the schematic selects the entire corresponding iNet in layout. In layout, selecting just a section of an iNet selects the entire iNet for extraction. This is often more convenient, as in the Layout View it is easier to identify nets that are in close physical proximity. In this example, in the Schematic View select a wire, right-click it, and choose Edit Net Properties to display the Element Options dialog box. Click the Model Options tab. In the EM Extraction Options area, select the Enable check box and in Group name enter the extraction group name as "Circuit_Extract". Figure 8.6, Model Options Tab Configured for Extraction shows the Model Options tab with these settings.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.6. Model Options Tab Configured for Extraction
If working in Layout View, select an iNet, right-click it, and choose Element Properties. Click the Model Options tab and assign an extraction group. Note that you can select multiple objects in Schematic or Layout Views and assign them for extraction. After associating nets for extractions, select the EXTRACT element in the schematic and notice that all the elements associated with the extraction are highlighted as shown in Figure 8.7, Schematic Wires Association with EXTRACT Element. Similarly, in the Layout View, the iNets associated with the extraction are highlighted as shown in Figure 8.8, iNets Association with EXTRACT Element.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.7. Schematic Wires Association with EXTRACT Element
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB3
EXTRACT ID=EX1 EM_Doc="Circuit_Extract_Doc" Name="Circuit_Extract" Simulator=ACE X_Cell_Size=1 mil Y_Cell_Size=1 mil STACKUP="SUB1" Override_Options=Yes Hierarchy=Off
STACKUP Name=SUB1
PORT P=1 Z=50 Ohm MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB2
Configuring ACE Simulation Options ACE options are set up on the EXTRACT block. The accuracy of the circuit simulation depends on this configuration. Double-click the EXTRACT block. In the Element Options dialog box click the ACE tab in Figure 8.9, ACE EXTRACT Setup Dialog Box.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.9. ACE EXTRACT Setup Dialog Box
The models used to construct a circuit for an extracted document depend on the ACE options. For more information on these options, see the section called Options Dialog Box: ACE Tab. The circuit for this example is extracted using the settings shown in Figure 8.9, ACE EXTRACT Setup Dialog Box. Add a graph to plot S21 for the schematic or the extracted document and simulate. When an extraction is first performed (or the extracted document is first created) the set of frequencies from the schematic with the EXTRACT block are copied to the extracted document frequencies. The extracted document frequencies are not set to use the project default frequencies. Once the extracted document is set up with these frequencies, no further automatic update of the frequencies is done, unless the extracted document is deleted and recreated. A new set of frequencies can then be assigned to the extracted document and this remains unchanged. The circuit simulator constructs a circuit to represent the layout using the models specified in the Circuit Extract options. The circuit that gets simulated is equivalent to the circuit that you would create in a schematic using the element models. After the simulation is complete, click the Status Window button on the toolbar to display the Simulation Information window. Click the "Extracted netlist information" line in the Status window to display the netlist for the circuit that was sent to the circuit simulator. The netlist displays as shown in Figure 8.10, Netlist of the Circuit Representing the Extracted Document. Notice that the models the circuit simulator uses to construct the circuit are the same as those in the Element Browser.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.10. Netlist of the Circuit Representing the Extracted Document
You can view the circuit that represents the extracted document by adding an annotation to the 3D view of the extracted document. In the Project Browser, right-click the extracted document "Circuit_Extract_Doc" and choose Add Annotation. Expand Annotate > ERC under Measurement Type and choose EXT_CKT3D under Measurement and add the measurement as shown in Figure 8.11, Add Annotation to Display the Circuit Representing the Extracted Document. For more information on this measurement, see the Microwave Office/Analog Office Measurement Catalog Help.
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.11. Add Annotation to Display the Circuit Representing the Extracted Document
The circuit is annotated as shown in Figure 8.12, Extracted Circuit Annotated in the 3D View Figure 8.12. Extracted Circuit Annotated in the 3D View
AWR Proprietary
Automated Circuit Extraction (ACE) Viewing an EM Structure without Simulating Now that the entire extraction is configured, the extracted document is first created and is further configured for built-in model selection before simulation. If this step is not performed (simulated after setting up the extraction), the extracted document is automatically created and is simulated with the default circuit setup. To extract the structure before simulation, in the Project Browser under Circuit Schematics, select the schematic containing the EXTRACT simulation control, right-click and choose Add Extraction (see Figure 8.13, Creating the EM Document without Simulation). Figure 8.13. Creating the EM Document without Simulation
The extracted document specified by the EXTRACT control is created. Figure 8.14, Extracted Document shows the extracted document. Figure 8.14. Extracted Document
AWR Proprietary
Automated Circuit Extraction (ACE) Multiple Extractions in a Single Schematic You can apply a multiple extraction within the same schematic. You should use this technique if an interconnect or interconnects in the layout need to be modeled differently than the others. To enable multiple extractions, simply add another EXTRACT control to the schematic. Figure 8.15, Schematic with Two Extraction Groups Highlighting the Elements in the Second Extraction Group and Figure 8.16, Layout View of Isolated Nets Highlighting the Elements in the Second Extraction Group show a schematic and layout that have two isolated nets and two EXTRACT controls. Note that the Name parameter of the second EXTRACT control is changed to "Circuit_Extract_Line2" and the EM_Doc parameter is set to "Circuit_Extract_Doc_Line2". As in the previous section, the top line routed with M1 is added to the extraction group named "Circuit_Extract". The bottom line routed with M2 is assigned to the extraction group named "Circuit_Extract_Line2". Figure 8.17, EM Document Produced by the "Circuit_Extract" Extraction Group and Figure 8.18, EM Document Produced by the "Circuit_Extract_Line2" Extraction Group show the two extracted documents created by the two extractions. Figure 8.15. Schematic with Two Extraction Groups Highlighting the Elements in the Second Extraction Group
EXTRACT ID=EX1 EM_Doc="Circuit_Extract_Doc" Name="Circuit_Extract" Simulator=ACE X_Cell_Size=1 mil Y_Cell_Size=1 mil STACKUP="SUB1" Override_Options=Yes Hierarchy=Off
EXTRACT ID=EX2 EM_Doc="EM_Extract_Doc_Line2" Name="Circuit_Extract_Line2" Simulator=ACE X_Cell_Size=1 mil Y_Cell_Size=1 mil STACKUP="SUB1" Override_Options=Yes Hierarchy=Off
MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB3
STACKUP Name=SUB1
PORT P=1 Z=50 Ohm MSUB Er=4.47 H=10 mil T=0.1 mil Rho=1 Tand=0.015 ErNom=12.9 Name=SUB2
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.16. Layout View of Isolated Nets Highlighting the Elements in the Second Extraction Group
AWR Proprietary
Automated Circuit Extraction (ACE) Figure 8.18. EM Document Produced by the "Circuit_Extract_Line2" Extraction Group
AWR Proprietary
EMSight
8.4. EMSight
8.4.1. The Electromagnetic Solver
EMSight is a full-wave electromagnetic solver based on a modified spectral-domain method of moments. This method is used to accurately determine the multi-port scattering parameters for predominantly planar structures. Importantly, the contents of this chapter apply mainly to the analysis methods of EMSight (EMSight is the simulator associated with the EM structure). If you select a third-party simulator you should consult the documentation provided by that vendor for analysis details. The Problem Domain EMSight can analyze circuits with an unlimited number of layers and an unlimited number of ports. The circuit is analyzed inside of a multi-layered rectangular enclosure. A gridded, variable cell size mesh is automatically generated which places smaller cells in areas that have high variations in current densities, and larger cells in areas with more uniform current variations. The user can control the mesh by changing the meshing density of specific polygons. The generated mesh can be viewed while the geometry is being edited so the effect of changing the meshing density is seen instantly. The discontinuities that arise from the excitations at the ports can be automatically removed by EMSight's de-embedding algorithm. In addition, arbitrary reference planes can be used for the de-embedding. The reference plane lengths are set by clicking and dragging the reference plane symbols.
When using EMSight, the optimum cell size for a given problem is determined by several factors. While smaller cell sizes should provide a more accurate simulation, the use of cells that are too small greatly increases the solve time. It is generally advisable to initially use the largest cell size that can accurately approximate the geometry (assuming the cell sizes are still small enough to give a good approximation to the current density in the conductor). If the cell size is too large, the results of the simulation may not be accurate enough in which case the cell size can be reduced until there is no change in simulation results. If the cell size is larger than about a tenth of a wavelength, the mesh created from the cells may not be able to provide an acceptable approximation of the current on the conductors.
AWR Proprietary
EMSight
To add an edge port, select a conductor and choose Draw > Add Edge Port. Move the cursor onto the flush side; an outline of the port displays. Click to place the port. Port numbering is automatic; the port numbers increase as ports are added. To change a port number, delete the ports and add them back in the desired order. Setting the Reference Planes
To set the reference plane of a port, select the port, click the reference plane highlighted at the flush end, and drag it with the mouse. The arrow as shown in the previous figures displays, the end of which defines the new reference plane. If the reference plane coincides with the port edge, the arrow is not visible. Note that if you add more than one port on the same side of the enclosure, all reference planes are stretched simultaneously. Setting the Port Excitation or Termination The computation of the port parameters does not depend on the excitations or terminations at the ports, however, the current density computation and antenna analysis depend on these settings. To set the port excitation or termination, double-click the port to display the Port Attributes dialog box. You can specify the port as an excitation or termination port. For an excitation port, you can set a relative magnitude and angle for the port excitation along with the source impedance. Note that the magnitude of the excitation is described by an available power, meaning that if the port is conjugate-matched to the specified impedance, the specified amount of power enters the structure. For a termination port, you can specify the resistance and reactance of the termination. The ability to solve for the currents in the structure with terminations on the ports allows the current animation to show the waves traveling through the structure (the usual short circuit solution only shows a standing wave of the currents in the structure). Specifying the
AWR Proprietary
EMSight excitation or termination at a port only affects the current animation. Electrical port parameters (for example, S-parameters) assume a port impedance of 50 ohms. To change the reference, place the EM structure as a subcircuit in a circuit schematic and edit the port impedance. Adding Via Ports Via ports are similar to edge ports in that they are typically connected to the top or bottom boundary of the EM enclosure. Via ports are used to add terminals between the enclosure boundary and the EM structure. The boundary must be conductive, because it serves as the ground reference for the port. Via ports can be used to create probe feeds as indicated in the following figure for a patch antenna.
To add a via port, select Via in the EM Layer Selection pane and choose Draw > Add Via Port. Draw a rectangle to draw a via port. Once created, you can modify the via port by double-clicking it. Port numbering is automatic; the port numbers increase as ports are added. To change a port number, delete the ports and add them back in the desired order. Adding Internal Ports Internal ports are the most complicated of the three ports, and should be used with caution. To use the internal ports effectively requires a good understanding of both the implementation of the internal ports and the concept of a local ground reference. The resulting S-parameters from a simulation that uses the internal ports is not a general S-parameter and there is a relatively non-intuitive methodology that must be followed in order to get meaningful results. To add the internal port, select the polygon that is to be the negative terminal for the internal port, then choose Draw > Add Internal Port. Move the cursor onto the edge of the polygon where a port is desired; an outline of the port displays. Click to place the port. The positive terminal of the internal port displays a "+" sign as shown in the section called Internal Port Example. Description of Internal Ports The port parameters of the passive EM structure are determined at all ports, for example, both external and internal ports. The internal ports allow connection of arbitrary two-terminal or three-terminal devices. A three-terminal internal port can be connected to an active FET (Field-Effect-Transistor) while two-terminal internal ports can be used for passive FET switch devices, lumped elements, diodes, or any other two-terminal device. An internal port does not use the same ground reference as the external ports or any other internal ports. The lack of a common ground between different internal ports leads to the restriction that devices connected to the internal ports cannot be connected to other ports or ground. In addition, the electrical distance between the actual terminals of the ports needs to be small compared to a wavelength. The internal ports are most useful when a connection of zero-dimensional electrical components is required. The internal port is implemented using the same technique that is used for the external ports. A gap voltage source is applied at the terminals of the internal port, and the resulting current distribution is computed. The following shows a configuration for a single internal port, where T1 and T2 are the terminal connections for the port. The admittance looking
AWR Proprietary
EMSight into the port is found from the magnitude of the current basis at the port (the center basis in the following figure). An assumption in the implementation requires that the current flowing into T1 must equal the current flowing out of T2. Also, the voltage at each terminal is unknown (floating reference), only the voltage across the terminals is known.
The terminal characteristics of a circuit that does not have any connection to the reference ground can be represented by an indefinite Y-matrix. For a typical electromagnetic simulation, both internal and external ports are used. The results from the simulation are in the form of a definite Y-matrix (the ground reference is part of the circuit). The key point is that the port that represents the internal port does not use the same ground reference as the other ports. Effectively, the ground reference for the internal port is the negative terminal of the port as shown in the previous figure. When a device is to be connected across this internal port in the circuit simulator, the negative terminal of the device is connected to ground in the circuit simulator (although in reality this is actually just a local ground for that port). There are several restrictions regarding what can be connected to this internal port. The restrictions are that lumped models' terminals are electrically "close" to each other, and the lumped description must also be in indefinite form (i.e. not connected to ground). The latter restriction is not a problem as it is easy to convert definite admittance descriptions to indefinite form (the conversion is built into the circuit simulator. It is this feature that allows the connection of a two-port device as a three-port, as is commonly done when adding series feedback to a FET model). Also, internal ports that are not electrically close to each other should not be connected together using the lumped circuit models. Internal Port Example The following example illustrates the use of internal ports. To use internal ports, there must be two polygons that are adjacent to each other as shown in the example. The internal port is added between the two polygons which are touching each other.
To add the internal port, select the polygon that is to be the negative terminal for the internal port, then choose Draw > Add Internal Port. Move the cursor onto the edge of the polygon; an outline of the port displays. Click to create the port. The positive terminal of the internal port displays with a "+" sign.
AWR Proprietary
EMSight
>NOTE: There must be a polygon on each side of the internal port or the results are meaningless. The EM simulator does not check for this condition and will run the analysis regardless. The following situation would lead to meaningless results:
Port numbering is automatic in the AWR Design Environment (AWRDE). The port numbers increase in the order in which they are added to the structure. To change a port number, delete the ports and add them back in the desired order. Using the Results of the Internal Port Example The following schematic illustrates how to connect a 100 ohm resistor across the internal port terminals. The end of the resistor that is to be connected to the negative terminal of the internal port must be connected to ground in the schematic diagram.
AWR Proprietary
EMSight
If the previous example is simulated at a low enough frequency that the distributed sections of the EM structure are electrically very short, the resulting S-parameters can be seen to be the same as for a 100 ohm resistor connected between Ports 1 and 2. Example Using a Three Terminal Device With care, a three terminal device, such as a FET can be embedded into an EM simulation by using the internal ports. This application assumes that the FET model is for the intrinsic FET only, and no de-embedding is done at the internal ports. The following is an example of a three terminal device.
In this FET structure, there are four internal ports and two external ports. In the equivalent circuit model that follows, the external ports are represented by the single G and D terminals. The voltage associated with these external terminals is relative to the common ground (also shown). The internal ports are represented by two terminals each. The voltage associated with an internal terminal is the voltage across the terminal pair. If the FET is assumed symmetric, then any external excitation on ports G or D results in the voltages at terminals g1 and g2 being at the same potential, and the voltages at terminals s1 and s2 being at the same potential. Since the terminals are at the same potential, the terminal points can be connected together to allow for the FET to be represented by the equivalent circuit (shown in the following
AWR Proprietary
EMSight figure), where the gate terminal is represented as a floating (non-common) ground, since it is a common terminal to all the terminal pairs shown in the previous figure. (The symmetry is not a requirement, but allows for a more compact representation).
The following figure shows how the circuit would be connected in the circuit simulator.
In the previous diagram, the positive terminals of the internal port are indicated as s1, s2, d1 and d1 to match the first figure. The external terminals are marked as G and D. The grounding of the FET's gate is actually a connection to the virtual ground of the gate terminal.
8.4.4. De-embedding
The process of de-embedding removes the effects of the port discontinuities and feedlines from the results of the simulation. EMSight features automatic de-embedding; the de-embedding procedure is illustrated as follows. The details discussed in this section apply specifically to EM structures which use EMSight as the EM solver. If you use a third-party solver you should check the vendor documentation for details on de-embedding.
The result of the simulation yields the S-parameters for the entire structure previously including the port discontinuity Z and the length of transmission line leading up to the reference plane. The result can be represented by the following three cascaded circuits. The first circuit block is shown in greater detail in the box below it. The automatic de-embedding procedure is used to compute the S-parameters of the DUT using the solution of the de-embed standards and the original result.
AWR Proprietary
EMSight The Standard De-embedding Algorithm in EMSight The de-embedding procedure requires the analysis of two separate "de-embedding standards" to perform the de-embedding. The standard de-embedding method requires a completely separate analysis with a different sized enclosure. The enclosure used for the separate simulation uses an enclosure that is twice the length of the reference plane length that is to be de-embed.
The standard algorithm sometimes has difficulty de-embedding the structure when the length of the reference plane is a multiple of a quarter wavelength. The standard algorithm can be used for any number of ports on a side. The de-embedding of multiple ports on a side takes into account the coupling that occurs between the multiple conductors associated with the feed lines. When using the standard de-embedding algorithm, the reference planes need to be far enough from the edge of the enclosure that the higher order modes caused by the port discontinuity do not effect the de-embed results. A rule of thumb is that the reference plane should be about two substrate heights away from the edge. An exception to this is that zero length reference planes can be used (the de-embedding then removes just the port discontinuity). The Fast De-embedding Algorithm in EMSight The fast de-embedding algorithm determines the required "de-embedding standards" using the moment tables from the main structure which eliminates the need to compute a new set of moment tables for the de-embedding process. The drawback of the fast de-embed algorithm is that it is currently only implemented for the de-embedding of sides that have a single port. When there are multiple ports on a side, the standard de-embedding routine is automatically used instead of the fast de-embed routine. The other drawback with the fast de-embedding algorithm is that it fails when the length of the enclosure is close to a multiple of a half wavelength. The solver issues a warning when it detects this problem. With the fast de-embedding algorithm, the reference planes do not need to be kept far away from the edge of the enclosure. Any length of reference plane should provide valid results (with the exceptions noted earlier), although if you have a discontinuity close to the port, the results will have some error due to the interaction of the port and the discontinuity. De-embedding Issues in EMSight For zero length reference planes, the fast de-embed algorithm and the standard algorithm are the same, and they should yield identical results. When a zero length reference plane is specified and the de-embedding is enabled, only the port discontinuity is removed. The solver computes the impedance and propagation constants of the feed lines for sides of the enclosure that have only one port. If the de-embedding standard is a multiple of a half wavelength then the solver may not give an accurate answer for the impedance or propagation constant.
AWR Proprietary
EMSight De-embedding of Via Ports in EMSight For this release of EMSight the de-embedding of via ports is not done automatically, and any discontinuity that results from the presence of the via in the circuit becomes part of the solution. Although automatic de-embedding is not supported, manual de-embedding can be done using the two port negation element (NEG2) that is part of the linear circuit simulator. The following illustrates an example: For the structure shown, it is desired to de-embed the effect of the port via.
EM Structure Named "Structure"
To use the negation element, a second structure with the via port structure and a feedline should be created as follows. This structure should have the same line widths and height as the structure to be de-embedded, and the via should have the same cross-section and position relative to the edges of the line. The x and y size of the enclosure can be smaller than the main structure to reduce the simulation time.
EM Structure Named "Standard"
The de-embedding should be turned on for both the structures shown previously. Once the solution is obtained, create a schematic with the main structure and the negation element as follows.
AWR Proprietary
EMSight
The resulting S parameters for this structure will have the effect of the via removed back to the reference plane indicated in the first structure shown previously. For more information, see the documentation on the negation element.
In addition to controlling the mesh generation for the entire structure, you can set the meshing properties for individual conductor shapes. The default settings for a conductor use the default properties set in the EM Options dialog box. (Choose Options > Default EM Options.) The following dialog box displays the Mesh tab of the EM Options dialog box.
AWR Proprietary
EMSight
Using EMSight as the selected simulator, the size of the cells is determined by the estimated wavelength for a transmission line on the same layer. In addition, the meshing options allow the specification of a meshing density of Low, Normal, or High. The meshing can also be set to create one mesh cell for every grid cell by selecting No Variable Mesh. A mesh that uses a Low meshing density has larger mesh cell sizes with a corresponding lower level of accuracy. Normal mesh density is the default, and High or No Variable Mesh can be used when higher accuracy is desired. The min and max settings at the bottom of the dialog box specify the minimum and maximum size of a mesh cell in cell units. Specifying Individual Conductor Mesh Properties In addition to controlling the mesh generation for the entire structure, the meshing properties can be set for individual conductor shapes. By setting the meshing density to High where the current is known to be varying more rapidly, and to Low in regions with low current densities, the mesh can be hand-tuned to be more optimal for a given problem. The default settings for a conductor are to use the default properties set through the EM Options dialog box. Sonnet Options The Sonnet Options on the EM Options dialog box Mesh tab are used to set meshing options specifically for the Sonnet EM when it is the selected EM simulator. EMSight does not use these options when solving the EM problem. If you select an alternate simulator, you should check the vendor documentation to see if these parameters are used.
AWR Proprietary
EMSight The default EM options are discussed in the section called Project Level Defaults - EM Options Dialog Boxes. The EM options applied to the individual EM structures are discussed in the section called Document Level Defaults Options Dialog Boxes . Note that the last tab on the Options dialog box changes depending on the simulator associated with the EM structures. If EMSight is selected, an EMSight tab displays. See the section called EM Options Dialog Box: EMSight Tab for more information. You should consult the vendor documentation for information on this custom set of options if a third-party simulator is associated with the EM structure.
AWR Proprietary
EMSight
An example structure is shown previously where three dielectric layers are shown. The planar conductors and currents (i.e., x and y currents) are confined to infinitely thin sheets between the dielectric layers. Z-directed currents are included to allow the electrical connection of the planar currents in different layers. The z-directed currents also allow the connection of the planar conductors to the ground plane as follows.
The z-directed currents represent metallic vias, and are modeled as columns of z-directed current with no x or y components. The z-directed current representation is an approximation that is valid for layers that are thin relative to a wavelength. The currents on the conductors are spatially approximated using rooftop basis functions for the x and y currents and rectangular cross-section current vias are used the for z-directed currents as shown here. The discretization of the conductors is performed on a uniform rectangular grid. After discretization, the solution process determines the amplitudes of the individual basis functions such that when all the basis functions are summed together they provide an accurate approximation of the current on the conductors. The solution process is divided into several steps described in the following sections.
Creating the Structure
The first step in solving a problem in EMSight is to define the structure geometry. The following describes some of the considerations involved in creating the geometry. (For detailed information on defining the geometry see Section 8.2.3, Configuring Stackup).
Defining the Layers
At least two dielectric layers must be defined in EMSight although there is no practical restriction on the maximum number of dielectric layers. The most basic case with two dielectric layers is often used to model microstrip circuits where the top dielectric is assigned properties of air and the lower dielectric is assigned properties of the microstrip substrate. The dielectric layers can be lossless or lossy. If all the dielectric layers that are defined for a structure are lossless, the boundaries are lossless and the conductors are perfect conductors, then real mathematics can be used in the computation of the moment matrix entries (see the following). A lossless dielectric layer is defined with a loss tangent and bulk conductivity of zero. If any of the dielectric layers have a non-zero loss tangent or bulk conductivity, then complex mathematics are required for the computation of the moment matrix entries. The advantage of using all lossless dielectrics is that the computation of the moment matrix entries using real mathematics is significantly faster than the same computation using complex mathematics. For some problems the time required for the computation of the moment matrix entries is not significant compared to the entire solution time, while for other problems this step can take a significant portion of the time. The information presented in this section is intended to provide the insight needed to evaluate the impact of using lossy dielectric layers.
AWR Proprietary
EMSight
Adding the Conductors
After the dielectric layers have been defined, then the conductors that are to be modeled must be defined. In a typical two dielectric layer microstrip circuit the conductor is drawn on top of the lower substrate (layer 2). Conductors, like dielectrics, can be modeled as lossless (perfectly conducting) or lossy. If all the conductors in the structure are lossless (i.e., their material property is set to Perfect Electric Conductor) and all the dielectric layers are lossless, the moment matrix solution can be found using real mathematics which provides a very significant time savings for most problems (for very small problems the time savings is not as noticeable). The use of real mathematics can decrease the moment matrix solution time by a factor of 3 to 7 (depending on the solver options, as follows).
Defining Ports
Ports represent the terminals of the circuit. The ports and the associated reference planes define the inputs and outputs of the circuit. There is no practical limit on the number of ports that can be defined for an EMSight structure. If there is only one port on a given side, then that port can be de-embedded using either the fast de-embed algorithm or the standard de-embed. If there is more than one port on a side, then that side is de-embedded using the standard algorithm. For the special case where the reference planes are of zero length (the reference plane is at the enclosure boundary) the fast de-embed algorithm is always used, even when there is more than one port on a side. The Use fast deembed (1 port/side) option is only effective when there are two possible ways to de-embed the port. For all other cases EMSight automatically chooses the correct method.
Meshing the Geometry
The meshing process approximates the currents using rooftop basis functions as described previously. The solution method used by EMSight requires that the geometry conforms to a uniform rectangular grid. The uniform grid is required because the rooftops that are used to approximate the currents must coincide with the uniform grid. EMSight will automatically snap any shapes to the grid during meshing, which can often lead to unexpected results. For example, very narrow shapes that are less than one cell wide may be turned into zero width shapes by the mesher. For shapes that have edges that do not coincide with the uniform grid it is a good idea to view the mesh before solving to make sure that it is discretizing the shapes properly. EMSight uses a variable cell size meshing algorithm to approximate the currents as into a set of overlapping x and y directed rooftop functions. Each rooftop function is at least one cell wide and two cells long. The one cell by two cell basis function is the smallest planar basis and is the primitive building block for larger basis functions. The primitive basis function covers two primitive cells. Basis functions that are larger than one cell by two cells are constructed from a weighted sum of the primitive basis functions. The following example shows the x directed basis functions that would be used to mesh the rectangle shown in the lower part of the diagram. The dotted lines in the lower diagram represent the uniform grid coordinates, while the solid lines represent the variable sized mesh. As is shown, the variable size mesh will always conform to the uniform grid that is defined for the structure.
AWR Proprietary
EMSight The previous diagram shows the basis functions used to model the x directed current only. The y directed current would be represented by another set of basis functions that are perpendicular to the x directed functions. The effect of the size of the basis functions is described in the Creating the Moment Matrix section.
Creating the Moment Matrix
To determine the unknown amplitudes of the basis functions used to approximate the current density on the conductors, EMSight must solve a matrix equation. The matrix that is to be solved is called the moment matrix. The moment matrix is a square matrix with one row and one column for every basis function created during the meshing process. Each entry in the moment matrix represents the electromagnetic coupling between two basis functions. For example the moment matrix entry at row one and column two represents the coupling between the first and second basis functions. Typically the computation of the moment matrix entries (filling the matrix) is one of the more time-consuming tasks when using the method of moments. In EMSight, a specialized Fast Fourier Transform (FFT) algorithm is used to provide a fast and efficient method for computing the moment matrix entries. The FFT algorithm computes the moment matrix entries in two steps. The first step, the generation of the moment tables, is independent of the actual conductors that were discretized during the meshing process. The moment tables are dependent on the size of the enclosure, the number of grid divisions defined for the enclosure, the dielectric layer properties and heights, the enclosure top and bottom boundary conditions, and the frequency to be used for the analysis. The second step is the computation of the moment matrix entries using the moment tables. The moment matrix entries can be quickly computed from the moment tables after the moment tables have been generated. For example, the moment matrix entry that corresponds to the coupling between two primitive basis functions can be computed by summing four entries from the moment matrix tables. For non-primitive basis functions (i.e., basis functions that are larger than one cell by two cells) the moment matrix entries are computed by summing the coupling contributions from the primitive basis functions that are used to construct the larger basis functions. Basis functions that cover a very large number of primitive cells can require a very large number of summing operations to compute the moment matrix entry. This is most noticeable when a very fine grid is used relative to the conductor dimensions. If the "Fill Moment Matrix" step is consuming a large amount of time as indicated in EMSight's progress indicator, then this may be the reason why. It is in the generation of the moment tables that the FFT algorithm is used. Typically FFT-based electromagnetic solvers work most efficiently when the number of grid divisions is a power of 2. In EMSight a mixed-radix FFT is used that is efficient when the number of divisions is a power of 2 or a product of small prime numbers. For example, if 100 divisions are used then the algorithm will still be very fast because 100=2*2*5*5 where 2 and 5 are both small prime numbers. Since the moment tables are only dependent on the enclosure and substrate configurations, they can be saved and used for other problems that use the same enclosure and substrate configuration (and also the same analysis frequencies). EMSight uses an algorithm that automatically saves these tables in a cache for later use. For many problems (for example, the analysis of a microstrip discontinuity) the generation of the moment tables is the most time-consuming step in the solution process. For these types of problems, the reuse of previously saved moment tables can provide solution times that are several factors faster. In EMSight, the moment tables are transparently cached on your hard drive so the next time that you need to solve a circuit that uses the same size enclosure and the same dielectric stackup, the moment table information is read from the cached version resulting in a significant computational savings. The caching mechanism is completely transparent to the user (similar to the caching of web tabs by popular Internet browsers). A cache management algorithm automatically deletes cached tables that are used infrequently, and the maximum amount of disk space that can be used by the cache can be user specified.
Solving the Moment Matrix
Since the moment matrices can be very large, only one moment matrix is in memory at a time. The limiting factor for the size of the problem that EMSight can solve is generally the amount of physical memory available for storing the
AWR Proprietary
EMSight moment matrix. The EMSight solver becomes orders of magnitude slower if the moment matrix does not fit in physical memory and requires virtual memory for storage. The amount of memory required for the storage of the moment matrix is displayed in the Information dialog box (choose View > Information). Further, if an estimate of the memory requirements determines that there is not enough memory to solve the current matrix, the Information dialog box displays before the solution is attempted. The moment matrix is both symmetric and dense. Symmetric in the sense that elements are mirror images of each other across the diagonal of the matrix (Znm=Zmn). Dense in the sense that very few if any elements of the matrix are zero. EMSight can store the moment matrix as a full matrix (storing all entries) or as a symmetric matrix (where only half of the entries are stored). As the number of unknowns grows large, the required memory for dense matrix storage is proportional to the number of unknowns squared (memory=KmN2), where Km is a constant. The storage method only affects the constant Km, not the N2 dependency. Symmetric matrix storage will allow problem solving with approximately 1.4 times more unknowns as compared to the use of full storage. Further, the matrix is complex if the modeled system is not lossless. A complex number uses twice as much storage as a real number, so likewise the number of unknowns solved for can be increased by approximately 1.4 if the system is lossless. The storage method is determined by the Matrix Solver options. The Full Direct solver stores the full matrix, while the Symmetric Direct Solvers and all of the Iterative Solvers store only half of the matrix. Further, Iterative Solvers have other storage requirements which are dependent upon the solver chosen and the actual matrix entries. Details of these additional storage requirements is addressed in the section on iterative solvers.
Direct Matrix Solvers
The Direct Solvers offered in EMSight include the default, Full and Symmetric storage methods. The default solver is a direct solver which attempts to pick the optimum direct solver based upon the EMSight structure and the available RAM on your computer. In doing this, either the Full or Direct (out-of core) solvers is chosen. As implied by their names, the Full solver stores the entire matrix, which the Symmetric solver only stores the half of the matrix. The difference between the two methods is seen in the actual solution time required. As often occurs in nature, we trade one benefit for degraded performance in another area, this is the case with the direct solvers. The algorithm used to solve the matrix using full storage is significantly faster than the one used to solve it using symmetric storage. Typically, for complex matrix, you will see an increase of four-fold. A study of dense direct matrix solver algorithms shows that the required number of solution steps and thus the solution time required is proportional to the number of unknowns cubed (time=KtN3) where Kt, is constant. By switching algorithms, we only influence Kt not the N3 behavior. Thus, you will find that as the problem size increases, the time spent solving the matrix equation will dominate in a method of moments EM simulation.
Direct (Out-of-Core) Matrix Solver
Like the other direct solvers, the Direct (Out-of-Core) Matrix Solver inverts the moment matrix by a factorization algorithm. The difference in this algorithm is that this solver is able to store the matrix on the disk drive and factor the matrix in blocks as they are swapped to and from memory. This effectively removed the limitations of the maximum problem size due to the amount of RAM on your computer. This swapping of portions of the matrix during the computation does not rely on the standards Windows swapping mechanism, rather a unique algorithm in the solver looks ahead in the computational sequence and loads blocks needed for future operations. Thus by the time that the processing of a block already loaded is completed, the blocks required for the next operation have already been loaded into memory. Like the Direct Full solver, the Direct (Out-of-Core) Solver solution time is dependent upon the number of unknowns cubed. The constant multiplier (K) is nearly identical to the Direct Full solver. However, the Out-Of-Core solver does have some time penalties to start it up. Thus one should select the Direct Full solver for small problems, and use the out of Out-of-Core solver for larger problems. The default matrix solver attempts to do this automatically. The maximum problem size of the Out-Of-Core matrix solver is limited to 50,000 unknowns at this time, and the simulation time per frequency is on the order of days. Practical problem size limitations is determined by your computer.
AWR Proprietary
EMSight
Iterative Matrix Solvers
As implied by the name, iterative matrix solvers attempt to find the solution vector to the matrix equation x=rhs via iterative methods. While iterative matrix solvers can decrease simulation times by orders of magnitude, they are not nearly as user friendly as the direct solvers. In fact, as long as the computer has enough memory, the direct solvers require no user interaction at all. However, it is very tempting to go after that dramatically decreased solution time possible using iterative solvers. It is highly recommended that the user master the other aspects of EMSight with the direct solvers before attempting use of iterative solvers. The following is a list of problems with iterative matrix solution methods: Iterative methods are not guaranteed to converge to the correct answer. Solution times for iterative solvers increase linearly with the number of right-hand sides, or in EM terms, the number of ports. Iterative methods converge to a given tolerance and then stop; this is typically not the machine tolerance. There is no accurate way to tell in advance the memory usage, solution time, or if the process will converge until you attempt it. However estimates and rules of thumb can be applied. Iterative solvers are only beneficial for a very large number of unknowns. Given these problems, solution times can be on the order of minutes instead of hours for some problems. The purpose of an iterative solver is to find the values of the solution vector x that makes true the following matrix equation given and rhs. x=rhs
(8.1)
The solver does this by first making an estimate of the solution vector x. An iterative method is then used to determine an approximation for the solution based on the previous solution estimate and information gathered from the matrix. This process continues until some convergence criteria is met, usually involving the error in the right hand side. These iterative methods are very similar to optimization techniques for N variables, and the same types of problems apply. Given this optimization analogy, you should not be surprised to learn that these iterative methods do not perform well except for extremely benign cases. Common problems include divergence and extremely slow convergence, termed stagnation. To overcome this problem, a method called preconditioning is applied to the matrix equation. This involves multiplying the right and left sides of the matrix equation by a common matrix
P
called the preconditioner.
A (P ) x = (P rhs)
Now this multiplication by
P
on both sides does not change the solution vector x. If the solution vector solves one equation it will also solve the other. However, this multiplication can change the convergence behavior when using an iterative method. Consider the case when the preconditioner is the inverse of the matrix A (
= 1 P A
AWR Proprietary
EMSight ). If this is the case, then the previous equation simplifies to give us the exact solution for x.
P
exploits one of these techniques in order achieve an approximate inverse of in KtN2 time. Thus modern iterative solution techniques require the following basic operations. The following is a general overview of how an iterative solver works: An initial guess at the solution vector x is selected. An approximation of is formed. The inverse of the approximate matrix is found using some method which is quicker than determining the inverse of . This matrix is termed the preconditioner
P
. Both the matrix and the right hand side are pre-multiplied by the preconditioner
P
An Iterative method is used to determine an approximation for the solution based on the previous solution estimate and information gathered from the matrix. Typically, this information is gathered via a vector matrix multiplication.
A (P ) x
. The iterative method is continued until some convergence criteria is met. For example
A (P ) x (P rhs) tolerance
The selection of the preconditioner will have a huge impact on the convergence characteristics using the iterative method. Herein lies the trade-off. If we spend a large amount of time forming and inverting the preconditioner then the iterative portion of the solution algorithm is performed very quickly. On the other hand, if we spend little time on the preconditioner the convergence is slow. Somewhere in between, a minimum in computation time exists, and this location is dependent
AWR Proprietary
EMSight upon the number of right hand sides (# of ports in our case), and the characteristics of the matrix itself, which is dependent upon the structure being modeled. In all iterative solver selections within EMSight, the iterative solver itself is the same, and is based upon a Preconditioned Krylov-Subspace Method. The difference between the solvers lies in how closely the preconditioner models the inverse of the actual matrix A. For a given structure, the solution times will vary between the iterative solvers. In fact, if the matrix is not preconditioned enough, it may not converge at all. Further, you should realize that the iterative solvers are not going to result in faster solve times in all instances. Sometimes it is better to use a direct solver for a given problem. While there are no hard rules for determining which iterative solver to use, the following observations should allow some insight into the selection. These observations are specialized to the use of iterative solvers as applied to method of moments electromagnetic problems (EMSight). Experience gained at selecting the correct solver can drastically affect the solution time. The direct solvers will always be faster for a small number of unknowns. However, for problems below a certain number, the iterative solvers will use the direct solvers even if an iterative solver is chosen. As the condition number of the original matrix increases (approaches a singular matrix) more time must be spent in forming the preconditioner. This in tern implies that the number of unknowns at which the iterative solver become faster than a direct solver is increased. Determine the optimum solver for an EM structure based upon a single frequency at mid-band. If you attempt to solve a matrix equation with an iterative method without using enough preconditioning, the iterative solver may diverge, stagnate or show extremely slow convergence. If this is encountered alter the solver to one with more preconditioning. The solution time for the iterative solvers is proportional to the number of solutions required. This is because, unlike the direct solvers which effectively create the inverse of the MOM matrix, the iterative solvers determine the current for each required excitation (or in mathematical terms, for each right hand side "rhs"). In the case of EM-Sight the number of rhs's is equal to the number of ports. Therefore, the time spent in the iterative portion of the solver for an EM problem that has 4 ports with 3000 unknowns will take 4 times longer than a 1 port with 3000 unknowns. The preconditioner is only formed once, regardless of the number of ports (right hand sides). Therefore, for a simulation with many ports, a better preconditioner is warranted. An iterative solver is by its name and nature an iterative process. And like the HB simulator it can have problems with slow or non - convergence. The convergence is determined by several parameters including the preconditioner, the nature of the matrix to be solved, and the initial guess at the solution. As expected, the convergence behavior degrades as the condition number of the matrix increases (a larger condition number indicates that the matrix is closer to singular). In the EM world, a well conditioned matrix has a strong diagonal component and the magnitude of the elements of the matrix decay as we move away from the diagonal. Each element in the matrix represents the coupling between each unknown basis function. The diagonal term is the self impedance or the coupling to itself which is almost always larger than the coupling to any other elements. The magnitude of each element depends on several things including the distance between the two basis functions in terms of wavelengths and the orientation of the basis function (x, y, or z directed currents). If the magnitude of the matrix elements does not decay quickly as we move from the diagonal, the matrix can be assumed to be ill conditioned and the iterative solvers will not perform well unless they are highly preconditioned. Based upon these observations, we can draw several conclusions. Structures which are small compared to wavelength will have larger coupling between basis functions and will decay less as we move away from the diagonal, thus is less well conditioned. We can conclude convergence behavior is slowed because of this and would require increased preconditioning. If the structure is a multi-layer structure, with lots of basis functions near each other in the z-direction, the coupling is relatively high between these elements and the magnitude of the coupling will decay less as we move away from
AWR Proprietary
EMSight the diagonal in the matrix. We can conclude convergence behavior is slowed because of this and would require increased preconditioning. If in order to accurately represent the structure, you must over-grid the structure (grid size is much smaller than the macro dimension of the structure being modeled) then a large portion of the basis functions is spaced closely together and is small in terms of wavelength. In this case, the decay of the magnitude of the off diagonal MOM matrix elements is slow because the proximity of the majority of the elements in terms of wavelength is small. We can conclude convergence behavior is slowed because of this and would require increased preconditioning. As the preconditioning increases, the memory requirements increase as more memory in needed to invert the approximation of A. The amount of preconditioning applied by the iterative solvers in EMSight is dependent upon the both the solver selection and the nature of the matrix to be solved. As the nature of the matrix is not know prior to attempting the solution, accurate estimates of the memory required to store the preconditioner and the time required to create it are not available. Estimates are made for the Information dialog box. Accurate timings of the solution time are written to the em_time.txt file automatically by EMSight. Creation of the Preconditioner occurs during the Factor Matrix Operation in the timing file The Iterative portion of the solution algorithm occurs during the Solve Operation for each port in the timing file. The convergence tolerance which determines when the iterative solver stops can be set on the EMSight tab of the EM Options dialog box. The iterative solvers available in EMSight vary only in the amount of preconditioning which is applied to the original impedance matrix. The following is a list of the available iterative solvers: Iterative Large (Dim. > 0.1 Lambda) - Low Preconditioning Iterative Medium (Dim > 0.01 Lambda) - Medium Preconditioning Iterative Small (Dim < 0.01 Lambda) - High Preconditioning Iterative Custom - Custom Preconditioning The size labels arise from the rule of thumb that the decay of off diagonal coupling is slower for structures which are smaller in terms of wavelength. However, as mentioned previously this is not the only reason a MOM matrix may be ill conditioned. Actually the Iterative Large solver has the parameters set to quickly form the preconditioner, while the Iterative Small solver has the parameters set such that a poorly conditioned matrix will converge. De-embedding the Solution The purpose of the de-embedding algorithm is to find the S-parameters of a structure using the reference planes defined for the structure. The length of line from the enclosure edge to the reference plane is called the "feedline". When de-embedding is turned off, the reference planes will coincide with the enclosure boundaries where the ports are located and the solution will contain the effects of the port discontinuities (excess shunt capacitance at the ports). When de-embedding is enabled, an automatic de-embedding algorithm is use to remove the effects of the port discontinuities and feedlines. The de-embedding algorithm requires the solution of two additional problems that are referred to as "standards". A pair of standards is required for each side of the enclosure that has ports attached. For many problems the standards used to de-embed one side is electrically equivalent to the standards used to de-embed another side. The solution for the standards for one side will automatically be re-used to de-embed other sides when EMSight detects that they are electrically equivalent.
AWR Proprietary
EMSight A standard is a uniform length of line (or coupled lines when there is more than one port on a side) that has the same cross section as the lines attached to the ports on the side that is being de-embedded. To de-embed one side, two standards are used where one standard is exactly twice the length of the other. The length of the line used for the standard will depend on the type of de-embedding algorithm that is used as described in the following.
The Default De-embedding Algorithm
A simple example is used to illustrate the default de-embedding algorithm EMSight uses.
To de-embed port 1 of the simple circuit shown here to the right, two de-embedding standards are automatically created and solved for. The shorter standard is the same length as the feedline attached to port 1, and the other standard is twice that length. The following diagram shows what the two de-embed standards would look like. The same moment tables can be used for the solution of both of the standards below, although the required moment tables is different than those used for the main structure (unless the reference plane is exactly half the length of the enclosure).
Different moment tables are needed because the moment tables are dependent on the enclosure dimensions. As a consequence of the longer standard being exactly twice the length of the shorter standard, the moment table for the longer standard contains all the required information needed to solve both standards. An assumption used in the de-embedding algorithm is that the ports on each end of the de-embedding standard are far enough apart that they do not have any significant electrical interaction. For microstrip type circuits, a general rule of thumb is that the ports should be separated by a distance of at least two substrate heights for negligible electrical interaction between the ports. For the default de-embedding algorithm, this means that the reference planes should be at least two substrate heights from the edge of the enclosure. An exception to this is when the reference planes are zero length. For zero length reference planes, the standards are equal to the length of the enclosure, so the rule for zero length reference planes is that the enclosure should be at least two substrate heights long (along the direction of the line attached to the port). Another problem that can affect the accuracy of the de-embedding is when the electrical length of the de-embed standard (of the long standard) is very close to a multiple of a half wavelength (EMSight will issue warnings if it detects this problem). For more information on the recommendations and restrictions involved with de-embedding see Section 8.4.4, De-embedding.
The Fast De-embedding Algorithm
The principle difference between the default de-embed algorithm and the fast de-embed algorithm is that the fast de-embed algorithm always uses de-embedding standards where the longer standard is the same length as the enclosure (along the direction of the line attached to the port). The reason that the fast de-embed algorithm is faster is that the solution process for the de-embed standards can use the same moment tables as are used in the solution of the main structure. The
AWR Proprietary
EMSight computation of the moment tables for the de-embed standards is often more time-consuming than the rest of the solution process for the standards since the standards are relatively simple structures. A restriction of the fast de-embed algorithm is that in the current release of EMSight, the fast de-embed algorithm can only be used when there is no more than one port on the side of the enclosure that is being de-embedded. When the Use Fast Deembed option is enabled and there is more than one port on a side, then EMSight will automatically use the default de-embedding algorithm. The Use Fast Deembed option is only used by EMSight when there are two possible ways to de-embed the solution. Another drawback of the fast de-embed algorithm is related to the "half wavelength" problem that was mentioned in the default de-embedding algorithm section previously. Since the fast de-embed algorithm typically uses longer standards, it is much more likely that the electrical length of the standard is close to a multiple of half of a wavelength. Further, the fast de-embed algorithm is more sensitive to the "half wavelength" problem. Minimizing Solution Time In general, the solution time will depend on three steps in the solution process. The first step is the creation of the moment tables, the second step is the actual moment matrix creation, and the third step is the moment matrix solve.
Moment Table Creation
For small problems the moment tables that are used by EMSight will consume the majority of the solution time, while for larger problems the solution time will usually be dominated by the matrix solve time. To speed the solution process (especially for smaller problems), EMSight uses a caching algorithm that allows transparent re-use of the moment tables from one problem to the next. When a moment table for the problem being solved is not found in the cache, EMSight automatically creates one. When EMSight is able to use a moment table from the cache, virtually no time is needed to load and initialize the table. The amount of time spent creating the moment tables will depend on the following factors:
Number of Enclosure Divisions
The number of divisions (i.e., the number of grid points in the x or y direction) will have an effect on the time required to compute the moment tables. The moment table creation is performed in two steps. The first step computes the spectral domain Green's functions needed to create the tables, and the second step computes the tables from the Green's functions using an FFT algorithm. The computation of the Green's functions usually is the more time consuming step in this process and the amount of time required to perform this step is proportional to the area of the enclosure in cell units. For example, an enclosure that uses a grid with eight divisions in the x direction and eight divisions in the y direction will take four times as long to compute the Green's functions as an enclosure with four divisions in the x direction and four in the y direction. The FFT algorithm used in the second step is most efficient when the number of divisions is a power of two, and it is also relatively fast when the number of divisions is the product of small prime numbers (i.e., 2*2*5*5*3 = 300). For enclosures with a large number of divisions, or for when the number of divisions is not a multiple of small prime numbers, the FFT algorithm can require a significant amount of time. In particular, if you choose a large prime number for the number of divisions then the FFT algorithm is relatively slow.
Number of Dielectric Layers
The number of dielectric layers has an effect on the time required to compute the spectral domain Green's functions in the first step in the moment tables creation. The more layers there are, the longer it takes to compute the Green's functions. The number of layers does not affect the time required for the FFT.
AWR Proprietary
EMSight
Number of Metal Layers and Layers with Vias
For a structure that has a single conductor layer, three moment tables are created. The tables are used to compute the coupling from x to x, y to y, and x to y. If there are vias, additional tables are created for the x to z, y to z, and z to z coupling. If there are multiple layers, tables are created to compute all of the combinations of all x, y and z coupling for all layers. The moment tables are only computed for layers where there are conductors or vias. The more layers that have conductors and vias, the more tables there are to compute. Since the tables are computed for all combinations of coupling, the time required to compute all the moment tables will increase with the square of the number of conductor layers.
Lossy Dielectric
If all the layers in the enclosure are lossless, then real math can be used to compute the moment tables (instead of complex math) and a significant time savings is realized. If just one layer has loss (a non-zero loss tangent or bulk conductivity), then complex math is required to compute the moment tables. If one of the layers has loss then there is no savings in making the other layers lossless.
Lossy Boundaries
If the boundaries for the top and bottom cover of the enclosure are set to anything but Perfect Electric Conductor (PEC), then the boundaries are lossy and will require complex math in the computation of the moment tables. If the boundaries are lossy, there is no advantage to making all the dielectric layers lossless.
Filling the Moment Matrix
The creation of the moment matrix involves the filling in of all the entries using data computed from the moment tables. The moment matrix entry that corresponds to the coupling between two primitive basis functions can be computed by summing four entries from the moment matrix tables. For non-primitive basis functions (i.e., basis functions that are larger than one cell by two cells) the moment matrix entries are computed by summing the coupling contributions from the primitive basis functions that are used to construct the larger basis functions. Basis functions that cover a very large number of primitive cells can require a very large number of summing operations to compute the moment matrix entry. This is most noticeable when a very fine grid is used relative to the conductor dimensions. If the "Fill Moment Matrix" step is consuming a large amount of time as indicated in EMSight's progress indicator, then this may be the reason why.
Optimizing Cache Usage
The moment table cache greatly speeds many problems, so if possible, it is a good idea to use the same analysis frequencies and enclosure configurations when several different problems are to be solved. If there is a particular enclosure configuration that would be suitable for many different problems that are to be solved, then it is a good idea to save the enclosure as an empty EM structure (i.e., no conductors) that can be read in and used as a starting point for a new analysis. All the options, frequency points, substrate layers, and boundaries is saved in the empty document. To save an EM structure as a separate file, right-click the EM structure in the Project Browser and choose Export EM Structure. The structure can then be read back in using the Import EM Structure option.
Minimizing Solution Time
For the EMSight, the moment table creation and the moment matrix solve will consume the majority of the time in the solution process. The actual creation of the moment matrix from the moment tables is usually relatively fast, although for some problems this step can be relatively time consuming. If the moment tables are loaded from the cache, then the moment table generation step does not contribute significantly to the overall solution time, and the moment matrix solve time becomes the only significant factor. If the problem is very small (i.e., the mesher does not create very many unknown basis functions), then other factors will consume a significant part of the solution time, although the overall solution time is very short (less than a second/frequency for small problems where the moment tables are loaded from the cache). Since the moment table generation time grows with the square of the number of unknowns, and the matrix solve time grows
AWR Proprietary
EMSight with the cube, the matrix solve time will always dominate the solution time for very large problems, while the moment table generation will take longer than the matrix solve for very small problems. Since the solution time scales linearly with the number of frequency points, when solving the problem with the EMSight it is generally a good idea to use no more frequency points than necessary. The post processing in EMSight can interpolate the frequency response points between the discrete points using function interpolation. Interpolation of the solution results is performed when the evaluated frequency set is not equal to the solutions set performed by the solver. For this to occur, you should change document level frequency set to be a subset of the project level frequencies. See the section called Setting Frequencies for details. Further, when setting up measurements to be performed on the EM structure, you should change the frequency range to use the project frequency set, see the section called Add/Modify Measurement Dialog Box for details. Modeling Vias In EMSight z-directed currents are represented by columns of z-directed current with no x or y components as shown in the following figure.
The vias are always assumed to be perfect electric conductors (no loss is modeled in the via), so the true current distribution on the square via should be infinitely thin currents on the face of the via. Empirical results have shown that modeling the via as a continuous uniform cross section of current generally gives a good approximation to the via when the via is electrically small.
AWR Proprietary
EMSight Each via extends from the top to the bottom of the dielectric layer. The current in the via is modeled as a continuous current in the z direction. Vias are usually used to connect conductors on different layers, and for connecting conductors to the ground plane. Some typical uses for vias are shown in the following diagram. The assumption that the current is continuous in the z direction is valid when the height of the via is small relative to a wavelength. If the layer is not short relative to a wavelength, then a continuous current will not accurately model the true sinusoidal nature of the current. If the via that is to be modeled is not short relative to a wavelength, the via can be modeled more accurately by being broken into several shorter vias. In the following diagram, a long via is split into two shorter vias. This requires that the dielectric layers be split also. To split a dielectric layer, create two layers with the same properties that have the combined height of the original layer. If the via is more than about a tenth of a wavelength long, then it should be split into multiple vias as follows.
Another significant assumption used with vias is that there is only z directed current in the via. All x and y currents are assumed to be zero in the via. For the typical use of a via (interconnecting conductors on different layers and connecting conductors to ground), this assumption does not introduce any significant error. If the via is used to model a three-dimensional structure where the true solution would have significant x or y currents on the via faces, then the results are not as expected. For example, using a long row of vias to represent the side walls of a shielded conductor is not a valid use of the via because the true solution would have x and y currents on the side walls. The following diagram illustrates an invalid use of vias.
When a via is used that covers a large number of cells, EMSight automatically models the via by meshing its four sides and leaving the center empty, since the true current will all be on the outer cells anyway. An example is shown here where the via on the left is preferred to the via on the right. The via on the left is constructed of four separate vias on the perimeter of the square area. Both give almost identical answers, but the via on the left simulates slightly faster and uses
AWR Proprietary
EMSight less memory because EMSight does not have to calculate it over as much area as the via on the right, which has more area.
For small vias the difference is negligible, but for larger vias the difference may be noticeable. EMSight models large vias like the one on the left by default. Avoiding Resonances There are two types of resonances that are possible. The first is a resonance in the actual circuit. For example, a uniform two port transmission line that is a half wavelength long is resonant because the solution process will short the port at one end, and apply a voltage to the port at the other end. Because the far end port is shorted, the half wavelength line will transform the short on the far end to a short at the port on the end where the voltage is applied. In the case where all conductors are perfect electric conductors, this should lead to a solution with infinite current (this is a result of the half wavelength line being resonant at the simulation frequency). This type of resonance is often a problem that is encountered when the de-embedding standards are being computed and this is the reason that it is difficult to accurately de-embed reference planes that are a half wavelength long. The other type of resonance is a cavity resonance. Since EMSight analyzes the problem inside of a conducting rectangular enclosure, it is possible to choose an analysis frequency that is close to one of the resonant cavity modes of the enclosure. For electrically small structures, this is usually not a problem because the resonant frequencies are usually much higher than the analysis frequency. For electrically large structures, it is more likely that the analysis frequency is at a cavity resonance. If lossy dielectric layers are used, or if a lossy boundary is used for the top or bottom of the enclosure, then a box resonance may not be much of a problem. The box resonance problem is most severe when there is no loss in any of the layers or boundaries. In the completely lossless case, an analysis at a cavity resonance frequency should give a solution with infinite values. In practice, the results are not infinite, but they will probably not be correct either. One method for reducing resonance problems is to use a lossy dielectric to help dampen the resonance or set the top or bottom of the enclosure to a lossy boundary. Also, changing the size of the enclosure slightly will shift the resonance frequency, so a resonance can often be avoided by changing the thickness of one of the layers (e.g., the top air layer in a microstrip problem). Potential resonance problems can also be detected by measurements applied to an EMSight structure. With EMSight the mode resonances can be viewed for the enclosure over a range of frequencies somewhat wider than the analysis frequency range. Modeling Loss Loss can easily be accounted for with EMSight, although the use of loss may have a significant impact on the analysis time. When a lossy dielectric or lossy boundary is used, the moment tables must be computed using complex math, which is significantly slower than real math. If the conductors have loss, or if there is a lossy dielectric or lossy boundary, then
AWR Proprietary
EMSight the moment matrix is complex and the time required to fill and solve the matrix is significantly slower (see the section called Minimizing Solution Time).
Dielectric Loss
Dielectric loss can be modeled by using a non-zero value for the loss tangent or for the bulk conductivity. The material properties for the dielectric layers are set in the Substrate Information dialog box on the Dielectric Layers tab. The loss tangent, which is a dimensionless quantity, is typically used to model the loss in the dielectric. The value of loss tangent is frequency dependent, although it is common to use the same value over a wide range of frequencies. The bulk conductivity can be used to model the loss associated with conducting substrates. Sometimes in the manufacturing of microwave circuits, absorbing material is placed on the top cover of the circuit's enclosure. This can be modeled in EMSight by adding a dielectric layer to the top of the dielectric stackup that has the same thickness and material properties as the absorbing material.
Lossy Boundaries
There are three different types of lossy boundaries that can be specified for the top and bottom of the enclosure:
Specify Material: Using this option allows the material to be specified in exactly the same way that the other conductor
materials are specified. This type of boundary would be used most often to model the effect of an actual material boundary, such as a top cover that is not a perfect electric conductor. The material properties can also be set to simulate the effect of an open boundary or a lossy absorber.
Approximate Open (377 Ohm):
Using this option is equivalent to assigning the boundary to a material that has a DC resistivity of 377 Ohms, which is the impedance of free-space. When simulating an open boundary, the top cover should be far enough away from the circuit that any near-fields from the circuit do not interact significantly with the boundary. The use of a 377 ohm boundary is an approximation for free space that should provide sufficient accuracy for most problems. This option would be used when analyzing an antenna type structure in EMSight.
Infinite Waveguide: The infinite waveguide option will model the top (or bottom) layer as an infinitely long waveguide
using the same dielectric as the top (or bottom) layer. An infinite waveguide boundary could be used to model a microstrip to rectangular waveguide transition, or to terminate the top of an enclosure for an antenna. Unlike the approximate open boundary condition, the infinite waveguide boundary condition does not absorb energy from the near-fields of the simulated structure.
Conductor Loss
Conductor loss is used to model the loss associated with conducting traces and thin film resistors. The conductor loss is modeled using the following two parameters:
Low Frequency Resistance:
The low frequency resistance specifies the DC resistance of the planar conductor (in ohms/square). The DC resistance is the resistance of the conductor assuming a uniform current distribution in the cross-section of the conductor.
High Frequency Loss Coefficient:
The high frequency loss coefficient specifies the loss associated with the conductor at frequencies where the thickness of the conductor is significantly thicker than the skin depth. Since the loss associated with the skin depth effects is proportional to the square root of frequency, the skin depth loss coefficient is multiplied by the square root of frequency to provide an ohms/square value that is used for loss computations.
Thick Conductors EMSight models the conductors as infinitely thin x and y directed currents. For many structures, such as printed microstrip structures, this assumption does not contribute a significant amount of error to the solution. For structures that have gaps between conductors that are comparable to the conductor thickness, the assumption that the conductors are infinitely
AWR Proprietary
EMSight thin becomes a less valid approximation. This is often the case in MMIC structures where the conductors are relatively thick. A technique used to model thicker conductors is to create two conductors that are stacked on top of each other on different layers. Since the currents on a thick conductor is on the surface of the conductor, the dual conductor approximation gives a similar result. The following figure shows an example of using this technique to model a pair of coupled lines. It is important that the potential on the two conductors used to model a thick conductor are equal, so vias should be used to "short" the two conductors together. It is not necessary (nor desirable) to short the conductors everywhere, rather you should short the conductors at the ends or corners of the conductors, and at regular intervals no more than about an 8th of a wavelength apart. The reason you should not use vias for the entire area is that the vias are meshed (using a variable sized mesh), and the use of too many vias increases the size of the problem unnecessarily. For the following problem, it may seem like a good idea to place vias along the entire edge of the line where the coupling is occurring, but this does not provide an increase in accuracy because the vias can only carry z directed current, while the actual current flowing in such a situation would be in the direction parallel to the lines (x or y).
When de-embedding a conductor using the technique discussed previously, special consideration is needed. The de-embedding algorithm always assumes that the conductors are infinitely thin, and there is currently no method for having the de-embedding algorithm compute de-embedding standards that use two conductor layers to model thickness. For this reason, it is recommended that the length of line leading up to the reference plane be modeled using a single layer as shown in the previous figure. Also, it is important to NOT extend the extra conductor layer all the way to the edge where the port is located. If you extend the conductor all the way to the edge then that conductor is shorted to the edge. Also, for the same reason, vias should not be placed at the port edge. The following port shown on the left is shorted to the edge, while the one on the right is OK.
Coplanar Waveguide Coplanar waveguide can be modeled in EMSight as shown in the following diagram. Only the even mode of the coplanar waveguide can be excited at the ports. The odd mode of the coplanar waveguide is short circuited at the port. The automatic de-embedding in EMSight can de-embed the even mode only. Generally you should model ground planes using a strip of conducting material as shown in the following top diagram instead of extending the conductor all the way to the edge of the enclosure as shown in the lower diagram. The reason is that the large amount of conductor area in the lower diagram can lead to excessive memory usage and solve time.
AWR Proprietary
EMSight
AWR Proprietary
EMSight The frequency range [fmin, fmax]. This is either the range of frequencies specified for the EM structure, or AFS band if selected. The number of grid points (# Grid Pts) at which to perform quality evaluation and passivity assessment / enforcement. The default is 200. The convergence tolerance (Error Tol (dB) ) in terms of approximation error. The default is -40 dB (see below). The method to determine convergence (Error Type) that can be either Absolute or Relative: (a) Absolute error in dB, max {20 lg (||Sijk-1-Sijk||)}, where k is the iteration index, and indices i, j specify the element of the S matrix. The maximum is found over all the points of the frequency grid (from fmin to fmax, with the number of points specified by "# Grid Pts". (b) Relative error, in dB, max{20 lg (||Sijk-1-Sijk||)-20lg[0.5*(||Sijk-1||+||Sijk||)]} Output: The rational approximation of the S matrix for the frequency range [fmin, fmax] demonstrated to be within Error Tol from the EMSight results. This approximation can be evaluated very fast at as many frequencies as desired within the range [fmin, fmax] thus helping the user to pinpoint the exact location of the resonances. Algorithm Outline 1. If the estimated number of requested frequency points is less or equal to 6, perform EM simulations at the specified frequencies. There would be no benefit in using AFS. Otherwise go to step 2. Calculate S(f) at f=fmin, f=1/2(fmin+fmax), and fmax. 3. Construct rational interpolation of the order 1. 4. While the interpolation error is more than -10 dB, add an additional point between available each two available frequency points and construct a new interpolation/approximation. When the interpolation error is less than -10 dB, go to step 5. 5. Add two more frequency points where there is the greatest difference between rational approximations obtained at iteration k and iteration k-1. 6. Construct a new interpolation/approximation using the EM simulations at the two additional frequency points added in step 5. The order of approximation/interpolation is incremented by 1 compared to the previous iteration. 7. On the comparison grid, evaluate passivity of the last interpolation/approximation. Find the frequency of the greatest passivity violation if any. Perform an EM calculation at that frequency, and go to step 6. 8. Compare interpolation/approximation obtained at step k to that obtained at step (k-1) using either absolute or relative error criterion. 9. If the criterion is satisfied, terminate. Otherwise, go to step 5. Warning Messages If the S matrix calculated by EMSight at a particular frequency is non-passive, a warning message is issued to this effect. You should check the setup of the EM structure, such as de-embedding, grid density, and the presence of other errors. Note the warning message by EMSight "Port Eeff and Gamma computation warning-- check results at ;x GHz". This warning usually indicates a serious problem with the EM structure setup, and the EM results for this structure obtained with or without AFS are going to be inaccurate of incorrect. AFS is likely to converge slowly, or fail convergence.
Recommendations for Efficient Use
You should use Error Type=Absolute, and Error Tol (dB)>= -40 for the fastest convergence. The accuracy of the results is entirely satisfactory in most cases. AFS generally requires more EM simulations for Error Type=Relative.
AWR Proprietary
EMSight You can add as many frequencies as desired between fmin and fmax to resolve the resonances, etc. This does not increase the CPU time by any significant amount. There is no benefit in specifying # Grid Pts <200. If using the AFS band, select it wisely as changing Start and Stop parameters will cause AFS to start over. Note that the Max # Sim Pts only applies to AFS itself, and not to the frequency points outside [Start, Stop]. The lowest reasonable frequency for AFS is f0=1e6 Hz (1 MHz). If the specified frequency f<f0 EMSight actually performs simulation not at frequency f but at 1/2*(f+f0). Even if each EM simulation takes a long time, it is usually undesirable to specify Max # Sim Pts < 10.
AWR Proprietary
EMSight
Frequency
The first step in determining a proper cell size is to determine the wavelength of the transmission media. If the structure is of a standard transmission media like Coplanar Waveguide, Microstrip, or Stripline, the Microwave Office/Analog Office Txline program can be used to determine the propagation wavelength at a specific frequency. An approximate guideline for definition of cell size is 1/100th of the propagation wavelength for medium complexity circuits. For example, a microstrip tee with a width of 20 mils on ports 2&3 with a width of 72 mils on port 1. It is best to find a common denominator for both widths so that the cells cover the entire width of each transmission line. At 10 Ghz the propagation wavelength is about 720 mils. A common denominator for the two widths is 4 mils, which is equal to about 1/200th of the propagation wavelength. On port 1 an 8 mil cell width is used (72/8=9). Since port 1 width is in the x direction and ports 2&3 widths are in the y direction, the final cell size is 8mils in x and 4 mils in y. This example runs in 3 minutes with a frequency range from 1 to 20 Ghz in 1 Ghz steps. It was compared to the following various cell definitions which vary from very coarse to fine: Very coarse 4 mils in y, 8 mils in x. (memory required = .414MB, simulation time = 42secs) Coarse 4 mils in both x and y. (memory required = .868MB, simulation time = 1min 45secs) Medium 2 mils in x and y. (memory required = 3.237 MB, simulation time = 4min 20secs) Fine 1mil in x and y. (memory required = 16.54 MB, simulation time = 27min) The data shows that the divergence of the different cell definition solutions is small, out to 20 Ghz for the magnitude of S11. The overall error is plotted in the following figures. At 20 Ghz, the error between the coarsest grid and the fine grid is only about 1.5%. As evident in the data, using cell sizes of 1/100th, the propagation wavelength is very conservative for cell size definition. Figure 8.19. EMSight Simulation Data (mesh density comparison).
AWR Proprietary
EMSight Figure 8.20. Error in Simulation Data (comparison of fine mesh vs. medium mesh, coarse mesh, and very coarse mesh individually).
Dimension
The dimensions of lines and spaces in a structure are very critical in the cell size definition. An understanding of the effect of dimensional tolerances on impedance and coupling effects of a structure is required to make wise decisions on cell size. Again the Txline program can aid in determining some of the important information needed to make those decisions. Many times transmission line dimensions are not of a cell size that are easily divisible by an integer number. For instance the width of a 50 ohm line on 10 mil alumina at 10Ghz is 9.8 mils. 9.8 mils is not divisible by an integer number. A 10 mil line on the other hand has an impedance of 49.5 ohms and it is easily divisible by 2 or 5 mils. The difference between a 49.5 ohm line and a 50 ohm line introduces insignificant errors in the analysis, but a 10 mil line that can be divided by an integral number significantly reduces the EM solution time. For coupling effects, it may be desirable to do quick studies on the effect of line widths and spacing on the linear simulator. By comparing the results of coupled lines of various space and widths using a simple faster technique, insight into a proper cell size can be deduced. Dimensional tolerances of the actual structure to be built is also very important for cell size definition. A knowledge of the limitations and tolerances of processes used to fabricate a circuit can be very helpful in determining what dimensions can be changed in an EM analysis to define an integral cell size. For example, if a circuit is built using a process where the etching tolerances of the material for a microstrip line are plus or minus one mil, it is not necessary to define any cell size that include 10ths of a mil resolution. Knowledge of this type tolerance information also allows adjustment of the cell size to speed up the simulation. Cell size definition is driven by the most critical part of a circuit. A knowledge of the critical areas of a circuit can be gained by following this rule of thumb. A rule of thumb is if lines or discontinuities are separate by more than two substrate widths (see the discussion in the PWB example) the coupling between them is insignificant and the lines or discontinuities can be separated and simulated individually. Once the critical areas are determined the cell size should be defined by the dimensions of the lines or discontinuity in question. All the guidelines discussed previously should apply to this critical area.
Structure
Structure complexity along with frequency drives the cell size definition. To demonstrate this concept look at the following figures. Figure 8.21, High Complexity Structure (cell size 2mils in x 2mils in y and frequency = 20Ghz) shows a close-up of the fingers of a lange coupler. The lange fingers determine the performance of the circuit and therefore the dimension of the finger widths determine the cell size. In this case the finger widths are 2 mils so the cell size was defined as 2 x 2 mils. The lange coupler can be considered a high complexity circuit because the finger widths and spaces are very critical to the performance of the coupler. The cell size used is the coarsest cell definition. For very complex circuits
AWR Proprietary
EMSight it is desirable to coarsely mesh the initial simulation to determine if the circuit is working properly. After the initial simulation, refining the mesh is recommended to see how the simulation changes. Figure 8.21. High Complexity Structure (cell size 2mils in x 2mils in y and frequency = 20Ghz)
A medium complexity structure is shown in Figure 8.22, Medium Complexity Structure (cell Size 5 x 15 mils and frequency = 2 Ghz). The combline filter response is dependent on the lengths and coupling of each resonant line. In this example, the cell definition was determined by the resonant line length and width. At 2 Ghz the cell size can be much coarser than if this structure was being analyzed at 20 Ghz. The cell definition is 5 x 15 mils. The 15 mil length is in the y direction and is defined that way because of the long length of the resonator. The 5 mil definition was made because of the sensitivity of the structure to the spaces and widths of lines in the x direction. This is considered a coarse mesh but it was found to be sufficient for the accuracy required for its application. Figure 8.22. Medium Complexity Structure (cell Size 5 x 15 mils and frequency = 2 Ghz)
The low complexity structure is shown in Figure 8.23, Low Complexity Structure. (cell size 4 x 4 mils and frequency = 20Ghz). The structure is a simple microstrip tee with chamfered lines. This structure is low complexity because it does not have coupling width or spaces that are critical to the performance. At 20 Ghz a cell size of 4 x 4 mils was found to be sufficient for the accuracy of the solution. Typically low complexity circuits are discontinuities in transmission lines and require less meshing density for sufficient accuracy.
AWR Proprietary
EMSight Figure 8.23. Low Complexity Structure. (cell size 4 x 4 mils and frequency = 20Ghz)
In summary, defining cell size for particular structures requires knowledge of three factors: 1. The accuracy required for the application of the circuit. For example, if a structure is complex and the application requires very tight specifications then the meshing density may be high. 2. The effect of parts of the structure on the overall performance. For example, the lange couplers performance is determined by the widths and spaces of the coupling fingers. 3. Frequency of analysis. Higher frequency means smaller cell sizes in general.
AWR Proprietary
EMSight A common rule of thumb for determining the coupling between discontinuities is any discontinuity spaced more than two substrate widths apart can be partitioned into a separate simulation. In this structure the first two MTEEs are spaced only 10 mils apart which is less than double the substrate thickness of 50 mils. Mtee20_1 and mtee20_2 are separated by 55 mils and therefore mtee20_2 can be simulated separately. Figure 8.25, Partition 1: Coupled MTEEs - mtee50 and mtee20_1. and Figure 8.26, Partition 2: Isolated MTEE mtee20_1. show the new partition of the structure. Figure 8.25. Partition 1: Coupled MTEEs - mtee50 and mtee20_1.
The combined simulation of the new partition is done using the linear simulator. Each partition becomes a subcircuit which can be placed in a schematic and connected together to simulate the combined effect of both structures (see Figure 8.27, Schematic for Combined Simulation of Partitions 1 and 2.).
AWR Proprietary
PORT P=2 Z=50 Ohm SUBCKT ID=S1 3 NET="coupled mtee" 2 PORT P=3 Z=50 Ohm
MSUB Er=9.8 H=25 mil T=0.2 mil Rho=1 Tand=0 ErNom=12.9 Name=Alumina25
The entire structure and the partitioned structure were simulated for comparison. The data shows negligible differences that verify the accuracy of this method.
AWR Proprietary
EMSight
PWB EXAMPLE: How to determine what parts of a structure are critical to the solution.
This example illustrates how a very complicated circuit can be simulated by judiciously choosing which parts of the structure are critical to the solution and reducing the structure into smaller parts. A microstrip circuit is analyzed for two separate cases. Case 1 called the fullckt case, is the lower part of the original structure with all insignificant vias deleted. All vias that are preceded by other vias on a ground pad have almost no effect on the main signal and were deleted. Also, any via further than two substrates thickness away from the main signal line were deleted. Case 2 is a simplified version of Case 1. The following guidelines were used in simplifying the circuit: 1. Any metal patterns that were spaced more than one and a half times the substrate height were deleted. In this case, the substrate was 25 mils thick so any line more than 37.5 mils away from the main signal line was excluded. Typically, a rule of thumb: any line that is spaced more than twice the substrate height away from another line has an insignificant coupling effect on the main line. This example illustrates that even 1.5 the substrate thickness is insignificant for this solution. 2. All ground vias were deleted. The following is the original circuit.
AWR Proprietary
EMSight
AWR Proprietary
EMSight
The grid size for both cases was 5mils in the x-direction and 20 mils in the y-direction. The enclosure dimensions for Case 1: x=1500mils, y=1500mils, layer1=225mils er=1, layer2=25mils er=6.15. For case2: x=1500mils, y=1200mils, layer1=225mils er=1, layer2=25mils er=6.15. The simulation time for Case 1 was 4.6 hrs using 98 MB RAM. Case 2 simulation time was 27 minutes using 39 MB RAM. The results for both cases are shown on a Smith Chart for S-parameter data and on a rectangular grid for transmission and reflection in db. From the data it is obvious that simplifying the circuit has little or no effect on the solution for the structure.
AWR Proprietary
EMSight In summary, when performing EM simulations it is important to understand what parts of your structure are critical in the coupling of electromagnetic energy from the main transmission line to the other conductors or ground planes. The "double the substrate thickness" is a rule of thumb approximation for how to decide when coupling is occurring. To better understand the coupling it is easy to just isolate part of your structure to get an insight into what structures are critical in the final solution. It is also advantageous to break up the structure into pieces by excluding extended uniform transmission lines, and breaking up the simulation into smaller parts where there is an absence of coupled discontinuities in the structure. The results of each part can be output into an S-parameter file that can be connected together in a schematic to create the solution for the entire structure. This simulation method can drastically reduce computational time.
AWR Proprietary
AXIEM
8.5. AXIEM
8.5.1. The Electromagnetic Solver
AXIEMTM is a Method of Moments solver that solves for the currents on conductors that can be embedded in a stackup of planar dielectric layers. The dielectric layers are of infinite extent in the x-y plane as shown in the following figure. The dielectric layers are defined above an infinite half-space. The half-space below the dielectric is typically a conductor or PEC (perfect electric conductor), but it can also be an infinite open boundary if needed. The half space above the dielectric layers is typically an infinite open boundary which correctly models free-space radiation, but it can also be a conducting plane.
Currently, all conductor shapes in AXIEM must be planar in the x-y plane and they can be arbitrarily extruded orthogonally in the z direction. The extrusion of the conductors in the z-direction is referred to as the "thickness" of the conductors. There are no restrictions on the thickness of the conductors. They can be infinitely thin, or they can have finite thickness. The thickness is allowed to protrude through one or more dielectric layers as well. There are also no restrictions on the shapes relative to the grid (they do not need to fall on a grid, as is the case with the EMSight solver). A typical model built in AXIEM contains conductors and vias. Conductors can be of any thickness, and they always start (in the z direction) from the EM layer they are drawn on and extend upward. Vias on the other hand, always protrude downward from the layer they are drawn on, and they always extend through complete dielectric layers (one or more). Since there are no restrictions on the height of conductors, you can draw vias using thick conductors. You should use vias when appropriate, as there are some options in the mesher that treat a via differently from a thick conductor that spans the same z extent. AXIEM uses a mesh defined on the surface of the conductors as the basis for the solution. The effects of the dielectric layers is taken into account mathematically (through Green's functions), which allows the solution to be found from a much smaller set of unknowns. The surface currents modeled by AXIEM include all x, y and z components. For any conductor that can be created in AXIEM, there are no restrictions on how current flows on the surfaces. The ability to model all surface currents accurately allows accurate analysis of conductor traces of any thickness (even lines that are much thicker than they are wide).
AWR Proprietary
AXIEM When using an unbundled license, the license must be released before someone else can use the license. The license is released when the AWRDE is shut down or the user selects to release the license. The license is released by right clicking on the EMStructures node in the project browser and selecting Release AXIEM.
Note, an AXIEM license is required for both simulating and other operations such as getting the information for the structure (number of unknowns, etc) and viewing the mesh. However, once a simulation with AXIEM is complete, an AXIEM license is not required to plot data from that EM structure or use that EM Structure as a subcircuit in a design. AXIEM Licensing With an XEM-100 feature, AXIEM can be run on 64-bit operating systems. AXIEM will automatically detect your license type and operating system and run in the properly licensed mode. With an XEM-050 feature, AXIEM can be run on a 64-bit operating system, but will be run in 32-bit mode, so it will not be able to address more than 2 GB of RAM. Frequency Setup To set the desired analysis frequencies, right-click the EM document in the Project Browser and choose Options to display the Options dialog box, then click the Frequencies tab. See the section called Setting Frequencies for more information. You can enter any frequency, including DC. You should always include the DC point when the results of the simulation are to be included in a nonlinear circuit simulation, as it is needed to compute the DC component of the circuit solution. Any of the Auto configure solvers automatically select the correct solver when sweeping from DC to high frequencies (for more information, see Solver Type). Simulation Information You can use the Solver Information dialog box to check the number of unknowns and ensure they are within a solvable range. Iterative solvers can usually solve up to approximately 50K to 150K unknowns (the limit is problem and solver dependent) for the 32-bit platform, while the 64-bit solver can handle much larger problems. Direct solvers are usually limited to approximately 8K unknowns on a 32-bit platform. When the number of unknowns is large, you should reduce them by adjusting the meshing parameters. Note that the structure must be meshed to get this information, so you may have to wait for the mesher to complete to see the results. If the meshing parameters are set very poorly, and the structure is very complex, the mesher might run out of memory (or take a very long time) before the information displays.
AWR Proprietary
AXIEM
Viewing the Mesh You should always view the mesh before simulating your structure. Using the EM_MESH_F mesh annotation, you can look for unintentional opens or shorts in your structure. The mesh can also show you how well you have configured your circuit for simulation. The most common problem is over-meshing a structure, resulting in significantly longer simulations than necessary. See Section 8.2.2, EM Annotations and Cut Planes for more information on viewing the structure mesh. Simulation Status You can monitor progress in the Output log section of the Simulation dialog box. The "Estimated Time to Completion" message provides a good estimate of time remaining before completion when AFS (Advanced Frequency Sweep) is not enabled. This information is not available when using AFS, as the number of additional frequencies required for AFS convergence is unknown.
AWR Proprietary
AXIEM
Thick Metal Setup AXIEM can simulate metal traces with our without thickness. In either case, the loss of the metal can be calculated accurately. However, coupling between lines that are close cannot be approximated with thin metal and so thickness may be necessary. In order to simulate with thickness, you must define your metal properties as conductances with thicknesses and NOT impedances. Even with the proper conductor setup, the default in AXIEM is to simulate as thin metal. From the mesh properties, you must tell AXIEM to simulate with thick metal. This option can be set per EM structure or per shape. To change the settings per EM structure, right-click on the EM structure in the project browser, select Options and click on the Mesh tab. Uncheck the Model as zero thickness. To change the setting per shape, right-click on the shape in the EM Structure, select Shape Properties and click on the Mesh Tab. Uncheck the Use default properties and Model as zero thickness. You can always verify in the 3D view of the EM structure if it will simulate with thin or thick metal. For example, the picture below shows a line setup to simulate as thin metal.
AWR Proprietary
AXIEM The picture below shows the same line setup to simulate with thickness.
8.5.3. Solvers
AXIEM uses several different internal solvers. By default, there are auto configurations that attempt to pick the optimal solver for the situation. For example, there are solvers that work well for low frequencies (down to DC), and there are solvers that work well for higher frequencies. The range in which the low frequency and high frequency solvers work well overlaps significantly, so for many problems, either solver should work. When a solver is selected using the Auto configure option, it is automatically selected based on frequency, to allow seamless simulation of structures from DC to very high frequencies (DC to daylight). The ability to simulate DC accurately is very important when the results of the simulation are used in a nonlinear circuit simulation, as the DC solution is needed to correctly compute the DC component of the solution. NOTE: Both the low and high frequency solvers solve the same system of equations (no quasi-static approximations are made in the low frequency solvers). AXIEM solvers are categorized as follows: Low frequency solvers Direct solvers Iterative solvers High frequency solvers Direct solvers Iterative solvers Direct solvers are used for relatively small problems, as they do not scale as well as the problem size grows larger (O(N^2) for the fill, and O(N^3) for the solve). Iterative solvers (often referred to as "fast solvers"), are better suited for large problems. The following table summarizes the scaling for the various solver types. On the EM Options dialog box AXIEM tab, you can select Auto configure as the Solver type to automatically choose the solver based on frequency and problem size.
AWR Proprietary
AXIEM Solver Type Direct Direct Iterative Iterative Frequency Range Low frequency High frequency Low frequency High frequency Memory Usage O(N^2) O(N^2) O(N*Log(N)) O(N*Log(N)) Matrix Fill O(N^2) O(N^2) O(N*Log(N)) O(N*Log(N)) Matrix Solve O(N^3) O(N^3) O(N*Log(N)) O(N*Log(N))
In addition to the solvers listed in the table, there are Iterative solver types with different speed/convergence robustness qualities. See Section 8.5.6, AXIEM Solver Options for a discussion of these options.
To add an edge port, select a conductor and choose Draw > Add Edge Port or click on the Edge Port icon from the toolbars. Move the cursor over any side of the shape, an outline of the port displays. Click to place the port. Port numbering is automatic; the port numbers increase as ports are added. To change a port number, double-click on the port to open the Properties and change the Port Number field. See the the section called Port Editing for more details and options on editing port properties. Setting the Reference Planes Reference plane extensions are sometimes used when very high precision is needed. For many situations, reference plane extensions are not necessary, as the ports in AXIEM introduce relatively small discontinuities. You can use de-embedding to significantly reduce the parasitic effects of the port further (note that de-embedding is required if you use reference plane extensions).
AWR Proprietary
AXIEM
To set the reference plane of a port, select the port, click the reference plane highlighted at the flush end, and drag it with the mouse. The arrow as shown in the previous figures displays, the end of which defines the new reference plane. If the reference plane coincides with the port edge, the arrow is not visible. You can also type in the exact physical distance you want for your reference plane. Double-click on the port to open the Properties and change the Ref. Plane Distance field. Setting the Port Excitation or Termination The computation of the port parameters does not depend on the excitations or terminations at the ports, however, the current annotations depend on these settings. To set the port excitation or termination, double-click the port to display the Properties dialog box. You can specify the port as an excitation or termination port. For an excitation port, you can set a relative magnitude and angle for the port excitation along with the source impedance. Note that the magnitude of the excitation is described by an available power, meaning that if the port is conjugate-matched to the specified impedance, the specified amount of power enters the structure. For a termination port, you can specify the resistance and reactance of the termination. The ability to solve for the currents in the structure with terminations on the ports allows the current animation to show the waves traveling through the structure (the usual short circuit solution only shows a standing wave of the currents in the structure). Specifying the excitation or termination at a port only affects the current animation. Electrical port parameters (for example, S-parameters) assume a port impedance of 50 ohms. To change the reference impedance of the network parameters, place the EM structure as a subcircuit in a circuit schematic and edit the port impedance. Adding Internal Ports Internal ports are the most complicated of the three ports, and should be used with caution. To use the internal ports effectively requires a good understanding of both the implementation of the internal ports and the concept of a local ground reference. The resulting S-parameters from a simulation that uses the internal ports is not a general S-parameter and there is a relatively non-intuitive methodology that must be followed in order to get meaningful results. To add the internal port, select the polygon that is to be the negative terminal for the internal port, then choose Draw > Add Internal Port or select Internal Port from the menus. Move the cursor onto the edge of the polygon where a port is desired; an outline of the port displays. Click to place the port. The positive terminal of the internal port displays a "+" sign as shown in the section called Internal Port Example. This example also shows to properly wire up schematics that use an EM structure with an internal port. Note, you cannot add reference plane extensions to internal ports. See the EMSight description of internal ports in the section called Description of Internal Ports since the issues are similar.
AWR Proprietary
AXIEM Port Types The AXIEM solver can use a number of different ports.
Edge Ports
Edge ports are the simplest port and most commonly used port in AXIEM.
1
ACVS
Ground at
The default edge port is defined in terms of voltage and current. The voltage is defined from the edge where the port is located, to the infinite ground plane (or infinity, if no ground plane is specified). The default edge port uses a path-independent voltage for its definition, which works well for low frequencies or transmission lines that support quasi-static modes. The default ports can introduce some error for structures where the transmission lines have significant dispersive effects. Where dispersion is an issue, an Explicit Ground Reference option is available to connect the port to a ground plane either above or below the edge with a vertical strip of conductor. To access this option double-click the port to display the Properties/Port Attributes dialog box. The Connect to lower or Connect to upper options for Explicit Ground Reference automatically insert a vertical strip of conductor that extends from the port edge to the first conductor or ground plane that is encountered. A delta gap port is added between the bottom of the strip that extends to the nearest conductor (or ground) and the shape to which it is connected. If the vertical strip is connected to the enclosure ground plane, its effects can be removed with de-embedding; however, if it connects to a user ground plane (another conductor), its effects are not removed with de-embedding. The effect of the strip introduces more of a discontinuity than the default port with None selected as the Explicit Ground Reference, so you should enable de-embedding when using these options.
AWR Proprietary
AXIEM
1
ACVS
=0
Differential Ports
Differential ports are a group of edge ports where you can define the return location to be at any arbitrary point in the circuit. To do so, make one or more ports the negative terminal of the port groups by specifying the Port Number as the same number with a negative sign in front of the number. If you are using differential ports, you cannot set the Explicit Ground Reference to anything but None.
AWR Proprietary
AXIEM
1
ACVS
-1
Some common uses for differential ports are to create CPW lines
AWR Proprietary
AXIEM
Series Ports
The series port grouping is a convenience port which allows you to access a differential (finite gap) port as a two-terminal device. AXIEM actually converts a series port into a differential port for electromagnetic simulation via the Method of Moments. After this simulation is complete, a linear circuit simulator is used to attach an ideal 1:1 transformer to the differential port, resulting in a positive and negative terminal for the series port group. It is easiest to think about these two external ports as being excited/terminated in differential and common mode. The differential excitation sees the same impedance as the finite gap port in the EM simulation. The even mode excitation sees an open circuit. The underlying simulation of a series port is a differential port simulation, thus, series ports are subject to the same guidelines and restrictions as differential ports. In the Properties dialog box you must configure two ports to be part of a group in order to be considered a series port. In the Port Group section, select Series as the Type. Name can be either a new name or an existing name selected from the drop-down list.
Series port groups have the following limitations: They must contain only ports with positive indexes.
AWR Proprietary
AXIEM They must contain only ports with exactly two port indexes (not one, or more than two). The lowest port index in a series port group is considered the positive terminal of the differential (finite gap) port. The most common use for series ports is the simulation of a gap, across which a passive component is placed, as shown in the following figure. Ports 3 and 4 are part of the same series port group, and represent one port.
When the EM structure is used as a subcircuit in a schematic, nodes 3 and 4 represent the series port.
SUBCKT ID=S1 NET="EM_Series_Port"
3
The equivalent differential port simulation of the gap is shown in the following figure. Again, Ports 3 and -3 represent one port.
The equivalent schematic with the differential port subcircuit is shown in the following figure. Unlike the series port, only one node is exposed for the differential port.
AWR Proprietary
AXIEM
SRC_CONV ID=X1
1 + V + V 3 2
Multi-terminal Ports
Multi-terminal ports are similar to differential ports except that you can define two or more locations to share the same source. You can think of this as exciting multiple location in a circuit in common mode. For multi-terminal ports, their return can be infinity (Explicit Ground Reference set to None), a ground plane (Explicit Ground Reference set to other than None), or a negative terminal port (Explicit Ground Reference set to None and another port with the same number but a negative sign in front. The following figure shows the configuration with no ground reference.
AWR Proprietary
AXIEM
ACVS
Ground at
The most common use for multi-terminal ports is to help make the extraction flow work efficiently. There are times that several lines overlap one area and it is more efficient to make the end of the lines use the same port instead of individual ports. This is valid as long as the area they are overlapping is electrically small. For example, if there are three iNets overlapping an area pin, but the area pin metal is not extracted, the EM document displays as.
AWR Proprietary
AXIEM
Typically, area pin areas are small electrically, so either configuration provides the same answer. An edge port can be on any edge of a conductor even if the conductor is touching or overlapping other conductors. This is different from an internal port in that the return path for this port is either infinity (Explicit Ground Reference set to None) or a ground plane (Explicit Ground Reference set to other than None). The following figure shows the configuration with no ground reference.
AWR Proprietary
AXIEM
ACVS
Ground at
This port cannot currently be de-embedded. This is primarily support for extraction work when ports must be added to shapes in several situations. Internal ports are connected between two polygons that are adjacent to each other as shown in the following figure.
+1
ACVS
Because of this small gap, there is some small parasitic of this port that is not currently removed in a de-embedding process. The difference between this port and a differential port with a ground return defined is that this port has a very small gap between the conductors that is excited, where the differential port can define any gap you want that is excited. Port Editing You can edit various port properties after placing the port in the layout. To edit the properties of a single port, double-click the port in the EM layout to open the Properties dialog box. See the section called Port Attributes Dialog Box for more information about this dialog box.
AWR Proprietary
AXIEM A common mistake is that the Excitation and Impedance settings on this dialog box only apply to viewing currents. The S-parameters generated from the simulation are not affected by these settings, they always use a 50 ohm reference impedance. You can select multiple ports to edit all of the selected port's properties at the same time. You can also restrict selection to just ports by right-clicking and choosing Restrict Selection from within an EM layout.
Click the Check All button and then clear the EM ports option to filter the selection. You can also display all of the properties for the ports in your EM layout. With an EM layout window active, choose Edit > Port Properties to display the EM Ports Properties dialog box. (If there is only one port in the layout, the Properties dialog box displays for just that port.)
You can change all of the port properties in this dialog box. When the dialog box is open, position it so you can see the EM layout. When you select a property for any of the ports, the EM layout automatically highlights the port in blue and magnifies it for easy identification.
AWR Proprietary
AXIEM
When you add a port, it is assigned the next highest number available for that document. When you simulate, the ports must be sequential. You can make ports differential by editing port numbers, see the section called Port Types for more information. When you do this, the port numbers may no longer be sequential. The same thing can occur if you need to delete certain ports. You can choose Edit > Re-number Ports to renumber the ports so they are sequential. This operation only changes the port numbers that are not sequential; it does not change all of the port numbers in the EM layout. If you have defined multi-terminal ports or differential ports, this command renumbers any ports with the same number to have the same new number. Port Accuracy Even with no de-embedding, AXIEM edge ports have a very low discontinuity because the excitation is handled as if the port were pulled away from the structure and the port reference plane were extended back to the port location. This is different than EMSight, which has higher port discontinuities because the excitation occurs directly at the port location, and it takes some distance for the current flow to spread out into the real operating mode on the line, as shown in the following figures. The x dimension AXIEM current flow from the port reflects the actual propagation mode of the line, while the EMSight x dimension current flow shows uniform current across the entire port edge. AXIEM x Dimension Current
AWR Proprietary
AXIEM
Similarly, the AXIEM y dimension current flow is nearly 0 (as expected) but the EMSight y dimension current flow is non-zero in the first few mesh as the current has to spread out to account for the real propagation mode on the line. AXIEM y Dimension Current
AWR Proprietary
AXIEM
Port De-embedding Port de-embedding is accomplished by creating one or more standards (separate EM structures), analyzing them to understand the discontinuity, and then subtracting (or negating) the effect of the discontinuity at every port. AXIEM currently supports three different de-embedding types.
AWR Proprietary
AXIEM 1. Single Line 2. Coupled Line 3. Mutual Groups Single line de-embedding is used for edge ports with any grounding type that currently can be de-embedded. See the following list for configurations that cannot be de-embedded. No user input is needed for coupled line de-embedding.
Coupled Line De-embedding
Coupled line de-embedding occurs where any ports that share a common reference plane location can be de-embedded with a coupled line de-embedding standard. AXIEM automatically uses coupled line de-embedding if two conditions are met: The first condition is that the reference planes must be along a co-linear line. Lines can be on different layers and have different reference plane shifts as long as the end of the reference plane is along the same line. The following figures show valid coupled line de-embedding situations. Case 1 - no reference planes
AWR Proprietary
AXIEM
The second condition is that the lines are close enough together to be included in a coupled line standard. AXIEM determines this by first finding the furthest distance to ground for any of the ports and then multiplying this distance by the Coupled Ratio set in the EM Options dialog box on the AXIEM tab. See the section called EM Options Dialog Box: AXIEM Tab for details. This multiplication produces a coupling distance. Any ports that have an edge-to-edge spacing that is less than the coupling distance are automatically included in a coupled line de-embedding standard. The following figure further illustrates this process.
S1
S2
H1
H2
H3
Ground
In this case, H3 is the furthest distance to ground, so this distance is multiplied by the coupled ratio. If S1 or S2 are less than the coupled ratio, those lines are all included in a coupled line de-embedding standard. You can alway set the Coupled Ratio to 0 if you do not want any coupled line de-embedding. At low frequencies (near DC), no coupled line de-embedding is ever used.
AWR Proprietary
AXIEM
Mutual Group De-embedding
Mutual group de-embedding occurs where ports are close together and the ports themselves can couple together, especially if using an explicit ground. In the Properties dialog box you must configure ports to be part of a group so they can be de-embedded as a group. In the Port Group section, select the Type as Mutual. The Name can be either a new name or an existing name selected from the drop-down menu.
At low frequencies (near DC), no mutual de-embedding is used. The most common use of mutual ports is when simulating the interconnect into some component that isn't EM simulated. For example, the following figure shows a FET surrounded by shapes on all four sides that should be EM simulated. Obviously, the FET cannot be included in the EM simulation.
AWR Proprietary
AXIEM The EM layout for this scenario is shown in the following figure (which is easily created using extraction).
For maximum accuracy, the ports are connected to the bottom ground. In this case the distance to the ground is 100um, similar to the distance between these ports, so there is coupling between these ports. Mutual group de-embedding can remove the coupling from the simulation results. The de-embedding standards created for mutual groups have to extend metal in the opposite direction of the port number, so there are many situations that are not valid for mutual group de-embedding. The simplest example is a simple bend discontinuity.
The two ports are about 80um spaced on a 100um substrate, so with explicit grounds (for maximum accuracy) these ports will couple significantly. This situation produces a simulation error because the mutual de-embedding standard has overlapping metal (metal extended from port 1 to the right and from port 2 down). For this simple example, the solution is to add reference planes so the ports are spaced far enough apart and they won't couple.
AWR Proprietary
AXIEM
When setting up your ports for de-embedding, you can use an annotation to view the de-embedding standards. This allows you to verify you will get the de-embedding type you expect before your simulation runs. To use an annotation, right-click your EM structure in the Project Browser and choose Add Annotation. Specify the Measurement Type and Measurement shown in the following figure.
The most important settings are the EM Simulation Document, the Port Number and the Standard Number. For this check, you should always use a standard number of 1. The following figure shows an example of a single line de-embedding case.
AWR Proprietary
AXIEM
The relative location of the shape being meshed is not important, but the number of lines drawn is important; in this case one. The following figure shows an example of a coupled line de-embedding case.
Note that there are now two lines drawn showing coupled line de-embedding. The following figure shows an example of a mutual group de-embedding case.
AWR Proprietary
AXIEM
Note that there are now four lines drawn showing the mutual grouping.
Port De-embedding and Status
By default, AXIEM attempts to de-embed all ports. You can turn off port de-embedding for each port by double-clicking the port and then selecting the De-embed check box in the Properties dialog box. See the section called Port Attributes Dialog Box for details. You can turn off port de-embedding for the entire AXIEM structure by right-clicking the AXIEM document in the Project Browser, selecting Options, and then clicking the AXIEM tab. Toggle off the De-embed Ports option. See the section called Options Dialog Box: AXIEM Tab for details. The setting on the AXIEM document overrides the settings made per port. During simulation, you can view the Simulation status dialog box to see the de-embedding type for each port, as shown in the following example.
Ports 7 and 4 use single line de-embedding, ports 2 and 3 use coupled line de-embedding, and the rest are set up for a mutual calibration group. During the simulation, notice that each port's de-embedding type displays.
AWR Proprietary
AXIEM
The same information is stored with each AXIEM structure in the Simulation Log.
For any de-embedded ports, the reason is listed as a warning in the Status Window. The following figure shows an example of these warnings.
AWR Proprietary
AXIEM
The following list explains the current port configurations that are not de-embedded. 1. Internal ports. 2. Edge ports with an explicit ground that is blocked from the chosen ground by another shape. 3. Differential ports. 4. Edge ports on an internal edge (touching other shapes or inside other shapes).
De-embedding Process Overview
A stylized view of the subtraction (negation) of the de-embedding matrices from the raw EM matrix is shown in the following figure (this process applies to all ports in an N port EM matrix).
Final EM Solution
De-embedding discontinuity (Port 1) Generic N-port EM Matrix (illustrated as a two port) De-embedding discontinuity (Port 2)
(-)
(-)
The first de-embedding standard generated is shown in the following figure. The IND and CAP elements in the standards represent the port discontinuity, and the TLIN elements are automatically inserted based on the length of user-defined reference plane shift, the dielectric height, the metal width, and other values.
AWR Proprietary
AXIEM
L=L
L=L
This structure is driven in an even mode and then an odd mode, which places a perfect electrical short or open at the exact center of the structure. Using this knowledge, the matrix can be perfectly divided in half (the symmetry is assumed here in the de-embedding standard), which results in the y-matrix represented by the topology as shown in the following figure.
If there are user-defined reference plane shifts, the length of the TLIN element (L) is equal to the reference plane shift. In this case the y-matrix result from the first standard is sufficient to remove the port discontinuity and shift the reference plane when subtracted from the direct EM results. If there is no user-defined reference plane shift, the effect to the TLIN element needs to be removed so that only the port discontinuity remains. In this case, a second de-embedding standard is required, as shown in the following figure.
L=L
L=L
L=L
By subtracting the final result from the first de-embedding standard (which includes the IND, CAP, and TLIN) from both ends of the second de-embedding standard, the y-matrix is reduced to simply one TLIN of length L. Then, if this TLIN is subtracted from the final result from the first de-embedding standard, the result is simply the effect of the port discontinuity as shown in the following figure.
AWR Proprietary
AXIEM
Port discontinuity
Either the final result from the first standard (if there are user-defined reference plane shifts) or the second standard are used to de-embed the port effects from the raw EM matrix.
De-embedding Limitations
Higher order modes that exist in the structure or the de-embedding standards can cause problems. There should be no shapes drawn at the same location as a port and its reference plane. The reference standard is always the width of the line at the port and a length determined by the de-embedding process. If the real structure has other geometry under the reference plane extension, this geometry is not included in the deembedding standard. Recommended Port Usage The following sections include AWR port usage recommendations for specific structures.
Differential Lines
Differential lines are excited by Differential ports, as shown in the following figure. The common mode of the two lines is not excited by the differential ports, and the effective load impedance for this mode at the ports is an open circuit. Differential excitation/termination of line in this manner is only recommended if a local ground is NOT present. If a local ground is present, excitation by normal single- ended ports is suggested, as this addresses excitation/termination of both differential/common (odd/even) modes.
AWR Proprietary
AXIEM
Coplanar Waveguide
You can also set up Coplanar waveguide (CPW) excitation using Differential ports. It is assumed that only one mode of propagation is allowed at each port (i.e.the port width is much smaller than the guided wavelength). Thus, if the ground plane widths are electrically very large, it is better to attach the negative ports across a subsection of the ground plane, as shown in the following figure.
Stripline
Currently, AXIEM does not support ports with explicit grounds for stripline structures. An explicit ground to either the bottom or top enclosure results in a non-symmetric current return. As in physical stripline structures, a TEM parallel plate waveguide mode between the top and bottom boundary can be excited just as easily as the desired stripline mode. Instead, you should use Edge ports with Explicit Ground Reference set to None.
Thick Substrates Relative to Frequency
Edge ports with implicit ground reference (default port with Explicit Ground Reference set to None) work best when the distance between Port and ground reference (Top or Bottom boundary) is short compared to wavelength. As the electrical distance gets larger, ground return currents are not well-specified, and can result in passivity and accuracy problems. In these cases, use Edge ports with Explicit Ground Reference set to Connect to upper or Connect to lower, depending on the structure.
Vias
For microstrip structures (with infinite ground plane) the most accurate de-embedding is obtained with Edge ports with explicit ground reference. If the port is placed too close to a via, however, the port ground strip couples with the via, which cannot be de-embedded. For accurate simulation results, you should separate the port from the via by a minimum
AWR Proprietary
AXIEM distance of four times the thickness of the substrate or width of the trace, whichever is greater. You can then use Reference plane extensions to de-embed back to the via.
When simulating a via, you should always simulate it with a connecting line. If the reference plane is placed too close to the via, even if the port is sufficiently distant, the S-parameters obtained can be slightly non-passive. When de-embedding the portion of the microstrip line that runs from the port up to the specified reference plane, it is assumed that the line is in an ideal environment (i.e. the line is the only EM structure in the considered layered media). If the reference plane is too close to the via, however, the properties of the line along the path from the port to the via are not uniform. Best results are obtained when the reference plane is placed no closer than two times the thickness of the substrate or width of the trace, whichever is greater.
Device Interconnects
Closely spaced ports placed across the gap of an interconnect pad to an external device can couple to each other, and result in inaccurate de-embedding if not set up correctly. To set up the ports correctly, the first option is to use Differential ports or Series ports. Both port types result in equivalent simulation. Both ports are not de-embedded, and explicit connection to the lower/upper ground is not allowed. By definition, the current going into one terminal of the Differential/Series port must equal the current coming out of the other terminal. You should not, therefore, use this option if the external device is active. The second option is to use Edge ports with mutual group de-embedding or without explicit ground reference. The ports are then de-embedded together, and account for the coupling between each other. You can use this approach for both passive and active externally connected devices.
Local Ground Plane
If there is an infinite ground plane, using a port with explicit ground reference provides a clear physical definition of the return current path and allows an accurate de-embedding of the port, so simulation results are very accurate. In many situations, however, the return current path does not go through the infinite ground plane or there is no infinite ground plane defined. Also, ports may be blocked from the infinite ground by design components and it is not possible to connect ports explicitly with the ground.
AWR Proprietary
AXIEM The following example of a two-plate capacitor above a finite conducting plane illustrates several options for setting up simulation ports with a finite local ground plane. The first option is to use an Edge port with explicit ground reference to the local ground plane. The local ground plane should be infinitely thin. The port de-embedding option should be disabled, since it is not supported. A metal strip that connects from the port to the local ground is included, thus a small amount of extra inductance and capacitance is added to the structure. Note that explicit extension introduces parasitic reactance at the ports, and this type of port cannot currently be de-embedded.
The second option is to use Differential ports with negative reference ports defined on the nearest edge of the local ground plane. If the ground plane width(s) are electrically very large, it is better to attach the negative ports across a subsection of the ground plane. It is important to realize that current travels from the negative to the positive terminal with zero delay. To minimize errors caused by this effect, you should place the positive and negative ports as physically close to one another as possible.
The third option is to place a rectangle on the ground plane directly below the port and define the negative reference port on the edge of the rectangle. Note that the return current flows through the ground plane into the defined negative reference plane. Usually, width of the ground rectangle is equal to the width of the corresponding trace above it, however widths can be increased. This configuration results in a minimum distance between positive and negative ports, thus minimizing error due to the zero delay. Further, this type of excitation introduces a minimum amount of parasitic reactance which is desirable because the port is not de-embedded.
NOTES: Do not use the explicit ground connection for ports above a finite ground plane that is not infinitely thin. Differential ports are not de-embedded. Ports with explicit ground reference to the local ground plane are not de-embedded. If there is no global infinite ground plane, do not use ports with implicit ground connection (default Edge ports). The return currents are not well defined and can cause inaccurate results.
AWR Proprietary
AXIEM
The mesher uses heuristic knowledge of how currents flow on the conductors to help generate a very efficient mesh that allows very high accuracy while minimizing the number of unknowns. You can also control various aspects of the meshing process, both globally (for the entire mesh) and locally (per shape).
Since AXIEM makes no assumptions on how currents flow on the surfaces of the conductors, it is well suited for simulations of very thick conductors. The solutions for thick conductors account for all x-, y-, and z-directed currents on all surfaces. See Section 8.2.2, EM Annotations and Cut Planes for details on how to view your AXIEM structure mesh. Meshing Terms Defined The following terms are used to define how geometry meshing works.
Meshing Density
Meshing density defines how many mesh elements are in a given area. This is easily demonstrated with a single line changing settings to alter how the mesh is created. The following image shows the line with a low mesh density that has 74 unknowns.
The following image shows the line with a medium mesh density that has 167 unknowns.
AWR Proprietary
AXIEM
The following image shows the line with a high mesh density with 518 unknowns.
Most new AXIEM users tend to over-mesh a structure (use too high a density of mesh). In the following example, the graph of S11 magnitude shows results for the different meshing densities are almost identical.
S11 Magnitude
-10
-15
-20
mesh_density_high mesh_density_low
-25
mesh_density_medium
-30 1 6 11 Frequency (GHz) 16 20
Decimation
Decimation is the process of simplifying the vertices of shapes before they are meshed to simplify the meshing. It is very important to understand that the shapes in the EM structure layout are not changed by decimation. The decimation process uses the shapes in the EM structure layout, and applies heuristics to slightly change the vertices before the mesher operates on the decimated shapes. There are a number of ways to control this simplification process discussed in later sections. The following figure shows a simple line with a small piece of metal attached to the top of the line.
AWR Proprietary
AXIEM
With decimation configured to ignore shapes about this size, the extra metal on top is not meshed.
This example is somewhat contrived because this geometry would have some small affect on the response of the circuit. Decimation typically works on much smaller geometries than that demonstrated here. Mesh Options You can set AXIEM mesh options globally by choosing Options > Default EM Options and clicking the Mesh tab. See the section called EM Options Dialog Box: Mesh Tab for more information. A new AXIEM structure can use these settings or you can override these settings on the document itself by right-clicking an EM structure in the Project Browser and choosing Options and then clicking the Mesh tab. See the section called Options Dialog Box: Mesh Tab for more information. You can clear the Use Project Defaults check box to control the mesh per EM structure. You can set these options per shape by right-clicking any shape in the EM structure and choosing Shape Properties, and then clicking the Mesh tab. See the section called Properties Dialog Box: Mesh Options Tab for more information. You can clear the Use default properties check box to control the mesh per shape. The advanced AXIEM mesh options behave slightly differently than standard mesh options. You can set these options globally by choosing Options > Default EM Options and clicking the Mesh tab, then clicking the Advanced Axiem Mesh Options button. See the section called Mesh Options Dialog Box for more information. A new AXIEM structure copies these global settings and then you must make any required changes on the AXIEM EM structure itself. To access the settings on the EM structure, in the Project Browser, right-click the EM structure, and choose Options, then click the Mesh tab and the Advanced Axiem Mesh Options button. This dialog box does not have an option to use project defaults. Additionally, these options cannot be set on each shape.
AWR Proprietary
AXIEM Meshing The mesh created for an AXIEM structure depends on many different settings.
Geometry is Meshed
In AXIEM, the shapes in the EM structure determine what gets meshed. In some simulators, such as EMSight, the mesh can only be drawn on the grid points for the structure. For example, see the following line.
Notice the shape vertices are not touching the grid, yet the mesh is perfectly covering the line. The same line in EMSight has a mesh that looks like the following figure.
Notice that the mesh drawn is not perfectly on top of the shape.
Frequency
The largest geometry allowed in a single mesh is determined by either the maximum frequency for the structure or the Meshing Frequency you enter. See the section called Options Dialog Box: Frequencies Tab for details. If you set the Meshing Frequency, you must set it to a frequency higher than the highest frequency currently set up for the EM structure. The largest frequency determines a wavelength and then a fraction of this number is used as the maximum mesh size. The Meshing Density setting controls the fraction by determining a number of mesh elements per wavelength. Because the largest mesh size is determined by frequency, if you have completed a simulation and then change your highest frequencies, it is possible that ALL the frequencies will need to simulate again (because the mesh has changed). However, if you add any frequency lower than the maximum, only that frequency should need to be simulated. For example, the following figure shows a line with a maximum frequency of 1 GHz.
The following figure shows the same line with a maximum frequency of 100 GHz.
AWR Proprietary
AXIEM
Meshing Density
You can change the mesh options for various levels of mesh density. The Low, Normal or High options adjust the number of elements relative to a wavelength (Low is set to give the minimum required for a reasonable solution, High is intended for improved accuracy, and Normal is a good default for both). This option is set for each EM Structure, see the section called Options Dialog Box: Mesh Tab for more information. The following figure shows the line with a Lowsetting.
The following figure shows the line with a No Variable Mesh setting. In this case the maximum mesh size is one grid size.
AWR Proprietary
AXIEM
Enclosure Settings
The Enclosure Grid_X and Grid_Y values control the snap grid for the EM layout. They are also used to determine the smallest mesh size that is drawn (with several exceptions) and the size of geometry to use for decimation, depending on the decimation scheme you use. See the section called Decimation Strategies for details on the decimation schemes. You set the Enclosure Grid_X and Grid_Y by double-clicking the Enclosure node under your EM structure. In the ENCLOSURE Properties dialog box, click the Enclosure tab. See the section called Element Options-(EM) ENCLOSURE Properties: Enclosure Tab for details. For example, the following figure shows a line with Grid_X and Grid_Y set to 0.5 mils
The following figure shows the same line with Grid_X and Grid_Y set to 5 mils.
The Max aspect ratio controls the typical aspect ratio of the elements used in the mesh (in particular, it has a strong influence on the edge meshing). Wavelength at the highest frequency determines the maximum mesh size, however, often if that were the only criteria, you might have many long, thin mesh sections, which are not desirable. This setting limits the maximum aspect ratio (length/width) that a mesh cell can have. If you use a higher aspect ratio you see longer and skinnier mesh elements. Typically, the default value is used for this setting, but advanced users may want to experiment with other settings. AWR does not recommend setting the max aspect ratio to a value higher than 20 as it can lead to long, thin mesh slivers. This is set for each EM structure. See the section called Options Dialog Box: Mesh Tab for details. For example, the following figure shows a line with the default setting of 10.
The following figure shows the same line with the setting changed to 20. Both of these were for a maximum frequency of 1 GHz.
AWR Proprietary
AXIEM
The following figure shows the same line with the setting at 20, but the maximum frequency of 100 GHz, which would be the same with this setting 10 or 20. At this frequency the largest cell is determined by frequency, not the max aspect ratio.
This setting is multiplied by other mesh sizes to help determine the maximum grid size allowed. Typically this value should remain 1 unless you use specific decimation settings. This option is available in the Mesh Options dialog box. See the section called Mesh Options Dialog Box for details. This setting in relation to decimation is discussed in the following section. See the section called Alternate Mesh Decimation for details.
Determining the Maximum and Minimum Grid Size
Based on the five settings listed above, you can define the maximum and minimum mesh sizes for a structure. For the maximum mesh size, two numbers are calculated. The first is the maximum mesh for the frequency specified, where a wavelength for the highest frequency is calculated and the Mesh Density adjusts the number of mesh elements per wavelength. The second is the smaller of Grid_X and Grid_Y, multiplied by the Mesh size relative to grid value multiplied by the Max aspect ratio. The smaller of these two numbers is used as the maximum mesh size. The minimum mesh size is the maximum mesh size divided by the Max aspect ratio.
Use Edge Meshing
Edge meshing options ensure that there is a small mesh located on the edge of each shape being meshed. Since currents want to flow on the edges of conductors at microwave frequencies, an edge mesh is important to get accurate simulation results. AWR does not recommend turning off this option. You can turn on or off edge meshing for each EM structure. See the section called Options Dialog Box: Mesh Tab for more information. For example, the following line uses edge meshing.
AWR Proprietary
AXIEM
The thickness of the edge mesh is the minimum mesh size determined for the structure.
Exclude the Top Surface Mesh of Thick Conductors
When simulating with thick metal, you can tell the thick metal shapes to exclude the top of the shape from meshing. This option is available in the Mesh Options dialog box. See the section called Mesh Options Dialog Box for more information. This option can help reduce the unknown count; however, if there are lines that couple from the top of one line to the bottom of another line (coupling in the z-direction), this option is not a good idea. The following figure shows the 3D view with a mesh of a line with the top surface meshed.
The following figure is the same line, but excluding the top surface from the mesh.
AWR Proprietary
AXIEM
By default, no edge mesh is included with thick metal shapes. When thickness is being modeled with currents on the vertical sides of the conductors, the edge current singularity is modeled fairly well by these vertical side currents, and edge meshing is less important for an accurate solution. Select this option in the Mesh Options dialog box to include an edge mesh. See the section called Mesh Options Dialog Box for more information. Note that this option is only significant if you select Use edge meshing on the Options dialog box Mesh tab. The following figure shows a magnified view of a line without this setting.
The following figure is the same line, but with the edge mesh turning on for thick metal.
AWR Proprietary
AXIEM
Minimal Z Meshing
This option is selected by default, and reduces the number of mesh elements in the z-direction if possible. Without this option, the z-direction mesh works the same way as the xy-direction mesh. This option is available in the Mesh Options dialog box. See the section called Mesh Options Dialog Box for more information. The following figure shows a line with thick metal (very thick for demonstration purposes) and a via with this setting selected (the default).
The following figure is the same structure, but the setting is turned off.
AWR Proprietary
AXIEM
This option is an alternate way of determining how to draw mesh items across a line by making the mesh widths gradually larger along the line. This option is available in the Mesh Options dialog box. See the section called Mesh Options Dialog Box for more information. The following figure shows a line without this setting.
The following figure shows the mesh with this setting turned on.
Select this option to see if you get more accuracy for your vias. This option is available in the Mesh Options dialog box. See the section called Mesh Options Dialog Box for more information. The following figure shows a line with thick metal (very thick for demonstration purposes) and a via with this setting turned off (the default).
AWR Proprietary
AXIEM
The following figure is the same structure, but with edge meshing vias turned on.
Decimation Strategies Currently, there are two different methods to simplify structures to help achieve an efficient mesh. The following sections describe these methods and the settings that apply to each. You choose your Grid_X and Grid_Y settings based on the strategy used. Note that you can set mesh and decimation settings at various levels (globally, per EM document, and per shape). See the section called Mesh Options for more details.
No Decimation
Without decimation, the mesher meshes the shapes exactly as they are drawn in the EM structure layout. This mode generates the most accurate mesh.
AWR Proprietary
AXIEM
Pre-Process Shapes
The most important settings for this approach are the Grid_X and Grid_Y settings. Based on your geometry, you should set these options to approximately the size of the smallest geometry you want to mesh. Your mesh size relative to grid should be left at 1. See the section called Mesh Options Dialog Box for details. In the section called EM Options Dialog Box: Mesh Tab, in the Axiem Options section there are Decimation settings from none to very high that affect how aggressively the pre-processing settings are applied.
Union shapes before meshing:
This option helps the mesher by unioning shapes together (similar to a Boolean OR operation) before meshing. The following figure shows one shape completely surrounded by the other shape.
Without this processing step, both polygons are meshed, as shown in the following figure.
With this processing step, the unioned polygon is meshed, which can significantly reduce the number of mesh elements in certain cases.
Self intersection correction: In rare cases, polygons can be edited such that they are self-intersecting, which means sides of the polygon cross over other sides. This setting corrects the self-intersection. For example, in the following figure the shape is edited to be self-intersecting.
AWR Proprietary
AXIEM
There are not many situations in which this option should be off. Therefore, this option is still used with No decimation or Alternate mesh decimation. The only way to disable it is to select Pre-process shapes and then clear this option.
AWR Proprietary
AXIEM
Circle/arc reshaping - Grid multiple: The Grid multiple value is a number multiplied by the minimum of your Grid_X and
Grid_Y settings to determine a threshold distance. The shapes are processed based on how other shapes are connected to the circles. If there are no shapes touching the circles or completely covering the circles, circular shapes with centers located within threshold distance have their centers snapped together. Likewise, if the difference of the radii are less than the threshold, the radii are snapped. In addition, circular shapes are converted to N-sided polygons (min 4 sides). N is determined by the size of the original circle, grid size, and frequency. Smaller grid sizes and/or higher maximum frequencies result in larger N. See the following figure of a via with pads that are not centered, with no other shapes around the circles. In this case, the centers are just under 30um spaced. The grid size (both x and y) is 30um and the grid multiple is set to 1.
The mesh for this structure without this option is shown in the following figure.
The mesh for this structure with this option is shown in the following figure.
AWR Proprietary
AXIEM
Note that the via is rather square; this is due to the grid size. If the grid size is set to 5um and the grid multiple is set to 6, the mesh appears as in the following figure.
The following example shows one of the circles completely covered by another shape.
The mesh for this structure with this option is shown in the following figure.
AWR Proprietary
AXIEM
If a shape partially intersects the circle, the circle is still reshaped as an asymmetrical polygon so the mesher can maintain the connectivity of the shapes. The following figure shows the first example, except a trace is connected to the top circles.
The mesh for this structure with this option is shown in the following figure.
AWR Proprietary
AXIEM
The grid multiple value is multiplied by the minimum of your Grid_X and Grid_Y settings to determine a threshold distance. Any vertices within this distance are snapped to the same point. The algorithm is much more complex than this simple explanation, so vertices may not snap to the adjacent due to other factors. One common application for this pre-process step is to simplify plated lines in MMIC processes into one shape. The offsets on these plated lines are typically very small and do not need to be simulated with EM to be accurate. For example, see the following figure.
Without this pre-process step, the mesh displays as in the following figure.
AWR Proprietary
AXIEM
With this pre-process step, the mesh displays as in the following figure.
Min gap decimation - DBU multiple: The DBU multiple is a number multiplied by the database unit size set up for your project. (Choose Options > Layout Options and click the Layout tab on the Layout Options dialog box to see the Database unit size). Any small gaps smaller than the threshold are closed. These pre-processed shapes only change the geometry
sent to the simulation; they do not change the original layout. This setting does NOT fix any small gaps in the original layout. For example, the following figure shows two rectangles that nearly touch.
A magnified view of the inside edge where the two shapes are nearly touching shows that they are not touching.
AWR Proprietary
AXIEM
Without this pre-processing step, these shapes are meshed as not touching (as shown by the different color shapes with the EM_MESH_F annotation).
With this pre-processing step, these shapes are meshed as if there is no gap.
Via merging - Via gap/width ratio:
The Via/gap width ratio is multiplied by the ratio of spacing of vias to the width of the via to determine which individual vias can be merged into one larger via. There must be three or more vias that fit this tolerance, and they must all be electrically connected to get merged. This pre-processing step can significantly cut down on the mesh size when using a large via array. Examples are via fences in PCB design or contact arrays in silicon designs. See the following layout of a via array.
Without this pre-processing step, each individual via is meshed, causing many mesh elements in this small area.
AWR Proprietary
AXIEM
With this pre-processing step, the vias are merged into one via shape, greatly simplifying the mesh.
Note that when simplifying geometry, this step finds the outside area of all the vias merged. In the previous example, there is just a ring of vias around the outside, as shown in the following figure.
AWR Proprietary
This simplification step is typically used with Snap nearby points - Grid multiple. For all shapes, you want nearby points to snap. For a capacitor, however, you may not want the shapes snapped to nearby points, as it could change the size of the capacitor plates. This setting does not snap to nearby points for capacitors. See the following capacitor example where the top plate is inset from the bottom plate.
Without this pre-processing step and Snap nearby points - Grid multiple set, this capacitor meshes as shown in the following figure.
With this pre-processing step, the cap meshes as shown in the following figure, maintaining the top and bottom plate offset.
Note that if you use very big capacitors, the snapping may not be significant.
AWR Proprietary
AXIEM
Alternate Mesh Decimation
These settings are the original AXIEM decimation settings. See the section called Mesh Options Dialog Box for details. The most important settings for this method are the Grid_X and Grid_Y spacing values. Based on your geometry, you should set these values to the size of the smallest shape you do not want the decimation process to change. With small shapes, setting these values small can cause the structure to be severely overmeshed. See the section called Determining the Maximum and Minimum Grid Size for details on how the maximum mesh size is calculated. You should adjust your mesh size relative to the grid for a more reasonable size mesh. Decimation and meshing using this method are explained using an example that includes the settings. The Enclosure Grid_X and Grid_Y values specify to the decimator the largest shape it should try to "correct". The decimator attempts to "clean up" shapes that have dimensions below a size based on the grid. The actual size used by the decimation depends on the decimation level. For example, for a decimation level of Medium, shapes that have an area less than about 2/10ths of the area of a single grid cell should be removed. At the highest decimation setting, shapes smaller than a single grid cell should be removed. For example, if the grid is set to 10 um, the decimator might "clean up" any shape with an area below (10 um)*(10 um). Not all of the decimators work with area, but they all scale in a similar way with the grid size and decimation level. AWR recommends that you experiment with different decimation options while visually inspecting the mesh to see if the desired level of decimation is achieved. For example, the shapes in the following figure have 2 um via geometries and a 0.2 um overlap.
The 2 um via shapes are important to preserve as is, but the 0.2 um overlap region is the kind of shape that causes a lot of unnecessary unknowns and small mesh cells, so it is preferable if the decimator removes it. If the grid is set too large, the decimator "attacks" the wrong shapes and might significantly distort the design. For example, with a 10 um grid setting, the 0.2 um gap is removed as expected, but at the same time, the 2 um via shapes are effectively destroyed.
AWR Proprietary
AXIEM
A better grid setting is 1 um or 2 um (the smallest shape that should be preserved, or half of the smallest shape that should be preserved). In this case, the vias are larger than or equal to the decimator threshold so they are ignored. The 0.2 um overlap region, however, is below the decimation size so it is removed. As shown in the following figure, with this setting the vias are all preserved, but the small overlap region is not meshed, so the decimator is performing as expected.
The problem now is that the smallest mesh facet size is 1 um (the default is 1x the grid size), which makes a dense mesh. It might be better in this case to set the mesh so that the smallest facet size is 10 um. You can do so by changing the Mesh size relative to grid, which is simply a multiplier on the grid size that the mesher uses. In the previous figure the grid size is 1 um, which means that a multiple of 10 would set the mesh to use 10 um as the smallest facet size.
AWR Proprietary
AXIEM
(This mesh is sparse for illustrative purposes.) Note that the vias are fully preserved as expected, the 0.2 um overlap region is not being meshed, and the overall mesh is much more sparse. For comparison purposes, if the decimator is off (Decimation is None) the 0.2 um overlap region is fully meshed, which raises the unknown count and creates the undesired small, skinny triangular mesh cells.
Decimation can also help with circles and arcs, which are represented in GDS as discrete segments. Normally the segment count per circle is rather high so the arcs and circles appear to be smooth. The mesher must note the segment vertices, like any vertex, so this can lead to over-meshing of arcs and circles as shown in the following figure.
AWR Proprietary
AXIEM
Using the decimator with a more aggressive setting (Very High in this case) causes some of the small segments to be dropped, which means that there are fewer vertices for the mesher to handle. This ultimately leads to a cleaner mesh as shown in the following figure.
For AXIEM solver details see Solver Type. Matrix Entry Accuracy This setting controls the accuracy of the matrix entries. For more information see Matrix Entry Accuracy.
AWR Proprietary
AXIEM De-embed Ports The de-embedding option performs an additional post-processing step on the data to remove the effects of parasitics associated with the ports. For more information see De-embed Ports. Note that de-embedding can lead to causality issues, but it does not mean the solution is incorrect. For example, in the following structure, if the substrate height is large relative to the width of the line, the electrical length of the two lines connected by the corner can actually be shorter than the total electrical length of the two lines added together. The energy associated with the transmission line mode cuts the corner and the effective electrical length of just the corner can be negative. The de-embedded solution for the corner is non-causal, because it has negative electrical length, but it is the correct solution, because it correctly predicts the electrical length when each edge of the corner is connected to a transmission line. The solution for the corner only makes sense when viewed in the context of what it is connected to (a line-corner-line combination).
AWR Proprietary
AXIEM Tol (dB) The tolerance is a relative number (in dB) that controls the accuracy of the AFS solution. A lower tolerance setting requires fewer frequency points, but the accuracy of the solution might not be acceptable. Also, if the tolerance is too loose, the AFS result may have a "false convergence". If you adjust this option, 5 dB steps are recommended. During simulation, you can watch the Simulation status dialog box to see the status of AFS convergence. AFS must first simulate five frequencies; after these frequencies you can view a Status window that looks similar to the following figure.
This line includes the number of points out of the total grid points (frequencies specified for the AXIEM structure). You can then see the convergence error and brackets ([* * * *]). For AFS to converge, the convergence error must be less than the tolerance specified. Additionally, there are four checks for convergence that are specified in the brackets. When the individual checks are met, that entry in the brackets displays a letter instead of the * symbol. In this example, the last frequency looks similar to the following figure.
AWR Proprietary
AXIEM
The same information is stored with each AXIEM structure in the Simulation log so you can see the history of what AFS did after the simulation is complete. Max # sim pts The AFS algorithm always chooses its sampling points at requested frequency points, but you can use this option to limit the maximum number of frequency points chosen. For more information, see Max # sim pts.
AWR Proprietary
AXIEM
One cause of convergence issues is low frequency break down. Low frequency break down occurs at frequencies where the mesh elements are very small relative to a wavelength, so the frequency at which this occurs depends on the size of the structure relative to a wavelength. AXIEM uses specialized solvers that avoid the low frequency breakdown problem, but it is important that the correct solver is used. All of the Auto configure solver choices automatically choose the correct solver based on frequency and mesh element size. All of the "A" Iterative solvers are suitable for low frequency problems, as well as the Direct (low frequency) solver. At DC, low frequency solvers are the only viable option. For high frequency solvers, the conditioning of the problem worsens (which causes poor convergence) as the frequency is lowered, and at DC, the system is not solvable by the high frequency solvers. For low frequency solvers, the conditioning of the problem worsens as the frequency increases, so at very high frequencies, the low frequency solvers may encounter convergence issues. For a fairly broad range of frequencies that are not too high or too low, both solver types work well (for some problems, the low frequency solvers work well up to very high frequencies). It is important to note that the low frequency solvers are solving the same problem as the high frequency solvers, so there is no approximation involved with one or the other. The choice of the solver is driven by convergence issues (except at frequencies at or near DC, where only the low frequencies solvers are applicable). You can experiment with the different solvers to see how they perform on particular problems.
Geometry Related Causes
Some geometries lead to poorer conditioned problems than others. It is not always possible to predict which geometries will have convergence issues, but there are a few common situations that cause more difficulty for the Iterative solvers. One of these situations involves closely spaced conductors, such as a parallel plate capacitor with a very thin spacing between the plates. AXIEM has very robust preconditioners that often solve these problems without any issues, but the number of iterations might be significantly higher than in easier cases. Another related situation which can cause convergence issues is when relatively thin conductors are modeled with all surfaces (Model as zero thickness is off). This problem is very similar to the capacitor problem, because the top and bottom surface of the conductors is very close. The convergence issues for this situation are often worse than for a thin capacitor, likely because for a conductor modeled with thickness, there is a higher proportion of the problem that has very closely spaced surfaces. For this reason (and also because the number of unknowns is much higher), AWR recommends that conductors be modeled with zero thickness, unless the thickness of the conductors is large enough to have a significant effect on the solution (for many common geometries, the zero thickness approximation works very well). When the conductors are very thick, the negative effect on convergence is diminished, although it still requires significantly more unknowns. Another option for conductors that are not too thick is to model the thickness but exclude the top surface (see Mesh Features). This option can work well when the conductor is not too thick, but the performance of the circuit is very sensitive to precise modeling of edge coupling effects (such as in a filter or coupler). Enabling this option both improves convergence (by eliminating the closely spaced top surface), and reduces the number of unknowns. When using this option, you should experiment to see how it affects the problem types being analyzed.
AWR Proprietary
The solver choice can have a significant impact on convergence. As discussed previously, at DC or very low frequencies, only the low frequency solvers are applicable, but for other problems, you can try either low or high frequency solvers. The solvers that generally converge best are the Iterative A++ for low frequencies, and Iterative B for high frequencies, although the reverse may also provide the best results. There may be situations where other solvers work better as well, so if you encounter convergence issues you should try other solvers. For problems where convergence is not an issue, other solvers may be significantly faster (for example, Iterative A is usually faster on problems that converge well).
Preconditioner Size
Many of the Iterative solvers allow you to adjust the amount of information in the preconditioner. Having a larger preconditioner (more information), usually improves convergence, at the expense of longer preconditioner creation time and more memory usage. Problems with multiple ports require an iterative solution for each port, but the preconditoner only needs to be formulated once, so it is often advantageous to use a larger preconditioner when the structure has many ports. In this case, the preconditioner takes longer to create, but there is a time savings in the iterative solution for each port due to fewer iterations. Not all solvers implement variable size preconditioners though (Iterative A uses a diagonal preconditioner, so this setting has no effect when using this solver). The default Iterative solvers do implement variable size preconditioners (Iterative A++ and Iterative B).
Max Iterations
Increasing the maximum number of iterations can sometimes lead to convergence. The progress of the lower status bar in the Status window displays the error function value (in dB), so you can see how close the solver came to converging by noting how far to the right the status bar moves during the iterative solve step. Once the bar reaches 100%, the problem should have converged.
Subspace Size
Using a larger size can help convergence, at the expense of memory. Very large subspace sizes can consume a great deal of memory when used on large problems, so you should be careful not to make this setting too large for large problems. An upper limit of a few thousand is recommended. Each time the iteration count reaches the subspace size, the solver 'resets', which can cause stagnation in convergence. If you suspect this is occurring, try increasing the subspace size (if memory permits).
Convergence Tolerance
Usually, this setting does not have a large effect on convergence, as once the solution starts to converge, it usually converges very well to very high accuracy. Nevertheless, there might be situations where the status bar indicator shows that the problem nears convergence but never quite gets there. For these situations, try loosening the tolerance in steps of a factor of 10 to see when it converges. This setting can be set as loose as 0.01 with reasonable result accuracy. A convergence tolerance looser than 0.01 is generally not recommended.
AWR Proprietary
AXIEM Problem Specific Accuracy The accuracy required from AXIEM is very problem specific. Certain types of problems are inherently more sensitive to errors than others. For example, distributed filters (particularly ones with high Q resonators), are often very sensitive to the accuracy related settings. Parallel plate capacitors are also quite sensitive to accuracy settings, particularly when the gap between the plates is very small. At the other extreme, structures that represent interconnect routing, where coupling is more of a parasitic effect as opposed to a circuit component, are relatively insensitive to the accuracy settings. With a structure that is insensitive to the accuracy settings, you can significantly speed the simulation time and reduce the memory requirements by appropriately adjusting the settings. Compression Accuracy The compression level affects simulation time, accuracy, and memory usage. In general, you should set this to just enough accuracy to achieve the desired solution accuracy. Setting the compression accuracy higher than needed does not improve the accuracy, but it can have a dramatic effect on memory usage and simulation time, therefore it is important not to use more accuracy than needed. You should also be very careful when decreasing the accuracy, as the overall solution accuracy tends to degrade very quickly once it gets below the 'just enough' accuracy point. To provide a margin of safety, by default, the accuracy is set to a level about one step above the setting that provides just enough accuracy. For many problems, reducing the accuracy by one step has a minimal impact on accuracy, but you should verify this on the problem being simulated. Matrix Entry Accuracy (the default) works well for most problems, including those that are sensitive to accuracy issues. For all but the most sensitive problems (for example, a parallel plate capacitor with a very small gap between the plates), Medium- also works well, and is quite a bit faster. For structures such as interconnects that are not sensitive to the accuracy settings, you can often achieve good results using Low-.
Medium
Preconditioner Size The preconditioner size does not affect accuracy, but it affects performance. As discussed in the prior convergence section, it is often advantageous to use a larger preconditioner when the structure has many ports. The preconditioner takes longer to create, but there is time savings in the iterative solution for each port due to fewer iterations. In general, it is difficult to predict how changing the preconditioner size affects performance, as using a larger preconditioner increases the time spent creating the preconditioner, while typically decreasing the time spent in the Iterative solver. Whether this is a net gain or loss is problem-dependent, so you may need to experiment to optimize performance.
AWR Proprietary
AXIEM Passivity enforcement is controlled in the Options dialog box on the AXIEM tab. Right-click the AXIEM document in the Project Browser, choose Options to display the Options dialog box, click the AXIEM tab, and toggle on the Enforce Passivity option. See the section called Options Dialog Box: AXIEM Tab for details. The best way to check the passivity of your structure is to use the passive linear measurement. See the section called Passive: PASSIVE for details.
AWR Proprietary
NET-AN
8.6. NET-AN
The NET-AN tool from OEA is used to extract metal into equivalent RLCK netlists.
AWR Proprietary
NET-AN Viewing Parasitic Extraction Results Viewing the parasitic extraction results is best discussed using an example. Figure 8.28, Simple 2um x 5um Line Routed between Two Rect Pins shows a very simple 2um x 5um line on the lowest level metal of a generic silicon process (used for demonstration purposes only). Figure 8.28. Simple 2um x 5um Line Routed between Two Rect Pins
Viewing the Netlist After a parasitic extraction runs, you can view the resulting netlist from the Status widow. In this simple example, the Status window displays as shown in Figure 8.29, Status Window after Parasitic Extraction Runs. Figure 8.29. Status Window after Parasitic Extraction Runs
There is a line for the extracted netlist information included for the netlist link. If you click on the link, a new window opens with the netlist as shown in Figure 8.30, View of Extracted Netlist.
AWR Proprietary
You can also view the parasitic extracted element superimposed on the 3D view of the EM structure. Figure 8.31, 3D Layout of EM Structure with Extracted Elements Displayed shows this view with the simple line example. You can access this view by right-clicking the EM structure used for your parasitic extraction, and choosing Add Annotation. In the Add EM Structure Annotation dialog box, select Annotate > ERC as the Measurement Type and choose EXT_CKT3D as the Measurement. Add the measurement as shown in Figure 8.11, Add Annotation to Display the Circuit Representing the Extracted Document. There are several controls to help show only specific elements of the netlist. In this example, you can see all the elements. In more complex extracted networks, the display is too difficult to understand without pruning the data. Notice in the Add EM Structure Annotation dialog box, there is a Display values option. You can specify that each component display their Component Values, Component IDs, or Node Numbers. Figure 8.31, 3D Layout of EM Structure with Extracted Elements Displayed shows node numbers that correspond with the netlist you can view, as shown in the previous section.
AWR Proprietary
AWR Proprietary
AWR Proprietary
The remaining APLAC simulator settings are located on the Options > Default Circuit Options menu and the APLAC tab.
For each option, when you select it, the lower window of the dialog will display some additional information about the option. Always begin with default settings, which are the most commonly successful ones. If you copy an existing project as a starting point for a new one, the new project may "inherit" simulator settings that are inappropriate for your new design(s).
AWR Proprietary
A.1.1. DC Analysis
DC convergence problems are very rare as various approaches are taken to achieve DC convergence. 1. One common problem is when using s-parameters for models that do not have a DC point defined and the simulator must extrapolate to DC can cause problems. You can try changing the extrapolation settings. Select Options > Project Options and select the Interpolation/Passivity tab. Try using Rational Function as the interpolation method or switch between Polar and Cartesian.
2. You can also try switching to the alternate sparse matrix solver by setting DCMatrixSolver to Sparse1.3.
AWR Proprietary
3. Use a power sweep. Instead of using power levels that force the circuit into strongly nonlinear modes of operation with a port set to a single power, use a port that sweeps power from a small signal region of operation into the strongly nonlinear region. 4. Change the Oversample factor to 4 for all tones used in the simulation.
AWR Proprietary
5. Change the U parameter. Try increasing it (U=10 ... 100) or decreasing (U=0.5) to see if it helps.
AWR Proprietary
7. Try using transient assisted harmonic balance by setting the TransientAssistedHB option to True.
8. Answer a few simple questions that might help understand why the simulator isn't converging. a. Are your models valid at the highest frequency harmonic balance will need to simulate, so at the highest tone product specified by your number of tones and highest tone order. One way to tell is to make a plot of PHARM of a simple circuit (maybe just a resistor) to see the highest frequency the simulator needs. b. If you have a license for it, use APLAC Transient with enough periods to reach steady state to see if the answers look reasonable in that simulator. If the answers don't look good, this could be a sign there is a model problem.
AWR Proprietary
The remaining APLAC simulator settings are located on the Options > Default Circuit Options menu and the APLAC tab.
For each option, when you select it, the lower window of the dialog will display some additional information about the option. Always begin with default settings, which are the most commonly successful ones. If you copy an existing project as a starting point for a new one, the new project may "inherit" simulator settings that are inappropriate for your new design(s).
AWR Proprietary
A.2.1. DC Analysis
DC convergence problems are very rare as various approaches are taken to achieve DC convergence. 1. One common problem is when using s-parameters for models that do not have a DC point defined and the simulator must extrapolate to DC can cause problems. You can try changing the extrapolation settings. Select Options > Project Options and select the Interpolation/Passivity tab. Try using Rational Function as the interpolation method or switch between Polar and Cartesian.
2. You can also try switching to the alternate sparse matrix solver by setting DCMatrixSolver to Sparse1.3.
AWR Proprietary
2. Change the truncation error method by changing the TRUNCERRMODE to either Voltage or Charge.
3. Change the integration method by changing the IntegrationMethod option to either Euler or Gear
AWR Proprietary
APLAC Transient Simulator Convergence Guide 4. Change the U parameter. Try increasing it (U=10 ... 100) or decreasing (U=0.5) to see if it helps.
5. Try with smaller or larger time steps by changing Step in the Transient tab.
6. Try with fixed time steps. The fixed step size can be specified in the Free text field with TMIN, otherwise default TMIN is used (from Step in Transient tab).
7. Answer a few simple questions that might help understand why the simulator isn't converging.
AWR Proprietary
APLAC Transient Simulator Convergence Guide a. Are there potentially bad component values (e.g. unrealistically large capacitors or inductors)? For example, for a DC block, you could use a very big capacitor (e.g. 1 mF) for harmonic balance and will simulate fine. For transient, this big capacitor causes problems. b. Are there short transmission-lines in the circuit that limit the time step? Can you replace these with RLC networks? c. Are there huge voltages in your design, if so, might need to increase U d. What does HB say about the circuit? If the answers don't look good, this could be a sign there is a model problem.
AWR Proprietary
The following is a generic procedure for finding convergence problems. These are the basic guidelines based on experience at AWR. If you find a different technique and want to share, please send an email to support@awrcorp.com. Also, in an effort to make our simulators more robust, if you have convergence problems that you were able to fix, we would like to have these examples and a description of the solution. If you were not able to fix your convergence problem, please send in the project to support.
AWR Proprietary
2. Increase the number of iterations: In Iteration Settings increase the Max number of iterations to 100 or 200 and see if that helps. For strongly nonlinear circuits this may need to set higher. Another way of increasing the number of iterations is by increasing the number of sweep steps. For example, a power sweep from -20 db to 20 db in steps of 1 db is likely to converge than that with steps of 5 db.
3. Increase the number of harmonics: If the circuit being analyzed is strongly nonlinear, it is important, both for accuracy and convergence, to specify a sufficient number of frequencies in the simulation. Making sure that this is the case in the first step in the troubleshooting of convergence problems. 4. Adding conductance across nonlinear elements: Add a small conductance across the nonlinear elements (Circuit Options > Advanced > Convergence aids). Verify your results are correct.
AWR Proprietary
AWR Proprietary
HB Simulator Convergence Guide 6. Using predefined set of convergence settings: In many cases selecting some of these predefined convergence settings along with tolerance settings help the circuit to converge. If the circuit always needs to source step, you can speed up the simulation by selecting Start with source stepping. This option can be accessed by clicking on Configuration Wizard in the Harmonic Balance tab.
7. Linearization: Select any of "Linearization" method along with a degree of Tolerance to speed up the convergence.
8. Changing the simulation accuracy: The simulation terminates when the absolute current error at each nonlinear element and at each harmonic is below Abs. error, or when the Rel. error criterion is satisfied. The default value of Abs. error is set to 1e-9 and sometimes this number is very low for highly nonlinear circuits. Increase this number to something like 1e-7 while keeping Rel. error as it is.
AWR Proprietary
AWR Proprietary
AWR Proprietary
The stability of the above system can be determined by viewing the loop in the above signal flow graph as a feedback loop. This allows the Nyquist stability criteria to be applied to the open loop frequency domain response which is given by G=-12
(A.1)
The Nyquist stability criteria states that if the open loop function G, when plotted on the complex plane encircles the -1 point in a clockwise sense, then the closed loop system will be unstable. A polar plot of G below shows an unstable system (G encircles the -1 point in a clockwise sense).
The STAB_GPN measurement in Microwave Office/Analog Office allows the function G to be plotted on a polar graph for inspection of the stability. When plotting STAB_GPN, the frequency should be swept over the entire range where instability could occur. An approximate simplification of the Nyquist stability criteria allows the computation of a single stability index that can be plotted as a single real number over frequency. The use of a real stability index makes it easier to include internal stability as an optimization goal. The meaning of the stability index is indicated in the following diagram.
AWR Proprietary
Internal Stability Analysis Methods The stability index is taken to be the negative of the component of G along the real axis. A value of the stability index greater than 1 is then used to indicate possible instability. The term "possible" is used because it is possible for the stability index to be greater than one without an encirclement of the -1 point as indicated below.
Although the stability index may indicate instability when the device is actually stable, it is still a very useful measure in practice since it will not predict that the circuit is stable when the Nyquist criteria indicates that the circuit is not stable (it is conservative measure). Usually if the stability index predicts that a stable circuit is not stable, then margin of stability for the circuit is not very high (minor changes in the response could cause instability). Also, if the stability index predicts an instability, then the more rigorous Nyquist criteria can be used to verify the instability. The stability index indicated here is the same as the stability index used in [1]. The STAB_GP measurement in Microwave Office/Analog Office can be used to plot this stability index (STAB_GP <1 indicates stability)
The GPROBE element is used to measure the internal reflection coefficients at the reference plane indicated. In the circuit above, the measurement of Gamma 1 is performed by exciting port 2 and sampling the voltage and current using the GPROBE element. In the same way, Gamma 2 is measured by exciting port 1 and sampling the current and voltage at the GPROBE element (the reflection coefficient looking into a source cannot be measured, so the excitation used to
AWR Proprietary
Internal Stability Analysis Methods measure each gamma must be on the "other side" of the reference plane where gamma is to be measured. The stability measurements STAB_GP,STAB_GPN and the internal gamma measurements GAM1_GP and GAM2_GP require that the excitation ports be specified as part of the measurement. The ports connected to the voltage and current sampling terminals of the GPROBE element must also be specified for these measurements (the measurement requires that ports be placed on the V and I nodes of the GPROBE element).
AWR Proprietary
AWR Proprietary
Antenna Analysis Methods Since the EM simulator solves for the fields inside a conductive box, several assumptions are made that allow for the computation of the radiation pattern. One of these assumptions is that the side-walls of the enclosure are far enough away that they do not have a significant effect on the electric field on the top boundary of the enclosure. It is always advisable to view the electric field on the top of the boundary when working with antennas. This allows a quick check on the validity of this assumption. If the electric field has a very low magnitude near the edges of the enclosure, then the assumption is valid. If the electric field is relatively high near the edges, then the fields are interacting with the side-walls and the assumption is not valid.
AWR Proprietary
Antenna Analysis Methods Figure A.1. 3D View of Coordinate System Used For Antenna Measurements
The antenna system coordinate system is in contrast to the coordinate system used to draw structures in MWO/AO. The drawing coordinate system is a Left Hand Coordinate system with its origin located in the upper left-hand corner of the MWO/AO enclosure as viewed in a two- dimensional view of an EM simulation. Figure A.2, 2D View of Structure Showing Antenna and Drawing Coordinates contrasts these two coordinate system in a two dimensional view. Figure A.2. 2D View of Structure Showing Antenna and Drawing Coordinates
Physically, an antenna radiate energy at all frequencies in all directions simultaneously. In order to visualize the radiation, measurements which fix all but one of the independent parameters (Freq, and ) must be implemented to allow a two-dimensional plot. Further, the phase and magnitude of the radiation is effected by the polarization of antenna used to measure the antenna under test. For this reason, three basic types of antenna measurements can be made which fix all but one of the independent axes. Further, each of these measurements can be performed for five common polarizations.
AWR Proprietary
Antenna Analysis Methods Conic Cut (CON): Also known as a Phi or Azimuth Cut, this antenna measurement type fixes the values of Frequency and to user specified values. Phi is then swept to cover an entire sweep of the upper hemisphere (-180 to 180 degs or - to rads). An example of a Conic Cut is shown in Figure A.4, Example of a Conic Cut. Swept Frequency (SF): This antenna measurement type fixes the values of and to user specified values. Frequency is then swept over a user defined range.
AWR Proprietary
AWR Proprietary
Antenna Analysis Methods Infinite Waveguide: Horizon Radiation Limitations A better approach is to sample the fields very close to the antenna surface without resistively loading the structure with an impedance boundary condition. You can do so by replacing the surface impedance boundary condition with an infinite waveguide termination. This type of boundary condition will not resistively load the near field of the antenna. Since we are sampling the electric fields very close to the antenna, they will have minimal corruption due to sidewall locations. Unfortunately, antennas that direct significant amounts of energy toward the horizon will still have significant degradation of the sampled electric field due to sidewall reflections. References [1] C. A. Balanis, Antenna Theory Analysis and Design (2nd Edition), John Wiley & Sons, Inc.,1997
AWR Proprietary
AWR Proprietary
AWR Proprietary
Index
, 21, 21
A
AC analysis, 51 AC noise analysis, 52 ACE simulation, 865 Advanced Frequency Sweep (AFS), 8101 AXIEM, 8174 AFS, 8101 algorithm, 8101 Algorithm de-embedding, 892 default de-embedding, 893 fast de-embedding, 880, 893 standard de-embedding, 880 Analysis AC, 51 AC noise, 52 conversion matrix, 638 DC, 31 EM, 81 frequency domain, 639 linear, 42 linear harmonic balance, 647 linear noise, 42 noise, 633 nonlinear harmonic balance, 62 nonlinear noise, 632 nonlinear oscillator, 639 phase noise, 646 swept parameter, 26 transient, 71 Analysis methods antenna, A21 stability, A17 Animation current, 850 frequency, 852 Annotation mesh, 843 Antenna analysis method, A21 APLAC SCRIPT blocks, 257 scripted, 257 Artwork copying into EM, 831 Automated Circuit Extraction, 859 AXIEM, 8114
64-bit, 8115 accuracy/performance issues, 8178 Advanced Frequency Sweep (AFS), 8174 configuring, 8176 convergence issues, 8177 de-embedding, 8174 enable AFS, 8174 enclosure settings, 8153 frequency setup, 8115 internal ports, 8120 iterative solver options, 8176 licensing, 8114 matrix entry accuracy, 8173 max number simulation points, 8176 mesh, 8147 mesh options, 8150 Passivity Enforcement, 8179 port accuracy, 8131 port de-embedding, 8133 port editing, 8129 port types, 8121 simulation, 8115 simulation status, 8116 solver options, 8173 solvers, 8118, 8173 tolerance (dB), 8175 viewing mesh, 8116
B
Behavioral filter models, 77 Boundaries enclosure, 855 lossy, 895, 899
C
Causal models, 75 Circuit design; linear, 42 Conductor drawing, 825 meshing, 882 Constraining parameters, 228 Conversion matrix analysis, 638 Coplanar waveguide, 8100 Current animation, 850 calculation of nonlinear, 66 distribution, 850
AWR Proprietary
Index
D
DC analysis, 31 De-embedding algorithm, 892 automatic, 879 AXIEM, 8174 default algorithm, 880, 893 fast algorithm, 880, 893 via ports, 881 Dialog box Project Options Frequencies tab, 835 Dielectric layers, 855 loss, 899 Direct (Out-of-Core) Matrix Solver, 888 Disabling EM structures, 840 Divergent transient simulations, 713 Documentation; AWR, 12 Drawing conductors, 825, 828 vias, 827, 829 DXF; importing as EM structure, 837
E
E-field distribution, 853 visualization, 853 Electromagnetic solver, 873, 8114 EM annotations, 840 optimization, 817 solver, 873, 883, 8114 tuning, 817 yield analysis, 817 EM structures 3D layout, 834 adding to schematic, 840 annotations, 840 boundaries, 855 conductor editing, 832 creating, 821 cut planes, 840 disabling, 840 drawing, 822 editing, 822 exporting, 837 forcing resimulation, 840
importing, 81, 836 importing GDSII/DXF, 837 link, 836 mesh, 836, 843 node, 81 ports, 834 setting frequencies, 835 Stackup, 822 Stackup/enclosure properties, 854 substrate layers, 855 supported file types, 837 EMSight, 873 adding ports, 874 adding via ports, 875 cell size definition, 8103 dimension, 8105 frequency, 8104 structure, 8105 de-embedding automatic, 879 default algorithm, 880, 893 fast algorithm, 880, 893 solution, 892 via ports, 881 direct solvers, 888 enclosure, 873 frequency domain solver, 884 internal ports, 875 minimizing solution time, 894, 895 cache usage, 895 dielectric layers, 894 enclosure divisions, 894 filling moment matrices, 895 lossy boundaries, 895 lossy dielectric, 895 metal layers and vias, 895 moment table creation, 894 solver selection, 889 moment tables, 884 problem domain, 873 simulation speed tips, 8113 solution process, 884 adding conductors, 886 creating moment matrix, 887 creating structure, 885 defining layers, 885 defining ports, 886 meshing geometry, 886 solving moment matrix, 887 solution time, 894 solver options, 883
AWR Proprietary
Index structures; partitioning, 8107 Enclosure Size, 822 Exporting EM structures, 837 EXTRACT, 813, 862, 865, 8181 Extraction, 82 ACE, 859 advanced topics, 869 control element, 862 EM frequencies, 813 hierarchy, 816 parasitic, 8181 process, 860 set up, 859
L
Linear analysis, 42 circuit design, 42 noise analysis, 42 solver, 42 Link to EM structure, 836 Lossless enclosure layers, 895 Lossy boundaries, 895, 899 Lumped models, 75, 78
M
Markers; parameter, 218 Measurements choosing simulators, 24 nonlinear, 623 notation, 218 Measuring power, 624 voltage, 624 Meshing conductor, 882 geometry, 886 Modeling loss, 898 vias, 896 Models behavioral filter, 77 causal, 75 lumped, 75, 78 piecewise voltage, 77 transmission line, 76 Moment matrix, 887 Moment tables, 884 cache, 895 Green's functions, 894
F
Frequency domain analysis, 639 sweep control, 26
G
GDSII importing as EM structure, 837 Goals; optimizer, 229 Graph Properties dialog box Yield Data Tab, 244 Green's functions, 894
H
Harmonic balance, 68 simulation, 647 simulation>, 62 HB Convergence Guide, A12 APLAC, A2 Help context sensitive, 14 online, 14 HSPICE, 71, 712 convergence, 713 options, 713
N
NET-AN, 8181 NLNOISE, 634 Nodal admittance matrix method, 42 Noise analysis, 633 simulations, 634 Noise analysis AC, 52 linear, 42 nonlinear, 632 phase, 646 Nonlinear
I
Iterative matrix solvers, 889
K
Kirchoff's laws, 67
AWR Proprietary
Index device currents, 66 measurements, 623 power, 624 voltage and current, 624 noise analysis, 632 oscillator analysis, 639 Nonlinear harmonic balance analysis accuracy, 64 analysis frequency, 615 convergence, 64, 67, 69 current calculation, 66 examples, 616 iteration settings, 69 number of harmonics, 68 options, 68 significant frequencies, 64 simulation setup, 615 single-tone simulation setup, 615 sources, 616 specifying accuracy, 67 speed, 64 three-tone simulation setup, 615 two-tone simulation setup, 615 Notation; measurement, 218 Numerical convolution, 78 tuning, 224 Parasitic extraction, 8181 Phase noise analysis, 646 Pointer optimizer, 234, 236 Ports AXIEM, 8121 use recommendations, 8144 Power sweep control, 29 Project Browser Circuit Schematics, 223 Project Options dialog box Frequencies tab, 835
R
Rational approximation, 78, 711 Resimulation; forcing, 840 Resonance, 898
S
S-parameter, 852, 875, 892, 8113 S-parameter files, 227 Schematics adding EM structures, 840 SCRIPT blocks, 257 Search methods downhill simplex, 235 hybrid methods, 235 linear methods, 235 linear simplex, 234 sequential quadratic programming, 235 Simulation AXIEM, 8115 divergent transient, 713, 713 filters, 249 multi-rate harmonic balance, 626 tips, 8113 use of temperature in, A27 Single-tone analysis, 615 Solver AXIEM, 8118, 8173 default, 888 direct, 888 direct (out-of-core) matrix, 888 electromagnetic, 873, 8114 frequency domain, 884 iterative matrix, 889 Method of Moments, 8114 Sonnet, 883 Sources nonlinear analysis, 616
O
Online Help, 14 Optimization, 223, 225 AWRDE optimizer error function, 225 AWRDE optimizer L factor, 225 editing goals, 229 element parameter constraints, 228 guidelines, 226 managing goals, 229 performing, 231 pointer optimizer, 234 setting goals, 229 tips, 236 training, 237 Optimizer Goals node, 229 Oscillator simulations, 641 tuning, 645
P
Parameter constraining, 228 marker display, 218 Parameter values assigning random values, 241
AWR Proprietary
Index Spectre, 712 Stability analysis method, A17 Stackup and enclosures, 854 global, 822 STACKUP, 861 Structures; partitioning, 8107 Substrate layers; drawing, 855 Sweep control frequency, 26 power, 29 types, 26 variable, 211 voltage/current, 211 Sweep point selecting, 625 vs. simulation point, 220 Sweeps ordering, 212 Swept parameter analysis, 26 parameter data display, 215 variables, 214 Switch Lists, 249 Switch Views, 249 SWPVAR, 211, 212 Typographical conventions, 13
V
Variable Browser, 223 Variables assigning statistical properties, 241 sweep control, 211 tuner, 224 Via ports; de-embedding, 881 Vias drawing, 827 modeling, 896 avoiding resonances, 898 coplanar waveguide, 8100 losses, 898 thick conductors, 899 Voltage/current sweep control, 211
Y
Yield analysis, 223, 240 goals, 241 performance variation, 243, 244 performing, 242 results analysis, 244 statistical properties, 241 yield optimization, 246
T
Temperature use in simulations, A27 Three-tone analysis, 615 Time step, 713 control, 711 Trained optimizer, 237 Transient analysis, 72 measurements, 72 models, 75 S-block, 79 simulation, 71 simulation data, 72 sources, 74 Transient Convergence Guide APLAC, A7 Transmission line models, 76 Tuner; variable, 224 Tuning, 223 oscillator, 645 parameter values, 224 probe, 645 Two-tone analysis, 615
AWR Proprietary
Index
AWR Proprietary