Sonnet Users Guide

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 440 [warning: Documents this large are best viewed by clicking the View PDF Link!]

At Sonnet, we've been developing 3D planar high frequency EM
software since 1983, and our software has earned a solid
reputation as the world's most accurate commercial planar EM
analysis package for single and multi-layer planar circuits, packages
and antennas.
Sonnet Software Inc., founded by Dr. James C. Rautio, is a private
company, entirely dedicated to the development of commercial EM
software. We take great pride in providing quality technical
support for our products with timely response--which we believe to
be very important for high-end technical software products.
Sonnet is based in Syracuse, NY, USA with representatives across
the globe.
SONNET USERS GUIDE
Published: May 2018
Release 16
Sonnet Software, Inc.
126 N. Salina Street
Syracuse, NY 13202
Phone: (315) 453-3096
Fax: (315) 451-1694
www.sonnetsoftware.com
Copyright 1989,1991,1993, 1995-2018 Sonnet Software, Inc. All Rights Reserved
Registration numbers: TX 2-723-907, TX 2-760-739
Rev 16.56
Copyright Notice
Reproduction of this document in whole or in part, without the prior express written authorization of
Sonnet Software, Inc. is prohibited. Documentation and all authorized copies of documentation must
remain solely in the possession of the customer at all times, and must remain at the software designated
site. The customer shall not, under any circumstances, provide the documentation to any third party
without prior written approval from Sonnet Software, Inc. This publication is subject to change at any
time and without notice. Any suggestions for improvements in this publication or in the software it
describes are welcome.
Trademarks
The program names, xgeom, emstatus, emvu, patvu, dxfgeo, ebridge, emgraph, gds, cvbridge,
emserver, emclient, sonntcds, and sonntawr, sonntawr64, Blink, Co-calibrated, Lite, LitePlus,
Level2 Basic, Level2 Silver, and Level3 Gold are trademarks of Sonnet Software, Inc.
Sonnet®, em®, and emCluster® are registered trademarks of Sonnet Software, Inc.
Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10 and Internet Explorer® are U.S.
registered trademarks of Microsoft Corporation.
AutoCAD and Drawing Interchange file (DXF) are trademarks of Auto Desk, Inc.
Cadence® and Virtuoso® are registered trademarks of Cadence Design Systems, Inc.
GLOBALFOUNDRIES® is a registered trademark of GlobalFoundries, Inc.
Agilent, ADS, and Touchstone are trademarks of Keysight Technologies.
NI AWR and Microwave Office are registered trademarks and EM Socket is a trademark of National
Instruments, Inc.
HSPICE is a registered trademark of Synopsys, Inc.
GDSII is a trademark of Calma Company.
Flexera Software, Flexlm, FlexNet, InstallShield, are trademarks of Flexera Software, Inc. and/or
InstallShield Co.Inc. in the United States of America and/or other countries.
OSF/Motif is a trademark of the Open Software Foundation.
X Window System is a trademark of The Open Group
Linux® is a registered trademark of Linus Torvalds.
Red Hat® is a registered trademark of Red Hat, Inc.
SUSE®, openSUSE® and SLES® are registered trademarks of SUSE LLC.
OpenGL® is a registered trademark owned by Silicon Graphics, Inc.
MATLAB is a registered trademark of The MathWorks, Inc. in the United States and/or other countries.
Acrobat® is a registered trademark of Adobe Systems Incorporated.
Xpeedic® and IRIS® are registered trademarks of Xpeedic Technology.
ODB++® is a registered trademark of Mentor Graphics Corporation.
Modelithics® is a registered trademark of Modelithics, Inc.
Table of Contents
5
TABLE OF CONTENTS . . . . . . . . . . . . . . . . . . . . . . . . 5
1INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
The Sonnet Design Suite. . . . . . . . . . . . . . . . . . . . . . . . . 15
The Analysis Engine, em . . . . . . . . . . . . . . . . . . . . . . . . . 20
Em Origins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2WHATS NEW IN SONNET SUITES RELEASE 16. . . . . . . . . . . . . 23
3S
UBSECTIONING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Metal Fill. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Tips for Selecting A Good Cell Size . . . . . . . . . . . . . . . . . . 29
Viewing the Subsections. . . . . . . . . . . . . . . . . . . . . . . . . 31
Using the Speed/Memory Control. . . . . . . . . . . . . . . . . . . 32
Changing the Subsectioning of a Polygon . . . . . . . . . . . . . . 35
Default Subsectioning of a Polygon . . . . . . . . . . . . . . . 35
X Min and Y Min with Edge Mesh Off . . . . . . . . . . . . . . 37
X Min and Y Min with Edge Mesh On. . . . . . . . . . . . . . . 39
Using X Max and Y Max . . . . . . . . . . . . . . . . . . . . . . . 40
Setting the Maximum Subsection Size Parameter. . . . . . . . . 41
Defining the Subsectioning Frequency. . . . . . . . . . . . . . . . 41
Diagonal Fill Subsectioning . . . . . . . . . . . . . . . . . . . . . . . 42
Conformal Mesh Subsectioning. . . . . . . . . . . . . . . . . . . . . 43
Conformal Mesh Subsectioning Control. . . . . . . . . . . . . 45
4METALIZATION AND DIELECTRIC LAYER LOSS. . . . . . . . . . . . . . 47
Planar Metalization Loss. . . . . . . . . . . . . . . . . . . . . . . . . 48
Sonnet’s Loss Model for Planar Metalization . . . . . . . . . 48
Problems In Determining Planar Metal Loss. . . . . . . . . . 49
Determining Good Input Values . . . . . . . . . . . . . . . . . 50
Creating Planar Metal Types . . . . . . . . . . . . . . . . . . . 50
Via Metalization Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Creating Via Metal Types. . . . . . . . . . . . . . . . . . . . . . 59
Metal Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Dielectric Layer Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
TABLE OF CONTENTS
Sonnet User’s Guide
6
Dielectric Layer Parameters . . . . . . . . . . . . . . . . . . . 66
Frequency Dependent Loss . . . . . . . . . . . . . . . . . . . . 68
How to Create a New Dielectric Layer. . . . . . . . . . . . . 69
Dielectric Libraries . . . . . . . . . . . . . . . . . . . . . . . . . 69
5PORTS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Port Type Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Port Normalizing Impedances . . . . . . . . . . . . . . . . . . . . . 73
Changing Port Impedance. . . . . . . . . . . . . . . . . . . . . 74
Special Port Numbering . . . . . . . . . . . . . . . . . . . . . . . . . 75
Ports with Duplicate Numbers . . . . . . . . . . . . . . . . . . 75
Ports with Negative Numbers . . . . . . . . . . . . . . . . . . 76
Using Port Number Zero for Ground Connections. . . . . . 77
Changing Port Numbering . . . . . . . . . . . . . . . . . . . . . 78
Renumbering All Ports . . . . . . . . . . . . . . . . . . . . . . . 79
Port Placement with Symmetry On . . . . . . . . . . . . . . . . . 79
Independent Reference Planes and Diagonal Ports . . . . . . . 80
Applying the Diagonal Port Feature to a Port . . . . . . . . 81
Diagonal Port Feature Limitations . . . . . . . . . . . . . . . 87
Standard Box-wall Port . . . . . . . . . . . . . . . . . . . . . . . . . 87
Adding Box-wall Ports . . . . . . . . . . . . . . . . . . . . . . . 88
Ref. Planes and Cal. Lengths for Box-wall Ports . . . . . . 88
Co-calibrated Internal Ports . . . . . . . . . . . . . . . . . . . . . . 89
Calibration Group Properties. . . . . . . . . . . . . . . . . . . 89
Adding Co-calibrated Ports . . . . . . . . . . . . . . . . . . . . 93
Rules for Co-Calibrated Ports . . . . . . . . . . . . . . . . . . 94
Ref. Planes and Cal. Lengths for Co-calibrated Ports . . . 97
Use in Components . . . . . . . . . . . . . . . . . . . . . . . . . 97
Via Ports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Adding Via Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Automatic-Grounded Ports. . . . . . . . . . . . . . . . . . . . . . . 99
Special Considerations for Auto-Grounded Ports . . . . . 100
Adding Auto-grounded Ports . . . . . . . . . . . . . . . . . . 101
Ref. Plane and Cal. Length for Autogrounded Ports . . . 101
Ungrounded Internal Ports . . . . . . . . . . . . . . . . . . . . . . 101
6DE-EMBEDDING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Table of Contents
7
Port Discontinuities . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Shifting Reference Planes. . . . . . . . . . . . . . . . . . . . . . . 106
Single Feed Line . . . . . . . . . . . . . . . . . . . . . . . . . . 107
A Common Misconception . . . . . . . . . . . . . . . . . . . . 108
Rules for Reference Planes . . . . . . . . . . . . . . . . . . . . . . 109
Feed Lines Must Be Transmission Lines. . . . . . . . . . . . 109
De-embedding Without Reference Planes. . . . . . . . . . 110
Short Reference Planes for Boxwall Ports. . . . . . . . . . 110
Reference Planes Longer than the Feedline . . . . . . . . 112
Calibration Standards. . . . . . . . . . . . . . . . . . . . . . . . . . 114
Modifying Calibration Standard Lengths . . . . . . . . . . . 118
Coupled Transmission Lines. . . . . . . . . . . . . . . . . . . . . . 120
Shared reference planes . . . . . . . . . . . . . . . . . . . . . 121
Independent reference planes . . . . . . . . . . . . . . . . . 122
De-embedded Output Format . . . . . . . . . . . . . . . . . . . . 125
De-embedding Codes . . . . . . . . . . . . . . . . . . . . . . . 126
Plotting Z0 and Eeff. . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Calculating Z0 and Eeff for Boxwall Ports . . . . . . . . . . 126
Lengths at Multiples of a Half-Wavelength . . . . . . . . . 129
Lengths Much Greater than One Wavelength. . . . . . . . 129
Single Transmission Line . . . . . . . . . . . . . . . . . . . . . 130
Coupled Transmission Lines . . . . . . . . . . . . . . . . . . . 134
7COMPONENTS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Component Assistant . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Anatomy of a Component . . . . . . . . . . . . . . . . . . . . . . . 139
Component Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Data File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Ideal Component . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Ports Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Sonnet Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
User Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Component Properties . . . . . . . . . . . . . . . . . . . . . . . . . 143
Ground Node Connection. . . . . . . . . . . . . . . . . . . . . 143
Terminal Width . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Reference Planes. . . . . . . . . . . . . . . . . . . . . . . . . . 148
Sonnet User’s Guide
8
Calibration Lengths . . . . . . . . . . . . . . . . . . . . . . . . 148
Physical Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Rules for Using Components . . . . . . . . . . . . . . . . . . . . . 149
Analysis of a Component . . . . . . . . . . . . . . . . . . . . . . . 152
Data File Frequencies . . . . . . . . . . . . . . . . . . . . . . 152
Rerunning an Analysis . . . . . . . . . . . . . . . . . . . . . . 153
8ADAPTIVE BAND SYNTHESIS (ABS) . . . . . . . . . . . . . . . . . . 155
DC Point Extrapolation . . . . . . . . . . . . . . . . . . . . . . . . 156
ABS Resolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Q-Factor Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Enhanced Resonance Detection. . . . . . . . . . . . . . . . . . . 157
Running an Adaptive Sweep . . . . . . . . . . . . . . . . . . . . . 157
ABS Caching Level . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Multiple ABS Sweeps and Subsectioning. . . . . . . . . . . 159
Multi-Sweep Caching Scenarios . . . . . . . . . . . . . . . . 160
Find Minimum and Find Maximum . . . . . . . . . . . . . . . . . 162
Parameter Sweep. . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Analysis Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Multiple Box Resonances . . . . . . . . . . . . . . . . . . . . 165
De-embedding . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Transmission Line Parameters . . . . . . . . . . . . . . . . . 166
Current Density Data . . . . . . . . . . . . . . . . . . . . . . . 166
Ripple in ABS S-Parameters. . . . . . . . . . . . . . . . . . . 166
Output Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Viewing the Adaptive Response. . . . . . . . . . . . . . . . . . . 167
ABS Preview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
9PARAMETERIZING YOUR PROJECT . . . . . . . . . . . . . . . . . . . 171
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
How to Create a Variable . . . . . . . . . . . . . . . . . . . . 173
Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Dependent Variables . . . . . . . . . . . . . . . . . . . . . . . 176
Dimension Parameters. . . . . . . . . . . . . . . . . . . . . . . . . 177
Anchored Dimension Parameters . . . . . . . . . . . . . . . 179
Symmetrical Dimension Parameters . . . . . . . . . . . . . 180
Radial Dimension Parameters . . . . . . . . . . . . . . . . . 185
Reference Planes . . . . . . . . . . . . . . . . . . . . . . . . . 187
Table of Contents
9
Dependent Dimension Parameters. . . . . . . . . . . . . . . 187
Circular Dependencies in Parameters . . . . . . . . . . . . 188
Parameter Sweep . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
10 PARAMETER SWEEP AND OPTIMIZATION TUTORIAL. . . . . . . . . . 197
Setting Up Dimension Parameters. . . . . . . . . . . . . . . . . . 198
Anchored Parameters . . . . . . . . . . . . . . . . . . . . . . . 198
Symmetric Parameters . . . . . . . . . . . . . . . . . . . . . . 203
Parameter Sweep . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Setting Up a Parameter Sweep. . . . . . . . . . . . . . . . . 207
Executing the Parameter Sweep. . . . . . . . . . . . . . . . 210
Observing the Parameter Sweep Data . . . . . . . . . . . . 210
Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Entering New Nominal Values. . . . . . . . . . . . . . . . . . 214
Setting Up an Optimization . . . . . . . . . . . . . . . . . . . 214
Running an Optimization. . . . . . . . . . . . . . . . . . . . . 219
Observing your Optimization Data. . . . . . . . . . . . . . . 220
Accepting the Optimized Values. . . . . . . . . . . . . . . . . . . 223
11 CONFORMAL MESH. . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Use Conformal Meshing for Feed Lines, Not Patches. . . 229
Applying Conformal Meshing . . . . . . . . . . . . . . . . . . . . . 229
Conformal Meshing Rules . . . . . . . . . . . . . . . . . . . . . . . 231
Single Precision Option . . . . . . . . . . . . . . . . . . . . . . 233
Using Conformal Meshing Effectively. . . . . . . . . . . . . . . . 233
Use Conformal Meshing for Non-Manhattan Polygons . . 233
Boundaries Should Be Vertical or Horizontal . . . . . . . . 235
Cell Size and Processing Time . . . . . . . . . . . . . . . . . 235
Current Density Viewing. . . . . . . . . . . . . . . . . . . . . . . . 236
12 NETLIST PROJECT ANALYSIS . . . . . . . . . . . . . . . . . . . . . . 239
Networks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Example of Node Assignments in a Complex Circuit . . . 241
Creating a Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Netlist Example Files . . . . . . . . . . . . . . . . . . . . . . . 244
Cascading S-, Y- and Z-Parameter Data Files . . . . . . . . . . 245
Sonnet User’s Guide
10
A Network File with Geometry Project . . . . . . . . . . . . . . 246
Inserting Modeled Elements into a Geometry. . . . . . . . . . 249
Using Ungrounded-Internal Ports . . . . . . . . . . . . . . . 252
13 CIRCUIT SUBDIVISION . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Circuit Subdivision in Sonnet . . . . . . . . . . . . . . . . . . . . 257
Choosing Subdivision Line Placement . . . . . . . . . . . . . . . 260
Good and Bad Placements of Subdivision Lines . . . . . . 261
Subdivision Line Orientation . . . . . . . . . . . . . . . . . . 265
Setting Up Circuit Properties . . . . . . . . . . . . . . . . . . . . 267
Setting Up the Coarse Step Size Frequency Sweep. . . . 268
Subdividing Your Circuit . . . . . . . . . . . . . . . . . . . . . . . 269
Analyzing Your Subdivided Circuit . . . . . . . . . . . . . . . . . 269
14 CIRCUIT SUBDIVISION TUTORIAL . . . . . . . . . . . . . . . . . . . . 271
Obtaining the Example File . . . . . . . . . . . . . . . . . . . . . 272
Adding the Subdivision Lines. . . . . . . . . . . . . . . . . . . . . 272
Setting Up Circuit Properties . . . . . . . . . . . . . . . . . . . . 275
Subdividing Your Circuit . . . . . . . . . . . . . . . . . . . . . . . 277
Analysis of the Network File. . . . . . . . . . . . . . . . . . . . . 280
Additional Improvements. . . . . . . . . . . . . . . . . . . . . . . 282
15 VIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Creating Vias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Via Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Via Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Via Subsections. . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Meshing Fill for Vias . . . . . . . . . . . . . . . . . . . . . . . 290
Adding a Rectangular Via to Ground . . . . . . . . . . . . . 296
Via Loss. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Via Pads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Via Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Auto Height Vias. . . . . . . . . . . . . . . . . . . . . . . . . . 299
Edge Vias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Edge Via Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Simple Via Example . . . . . . . . . . . . . . . . . . . . . . . . . . 302
Table of Contents
11
16 THICK METAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Thick Metal Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Creating a Thick Metal Polygon . . . . . . . . . . . . . . . . . . . 305
Viewing Thick Metal in the Project Editor . . . . . . . . . . . . 308
Stackup Manager . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Modeling Plated Metal . . . . . . . . . . . . . . . . . . . . . . . . . 311
Modeling Conductor-Via-Conductor Stackups . . . . . . . . . . 311
Bar Via Configuration . . . . . . . . . . . . . . . . . . . . . . . 312
Via Array Configuration. . . . . . . . . . . . . . . . . . . . . . 313
Modeling an Arbitrary Cross-Section . . . . . . . . . . . . . . . . 314
Thick Metal in the Current Density Viewer. . . . . . . . . . . . 315
17 DIELECTRIC BRICKS . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Applications of Dielectric Bricks. . . . . . . . . . . . . . . . . . . 319
Guidelines for Using Dielectric Bricks . . . . . . . . . . . . . . . 319
Subsectioning Dielectric Bricks. . . . . . . . . . . . . . . . . 319
Using Vias Inside a Dielectric Brick . . . . . . . . . . . . . . 319
Air Dielectric Bricks . . . . . . . . . . . . . . . . . . . . . . . . 320
Limitations of Dielectric Bricks . . . . . . . . . . . . . . . . . . . 320
Diagonal Fill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Antennas and Radiation . . . . . . . . . . . . . . . . . . . . . 320
Interfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Dielectric Brick Concepts . . . . . . . . . . . . . . . . . . . . . . . 321
Creating a Dielectric Brick. . . . . . . . . . . . . . . . . . . . 321
Viewing Dielectric Bricks. . . . . . . . . . . . . . . . . . . . . 321
Defining Dielectric Brick Materials . . . . . . . . . . . . . . 322
Changing Brick Materials . . . . . . . . . . . . . . . . . . . . . 324
Z-Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
18 ANTENNAS AND RADIATION . . . . . . . . . . . . . . . . . . . . . . . 327
Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Modeling Infinite Arrays . . . . . . . . . . . . . . . . . . . . . . . . 328
Modeling an Open Environment . . . . . . . . . . . . . . . . . . . 329
Validation Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Far Field Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Analysis Limitations . . . . . . . . . . . . . . . . . . . . . . . . 335
Sonnet User’s Guide
12
Spherical Coordinate System. . . . . . . . . . . . . . . . . . 336
Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Polarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
19 FAR FIELD VIEWER TUTORIAL . . . . . . . . . . . . . . . . . . . . . 341
Creating an Antenna Pattern File . . . . . . . . . . . . . . . . . 342
Running the Far Field Viewer . . . . . . . . . . . . . . . . . . . . 343
Calculating the Response. . . . . . . . . . . . . . . . . . . . . . . 344
Selecting Phi Values . . . . . . . . . . . . . . . . . . . . . . . 345
Selecting Frequencies . . . . . . . . . . . . . . . . . . . . . . 345
Selecting the Response . . . . . . . . . . . . . . . . . . . . . . . . 346
Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Probing the Plot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Re-Normalizing the Plot. . . . . . . . . . . . . . . . . . . . . . . . 351
Changing to a Polar Plot . . . . . . . . . . . . . . . . . . . . . . . 355
Turning Off the Legend . . . . . . . . . . . . . . . . . . . . . . . . 355
Changing the Radius Axis . . . . . . . . . . . . . . . . . . . . . . . 356
Selecting a Frequency Plot. . . . . . . . . . . . . . . . . . . . . . 358
Viewing a Surface Plot . . . . . . . . . . . . . . . . . . . . . . . . 361
Saving the Far Field Viewer File . . . . . . . . . . . . . . . . . . 361
Exiting the Far Field Viewer Program . . . . . . . . . . . . . . . 362
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
20 SPICE MODEL SYNTHESIS. . . . . . . . . . . . . . . . . . . . . . . . 363
PI Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Using The PI Model Spice Option . . . . . . . . . . . . . . . 364
A Simple Microwave Example . . . . . . . . . . . . . . . . . 368
Topology Used for PI Model Output. . . . . . . . . . . . . . 368
N-Coupled Line Model . . . . . . . . . . . . . . . . . . . . . . . . . 369
Broadband SPICE Model . . . . . . . . . . . . . . . . . . . . . . . . 371
Class of Problems . . . . . . . . . . . . . . . . . . . . . . . . . 372
Creating a Broadband Spice Model . . . . . . . . . . . . . . 373
Checking the Accuracy of the Broadband Spice Model . 376
Improving the Accuracy of the Broadband Spice Model. 378
Broadband Spice Extractor Stability Factor . . . . . . . . 379
Inductor Model Extractor . . . . . . . . . . . . . . . . . . . . . . . 380
Model Topologies . . . . . . . . . . . . . . . . . . . . . . . . . 380
Table of Contents
13
Model Output. . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Using the Inductor Model Extractor (IME) . . . . . . . . . . 383
21 BOX RESONANCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Initial Indicators of a Box Resonance. . . . . . . . . . . . . . . . 390
Bandpass Filter Example with Resonances . . . . . . . . . . . . 391
Is It a Box Resonance? . . . . . . . . . . . . . . . . . . . . . . . . . 392
The Box Resonance Estimator . . . . . . . . . . . . . . . . . 392
Runtime Warning Messages . . . . . . . . . . . . . . . . . . . 394
Removing artificial box resonances. . . . . . . . . . . . . . . . . 396
Change box size. . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Use a free space cover . . . . . . . . . . . . . . . . . . . . . . 397
Suppressing Real Resonances. . . . . . . . . . . . . . . . . . . . . 399
Changing the Box Size. . . . . . . . . . . . . . . . . . . . . . . 399
Adding Vias. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Adding Absorbing Material. . . . . . . . . . . . . . . . . . . . 400
Using a Probe Circuit for a Quick Analysis . . . . . . . . . . . . 403
Viewing Electric Fields. . . . . . . . . . . . . . . . . . . . . . . . . 405
Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
22 ACCURACY BENCHMARKING . . . . . . . . . . . . . . . . . . . . . . 407
An Exact Benchmark . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Residual Error Evaluation . . . . . . . . . . . . . . . . . . . . . . . 409
Using the Error Estimates . . . . . . . . . . . . . . . . . . . . . . . 411
APPENDIX IEm AND XGEOM COMMAND LINE FOR BATCH . . . . . . . . . 413
em Command Line. . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Causal Dielectrics . . . . . . . . . . . . . . . . . . . . . . . . . 416
xgeom Command Line. . . . . . . . . . . . . . . . . . . . . . . . . . 417
Example of xgeom Command Line . . . . . . . . . . . . . . . 419
APPENDIX II SONNET REFERENCES . . . . . . . . . . . . . . . . . . . . . . 421
INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Sonnet User’s Guide
14
Chapter 1 Introduction
15
Rev 16.56
Chapter 1 Introduction
The Sonnet User’s Guide is intended to provide in depth discussions of features
of Sonnet’s software. There is a short exposition of the theory behind Sonnet’s
analysis engine, em, followed by discussions of geometry elements and features
available in Sonnet. This manual also contains tutorials demonstrating how to use
some features in Sonnet. The tutorials follow chapters discussing that topic. Please
refer to the Table of Contents to see what tutorials are available.
For installation instructions and the basics of using Sonnet Suites, please refer to
the Getting Started manual. To learn about new features in this release, please
refer to Chapter 2, “What’s New in Sonnet Suites Release 16” on page 23.
The Sonnet Design Suite
The suite of Sonnet analysis tools is shown on page 19. Using these tools, Sonnet
provides an open environment to many other design and layout programs. The
following is a brief description of all of the Sonnet tools. Check with your system
administrator to find out if you are licensed for these products:
Sonnet User’s Guide
16
Rev 16.56
Project
Editor The project editor is a user-friendly graphical interface that enables you to input
your circuit geometry or circuit netlist for subsequent em analysis. If you have
purchased the DXF, GDSII and/or the Gerber translator, the translator interface is
found in the project editor. You also set up analysis controls for your project in the
project editor.
Program module: xgeom
Analysis
Engine Em is the electromagnetic analysis engine. It uses a modified method of moments
analysis based on Maxwell's equations to perform a true three dimensional current
analysis of predominantly planar structures. Em computes S, Y, or Z-parameters,
transmission line parameters (Z0, Eeff, VSWR, GMax, Zin, and the Loss Factor),
and SPICE equivalent lumped element networks. Additionally, it creates files for
further processing by the current density viewer and the far field viewer. Em’s
circuit netlist capability cascades the results of electromagnetic analyses with
lumped elements, ideal transmission line elements and external S-parameter data.
Program module: em
Analysis
Monitor The analysis monitor allows you to observe the on-going status of analyses being
run by em as well as creating and editing batch files to provide a queue for em
jobs.
Program module: emstatus
Response
Viewer The response viewer is the plotting tool. This program allows you to plot your
response data from em, as well as other simulation tools, as a Cartesian graph or
a Smith chart. You may also plot the results of an equation. In addition, the
response viewer may generate Spice lumped models.
Program module: emgraph
Current
Density
Viewer
The current density viewer is a visualization tool which acts as a post-processor to
em providing you with an immediate qualitative view of the electromagnetic
interactions occurring within your circuit. The currents may also be displayed in
3D.
Program module: emvu
Chapter 1 Introduction
17
Rev 16.56
Far Field
Viewer The far field viewer is the radiation pattern computation and display program. It
computes the far-field radiation pattern of radiating structures (such as patch
antennas) using the current density information from em and displays the far-field
radiation patterns in one of three formats: Cartesian plot, polar plot or surface plot.
Program module: patvu
GDSII
Translator The GDSII translator provides bidirectional translation of GDSII layout files to/
from the Sonnet project editor geometry format.
Program module: gds
DXF
Translator The DXF translator provides bidirectional translation of DXF layout files (such as
from AutoCAD) to/from the Sonnet project editor geometry format.
Program module: dxfgeo
Gerber
Translator The Gerber translator provides bidirectional translation of Gerber single layer and
multi-layer files to/from the Sonnet project editor geometry format.
Keysight
ADS
Interface
The Keysight ADS Interface provides a seamless translation capability between
Sonnet and Keysight’s ADS. From within ADS Layout package you can directly
create Sonnet geometry files. Em simulations can be invoked and the results
incorporated into your design without leaving the ADS environment.
Program module: ebridge
NI AWR
Microwave
Office
Interface
The NI AWR Microwave Office Interface provides a seamless incorporation of
Sonnet’s world class EM simulation engine, em, into the Microwave Office envi-
ronment using Microwave Office's EM Socket. You can take advantage of Son-
net’s accuracy without having to learn the Sonnet interface. Although, for
advanced users who wish to take advantage of powerful advanced features not
presently supported in the integrated environment, the partnership of AWR and
Sonnet has simplified the process of moving EM projects between Microwave Of-
fice and Sonnet.
Program Module: sonntawr
Cadence
Virtuoso
Interface
This Sonnet plug-in for the Cadence Virtuoso suite enables the RFIC designer to
configure and run the EM analysis from a layout cell, extract accurate electrical
models, and create a schematic symbol for Analog Artist and RFDE simulation.
Program Module: sonntcds
Broadband
Spice
Extractor
A Broadband Spice extraction module is available that provides high-order Spice
models. In order to create a Spice model which is valid across a broad band, the
Sonnet broadband SPICE Extractor feature finds a rational polynomial which
“fits” the S-Parameter data. This polynomial is used to generate the equivalent
Sonnet User’s Guide
18
Rev 16.56
lumped element circuits which may be used as an input to either PSpice or Spec-
tre. Since the S-Parameters are fitted over a wide frequency band, the generated
models can be used in circuit simulators for AC sweeps and transient simulations.
Chapter 1 Introduction
19
Rev 16.56
w
Sonnet User’s Guide
20
Rev 16.56
Em performs electromagnetic analysis [87, 88, 90] for arbitrary 3-D planar [62]
(e.g., microstrip, coplanar, stripline, etc.) geometries, maintaining full accuracy at
all frequencies. Em is a “full-wave” analysis in that it takes into account all pos-
sible coupling mechanisms. The analysis inherently includes dispersion, stray
coupling, discontinuities, surface waves, moding, metalization loss, dielectric loss
and radiation loss. In short, it is a complete electromagnetic analysis. Since em
uses a surface meshing technique, i.e. it meshes only the surface of the circuit met-
alization, em can analyze predominately planar circuits much faster than volume
meshing techniques.
The Analysis Engine, em
Em analyzes 3-D structures embedded in planar multilayered dielectric on an un-
derlying fixed grid. For this class of circuits, em can use the FFT (Fast Fourier
Transform) analysis technique to efficiently calculate the electromagnetic cou-
pling on and between each dielectric surface. This provides em with its several or-
ders of magnitude of speed increase over volume meshing and other non-FFT
based surface meshing techniques.
Em is a complete electromagnetic analysis; all electromagnetic effects, such as
dispersion, loss, stray coupling, etc., are included. There are only two approxima-
tions used by em. First, the finite numerical precision inherent in digital comput-
ers. Second, em subdivides the metalization into small subsections made up of
cells. A Simple Outline of the Theory
Chapter 1 Introduction
21
Rev 16.56
Em performs an electromagnetic analysis of a microstrip, stripline, coplanar
waveguide, or any other 3-D planar circuit by solving for the current distribution
on the circuit metalization using the Method of Moments. The metalization is
modeled as zero-thickness metal between dielectric layers.
Subsectioning the Circuit
Em evaluates the electric field everywhere due to the current in a single subsec-
tion. Em then repeats the calculation for every subsection in the circuit, one at a
time. In so doing, em effectively calculates the “coupling” between each possible
pair of subsections in the circuit.
Em analyzes planar structures inside a shielding box. Port
connections are usually made at the box sidewalls.
Metal Side Walls
Metal Box Top
Dielectric Layer
Zero-thickness metal
The picture on the left shows the circuit as viewed in the project editor.
On the right is shown the subsectioning used in analyzing the circuit.
Sonnet User’s Guide
22
Rev 16.56
Zero Voltage Across a Conductor
Each subsection generates an electric field everywhere on the surface of the sub-
strate, but we know that the total tangential electric field must be zero on the sur-
face of any lossless conductor. This is the boundary condition: no voltage is
allowed across a perfect conductor.
The problem is solved by assuming current on all subsections simultaneously. Em
adjusts these currents so that the total tangential electric field, which is the sum of
all the individual electric fields just calculated, goes to zero everywhere that there
is a conductor. The currents that do this form the current distribution on the met-
alization. Once we have the currents, the S-parameters (or Y- or Z-) follow imme-
diately.
If there is metalization loss, we modify the boundary condition. Rather than zero
tangential electric field (zero voltage), we make the tangential electric field (the
voltage on each subsection) proportional to the current in the subsection. Follow-
ing Ohm’s Law, the constant of proportionality is the metalization surface resis-
tivity (in Ohms/square).
Sonnet is designed to work with your existing CAE software. Since the output data
is in Touchstone or Compact format (at your discretion), em provides a seamless
interface to your CAE tool.
Em Origins
The technique used in em was developed at Syracuse University in 1986 by Rautio
and Harrington [87, 88, 90]. It was originally developed as an extension of an
analysis of planar waveguide probes [92]. The technique expresses the fields in-
side the box as a sum of waveguide modes and is thus closely related to the spec-
tral domain approach.
The complete theory has been published in detail in peer reviewed journals. A full
list of relevant papers is presented in Appendix II "Sonnet References" on page
421.
Chapter 2 What’s New in Sonnet Suites Release 16
23
Rev 16.56
Chapter 2 What’s New in Sonnet
Suites Release 16
Below is a summary of the major new features in release 16 of Sonnet Suites. For
a complete list of changes and bug fixes, please refer to the release notes, found at:
www.sonnetsoftware.com/release-notes
Custom User Model Components: You may now create a component which
allows you to add a model from a library that has been purchased, or developed
in-house, to your geometry. For more information, please see "User Model" on
page 142.
Modelithics Integration: You may use the User Model Component to add a
model from the Modelithics library to your circuit. For more information, please
see "User Model" on page 142.
Project Components: You may now create a component which represents an-
other Sonnet project. For more information, please see "Sonnet Project" on page
142.
Sonnet User’s Guide
24
Rev 16.56
Increase in Threads for High Performance Solver: The thread count for
the High Performance Solver has increased from 32 to 48 threads for release 16
improving processing time for larger circuits.
Thick Metal Extrusion: When using the thick or rough metal type models for
planar metal, you may now choose which direction from the metal layer, up or
down, that you wish the metal to extend. For more information, see the Planar
Metal Editor dialog box in Help.
Unified Ground Connections: This feature allows you to add an ideal short
circuit to your circuit in locations other than the analysis box sidewall, and is es-
pecially useful for grounding internal shields and ground planes. For more infor-
mation, please see "Using Port Number Zero for Ground Connections" on page 77
for more information.
ABS Preview: The ABS preview allows you to stop an adaptive sweep which
has not yet converged in order to evaluate the data and possibly determine a new
analysis band for your simulation. For more information, please see "ABS Pre-
view" on page 168.
DC Point Extrapolation in ABS Sweep: Starting an ABS sweep at 0.0 GHz
automatically generates data for a DC point by extrapolating from the ABS sweep
data. Please see "DC Point Extrapolation" on page 156 for more information.
Enhanced Resonance Detection: Automatic Adaptive Band Synthesis
(ABS) resolution adjustment to resolve extremely narrowband resonances as is
typical for superconductor applications. Please see "Enhanced Resonance Detec-
tion" on page 157 for more information.
New Boolean Editing Operations: There are four new commands for editing
the metal in your geometry available in the project editor: Union, Intersect, Trim
and Subtract. For more information see “Boolean operations” in the Index of Help.
Robust Loss Metals: Improved loss models for multiple metal layers stacked on
top of each other. See "Modeling Plated Metal" on page 311 and "Modeling Con-
ductor-Via-Conductor Stackups" on page 311.
ODB++ Translator: This release introduces an ODB++ translator allowing you
to import an ODB++ file archive or directory and translating the contents to a Son-
net project. For more details, please see the “Gerber/ODB++ Translator,” page 3.
Resistance Per Via: The Volume and Array Via metal loss models now support
a resistance per via definition for contact resistance dominated vias. For more in-
formation, please see "Via Metalization Loss" on page 58.
Chapter 2 What’s New in Sonnet Suites Release 16
25
Rev 16.56
Automatic Bar Vias: There is a new via metal fill model that models the bar vias
typically used in many RFIC processes in a more efficient manner. Bar vias may
be automatically identified during translation. For more information, please see
the “Via Simplification” appendix in any Interface or Translator manual.
Polygon Edge Checking Support for Technology Layers: In previous re-
leases, there was an option to have the analysis engine, em, consider adjacent
metal levels when computing the subsectioning. In this release, you may now con-
sider adjacent technology layers. For more information, please see “polygon
checking” in the Index of Help.
Via Simplification More Efficient for RFIC Circuits:Improvement in the
array simplification feature now makes it possible to efficiently analyze circuits
with 100,000+ microvias.
GDSII Translator 64-bit Support:The GDSII translator and via simplification
now provide 64-bit support.
Cadence Virtuoso Interface 64-bit Support: There are a number of new
features which have been incorporated into the Cadence Virtuoso Interface in-
cluding support for 64-bit. Also new with this release, Help is available in all di-
alog boxes in the Cadence Virtuoso Interface. For a detailed list of new features
in the Cadence Virtuoso Interface, please see What’s New in Sonnet Suite’s Ca-
dence Virtuoso Interface.
Keysight ADS Interface Enhancements: Supports the new advanced materi-
al settings in Release 16. There is also a new tutorial available for the Keysight
ADS Interface. Please see Chapter 2 "Keysight ADS Interface Tutorial" on page
17 of the Keysight ADS Interface manual.
Sonnet User’s Guide
26
Rev 16.56
Chapter 3 Subsectioning
27
Rev 16.56
Chapter 3 Subsectioning
The Sonnet subsectioning is based on a uniform grid indicated by the small dots
in the project editor window. The small dots are placed at the corners of a “cell”.
One or more cells are automatically combined together to create subsections. Cells
may be square or rectangular (any aspect ratio), but must be the same over your
entire circuit.
A metal polygon with the cell grid is shown on the left. The
same metal polygon’s subsectioning is shown on the right.
Note that some subsections are comprised of only one cell,
while other subsections are made up of multiple cells.
Single Cell Single Cell Subsection Multiple Cell Subsection
Sonnet User’s Guide
28
Rev 16.56
The cell size is specified in the project editor in the Box Settings dialog box which
is opened by selecting CircuitBox. Since multiple cells are combined together
into a single subsection, the number of subsections is usually considerably smaller
than the number of cells. This is important because the analysis solves an N x N
matrix where N is the number of subsections. A small reduction in the value of N
results in a large reduction in analysis time and memory. All EM simulators have
an inherent trade off between speed and accuracy. Decreasing the subsection size
typically increases the accuracy but also causes an increase in analysis time. The
figure below shows the typical trade off between analysis time and accuracy.
Em automatically places small subsections in critical areas where current density
is changing rapidly, but allows larger subsections in less critical areas, where cur-
rent density is smooth or changing slowly. However, in some cases you may wish
to modify the automatic algorithm because you want a faster, less accurate solu-
tion, or a slower, more accurate solution, than is provided by the automatic algo-
rithm.
This chapter explains how em combines cells into subsections and how you can
control this process to obtain an analysis time or the level of accuracy you require.
There is also a discussion of selecting the cell size and how that may affect the em
analysis.
TIP
For a discussion of efficient subsectioning practices with application examples,
please refer to the app note “Efficient Meshing in Sonnet” by Dr. Volker Mühl-
haus. This app note is available in help by looking under “subsectioning” in the
index.
Accuracy
Analysis
Time
Less subsections
More Subsections
Chapter 3 Subsectioning
29
Rev 16.56
Metal Fill
Metal polygons are represented with an outline and a cell fill pattern. The outline
represents exactly what you entered or imported. The cell fill represents the actual
metalization analyzed by em. Therefore, the actual metalization analyzed by em
may differ from that input by you as illustrated below.You turn the cell fill on and
off using the control-M key.
Tips for Selecting A Good Cell Size
As discussed above, em subdivides the circuit into subsections which are made up
of “cells,” the building block in the project editor. The following discussion de-
scribes how to select a cell size. To access the Cell Size calculator, click on the
Cell Size Calculator button in the Box Settings dialog box, which is invoked when
you select Circuit Box from the project editor menu.
TIP
Select a cell size that is smaller than 1/20 of a wavelength.
This shows the circuit with the cell fill
turned off. The outline shows the
polygon drawn by you. Notice that this
polygon is not “on” the grid.
This shows the circuit with the cell fill on.
The patterned area shows the actual metal
that is analyzed by the analysis engine, em.
Note that this metal is always “on” the grid.
Sonnet User’s Guide
30
Rev 16.56
Before calculating a cell size, it is important to calculate the wavelength at your
highest frequency of analysis. An exact number is not important. If you know the
approximate effective dielectric constant of your circuit, use this in the wave-
length calculation; otherwise, use the highest dielectric constant in your structure.
Most circuits require that your cell size be smaller than 1/20 of a wavelength.
Larger cell sizes usually result in unacceptable errors due to incorrect modeling of
the distributed effects across the circuit.
TIP
When possible, find a common factor for your most critical dimensions.
Since your circuit geometry is snapped to the nearest cell, you should set your cell
size to be a common factor of your most critical dimensions. For example, if your
circuit has dimensions of 30 microns, 40 microns and 60 microns, possible cell
sizes are 10 microns, 5 microns, 2.5 microns, 2 microns, etc. Large cell sizes result
in more efficient analyses, so choosing 10 microns is probably best.
Sonnet provides a cell size calculator utility which helps you find a good common
factor for your critical dimensions. Using the Cell Size Calculator is detailed in
Chapter 6, “Spiral Inductor” of the Getting Started manual.
TIP
After setting your initial cell size, visually inspect the metal fill (indicated by the
“hatched” pattern) for potential problems.
Once a common factor is found, some of your less critical dimensions may not be
a multiple of this factor. You should inspect your circuit for potential problems
caused by polygons which are not exact multiples of this cell size. An example is
shown below.
Notice that there is a
gap between the two
polygons as drawn by
the user, but the
actual on-grid metal
“shorts” the two
polygons together.
Chapter 3 Subsectioning
31
Rev 16.56
TIP
Calculate the X cell size and the Y cell size independently.
The X cell size and Y cell size do not have to be the same number. Calculate the
X cell size based on just your dimensions in the X direction, and your Y cell size
based on just your dimensions in the Y direction.
Viewing the Subsections
You can see the subsections used by Sonnet by following the instructions below.
Be aware that your dielectric layers and analysis frequencies must be defined and
at least one port must be added to your circuit before you may use the Estimate
Memory command.
To view the subsectioning, do the following:
1 From the project editor, select Analysis => Estimate Memory.
This calculates the amount of memory required for your analysis.
Sonnet User’s Guide
32
Rev 16.56
2 Click the View Subsections button.
A picture of your circuit will appear. The metal will show up as red, and the sub-
section borders will show up as black lines as shown in the illustration below:
Using the Speed/Memory Control
The Speed/Memory Control allows you to control the memory usage for an anal-
ysis by controlling the subsectioning of your circuit. The high memory settings
produce a more accurate answer and usually increase processing time. Converse-
ly, low memory settings run faster but do not yield as accurate an answer.
To access the Speed/Memory Control, follow the instructions below.
1 Select Analysis Setup from the project editor main menu.
Metalization
Note the use of smaller
subsections in an area
where current density
is changing rapidly.
Subsection Borders
Chapter 3 Subsectioning
33
Rev 16.56
2 In the Analysis Setup dialog box which appears, click on the Speed/Memory
button.
3 In the Analysis Speed/Memory Control dialog box which appears, select the
desired setting.
There are three settings for the Speed/Memory Control: Fine/Edge Meshing,
Coarse/Edge Meshing, Coarse/No Edge Meshing. Fine/Edge Meshing is the de-
fault setting and is described in “Default Subsectioning of a Polygon,” page 35.
An example is shown below. Again, note that this setting provides the most accu-
rate answer but demands the highest memory and processing time.
The second option is Coarse/Edge Meshing. This setting is often a good compro-
mise between speed and accuracy. Shown below is a typical circuit with this set-
ting. Notice the edges of the polygons have small subsections, but the inner
Sonnet User’s Guide
34
Rev 16.56
portions of the polygons have very large subsections This is a good compromise
between speed and accuracy because the currents on most RF traces change most
rapidly on the metal edge.
The last option is Coarse/No Edge Meshing. For this setting, all polygons are set
to use large subsections and edge mesh is set to “off.” This yields the fastest anal-
ysis, but is also the least accurate because the current across the width of the line
is constant. Shown below is the subsectioning of a typical circuit using this option.
Current
Distance across line width
Real Current
Modeled
Current
Current
plots
Current
Distance across line width
Real Current
Modeled
Current
Chapter 3 Subsectioning
35
Rev 16.56
Changing the Subsectioning of a Polygon
Sonnet allows you to control how cells are combined into subsections for each
polygon. This is done using the parameters “X Min”, “Y Min”, “X Max” and “Y
Max”. These parameters may be changed for each polygon, allowing you to have
coarser resolution for some polygons and finer resolution for others. You use the
Modify Metal Properties command to change these setting.
Please note that these controls are not used if conformal meshing is applied to the
metal polygon. There are separate controls when conformal mesh is applied to a
polygon. For more information about conformal meshing subsection control,
please refer to “Conformal Mesh Subsectioning Control,” page 45.
Before discussing how to make use of these parameters, we need to first under-
stand em’s automatic subsectioning for a polygon when the parameters are set to
their default settings.
Default Subsectioning of a Polygon
By default, Sonnet fills a polygon with “staircase” subsections. Other, more ad-
vanced fill types (diagonal and conformal) can be used. For diagonal subsections,
see "Diagonal Fill Subsectioning" on page 42. For conformal mesh, see "Confor-
mal Mesh Subsectioning" on page 43. This discussion applies to staircase fill.
This fill type is referred to as staircase because when using small rectangular sub-
sections to approximate a diagonal edge, the actual metalization takes on the ap-
pearance of a staircase, as in the example shown below.
The black outline represents
the polygon input by the user.
The patterned sections
represent the actual
metalization analyzed by em.
Staircase edge
Sonnet User’s Guide
36
Rev 16.56
The default values for the subsectioning parameters are X Min = 1, Y Min = 1,
X Max = 100 and Y Max = 100. These numbers specify the smallest and largest
allowed dimensions of the subsections in a polygon. With X Min = 1, the smallest
subsection in the X dimension is one cell. With X Max = 100, subsections are not
allowed to go over 100 cells in length.
The illustration below shows how these default subsectioning parameters are
used. Notice in the corner, the subsection size is just one cell. The current density
changes most rapidly here, thus, the smallest possible subsection size is used.
As we go away from the corner, along the edge, the subsections become longer.
For example, the next subsection is two cells long, the next one is four cells long,
etc. If the edge is long enough, the subsection length increases until it reaches X
Max (100) cells, or the maximum subsection size parameter, whichever comes
first, and then remains at that length until it gets close to another corner, disconti-
nuity, etc.
Subsection size is 1 cell by 1 cell on corner
Subsection size is 1 cell
Interior subsections are wide
Cell Size =
and long
wide along edge
A portion of circuit metal showing how em combines cells into
subsections. In this case the subsectioning parameters are set to their
default values: X Min = 1, Y Min = 1, X Max = 100 and Y Max = 100.
Chapter 3 Subsectioning
37
Rev 16.56
Notice, however, that no matter how long the edge subsection is, it is always one
cell wide. This is because the current density changes very rapidly as we move
from the edge toward the interior of the metal (this is called the edge singularity).
In order to allow an accurate representation of the very high edge current, the edge
subsections are allowed to be only one cell wide. (See the current plots on page
34.) However, the current density becomes smooth as we approach the interior of
the metal. Thus, wider subsections are allowed there. As before, the width goes
from one cell to two cells, then four, etc.
TIP
If two polygons butt up against each other or have a small overlap, the modeling
of the edge singularity will require a larger number of subsections at the boundary
between the two polygons. Using the Union command (Edit Boolean Opera-
tions Union) to join the two polygons into one will reduce the number of re-
quired subsections and speed up your analysis.
Conversely, if you have an area of your circuit at which you desire greater accu-
racy, using the Divide (Edit Divide Polygons) command at the point of interest
to create two polygons, forces the analysis to use smaller subsections in order to
model the edge singularities.
X Min and Y Min with Edge Mesh Off
On occasion, you may wish to change the default subsectioning for a given poly-
gon. You can do this using the subsectioning parameters X Min, Y Min, X Max
and Y Max.
Having the edge mesh option “on” is the default state for Sonnet projects; howev-
er, examining the case where edge mesh is “off” first makes understanding the
concept easier. This part of the discussion only applies to Manhattan polygons,
which is a polygon that has no diagonal edges. Turning edge mesh off for non-
manhattan polygons has no effect.
For Manhattan polygons with edge mesh off, X Min and Y Min set the size of the
edge subsections. By default, X Min and Y Min are 1. This means the edge sub-
sections are 1 cell wide. When X Min is set to 2, the subsections along vertical
edges are now 2 cells wide in the X direction (see the figure on page 38). This re-
duces the number of subsections and reduces the matrix size for a faster analysis.
However, accuracy may also be reduced due to the coarser modeling of the current
density near the structure edge or a discontinuity.
Sonnet User’s Guide
38
Rev 16.56
If X min or Y min are greater than your polygon size, em uses subsections as large
as possible to fill the polygon.
NOTE: The subsection parameters, X Min, Y Min, X Max and Y Max are
specified in cells (not mils, mm, microns, etc.). For example, X Min =
5 means that the minimum subsection size is 5 cells.
Although the X Min and Y Min parameters are very useful options, it is not a sub-
stitute for using a larger cell size. For example, a circuit with a cell size of 10 mi-
crons by 10 microns with X Min = 1 and Y Min =1 runs faster than the same circuit
with a cell size of 5 microns by 5 microns with X Min = 2 and Y Min = 2. Even
though the total number of subsections for each circuit may be the same, em must
spend extra time calculating the value for each subsection for the circuit with the
smaller cell size.
Cell Size =
{
2 Cells Wide
Y
X
{
1 Cell Wide
(Y Min = 1)
(X Min = 2) 4 Cells 8 Cells
4 Cells
2 Cells
A portion of circuit metal showing how em combines cells into subsections for
Manhattan polygons when X Min = 2 and Y Min = 1.
Chapter 3 Subsectioning
39
Rev 16.56
X Min and Y Min with Edge Mesh On
Having the edge mesh option “on” is the default state for Sonnet projects because
it provides a more accurate analysis. Having edge mesh “on” for a polygon chang-
es how the subsections on the very edge are handled. Starting from the left side of
the previous example with edge mesh off, the subsections were 2 cells, 4 cells and
8 cells wide. With edge mesh on, the subsections for the same polygon would be
1 cell, 4 cells, and 8 cells as shown in the illustration below. Notice only the out-
ermost edge is affected.
As mentioned in the previous section, the edge mesh setting only affects Manhat-
tan polygons (i.e. those with no diagonal or curved edges). Edge mesh is always
“on” for non-Manhattan polygons, regardless of the edge-mesh setting for that
polygon.
Cell Size =
Y
X
1 Cell by 1 Cell 4 Cells
on corner (2 * X Min)
A portion of circuit metal showing how em combines cells into subsections
for polygons with edge mesh on, with X Min = 2 and Y Min = 1. Edge mesh
polygons always have 1 cell wide edge subsections.
Sonnet User’s Guide
40
Rev 16.56
When used in conjunction with large X Min or Y Min values, the edge mesh op-
tion can be very useful in reducing the number of subsections but still maintaining
the edge singularity, as shown in a simple example below. This is very often a
good compromise between accuracy and speed.
In the case pictured above, X Min and Y Min are set to be very large, and the fre-
quency is low enough so that the Max. Subsection size parameter corresponds to
a subsection size that is larger than the polygon. This is exactly what is being done
when you set the Speed/Memory setting to “Coarse/Edge Meshing.”
Using X Max and Y Max
You may control the maximum subsection size of individual polygons by using
the X Max and Y Max parameters. For example, if X Max and Y Max are de-
creased to 1, then all subsections will be one cell. This results in a much larger
number of subsections and a very large matrix which are the cause of increased
analysis time. Thus, this should be done only on small circuits where extremely
high accuracy is required or you need a really smooth current density plot.
NOTE: If the maximum subsection size specified by X Max or Y Max is larger
than the size calculated by the Max. Subsection Size parameter, the
Max. Subsection Size parameter takes priority. The Max. Subsection
Size is discussed in "Setting the Maximum Subsection Size Parameter"
section which follows.
Chapter 3 Subsectioning
41
Rev 16.56
Setting the Maximum Subsection Size Parameter
The parameter Max. Subsection Size allows the specification of a maximum sub-
section size, in terms of subsections per wavelength, where the wavelength is ap-
proximated at the beginning of the analysis. By default, the highest analysis
frequency is used in the calculation of the wavelength. This value is a global set-
ting and is applied to the subsectioning of all polygons in your circuit.
The default of 20 subsections/- is fine for most work. This means that the maxi-
mum size of a subsection is 18 degrees at the highest frequency of analysis. In-
creasing this number decreases the maximum subsection size until the limit of 1
subsection = 1 cell is reached.
You might want to increase this parameter for a more accurate solution. For ex-
ample, changing it from 20 to 40 decreases the size of the largest subsections by
a factor of 2, resulting in a more accurate (but slower) solution. Keep in mind that
using smaller subsections in non-critical areas may have very little effect on the
accuracy of the analysis while increasing analysis time.
Another reason for using this parameter is when you require extremely smooth
current distributions for the current density viewer. With the default value of 20,
large interior subsections may make the current distribution look “choppy.” Set-
ting this value to a large number forces all subsections to be only 1 cell wide, pro-
viding smooth current distribution. Again, analysis time is impacted significantly.
The Max. Subsection Size parameter is specified in the Advanced Subsectioning
Controls which are opened by selecting Analysis Advanced Subsectioning from
the project editor main menu.
Defining the Subsectioning Frequency
The subsectioning parameter, Max. Subsection Size, applies to the subsectioning
of all polygons in your circuit, and is defined as subsections per wavelength. Nor-
mally, the highest analysis frequency is used to determine the wavelength. How-
ever, this may be changed by using the Subsectioning Frequency options in the
Advanced Subsectioning Control dialog box in the project editor. This dialog box
is opened by selecting Analysis Advanced Subsectioning from the project editor
main window. For details on what options are available to define the subsection-
ing frequency, click on the Help button in the Advanced Subsectioning Control di-
alog box.
Sonnet User’s Guide
42
Rev 16.56
The frequency defined by the selected option is now used to determine the maxi-
mum subsection size instead of the highest frequency of analysis. Thus, the same
subsectioning can be used for several analyses which differ in the highest frequen-
cy being analyzed.
Diagonal Fill Subsectioning
Diagonal fill subsectioning is a technique which allows you to more accurately
model straight diagonal edges by using triangular subsection as well as rectangu-
lar. When modeling a circuit with one to two cell wide traces which contain a di-
agonal miter corner or a diagonal line, the metal fill using a staircase fill type
sometimes causes the actual metal being analyzed to have opens which do not
allow current to flow (see the graphic below). In these cases, applying the diagonal
fill type to a polygon creates a metal pattern which more accurately models the
polygon input by the user.
The first polygon on the left shows the polygon input by the user. The middle
polygon shows the metal fill pattern when the staircase fill type is used for the
polygon. Note that the metal fill is a series of polygons which only share a corner
hence not allowing any current to flow. The third polygon on the right shows the
metal fill pattern using the diagonal fill type. As you can see, the metal fill now
more closely matches the polygon input by the user and allows the current to flow.
Note that while diagonal fill yields more accurate answers, it increase processing
time and should only be used when necessary to correctly model your circuit.
Polygon input
by user. Metal fill using
staircase fill type. Metal fill using
diagonal fill type.
Chapter 3 Subsectioning
43
Rev 16.56
Conformal Mesh Subsectioning
Conformal meshing is a technique which can dramatically reduce the memory and
time required for analysis of a circuit with diagonal or curved polygon edges. For
a detailed discussion of conformal mesh and its rules of use, please refer to “Con-
formal Mesh,” page 227. Only the effect of conformal mesh on subsectioning is
discussed in this chapter. Conformal mesh assumes that most current flows on the
edges of circuit conductors, as shown below, and should only be applied when this
holds true.
This technique groups together strings of cells following diagonal and curved
metal contours to form long subsections along those contours. Whereas staircase
fill results in numerous small X- and Y-directed subsections, conformal mesh re-
Simplified
model of the
current density
basis function
for Conformal
Mesh
Transmission
Line
Conductor
Example of a good circuit for
conformal mesh (MMIC)
Example of a bad circuit for
conformal mesh (Patch
Antenna)
Sonnet User’s Guide
44
Rev 16.56
sults in a few long conformal subsections. The illustration below shows the actual
metalization of a conformal section in close up alongside the same section using
staircase fill.
Conformal sections, like standard subsections, are comprised of cells, so that the
actual metalization still shows a ''jagged'' edge when the polygon has a smooth
edge. However, the sections can be much larger due to conformal meshing. These
larger sections yield faster processing times with lower memory requirements for
your analysis.
Standard subsectioning requires a lot of subsections to model the correct current
distribution across the width of the line. Conformal subsections have this distribu-
tion built into the subsection. Sonnet conformal meshing automatically includes
the high edge current in each conformal section. This patented Sonnet capability
is unique. (U.S. Patent No. 6,163,762 issued December 19, 2000.)
An example of a circuit using both standard subsectioning and conformal mesh is
shown below. The circuit shown at the left is displayed using standard subsection-
ing (staircase fill). Conformal meshing for the curved part of the circuit is shown
on the right. Note that for the curved part of the geometry, conformal mesh uses
substantially fewer subsections than the number used in the standard subsection-
ing.
Conformal section Staircase Fill
Chapter 3 Subsectioning
45
Rev 16.56
Conformal Mesh Subsectioning Control
When you apply conformal mesh to a polygon, it is possible to limit the maximum
length of a conformal section in order to provide a more accurate simulation. The
default length of a conformal section is 1/20 of the wavelength at the subsection-
ing frequency. For more information on the subsectioning frequency, see “Defin-
ing the Subsectioning Frequency,” page 41.
To set the maximum length for a conformal section, do the following:
1 Select the desired polygon(s).
The selected polygons are highlighted.
2 Select Modify Metal Properties
This opens the Metalization Properties dialog box.
3 Click on the Maximum Length checkbox in the Conformal Mesh
Subsectioning Controls section of the dialog box.
This will enable the Length text entry box to the right. Note that this checkbox is
only enabled when Conformal is chosen as the Fill Type.
4 Enter the desired Maximum Length in the text entry box.
Click on the OK button to close the dialog box and apply the changes.
For a more detailed discussion of Conformal Mesh, please refer to Chapter 11,
“Conformal Mesh” on page 227. There is also an application note on conformal
mesh available in Help; look up conformal mesh in the index.
Default Subsection Length Maximum Length = 20 mils
Setting the maximum length to 20 mils limits the length of the subsections. As you
can see pictured above, the default subsection length uses one subsection for most
of the curve. When the maximum length is set to 20 mils, multiple subsections are
used to model the same metal providing a more accurate answer.
Sonnet User’s Guide
46
Rev 16.56
Chapter 4 Metalization and Dielectric Layer Loss
47
Rev 16.56
Chapter 4 Metalization and
Dielectric Layer Loss
This chapter is composed of three parts: planar metalization loss, via metalization
loss and dielectric layer loss. For information on dielectric brick loss, see Chapter
17, “Dielectric Bricks” on page 317. Both the theoretical aspect of how Sonnet
models loss and the practical how to’s of assigning loss in your circuit are covered,
including the use of metal and dielectric material libraries. The discussion of met-
alization loss begins below. For the discussion of dielectric loss, see “Dielectric
Layer Loss,” page 66.
There is also a paper available by the president and founder of Sonnet Software,
Dr. James Rautio which contains a detailed discussion of metal losses; see refer-
ence [15] in Appendix II, “Sonnet References” for a detailed description. This
paper is also available on the Sonnet website.
There are two general metal types in Sonnet, planar metal types which are
assigned to metal polygons, and via metal types which are assigned to via
polygons. In metal polygons, the current flow is in the x and y direction, while in
via polygons, the current flows in the z direction between metal levels. The
underlying theory behind both types is the same, but the parameters you enter are
based on the physical properties of the object for which you will use the metal.
For example, a planar metal can be defined with a conductivity and a thickness,
while a via metal can be defined with a conductivity and solid cross-sectional
area. Planar metals are discussed first followed by via metals.
Sonnet User’s Guide
48
Rev 16.56
Planar Metalization Loss
Metalization loss is specified in the project editor in the Metal Types dialog box
which is opened by selecting CircuitMetal Types. You click on the Add Planar
button to add a planar metal. Planar metal types may be assigned to circuit metal,
top cover and ground plane. Sidewalls are always assumed to be perfect conduc-
tors.
A common misconception is that only one type of planar metalization is allowed
on any given level. In fact, different metalizations (i.e., different losses) can be
mixed together on any and all levels. For example, it is possible to have a thin film
resistor next to a gold trace on the same level.
Sonnet allows you to use pre-defined planar metals, such as gold and copper,
using the global library. The global library allows you to define your own metal
types as well. There is also a local metal library which can be created for an indi-
vidual or to share between users. There are both planar and via metals available in
the metal libraries.
Sonnet’s Loss Model for Planar Metalization
The Sonnet model of planar metal loss uses the concept of surface impedance,
measured in Ohms per square. This concept allows planar EM Simulators, such as
Sonnet em, to model real 3-dimensional metal in two dimensions.
If you are unfamiliar with this concept, please refer to any classic textbook such
as Fields and Waves in Communication Electronics by Simon Ramo, John R.
Whinnery and Theodore Van Duzer, John Wiley & Sons, New York, 1965.
It is important to note that this technique models the loss of the true 3-dimensional
metal fairly accurately, but does not model any change in field distribution due to
the metal thickness. This approximation is valid if the metal thickness is small
with respect to the width of the line, the separation between lines, and the thick-
ness of the dielectric. If the true 3-dimensional affect of the metal is important,
then you should consider using the Thick Metal Model metal type as discussed in
Chapter 16, “Thick Metal” on page 303.
Substrate
Real Metal Modeled Zero Thickness Metal
Chapter 4 Metalization and Dielectric Layer Loss
49
Rev 16.56
Some electromagnetic analyses use a “perturbational” approach for loss. This
means that they assume the current flowing everywhere is the same as the lossless
case. This approximation works for low loss metals (good conductors) at most RF
frequencies. However for thin film resistors and good conductors at low frequen-
cies, the lossless current is not the same as the lossy current and a perturbational
approach fails. Em's loss analysis is not perturbational. It works just as well for a
100 Ohms/square resistor as it does for a 0.004 Ohms/square good conductor. The
Sonnet loss analysis also properly models the transition between electrically thin
(low frequency) and electrically thick (high frequency) conductors. See reference
[26] in reference Appendix II listed on page 421 for a detailed description of the
theory used by Sonnet. See reference [93] listed on page 428 for the equations ac-
tually used in the Sonnet model.
Another aspect of loss is that the surface impedance of a good conductor has an
imaginary part which is equal to the real part. This reactive surface impedance is
physically due to the increased surface inductance caused by the current being
confined closer to the surface of the conductor. This surface reactance is included
in the Sonnet loss model. The effect is small, but potentially significant in certain
cases.
Keep in mind that a circuit running with lossless metal and dielectrics requires
about one-half the amount of memory and runs about twice as fast. Therefore, the
simplest approximation is to run a lossless simulation. This can be quite useful in
the initial design phase.
Problems In Determining Planar Metal Loss
Sonnet's planar metal loss model is very accurate if accurate values are used. In
practice, however, there are many aspects of metal loss that cannot easily be ac-
counted for. For example, surface roughness, metal purity, metal porosity, etc.
cannot easily be measured and included in an all-encompassing loss model. In ad-
dition, most software programs, Sonnet included, do not allow you to enter all of
the parameters that determine metal loss. Many users like to use the ideal values
as a starting point and add a little of their own “real-world” loss. But how much
should be added to the ideal models? This question is not easily answered, but is
addressed in the next section.
An additional loss problem exists with planar EM analysis tools such as Sonnet.
The problem stems from the fact that planar EM tools treat the planar metal con-
ductor as zero thickness. This means that there is no difference between the top of
the conductor and the bottom of the conductor. In some circuits, stripline for ex-
Sonnet User’s Guide
50
Rev 16.56
ample, the current is symmetrical with half of the current flowing on the top of the
conductor and half flowing on the bottom of the conductor. The zero thickness
model (Normal loss model) works well in these cases.
In other circuits, such as microstrip, the current can be unequally distributed, re-
sulting in higher loss than the equivalent stripline circuit. If you know the ratio be-
tween the top and the bottom currents, you can obtain a better loss model. All
planar solvers must either estimate this value in order to calculate metal loss, or
the information must be input by the user. For this class of circuits, it is difficult
for the user to know an exact value of the current ratio without obtaining measured
data on the circuit. For these cases, assuming all the current flows on one side of
the conductor gives a “worst case” loss result. This tends to compensate for the
“best case” loss caused by ignoring the other aspects of loss (metal porosity, etc.)
mentioned earlier.
Determining Good Input Values
The best method to determine proper loss values is to build and measure a simple
structure of the desired metalization. The structure should be sensitive enough to
loss so that measurement errors do not significantly affect the results. Then ana-
lyze the same structure in Sonnet and adjust the loss values until the calculated
loss matches the measured loss. This may take several iterations before success,
but then you can use these values for similar circuits. You are now effectively
using measured values for the loss parameters.
Creating Planar Metal Types
To assign loss to a polygon in Sonnet, you first define a planar metal type by in-
putting its loss parameters and then assign that planar metal type to the polygon
drawn in your circuit.
The Planar Metal Editor dialog box allows you to enter a loss definition for the
planar metal type. There are seven different methods for entering loss: Normal,
Resistor, Rdc/Rrf, General, Rough, Sense and Thick Metal Model. The different
planar loss models are discussed below followed with a procedure for entering
new planar metal types. The discussions assume simple, single conductor
microstrip and stripline geometries where mentioned.
You do not need to read the details of each loss model. Instead, you should make
yourself familiar with the loss models you are likely to use. Most users only need
concern themselves with “Normal.”
Chapter 4 Metalization and Dielectric Layer Loss
51
Rev 16.56
Conductivity, Resistivity, or Sheet Resistance at DC
Some of the loss models allow you to choose which parameter you wish to use to
calculate loss: Conductivity, Resistivity or Sheet Resistance at DC. The three pa-
rameters are defined as follows:
Conductivity is the bulk conductivity of the metal. The default unit is S/
m.
Resistivity = 1.0 / conductivity. Resistivity has a default unit of Ohm-
cm.
Sheet Resistance at DC = 1.0 / (conductivity * thickness)
where “thickness” refers to the metal thickness in meters. Sheet resis-
tance at DC has a default unit of Ohms/square.
Normal
For the Normal planar metal type, you determine the loss using the metal thick-
ness, the current ratio and a third parameter. For the third parameter you may
choose bulk conductivity, resistivity or sheet resistance at DC.
NOTE: Metal thickness is used only in calculating loss; it does not change the
physical thickness of metalization in your circuit. The metalization in
your circuit is still modeled as zero-thickness.
Current Ratio: Normal metal models your circuit using zero thickness metal,
but your real circuit possesses a metal thickness. At higher frequencies current
flows in a thin skin around the edge of the metal, as pictured below. The current
ratio is the ratio of the current flowing on the top of the metal to the current flow-
ing on the bottom of the metal.
There are no sides in a zero thickness model; therefore when translating from
these parameters, the current which flows on the sides is ignored. In some cir-
cuits, stripline for example, the current is symmetrical with half of the current
~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~
Top
Bottom
Cross section of metalization
~~~ Current
Sonnet User’s Guide
52
Rev 16.56
flowing on the top of the metal and half flowing on the bottom of the metal. In
this instance, the current ratio is 1. If you had half as much current flowing on the
top as on the bottom, the current ratio is 0.5. This could occur for some
microstrip circuits, for example. It is difficult to know an exact value of the cur-
rent ratio without obtaining measured data on your circuit. All planar solvers not
using a thick metal model must estimate this value in order to calculate metal
loss; the Normal Metal model and Rough Metal model allow you to enter the
value. If you do not have access to measured data for your metal type, the default
values (0 for Normal Metal and 1 for Rough Metal) are reasonable for most
microstrip.
Thick Metal
For thick metal, you input four parameters: metal thickness, number of sheets, di-
rection and a fourth parameter. For the fourth parameter, you may choose bulk
conductivity, resistivity, or sheet resistance at DC. The loss is calculated in the
same manner as for the Normal metal type, except that the thickness in this case
represents a physical thickness which eliminates the need to enter the current ratio.
For more information about conductivity, resistivity, and sheet resistance at DC,
please see “Conductivity, Resistivity, or Sheet Resistance at DC,” page 51. The
direction setting determines if the thick metal extends upward into the dielectric
layer above, or down into the dielectric layer below. Up is the default.
For a detailed discussion of thick metal, see Chapter 16, “Thick Metal” on page
314.
Resistor
To define a planar metal which you wish to use as a resistor, enter the DC resis-
tance in Ohms/sq in the Rdc text entry box which appears when you select this
metal type. To use this loss model, the surface resistance should be constant over
the frequency range of interest.
Rdc/Rrf
This method allows you to enter two values: RDC and RRF. The first parameter,
RDC, determines loss at low frequency (where the conductor is much thinner than
the skin depth). Surprisingly, other electromagnetic analyses often predict zero
loss at low frequency because they assume RDC is zero.
The second parameter is the skin effect coefficient, RRF. Em multiplies this num-
ber by the square root of the frequency (in Hertz) to yield the Ohms/square value
at high frequency.
The equations for RDC and RRF are:
Chapter 4 Metalization and Dielectric Layer Loss
53
Rev 16.56
Typical values for RDC and RRF are 0.004 and 3e-7. If you start getting very
strange loss results, check RRF, paying special attention to the exponent.
TIP
Use this planar metal type if you wish to include the r effects in the metal type.
Sonnet allows you to do this by adjusting the RRF value.
Em also properly models the transition between electrically thin (low frequency)
and electrically thick (high frequency) conductors. The transition frequency from
RDC to RRF is the square of RDC/RRF. At this frequency, and a relatively narrow
band around it, both coefficients are important. If the skin effect coefficient (RRF)
is set to 0.0, then the value of RDC is used over all frequencies. This is the usual
case for resistors.
The above equation for RRF assumes that all of the current travels on just one side
of the conductor. This is a good approximation for some microstrip circuits. How-
ever, if the current really travels on both sides, this gives a pessimistic value for
the loss. The equation should be modified for other structures. Stripline, for exam-
ple, has current of equal amplitude on both the top and bottom of the conductor.
In this case, you should divide the RRF value by two, while maintaining RDC.
As an example, the conductivity (for copper is 5.8E+7 Siemens/m, giving RDC
= 0.006 Ohms/square (t = 3 m) and a microstrip RRF = 2.6E-7. In reality, the bulk
conductivity of copper, or any other given metal, may not equal the laboratory val-
ue, so the figures as calculated above are likely to be lower than actual results. The
table below provides calculated results of commonly used metals using the equa-
tions above.
RRF Skin effect coefficient ==
where
: Bulk conductivity in Siemens/meter
t: Metalization thickness in meters
* r
r = relative permeability of your metal, which is typically
1.0 for most metal materials. Magnetic materials, such as
nickel, have a r greater than 1 and therefore significantly
decrease the skin depth.
RDC 1t=
Sonnet User’s Guide
54
Rev 16.56
General
This loss model includes the metalization surface resistance described above in
Rdc/Rrf. It also includes the metalization reactance, composed of the surface re-
actance, Xdc and the surface inductance, Ls. Surface reactance, Xdc, is specified,
in Ohms/square and uses the same reactance at all frequencies. The surface induc-
tance, Ls, is specified in pH/square and models the reactance as being linearly pro-
portional to frequency.
A superconductive effect known as “kinetic inductance” slows the velocity of the
electrons with no loss of energy. This can be modeled as a surface inductance.
There are three recommended approaches to obtaining a value for Ls in supercon-
ductors. A first order approximation is to assume the metal is a perfect conductor.
This model works well for moderate frequencies (less then 150 GHz) and moder-
ate circuit dimensions which are much greater than the London depth of penetra-
tion.
Properties of Commonly Used Metals
Metal
(S/M)
RDC
(/sq)
t = 1 M
RDC
(/sq)
t = 1 mil
RRF
(Hz-1/2/sq)
“Skin Effect”
(microstrip)
Aluminum 3.72e7 0.027 1.1e-3 3.3e-7
Brass 1.57e7 0.070 2.5e-3 5.0e-7
Copper 5.80e7 0.017 6.8e-4 2.6e-7
Gold 4.09e7 0.024 9.6e-4 3.1e-7
Nichrome 1.00e6 1.000 3.9e-2 2.0e-6
Silver 6.17e7 0.016 6.4e-4 2.5e-7
Tantalum 6.45e6 0.155 6.1e-3 7.8e-7
Tin 8.70e6 0.115 4.5e-3 6.7e-7
Rrf 0=RDC 0= Ls0=XDC 0=
Chapter 4 Metalization and Dielectric Layer Loss
55
Rev 16.56
The second approach is a model which is still valid at moderate frequencies, but
includes effects due to kinetic inductance. The kinetic inductance is a function of
temperature and can be approximated in the following manner:
where
The third model should be used to account for high frequency effects or effects
due to small circuit dimensions. In these cases, the surface resistance’s proportion-
ality to 2 begins to dominate and the following model is suggested. The surface
resistance is a function of frequency-squared, so you should use the equation
below as the entry for RDC and use the FREQ function in the equation so that the
value is valid for all analysis frequencies. For more information about equation
syntax, please refer to Help. Use the following equations for this model:1
RDC 0= XDC 0= Ls0-LT=
Rrf 0=
0410 7
=
-LT -
01TT
c

4
=London depth of penetration at temp.
-0= London depth at T = 0 meters
Tc= Critical (Transition) Temperature in degrees Kelvin
H/m
Rrf 0=
RDC 1
2
---20
2-LT
3Nnns
+=
Ls0-LT=
XDC 0=
Sonnet User’s Guide
56
Rev 16.56
where
1Shen, Z. Y., “High-Temperature Superconducting Microwave Circuits,” Boston, 1994,
Artech House.
The Surface Impedance, Zs, is modeled using the following equation:
where RDC and Ls are defined in the superconductor models given above.
Rough Metal
Many circuit manufacturing processes produce planar metallization with rough
surfaces. Depending on how the metallization is formed, one, or both, of the trace
metal surfaces could be relatively rough. The Rough Metal type allows you to cap-
ture this surface roughness effect in your model.
At frequencies where the skin depth is comparable or smaller than the surface
roughness dimension, the current flow is forced into the surface roughness region
and this introduces excess resistance and excess inductance in your traces. This in
turn increases the insertion loss and insertion phase of your planar transmission
lines.
You do not necessarily need to use the Rough Metal type as you create models in
Sonnet. However, when you are working with circuits that are very sensitive to
these transmission line characteristics, it will improve your model accuracy. Gen-
erally, models with rough metal surfaces and narrow trace widths, that operate at
high frequency (above 5 GHz) are good candidates for the Rough Metal model.
The Sonnet Rough Metal Model is based on an extensive study of surface rough-
ness effects in printed circuit board conductors. See reference [1] in Appendix II,
“Sonnet References” for a detailed description.
It may be valid to apply Rough Metal to conductors from other manufacturing pro-
cesses, as long as the surface roughness effect that you are trying to capture is a
function of the trace top and bottom surfaces.
N= Conductivity of the superconductor in its normal state (Siemens/m
3
n= Normal state carrier density (1/m3)
s= Superconducting state carrier density (1/m3)
and -LT
0are as defined above
2f=radians/sec
ZsRDC jLs
+=
Chapter 4 Metalization and Dielectric Layer Loss
57
Rev 16.56
To define a Rough Metal type you must first obtain the metal trace top and bottom
surface roughness in RMS microns for the metal. Often circuit material suppliers
provide this information directly or you can ask the manufacturing group produc-
ing your physical parts.
TIP
Surface roughness can also exist on ground plane metal. If you are using a Sonnet
box cover to represent a ground plane, you can define a Rough Metal type and ap-
ply it to the cover. Rough Metal types assigned to a box cover are limited to a thin
cross section.
!WARNING
Care should be taken when using the results in a time domain simulation, as
the Rough Metal results are not guaranteed to be causal.
There are two variations of the Rough Metal: Thin and Thick. The Thin option
models the metal as a single “zero thickness” (2D sheet), like the Normal loss
model described on page 51 but with the surface roughness effect. With this op-
tion, the user must specify a Current Ratio.
Top Surface
Bottom Surface
Trace Cross Section with magnified views
of the top and bottom surfaces.
It is common for copper foils to
have one surface several times
rougher than the other surface.
Sonnet User’s Guide
58
Rev 16.56
The Thick option models the metal as two sheets of current; one for the top surface
and one for the bottom surface of the planar metal trace. This is very similar to the
Thick Metal loss model (with two sheets), with the surface roughness effect. See
Chapter 16 "Thick Metal" on page 303 for additional details on modeling metal
thickness.
For additional details about rough surface metal, please see “Rough metal model”
in the index of Help. You may access help by selecting Help Sonnet Help from
any Sonnet application.
Sense
Em solves for the current distribution; however, on occasion, you may want to
view the fields, not the current. You do this with what is called a “sense metal”.
The sense metal is a patch of conductor placed where you want to see the tangen-
tial electric field. (You cannot view the normal direction of the field with Sonnet.)
For further discussion of sense metal, see “View Tangential Electric Fields” under
Tips and App notes in Help.
How to Create a Planar Metal Type
For detailed instructions on creating a planar metal type, please refer to “metal
types” in the Index of Help. You may access help by selecting Help Sonnet
Help from the main menu of any Sonnet application or by clicking on the Help
button in any dialog box.
Via Metalization Loss
Via metalization loss is specified in the project editor in the Metal Types dialog
box which is opened by selecting CircuitMetal Types. You click on the Add
Via button to add a via metal type. Via metal types may be assigned to via poly-
gons only. Please note that edge vias are a special case which use the planar metal
type of the polygon to which they are attached. For a discussion of loss in edge
vias, please see "Edge Vias" on page 300.
Sonnet allows you to use pre-defined via metals, such as gold and copper, using
the global library. The global library allows you to define your own metal types
as well. There is also a local metal library which can be created for an individual
or to share between users.
Chapter 4 Metalization and Dielectric Layer Loss
59
Rev 16.56
Creating Via Metal Types
To assign loss to a via in Sonnet, you first define a via metal type by inputting its
loss parameters and then assign that via metal type to the via drawn in your circuit.
This section provides instructions for creating a via metal type and discusses the
loss models used in the Via Metal Editor dialog box.
The Via Metal Editor dialog box allows you to enter a loss definition for the via
metal type. There are three different loss models: Volume, Surface, and Array.
The different via loss models are discussed below.
You do not need to read the details of each loss model. Instead, you should make
yourself familiar with the loss models you are likely to use. Most users only need
concern themselves with “Volume.”
Volume Loss Model
The Volume via loss model is the most commonly used model because the values
you specify are directly related to the physical properties of the via. With the vol-
ume model, you enter a conductivity, resistivity, resistance per via, or sheet resis-
tance at DC and Volume Properties. An example using “Solid” Volume Properties
is shown below:
The Volume Properties section allows you to model both hollow and solid vias.
Examples are depicted below:
Sonnet User’s Guide
60
Rev 16.56
Hollow: If your vias are hollow, you enter the wall thickness of your vias. The
wall thickness and the shape of each via polygon are used to determine the cross-
sectional area used for the loss calculations. In the illustration below, a 3D view
of the via is shown on the left, with the cross sectional area shown on the right.
Solid: If your via is solid, you select the “Solid” radio button. The complete area
of the via polygon is used for the loss calculations. In the picture below, the cross
sectional area is the area of the circle.
NOTE: Note that defining your Volume Properties as either Wall Thickness or
Solid does not affect the subsectioning of the via or how the via
appears in the project editor.
Wall Thickness
Height
Cross Section of Via
3D Volume model of via with finite wall thickness (hollow via)
Wall Thicknes
s
Height
Cross Section of Via
3D Volume model of via with solid cross-sectional area
Chapter 4 Metalization and Dielectric Layer Loss
61
Rev 16.56
Loss Using Conductivity, Resistivity and Sheet Resistance at DC
If you specify your via loss using conductivity, resistivity, or sheet resistance at
DC, the Volume loss model is frequency-dependent with both a DC loss compo-
nent and an RF loss component. At DC, the vertical loss of a single via polygon is
a resistance given by the equation below:
Note that you may choose to use either the resistivity or sheet resistance at DC,
instead of the bulk conductivity as in the equation above to define your loss. If you
do so, this equation is modified based on the chosen parameter. For the relation-
ship between conductivity, resistivity, and sheet resistance at DC, please see
“Conductivity, Resistivity, or Sheet Resistance at DC,” page 51.
At RF, the equation is too complex to show here, but is the volumetric equivalent
of the surface impedance equation used by Sonnet for planar metal, and is de-
scribed in detail in reference [15] listed on page 422. This equation includes the
skin effect, resulting in a smooth transition from DC to high frequencies.
Loss Calculations for Volume Model Using Resistance Per Via
The loss may also be defined by using the Resistance per Via. Resistance per Via
for the volume model represents the total resistance in Ohms of the via polygon in
the vertical (Z) direction. This resistance is constant with frequency. If the via
polygon extends over more than one dielectric layer in the Z-direction, then the
total specified resistance is apportioned to each layer according to the thickness of
each layer. For example, if the specified RPV for a via polygon is 3.0 Ohms, and
if the via polygon extends from the top of dielectric layer 1 (10 um thick) to the
bottom of dielectric layer 2 (20 um thick), then 1 Ohm is apportioned to dielectric
layer 1 and 2 Ohms is apportioned to dielectric layer 2.
ZLoss 0() HA=
where
H: Height of via in meters.
: Conductivity of via metal in Siemens/meter.
A: Cross-sectional area of via based on wall thickness or solid setting.
(ohms)
Sonnet User’s Guide
62
Rev 16.56
Horizontal Loss for the Volume Model
When you are using the Volume Loss model (solid) for bar vias (mesh is set to
Bar), then the horizontal DC loss in ohms/square is calculated as follows:
The horizontal DC loss for other types of fill is geometry and meshing dependent
so it is not possible to provide an equation.
Surface Loss Model
The surface via loss model treats the via as an infinitely thin hollow tube giving it
a 2D surface as pictured below.
Loss Calculations for Surface Model
This method allows you to enter three values: RDC, RRF and XDC. The first param-
eter, RDC, determines loss at low frequency (where the conductor is much thinner
than the skin depth).
Zloss 0 1.0 H=
where
H: Height of via in meters.
: Conductivity of via metal in Siemens/meter.
Height
Perimeter of Via
Via as shown in the project editor 3D View of Surface Model of Via
2D Surface of Via
Height
Chapter 4 Metalization and Dielectric Layer Loss
63
Rev 16.56
The equation for RDC is:
The second parameter is the skin effect coefficient, RRF. At frequencies above
DC, em uses the same surface impedance equation used by Sonnet for planar
metal [15]. This equation includes the skin effect, resulting in a smooth transition
from DC to high frequencies. The equation for RRF is:
The third parameter is Xdc, the surface reactance, and is normally set to zero. This
parameter is provided for advanced users who want to customize the surface im-
pedance of the metal.
The horizontal loss at DC and RF for the Surface model is infinite.
Array Loss Model
The Array via loss model is used to represent an array of small solid vias by ap-
proximating the entire array as a single large via. This is usually done to reduce
the processing resources necessary to analyze the circuit, as having many small
vias is computationally expensive. The Array via loss model is most often used for
computing the loss of via arrays which have been simplified when translating a
circuit into a Sonnet project. In those cases, the Via metal type is automatically
created. You may also use this loss model to manually create a via metal type if
you wish to model a single via in the project editor that represents an array in your
final design.
NOTE: For a detailed discussion of array simplification, please see the Via
Array Simplification Appendix in any interface or translator manual.
RDC 1t=
where
: Conductivity of via metal in Siemens/meter.
t: Metalization thickness in meters
RRF Skin effect coefficient ==
where
: Bulk conductivity in Siemens/meter
* r
r = relative permeability of your metal, which is typically
1.0 for most metal materials. Magnetic materials, such as
nickel, have a r greater than 1 and therefore significantly
decrease the skin depth.
Sonnet User’s Guide
64
Rev 16.56
Like the Volume model defined above, it is a frequency-dependent model which
takes into account the 3D characteristics of the via array. The only difference be-
tween the Volume model and this model is the method by which the cross-section-
al area is computed. With the Volume model, the cross-sectional area is computed
based on the wall thickness or solid setting. For the Array model, the cross-sec-
tional area is computed using the Fill Factor or Density which is based on the orig-
inal via array.
The Fill Factor is a loss parameter when using conductivity or resistivity to define
the loss. The Fill Factor is a percentage indicating how much of the cross-sectional
area of the original via array is metal-filled. The Fill Factor is calculated by sum-
ming the areas of all the individual vias in the array and dividing that by the total
area of the array, defined as the bounding box which surrounds all the vias in the
array. The result is multiplied by 100 to convert to a percentage. An example of
an array and how to compute it’s fill factor is shown below.
The array, shown on top, consists of a 5 by10 array of 50 individual vias whose
cross section is a 20 micron by 20 micron square. Therefore the sum of the areas
of all the individual vias is 50 * 400 = 20,000 square microns. The total cross-sec-
tional area of this array is 40,600 square microns (290 microns * 140 microns).
This provides a Fill Factor of 49.3% ((20,000/40,600) * 100). The converted sim-
ple via modeled in Sonnet is shown on the bottom. Although the total cross sec-
Original Array
Individual via
Simplified Via
in translated
project
Chapter 4 Metalization and Dielectric Layer Loss
65
Rev 16.56
tional area of the simplified via is 40,600 microns, the Array loss model is set such
that the calculated DC loss for the via is based on the loss of the actual metal in
the array, (40,600 * 0.493 = 20,015.8) i.e., the 20,000 square microns.
NOTE: When translating circuits into Sonnet, if there are two or more arrays
which use the same metal but whose fill factors differ significantly,
two or more via metal types are created in the Sonnet project. For
example, there are two arrays, one with a fill factor of 50% and
another of 75% both using a metal named “viametal1.” The translated
project will contain two via metal types called “viametal1_1” and
“viametal1_2.”
The loss for the Array model may also be defined using the Resistance Per Via.
Resistance Per Via for the array model represents the vertical (Z) resistance in
Ohms of an individual via within the via array. As discussed above, the array of
vias is modeled as a single, merged via polygon, but the loss for that simplified
polygon is based on the actual metal present in the array.
The loss parameters of this simplified via polygon are Resistance Per Via
(Rper_via) in Ohms/via and Via Density (Dvia) in vias per square micron. The total
resistance in Ohms of the simplified via polygon is constant with frequency and is
computed as follows:
The horizontal loss at DC and RF for the Array model is infinite.
Metal Libraries
There are two types of metal libraries available in Sonnet: global and local. The
metal libraries contain standard definitions for metal types, both planar and via,
which may be used in your projects. There is no real difference between the global
and local library. The names refer to how they are used. The global library would
usually be used as a group wide library of standard metals for a group of designers.
Rsimplified via
Rper via
Dvia Avia

--------------------------------=
where Avia is the cross-sectional area of the simplified via
polygon in square microns.
Sonnet User’s Guide
66
Rev 16.56
There is a default global library supplied by Sonnet which contains definitions for
some common metals, both planar and via. The default location for the global li-
brary is in <Sonnet Data Directory>/data/libraries where <Sonnet Data Directo-
ry> is the directory in which your Sonnet software data is installed. You may
choose to use this location or can save this library in another location.
The local library would usually be used as the user's own library of metal defini-
tions. This library may be stored in a location of the user's choice. You use either
the Planar Metal Editor dialog box or the Via Metal Editor dialog box to add, edit
and delete entries to these libraries.
For instructions on adding planar and via metals to a metal library, editing metals
in a metal library or using metals defined in a metal library, please refer to Sonnet
Help available from the Help menu in any Sonnet application.
Dielectric Layer Loss
The dielectric layer loss calculations in Sonnet are virtually exact. Our web site
has a lossy conductivity benchmark you can perform on any electromagnetic solv-
er (or measurement system). See Benchmarking on the Products section of our
web site, www.sonnetsoftware.com/products/sonnet-suites/benchmarking.html.
The dielectric loss is calculated in Sonnet at the beginning stages of the analysis.
The method Sonnet uses starts with the calculation of a sum of waveguide modes.
The exact solution requires an infinite sum of modes, but Sonnet truncates this
sum to some reasonable value (the truncation has never been a source of error).
So, for each mode, if there is a lossy dielectric, the calculation involves complex
numbers instead of just real numbers. This is NOT a discretized function - it is a
continuous function. Therefore, the dielectric loss calculation can be thought of as
exact (only limited to the precision of the machine).
Dielectric Layer Parameters
You can set the dielectric constant and loss of a dielectric layer by changing the
following parameters in the project editor by selecting Circuits Dielectric Lay-
ers, then clicking on the Above, Below or Edit button in the Dielectric Layers di-
alog box. This opens the Dielectric Editor dialog box which allows you to edit the
parameters below.
Chapter 4 Metalization and Dielectric Layer Loss
67
Rev 16.56
Erel: The relative dielectric constant (r). The ratio (/o), where is the real
part of the permittivity of the dielectric layer material, and o is the permittiv-
ity of free space. The ratio is dimensionless.
Dielectric Loss Tan: The dielectric loss tangent. The ratio (’’/’), where 
’ - j’’, and is the complex permittivity of the dielectric layer material.
The ratio is dimensionless.
Conductivity: Dielectric conductivity, , where is the conductivity of the
dielectric. The default unit is S/m. You may define your dielectric loss using
conductivity or resistivity. To use conductivity, you should select “Conduc-
tivity” from the Specify Using drop list.
Resistivity: Resistivity = 1.0 / conductivity. Resistivity has a default unit of
Ohm-cm.You may define your dielectric loss using conductivity or resistivi-
ty. To use resistivity, you should select “Resistivity” from the Specify Using
drop list.
Mrel: The relative magnetic permeability (r) of the dielectric layer material.
Magnetic Loss Tan: The magnetic loss tangent of the dielectric layer mate-
rial.
One last parameter that may be specified for a dielectric layer is the Z Partitioning.
This value may be changed in the Z Partitions dialog box which is opened when
you click on the Z Parts button in the Dielectric Layers dialog box.
Z-Partitions: The z-partitioning parameter is the setting which controls the
number of partitions which the dielectric layer is divided into in the z direc-
tion. for the dielectric layer. While this parameter is specified in the dielectric
layer window, it only has an effect on the dielectric bricks on that layer.
Changing this value for a particular layer will have absolutely no affect on the
analysis if there are no bricks on the layer. If there are multiple bricks on the
layer, the Z subsectioning for all of those bricks will be identical.
The more partitions (better resolution) used in the Z-dimension, the more ac-
curate the analysis; however, analysis time and memory requirements also in-
crease dramatically.
Sonnet User’s Guide
68
Rev 16.56
Frequency Dependent Loss
Sonnet allows you to write your own frequency-dependent equations, or use a
lookup table for any of the parameters defining a dielectric. For example, you
could write a frequency-dependent equation for the conductivity of your dielec-
tric. For more information about using equations, please refer to the topic ‘Equa-
tion Syntax” in Help.
Most common dielectrics have either a fairly constant loss tangent or conductivity
as a function of frequency. Thus, it is normally not necessary to specify an equa-
tion for your dielectric loss. You can even enter both a loss tangent and a conduc-
tivity (or resistivity) for a dielectric and two values are combined to provide the
total loss for your analysis. The following equation can be used to calculate the
total effective tan used by em for this situation:
where, is the radian frequency ( = 2f, where f is frequency in hertz). Note that
tan has both a frequency-dependent term and a frequency-independent term
The above equation for tan can also be expressed in terms of conductivity as fol-
lows:
Both equations are equivalent. Each describes how em uses the input dielectric pa-
rameters to compute loss in the dielectric material.
NOTE: Note that if resistivity is input, instead of conductivity, the equation
used is altered accordingly.
See “Circuit Dielectric Layers” in the project editor’s Help for information on
setting these parameters.
tan Loss Tan
Diel Cond
Erel
o
-----------------------------+=
Total Effective Cond Loss TanErel
oDiel Cond+=
Chapter 4 Metalization and Dielectric Layer Loss
69
Rev 16.56
How to Create a New Dielectric Layer
For detailed instructions on creating a new dielectric layer, please refer to “dielec-
tric layers:adding” in the Index of Help. You may access help by selecting Help
Sonnet Help from the main menu of any Sonnet application or by clicking on
the Help button in any dialog box.
Dielectric Libraries
The dielectric libraries contain standard definitions of dielectric materials which
may be used for your dielectric layers. There are two types of dielectric libraries
available in Sonnet: global and local. There is no real difference between the two
libraries. The names refer to the way in which they are used.
NOTE: The Dielectric Libraries materials may not be used for dielectric
bricks but only for dielectric layers.
The global library would usually be used as a group wide library of standard di-
electrics for a group of designers.There is a default global library supplied by Son-
net which contains definitions for dielectric materials. The default location for
the global library is in <Sonnet Data Directory>/data/libraries where <Sonnet
Data Directory> is the directory in which your Sonnet software data is installed.
You may choose to use this location or can save this library in another location.
The local library would usually be used as the user's own library of dielectric ma-
terial definitions. This library may be stored in a location of the user's choice. You
use the Dielectric Editor dialog box to add, edit and delete entries to these librar-
ies.
Sonnet User’s Guide
70
Rev 16.56
Chapter 5 Ports
71
Rev 16.56
Chapter 5 Ports
This chapter describes the five different types of ports used in Sonnet, how they
are modeled and how to place or delete them in your circuit.
The five types of ports used in Sonnet are the standard box-wall port, the co-cali-
brated internal port, the via port, the auto-grounded port and the ungrounded in-
ternal port.
Port Type Overview
As mentioned above, the five types of ports available in Sonnet are the standard
box-wall, co-calibrated internal port, via port, autogrounded port and internal un-
grounded port. All ports in Sonnet are two-terminal devices. The box-wall and co-
calibrated port types are those used the majority of the time. Each type of port is
described below.
Box-wall:
Most common type of port.
Positive terminal is attached to a metal polygon and the negative
terminal is attached to the box-wall (ground).
De-embedding is the most accurate for this type.
Used for connections to the periphery of your geometry.
Sonnet User’s Guide
72
Rev 16.56
Reference planes may be used.
For more information on box-wall ports, see “Standard Box-wall Port,” page 87.
Co-calibrated internal port:
Used in the interior of a circuit.
By default, automatically identified as part of a calibration group
with a common ground node connection. The ground node connec-
tion can be defined as floating or the Sonnet box. Please note that
you can use a single co-calibrated port if the ground node connec-
tion is set to the Sonnet box.
When em performs the electromagnetic analysis, the co-calibrated
ports within a group are simultaneously de-embedded.
Highly accurate de-embedding.
Often used by a circuit simulation tool to connect some type of ele-
ment into your geometry at a later time outside the Sonnet environ-
ment.
Reference planes may be used.
For more information on co-calibrated internal ports, see “Co-calibrated Internal
Ports,” page 89.
Via port:
Used in the interior of a circuit.
Negative terminal is connected to a polygon on a given level and
the positive terminal is connected to a second polygon on another
level above.
Cannot be de-embedded.
Most commonly used to attach a port between two adjacent levels
in your circuit or when you want a port to go up to the box cover
rather than down to ground.
Reference planes cannot be used.
For more information on via ports, see “Via Ports,” page 98.
Auto-grounded port:
Used in the interior of a circuit.
The positive terminal is attached to the edge of a metal polygon and
the negative terminal is attached to the ground plane through all
intervening dielectric layers.
Used in place of a co-calibrated port to reduce the de-embedding
processing time at the cost of less accuracy.
Reference planes may be used.
Chapter 5 Ports
73
Rev 16.56
NOTE: When using auto-grounded ports, be aware that any coupling between
auto-grounded ports is not accounted for when performing the de-
embedding.
For more information on auto-grounded ports, see “Automatic-Grounded Ports,”
page 99.
Ungrounded Internal Ports:
Used in the interior of a circuit.
Each terminal is attached to one of two adjacent polygons.
Used in place of a co-calibrated port when you do not want any
space between the two polygons.
Will have a different ground reference from the other ports in the
circuit.
Commonly used to add a series element in post em processing.
Reference planes cannot be used.
For more information on ungrounded internal ports, see “Ungrounded Internal
Ports,” page 101.
Port Normalizing Impedances
The default normalizing impedance for a port is 50 ohms. This is done since 50
ohms is an industry standard; some analysis tools only accept the value of 50 ohms
as the normalizing impedance.
In rare cases, you may wish to have S-parameters normalized to some other im-
pedance. The normalizing impedance in Sonnet is represented by four numbers as
shown in the diagram below. First is the real part in ohms. Next comes the reactive
part in ohms. Third is the inductive part in nanohenries (nH). The last number is
Sonnet User’s Guide
74
Rev 16.56
the capacitive part in picofarads (pF). The inductive and capacitive parts modify
only the reactive portion of the load, they are included so you do not have to man-
ually re-calculate the reactive part at each frequency.
NOTE: The normalizing impedances are ignored if Y- or Z-parameters are
specified for output. Y- and Z-parameters are always normalized to
one ohm.
This capability should be used only by the most advanced user. This feature
should never be applied to data which is to be used in a standard circuit theory pro-
gram other than Sonnet’s. Many programs assume S-parameters normalized to ex-
actly 50 ohms; S-parameters normalized to another value would introduce error
into the analysis.
Changing Port Impedance
There are two methods for changing the impedance of a port. If you wish to
change the impedance of a given port, and do not need to see the impedance values
of other ports, take the following steps using the project editor:
1Select the desired port(s). This will enable the Modify menu option.
2Select Modify Port Properties to open the Port Properties dialog box.
3The impedance values can be changed by typing the desired values in
the Resistance, Reactance, Inductance and Capacitance text boxes in
the dialog box. This changes the parameters on all ports selected and all
ports with the same number as the ports selected.
V
R + jX L
C
Equivalent circuit of an em port.
Chapter 5 Ports
75
Rev 16.56
If you wish to change the impedance of a given port, and wish to see the imped-
ance values of other ports while doing so, proceed as follows:
1Select Circuit Ports from the main menu to open the Port Impedance
dialog box.
2The impedance values for any port can be changed by typing the desired
values in the Resistance, Reactance, Inductance and Capacitance fields
in the row labeled with the desired port number.
TIP
Note that the impedance of multiple ports may be changed at the same time
through the first method by selecting multiple ports before selecting Modify 
Port Properties, and by the second method, by modifying all the desired port val-
ues while the Port Impedance dialog box is open.
Special Port Numbering
All ports are assigned a number at the time they are created in the project editor.
There is no limit on the number of ports and the number of ports has a minimal
impact on the analysis time needed for de-embedding. By default, the ports are
numbered by the order in which they are created (i.e. first port created is assigned
the number 1, second port created is assigned the number 2, etc.). With this default
method, all ports are positive and unique. However, there are some applications
that require the ports to have duplicate, and even negative, numbers. There is also
a special case of Port 0 which is used for a ground connection.
Ports with Duplicate Numbers
All ports with the same number, as pictured below, are electrically connected to-
gether. As many physical ports as desired may be given the same numeric label.
Such ports are common mode ports (sometimes referred to as “even-mode” or
Sonnet User’s Guide
76
Rev 16.56
“push-push” ports) and have many uses, including simulating the even-mode re-
sponse of a circuit. See “Modeling an Arbitrary Cross-Section,” page 314, for an
example of using common mode ports.
Ports with Negative Numbers
Ports may also have negative numbers as shown in the figure below. This feature
can be used to redefine ground. Strictly speaking, em sums the total current going
into all the positive ports with the same port number and sets that equal to the total
current going out of all the ports with that same negative port number. For exam-
ple, for a circuit with a +1 port and a -1 port, em sets current flowing into port +1
to be equal to the current flowing out of port -1. These are differential mode ports
(sometimes called “balanced”, “push-pull” or “odd-mode” ports). An example is
shown below.
Ports with identical
port numbers are
electrically
connected together.
The total current
going into port 1 is
equal to the total
current going out of
port -1.
Chapter 5 Ports
77
Rev 16.56
Coplanar lines can be represented with balanced ports. See below for an example
of differential ports.
Ports are required to be in sequential order with no numbers missing. If the ports
are not in sequential order, you will receive an error message when you attempt
an analysis. If you are editing your circuit in the project editor, you may renumber
all of the ports in your circuit to ensure that they are sequential in the Port Imped-
ance dialog box (Circuit Ports). The port order for the S, Y, or Z-parameters
will be listed in increasing numeric order. For the example of a two-port, the out-
put would be S11, S12, S21, and S22. For a four-port, it would be S11, S12, S13,
S14, S21, S22, etc.
For a discussion of using ports to model coplanar waveguides (CPW), please see
“Modeling Co-Planar Waveguide (CPW) in Sonnet” under Tips and App Notes in
Help. You can find this topic by selecting “CPW” in the help Index.
NOTE: When you are referred to Sonnet’s Help, you may access Help by
selecting Help Sonnet Help from the menu of any Sonnet
application or by clicking on the Help button in any dialog box.
Using Port Number Zero for Ground Connections
The Port 0 feature allows you to add connections to ground that are de-embedded
during the em simulation. Ports can be assigned a number “0” as shown in the
An example of a
coplanar waveguide
cross junction.
Sonnet User’s Guide
78
Rev 16.56
picture below.
This feature allows you to add an ideal short circuit to your circuit in locations
other than the analysis box sidewall. In the example above, a boxwall port with a
reference plane was used to create an ideal short circuit at the edge of a patterned
ground shield. Assigning the port number 0 sets the port to be an ideal short cir-
cuit, and the reference plane is used to shift the short circuit to the desired location.
All ports with the number “0” are treated as a normal port during the main part of
the EM simulation. These ports are de-embedded in exactly the same manner as
all other ports. When the simulation for a particular frequency is completed, em
then automatically shorts out all ports with the number 0. This means that the ef-
fects of the port are de-embedded without creating extra ports in your S-parameter
results.
All port types: box-wall, co-calibrated, auto-grounded and ungrounded-internal
can be set to 0. Multiple ports within a circuit can be set to number 0 just as mul-
tiple ports can use the same number as discussed in "Ports with Duplicate Num-
bers" on page 75.
Changing Port Numbering
You can change the port number of any port after it has been added to your circuit.
Any integer, zero, negative or positive, is valid. To change the number on a port
or ports, do the following:
1Select the port(s) whose number you wish to change.
2Select Modify Port Properties from the main menu to open the Port
Properties dialog box.
Ideal short circuit
Chapter 5 Ports
79
Rev 16.56
3The number for the selected port(s) can be changed by typing the
desired port number in the dialog box. Note that if multiple ports are
selected, all are set to the number input in the dialog box.
Renumbering All Ports
Ports in your circuit must be sequentially numbered prior to analysis. If you have
deleted some ports such that your ports are no longer sequentially numbered, you
may automatically renumber all of your ports. Duplicate port numbers can be
changed or kept. If you wish to renumber your ports, proceed as follows:
1Select Circuit Ports from the project editor’s main menu to open the
Port Impedance dialog box.
2Click on the Renumber button in the Port Impedance dialog box. If you
have ports with duplicate numbers, you will be asked if you wish to
keep the duplicates or renumber them. Ports numbered 0 are not affected
by this command, all other ports are renumbered.
Port Placement with Symmetry On
Symmetry can be used to considerably reduce the amount of memory and process-
ing time required to analyze a circuit which is symmetrical about the midline of
the substrate. When symmetry is turned on in the Box Settings dialog box (Circuit
Box), everything below the line of symmetry is ignored, and all metal above the
line of symmetry is “reflected” about the symmetry line. Special care should be
given to ports when using symmetry.
Normally, if you are using symmetry, ports are placed on the line of symmetry as
pictured below.
Line of Symmetry Ports are
placed on the
line of
symmetry
Sonnet User’s Guide
80
Rev 16.56
Ports can be placed off the line of symmetry, but the port placed above the line of
symmetry must have another port equidistant from and below the line of symme-
try. These two ports must also have the same port type, port number and proper-
ties. The basic premise of symmetry is that the voltage at any given point above
the line of symmetry must be equal to the voltage at the corresponding location
below the line of symmetry. Using the same port number, port type and properties
ensures that the voltage is the same at both required points since all ports with the
same number, as pictured below, are electrically connected together.
Independent Reference Planes and Diagonal
Ports
There are two types of reference planes: shared or independent. By default, all ref-
erence planes on a box side are shared and the same reference length is used for
all ports on that side. When independent reference planes are used, any coupling
between feed lines is not removed.
Line of Symmetry
Port Pair
Port Pair
This circuit has two
sets of ports placed
equidistant from the
line of symmetry.
Note that the
corresponding ports
above and below the
line of symmetry
have the same
number.
This circuit violates port
usage with symmetry. The
ports are equidistant from
the line of symmetry but
have different port
numbers so that the
voltage is not equal.
Chapter 5 Ports
81
Rev 16.56
For some designs, feed lines do not lie in either the x or y axis, but extend diago-
nally from the port. In this case, if the port is orthogonal, the reference plane does
not extend along the feed line, so that the feed line effects are not removed in the
de-embedding process. An example is shown below.
The solution to this problem is to apply the diagonal port feature to your port. A
reference plane must be defined as independent in order to use the diagonal fea-
ture. The diagonal feature may be applied to box-wall ports, co-calibrated ports
and components. This feature is not available for auto-grounded ports or via ports.
Once a port is designated as diagonal, the reference plane will extend along the
polygon to which the port is attached as shown below.
Applying the Diagonal Port Feature to a Port
In order to apply the diagonal feature to a port, you must first add the port to cir-
cuit. As mentioned earlier, the port defaults to being an orthogonal port. After the
port has been added, you may use the Port Properties dialog box to select the di-
agonal feature and specify the reference planes. Detailed instructions are provided
below.
Sonnet User’s Guide
82
Rev 16.56
1 Add the desired ports to your circuit.
For instructions on adding a port, please see the appropriate section later in this
chapter for the type of port you wish to add. This example uses standard box-wall
ports. For instructions on adding a box-wall port, see "Adding Box-wall Ports" on
page 88. An example circuit with four box-wall ports is shown below.
2 Double click on a port to open the Port Properties dialog box.
You can also select a port and then use the Modify Port Properties command
in the project editor’s main menu to open this dialog box.
Change
button
Chapter 5 Ports
83
Rev 16.56
3 Click on the Change button in the Advanced Options section of the dialog
box.
This opens the Reference Plane Options dialog box which allows you to specify
reference plane sharing and apply the diagonal feature.
4 Click on the “Independent reference plane lengths” radio button.
This option is used to make the reference plane for this port independent of other
reference planes for other ports. As mentioned previously, by default, all ports on
the same box-wall (or same side for components or co-calibrated port groups)
share the same reference plane length. This feature allows you to use a different
reference plane length for this port, regardless of reference plane lengths for other
ports, even ports which share a box-wall. A port cannot use the diagonal feature
unless it is using an independent reference plane. When you select this option, the
“Allow this reference plane to be diagonal” checkbox is enabled.
Independent
reference plane
length checkbox
Sonnet User’s Guide
84
Rev 16.56
5 Click on the “Allow this reference plane to be diagonal” checkbox.
This option allows your reference plane to occur at any angle in your circuit, in-
stead of being in x or y axis. The polygon to which the port is attached is used to
determine the direction of the reference plane instead of the box-wall.
Chapter 5 Ports
85
Rev 16.56
6 Click on the OK button to close the dialog box and apply the changes.
The Port Properties dialog box is updated and the Length field is updated to read
“Individual” and the Orientation field to read “Diagonal.” The options for the
reference plane have been reduced. For an independent port, you may only specify
a fixed length reference plane.
7 Click on the Mouse button to set the reference plane length for the port.
Clicking on the mouse icon allows you to click in your circuit to define the
reference plane. When you click on the icon, the dialog box disappears from your
display so that you may access the window.
8 Click at the desired location for the reference plane.
For this example, the reference plane is set at the end of the polygon to which the
port is attached so that the transmission line effects for the whole feed line are
removed during de-embedding. After clicking at the end of the polygon, the Port
Port
Orientation
Reference
Length Type
Mouse
Button
Sonnet User’s Guide
86
Rev 16.56
Properties dialog box reappears with a length entered in the Ref. Plane text entry
box. Note that you could have set the reference plane by entering a length into this
text entry box.
9 Click on the OK button to close the dialog box and apply the changes.
The reference plane is drawn, along the polygon, as shown below. This completes
applying the diagonal feature to your port. To complete this design, you would fol-
low the same procedure for the other three ports.
Reference
Plane
Length
Note that the reference
plane extends along the
feed line.
Chapter 5 Ports
87
Rev 16.56
Diagonal Port Feature Limitations
There are several limitations that the user should be aware of when applying the
diagonal port feature. Once you select a reference plane as an individual reference
plane any coupling between feed lines is no longer removed during the de-embed-
ding process. Therefore, when using the diagonal port feature, care should be
taken to place ports and their feedlines far enough apart that coupling effects are
not significant. An example of the feedlines being too close to use diagonal ports
is shown below.
In addition, the em analysis cannot calculate the transmission line parameters Eeff,
and Z0 for a diagonal port since the port is not separated from the feed lines when
de-embedded. However, the resulting response data is still accurate.
Standard Box-wall Port
A standard box-wall port is a grounded port, with one terminal attached to a poly-
gon edge coincident with a box-wall and the second terminal attached to ground.
The port, therefore, breaks the connection between the polygon and the wall and
is inserted in an “infinitesimal” gap between the polygon and the wall. The signal
(plus) portion of the port goes to the polygon, while the ground (negative) portion
Sonnet User’s Guide
88
Rev 16.56
of the port is attached to the box-wall (ground). An example of a standard box-
wall port is shown below. Standard box-wall ports can be de-embedded and can
also have reference planes. This type of port is the most commonly used.
Adding Box-wall Ports
You add a standard box-wall port to your circuit by selecting the command Tools
Add Ports and clicking on the polygon edge on the box-wall where you wish
to place the port. Ports are numbered automatically, in the order in which they are
added to your circuit, starting at the number one. You may change the properties
of a port after it has been added to the circuit by selecting the port and using the
Modify Port Properties command. For detailed instructions for these tasks,
please click on the Help button in the Modify Port Properties dialog box which ap-
pears when you select the command.
Ref. Planes and Cal. Lengths for Box-wall Ports
Reference planes and calibration lengths are both used during the de-embedding
process in which the analysis engine, em removes the port discontinuity and a de-
sired length of transmission line. For details of how these values are used during
the de-embedding process, please refer to Chapter 6, “De-embedding” on page
103.
portmode
lx wall
port on
page 46.
-+
V
Box-wall
Infinitesimal
Gap
Chapter 5 Ports
89
Rev 16.56
For a box-wall port, you may set either a reference plane or a calibration length;
both values cannot be set at the same time for box-wall ports. Ports can be shared
in which case all shared ports on the same box-wall use the same reference length
or calibration standard. If the port is set to individual, then a reference plane or cal-
ibration standard may be set that applies only to that port. Please note that if the
port is individual, then the coupling between ports is not de-embedded; coupling
is only removed between shared ports. To set either of these values for box-wall
ports, use the Modify Port Properties command. For details, please click on the
Help button in the Port Properties dialog box which appears when you select the
command.
Co-calibrated Internal Ports
Co-calibrated ports are used in the interior of a circuit. These ports are often used
by a circuit simulation tool to connect some type of element into your geometry at
a later time outside the Sonnet environment. Co-calibrated internal ports are iden-
tified as part of a calibration group with a common ground node connection. When
em performs the electromagnetic analysis, the co-calibrated ports within a group
are simultaneously de-embedded using a high accuracy de-embedding technique1;
thus, coupling between all the ports within a calibration group is removed during
de-embedding. This type of port is the most commonly used internal port.
Calibration Group Properties
A co-calibrated port is always associated with a calibration group. Co-calibrated
internal ports are automatically added to a calibration group made up of ports in
reasonable proximity who also share the same type of calibration group proper-
ties: ground node connection and terminal width. By default, a new co-calibrated
port uses the Sonnet Box as the ground node connection and the Feedline Width
as the terminal width. If these properties are subsequently changed, then this af-
fects the ports with which the modified port is grouped. If you wish to observe the
grouping determined by the software before running your analysis, you may select
the command View View Subsections from the project editor main menu.
It is also possible to manually define a calibration group which overrides the au-
tomatic settings. For more information, please refer to “calibration group” in
Help’s index.
1 ”Deembedding the Effect of a Local Ground Plane in Electromagnetic Analysis,” by James C. Rautio, presi-
dent and founder of Sonnet Software, Inc. The article is available in PDF format in the Support section of
our web site.
Sonnet User’s Guide
90
Rev 16.56
For a detailed explanation of the rules used in grouping co-calibrated ports, please
see "Rules for Co-Calibrated Ports" on page 94.
Ground Node Connection
You must define how the common ground of your calibration group is connected
to your circuit. There are two types of ground node connection: Sonnet Box and
Floating.
Sonnet Box: When the ground node connection is defined as the Sonnet box, all
co-calibrated ports in the group are globally grounded to the Sonnet box. To do
this, a via is automatically created which connects to the top or bottom of the Son-
net box. You should choose this option if the element model or measured data to
be connected to these ports includes shunt elements. Examples are:
S-parameter data that includes pads or other coupling to ground.
Transistor data that includes a via in the model/measurement.
This type of co-calibrated port is illustrated below. The positive terminal is at-
tached to a polygon edge of a feedline and the negative terminal is attached to a
via to ground which is removed during de-embedding.
When the Sonnet box is selected as the ground node connection, the analysis en-
gine automatically determines the most efficient direction the ground via extends
taking into consideration both the distance and the loss of the box top or bottom
box cover. When using this type of ground, you must make sure that there is a
clear path with no metal on other levels interfering with the path to the box top or
bottom.
Box-wall
port on
page 46.
+
Via to Ground +
Via to Ground
Chapter 5 Ports
91
Rev 16.56
In addition, either the box top or bottom must have loss less than 50 ohms/sq. For
example, you should not use “Free Space” for both your box top and bottom def-
inition. If the loss is too high on both the box top and bottom for a ground via from
the calibration group to be attached, the analysis engine will issue an error mes-
sage.
Floating: When the ground node connection is defined as Floating, all co-cali-
brated ports in the group are connected to a common ground but not to the Sonnet
box. Instead, the ground node is left unconnected to the rest of your circuit. You
should choose this option if the element model or measurement data that will be
connected to these ports does not have a ground reference, or does not have shunt
elements. Examples of this are:
A series RL equivalent circuit
S-Parameter data that was measured without any pads
This type of co-calibrated port is illustrated below. Sonnet automatically adds
extra metal which connects the co-calibrated ports in a calibration group. This
extra metal is defined as Generalized Local Ground (GLG) metal since it acts as
a local ground for the ports in the calibration group. This metal is removed during
the de-embedding process. The positive terminal of a co-calibrated port is attached
to a polygon edge of a feedline and the negative terminal is attached to GLG metal.
To observe the GLG metal for either type of ground node connection, you may se-
lect the View View Subsections command in the project editor. When the Sub-
section Viewer appears, select View GLG Metal from the subsection viewer’s
main menu. Views of two calibration groups, as viewed in the subsection viewer
GLG Metal
++
Sonnet User’s Guide
92
Rev 16.56
with the GLG metal displayed, are shown below. A calibration group which is
grounded to the Sonnet box is shown on the left and one with a floating ground is
shown on the right.
Terminal Width
You must also determine how you will define the terminal width for your calibra-
tion group. Terminal width is the electrical contact width of the component which
is to be attached. This allows the current flow from the circuit geometry into the
component to be accurately modeled. There are three settings for terminal width:
Feed Line Width, One Cell, and User Defined. Please note that the terminal width
is not shown in the project editor.
Feed Line Width: This defines the terminal width as equal to the feed line to
which the co-calibrated port is attached. This is illustrated below.
Circuit Metal
GLG Metal Via
Note that in the case of the Sonnet box ground node connection, the
GLG metal does not connect the two ports. Instead, there is a via
composed of GLG metal which extends to ground.
Sonnet Box Floating
GLG Metal Polygon
Current Flow Feed Line Width
Terminal Width
Chapter 5 Ports
93
Rev 16.56
One Cell: This defines the terminal width to the smallest possible size as pictured
below.
User Defined: This allows you to enter any value desired for the terminal width.
This type of Terminal Width is shown below.
Adding Co-calibrated Ports
You add co-calibrated ports to your circuit by selecting the command Tools Add
Ports and clicking on an open polygon edge where you wish to place the port.
Once the ports have been added to the circuit, you select the ports, then use the
Modify Port Properties command which allows you to select the co-calibrated
port type. For detailed instructions on this process, please refer to “co-calibrated
internal port” in Help’s index.
One Cell
Terminal Width
Current Flow
One Cell
User Defined
Terminal Width
Current Flow
Sonnet User’s Guide
94
Rev 16.56
Rules for Co-Calibrated Ports
The set of criteria used by the software when autogrouping co-calibrated ports is
as follows:
Proximity of the ports
Calibration Group Properties: ground node connection and terminal
width (see "Calibration Group Properties" on page 89 for more details)
Physical layout rules
The physical layout rules are detailed in this section. Note that these rules should
also be followed when manually defining a calibration group. For detailed instruc-
tions on manually creating a calibration group, please refer to “co-calibrated inter-
nal port” in Help’s index.
1. No objects may be placed within the “restricted space” in the
interior of the co-calibrated port group: Metal polygons, vias, or di-
electric bricks may not be present in the rectangular area defined by the
port locations and the terminal width, as illustrated below. The bottom
circuit shows the restricted area in a multiport Component. For the best
possible accuracy, no objects should be present on any layer in this re-
stricted space, even if the ports are not on these layers.
Right Wrong
The dashed boxes identify the “restricted space” for each co-
calibrated port group. On the circuit labeled “Wrong” a metal
polygon passes through the middle of the restricted space.
Illegal
Polygon
Restricted
Space
Chapter 5 Ports
95
Rev 16.56
2. Co-calibrated ports whose ground node connections are defined
as the Sonnet box require direct access to the Sonnet top or
bottom cover: The analysis engine determines the most efficient direction
the ground via extends taking into consideration both the distance and the
loss of the box top or bottom. When using this type of ground, you must
make sure that there is a clear path with no metal on other levels interfer-
ing with the path to either the box top or box bottom.
In addition, the box top or bottom should not have loss greater than 50
ohms/sq. If the loss is too high on both the box top or bottom for a ground
via from the co-calibrated ports to be attached, the analysis engine issues
an error message.
3. Nearby objects should be placed so that coupling between the
co-calibrated ports and the object does not occur: Metal polygons,
vias, or dielectric bricks which couple to the co-calibrated ports may de-
crease the accuracy of the analysis as shown below.
4. Multiple ports on the same side of the restricted area should be
aligned: In the illustration below, the co-calibrated ports on the left are
placed incorrectly and will produce an error during an analysis. The ports
on the right are placed correctly.
Wrong Correct
The dashed lines represent the alignment plane.
Sonnet User’s Guide
96
Rev 16.56
For multi-level co-calibrated ports, ports on different metal levels need to be
aligned in the x, y plane. In the illustrations below, the multi-level calibration
group on top is correct. The one on the bottom is incorrect since the ports on the
left side of metal level 0 are not aligned with the ports on the left side of metal
level 1
5. Reference planes for each side of a co-calibrated port group are
shared and therefore use the same reference plane length: How-
ever, reference planes can be set independently for each side of the “port
rectangle” as shown below. If a co-calibrated port is attached to a poly-
gon which does not lie in the x or y plane, then the port defaults to an in-
dependent, diagonal port and the reference plane is defined only for that
port. In the graphic below, ports 3 and 4 are shared orthogonal ports
which use the same reference plane length since they are on the same or-
thogonal side of the port group. Ports 1, 6, and 5 are all shared orthogonal
ports but may use different reference lengths since they are all on differ-
ent sides of the port group. If a port was added to the left side of the port
group, it would share a reference plane length with port 6. Both port 2
Chapter 5 Ports
97
Rev 16.56
and port 7 are independent diagonal ports whose reference lengths may
be different from each other and different from any of the shared ports on
an orthogonal side of the port group.
Ref. Planes and Cal. Lengths for Co-calibrated Ports
You may specify reference planes for ports in a co-calibrated port group as dis-
cussed in rule 5 above. Calibration lengths are automatically calculated by the
software. For a detailed discussion of how reference lengths and calibration
lengths are used during the de-embedding process, please refer to Chapter 6
"De-embedding" on page 103. For directions on how to set a reference plane and/
or calibration length for a co-calibrated port, please refer to “calibration group” in
the index of Help.
Use in Components
Co-calibrated ports are used to implement the Component feature. Many of the
considerations which apply to the setup of a Component also apply to the setup for
a calibration group. To gain a deeper understanding of the co-calibrated ports im-
plementation and uses, we highly recommend that you also read Chapter 6
"De-embedding" on page 103.
Sonnet User’s Guide
98
Rev 16.56
Via Ports
A via port has the negative terminal connected to a polygon on a given circuit level
and the positive terminal connected to a second polygon on another circuit level.
A via port can also have the negative terminal connected to the top or bottom of
the box. An example of this port type on an edge via is shown below.
Unlike co-calibrated ports, em cannot de-embed via ports. However, in a circuit
which contains a combination of via ports and other port types, the other port types
can still be de-embedded. Em will automatically identify all of the other ports
present in the circuit and de-embed them, but leave the via ports un-de-embedded.
The example file “stackedpatch” has an example of a via port used in a patch an-
tenna. This example file can be found in the Sonnet example files. You may access
the Sonnet Example Browser by selecting Help Browse Examples from the
menu of any Sonnet application. For instructions on using the Example Browser,
please click on the Help button in the Example Browser window.
In most cases where you need grounded ports, your first choice would be to use
co-calibrated ports (as discussed earlier), especially since it is possible to accurate-
ly de-embed co-calibrated ports. The most common case where a via port would
be used is when you wish to attach a port between two adjacent levels in your cir-
cuit. Another application is when you wish to connect a port to the interior of a
polygon, which is not allowed for co-calibrated ports which must be added to an
open polygon edge.
Level 0
+
-
1
Via Port
Upper Polygon
Lower Polygon
An example of a circuit with a standard via port. A side view of
the enclosed area on the circuit is shown in the middle.
Level 1
Chapter 5 Ports
99
Rev 16.56
You can not apply reference planes to via ports, since it is not possible for em to
de-embed them.
Adding Via Ports
To add a via port, you must first create a via. The via can be an edge-via or a via
polygon. For more details on how to create vias, see “vias” in Help’s index.
Once the via is in place, click on the Add a Port button in the tool box and click
on the via to add a port.
NOTE: The via port only appears in the project editor on the bottom level of
the via; if you are adding the port to any other level of the via, the
port is not displayed in the project editor. To see the port, go to the
metal level on which the bottom of the via is placed.
Automatic-Grounded Ports
An automatic-grounded port is a special type of port used in the interior of a circuit
similar to a co-calibrated internal port. This port type has the positive terminal at-
tached to the edge of a metal polygon located inside the box and the negative ter-
minal attached to the ground plane through all intervening dielectric layers. An
auto-grounded port with a reference plane is shown below. Auto-grounded ports
can be de-embedded by the analysis engine.
In most circuits, the addition of co-calibrated ports has little influence on the total
analysis time of the em job. However, for some circuits, co-calibrated ports may
require more time in the de-embedding phase of the analysis. In these cases, you
Auto-
grounded
port
picture.
Sonnet User’s Guide
100
Rev 16.56
may wish to use auto-grounded ports, which are more efficient but less accurate
than co-calibrated ports, since the de-embedding for auto-grounded ports does not
take into account the coupling between the auto-grounded ports.
Special Considerations for Auto-Grounded Ports
Metal Under Auto-Grounded Ports
Similar to co-calibrated ports which use the Sonnet box as the ground node con-
nection, you cannot have metal directly beneath an auto-grounded port in a multi-
layer circuit. Auto-grounded ports are two-terminal devices with the positive ter-
minal connected to an edge of a metal polygon and the negative terminal connect-
ed to the ground plane. When em detects the presence of an auto-grounded port,
it automatically connects the two terminals in this manner. This includes circuits
which have multiple dielectric layers between the polygon and the ground plane.
However, in order for em to accomplish this, there must be a direct path from the
edge of the metal polygon to the ground plane. When an auto-grounded port is
used in a circuit where there is more than one dielectric layer between the port and
the ground plane, em checks to make sure that there is no metal directly beneath
the auto-grounded port. If metal is found, em prints an error message and stops.
Edge of Metal Polygon is Lossless
Auto-grounded ports can attach to the edge of any metal polygon in the interior of
a circuit. There are no restrictions on the loss parameters of the metal used in the
polygon. However, along the edge of the metal polygon where the port is attached,
em does force the cells to be lossless. For most circuits, this should have little or
no effect on the results. If, however, the port is attached to a highly lossy metal
polygon, such as a thin-film resistor, the edge cell(s) of that polygon will be made
lossless, and the output results may be affected.
Using Negative Port Numbers with Autogrounded Ports
You are able to assign negative port numbers to autogrounded ports but should be
aware of some special considerations when doing so. The two autogrounded ports
(+n and -n), although associated by port number, are still de-embedded separately
so the coupling between the ports is not de-embedded which can affect the accu-
racy of your data. Because these ports are de-embedded separately, the port im-
pedance, Z0 only accounts for the impedance of the single line attached to the
autogrounded ports since the calibration standard does not include both lines of
the differential pair. Lastly, using reference planes in this case may also affect
your data, since reference planes are used to de-embed a single transmission line
while this configuration creates a differential transmission line.
Chapter 5 Ports
101
Rev 16.56
Adding Auto-grounded Ports
You add an auto-grounded port to your circuit by selecting the command Tools
Add Ports and clicking on the open polygon edge where you wish to place the port.
Once the port has been added to the circuit, you select the port, then Modify 
Port Properties. In the Port Properties dialog box which appears, you select the
auto-grounded type. For detailed instructions on this process, please refer to
“auto-grounded ports” in Help’s index.
Ref. Plane and Cal. Length for Autogrounded Ports
To set a reference plane for an auto-grounded port, use the Modify Port Prop-
erties command. Calibration standards are automatically calculated by the soft-
ware. You enter the desired Reference Plane in the appropriate field. For detailed
instructions please refer to Help. Note that if you enter a reference plane, it applies
only to the selected port(s). For details on how reference planes and calibration
lengths are used in the de-embedding process, please refer to Chapter 6 "De-em-
bedding" on page 103.
TIP
Changing a port to an autoground type and setting up a reference plane for the port
can be accomplished at the same time in the Port Properties dialog box. It is also
possible to set reference planes for multiple auto-grounded ports by selecting the
desired ports, selecting Modify Port Properties and inputting a value in the Ref.
Plane text entry box in the Port Attributes dialog box.
Ungrounded Internal Ports
An ungrounded internal port is located in the interior of a circuit and has its two
terminals connected between abutted metal polygons. An ungrounded internal
port is illustrated below. Note that internal ports have their negative terminals on
the left or top side of the port depending on how the port is oriented. Ungrounded
internal ports can be de-embedded by em, however, you may not set a reference
Sonnet User’s Guide
102
Rev 16.56
plane or calibration length. Ungrounded internal ports are not as accurately de-em-
bedded as co-calibrated internal ports, but they do not require any space between
the two polygons as is required for a co-calibrated port.
Ungrounded internal ports are not allowed on the edge of a single polygon because
this would leave one terminal of the port unattached. Also, care should be taken
in interpreting the results for circuits which use these ports since the ports do not
all access a common ground.
You add an ungrounded-internal port in the same manner that you add a standard
box-wall port; for details, see “Adding Box-wall Ports,” page 88.
+
a) b)
1
-
+
1
-
Chapter 6 De-embedding
103
Rev 16.56
Chapter 6 De-embedding
Introduction
De-embedding is the process of calibrating the ports, similar to a calibration of an
RF measurement system with the probes or connectors used in the measurement.
Sonnet de-embedding is performed automatically, behind the scenes, and in most
cases, is not a concern for the user. However, just as in an RF measurement, un-
derstanding of the inner workings of the process can sometimes allow you to de-
sign your circuits in such a way as to produce more accurate results or analyze
your circuit more efficiently.
Each port in a circuit analyzed by em introduces a discontinuity into the analysis
results. In addition, any feed transmission lines that might be present introduce
phase shift, and possibly, impedance mismatch and loss. Depending upon the na-
ture of your analysis, this may or may not be desirable. De-embedding is the pro-
cess by which the port discontinuity and feed transmission lines are removed from
the analysis results.
The figure on page 104 illustrates the general layout of a circuit to be analyzed
with em. The device under test (DUT), shown as a box in the figure, is the circuitry
for which we wish to obtain analysis results. The DUT is located inside the metal
box and is connected to one or more ports. The ports may be located on box-walls,
as in the figure, or in the interior of the metal box (see Chapter 5 for a description
of port types available in em). Typically, feed lines are necessary to connect the
ports to the DUT.
Sonnet User’s Guide
104
Rev 16.56
When de-embedding is enabled, em performs the following sequence of steps:
1Calculates port discontinuities.
2Removes effects of port discontinuities from analysis results.
3Optionally shifts reference planes (negates effects of feed transmission
lines from analysis results).
4For most port types, calculates transmission line parameters Eeff, and Z0
for the feed transmission lines. For more information, please see "Plot-
ting Z0 and Eeff" on page 126.
Upon completion of the de-embedding process, em outputs de-embedded S-pa-
rameter results.
The de-embedding algorithm uses a Short Open Calibration (SOC) technique. For
an in-depth discussion of the calibration technique, please see reference [4] and
for a discussion of the de-embedding technique used for co-calibrated ports see
reference [6] in Appendix II, “Sonnet References.” Both of these articles are avail-
able in PDF format on the Sonnet web site.
Port
Port
Metal Box-walls
Device
Under
Test
(DUT)
Transmission Line
Transmission Line
General layout of a circuit to be analyzed with em.
Chapter 6 De-embedding
105
Rev 16.56
Port Discontinuities
The port discontinuity for box-wall ports is described in the section that follows.
The discontinuity for the other types of ports may be different, but the process out-
lined below is similar for all port types. Box-wall ports have one port terminal
connected to a polygon inside the metal box, and the second port terminal connect-
ed to ground (see the figure on page 88). The port discontinuity is modeled as a
series resistor, R, and capacitor, C, shunted to ground as shown below. If the cir-
cuit being analyzed is completely lossless, the resistor value, R, is zero. Even with
loss in the circuit, the capacitive reactance is normally very large compared to the
resistance.
When enabled, em’s de-embedding feature automatically calculates the values of
R and C for each box-wall port present in the circuit. The port discontinuities are
then removed by cascading a negative R and C as illustrated below.
R
C
S-parameters from em
without de-embedding
Device
Under
Test
Box-wall port
discontinuity
Port discontinuity associated with a box-wall port.
Sonnet User’s Guide
106
Rev 16.56
Shifting Reference Planes
Feed lines are required in many circuits to connect ports to the device under test
(DUT). If the length of a transmission line is more than a few degrees relative to
a wavelength, unwanted phase (and possibly loss) will be added to the results. If
the impedance of the transmission line differs from the normalizing impedance of
the S-parameters (usually 50 ohms), an additional error in the S-parameters re-
sults. Thus, if we are only interested in the behavior of the DUT, any “long” feed
lines connecting the ports to the DUT should be negated during de-embedding.
The process of negating lengths of transmission line during de-embedding is
known as “shifting reference planes”.
Reference planes may be specified in the project editor for box-wall, co-calibrat-
ed, and auto-grounded ports, but not ungrounded-internal and via ports. When
your circuit contains a reference plane, and de-embedding is enabled, em automat-
ically builds and analyzes the calibration standards necessary to de-embed the port
and shift the reference plane by the specified length.
R
C
S-parameters from em
without de-embedding
-R
-C
Device
Under
Test
Block cascaded to negate
box-wall port discontinuity Box-wall port
discontinuity
S-Parameters
from em with
de-embedding.
De-embedding automatically cancels the discontinuity associated with a box-wall port.
Chapter 6 De-embedding
107
Rev 16.56
NOTE: Reference planes are not necessary for de-embedding. If you do not
specify a reference plane in the project editor, the reference plane
length defaults to zero. This means that em will not shift the
reference plane for that port when de-embedding is enabled.
However, em will negate the discontinuity for that port.
Single Feed Line
Continuing with the box-wall port example, the figure below shows a circuit with a
length of transmission line, TRL, inserted between a box-wall port and the device
under test.
R
C
TRL
Box-wall port
discontinuity
Transmission line
Device
Under
Test
Results from em
without de-
embedding
Port discontinuity and transmission line
associated with a box-wall port.
Sonnet User’s Guide
108
Rev 16.56
When the circuit has a reference plane, em negates the transmission line in a man-
ner similar to that used to remove the port discontinuity. Em calculates S-param-
eters for the line alone, and then cascades a “negative” line along with negative R
and C as illustrated in the next figure.
A Common Misconception
As explained above, a shifted reference plane negates the effects of one or more
transmission lines using circuit theory after the simulation of the entire circuit.
This concept is shown in the picture below:
R
C
Results from em
without de-embedding
TRL
Box-wall port
discontinuity
Transmission line
-R
-C
-TRL
Results from em
with de-embedding
Device
Under
Test
Block cascaded
to negate port
discontinuity
Block cascaded
to negate transmission line
Illustration of how de-embedding negates the port discontinuity
and transmission line associated with a box-wall port.
A Sonnet
structure with a
shifted
reference plane
The entire
Sonnet
structure
simulation
A uniform
transmission
line
-=
Chapter 6 De-embedding
109
Rev 16.56
Notice that reference planes do not remove the transmission line metal, but only
negate it. Shifting a reference plane is not the same as removing the metal from
the simulation:
A shifted reference plane does not remove the fringing fields due to the step in
width. This concept is illustrated below. Note that the fringing fields still exist in
the final Sonnet results after de-embedding.
Rules for Reference Planes
The Sonnet project editor places very few restrictions on the reference planes
which may be defined for a given circuit. This is done intentionally so as to pro-
vide maximum flexibility for all users. However, there are some basic guidelines
concerning reference planes that should almost always be followed. These guide-
lines are discussed below.
Feed Lines Must Be Transmission Lines
The first guideline is to ensure that your feed lines are true TEM or quasi-TEM
transmission lines. This means the following:
A Sonnet structure
with a shifted
reference plane
The same
structure with
no feed line
=
A Sonnet structure
with a shifted
reference plane
The same structure with
fringing from the feedline
which was negated
=
Sonnet User’s Guide
110
Rev 16.56
Feed lines must be of uniform width across the entire distance which the
reference plane covers.
Feed lines must not over-mode.
The feed line(s) must not have an unusually high amount of loss. The
metal must be conductive enough to allow power to reach the other side
of the line. In addition, the dielectric must be resistive enough so the
power is not shorted to ground before it reaches the other side.
De-embedding Without Reference Planes
Reference planes are optional for co-calibrated, auto-grounded, and orthogonal
box-wall ports but are required for diagonal boxwall ports. If you do not specify a
reference plane for a particular port in the project editor, em will assume a zero-
length reference plane for that port. This means that de-embedding will remove
the discontinuity associated with that particular port, but will not shift the refer-
ence plane for it.
As discussed in the next section, em may generate bad de-embedded results if you
attempt to remove a very short (but greater than zero) reference plane for a box-
wall port. However, if you de-embed without a reference plane, em will not at-
tempt to negate any length of transmission line at all. As a result, de-embedding
without a reference plane does not lead to any error. Therefore, we recommend
that you de-embed without reference planes rather than specify very short, non-
zero, reference plane lengths for orthogonal boxwall ports.
Short Reference Planes for Boxwall Ports
While auto-grounded and co-calibrated ports do not have a minimum length for
their reference planes, short reference planes for boxwall ports, both orthogonal
and diagonal, can cause problems with your de-embedded results. If the reference
Chapter 6 De-embedding
111
Rev 16.56
plane for a boxwall port is very short relative to the substrate thickness or the
width of the transmission line, em may generate poor de-embedded results. This
is due to one or both of the reasons discussed below.
As shown above, the port is too close to the device under test (DUT). There are
fringing fields associated with the port and separate fringing fields associated with
the DUT. If the port and DUT are too close, the fringing fields interact. The de-
embedding algorithm (which is virtually identical to algorithms used in de-em-
bedding measured data) is based on circuit theory and cannot handle fringing field
interaction. See reference [68] in Appendix II, “Sonnet References” for a detailed
description of the problem.
The other possible problem is that the calibration standard is too short: The cali-
bration standard must be long enough such that the currents on the line(s) behave
like standard transmission line(s). Since the calibration standard length for a box-
wall port is based on the reference plane length, a short reference plane can result
in inaccurate results. For more details about this problem, see "Modifying Calibra-
tion Standard Lengths" on page 118.
There is no precise rule as to how long a boxwall port’s reference plane must be
made in order to prevent the above effects from corrupting the de-embedded re-
sults. The required length is dependent upon the circuit geometry and the nature
of the analysis. However, we recommend that you use reference planes equal to
or greater than several times the distance to the nearest ground metal. This is suf-
ficient for most types of analyses.
Poor de-embedding results may be obtained when very short (but
non-zero) reference plane lengths are used for boxwall ports.
DUT
1
Box-wall
Fringing fields from DUT
interact with fringing
fields from port.
Sonnet User’s Guide
112
Rev 16.56
Reference Planes Longer than the Feedline
Generally, reference planes should not be longer than the feed line(s) attached to
the port. This is because a reference plane is “negating” a transmission line. Thus
if your reference plane is longer than your feedline, you are effectively attempting
to negate a part of a transmission line which does not exist. Doing so may result
in non-physical S-parameters.
To illustrate this problem, consider the valid circuit shown below. In this circuit,
the reference planes are the same length as the feedlines. When de-embedding is
enabled, the port 1 discontinuity is negated along with a transmission line of width
W1 and length L1. Similarly, the port 2 discontinuity is negated along with a trans-
mission line of width W2 and length L2. The de-embedded result is a set of 2-port
S-parameters for the block in the middle of the circuit which is usually the desired
data.
Now, consider the figure on page 113. This circuit is identical to the circuit shown
above except that the length of the reference plane associated with Port 1 has been
increased. If em is run with de-embedding enabled on this circuit, it “negates” a
length of transmission line equal to the specified reference plane length. This oc-
curs even though the actual feed transmission line is shorter than the reference
W1 W2
L1
L2
Chapter 6 De-embedding
113
Rev 16.56
plane length. As a result, the de-embedded S-parameters may be non-physical
(i.e., the results may not obey the laws of physics by being non-passive or non-
causal).
A second de-embedding example leading to non-physical S-parameter results is
shown in the next figure. In this example, the circuit has two via pads on each side
of the port transmission line. The via pads are grounded to the box-wall.
Discontinuity
begins here
W1
L1
W2
L2
Example circuit for which non-physical results may
be obtained when em is run with de-embedding on.
Sonnet User’s Guide
114
Rev 16.56
When em is run with de-embedding enabled on this circuit, it “negates” three cou-
pled feed lines with a length equal to the reference plane length. Since the refer-
ence plane extends from the box-wall beyond the vias, the de-embedded results
may be non-physical.
Calibration Standards
A user will rarely need to set their own calibration standard, normally using the
lengths automatically calculated by em. However, understanding calibration stan-
dards can help you simulate your circuit in the most efficient way while ensuring
the accuracy of your response data.
L
W1
W2
W3
W4
L2
Analyzing this may result in non-physical results because the
reference plane is longer than the coupled feedline.
Chapter 6 De-embedding
115
Rev 16.56
In order to de-embed a port discontinuity, Sonnet must electromagnetically ana-
lyze several calibration standards which include the same port discontinuity as is
in the primary circuit. For example, to de-embed port 2 in the circuit below, the
calibration standards contain a transmission line with the same line width as the
primary circuit.
For box-wall ports, Sonnet uses the Short Open Calibration (SOC) technique
which means a short and open standard must be analyzed. For orthogonal ports
(ports which are connected to transmission lines which are perpendicular to a Son-
net box-wall), the two calibration standards look like the picture below, where the
dashed line is replaced with an electric wall (for the short circuit) and a magnetic
wall (for the open circuit).
Cal 1: Electric Wall
Cal 2: Magnetic Wall
Sonnet User’s Guide
116
Rev 16.56
For box-wall ports, any object that touches the same wall as the port will be in-
cluded in the calibration standard. This rule applies to vias, dielectric bricks, and
metal on other levels as shown in the example below. This metal is included in the
calibration standard.
For diagonal ports, Sonnet uses the single three-port calibration standard shown
below, where the short and open data are generated by a single analysis, and by
short-circuiting and open-circuiting port 3.
Cal StandardCircuit
Diagonal Ports
Cal1: Port 3 short circuited
Cal2: Port 3 open circuited
Chapter 6 De-embedding
117
Rev 16.56
Shown below are some examples of the calibration standards used for various port
types. The calibration length for the boxwall ports is “L” and for all other ports the
calibration length is the same length as the reference plane.
For any of the pictures above which show a reference plane, em first analyzes the
structure without the reference planes, then simulates additional standards (not
shown) to remove the port discontinuity and shift the reference plane, just as it
would if this were your primary structure. For example, in the two-port co-cali-
brated port example above, Sonnet first analyzes the structure shown in the pic-
ture, and then analyzes the boxwall port calibration standards in order to de-embed
up to the co-calibrated ports.
Standard Boxwall Port Two shared boxwall ports Diagonal boxwall port
Group of two co-calibrated ports Group of four co-calibrated ports
Autogrounded port Internal Port
TW TW is the
terminal
width of the
co-cal port
as defined
by the user
on a box side
Sonnet User’s Guide
118
Rev 16.56
Modifying Calibration Standard Lengths
Sometime the calibration standard automatically determined by em is longer than
necessary, which can increase the analysis time. In most cases, de-embedding is
not a large part of the analysis, so the effect of a longer calibration standard is neg-
ligible. However, where the calibration standard is comprised of a significant
amount of metal, as for example, coplanar waveguide circuits, longer calibration
standards can impact analysis time.
There are also cases in which the automatically determined calibration standard is
too short. This can cause errors in your de-embedded results since the line must
be long enough to allow the currents flowing on the line to exhibit a traditional
TEM mode (see "Feed Lines Must Be Transmission Lines" on page 109). A box-
wall port with a calibration standard which is too short is illustrated below. Notice
the length of the calibration standard is even shorter than the width.
DUT
1
Box-wall
1
Box-wall
Circuit Calibration Standard
Chapter 6 De-embedding
119
Rev 16.56
In these cases, you may wish to override the automatically determined length. The
table below shows for which port types you may set the calibration length manu-
ally.
The second column shows how the default calibration length is determined. The
third column shows whether a manual setting is possible and if so, how to input
the desired length. For example, for standard boxwall ports which have a reference
plane, changing the reference plane length changes the calibration standard
Port Type Default Cal
Length Manual Setting of Cal
Length?
Standard Boxwall with
reference plane
Reference
plane length
Yes: Change reference plane
Standard Boxwall with-
out reference plane
Automatic Yes: Enter Cal Length in the
Port Properties dialog box
Diagonal Boxwall Reference
plane length
No
Co-calibrated Auto Yes: Enter Cal Length in the
Port Properties dialog box
Autogrounded Auto Yes: Enter Cal Length in the
Port Properties dialog box
Internal Ungrounded Auto No
Sonnet User’s Guide
120
Rev 16.56
length. For ports which allow you to change the calibration length, double-click
on the port and enter the desired value in the Cal Length text entry box as shown
below.
Coupled Transmission Lines
Sometimes, your circuit may contain multiple parallel feed lines as shown in the
circuits below:
There are two issues in the above examples:
1The ports are close to each other. When ports are close to each other,
their fringing fields can couple to each other. If the ports are not cali-
brated at the same time, this would result in errors. Fortunately, Sonnet
uses coupled lines for the calibration standards (by default), so all cou-
Cal Length
text entry box
Chapter 6 De-embedding
121
Rev 16.56
pling between the fringing fields of the ports is removed in the de-
embedding process (see the figure on page 122.)
2The feed lines are close to each other. When feed lines are close to each
other, they can couple to each other. If you are using reference planes,
this coupling should be removed. Since calibration standards are cou-
pled lines, this coupling is removed by default.
Both of these issues are resolved by using “shared” reference planes. When the
reference planes are set to “shared,” coupled lines are used for calibration stan-
dards, thus removing the coupling between the ports and the feed lines. The alter-
native to shared reference planes is “independent” reference planes. The table
below summarizes which types of reference planes, shared or independent, are
used for which type of ports:
The sections below discuss the implications of using shared or independent refer-
ence planes.
Shared reference planes
When ports have shared reference planes:
The length of each reference plane is the same.
Calibration standards are composed of multiple coupled lines as shown
below.
Port Type Reference Plane Type
Boxwall (orthogonal) with reference plane Shared or Independent
(Determined by user)
Boxwall (diagonal) Independent only
Co-calibrated (orthogonal using Sonnet Box
Ground)
Shared only
Co-calibrated (diagonal using Sonnet Box
Ground)
Independent only
Co-calibrated (Floating Ground) None
Auto-grounded Independent only
Internal Ungrounded None
Via Port None
Sonnet User’s Guide
122
Rev 16.56
Coupling between the fringing fields of the ports is removed to provide
a more accurate result.
Coupling between feed lines is removed over the entire length of the
reference plane.
Sonnet does not calculate a Z0 or Eeff. This is because the lines are
treated as coupled, and Z0 and Eeff are only valid for a single
transmission line. Two coupled lines, for example, have two modes, and
thus two Z0 and Eeff values. If you try to plot the Z0 or Eeff value of a
shared port, you will receive an error message. If you are looking at the
text output results, you will see “mp” de-embedding codes in place of
the Z0 and Eeff values.
The only ports which can have shared reference planes are orthogonal boxwall
ports and orthogonal co-calibrated ports with a Sonnet box ground node connec-
tion. For orthogonal boxwall ports, only ports on the same box-wall may be
shared. Orthogonal box-wall ports share reference planes by default. A user may
choose to make these reference planes independent. See the next section for de-
tails on changing the reference planes from shared to independent.
Independent reference planes
When ports have independent reference planes:
The length of each reference plane may be set independently.
Calibration standards are composed of single (uncoupled) lines as
shown below.
Coupling between the fringing fields of the ports is not removed. Thus,
ports must be far apart to ensure an accurate result.
Coupling between feed lines is not removed. Therefore, you should not
Cal 1: Magnetic Wall
Cal 2: Electric Wall
Calibration Standard for shared reference planes
Chapter 6 De-embedding
123
Rev 16.56
use independent reference planes when the lines are close enough to
couple.
Sonnet calculates a Z0 or Eeff for each feed line without the influence of
the nearby lines.
Auto-grounded ports, diagonal boxwall ports, and diagonal co-calibrated ports are
always independent. Thus, they should not be used if the ports or feed lines are
close to each other. This concept is shown below:
Cal Standards
Orthogonal ports can use shared reference planes, so being in close proximity is
allowed. However, Diagonal ports must use independent reference planes, so being in
close proximity is not allowed.
Orthogonal Ports Diagonal Ports
Sonnet User’s Guide
124
Rev 16.56
Orthogonal boxwall ports on a given box-wall may be set to independent or
shared. For instructions on how to change an orthogonal boxwall port from shared
to independent, please see "Applying the Diagonal Port Feature to a Port" on page
81.
Ports on different box-walls are always treated as independent from one another
as shown below.
Each port is calibrated independently because each port is
on a different box-wall.
Chapter 6 De-embedding
125
Rev 16.56
De-embedded Output Format
The listing below shows an example of de-embedded results obtained from the
analysis of a filter circuit. This example illustrates the format of the de-embedded
data as output in the analysis monitor and saved as part of your project. This same
format is used in any output files generated by em as part of the analysis or by the
user when using the response viewer.
You should notice the following about the results in above:
The two lines which start with “De-embedded” and “Magnitude/Angle”
are comment lines which describe the analysis results on the line below.
In this example, the results are de-embedded 50 ohm S-parameters in
Touchstone magnitude/angle format.
The next line gives the analysis results.
The remaining two lines give de-embedding information for each port in
the circuit. The various fields are defined as follows:
P#: Port number.
F: Frequency in units defined earlier in the results file.
Eeff: Effective dielectric constant of the transmission line connected to the port. Com-
plex value: [Real Imaginary].
Z0: Characteristic impedance of the transmission line connected to the port, in ohms.
Complex value: [Real Imaginary].
R: Equivalent series resistance of port discontinuity, in ohms.
C: Equivalent series capacitance of port discontinuity, in pF.
Run 1: Tue Jun 07 15:41:13 2011. sonnet9.aa.99999.
Em version 13.52 (32-bit Windows) on MENDOZA local.
Frequency: 8.975 GHZ
Frequency completed Tue Jun 07 15:41:16 2011.
De-embedded S-Parameters. 50.0 Ohm Port Terminations.
Magnitude/Angle. Touchstone Format. (S11 S21 S12 S22).
8.97500000 0.080414 143.59 0.996762 53.593 0.996762 53.593 0.080414 143.59
!< P1 F=8.975 Eeff=(6.65223738 0.0) Z0=(50.657578 0.0) R=0.0 C=0.07105378
!< P2 F=8.975 Eeff=(6.65223738 0.0) Z0=(50.657578 0.0) R=0.0 C=0.07105378
Analysis completed Tue Jun 07 15:41:23 2011.
Example showing format of results obtained when de-embedding is enabled in em.
Sonnet User’s Guide
126
Rev 16.56
NOTE: These values are not output for diagonal ports or ports with shared
reference planes.
De-embedding Codes
There are various conditions for which these values cannot be calculated and a de-
embedding code is shown instead. For example, if you have shared reference
planes (multiple ports on the same box-wall or multiple ports on the same side of
a component, for example), there are multiple values for each item. In order to
keep the output format concise, a de-embedding code is displayed in place of a
longer explanation. Please see “De-embedding Codes” in Help for explanations of
the code messages. To access Help, select Help Sonnet Help from any Sonnet
application.
Plotting Z0 and Eeff
When your circuit is de-embedded, the characteristic impedance, Z0, and the ef-
fective dielectric constant, Eeff, of the transmission line are calculated for each
port. These values are calculated for all port types except diagonal ports, ports
which share a reference plane and via ports.
NOTE: For ABS sweeps, Z0 and Eeff are calculated only for discrete
frequencies. These values are not calculated at adaptive data points.
Calculating Z0 and Eeff for Boxwall Ports
It is important to note that calculating the transmission line parameters is based on
the calibration standard. For boxwall ports, the calibration standard, as discussed
earlier in the chapter, is based on a cross section of any metalization touching the
box-wall, on all levels, that the port under consideration is on. This cross section
is extended the length of the calibration standard. Since the cross section is taken
at the box-wall, the interior of the circuit does not affect the basis of the calcula-
tion.
Chapter 6 De-embedding
127
Rev 16.56
In the first example shown below, there is a single feed line on the box-wall, with
no metal on another level. Therefore, the thru line upon which the calculation is
based is reasonable and the resulting values are accurate.
In the second example shown below, the circuit is more complex and the calibra-
tion standard thru line does not accurately reflect the actual circuit. Remember that
the thru line used for the calculation is based on the cross section at the box-wall
and is extended the length of the reference plane. In the actual circuit the metal on
the level below the port only extends from the box-wall for a length much shorter
than the calibration standard, but in the calibration thru line, this metal is extended
Original circuit Cal Standard
Electric/
Magnetic
Wall
Sonnet User’s Guide
128
Rev 16.56
for the whole length and the other metal polygons in the interior are completely
ignored. These transmission line parameters will not be as accurate as the first ex-
ample.
TIP
The RLGC parameters can be extracted from an EM simulation of a short section
of any periodic structure including the feed line of the actual circuit pictured
above. Please see "N-Coupled Line Model" on page 369 for more information.
Actual Circuit
Level 0 Level 1 3D View
Level 0 Level 1 3D View
Calibration Standard Thru Line
Chapter 6 De-embedding
129
Rev 16.56
Z0 and Eeff are also not as accurate for feed lines with non-uniform width. Because
the cross section is extended uniformly from the wall the length of the calibration
standard, a feed line with a varying width is not accurately modeled when calcu-
lating the transmission line parameters, as shown below.
Lengths at Multiples of a Half-Wavelength
Eeff and Z0 cannot be calculated when the length of the calibration standard is an
integral multiple of a half wavelength. At some point as the length of the calibra-
tion standard approaches a multiple of a half-wavelength, em is able to determine
that the calculated values of Eeff and Z0 are becoming corrupt. When this occurs,
em replaces the Eeff and Z0 data with the de-embedding code “undefined: nl” (see
“De-embedding Codes” in Help). Note, however, that while em is unable to deter-
mine Eeff and Z0, the de-embedded S-parameter results are still perfectly valid.
Lengths Much Greater than One Wavelength
If the length of the calibration standard is more than one wavelength, incorrect Eeff
results might be seen. However, the S-parameters are still completely valid.
Em’s calculation of Eeff is based on phase length. If the calibration standard is,
say, 365 degrees long, em first calculates Eeff based on a phase length of 5 degrees.
However, if a non-physical result is seen, em increases the calculated phase length
by 360 degrees at a time until physical (i.e., Eeff 1.0) results are obtained. This
usually corrects the problem.
Actual Circuit
Calibration Standard Thru Line
Sonnet User’s Guide
130
Rev 16.56
Thus, it takes a particularly long calibration standard before the Eeff calculation
fails. When it does fail, it suddenly jumps down to a value just above 1.0. Z0 and
the de-embedded S-parameter data still have full validity. This failure mode is
rarely seen.
Single Transmission Line
When you wish to determine the transmission line parameters, Z0 and Eeff, for a
single transmission line, you should use a standard box-wall port for the best re-
sults. It is not recommended that you use an ABS sweep, since the Z0 and Eeff data
is only calculated for the discrete data points, but not for any adaptive data; there-
fore an analysis will yield very few data points. If there are any problems in cal-
culating Z0 and Eeff, then em outputs a de-embedding code in place of a value. The
meaning of these codes may be found in Help under “De-embedding Codes.”
Creating the Plot
It is possible to plot Z0 or Eeff as a function of line width for a single transmission
line by using a dimension parameter for the width of the feedline. You then ana-
lyze the circuit using a parameter sweep varying the width of the line over the de-
sired range of values. Once you have the analysis results, you can use the response
viewer to create a plot of your data. A detailed example is provided below.
This example uses a simple stripline circuit show below.
Chapter 6 De-embedding
131
Rev 16.56
1 Add a dimension parameter to vary the line width.
A symmetric dimension parameter would work best with this circuit since it uses
symmetry. The circuit is shown below with a symmetric dimension parameter
“Width” added with its point sets highlighted. For more information about
symmetric parameters and how to add them to your circuit, please see
"Symmetrical Dimension Parameters" on page 180.
2 Set up a parameter sweep using the variable “Width.”
For this example, the circuit will be analyzed using a parameter sweep, varying
the width of the line from 2 mm to 6 mm in 0.25 mm increments at a single
frequency of 15 GHz. The Parameter Sweep Entry dialog box for the analysis is
shown below. For more information on setting up a parameter sweep, please see
"Parameter Sweep" on page 189.
Dimension
parameter
“Width”
Top Point Set
Bottom Point Set
Sonnet User’s Guide
132
Rev 16.56
3 Run the analysis, then open the response viewer.
The response viewer may be opened by clicking on the Response Viewer icon in
the analysis monitor (shown to the left) or selecting Project View Response
New Graph from the main menu of the project editor or analysis monitor once the
analysis has completed.
4 Select Graph Plot Over Parameter from the main menu of the
Response Viewer.
This will plot the selected data as a function of the value Width. If there were more
than one parameter in your circuit, you would have had to choose which to use but
since this circuit contains only one parameter, Width is automatically selected.
5 Select Curve Add Curve Group from the main menu of the response
viewer.
The Add Curve Group dialog box appears on your display as shown below.
Data Type
Chapter 6 De-embedding
133
Rev 16.56
6 Select “Port Z0” from the Data Type drop list.
This will plot the characteristic impedance of the feedline connected to the
selected port.
7 Double click on the desired port to move it to the Selected List.
For this example, we will plot Z0 for port 1, so MAG[PZ1] is moved to the select-
ed list.
8 Click on the Graph All Combinations checkbox in the Parameter
Combinations section of the dialog box.
There is only one frequency available, so selecting this checkbox will display that
frequency. If more than one frequency were available, you would plot all available
frequencies if the Graph All Combinations checkbox was selected. If you wished
to plot a particular frequency or set of frequencies, you would clear this checkbox,
then click on Select Combinations to choose the desired frequency(ies) to display.
The dialog box should appear similar to that shown below.
Sonnet User’s Guide
134
Rev 16.56
9 Click on the OK button to display the curve.
The plot show the magnitude of the characteristic impedance of Port 1 as a
function of line width. The characteristic impedance goes down as the line gets
wider. If you wished to plot the Eeff, you would have chosen “Port Eeff” from the
Data Type drop list.
Coupled Transmission Lines
If you have more than one port on a box-wall, Z0 and Eeff cannot be determined
as there is more than one mode for the transmission line. In this case, your output
data will use the “mp” de-embedding code indicating that there are multiple ports.
Even though Z0 and Eeff can not be determined, the S-parameter data is still valid.
However, Sonnet can be used to compute the common and differential mode Z0
and Eeff values for two symmetrical coupled lines. The common and differential
mode are very similar to the even mode and odd mode used by popular transmis-
sion line calculators (see "Interpreting Z0 and Eeff." on page 135 for details).
Chapter 6 De-embedding
135
Rev 16.56
To create a project which can be used to show the even and odd mode, start with
a four-port coupled line circuit like the one shown below:
Notice that the lines are placed precisely in the center of the box. This is not nec-
essary in many cases, but we suggest you do this to force the symmetry between
the two lines.
Next, renumber your ports as shown below. The left two ports (+1/-1) represent
the differential, or odd mode. The right two ports (+2/+2) represent the common,
or even mode:
To renumber a port, right-click on the port and select Port Properties. This opens
the Port Properties dialog box where you can change the port number.
Interpreting Z0 and Eeff.
There is a subtle difference between the even/odd mode and common/differential
mode Z0 1. Sonnet computes the common and differential mode Z0 values, but you
can easily calculate the even and odd mode Z0 values by either multiplying or di-
viding the sonnet results by two as shown in the equations below:
[1]Characterization of differential interconnects from time domain reflectometry measure-
ments by A. Tolescu and P. Svasta
Zeven 2ZCommon
=
Zodd Zdiff 2=
Sonnet User’s Guide
136
Rev 16.56
The Eeff values do not need to be modified. Shown below are plots of the differ-
ential mode (port 1) and common mode (port 2) Z0 and Eeff. Since the differential
mode Z0 is about 67 ohms, the odd mode Z0 is about 33.5 ohms. And since the
common mode Z0 is about 18 ohms, the even mode Z0 is about 36 ohms. As can
be seen by the plots, the Z0 and Eeff values are all a function of frequency.
Chapter 7 Components
137
Rev 16.56
Chapter 7 Components
Introduction
The Component feature is built upon the high accuracy de-embedding technique1
used for Sonnet co-calibrated internal ports technology. Using this technique, the
user can insert an ideal element, measurement of a physical component, a data file
created by another Sonnet project or another Sonnet project. In addition, using the
Component feature in conjunction with the Keysight ADS Interface, NI AWR Mi-
crowave Office Interface - 32-Bit, or the Cadence Virtuoso Interface provides a
powerful tool to model complex circuits.
The Components features allows for a high level of flexibility by using five dif-
ferent Component types:
Data File type: If you would like to insert an S-parameter data file of
your component into your Sonnet model.
Ideal type: If you would like to insert an ideal component (R, L, or C)
into your Sonnet model.
Ports Only type: If you would like to use a separate circuit simulation
tool for the final, combined simulation, you may insert only ports within
the Sonnet model.
1”Deembedding the Effect of a Local Ground Plane in Electromagnetic Analysis,” by James C. Rautio, president
and founder of Sonnet Software, Inc. The article is available in PDF format in the Support section of our web
site.
Sonnet User’s Guide
138
Rev 16.56
Sonnet Project: If you would like to insert another Sonnet project into
your Sonnet model.
User Model: If you would like to insert a model from another source
into your Sonnet model.
In all cases except where the Ports Only component types are used, the Sonnet
solver uses a circuit simulation technique to produce the combined results. Since
this is a post EM analysis step, the user can change the ideal component value, or
associated S-parameter data file, Sonnet project or Modelithics model without re-
quiring a new EM analysis; only the circuit simulation part of the analysis is per-
formed by the analysis engine.
Please note that the coupling from the inside of the component to the rest of the
circuit is not considered in the Sonnet analysis. Only the coupling from the com-
ponent’s terminals is considered.
When connecting external parts to your EM structure, we highly recommend that
you use either the co-calibrated ports or the Component feature. This novel ap-
proach provides greatly enhanced accuracy for this application by perfectly de-
embedding the ports, thus completely removing all coupling between them. Auto-
grounded Ports have the limitation of not removing any port to port coupling.
Before proceeding to use the Component feature, it would be helpful to become
familiar with the related co-calibrated internal ports discussed in “Co-calibrated
Internal Ports,” page 89 in the Ports chapter.
Component Assistant
When you select any of the Add Component commands in the project editor, the
Component Assistant appears on your display. Whenever you select a control in
the Component Properties dialog box, the assistant provides a description of the
field, and often, an illustration of the principle, so that you may select the correct
setting and model your Component more accurately.
If the Component Assistant does not appear, you should select the “Use Compo-
nent/Calibration Group Assistant” checkbox on the Hints tab of the Preferences
dialog box in the project editor (File Preferences).
Chapter 7 Components
139
Rev 16.56
Anatomy of a Component
The Component is represented in your circuit by a component symbol. The label
of the Component appears above the component symbol and the terminal numbers
are identified there. Ports, indicating where the terminals of the Component are
connected to the metal in your circuit, are represented by a small rectangle. Com-
ponent ports are only numbered when the Component model type is Ports Only.
An example of a Component as it appears in the project editor is shown below.
Component
Symbol This is the symbol which represents your Component in your project.
Port The Component port defines the point at which the Component is connected to the
circuit metal and must be attached to an open polygon edge. This point also serves
as a reference plane for de-embedding the Component unless a reference plane is
added for the port. There is one Component port for each terminal on the Compo-
nent. Component ports are modeled using co-calibrated internal ports. For more
information on co-calibrated ports, please see “Co-calibrated Internal Ports,”
page 89. If the component type is a Sonnet project, the terminals correspond to the
ports in the Sonnet project.
Terminal
Numbers Terminal numbers identify the physical pin on your Component connected to the
corresponding Component port.
Components may have an unlimited number of terminals, with the exception of
those Components which use the Ideal Component model, since the available
ideal components are limited to two terminals. Terminals and/or ports are num-
bered in the order in which they are added to your circuit and may be modified
after the Component is added to your circuit.
Label The label is user-defined text which identifies the Component in your circuit. Each
Component label in a project must be unique.
Terminal Number
Component Symbol
Label
Port
Physical Size Metal Polygon
Open Polygon
Edge
Sonnet User’s Guide
140
Rev 16.56
Open
Polygon
Edge
Component ports may be placed only on open polygon edges. You may use a ref-
erence plane to control how much, if any, of your circuit metal is also de-embed-
ded in addition to the Component. For more information, see “Reference Planes,”
page 148.
Physical
Size You may also optionally enter a physical package size for your Component. These
measurements (height, width, and length) are not used in the em simulation but are
there to provide a graphic in both the 2D and 3D view which represent the actual
size of the Component. This is especially useful for design presentations and re-
views. Shown below is a 3D view of the example Component pictured above:
Component Types
There are five types of Component model: Data File, Ideal, Ports Only, Sonnet
Project, and User Model. All five models are described below.
Data File
The Data File Component allows you to add a Component to your geometry that
is modeled with a user specified S, Y, or Z-Parameter file (Touchstone format).
The data file used for your Component can be the result of another simulation or
measured data from an actual component. There is no limit to the number of ports
you may use for a data file Component.
You add a data file type Component by selecting the command Tools Add Com-
ponent Data File. This command opens the Components Properties dialog box
as well as the Component Assistant.
Chapter 7 Components
141
Rev 16.56
Ideal Component
The Ideal component allows you to add a single 2-port ideal component. There are
three types of ideal components available: resistor, capacitor, or inductor. All ideal
components use a series element with two ports as shown below:
You add an Ideal component by selecting the command Tools Add Component
Ideal. This command opens the Components Properties dialog box as well as
the Component Assistant.
Ports Only
The Ports Only Component allows you to insert internal ports in your circuit
which may be used later in a circuit design program. All of the ports associated
with this Component have a common ground and are simultaneously de-embed-
ded during the electromagnetic analysis. There is no limit to the number of ports
your Component may have. This Component type is functionally equivalent to
using co-calibrated internal ports. For a detailed discussion of co-calibrated ports,
see “Co-calibrated Internal Ports,” page 89.
You add a Ports Only type Component by selecting the command Tools Add
Component Ports Only. This command opens the Components Properties dia-
log box as well as the Component Assistant.
Resistor
Capacitor
Inductor
Sonnet User’s Guide
142
Rev 16.56
Sonnet Project
The Sonnet Project Component allows you to add a Sonnet geometry or netlist
project to your geometry. If the Sonnet project used for the component does not
include analysis data, then em runs an analysis on the Component project as part
of the larger analysis. There is no limit to the number of ports you may use for a
Sonnet project Component.
If the Sonnet Project contains parameters, you may open the Model Parameters di-
alog box by clicking on the Parameters button in the Component Properties dialog
box. This dialog box allows you to define the values or link the parameters in the
Component project to parameters in the main project. You may also create a new
variable and assign it to a parameter value. Any change in the variables in the main
project also changes the value of the any parameters in the Component project that
are defined by that variable.
You add a Sonnet Project Component by selecting the command Tools Add
Component Sonnet Project. This command opens the Components Properties
dialog box as well as the Component Assistant.
User Model
The User Model Component allows you to add a model from a library that has
been purchased, or developed in-house, to your geometry. There is no limit to the
number of ports you may use for a User Model Component.
If the model contains parameters, you may open the Model Parameters dialog box
by clicking on the Parameters button in the Component Properties dialog box.
This dialog box allows you to define the values of the parameters in the User
Model Component. You may enter a fixed value or use a variable defined in the
main project as the value of the parameter(s). You may also create a new variable
and assign it to a parameter value. When a variable is assigned as a value, any
change in the variable in the main project also changes the value of the parameter
in the Component project.
You add a User Model Component by selecting the command Tools Add Com-
ponent User Model. This command opens the Components Properties dialog
box as well as the Component Assistant.
Modelithics models are presently the only supported vendor, although it is possi-
ble to create custom models. If you are interested in doing so, please contact your
Sonnet Software representative for details.
Chapter 7 Components
143
Rev 16.56
NOTE: Use of the Modelithics models requires a Modelithics license, which
must be purchased separately from Modelithics, Inc., in addition to
your Sonnet license.
Component Properties
An important part of modeling a Component in Sonnet is to consider the condi-
tions under which the measured data or model for your Component was obtained.
These conditions should be used to determine:
The type of ground node connection
The terminal width
If reference planes are used for the Component ports and if so, of
what length
The em environment should be set up to use the Component in the same manner
that the component was measured. The correct setting of the Component proper-
ties is discussed in detail below.
Ground Node Connection
The ground node connection defines how the ground of your Component is con-
nected to your circuit. There are three types of ground node connections: Sonnet
Box, Floating, and Polygon Edge(s).
NOTE: The Ideal Component does not use a ground node connection by
definition. The ground node connection needs to be specified for all
other Component types.
Sonnet uses a common ground for all the Component ports associated with a given
Component. This common ground should model as closely as possible how your
component was measured or modeled. Vendors who supply components often
have measured S-parameters or a model which may be used to create S-parame-
ters. In either case, information about how these values were obtained should also
be available. Use this information to guide your choice of ground node connec-
tion. The three types of ground node connection are discussed below.
Sonnet User’s Guide
144
Rev 16.56
Floating
When your ground node connection is set to Floating, all the Component ports ref-
erence a common local ground as pictured below. This option should be used if
your Component does not have a ground reference, or if there are no shunt ele-
ments in your component model or measured data. Any shunt admittance is re-
moved by em.
Examples of this are:
A series RL equivalent circuit
S-Parameter data that was measured without pads
Sonnet Box
When your ground node connection is set to Sonnet box, all the Component ports
are globally grounded to the Sonnet box. To accomplish this, a via is automatically
created which connects to the top or bottom of the Sonnet box. This option should
be used if your component model, or measured data, includes shunt elements and
you want the Component’s ground reference to be connected to the Sonnet box.
Examples of this are:
S-Parameter data that includes pads or other coupling to ground
Transistor data that includes a via to ground in the model/measure-
ment
The analysis engine determines the most efficient direction the ground via extends
taking into consideration both the distance and the loss of the box top or bottom.
When using this type of ground, you must make sure that there is a clear path with
no metal on other levels interfering with the path to either the box top or bottom.
Floating - No ground reference
Sonnet Box
Ref
Chapter 7 Components
145
Rev 16.56
If you are using a Component whose ground node connection is to the Sonnet box,
either the box top or bottom must have loss less than 50 ohms/sq. For example,
you should not use “Free Space” as your box top and bottom definition. If the loss
is too high on both the box top and bottom for a ground via from the Component
to be attached, the analysis engine will issue an error message.
Polygon Edge(s)
When your ground node connection is set to Polygon Edge(s), the ground refer-
ence of your Component is connected to a polygon edge(s) selected by you when
adding the Component. You may specify as many ground terminals as you need.
Examples of this are:
Transistor data without parasitics to ground, but with a ground path
included in the Sonnet structure
A multi-pin module with one or more ground pins
NOTE: The Polygon Edge(s) ground node connection is only available for Data
File and Sonnet Project type Components.
Terminal Width
The terminal width is the electrical contact width of the Component. Entering a
terminal width allows you to accurately model the current flow from the circuit
geometry into the Component.
There are three types of terminal width: feedline, one cell and user defined. Each
type of terminal width is illustrated and explained below.
Ref
Circuit Metal
Sonnet User’s Guide
146
Rev 16.56
Feedline Width
Choosing Feedline Width sets your terminal width to match the length of the poly-
gon edge to which the Component is attached. This option should be used when
the polygon edge is about the same size as the width of the Component. An exam-
ple is pictured below.
One Cell
One Cell sets your terminal width to the smallest possible size of one cell wide as
pictured below.
User Defined
This option allows you to enter a known electrical contact width. An illustration
of a Component with User Defined terminal widths is shown below.
Chapter 7 Components
147
Rev 16.56
When you select user defined, your terminal width is defined based on the location
of the Component port. The point at which the port is placed on the polygon edge
becomes the center of the terminal width extending an equal distance on either
side.
This ability to limit the terminal width size is important in cases where more than
one Component port needs to connect to the same polygon edge or the polygon
edge is extremely large. The next two images demonstrate these concepts.
The component has two terminals connected to a single polygon edge.
The cell size is 2 mils and the user-defined terminal width is 8 mils as
shown.
Terminal Width
A coplanar waveguide that uses a two port component. To the
right is shown the entry in the Component Properties dialog box.
Sonnet User’s Guide
148
Rev 16.56
Reference Planes
Components require their ports to be on open polygon edges. Reference Planes
can be used to effectively move your port position away from the polygon edge.
To accomplish this, em uses circuit theory to cascade a negative length of the line
with the analysis results. If no reference plane is specified, then de-embedding the
Component removes none of the feedline metal but the port(s) are still de-embed-
ded. The use of reference planes is illustrated below.
NOTE: Reference planes may only be used when the ground node connection
is defined as the Sonnet box.
All the Component ports on a side of a Component use the same reference plane.
For a detailed discussion of reference planes and de-embedding, please see Chap-
ter 6, “De-embedding” on page 103.
The reference planes for Component ports are set in the Component Port Proper-
ties dialog box. This dialog box may be opened by double-clicking on a compo-
nent port or by selecting the component, then selecting the command Modify
Port Properties from the project editor main menu. For details on using this dialog
box, please click on the Help button.
As with all Sonnet reference planes, the Component reference planes are snapped
to the grid. It is important that you are working with a fine enough cell size to en-
sure the accurate placement of your reference planes. If the length is set to less
than one half the cell size, then the reference plane will not be displayed in the
project editor window.
Calibration Lengths
The analysis engine, em, will automatically determine appropriate lengths for the
calibration standards used in the de-embedding algorithm. Normally, the Auto set-
ting (default) produces efficient and highly accurate simulation results. In rare cas-
Chapter 7 Components
149
Rev 16.56
es, you may wish to manually override the automatic lengths. Before manually
overriding these settings, please be sure to read Chapter 6, “De-embedding” on
page 103.
The calibration lengths for Component ports are set in the Component Port Prop-
erties dialog box. This dialog box may be opened by double-clicking on a compo-
nent port or by selecting the component, then selecting the command Modify
Port Properties from the project editor main menu. For details on using this dialog
box, please click on the Help button.
Physical Size
You may enter a physical size for your Component for display purposes. The
physical dimensions length, width, and height, are not used in the simulation but
do affect how your Component is displayed in the project editor. You may enter
the precise dimensions or choose Auto to have the software choose approximate
dimensions based on your Component’s port placements. An example is shown
below.
Rules for Using Components
The following restrictions apply to the placement of Components in your circuit:
2D View 3D View
Physical Size of Component
Sonnet User’s Guide
150
Rev 16.56
1. No objects may be placed within the “restricted space” in the
interior of the Component: Metal polygons, vias, or dielectric bricks
may not be present in the rectangular area defined by the port locations
and the terminal width, as illustrated below. The bottom circuit shows the
restricted area in a multiport Component.
2. Components whose ground node connections are defined as the
Sonnet box require direct access to the Sonnet top or bottom
cover. The analysis engine determines the most efficient direction the
ground via extends taking into consideration both the distance and the
loss of the box top or bottom. When using this type of ground, you must
make sure that there is a clear path with no metal on other levels interfer-
ing with the path to either the box top or box bottom.
In addition, the box top or bottom should not have loss greater than 50
ohms/sq. If the loss is too high on both the box top or bottom for a ground
via from the Component to be attached, the analysis engine issues an er-
ror message.
Right Wrong
The dashed boxes identify the “restricted space” for each
Component. On the circuit labeled “Wrong” a metal polygon
passes through the middle of the restricted space.
Illegal
Polygon
Restricted
Space
Chapter 7 Components
151
Rev 16.56
3. Nearby objects should be placed so that coupling between the
Component and the object does not occur: Metal polygons, vias, or
dielectric bricks which couple to the Component ports may decrease the
accuracy of the analysis as shown below.
4. Multiple ports on the same side of a Component should be
aligned: In the illustration below, the ports on Comp1 are placed incorrectly
and will produce an error during an analysis. The ports on comp2 are
placed correctly.
5. Reference planes must be the same length for each side of a
Component: Note that the reference planes for ports 2 and 3 in the illustra-
tion below are the same length. It is important that these ports share a ref-
erence plane since the feedlines are close enough that coupling between
them becomes a factor and needs to be removed during de-embedding.
However, reference planes can be different lengths for each side of the
Wrong Correct
The dashed lines represent the alignment plane.
Sonnet User’s Guide
152
Rev 16.56
“component rectangle” as shown by ports 1, 4 and 5 below. Since these
ports are on different sides of the component, their reference planes are
independent from ports on other sides.
6. The angle between feed lines of diagonal components should be
at least 45 degrees: This means you should never have parallel diagonal
feed lines on a single side of a component.
Analysis of a Component
Data File Frequencies
When using a data file Component type, frequencies in your data file do not need
to precisely match the Sonnet analysis frequencies. The analysis engine will inter-
polate between data file frequencies if necessary, but it will not extrapolate outside
the frequency range of the data file.
45
Angle between feed lines is
at least 45 degrees Angle between feed lines
is zero
Chapter 7 Components
153
Rev 16.56
Rerunning an Analysis
When the analysis engine analyzes your circuit with a Component, it first per-
forms an electromagnetic analysis of the geometry, then uses circuit theory to con-
nect the Component to the geometry. If you change the data file used for a
Component or the value and/or type of an ideal component, in subsequent analy-
ses em only needs to perform the circuit theory part of the analysis, significantly
reducing processing time. Please note that any graphs of the response are not au-
tomatically updated. Instead, you need to select Graph Freshen Files to update
your graph in the response viewer.
The analysis engine, em runs an analysis on the Component project as part of the
analysis of the main project and stores analysis results for the component project.
The data resulting from the analysis of the Component project is then used in the
circuit theory part of the main analysis. This data will be reused as long as no
changes are made to the Component project.
Sonnet User’s Guide
154
Rev 16.56
Chapter 8 Adaptive Band Synthesis (ABS)
155
Rev 16.56
Chapter 8 Adaptive Band
Synthesis (ABS)
The Adaptive Band Synthesis (ABS) technique provides a fine resolution re-
sponse for a frequency band requiring only a small number of analysis points. Em
performs a full analysis at a few points and uses the resulting internal, or cache,
data to synthesize a fine resolution band.
TIP
This technique, in most cases, provides a considerable reduction in processing
time.
Using the input frequency band, em first performs a full analysis of the circuit at
the beginning and end frequencies. Em continues solving at discrete points, stor-
ing the full analysis data for each point. This process continues until enough inter-
nal, or cache, data is generated to synthesize a fine resolution response.
Once the frequency band response is synthesized, em outputs approximately 300
data points for the frequency band. These data points are a combination of the dis-
crete analysis points and synthesized points. This combined data is referred to as
adaptive data.
Sonnet User’s Guide
156
Rev 16.56
Em dedicates the bulk of the analysis time for an ABS analysis in calculating the
response data at the discrete data points. Once the adaptive band synthesis is com-
plete, calculating the adaptive data for the entire band uses a relatively small per-
centage of the processing time.
DC Point Extrapolation
If you enter a value of zero as the starting frequency for an ABS sweep, the data
for a DC Point is automatically calculated. Once the ABS sweep is complete and
has produced the adaptive data, em extrapolates the adaptive data to DC. If you
only need a DC Point and do not want to run an ABS sweep, you should use the
DC Frequency Sweep. For details, please see “DC Point” in the index of Help.
ABS Resolution
The ABS resolution is the value in frequency units between adaptive data points
in your response output from an adaptive sweep. Normally, the resolution in an
adaptive sweep is provided by em such that around 300 data points are output for
a frequency band. It is possible for you to override this setting and use a coarser
or finer resolution for your frequency band.
Entering a manual value to be used for ABS is done in the Advanced Options di-
alog box which is opened when you click on the Advanced button in the Analysis
Setup dialog box. The Analysis Setup dialog box is opened when you select Anal-
ysis Setup from the project editor menu. You enter the resolution by clicking
on the Manual radio button in the ABS Frequency Resolution Per Sweep section
of the Advanced Options dialog box and entering the desired resolution in the ad-
jacent text entry box. For details on these dialog boxes, please refer to Help for the
project editor.
There are several things to be aware of when using the manual setting for the ABS
resolution. Coarse resolution does not speed things up. Once a rational polynomial
is found to “fit” the solution, calculating the adaptive data uses very little process-
ing time. A really coarse resolution could produce bad results by not allowing the
ABS algorithm to analyze at the needed discrete frequencies. Fine resolution does
not slow down the analysis unless the number of frequency points in the band is
above approximately 1000 - 3000 points. A step size resulting in at least 50 points
and less than 2000 points is recommended.
Chapter 8 Adaptive Band Synthesis (ABS)
157
Rev 16.56
Q-Factor Accuracy
There is a Q-Factor analysis run option available in the Advanced Options dialog
box in the project editor (Select Analysis Setup, then click on the Advanced but-
ton in the Analysis Setup dialog box). Selecting this option forces a higher accu-
racy for ABS convergence by including the Q-factor of your analysis as a criterion
for convergence. This is done to insure high accuracy in the Q-Factor result when
ABS is used. The Q-Factor is defined as follows:
The result is higher accuracy from the ABS sweep, but. this accuracy comes at the
cost of requiring more discrete frequencies to be analyzed before convergence is
reached.
Enhanced Resonance Detection
There is an Enhanced Resonance Detection analysis run option available in the
Advanced Options dialog box in the project editor (Select Analysis Setup, then
click on the Advanced button in the Analysis Setup dialog box). This option is
useful when the circuit response includes one or more extremely narrowband res-
onances, a common occurrence with superconductor applications. When this op-
tion is enabled, ABS performs a full-wave discrete simulation at each detected
resonance to obtain the highest level of accuracy possible in terms of magnitude
and frequency. Be aware that this increased accuracy comes at the cost of in-
creased processing time since it requires analysis at more discrete frequency
points.
Running an Adaptive Sweep
To run an analysis using the Adaptive Band Synthesis technique, you do the fol-
lowing:
1 Open your project in the project editor.
Ynn
imagYnn
real
Sonnet User’s Guide
158
Rev 16.56
2 Select Analysis Setup from the main menu of the project editor.
The Analysis Setup dialog box appears on your display with an adaptive sweep
already selected since Adaptive Sweep is the default for analysis control.
3 Select Adaptive Sweep (ABS) from the Analysis Control drop list if
necessary.
This selects the ABS technique for the analysis.
4 Enter the desired frequency band in the Start and Stop text entry boxes.
This defines the frequency band on which you wish to perform the ABS analysis.
The step size is automatically set by em during the analysis. See page 156 for a
description of how the ABS resolution is determined.
5 Click on the OK button to close the dialog box and apply the changes.
6 Save the project by selecting File Save from the menu or by clicking on
the Save button on the tool bar.
You need to save the file before analyzing it.
7 Select Project Analyze from the menu or click on the Analyze button on
the tool bar.
Em performs an adaptive sweep on your project. The analysis monitor appears on
your display, and indicates the progress of the adaptive sweep.
The Adaptive Sweep is also available within the Frequency Sweep Combinations
analysis controls. This allows you to mix adaptive sweeps with other types of
sweeps. For more details, see the “Frequency Sweep Combinations” topic in Help
in the project editor.
Chapter 8 Adaptive Band Synthesis (ABS)
159
Rev 16.56
ABS Caching Level
There are three levels of ABS caching available: None, Stop/Restart, and Multi-
Sweep plus Stop/Restart. The options for ABS caching level are found in the Ad-
vanced Options dialog box. To access the Advanced Options dialog box, select
Analysis Setup from the project editor main menu, then click on the Advanced
button in the Analysis Setup dialog box which appears. The default is Stop/Re-
start.
Stop/Restart retains the cache data while the analysis is proceeding. Once the
adaptive data has been calculated, the cache data is deleted from the project. This
setting provides for the circumstance in which the analysis is stopped or interrupt-
ed before the adaptive data is synthesized; you will not lose the internal data pro-
duced so far.
Multi-Sweep with Stop/Restart retains all calculated cache data in your project for
every analysis job run. In addition, cache data is calculated and saved for even
non-ABS types of sweeps. This option can reduce processing time on subsequent
ABS analyses of your project but increases project size on non-ABS sweeps. In
order for the cache data to remain useful there are also subsectioning issues of
which you must be aware. For a detailed discussion of the Multi-Sweep cache op-
tion, please refer to “Multiple ABS Sweeps and Subsectioning,” page 159.
The third setting for ABS caching level is None. In this setting cache data is not
retained. This option should only be selected if you have constraints on disk space.
!WARNING
If you select None for the ABS caching level, and an ABS sweep is stopped
before the adaptive data has been calculated, you will have to start the
analysis over from the beginning. Any processing time invested in the
analysis is lost.
Multiple ABS Sweeps and Subsectioning
If you will need to run multiple ABS sweeps on a project, it is important to set your
ABS caching to Multi-sweep to avoid having to re-calculate your caching data
each time you analyze your circuit. But be aware that in order to maintain the va-
lidity of the caching data, the subsectioning of the circuit must remain the same.
To control the subsectioning you must use the Advanced Subsectioning Controls
which you open by selecting Analysis Advanced Subsectioning from the main
menu of the project editor.
Sonnet User’s Guide
160
Rev 16.56
TIP
The most efficient way to obtain response data for your circuit is to run a single
ABS sweep over the entire desired frequency band.
The analysis engine, em, uses the subsectioning frequency to calculate the wave-
length which is used in setting the Maximum subsection size. The default setting
used to determine the subsectioning frequency is to use the highest frequency from
the present analysis job. If you perform multiple sweeps over different frequency
bands then the cache data from one run will be invalid for the next, since the sub-
sectioning frequency would be different. In order to avoid this you should select
the Previous Analysis Only option which will use the highest frequency from all
previous analysis jobs run on the project. In this case, you should analyze the fre-
quency band with the highest upper limit first and take care to ensure that the sub-
sectioning frequency being used provides accurate subsectioning for your circuit.
For details on subsectioning, see Chapter 3 "Subsectioning" on page 27.
Another way to keep the subsectioning frequency consistent is to select the Fixed
Frequency option for the subsectioning frequency and enter the desired frequency.
This ensures that all analysis runs on the project will use the same subsectioning
frequency. Again, care should be taken that the subsectioning frequency entered
provides the desired accuracy.
Multi-Sweep Caching Scenarios
The analysis engine always attempts to use any existing data in the project which
is consistent with the present analysis. Described below are some common scenar-
ios describing ABS analyses when the ABS caching level is set to Multi-Sweep
with Stop/Restart and how data consistency is maintained.
Higher or Lower Resolution over the Same Frequency Band: You are running
an ABS analysis over the same band as a previous ABS analysis but with higher
or lower resolution; an example is shown below. In order for the caching data to
be valid for the second analysis, your Advanced Subsectioning controls must be
set such that the subsectioning frequency is the same for both runs. If the subsec-
Chapter 8 Adaptive Band Synthesis (ABS)
161
Rev 16.56
tioning frequency remains the same, the second analysis will usually not require
any re-analysis and the results should be provided very quickly. The only excep-
tion would be if the difference between the resolutions is unusually high.
Zoom In: You are running an ABS analysis over a narrower band than the previ-
ous ABS analysis of the project, as shown in the diagram below. This provides
higher resolution over the narrower band since the ABS analysis defaults to ap-
proximately 300 data points. In order for the caching data to be valid for the sec-
ond analysis, your Advanced Subsectioning controls must be set such that the
subsectioning frequency is the same for both runs. If the subsectioning frequency
remains the same, the second analysis will not require any re-analysis and the re-
sults should be provided very quickly.
Extending the Band: You are running an ABS analysis which overlaps a previous
ABS analysis of the project, pictured in the diagram below. The caching data for
the overlap between the two analyses will be reused although some calculation
may need to be done in the extension of the frequency band where it does not over-
Frequency Band 10 - 40 GHz
1st ABS analysis: 10, 10.1, 10.2, 10. 3 ... 39.8, 39.9, 40
2nd ABS analysis: 10, 10.05, 10.1, 10.15, 10.2 ... 39.85, 39.9, 39.95, 40
10 GHz 30 GHz
25 GHz
15 GHz Frequency band of 2nd ABS analysis
Frequency band of 1st ABS analysis
Sonnet User’s Guide
162
Rev 16.56
lap with a previous analysis. In order for the caching data to be valid for the second
analysis, your Advanced Subsectioning controls must be set such that the subsec-
tioning frequency is the same for both runs.
Accuracy Assurance: If you wish to check a particular data point in an ABS anal-
ysis and wish to ensure that a full calculation is done at a particular frequency
point, you should select a Linear Sweep. This analysis will calculate caching data
if Multi-sweep is selected for ABS caching data, but will not use the caching data
in producing analysis results.
Find Minimum and Find Maximum
Find Minimum determines the frequency where the circuit response reaches a
minimum. Find Maximum determines the frequency where the circuit response
reaches a maximum. You enter a starting and ending frequency in the Start and
Stop text entry boxes, respectively and select the parameter for which you wish
to determine the minimum or maximum value. Em performs an ABS analysis for
the frequency band, then uses the adaptive data to determine the frequency where
the response reaches a minimum or a maximum.
The Find Minimum and Find Maximum commands are both available in the Fre-
quency Sweep Combinations analysis controls. For more details, see the “Fre-
quency Sweep Combinations” topic in Help in the project editor.
30 - 50 GHz
Overlap
40 - 60 GHz
Frequency band of 1st ABS analysis
Frequency band of 2nd ABS analysis
Chapter 8 Adaptive Band Synthesis (ABS)
163
Rev 16.56
Parameter Sweep
You may choose either a linear sweep or an adaptive sweep for a parameter sweep.
Selecting an adaptive sweep for a parameter sweep is done in the Parameter
Sweep Entry dialog box. For more information about parameter sweeps, please
see Chapter 9, “Parameterizing your Project” on page 171.
The following example assumes that you have already defined the parameter
“Width” in your circuit. For more information on inputting a parameter, please
refer to “Variables,” page 172.
To select ABS for a parameter sweep, do the following:
1 Select Analysis Setup from the project editor main menu.
The Analysis Setup dialog box appears on your display.
2 Select Parameter Sweep from the Analysis Control drop list.
The dialog box is updated to allow you to specify the parameter sweep.
Sonnet User’s Guide
164
Rev 16.56
3 Click on the Add button to the right of the Parameter Sweep list box.
The Parameter Sweep Entry dialog box appears on your display.
4 Select Adaptive Sweep (ABS) from the Sweep Type drop list to select an
adaptive frequency sweep.
The dialog box changes so that there are only Start and Stop text entry boxes.
5 Enter the frequency band for the ABS in the Start and Stop text entry boxes.
This completes setting up an ABS frequency sweep for the parameter sweep. You
would also need to select the parameters which you want to use in the parameter
sweep and enter their data ranges before closing this dialog box.
Chapter 8 Adaptive Band Synthesis (ABS)
165
Rev 16.56
Analysis Issues
There are several issues you should be aware of before using the ABS technique;
these are covered below.
Multiple Box Resonances
You should be aware that circuits with multiple box resonances make it difficult
for an ABS analysis to converge. The frequency band for an adaptive sweep
should not contain multiple box resonances. If multiple box resonances are pres-
ent, the number of discrete full analysis points goes up dramatically and synthesis
of the data becomes very difficult. If you do not know how to identify box reso-
nances, see Chapter 21, “Box Resonances” for a detailed discussion of box reso-
nances.
De-embedding
Adaptive data, resulting from an ABS analysis, is either de-embedded or non-de-
embedded. With other analysis types, when the de-embedding option is enabled
(default), then both de-embedded and non-de-embedded response data is calculat-
ed and available for display and output. This is not true for an adaptive sweep.
In an adaptive sweep, if you run with de-embedding enabled, de-embedded data
is available for the whole band. Non-de-embedded data is available only for the
discrete data points at which full analyses were performed while synthesizing the
response.
If you wish to have non-de-embedded data for the whole frequency band, you
must perform an adaptive sweep with the de-embed option disabled. Select Anal-
ysis Setup from the main menu to open the Analysis Setup dialog box, then
click on the Advanced button to open the Advanced Options dialog box. Click on
the De-embed checkbox to disable de-embedding. For details on these dialog box-
es, please refer to Help for the project editor.
For more information about de-embedding, see Chapter 6 "De-embedding" on
page 103.
Sonnet User’s Guide
166
Rev 16.56
Transmission Line Parameters
As part of the de-embedding process, em also calculates the transmission line pa-
rameters, Z0 and Eeff. You should be aware that when running an ABS analysis
these parameters are only calculated for the discrete data points at which a full
analysis is run. If you need the transmission line parameters at more data points,
analyze the circuit using a non-ABS analysis.
Current Density Data
Current density data is calculated for your circuit when the Compute Current Den-
sity option is enabled in the Analysis Setup dialog box. For non-ABS sweeps, cur-
rent density data is calculated for all the response data. For an adaptive sweep, the
current density data is only calculated for the discrete data points, therefore, your
plot in the current density viewer shows a coarse resolution of your frequency
band.
If you wish to calculate the current density data at more points in your band, run
a non-ABS sweep for the points in question with the Compute Current Density op-
tion enabled.
For more information about the Compute Current Density option, see the help
topic “Analysis Setup” in Help for the project editor.
Ripple in ABS S-Parameters
Please note that when the value of the S-parameters is close to 1 (0 dB) over the
entire band you may have small ripples or oscillations in the S-parameter values.
This is due to the rational fitting model having too many degrees of freedom when
trying to fit a straight line. If this is a problem, it is recommended that you analyze
the frequency band in which this occurs with another type of sweep.
Output Files
You specify additional output files in the Output Files dialog box which appears
on your display when you select Analysis Output Files from the project editor
menu. You click on the appropriate button to open the corresponding file entry di-
alog box. Each entry dialog box has an option pertinent to ABS.
Chapter 8 Adaptive Band Synthesis (ABS)
167
Rev 16.56
Response File
When you specify an optional output file for your project, you may select which
type of data to output from an adaptive sweep. The data selection is controlled by
the Include Adaptive Data checkbox in the File Entry dialog box. If this checkbox
is selected, which is the default, then all the adaptive data from an ABS analysis
is included in the output file. If this checkbox is cleared, then only the data for the
discrete data points is included in the output file. We recommend leaving this box
checked.
Viewing the Adaptive Response
When viewing an adaptive response (ABS) in the response viewer, there are sev-
eral things of which you need to be aware. The adaptive data is plotted as a line.
A symbol indicating a data point only appears at the discrete frequencies at which
a full analysis was executed as shown in the picture below.
When exporting data, you may choose to output only the discrete frequencies or
the complete response data for the ABS analysis. To output only the discrete fre-
quency data, unselect the Include Adaptive Data checkbox in the Export Data di-
alog box in the response viewer. For details, see Help in the response viewer.
Discrete Data Point
Sonnet User’s Guide
168
Rev 16.56
ABS Preview
When running an adaptive sweep, discrete frequencies are computed until a ratio-
nal polynomial is found to “fit” the solution. When the fit meets the convergence
criteria, then the adaptive data is calculated and the analysis concludes. A majority
of circuits usually require around five to ten frequencies to converge. In some cas-
es, convergence may be more difficult to reach and more discrete frequencies may
be required while in some instances convergence cannot be reached. The ABS
preview allows you to stop an adaptive sweep which has not yet converged in
order to evaluate the data and possibly determine a new analysis band for your
simulation.
NOTE: The ABS Caching Level must be set to "Stop/Restart" in the Advanced
Options dialog box in order to use this command. See "ABS Caching
Level" on page 159.
If you stop an analysis running an adaptive sweep before it completes, any ABS
data which has been calculated is saved and may be examined in the response
viewer using the command View ABS Preview. Note that the an ABS preview
does not support the use of equations but all other data curves are available.
When you stop an analysis and open a plot, initially it will have a “jagged” appear-
ance since only the discrete frequencies that have been thus far calculated are dis-
played. When you select View ABS Preview, a new plot is created with ABS
data calculated before the analysis was stopped. A color bar at the bottom of the
window indicates the type of data as shown below. If you click in the color band,
the frequency you selected and its data status is displayed in the Status Bar at the
bottom of the response viewer window. In the case of the graph below, the con-
verged data starts at 3.4 GHz, so running the simulation and using 3.4 GHz as the
starting frequency will provide a completed ABS analysis.
Chapter 8 Adaptive Band Synthesis (ABS)
169
Rev 16.56
Green - Good data
Convergence achieved
Yellow - Near
Convergence
Red - Bad Data
No Convergence
Gray - Outside of the
ABS analysis band
Frequency and
data status
Sonnet User’s Guide
170
Rev 16.56
Chapter 9 Parameterizing your Project
171
Rev 16.56
Chapter 9 Parameterizing your
Project
Sonnet allows you to assign variables and equations to many properties in order
to parameterize your project. Below are some of the reasons you might wish to pa-
rameterize your project:
Avoid creating multiple projects
Parameter Sweep of a project - allows you to vary a circuit property
during an analysis
Optimization of a project
Easier construction and maintenance of a project
Using equations to establish relationships between circuit proper-
ties
Variables may be used for the following properties in your project:
Geometry dimensions
Metal Properties
Dielectric Properties
Ideal Component Values
Layer Thicknesses
The value of a variable may be changed either by you or by the analysis engine
during a parameter sweep or optimization. During a parameter sweep, em sweeps
the variable values through a user defined range, therefore changing the properties
of your circuit. In an optimization, the analysis engine controls the variable value,
Sonnet User’s Guide
172
Rev 16.56
within a user defined range, in an attempt to reach a user defined goal. Both pa-
rameter sweeps and optimization of a project may be performed over a range of
analysis frequencies.
For a tutorial which details how to add variables to your circuit and perform an
optimization, please refer to Chapter 10, “Parameter Sweep and Optimization
Tutorial” on page 197.
For most circuit properties, you simply define a variable and enter that variable in
a property field. However, if you wish to vary the size of your geometry--for ex-
ample, changing the width of a feed line or the length of a polygon--you define a
dimension parameter which identifies the dimension you wish to change. Once the
dimension parameter is defined, you assign a variable to the dimension parameter.
The first step in performing a parameter sweep or optimization is defining the
variables and dimension parameters in the project editor.
Variables
Variables are user defined circuit attributes that allow the analysis engine, em, to
modify the circuit in order to perform parameter sweeps and optimization. Vari-
ables also provide a quick way for the user to change dimensions in the project
editor or multiple elements in a circuit. For example, the length of a transmission
line can be assigned the variable “L.” To change the length of the transmission
line, you edit the value for “L.” Another example would be a circuit which con-
tains 10 resistors, all of which have the same value. Entering a variable “R” for the
resistance of these ideal components allows you to change the value of all 10 re-
sistors by changing the value in only one place.
NOTE: Just because it is possible to use a variable in any given property field,
does NOT make it necessary to do so. You may enter a nominal value
for the field instead of a variable if you do not wish to change that
particular property during analysis.
A variable’s value may be defined using:
A constant or nominal value
Another variable
An equation
Any of these definitions may be directly entered into a property field. For a more
detailed discussion of equations, please see "Equations" on page 175.
Chapter 9 Parameterizing your Project
173
Rev 16.56
How to Create a Variable
You may use two basic approaches to creating variables in your project. The first
approach is to define all the desired variables and then enter these variables as
property values. The second approach is to enter a variable in the desired property
field as needed. If the variable has not been previously defined, you are prompted
to enter a definition. Using the second approach allows you to define variables as
needed rather than defining them all ahead of time.
To define a variable do the following:
1 Open the Add/Edit Variable dialog box.
This dialog box may be opened one of four ways:
By selecting Circuit Add Variable from the project editor main menu.
Select Circuit Variable List from the project editor main menu, then
click on the Add or Edit button in the Variable List window which
appears.
By entering an undefined variable in a property field in another dialog
box. When the dialog box is closed the Add/Edit Variable dialog box is
opened so you can define the variable.
By selecting <Add Variable> from a drop list of a property field in
another dialog box.
Property field drop list
Sonnet User’s Guide
174
Rev 16.56
When you select <Add Variable> the Add/Edit dialog box is opened so
you can define the variable.
2 Enter the desired variable name in the Name text entry box.
If you opened this dialog box by entering an undefined variable in another dialog
box, this field will already contain that name.
3 Enter a constant value, another variable or an equation that defines the
value of the variable in the Value or Equation text entry box.
For information about the functions available and equation syntax, click on the
Equation Syntax Help button. If you wish to use another variable in the equation,
you may select it from the list of Available Variables and click on the Insert into
Eqn button. See the next section for more information on Equations. The variable
name will be entered at the present location of the cursor in the Value text entry
box.
4 Enter a brief description of the variable, if desired, in the Description text
entry box.
This description appears in the Variable list dialog box and allows you to identify
the purpose of the variable or which property it is being used to define. If the
variable is created when editing a dialog box (Dielectric Layers, Metal Types,
etc.) a default description is provided by the software. This may be changed by
entering a different description here. This field is not required.
5 Select the desired units for the variable from the Units drop list.
Available units are the length, frequency, resistance, capacitance and inductance
units presently set in your project. If none of these are suitable, then select Other
It is important to select the units for your variable so that if you change the units
used in your project, the value of the variable is converted correctly.
Chapter 9 Parameterizing your Project
175
Rev 16.56
Equations
As mentioned earlier, a variable may be defined by a constant, another variable or
an equation. An equation is composed of constants and/or variables. Below are
some examples of valid equations.
3*3
3*pi
3*H
sin(H)
sqrt(H)
The last three equations are ones in which one variable is used to define another.
This allows you to relate properties in your circuit such that changing one effects
the other, maintaining a set relationship between them. For example, you wish to
define a dielectric layer which is always five times the thickness of your substrate.
To do so, you define a variable “sub” which you would enter as the thickness of
your substrate. Then you would enter “5*sub” as the value for the thickness of the
dielectric layer. There are two methods you may use to do this. The first is to de-
fine another variable “die_thick” which you define as “5*sub” and the second is
to simply enter the equation “5*sub” as the thickness of the dielectric layer. You
may enter an equation in any field in which you may enter a variable.
In this case, only one variable
“sub” is defined and the
equation “5*sub” is entered
directly in the Dielectric Layers
dialog box as the thickness of
the dielectric layer. The only
variable which appears in the
Variable List (opened using the
command Circuit Variable
List) is “sub.”
In this case, two variables are
defined: “sub” and “die_thick.”
The value entered for the
variable “die_thick” is the
equation “5*sub.” Both variables
appear in the Variable List.
Sonnet User’s Guide
176
Rev 16.56
Available functions for equations include:
Operators such as addition, subtraction, multiplication, etc.
Logarithmic functions
Complex Math functions
Trigonometric functions
General Mathematical functions such as maximum or minimum
Conversion functions for converting units
Table function to use for data lookup
There are also constants available for equations including project constants such
as the cell size and box size and the frequency which is discussed more below.
For complete details on all the functions and constants available for equations and
their syntax, please refer to the equation syntax help topics in Help. You may ac-
cess these topics by clicking on the Equation Syntax Help button in the Add/Edit
Variable dialog box.
If you enter an equation which uses a variable as the definition of another variable,
then the variable defined by the equation is dependent on the variable used in the
equation. This is discussed later in the chapter, in "Dependent Variables" on page
176.
Frequency Dependency
There is a frequency constant, FREQ, available for use in Sonnet equations. This
allows you to model properties whose characteristics are frequency dependent
such as a dielectric. It is important to be aware that if a variable uses the FREQ
constant in its definition that the value of the variable changes during the analysis
even if the variable is NOT selected for the parameter sweep or optimization.
Dependent Variables
One variable is dependent upon another if the value of a variable is defined by an
equation that uses another variable. As the value of the variable in the equation is
changed, so is the dependent variable. If a variable is dependent, you may not di-
rectly edit its nominal value; instead, you change its value by changing the value
of the variable on which it is dependent. You may not delete a dependent variable.
If you wish to delete it, you must first remove the dependency by changing the def-
inition of the dependent variable.
Chapter 9 Parameterizing your Project
177
Rev 16.56
Variables which do not depend on another variable for their value are independent
variables. Only independent variables may be selected for a parameter sweep. To
vary a dependent variable in a parameter sweep, you must select the variable on
which it depends. For more details on parameter sweeps, see "Parameter Sweep"
on page 189.
Circular Dependencies in Variables
Care should be taken when adding dependent variables to your circuit that they do
not form a circular dependency. A circular dependency is formed when two vari-
ables are dependent on each other. This can happen for two variables or multiple
variables. In the case of multiple variables, the dependency extends from the first
variable through all the variables until the first variable is dependent upon the last.
An example of a circuit dependency would be the two equations A=2*B and
B=sin(A). For variables, if the project editor detects a circular dependency, an
error message appears and you are forced to correct the problem before proceed-
ing.You need to redefine one of the variables such that it is no longer dependent
on the other. A correction of the example would be A=2*B and B=sin(C).
Dimension Parameters
A dimension parameter allows you to identify dimensions in a geometry project
and assign a variable to the dimension, which allows you to vary those dimensions
within an analysis. The initial value of the dimension parameter is the length that
appears in your circuit. This is the nominal value of the variable assigned to the
dimension parameter. If you change the nominal value of the variable, then the cir-
cuit is redrawn with that length.
Anchored
Dimension
Parameter
Sonnet User’s Guide
178
Rev 16.56
There are three types of dimension parameters: anchored, symmetric, and radial.
For brevity, we refer to anchored dimension parameters as anchored parameters,
symmetric dimension parameters as symmetric parameters, and radial dimension
parameters as radial parameters for the remainder of this discussion. An anchored
parameter allows you to fix one end of a parameter then vary its length extending
from that point. A symmetric parameter allows you to fix the center point of a di-
mension parameter and vary the distance it extends on each side. A radial param-
eter allows you to fix one end of a parameter then radiate out from that fixed point;
the direction is not restricted to the x or y direction, but may extend at an angle.
The three dimension parameter types are described in detail in the following sec-
tions.
Nominal Value = 90 mils Nominal Value = 120 mils
Nominal Value = 40 mils Nominal Value = 80 mils
Nominal Value = 60 mils Nominal Value = 80 mils
Chapter 9 Parameterizing your Project
179
Rev 16.56
Anchored Dimension Parameters
An anchored parameter defines a dimension using an anchor point, a reference
point and an adjustable point set. The nominal value of the parameter is defined
by the distance between the anchor point and the reference point. When the dimen-
sion is varied, each point moves relative to the anchor point. When defining your
dimension parameter, you perform the following steps:
You select the anchor first. This is the fixed starting point for the
parameter.
You select the reference point. The reference is the first point in the
adjustable point set, which is the set of points moved relative to the
anchor point when the value of the dimension parameter is changed.
The distance from the anchor point to the reference point is the value of
the dimension parameter. When the value of the dimension parameter is
changed, the anchor retains the same position, but the reference point,
moves to a new position.
Third, you select any additional points in your circuit you wish to move
when the reference point moves; this is the adjustable point set. As the
value of the dimension parameter varies and the reference point is
moved, the positions of the points in the adjustable point set also move.
There is a setting associated with each dimension parameter that
determines how the adjustable point set is moved. With the default, and
simplest, option each point in the adjustable point set retains its relative
distance from the reference point. For a discussion of all the options
controlling moving the adjustable point set, see "Moving Adjustable
Point Sets" on page 183.
Note that the anchored parameter is always defined as the distance between the an-
chor and the reference point in either the X direction or the Y direction, never as
a diagonal distance between them.
Two examples of anchored parameters, each at two different nominal values, are
illustrated below. This example uses the default setting for how the adjustable
point set moves.
Sonnet User’s Guide
180
Rev 16.56
.
TIP
Once you have finished adding a dimension parameter, double-clicking on the
variable name and entering a new nominal value allows you to check whether the
dimension parameter was defined correctly.
Symmetrical Dimension Parameters
A symmetric parameter defines a dimension using two reference points and their
respective adjustable point sets. The nominal value of the parameter is the distance
between the two reference points. The anchor is defined as the midpoint between
Anchor
Point
Reference
Point
Adjustable
Point Set
Dwidth, nominal value = 60 mils
Anchor
Point
Reference
Point
Adjustable
Point Set
Dtop, nominal value = 40 mils Dtop, nominal value = 60 mils
Notice that although the top and bottom examples have identical anchor and reference
points and starting and ending nominal values, that the resulting polygon on the top differs
from that on the bottom due to a different adjustable point set (the point set is highlighted
by the oval).
Dwidth, nominal value = 40 mils
Chapter 9 Parameterizing your Project
181
Rev 16.56
the two reference points; the user does not define an anchor point for a symmetric
parameter. When the dimension is varied, each point moves relative to the anchor
point. When defining your dimension parameter, you perform the following steps:
Select the first reference point.
Select the adjustable point set that moves with the first reference point.
Select the second reference point. The value of the parameter is the
distance between the two reference points.
Select the adjustable point set that moves with the second reference
point.
There is a setting associated with each dimension parameter that determines how
the adjustable point sets are moved. With the default, and simplest, option each
point set moves one half the distance of the difference between the present value
and the previous value out from the middle point, maintaining its relative positive
to the reference point with which it is associated. For a discussion of all the options
controlling moving adjustable point sets, see "Moving Adjustable Point Sets" on
page 183.
Note that the symmetric parameter is always defined as the distance between the
reference points in either the X direction or the Y direction, never as a diagonal
distance between them.
Sonnet User’s Guide
182
Rev 16.56
Two examples of symmetric parameters, each at two different nominal values, are
illustrated below. This example uses the default setting for how the adjustable
point set moves.
Adjustable
Point Set 1
Width, nominal value = 40 mils Width, nominal value = 80 mils
Bwidth, nominal value = 40 mils Bwidth, nominal value = 80 mils
Reference
Point 1 Reference
Point 2
Adjustable
Point Set 2
Reference
Point 1
Adjustable
Point Set 1
Reference
Point 2
Adjustable
Point Set 2
Notice that although the top and bottom examples have identical reference
points and starting and ending nominal values, that the resulting polygon on
the top differs from that on the bottom due to a different adjustable point set
(the point set is highlighted by the oval).
Chapter 9 Parameterizing your Project
183
Rev 16.56
Moving Adjustable Point Sets
Anchored and symmetric parameters have a setting which controls how the adjust-
able point sets are moved. There are three settings: Move points the same distance,
Scale points in one direction, and Scale points in X and Y. Each type is explained
below.
Move Points the Same Distance: This setting moves the adjustable point set
the same distance as the reference point is moved and all the points in the adjust-
able point set maintain their relative position. This is the default setting. An exam-
ple using an anchored dimension parameter is shown below. Note that the
adjustable point sets are highlighted.
The anchored dimension parameter is increased by 10 mils, so each point in the
adjustable point set is moved away from the anchor point by 10 mils. As shown in
the illustration, the original distance from the anchor to the circled point was 40
mils; when the value of the parameter is increased, the point was moved by 10 mils
so that it is now 50 mils away from the anchor point.
This is the Parameter
Properties dialog box in which
you select the moving option
from the drop list shown to the
left. This dialog box appears
when you are entering a
dimension parameter or when
you select the command Modify
Parameter Properties when
a dimension parameter is
selected.
Moving option drop list
Sonnet User’s Guide
184
Rev 16.56
Scale Points in one direction: When using this setting, the geometry con-
trolled by the parameter is scaled or stretched along either the x or y axis depend-
ing on the orientation of the parameter. Each point in the adjustable point set is
moved by an amount based on its relative distance from the anchor. Points closer
to the anchor are moved a smaller distance then points further away from the an-
chor. For symmetric parameters, the anchor is the center point between the two
reference points.
The scaling factor used is the ratio of the new nominal value to the present nomi-
nal value. Each point is moved by a delta calculated by multiplying its present dis-
tance from the anchor point by the scaling factor.
Scale Points in x and y: When using this setting, the geometry controlled by
the parameter is scaled or stretched along both the x and y axis keeping the pro-
portions of the geometry the same. Each point in the adjustable point set is moved
by an amount based on its relative distance from the anchor. Points closer to the
anchor are moved a smaller distance then points further away from the anchor. For
symmetric parameters, the anchor is the center point between the two reference
points.
The scaling factor used is the ratio of the new nominal value to the present nomi-
nal value. Each point is moved by a delta calculated by multiplying its present dis-
tance from the anchor point by the scaling factor.
An anchored dimension parameter being scaled in both directions is shown below.
The scaling factor is 1.5 since the new nominal value is 120 mils and the present
value is 80 mils. As shown in the illustration, the original distance from the anchor
of the circled point was 36.5 mils along the x axis and 43.5 mils along the y axis;
Chapter 9 Parameterizing your Project
185
Rev 16.56
when the value of the parameter is increased the point was moved to 54.75 mils
away from the anchor point along the x axis and 65.25 mils along the y axis; the
original distances multiplied by the scaling factor of 1.5.
Radial Dimension Parameters
A radial parameter defines a dimension using an anchor point, a reference point
and an adjustable point set. The nominal value of the parameter is defined by the
distance between the anchor point and the reference point. When the dimension is
varied, each point moves along a line extending from the anchor point through it’s
original position. Setting up a radial parameter is identical to setting up an an-
chored parameter. When defining your radial parameter, you perform the follow-
ing steps:
You select the anchor first. This is the fixed starting point for the
parameter.
You select the reference point. The reference is the first point in the
adjustable point set, which is the set of points moved relative to the
anchor point when the value of the radial parameter is changed. The
diagonal distance from the anchor point to the reference point is the
value of the dimension parameter. When the value of the dimension
parameter is changed, the anchor retains the same position, but the
reference point, along with the adjustable point set, moves to a new
position.
Third, you select any additional points in your circuit you wish to move
when the reference point moves; this is the adjustable point set. As the
value of the dimension parameter is varied, the reference point, as well
as the rest of the adjustable point set, is moved accordingly. Each of the
Sonnet User’s Guide
186
Rev 16.56
points in the point set move the same distance along their radius from
the anchor point. An example is shown below.
Radial = 40 mils Radial = 80 mils
The view of Radial=40 mils is superimposed over the view of Radial=80
mils. As can be seen, each adjustable point moves the same distance
along its radius from the anchor point to its new position. Therefore line
segments AA’, BB’, CC’ and DD’ are all equal to 40 mils, the difference
between the two values of the dimension parameter Radial.
Chapter 9 Parameterizing your Project
187
Rev 16.56
Reference Planes
Linking your reference plane to a dimension parameter moves the reference plane
in response to a change in the dimension parameter helping to ensure correct
placement of your reference plane. In order to do this, link your reference plane to
a point in the adjustable point set for the desired dimension parameter as illustrat-
ed below.
Dependent Dimension Parameters
One dimension parameter is dependent upon another if the anchor point and/or the
reference point(s) for the second parameter are part of an adjustable point set for
the first parameter. This is allowed as long as a circular dependency is not formed;
see the following section. You need to be aware of dependent dimension parame-
ters so that you can take into consideration the complete impact on your circuit
when the value of the primary dimension parameter is changed. When the primary
dimension parameter is changed, a dependent parameter is adjusted, i.e., the an-
chor point or reference point is moved, along with the primary dimension param-
In the circuit shown at
the top, the reference
planes are a fixed
length. When the
dimension parameter
changes, the reference
plane lengths do not
change resulting in
incorrectly placed
reference planes.
On the bottom, the
reference planes are
linked to points in the
adjustable point set.
When the dimension
parameter is changed,
the reference planes
move with it keeping
the reference planes in
the correct place.
Link point for the
left reference plane
Link point for the
right reference plane
Sonnet User’s Guide
188
Rev 16.56
eter on which they depend. A picture of a dependent dimension parameter is
shown below with the Anchor and Reference points highlighted as well as the
point sets.
You may use the Select Dependents command in the project editor to determine
if there are any dependent dimension parameters. With the project open in the
project editor, do the following:
1 Right-click on a dimension parameter in your circuit.
The variable name and the dimension parameter point set is highlighted and a pop-
up menu appears on your display.
2 Select “Select Dependents” from the pop-up menu.
If any dependent dimension parameters are present in your geometry, the
dependent dimension parameter is highlighted.
Circular Dependencies in Parameters
Care should be taken when adding dimension parameters to your circuit that they
do not form a circular dependency. A circular dependency is formed when two di-
mension parameters are dependent on each other. This can happen for two dimen-
sion parameters or multiple dimension parameters. In the case of multiple
dimension parameters, the dependency extends from the first dimension parame-
ter through all the dimension parameters until the first dimension parameter is de-
pendent upon the last.
Feed Anchor
Point
Feed Ref. Pt.
Feed Adjustable
Pt. Set
Width Anchor
Point
Width
Ref. Pt.
Width Adjustable
Pt. Set
The dimension parameter “Width” is dependent on the dimension parameter “Feed”.
Note that the anchor point for the dimension parameter “Width”, shown on the right, is
part of the adjustable point set for the dimension parameter “Feed,” shown on the left.
Chapter 9 Parameterizing your Project
189
Rev 16.56
If the project editor detects a circular dependency of dimension parameters, all the
involved dimension parameters are shown in red. An example of two dimension
parameters in a circular dependency is shown below.
A circular dependency is an error condition and must be corrected before you can
analyze your circuit. You need to redefine one of the dimension parameters such
that it is no longer dependent on the other.
Parameter Sweep
Once you have defined variables in your circuit, you may use the variables to per-
form a parameter sweep. A parameter sweep allows you to run through a set of
analyses, with different variable values, all in one step. This allows you to see how
changes in your circuit affect the response of your circuit.
You set up the parameter sweep in the Analysis Setup dialog box in the project
editor. To access this dialog box, select Analysis Setup from the main menu of
the project editor. In the dialog box which appears, select “Parameter Sweep”
from the Analysis Control drop list. For details on using this dialog box, please
refer to Help.
All frequency sweep types are available for a parameter sweep. You may allow
one or multiple variables to change when running a parameter sweep.
Sweep modes allow you to control what variable combinations are analyzed for a
parameter sweep. Sweep modes for a parameter sweep include Linear Sweep,
Corner Sweep, Sensitivity Sweep and Mixed Sweep Combinations.
A linear sweep analyzes your circuit at every available combination of
variable values.
A corner sweep allows you to analyze the “extremes” of your variables
by analyzing at all the combinations of the minimum and maximum
Sonnet User’s Guide
190
Rev 16.56
values of the variables as well as at the nominal values. This allows you
to see how your circuit varies over the data range of your variable. For a
corner sweep, the number of combinations which are analyzed is
where Nc is the number of combinations and Nv is the number of inde-
pendent variables selected for the parameter sweep.
A Sensitivity Sweep allows you to see how “sensitive” your circuit is to
changes in any given variable. The nominal value of each variable is
combined with the maximum and minimum values of the other
variables as well as the nominal values. For a sensitivity sweep, the
number of combinations which are analyzed is
where Nc is the number of combinations and Nv is the number of inde-
pendent variables selected for the parameter sweep.
Mixed Sweep Combinations allows you to define a range of values for
each variable, then perform an analysis at each possible combination of
variable values. There are four types of sweeps available: Fixed, Linear,
Linear (# steps), and Exponential.
Parameter Sweep Example
For example, the graphics below illustrate a linear parameter sweep of the circuit
“steps” with a single dimension parameter whose value is defined as the variable
“Width.” The parameter sweep starts with a value of 20 mils for the variable and
Nc2Nv1+=
Nc2Nv
1+=
Chapter 9 Parameterizing your Project
191
Rev 16.56
increases in steps of 20 until the variable’s value is 60. Em automatically performs
an analysis at each specified frequency for each circuit shown below when the pa-
rameter sweep is executed.
In the case of this sweep, an ABS analysis from 10 - 20 GHz was performed. The
response data for the parameterization is shown in the graph below.
Width = 20 mils Width = 60 mils
Width = 40 mils
Sonnet User’s Guide
192
Rev 16.56
You may also plot your response data against the parameter values by selecting
the Graph Plot Over Parameter command in the response viewer. Shown
below is the plot of the magnitude in dB of S21 versus the variable Width at 10
Hz. Data markers have been added to the plot for clarity (Graph Marker Add
Data Marker).
Since an analysis of the circuit at each combination of variable values is executed
for each specified analysis frequency, care should be taken when choosing data
ranges. The higher the number of analysis frequencies and variable values, the
higher the number of analyses that must be computed by em. The number of com-
binations specified is displayed in the project editor.
Optimization
You may also use variables to perform an optimization on your circuit. An opti-
mization allows you to specify goals - the desired response of your circuit - and
the data range for the variables(s) over which you seek the response. The software,
using a conjugate gradient method, iterates through multiple variable values,
searching for the best set which meets your desired goals.
The conjugate gradient optimizer begins by analyzing the circuit at the nominal
variable values. It then perturbs each variable individually, while holding the oth-
ers fixed at their nominal values, to determine the gradient of the error function
for that variable. Once it has perturbed each variable, it then performs a line search
in the direction of decreasing error function for all variables. After some iterations
on the line search, the optimizer again calculates the gradients for all variables by
Chapter 9 Parameterizing your Project
193
Rev 16.56
perturbing them from their present “best” values. Following this, a new line search
is performed. This continues until one of three conditions are met: 1) the error
goes to zero 2) the error after the present line search is no better than the error from
the previous line search 3) the maximum number of iterations is reached. When
one of these three conditions is met, the optimizer halts.
The equations used to determine the optimization goal error are as follows:
Setting up an optimization consists of five parts:
Specifying optimization frequencies
Specifying your goals
Choosing which variables to vary
Specifying data ranges for the chosen variables
Specifying the maximum number of iterations
EqualOperatorError Simulation f Tetfarg
N
-----------------------------------------------------------------------------------=
where:
Target(f): Target value of measurement at frequency f.
Simulation(f): Simulated value of measurement at frequency f.
N: Number of frequencies in optimization goal.
GreaterThanOperatorError Tetfarg MIN Simulation fTetfarg[,]
N
---------------------------------------------------------------------------------------------------------------------------------------=
where:
Target(f): Target value of measurement at frequency f.
Simulation(f): Simulated value of measurement at frequency f.
MIN[]: Determines minimum value of the specified arguments.
N: Number of frequencies in optimization goal.
LessThanOperatorError Simulation f MIN Simulation fTetfarg[,]
N
------------------------------------------------------------------------------------------------------------------------------------------------
-
=
where:
Target(f): Target value of measurement at frequency f.
Simulation(f): Simulated value of measurement at frequency f.
MIN[]: Determines minimum value of the specified arguments.
N: Number of frequencies in optimization goal.
Sonnet User’s Guide
194
Rev 16.56
Care should be taken when setting the nominal values for the variables to be opti-
mized. The optimizer starts at the nominal values and converges to the minima
which is closest to those nominal values. Thus, it is highly recommended that you
perform some pre-analysis prior to doing the optimization to ensure that the nom-
inal values are in the right value range when the optimizer is started. Otherwise,
the optimizer may converge to a local minima for which the error is not the mini-
mum achievable value, as pictured below.
You specify a goal by identifying a particular measurement and what value you
desire it to be. For example S11 < -20 dB. Keep in mind that the goals you specify
may not be possible to satisfy. Em finds the solution with the least error.
You may also specify a goal by equating a measurement in one network to a mea-
surement in another network or file. For example, you may set S11 for network
“Model” equal to S11 for network “Measured.” Likewise, you may equate S11 for
network “Model” to S11 for data file “meas.s2p.”
You may select one or multiple variables to optimize. For each variable that you
select you must specify minimum and maximum bounds. The analysis limits the
variables to values within the specified bounds.
Variables that are used in an optimization have a granularity value assigned to
them; the granularity defines the finest resolution, the smallest interval between
values, of a variable for which em will do a full electromagnetic simulation during
optimization. For values which occur between those set by this resolution, em per-
forms an interpolation to produce the analysis data. By default, the software deter-
mines the granularity, but you may enter a value manually.
You specify the number of iterations. For each iteration, em selects a value for
each of the variables included in the optimization, then analyzes the circuit at each
frequency specified in the goals. Depending on the complexity of the circuit, the
number of analysis frequencies and the number of variable combinations, an op-
timization may take a significant amount of processing time. The number of iter-
Parameter Values
Error
Function
Local Minima
Actual Minimum
Chapter 9 Parameterizing your Project
195
Rev 16.56
ations provides a measure of control over the process. Note that the number of
iterations is a maximum. An optimization can stop after fewer iterations if the op-
timization goal is achieved or it finds a minima (finds no improvement in the error
in further iterations).
Once the optimization is complete, the user has a choice of accepting the optimal
values for the variables resulting from the em analysis. Note that for dimension
parameters, if the results of the optimization are accepted, the actual metalization
in the project editor is the closest approximation which fits the present grid set-
tings. As a matter of fact, em analyzes “snapped” circuits and interpolates to pro-
duce responses for circuits which do not exactly fit the grid. For more information
about the grid, see Chapter 3 "Subsectioning" on page 27.
Sonnet User’s Guide
196
Rev 16.56
Chapter 10 Parameter Sweep and Optimization Tutorial
197
Rev 16.56
Chapter 10 Parameter Sweep and
Optimization Tutorial
This tutorial shows you how to set up variables and dimension parameters in a cir-
cuit, set up and execute a parameter sweep, set up and execute an optimization and
view the results of both a parameter sweep and an optimization. For a detailed dis-
cussion of parameterization and optimization, please refer to Chapter 9.
This tutorial presumes that you are familiar with Sonnet Software, especially the
project editor and the analysis monitor. If you are new to Sonnet, please review
the tutorials in Chapter 4 and Chapter 5 of the Getting Started manual before per-
forming this tutorial.
This tutorial uses the Sonnet example Par_dstub. The example may be obtained
using the Sonnet Example browser.You may access the Sonnet Example browser
by selecting Help Browse Examples from the menu of any Sonnet application.
For instructions on using the Example Browser, please click on the Help button in
the Example Browser window. Save the example to your working directory.
This is an example of a microstrip interdigital bandstop filter. This circuit is used
to perform a parameter sweep and optimization. Most parameter sweeps and op-
timizations will present more of a challenge, but we have deliberately chosen a
simple example to more clearly demonstrate Sonnet’s methodology.
Our goal is to design the bandstop filter such that a stopband exists from 5 - 6 GHz
and the passbands are from 1 - 4 GHZ and 7-10 GHz.
Sonnet User’s Guide
198
Rev 16.56
1 Open the copy you made of the par_dstub example in the project editor.
Par_stub is displayed in the project editor.
Setting Up Dimension Parameters
Before executing either a parameter sweep or optimization, it is first necessary to
add your variables and dimension parameters. Variables should be used for the
properties most critical to the circuit’s response. Dimension parameters should be
added to those dimensions you deem critical to the circuit’s response. These prop-
erties and dimensions are the most likely to change as the design progresses.
For this example, you will enter three dimension parameters: two anchored di-
mension parameters which are linked and one symmetric dimension parameter.
Anchored dimension parameters are referred to as anchored parameters and sym-
metric dimension parameters are referred to as symmetric parameters for the rest
of the tutorial.
An anchored parameter is one in which one end of the dimension parameter is a
fixed point with a point set which moves in reference to that fixed, or anchored
point. A symmetric parameter is one with two reference points and two point sets
which move relative to the center point between the reference points.
Dimension parameters which appear in more than one place in a circuit but are of
the same length and assigned the same variable are linked. Changing the value of
the variable changes the length of both.
For a detailed discussion of variables and their definitions, please refer to "Vari-
ables" on page 172.
Anchored Parameters
The linked anchored parameters are input first, followed by the symmetric.
2 Select Tools Add Dimension Parameter Add Anchored from the project
editor’s main menu.
This places the project editor in Add an Anchored Parameter mode indicated by
the change in cursor. Note that the message “Click Mouse to Specify the Anchor
Point” appears in the status bar at the bottom of the project editor window. As you
add a parameter, directions for each step appear in the status bar.
Chapter 10 Parameter Sweep and Optimization Tutorial
199
Rev 16.56
3 To specify the Anchor point for the parameter, click the mouse on the corner
of the upper stub, as shown in the picture below.
The anchor point is indicated by a small square which appears at the point you
clicked. The next step is to select the reference point.
TIP
If you select the wrong point for either the anchor or reference point, press the Es-
cape key to exit without adding a parameter. You may then start over.
4 Click on the top left end of the top stub to add the reference point.
The reference point is indicated by a small square which appears at the point you
clicked.
In the next step, you select the rest of the adjustable point set. Points may be se-
lected by clicking on individual points or by lassoing a set of points with your
mouse. You do not need to select the reference point since it is automatically in-
cluded in the adjustable point set.
Anchor Point
Reference Point
Sonnet User’s Guide
200
Rev 16.56
5 Drag the mouse until both points on the end of the stub are selected.
These points will be added to the adjustable point set. When the reference point
moves in response to a change in the parameter value, these points move relative
to the reference point.
6 Once all the desired points are selected, press Enter.
This completes the dimension parameter creation. The Parameter Properties
dialog box appears on your display.
7 Enter the variable “Lstub” in the Variable Name text entry box in the
Parameter Properties dialog box and click on the OK button.
This assigns the variable “Lstub” to the dimension parameter. When you click on
the OK button an arrow indicating the length and the name appear on your display.
8 Move the mouse until the name is positioned above the stub. When the name
is in the desired position, click on the mouse.
The dimension parameter should now appear as shown below.
Selected Points
Variable Name text
entry box
Chapter 10 Parameter Sweep and Optimization Tutorial
201
Rev 16.56
You will now enter the linked dimension parameter. A linked dimension parame-
ter is another dimension parameter identified in the circuit that has the same nom-
inal value and assigned variable.
9 Select Tools Add Dimension Parameter Add Anchored from the project
editor’s main menu.
This places the project editor in Add an Anchored Parameter mode indicated by
the change in cursor.
10 To specify the Anchor point for the parameter, click the mouse on the corner
of the lower stub, as shown in the picture below.
The anchor point is indicated by a small square which appears at the point you
clicked. The next step is to select the reference point.
11 Click on the top right end of the bottom stub to add the reference point.
The reference point is indicated by a small square which appears at the point you
clicked.
In the next step, you select the rest of the adjustable point set. Points may be se-
lected using the any of the edit commands available in the project editor.
Anchor Point
Reference Point
Sonnet User’s Guide
202
Rev 16.56
12 Drag the mouse until both points on the end of the stub are selected.
These points will be added to the adjustable point set. When the reference point
moves, these points move relative to the reference point.
13 Once all the desired points are selected, press Enter.
This completes the dimension parameter creation. The Parameter Properties
dialog box appears on your display.
14 Select the variable name “Lstub” from the drop list in the Variable Name
text entry box in the Properties dialog box and click on the OK button.
This assigns the variable “Lstub” to the dimension parameter. When you click on
the OK button an arrow indicating the length and the variable name appear on your
display. Use your mouse to move the label to the desired location, then click.
Since this dimension parameter’s nominal value is the same as the first parameter
you defined, the project editor allows you to assign the same variable to both di-
mension parameters. These dimension parameters are now linked. A change in
value of the variable changes both dimension parameters. If the dimension param-
eters had been of a different length, the variable name “Lstub” would not have ap-
peared in the list. Entering the variable name manually would invoke an error
message.
Selected Points
Since you have already
created the variable “Lstub”
and this dimension parameter
is the same length as the
dimension parameter to
which “Lstub” is already
assigned, the variable name is
available in the drop list.
Chapter 10 Parameter Sweep and Optimization Tutorial
203
Rev 16.56
Next, you define the last dimension parameter which is symmetric.
Symmetric Parameters
15 Select Tools Add Dimension Parameter Add Symmetric from the project
editor’s main menu.
This places the project editor in Add a Symmetric Parameter mode indicated by
the change in cursor. Note that the message “Click mouse to specify first reference
point” appears in the status bar at the bottom of the project editor window. As you
add a dimension parameter, directions for each step appear in the status bar and as
tool tips on your screen.
16 To specify the first reference point for the dimension parameter, click the
mouse on the intersection of the inside of the top stub to the transmission
line, as shown in the picture below.
The first reference point is indicated by a small square which appears at the point
you clicked. The next step is to select the point set you want attached to the first
reference point.
17 Drag the mouse until all points on the upper stub are selected.
These points will be added to the first adjustable point set. When the first reference
point moves, these points move in the same direction and distance as the reference
point.
First Reference
Point
Selected Points
Sonnet User’s Guide
204
Rev 16.56
18 Once all the desired points are selected, press Enter.
This completes the first point set. Your circuit should look similar to this:
The message “Click Mouse to Specify Second Reference Point” appears on your
display. Next, you will specify the second reference point and its point set.
19 To specify the second reference point for the parameter, click the mouse on
the intersection of the inside of the bottom stub to the transmission line, as
shown in the picture below.
The second reference point is indicated by a small square which appears at the
point you clicked. Note that the first point set continues to be identified by small
squares on all its points. The next step is to select the point set you want attached
to the second reference point.
The first point set is
indicated by small open
squares on all the points
in the set.
Second Reference
Point
Chapter 10 Parameter Sweep and Optimization Tutorial
205
Rev 16.56
20 Drag the mouse until all points on the lower stub are selected.
These points will be added to the second adjustable point set. When the second
reference point moves, these points move in the same direction and distance as the
reference point.
21 Once all the desired points are selected, press Enter.
This completes the second point set and the symmetrical parameter. The
Parameter Properties dialog box appears on your display.
22 Enter the name “Sstub” in the Variable Name text entry box in the
Parameter Properties dialog box and click on the OK button.
This assigns the variable “Sstub” to the dimension parameter. When you click on
the OK button an arrow indicating the length and the variable name appear on your
display. Note that since there is a difference between the reference points in both
the x (horizontal) and y (vertical) direction, you may move the parameter name so
that the parameter is defined in either the x or y direction.
If you were to choose the y direction, moving the mouse to the left or right of both
reference points to define your parameter, it would appear like this:
However, for this example, you define the parameter in the x direction, moving
your mouse up or down, above or below both reference points.
Selected Points
Sonnet User’s Guide
206
Rev 16.56
23 Move the mouse until the name is positioned in the middle of the thru line.
When the name is in the desired position, click on the mouse.
This sets the dimension parameter in the x direction. The dimension parameter
should now appear as shown below.
This completes entering the dimension parameters. Note that Lstub is affected by
Sstub. As Sstub increases, although it does not directly affect the value of Lstub,
the two stubs do get further apart. The dimension parameter to which Lstub is as-
signed is dependent on the dimension parameter to which Sstub is assigned. How-
ever, the variable Lstub is NOT dependent on the variable Sstub so that both are
available to be selected for the parameter sweep and optimization covered later in
this tutorial. Only independent variables may be selected for parameter sweeps
and optimization.
24 Select File Save for the project editor main menu.
This saves the changes you have made to the circuit so that you can analyze it.
The next section of the tutorial teaches you how to setup and run a parameter
sweep on the circuit.
Parameter Sweep
The parameter sweep uses only the Lstub variable. You analyze the circuit at two
different lengths for Lstub over a frequency band of 2.0 GHz to 10.0 GHz. When
the sweep is complete, you view the response curves in the response viewer.
For a detailed discussion of a parameter sweep, please refer to “Parameter
Sweep,” page 189.
Chapter 10 Parameter Sweep and Optimization Tutorial
207
Rev 16.56
Setting Up a Parameter Sweep
1 Select Analysis Setup from the project editor’s main menu.
The Analysis Setup dialog box appears on your display.
2 Select Parameter Sweep from the Analysis Control drop list.
This selects a parameter sweep as the type of analysis. The dialog box’s
appearance changes to accommodate the input needed for a parameter sweep.
3 Click on the Add Button in the Analysis Control section of the dialog box.
The Parameter Sweep Entry dialog box appears. This dialog box allows you to add
a parameter sweep.
The first step is to specify the analysis frequencies you wish to use for the param-
eter sweep. For this example, you wish to perform an ABS sweep from 2.0 GHZ
to 10.0 GHz. Since Adaptive Sweep (ABS) is the default sweep type, you do not
need to take any action to select it.
4 Enter 2.0 in the Start text entry box in the Frequency Specification section of
the Parameter Sweep Entry dialog box.
This is the starting frequency.
5 Enter 10.0 in the Stop text entry box.
This is the highest frequency. This defines a band of 2 GHz to 10 GHz for the
adaptive sweep.
Next, you will select the variables you wish to sweep.
Analysis Control
drop list
Sonnet User’s Guide
208
Rev 16.56
6 Click on the checkbox in the Sweep column of the entry for the Lstub
variable.
It is possible to select multiple variables for a parameter sweep; however, for this
example, only one variable is used. If you wished to deselect the variable, you
would simply click on the checkbox again. Unchecked variables are simulated at
their nominal value, so Sstub is a constant, fixed at 220 mils for the parameter
sweep.
The nominal value, that is the present value of the variable in the circuit, appears
in the Nominal column of the variable entry. In this case, the nominal value of
Lstub is 220 mils, so the project editor shows the length as 220 mils, even though
the start value for the variable is different.
7 Enter 120 in the Start text entry box in the Lstub row.
This sets 120 mils as the first variable value used for Lstub.
8 Enter 280 in the Stop text entry box in the Lstub row.
This sets 280 mils as the last variable value used for Lstub.
9 Enter 160 in the Step text entry box in the Lstub row.
The interval between variables is 160 mils; therefore, this parameter sweep
analyzes at two variable values, 120 and 280 mils.
Chapter 10 Parameter Sweep and Optimization Tutorial
209
Rev 16.56
There is a drop list for the Sweep mode just above the entries for the variables. The
default mode of Linear Sweep is used for this example so there is no need to take
any action. For details on sweep modes, please refer to Help by clicking on the
Help button in this dialog box.
This completes the setup for the parameter sweep entry.
10 Click on the OK button to close the dialog box.
When the dialog box is closed, the Analysis Setup dialog box is updated with an
entry for the parameter sweep that you just defined. In this case, since there are
two values for a single variable, there are two parameter combinations. Each com-
bination is analyzed at each analysis frequency.
For example, you have two variables, the first has seven values and the second has
eleven values. In that case, there would be 77 variable combinations for the anal-
ysis.
11 Click on the OK button of the Analysis Setup dialog box.
This completes the entry of the parameter sweep.
Next, you run the analysis and use the analysis monitor to observe the progress.
Sonnet User’s Guide
210
Rev 16.56
Executing the Parameter Sweep
12 Select Project Analyze from the project editor’s main menu to invoke the
analysis engine, em, and start the analysis.
If you are prompted, save the file. The output window of the analysis monitor
appears on your display.
13 Click on the Response Data button in the analysis monitor output window.
This allows you to observe the analysis as it progresses. There is a progress bar at
the top of the window which shows what percentage of the total analysis is
complete with the number of frequencies analyzed appearing above it. The
response data is output in the bottom of the window.
The analysis could take a few minutes to run depending on your computer.
Once the analysis is complete, you open the response viewer to look at your
results.
Observing the Parameter Sweep Data
You want to see the data for the S21 response at Lstub = 120 mils and Lstub = 280
mils.
14 Select Project View Response New Graph from the main menu of the
analysis monitor output window.
The response viewer window appears on your display with S11 displayed.
15 Right click on par_dstub in the Curve Group legend.
A pop-up menu appears on your display.
16 Select Edit Curve Group from the pop-up menu.
The Edit Curve Group dialog box appears on your display.
17 Double click on DB[S11] in the Selected list.
This moves the S11 response to the Unselected list. It will no longer appear in your
plot.
18 Double click on DB[S21] in the Unselected list.
This moves the S21 response to the Selected list so that it appears in your plot.
Chapter 10 Parameter Sweep and Optimization Tutorial
211
Rev 16.56
19 Click on the Select Combinations button in the Edit Curve Group dialog
box.
The Select Parameters dialog box appears on your display. Note that by default
only variables which are varied during the parameter sweep are displayed, so only
Lstub appears. If you wish to also display variables which were not varied, in this
case Sstub, click on the Configure Columns button and select the “Static”
checkbox in the Configure Columns dialog box.
20 Click on the Select All button above the Selected Parameter Combinations
list.
There should be only one entry in this list; the Select All button was used to
demonstrate its function. This selects all the parameters in the Selected List.
21 Click on the Up Arrow button to move all the parameter combinations to the
Unselected list.
22 Double-click on Lstub = 120 mils in the Unselected List.
This moves this parameter combination to the selected list so that the data for this
combination appears in your plot.
23 Click on the OK button in the Select Parameters dialog box to apply the
changes and close the dialog box.
The entry “Lstub = 120.0 Sstub = 220.0” appears in the Parameter Combinations
section of the Edit Curve Group dialog box.
Sonnet User’s Guide
212
Rev 16.56
24 Click on the OK button in the Edit Curve Group dialog box to apply the
changes and close the dialog box.
The plot is updated with the S21 response for Sstub = 220 mils, Lstub = 120 mils.
The entry for the curve group, par_dstub appears in the Curve Group Legend. The
graph should be similar to the one shown below.
25 To add the response at Lstub = 280 mils, select Curve Add Curve Group
from the response viewer main menu.
The Add Curve Group dialog box appears. This curve group uses the default name
of par_dstub_2. Following the same steps you used for par_dstub above, set up
this curve group to display the S21 response for Lstub = 280 mils, Sstub = 220
mils. Your plot should now look like the one below.
You could also have right-clicked the curve group par_dstub in the Left Axis pane
of the legend and selected “Edit Curve Group” from the pop-up menu. Using the
Edit Curve group dialog box, you could have added this parameter combination to
Chapter 10 Parameter Sweep and Optimization Tutorial
213
Rev 16.56
this curve group. This would result in one curve group with one symbol represent-
ing both parameter combinations. This is useful if you want multiple measure-
ments (S21 and S11 for example). Each measurement would use a different
symbol, but each parameter combination with a measurement would use the same
symbol. An example is pictured below.
In the beginning, the goal of the filter design was stated as a stopband between 5.0
and 6.0 GHz. By looking at the graph of Lstub=120 as compared to Lstub=280,
you can see that a filter with the required stopband would fall approximately in the
middle of the two curves. So a value of 220 mils is chosen for the nominal value
for Lstub for the optimization. A nominal value of 200 mils is chosen for Sstub.
Optimization
This next section of the tutorial shows how to set up and execute an optimization.
For a detailed discussion of optimization, please refer to "Optimization" on page
192.
If par_dstub.son is not still open in the project editor, open the file in the project
editor.
Sonnet User’s Guide
214
Rev 16.56
Entering New Nominal Values
Usually for this type of circuit, you would optimize using both of the defined pa-
rameters, Lstub and Sstub, but for the sake of processing time, the optimization
only uses one parameter, Lstub.
The nominal value used for Sstub will be 200 mils. This was arrived at by actually
executing the optimization using both parameters and using the closest value on
the grid of the optimized parameter.
26 Double-click on the parameter Sstub in the circuit.
The Parameter Properties dialog box for Sstub appears on your display.
27 Change the nominal value in the Nominal text entry box to 200.
28 Click on the OK button to close the dialog box and apply the new nominal
value.
The circuit is redrawn using the new nominal value for Sstub.
!WARNING
It is recommended that you change the nominal value of dimension
parameters by using the properties dialog box, since changing your nominal
value this way does not affect any previous response data in your project file.
If you change the nominal value of the dimension parameter by changing the
circuit through editing commands, such as a reshape, all previous response
data is deleted from the project file when you save.
Setting Up an Optimization
29 Select Analysis Setup from the main menu of the project editor.
The Analysis Setup dialog box appears on your display.
Chapter 10 Parameter Sweep and Optimization Tutorial
215
Rev 16.56
30 Select Optimization from the Analysis Control drop list.
This selects a optimization as the type of analysis. The dialog box’s appearance
changes to accommodate the input needed for an optimization. Note that initially
the nominal values are listed for the variables, since no range has yet been
specified.
31 Click on the Edit button on the right side of the Variables list.
The Optimization Parameters dialog box appears on your display.
Only one variable, Lstub, is used for this optimization. The range for Lstub is 100
mils to 300 mils.
Analysis Control
drop list
Variables list
Optimization Goals
Sonnet User’s Guide
216
Rev 16.56
32 Click on the Optimize checkbox next to Lstub.
This selects the Lstub variable to be used in the optimization. Note that the
nominal value appears in the Nominal text entry box. If you wish to change the
nominal value, you may do so by entering a new value. The circuit will be redrawn
using the new nominal value. Since this is the first optimization run on this project
file the Min and Max entries are blank. If a previous optimization had been run,
the last entered values would remain.
!WARNING
Editing parameter settings or optimization goals causes any pre-existing
optimization iterations to be deleted from the project file.
33 Enter 100 in the Min text entry box in the Lstub row.
This sets the minimum value for the Lstub variable to 100 mils for the
optimization.
34 Enter 300 in the Max text entry box in the Lstub row.
This sets the maximum value for Lstub to 300 mils for the optimization.
35 Click on the OK button to apply the changes and close the dialog box.
When the dialog box is closed, the Analysis Setup dialog box is updated with an
entry for the optimization variables that you just defined.
Chapter 10 Parameter Sweep and Optimization Tutorial
217
Rev 16.56
Now that you have identified which variable to vary and its range, you must spec-
ify the optimization goals. Since this is the first optimization for this project, there
are no previously defined optimization goals and the list is empty. Having no goals
present disables the Edit and Delete buttons. The Edit button allows you to modify
an existing goal, and the delete button removes the goal from the list.
As mentioned earlier in the example, our goal for the filter is to have passbands at
1-4 GHz and 7-10 GHz with a stopband at 5-6 GHz. The optimization goals are
set up accordingly. Since all three goals in this case are equally important, each
uses the default Weight of 1.0. In cases where one goal is more essential, assigning
it a higher weight than other goals tells em to concentrate more on reaching that
particular goal.
36 Click on the Add button to the right of the Optimization Goals list.
The Optimization Goal Entry dialog box appears on your display.
The first goal corresponds to the first passband; therefore, you need to set the ABS
frequency range to 1.0 GHz to 4.0 GHz. There are several different types of fre-
quency sweeps available; you will use the default ABS sweep for this optimiza-
tion.
37 Enter 1.0 in the Start text entry box in the Frequency Specification section of
the dialog box.
This sets the beginning of the frequency band for this optimization goal at 1.0
GHz.
Sweep
Type
Specification
Response Type
drop list
Response
drop list
Operand
Goal Type
Value text
entry box
Frequency
Controls
Sonnet User’s Guide
218
Rev 16.56
38 Enter 4.0 in the Stop text entry box in the Frequency Specification section of
the dialog box.
This sets the end of the frequency band for this optimization goal at 4.0 GHz. This
completes the specification of the frequency sweep for this optimization goal.
Since this is the first passband, your goal is to have DB[S21] be greater than -1.0
dB.
39 Select DB from the Response Type drop list on the left side of the equation.
This is the default, so DB may already be selected.
40 Select S21 from the Response drop list.
The display is updated with “S21.”
41 Select “>” from the Operand drop list.
The display is updated with “>.”
42 Select Value from the Goal Type drop list.
This choice allows you to put in a specific value. This is the default; you may also
specify another project file or another network in your project (if the project is a
Netlist project). In those cases, you may select a response for that circuit to which
you wish to match your selected response.
43 Enter -1.0 in the Value text entry box.
This sets your goal of DB[S21] > -1.0 dB.
44 Click on OK to apply the changes and close the dialog box.
The Analysis Setup dialog box is updated. An entry for this optimization goal now
appears in the Optimization Goals list.
Chapter 10 Parameter Sweep and Optimization Tutorial
219
Rev 16.56
The other two goals should be entered in a similar manner. The second goal is a
adaptive sweep from 5.0 GHz to 6.0 GHz with a desired response of DB[S21] < -
30.0 dB. This is the stopband. The third goal is an adaptive sweep from 7.0 GHz
to 10.0 GHz with a desired response of DB[S21] > -1.0. When you have complet-
ed entering these goals, the Optimization Goals list should appear as shown below.
This completes the setup for the optimization.
Running an Optimization
This optimization took approximately 6.5 minutes on a 2 GHz Pentium 4.
45 Select Project Analyze from the main menu of the project editor.
The output window of the analysis monitor appears on your display.
TIP
You can also click on the Analyze button on the project editor tool bar.
46 Click on the Response Data button in the analysis monitor output window if
it is not already displaying the response data.
This allows you to observe the optimization as it progresses. The error for the first,
present and best iteration are displayed and updated as the optimization
progresses. The response data is output in the bottom of the window.
Sonnet User’s Guide
220
Rev 16.56
You may notice that some iterations complete more quickly than others. This is
because em can reuse portions of the response data calculated for previous itera-
tions.
Once the analysis is complete, you open the response viewer to look at your
results. Be aware that since this optimization took a number of iterations to
conclude, there may be small delays in opening the response viewer and the Edit
Curve Group dialog box.
TIP
You may use the response viewer to observe data produced by the optimization
while it is still running. The response viewer can chart any data which has been
generated. This allows you to stop the optimization and start it over using new
variable ranges or new goals, if the results are not desirable. If you wish to contin-
ue viewing data as the optimization runs, use the Freshen Files command in the
Response Viewer.
Observing your Optimization Data
Plotting the best iteration will allow you to judge whether or not to use the opti-
mized values of the parameters.
47 Select Project View Response New Graph from the main menu of the
analysis monitor.
The response viewer menu appears on your display with the DB[S11] response for
the nominal values parameter combination displayed. There may be some delay
while the project loads into the response viewer due to the amount of response data
now included.
The plot will display the last plot for par_dstu.son that you had open the last time
the response viewer was invoked for this project.
48 Click on a curve group in the legend to select it and select Curve Edit
Curve Group from the main menu of the response viewer.
The Edit Curve Group dialog box appears on your display.
49 Select Optimized from the Data Collection drop list in the Edit Curve Group
dialog box.
Notice that this drop list is now enabled since the project file now contains both
parameter sweep data and optimized data.
Chapter 10 Parameter Sweep and Optimization Tutorial
221
Rev 16.56
50 Move DB[S21] to the Selected list and all other responses to the Unselected
list.
Since your optimization goals were set in reference to the DB[S21] response, you
want to plot this response.
Notice that when you selected Optimized data that the parameter combination was
updated to read:
The best iteration is plotted by default when you select optimized data. If the op-
timization was still running, this provides a useful way of always plotting the best
iteration calculated thus far. Pressing the Freshen Files button on the tool bar of
the response viewer will always show the best iteration.
If you were to click on the Select Iterations button, the dialog box would appear
with all the variable values used in all 25 iterations available to plot. Since you
wish to see the response at the best iteration, you do not need to change the param-
eter value for this curve group.
Sonnet User’s Guide
222
Rev 16.56
51 Click on the OK button to close the dialog box and apply the changes.
The plot is updated showing DB[S21] for the best iteration. It should appear
similar to the plot pictured below.
Chapter 10 Parameter Sweep and Optimization Tutorial
223
Rev 16.56
As you can see, the optimized circuit is producing the desired response of a stop-
band from 5 - 6 GHz and the passbands from 1 - 4 GHZ and 7-10 GHz.
Accepting the Optimized Values
Since the desired responses have been achieved by the optimization, you return to
the project editor to update the nominal value of your parameters with the opti-
mized values.
If the project par_dstub is still open in the project editor, continue at step 54.
52 Click on the curve group, par_dstub in the Curve Group legend in the
response viewer.
This selects a project file and thereby enables the project menu.
53 Select Project Edit from the main menu of the response viewer.
The project editor appears on your display with par_dstub open.
Sonnet User’s Guide
224
Rev 16.56
54 Select Analysis Optimization Results from project editor main menu.
The Optimization Parameters dialog box appears on your display.
Notice that the nominal value of both variables is still the value input at the begin-
ning of the optimization. But the optimization results for both variables are dis-
played in the last column. Since Sstub was not used in the optimization, its
optimization result is the same as the nominal value.
55 Click on the Update button to replace the present nominal values with the
optimization results.
Note that the entries in the Nominal text entry boxes are updated with the
optimized values.
56 Click on OK to close the dialog box and apply the changes.