首页资源分类PCB layoutPCB设计技巧 > 《Virtuoso ADE XL User Guide 6.16》英文版

《Virtuoso ADE XL User Guide 6.16》英文版

已有 460559个资源

下载专区


TI最新应用解决方案

工业电子 汽车电子 个人消费电子

上传者其他资源

文档信息举报收藏

标    签: cadenceADEXLvirtuoso

分    享:

文档简介

《Virtuoso Analog Design Environment XL User Guide 》Product Version 6.1.6  March 2015

文档预览

Virtuoso Analog Design Environment XL User Guide Product Version 6.1.6 March 2015 © 1990–2015 Cadence Design Systems, Inc. All rights reserved. Portions © Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation. Used by permission. Printed in the United States of America. Cadence Design Systems, Inc. (Cadence), 2655 Seely Ave., San Jose, CA 95134, USA. Open SystemC, Open SystemC Initiative, OSCI, SystemC, and SystemC Initiative are trademarks or registered trademarks of Open SystemC Initiative, Inc. in the United States and other countries and are used with permission. Analog Design Environment XL contains technology licensed from, and copyrighted by: Apache Software Foundation, 1901 Munsey Drive Forest Hill, MD 21050, USA © 2000-2007, Apache Software Foundation. Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. contained in this document are attributed to Cadence with the appropriate symbol. For queries regarding Cadence’s trademarks, contact the corporate legal department at the address shown above or call 800.862.4522. All other trademarks are the property of their respective holders. Restricted Permission: This publication is protected by copyright law and international treaties and contains trade secrets and proprietary information owned by Cadence. Unauthorized reproduction or distribution of this publication, or any portion of it, may result in civil and criminal penalties. Except as specified in this permission statement, this publication may not be copied, reproduced, modified, published, uploaded, posted, transmitted, or distributed in any way, without prior written permission from Cadence. Unless otherwise agreed to by Cadence in writing, this statement grants Cadence customers permission to print one (1) hard copy of this publication subject to the following conditions: 1. The publication may be used only in accordance with a written agreement between Cadence and its customer. 2. The publication may not be modified in any way. 3. Any authorized copy of the publication or portion thereof must include all original copyright, trademark, and other proprietary notices and this permission statement. 4. The information contained in this document cannot be used in the development of like products or software, whether for internal or external use, and shall not be used for the benefit of any other party, whether or not for consideration. Disclaimer: Information in this publication is subject to change without notice and does not represent a commitment on the part of Cadence. Except as may be explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representations or warranties as to the completeness, accuracy or usefulness of the information contained in this document. Cadence does not warrant that use of such information will not infringe any third party rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of such information. Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its successor Virtuoso Analog Design Environment XL User Guide Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Licensing in ADE XL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Related Documents for ADE XL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Installation, Environment, and Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Technology Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Virtuoso Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Additional Learning Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Third Party Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Typographic and Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 SKILL Syntax Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Form Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Help and Support Facilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1 Getting Started in the Environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Getting Started in the ADE XL Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Launching Analog Design Environment XL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Using the ADE (G)XL Launch Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Creating a New Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Opening an Existing Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 ADE XL Environment at Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 ADE XL Environment User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 ADE XL Start Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Menu Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Context-Sensitive Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Assistant Panes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Workspaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Specifying the Run Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Simulators Supported for Run Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 March 2015 © 1990-2015 3 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Options for Saving Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Specifying Results Database Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 2 Specifying Tests and Analyses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Working with Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Adding a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Renaming a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Copying a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Removing a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Adding Notes to a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Changing the Order of Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Viewing Information about a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Adding, Changing, and Removing Analyses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Adding an Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Changing an Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Removing an Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Choosing a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Opening a Design Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Choosing the Target Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Loading State Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 Saving State Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Specifying Model Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Setting the Simulation Temperature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Specifying Analog Stimuli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Specifying a Custom Library of Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Specifying Simulation Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Setting Up Include Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Setting Up Definition Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Setting Up Stimulus Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Setting Up Vector Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Setting Up VCD and EVCD Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Enabling and Disabling Simulation Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Editing Simulation Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Deleting Simulation Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 March 2015 © 1990-2015 4 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Simulation Environment Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Environment Options for the Spectre Circuit Simulator . . . . . . . . . . . . . . . . . . . . . . 119 Environment Options for the UltraSim Circuit Simulator . . . . . . . . . . . . . . . . . . . . . . 120 Environment Options for the AMS Designer Simulator . . . . . . . . . . . . . . . . . . . . . . 121 Environment Options for the Accelerated Parallel Simulator . . . . . . . . . . . . . . . . . . 122 Environment Options for the SpectreVerilog Circuit Simulator . . . . . . . . . . . . . . . . . 123 Environment Options for the UltraSimVerilog Circuit Simulator . . . . . . . . . . . . . . . . 124 Environment Options for the hspiceD Circuit Simulator . . . . . . . . . . . . . . . . . . . . . . 125 Specifying Simulation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Specifying Simulator Options for Spectre, SpectreVerilog, UltraSim, and UltraSimVerilog Circuit Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Specifying Options for AMS Circuit Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Specifying Options for hspiceD Circuit Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . 131 Creating and Viewing the Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Modifying a Test in the Test Editor Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Working with OCEAN-Based Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Data View Assistant Context-Sensitive Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 3 Working with Design Variables and Instance Parameters . . 143 Working with Design Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Adding a Design Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 Changing the Value of a Design Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 Hiding Overridden Design Variables for a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Deleting a Design Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 Changing the Order of Design Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Saving Design Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Toggling the View on the Variables tab of the Variables and Parameters Assistant Pane 152 Finding Design Variables in Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Copying Design Variable Values to the Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Copying Design Variable Values from the Schematic . . . . . . . . . . . . . . . . . . . . . . . 156 Importing Design Variables from an ADE State . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Displaying Design Variables on the Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Defining Variables in a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Working with Device Instance Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 March 2015 © 1990-2015 5 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Instance Properties to be Parameterized for Simulations . . . . . . . . . . . . . 163 Changing the Value of a Device Instance Parameter for Simulation . . . . . . . . . . . . 168 Disabling a Changed Device Instance Parameter Value for a Simulation . . . . . . . . 170 Deleting a Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Sorting Parameters by Properties and Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Filtering Device Instance Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Creating Custom Device Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Changing the Order of Device Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Creating Parameter Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Specifying an Instance Parameter as a Sweep Parameter . . . . . . . . . . . . . . . . . . . . . . 182 Working with Parametric Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Creating Parametric Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Adding a Variable to a Parametric Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Including a Dependent Variables in a Parametric Set . . . . . . . . . . . . . . . . . . . . . . . 191 Removing a Variable from a Parametric Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Ungrouping Parametric Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Enabling or Disabling Parametric Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Enabling and Disabling Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Adding Notes for Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Adding or Changing a Parameter Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Specifying an Inclusion List of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Specifying an Exclusion List of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 Specifying a Range of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Specifying Center and Span . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 Specifying Center and Span as a Percentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Deleting a Parameter Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Creating Matched Device Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Creating Ratio-Matched Device Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Disabling Callbacks on Swept Device Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 4 Working with Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Creating a Global Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 Loading a Set of Global Variables from a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 Parameterizing Cellviews Defined in the Config View . . . . . . . . . . . . . . . . . . . . . . . . . . 218 March 2015 © 1990-2015 6 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Creating Config Sweep Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 Importing Config Sweeps from the Parasitic Setup . . . . . . . . . . . . . . . . . . . . . . . . . 219 Viewing Config Sweep Variables in Run Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Viewing Config Sweeps in the Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Importing Sweep Variables as Global Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Saving Global Variables to an ADE State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Importing Global Variables from a Saved ADE State . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Enabling and Disabling Global Variables for All Tests . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Disabling Global Variables for Specific Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Disabling a Global Variable for a Test using the Variables and Parameters Assistant . . 226 Disabling a Global Variable for a Test using the Data View Assistant . . . . . . . . . . . 229 How Results are Displayed When A Global Variable is Disabled for a Test? . . . . . . 231 Updating Global Variable Values with Design Variable Values . . . . . . . . . . . . . . . . . . . 234 Updating Design Variable Values with Global Variable Values . . . . . . . . . . . . . . . . . . . 234 Creating a Combinatorial Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 5 Working with Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Adding, Modifying, and Deleting Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 Working with Parameters Created for Matched Parameter Constraints . . . . . . . . . . . . 238 Resolving Mismatch Between Matched Parameter Constraints and their Corresponding Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 6 Simulating Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Opening the Corners Setup Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Adding Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Specifying Temperature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Specifying Values for Design Variables and Parameters . . . . . . . . . . . . . . . . . . . . . 248 Adding Model Files to a Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 Specifying Sections for Model Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 Adding a Model Group to a Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Creating a Model Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Saving and Loading Model Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 March 2015 © 1990-2015 7 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Modifying Corner Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 Working with Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Renaming a Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Adding Notes to a Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Disabling and Enabling Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 Changing the Order of Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Removing Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Viewing Corner Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Copying Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Exporting Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Importing Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Setting Up a Default Set of Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Working with Corner Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Creating a Corner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Expanding a Corner Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Simulating Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 7 Performing Monte Carlo Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Running a Monte Carlo Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Including or Excluding Instances and Devices for Applying Mismatch Variations . . . . . 298 Selecting Schematic Instances for Applying Mismatch Variations . . . . . . . . . . . . . . 301 Selecting Instances of Cellviews for Applying Mismatch Variations . . . . . . . . . . . . . 305 Selecting Subcircuit Instances for Applying Mismatch Variations . . . . . . . . . . . . . . 310 Deleting Instances Selected for Applying Mismatch Variations . . . . . . . . . . . . . . . . 313 Stopping Monte Carlo Based on the Target Yield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 Running Incremental Monte Carlo Analyses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Viewing Monte Carlo Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Managing Monte Carlo Results in the Yield View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 Viewing Data for a Specific Confidence Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 Creating Statistical Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 Filtering Out Data from the Yield View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Generating Plots, Tables, and Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 Plot/Print versus Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Printing Correlation Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 March 2015 © 1990-2015 8 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Plotting Histograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Plotting Scatter Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 Viewing Sensitivity Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 Viewing Statistical Parameters for Monte Carlo Samples . . . . . . . . . . . . . . . . . . . . . . . 354 Saving Monte Carlo Results in CSV Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 Running Multi-Technology Simulations for Monte Carlo Analysis . . . . . . . . . . . . . . . . . 356 Viewing Results of Monte Carlo Analysis with MTS . . . . . . . . . . . . . . . . . . . . . . . . . 356 8 Performing Reliability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 Simulator Modes for Reliability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 Specifying the Reliability Analysis Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 Reliability Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 Advanced . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 HCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Gradual Aging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Running the Reliability Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 Important Points to Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Working with RelXpert Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Viewing Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Viewing Aged Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 Plotting Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 Plotting Results Across Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 Printing or Plotting Stress Results for Gradual Aging Run . . . . . . . . . . . . . . . . . . . . 373 Annotating Simulation Results to Schematic View . . . . . . . . . . . . . . . . . . . . . . . . . . 376 9 Working with Model Files and CDF. . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Associating a Model or Subcircuit Name with an Instance . . . . . . . . . . . . . . . . . . . . . . 380 Editing Component CDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 Adding a Model Name Parameter to a Component’s CDF . . . . . . . . . . . . . . . . . . . . . . 383 Making the Model Name Parameter Editable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Using Component CDF to Specify Simulation Information . . . . . . . . . . . . . . . . . . . . . . 385 Creating a Stopping Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 March 2015 © 1990-2015 9 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Varying the Model File and Section during Simulation . . . . . . . . . . . . . . . . . . . . . . . . . 387 Editing a Model File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 Disabling a Model File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 10 Netlisting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Creating a Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 Displaying a Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 Expanding Hierarchy to Netlist a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 11 Selecting Data to Save and Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 Opening the Outputs Setup Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 Selecting Output Signals on the Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400 Selecting Outputs to Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 Selecting Outputs to Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 Selecting Nodes, Nets, and Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 Specifying Whether a Result Will Be Saved or Plotted . . . . . . . . . . . . . . . . . . . . . . . . . 403 Adding an Output Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 Creating Dependent Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 Creating a Combinatorial Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409 Creating Expressions to be Measured Across Corners . . . . . . . . . . . . . . . . . . . . . . . . . 410 Alternate Ways to Create Measurements Across Corners . . . . . . . . . . . . . . . . . . . . 413 Calculations of Measurements Across Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414 Modifying an Output Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 Viewing and Editing Output Signals or Expressions in Calculator . . . . . . . . . . . . . . . . . 420 Loading an OCEAN or a MATLAB Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 Editing an OCEAN or a MATLAB Script File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 Writing a MATLAB Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 Copying Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 Copying Outputs Within and Across Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 Copying the Contents of an Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 Adding User-Defined Columns in the Outputs Setup Tab . . . . . . . . . . . . . . . . . . . . . . . 430 Adding a User-Defined Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 Renaming a User-Defined Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432 March 2015 © 1990-2015 10 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Deleting a User-Defined Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 Hiding a User-Defined Column . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 Exporting Outputs to a CSV File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 Importing Outputs from a CSV File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Configuring How Outputs Appear on the Outputs Setup Tab . . . . . . . . . . . . . . . . . . . . 439 Changing the Order of Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 Sorting the Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 Hiding and Showing Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 Hiding and Showing Output Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 Changing the Order of Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 Hiding and Showing Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 Selecting Outputs to Save or Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 Removing Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 Saving All Voltages or Currents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 Save Options form for Spectre Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 Keep Options form for UltraSim Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Save Options form for AMS Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447 Save Options form for SpectreVerilog Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . 448 Keep Options form for UltraSimVerilog Simulations . . . . . . . . . . . . . . . . . . . . . . . . . 449 Keep Options form for HspiceD Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 12 Device Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 Enabling and Disabling Device Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454 Setting Up Device Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 Viewing and Printing Device Check Violations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 13 Running Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Setting Up Job Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 Setting Up a Job Policy for a Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 Setting Up the Default Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 Specifying a Job Policy Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 Optimizing a Single Point Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 Specifying a Distribution Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 March 2015 © 1990-2015 11 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying a Local Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 Specifying a Remote Host Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471 Specifying a Command Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 Specifying an LBS Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 Specifying Max Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 Specifying Job Timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 Specifying Error Reporting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 Specifying Multiple Run Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 Specifying a Job Submit Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 Using Buttons at the Bottom of the Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 Saving a Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483 Deleting a Job Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 Setting Up Run Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485 Running Pre-run Scripts before Simulation Runs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489 Adding a Pre-Run Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 Modifying a Pre-Run Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 Viewing the Run Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494 Using the Information Displayed on the Run Preview Tab . . . . . . . . . . . . . . . . . . . . 497 Modifying the Format of the Run Preview Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498 Using Convergence Aids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499 Disabling and Enabling All Point Sweeps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 Starting a Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501 Specifying a History Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 Checking Run Status on the Progress Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 Stopping a Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 Canceling Simulations for Selected Tests or Corners . . . . . . . . . . . . . . . . . . . . . . . . . . 509 Canceling Simulations for Selected Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509 Canceling Simulations for Selected Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Stopping Jobs and Resubmitting Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 Ignoring Design Changes During Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 Continuing the In-Process Simulations After ADE XL GUI Exits . . . . . . . . . . . . . . . . . . 516 Enabling Continuation of the In-Process Simulations . . . . . . . . . . . . . . . . . . . . . . . . 516 Supported Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523 Viewing Job Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523 Viewing the Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 March 2015 © 1990-2015 12 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing the ADE XL Logs After Running Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Viewing the Job Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 Viewing Job Log for an ICRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 Viewing Job Log for a Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 Viewing the Simulation Output Log File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533 Simulation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534 Viewing Diagnostics Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 Run Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 Job Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 Test Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 Running an Incremental Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 Requirements for Running Incremental Simulation . . . . . . . . . . . . . . . . . . . . . . . . . 539 Running an Incremental Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 Viewing Differences Between the Active Setup and the Reference History Setup . . 544 Rerunning Simulation after Modifying the Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 Submitting a Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 Submitting a Point Using the Single Run, Sweeps and Corners Options Form . . . . 547 Submitting a Point From a History Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Viewing and Modifying the Current Point in the Submit Point Form . . . . . . . . . . . . . 553 Saving a Point in the Submit Point Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 Loading a Point in the Submit Point Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 Deleting a Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558 Simulating Only Error or Incomplete Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559 Troubleshooting a Design or Data Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561 Debugging Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 Creating and Running an OCEAN Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 Creating an OCEAN Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 Modifying an OCEAN Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579 Running an OCEAN Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 Running Parallel OCEAN XL Simulation Runs for an ADE XL View . . . . . . . . . . . . 582 Viewing Results of Simulations Run using OCEAN Scripts . . . . . . . . . . . . . . . . . . . 584 Simulating Designs with Layout-Dependent Effects (LDEs) . . . . . . . . . . . . . . . . . . . . . 585 Simulating Designs with LDEs Extracted from Modgen Constraints . . . . . . . . . . . . 587 Simulating Designs with LDEs Extracted from a Partial or Full Layout . . . . . . . . . . 594 March 2015 © 1990-2015 13 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 14 Viewing, Plotting, and Printing Results . . . . . . . . . . . . . . . . . . . . . . . 601 Working with Tabs for Simulation Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603 Specifying Default Formatting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605 Hiding and Showing Data on the Results Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606 Hiding Test Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Hiding Specification Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Hiding Corner Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Hiding Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 Hiding Measured Result Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 Hiding Minimum and Maximum Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 Hiding Device Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 Showing Only Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 Showing the Starting Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610 Showing Fixed Parameters for a Design Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610 Hiding and Showing Results for Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 Showing Variables for a Design Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 About Results Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614 Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 Detail - Transpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616 Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618 Yield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619 Using the Detail - Transpose View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622 Using the Status View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623 Switching Between Results Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 623 Freezing Columns in the Detail and Optimization View . . . . . . . . . . . . . . . . . . . . . . 624 Backannotating from ADE XL Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 Selecting the Plot Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627 Setting Default Plotting Options for All Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 Specifying the Default Plotting Option for All Tests . . . . . . . . . . . . . . . . . . . . . . . . . 632 Specifying the Outputs that Need to be Plotted . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633 Specifying the Default Plotting Mode for All Tests . . . . . . . . . . . . . . . . . . . . . . . . . . 634 Specifying Annotations for the Graph Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634 March 2015 © 1990-2015 14 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying the Default Direct Plot Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 Specifying When to Plot Direct Plot Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Specifying When to Print Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Refreshing Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 Displaying Spec Markers on Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651 Changing Properties of Spec Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 Setting Plotting Options for Specific Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 662 Specifying When to Print Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 Specifying Whether to Plot Automatically After Simulation . . . . . . . . . . . . . . . . . . . 663 Specifying When to Plot Direct Plot Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Specifying Waveform Window Configuration Information . . . . . . . . . . . . . . . . . . . . . 664 Enabling Fast Waveform Viewing Format for PSF Output . . . . . . . . . . . . . . . . . . . . 665 Plotting Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666 Plotting Across All Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 Plotting Across All Corners and Sweeps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 667 Plotting Across Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Plotting Across Design Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668 Plotting Selected Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 669 Plotting Outputs from the Specified Plot Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 Other Plotting Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670 Using Direct Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674 Printing Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676 Printing Noise Summary Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681 Printing DC Mismatch Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 Printing Pole Zero Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690 Re-evaluating Expressions and Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692 Saving and Restoring the Waveform Window Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . 693 Searching for Conditional Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695 Filtering Out Components by Model Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697 Sorting Components by Parameter Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699 Comparing Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 Opening the Spec Comparison Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702 Comparing Results for History Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705 Comparing Results for Specific Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 Comparing Results for Specific Design Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712 Comparing the Detailed Results for Output Expressions . . . . . . . . . . . . . . . . . . . . . 717 March 2015 © 1990-2015 15 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Hiding and Showing the Comparison Data for Tests . . . . . . . . . . . . . . . . . . . . . . . . 720 Hiding and Showing an Output Expression in the Spec Comparison . . . . . . . . . . . 720 Updating the Spec Comparison with the Latest Results . . . . . . . . . . . . . . . . . . . . . 720 Sorting Data in the Spec Comparison Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720 Saving a Spec Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 Opening a Spec Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 Deleting a Spec Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721 Exporting a Spec Comparison to a HTML or CSV File . . . . . . . . . . . . . . . . . . . . . . 721 Saving Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723 Working in the Results Display Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724 Printing Results from the Results Display Window . . . . . . . . . . . . . . . . . . . . . . . . . . 725 Saving Results Display Window Setup Information . . . . . . . . . . . . . . . . . . . . . . . . . 726 Loading Results Display Window Setup Information . . . . . . . . . . . . . . . . . . . . . . . . 726 Updating Results in the Results Display Window . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 Clearing the Results Display Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 Making a Window Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 Closing a Results Display Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 Editing Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728 Setting Results Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730 Displaying Untruncated Output Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732 Exporting Results to a HTML or CSV File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733 Using SKILL to Display Tabular Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 734 Annotating Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735 Using Annotation Balloons for Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737 Specifying the Data Directory for Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739 Viewing Results from the Data View Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741 Results Tab Right-Click Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742 15 Working with Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745 Working with Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746 Defining a Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747 Using Variables in Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748 Overriding the Measurement Specification for a Corner . . . . . . . . . . . . . . . . . . . . . 750 Undoing a Corner Specification Override . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 March 2015 © 1990-2015 16 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Disabling and Enabling Corner Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756 Defining Operating Region Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 757 Copying a Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 758 Viewing Specification Results in the Results Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . 783 Viewing Operating Region Violations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787 Migrating Operating Region Specifications from IC6.1.4 to IC6.1.5 . . . . . . . . . . . . . 795 Working with the Specification Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796 Viewing the Spec Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797 Saving a Spec Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 800 Opening a Spec Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801 Deleting a Spec Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801 Adding a Specification to the Spec Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801 Deleting a Specification from the Spec Summary . . . . . . . . . . . . . . . . . . . . . . . . . . 802 Changing the History Item from which Results are Displayed . . . . . . . . . . . . . . . . . 802 Updating the Spec Summary with the Latest Results . . . . . . . . . . . . . . . . . . . . . . . 803 Recreating the Spec Summary from the Results in the Active Results Tab . . . . . . . 804 Viewing the Detailed Results for Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804 Plotting the Results for Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806 Exporting a Spec Summary to a HTML or CSV File . . . . . . . . . . . . . . . . . . . . . . . . 806 Sorting Data in the Spec Summary Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807 Hiding and Showing Columns in the Spec Summary Form . . . . . . . . . . . . . . . . . . . 807 16 Working with the Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809 ADE XL View Directory Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810 Saving the Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813 Copying an ADE XL View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814 Copying only the Simulation Setup in an ADE XL View . . . . . . . . . . . . . . . . . . . . . . 815 Copying the Simulation Setup and the Results Database in an ADE XL View . . . . 818 Copying Everything in an ADE XL View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820 How is the Results Database is Copied When an ADE XL View is Copied? . . . . . . 820 How are Simulation Results Copied When an ADE XL View is Copied? . . . . . . . . . 821 Deleting an ADE XL View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 822 Working with Read-Only ADE XL Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823 Opening ADE XL Views in Read-Only Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 823 March 2015 © 1990-2015 17 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Opening ADE XL Views to Which You Do Not Have Write Permissions . . . . . . . . . 824 Running Simulations from Read-Only ADE XL Views . . . . . . . . . . . . . . . . . . . . . . . 825 Saving Setup Changes in Read-Only ADE XL Views . . . . . . . . . . . . . . . . . . . . . . . 826 Importing and Exporting the Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826 Importing the Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826 Exporting the Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 Working with Setup States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831 Creating or Updating a Setup State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833 Loading a Setup State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835 Deleting a Setup State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 838 How the Simulation Setup is Updated When You Load Setup States . . . . . . . . . . . 839 Running a Simulation Using a Setup State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 Creating a Plan Using Setup States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844 17 Working with Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 851 Expanding and Collapsing Tree Branches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 852 Specifying How Much Data to Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853 Overwriting a History Item during Subsequent Simulation Runs . . . . . . . . . . . . . . . . . . 855 Viewing Active Setup Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 858 Viewing Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 859 Adding Notes to a Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 860 Renaming Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 862 Restoring a Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863 Restoring an Entire Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863 Restoring Part of a Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 863 Viewing Results from a Particular Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864 Saving Results from a Particular Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 864 Viewing Results for a Particular Checkpoint in the Results Browser Window . . . . . . . . 864 Viewing the Run Log for a Particular Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865 Opening a Terminal Window in the Results Directory for a Particular History Item . . . . 865 Deleting the Simulation Data for a History Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866 Deleting a Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866 Locking and Unlocking a History Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866 Working with Datasheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 868 March 2015 © 1990-2015 18 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Creating a Datasheet for a Checkpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 868 Displaying Customized Waveform Images in the Data Sheet . . . . . . . . . . . . . . . . . 877 Opening a Datasheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877 Customizing the Datasheet Format and Structure . . . . . . . . . . . . . . . . . . . . . . . . . . 878 History Tab Right-Click Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879 18 Working with Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881 Adding Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881 Opening Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 Removing Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 Saving Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 882 A Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885 adexl.setupdb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 loadSetupToActiveAlsoViewsResults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 saveDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886 percentageForNearSpec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888 useNMPForMapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889 adexl.test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890 autoCopyCellviewVars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890 autoPromoteVarsToGlobal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 891 checkForUnsavedViewsUponRun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892 debugDataDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892 initiallyAddNameUniqifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893 adexl.testEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894 adexlTestEditorSetupValidateMsg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894 adexl.simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895 autoDetectNetlistProcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896 createCompositeSimLogFileWhenSimCountFewerThan . . . . . . . . . . . . . . . . . . . . . 897 createRunLogForSweepsCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897 createRunLogWhenSimsFewerThan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899 haltCurrentRunAfterPreRunTrigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900 ignoreAnalysisCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901 March 2015 © 1990-2015 19 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide ignoreDesignChangesDuringRun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901 ignoredLibsForDUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 includeStatementForNetlistInSimInputFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 moveConfigsToNetlistDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903 overrideNetlistProcDetection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 overwriteHistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 overwriteHistoryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905 retainNetlistsOverwriteHistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906 saveBestNDesignPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907 saveBestPointsStrategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 saveLastNHistoryEntries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 saveNetlistData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 908 saveRawData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909 setCurrentRunPostSimulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910 showErrorForNonExistingVariables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910 showWarningForReferenceNetlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911 singleNetlistForAllPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913 sortVariableValues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914 warnWhenSimsExceed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915 adexl.distribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 continueICRPRunOnAbruptGUIExit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916 createUniqueLogsDirForICRPLogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 defaultRunInParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919 defaultPerRunNumJobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 919 enableICRPReconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920 generateJobFileOnlyOnError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921 inferCommandICRPStatusFromProxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922 jobFileDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923 useAllLingeringJobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923 maxIPCJobsLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925 maxJobsIsHardLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926 numRetriesOnError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927 runTimeoutScaleFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 927 runTimeoutScalingStartsAfterSimCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928 useAsRunTimeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929 useSameProcess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931 March 2015 © 1990-2015 20 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide adexl.monte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 932 applySaveOptionsToNetlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 933 createStatisticalCornerType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934 incrementalUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935 iterationUpdates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935 maxOutstandingPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936 samplingMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937 savedatainseparatedir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937 saveProcessOptionDefaultValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939 saveMismatchOptionDefaultValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940 warnWhenSimsExceed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941 adexl.historyNamePrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 showNameHistoryForm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943 initiallyAddHistoryNameUniquifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944 singleRunSweepsAndCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944 monteCarloSampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945 WorstCaseCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945 globalOptimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946 localOptimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 946 improveYield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947 highYieldEstimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947 sensitivityAnalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948 feasibilityAnalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 948 manualTuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949 sizeOverCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949 adexl.icrpStartup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950 binaryName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950 defaultJobPolicy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 950 enableOutdir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 952 refreshCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953 showJobStdout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 953 showJobStderr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955 showOutputLogOnError . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955 startMaxJobsImmediately . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956 adexl.results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958 defaultBackAnnotationOption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958 March 2015 © 1990-2015 21 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide defaultResultsViewForSweepsCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959 exportPreserveScalingFactors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959 retainReferenceSimResults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960 saveDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960 saveLocalPsfDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961 saveResDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962 saveResultsFromHistoryDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963 useLocalPsfDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963 adexl.gui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964 autoCornerUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 966 continueJobsOnExitQuery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 967 copyMeasurementScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968 copyPreRunScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969 confirmReEvaluationWhen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 970 continueJobsOnExitQuery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971 defaultCorners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 972 defaultCornerExportFileFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973 defaultCornerImportFileFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973 defaultParametersViewBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 defaultParametersWhitelist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 disableConstraintsRead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 disableNominalSimulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 disableRunInReadOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 disableSimulationsDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 979 enableAutoRefreshSetupSummary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980 enableAutoRefreshPointsTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981 forceShowAutomaticExpressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982 filterCDFParamsWithZeroOrNegat iveOneDefValue . . . . . . . . . . . . . . . . . . . . . . . . 983 LimitModelSections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984 maxNotesLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984 maxNotesRowsDisplay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985 mismatchPairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986 modelSectionFilterFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 986 numberOfBestPointsToView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 987 openDesignAccessMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 988 openSchInWin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 988 March 2015 © 1990-2015 22 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide openTerminalCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 989 pcfPrependBasePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 990 reEvalOnlyMostRecentHistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991 reEvaluationAgeHoursThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991 reEvaluationRemovingOutputsThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992 reEvaluationWhenActiveAndHistoryTestsDiffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993 saveStateQuery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 993 sendOutputsToEEFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994 setHistoryPrefixToSetupStateNameOnLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 995 setupFormDefaultEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 996 setupFormDefaultLoadOperation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 significantDigits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 showSimLogForOnePointSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 998 specComparisonMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 999 testsShownInOutputsSetup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 toolbarButtonStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1000 yieldViewShowDefault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1001 adexl.cpupdtr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002 copyResultsData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1002 adexl.datasheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 CSSFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 customFiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1003 mainDocXSLFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 testDocXSLFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 adexl.testEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 showAllMenus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1006 asimenv.startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 copyDesignVarsFromCellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 adexl.oceanxl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 includeSimLogInJobLog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 adexl.plotting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 histogramBins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 histogramCombine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010 histogramType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010 histogramQQPlot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011 maxHistogramBins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011 March 2015 © 1990-2015 23 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide plotScalarExpressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011 plotSignals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012 plotType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012 plotWaveExpressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013 showHistogramDensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 showHistogramDeviation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 showHistogramPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015 showHistogramPercentMarkers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016 asimenv.plotting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 specMarkers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019 March 2015 © 1990-2015 24 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface The Virtuoso Analog Design Environment XL (ADE XL) is an advanced design and simulation environment. This manual describes how you can set up tests, simulate your designs, and analyze output in the ADE XL environment. The information presented in this manual is intended for integrated circuit designers and assumes that you are familiar with analog design and simulation. This preface describes the following: ■ Licensing in ADE XL on page 26 ■ Related Documents for ADE XL on page 26 ■ Additional Learning Resources on page 27 ■ Third Party Tools on page 28 ■ Typographic and Syntax Conventions on page 28 ■ Help and Support Facilities on page 30 March 2015 © 1990-2015 25 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface Licensing in ADE XL For information on licensing in ADE XL, see Virtuoso Software Licensing and Configuration Guide. Related Documents for ADE XL The following documents provide more information about the topics discussed in this guide. Installation, Environment, and Infrastructure ■ For information on installing Cadence products, see the Cadence Installation Guide. ■ For information on the Virtuoso design environment, see the Virtuoso Design Environment User Guide. ■ For information on database SKILL functions, including data access functions, see the Virtuoso Design Environment SKILL Reference. ■ For information on library structure, the library definitions file, and name mapping for data shared by multiple Cadence tools, see the Cadence Application Infrastructure User Guide. Technology Information ■ For information on how to create and maintain a technology file and display resource file, see the Virtuoso Technology Data User Guide and the Virtuoso Technology Data ASCII Files Reference. ■ For information on how to access the technology file using SKILL functions, see the Virtuoso Technology Data SKILL Reference. Virtuoso Tools ■ Virtuoso Schematic Editor L User Guide and Virtuoso Schematic Editor XL User Guide describe Cadence’s schematic editor. ■ Virtuoso Spectre Circuit Simulator and Accelerated Parallel Simulator User Guide and Virtuoso Spectre Circuit Simulator Reference describe Cadence’s Spectre analog circuit simulator. March 2015 © 1990-2015 26 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface ■ Virtuoso Spectre Circuit Simulator and Accelerated Parallel Simulator RF Analysis User Guide describes Cadence’s RF circuit simulation option. ■ Virtuoso UltraSim Simulator User Guide describes Cadence’s multi-purpose single engine, hierarchical simulator, designed for the verification of analog, mixed signal, memory, and digital circuits. ■ Virtuoso AMS Designer Simulator User Guide describes Cadence’s AMS mixedsignal circuit simulator. ■ Virtuoso Parasitic Estimation and Analysis User Guide describes parasitic simulation of analog signal circuits using the Virtuoso Analog Design Environment and Schematic Editor. ■ Virtuoso Visualization and Analysis Tool User Guide contains product information for viewing waveforms and post-processing simulation results. ■ Component Description Format User Guide describes Cadence’s Component Description Format (CDF) for describing parameters and the attributes of parameters of individual components and libraries of components. ■ Analog Expression Language Reference contains concept and reference information about the Analog Expression Language (AEL). ■ Virtuoso Design Environment Migration Guide describes the release level changes and migration related information. Additional Learning Resources Cadence provides various Rapid Adoption Kits that demonstrate how to use Virtuoso applications in your design flows. These kits contain design databases and instructions on how to run the design flow. In addition, Cadence offers the following training courses on the Virtuoso Analog Design Environment XL and the related flows: ■ Virtuoso Analog Design Environment ■ Virtuoso Schematic Editor ■ Analog Modeling with Verilog-A ■ Behavioral Modeling with Verilog-AMS ■ Real Modeling with Verilog-AMS ■ Spectre Simulations Using Virtuoso ADE March 2015 © 1990-2015 27 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface ■ Virtuoso UltraSim Full-Chip Simulator ■ Virtuoso Simulation for Advanced Nodes ■ Virtuoso Electrically-Aware Design with Layout Dependent Effects The courses listed above are available in North America. For specific information about the courses available in your region, visit Cadence Training or write to training_enroll@cadence.com. Note: The links in this section open in a separate web browser window when clicked in Cadence Help. Third Party Tools To view any .swf multimedia files, you need: ■ A SourceLink Login. ■ Flash-enabled web browser, for example, Internet Explorer 5.0 or later, Netscape 6.0 or later, or Mozilla Firefox 1.6 or later. Alternatively, you can download Flash Player (version 6.0 or later) directly from the Adobe website. ■ Speakers and a sound card installed on your computer for videos with audio. Typographic and Syntax Conventions This list describes the syntax conventions used in this manual. literal Nonitalic words indicate keywords that you must enter literally. These keywords represent command (function, routine) or option names. argument (z_argument) Words in italics indicate user-defined arguments for which you must substitute a name or a value. (The characters before the underscore (_) in the word indicate the data types that this argument can take. Names are case sensitive. Do not type the underscore (z_) before your arguments.) [] Brackets denote optional arguments. March 2015 © 1990-2015 28 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface … Three dots (...) indicate that you can repeat the previous argument. If you use them with brackets, you can specify zero or more arguments. If they are used without brackets, you must specify at least one argument, but you can specify more. argument… Specify at least one, but more are possible. [argument]… Specify zero or more. ,… A comma and three dots together indicate that if you specify more than one argument, you must separate those arguments by commas. If a command line or SKILL expression is too long to fit inside the paragraph margins of this document, the remainder of the expression is put on the next line, indented. When writing the code, put a backslash (\) at the end of any line that continues on to the next line. SKILL Syntax Examples The following examples show typical syntax characters used in SKILL. For more information, see the Cadence SKILL Language User Guide. Example 1 list( g_arg1 [g_arg2] ...) => l_result Example 1 illustrates the following syntax characters. list Plain type indicates words that you must enter literally. g_arg1 Words in italics indicate arguments for which you must substitute a name or a value. () Parentheses separate names of functions from their arguments. _ An underscore separates an argument type (left) from an argument name (right). [] Brackets indicate that the enclosed argument is optional. March 2015 © 1990-2015 29 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface => A right arrow points to the return values of the function. Also used in code examples in SKILL manuals. ... Three dots indicate that the preceding item can appear any number of times. Example 2 needNCells( s_cellType | st_userType x_cellCount ) => t/nil Example 2 illustrates two additional syntax characters. | Vertical bars separate a choice of required options. / Slashes separate possible return values. Form Examples Each form shows you the system defaults: ■ Filled-in buttons are the default selections. ■ Filled-in values are the default values. Help and Support Facilities The following help and support facilities are available as Help menu options: Help Menu Option Contents What’s New Description Invokes Cadence Help with the Virtuoso Analog Design Environment XL User Guide table of contents on display. Opens up the Virtuoso What's New document in Cadence Help at the Virtuoso Analog Design Environment XL section. March 2015 © 1990-2015 30 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface Help Menu Option Description Known Problems and Opens up the Virtuoso Known Problems and Solutions document Solutions in Cadence Help at the Virtuoso Analog Design Environment XL section. Virtuoso Documentation Opens up Cadence Help, initially by default at the Virtuoso Platform What's New overview. To view the entire Virtuoso documentation library contents, if not already on display, select View - Show Navigation. Cadence Video Library Opens up Cadence Online Support (COS), using your default web browser, initially displaying the Cadence Video Library site. Note: You are required to have a Cadence Online Support account to access these materials. Cadence Online Support Displays the Cadence customer support site (COS) on your default web browser. Note: You are required to have a Cadence Online Support account to access these materials. Cadence Users Forum Displays the Cadence online users forum in your default web browser. About Analog Design Displays version and copyright information for Virtuoso Analog Environment Design Environment XL. March 2015 © 1990-2015 31 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Preface March 2015 © 1990-2015 32 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 1 Getting Started in the Environment The Virtuoso Analog Design Environment XL is an advanced design and simulation environment that allows you to do the following: ■ Draw your schematic using the Virtuoso Schematic Editor. You can use the schematic editor to build a circuit or system using high-level functional blocks (such as analog macromodels), gradually filling in the details of these blocks using circuit elements (transistor-level models). The trade-off is speed versus accuracy: High-level functional block simulation is fast; transistor-level simulation is more accurate. ■ Define and place design variables (including equations) on your schematic elements The simulator evaluates your variables and equations, automatically passing modified values down through the schematic hierarchy. You can archive important aspects of your design with your schematic, which can contain both design equations and circuit topology details. ■ Annotate your schematic with DC voltages and transistor operating point information ■ Specify device constraints and commands to control your simulation environment ■ Simulate interactively such that you can draw, change, and analyze your design; display and manipulate your simulation results; interrupt the simulation so that you can probe through your design hierarchy to check node voltages and currents, then continue your simulation The environment supports the following Cadence circuit simulators: ❑ Accelerated Parallel Simulator ❑ Spectre ❑ SpectreRF ❑ UltraSim ❑ AMS Designer ❑ SpectreVerilog (IC6.1.6 ONLY) March 2015 © 1990-2015 33 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ❑ UltraSimVerilog (IC6.1.6 ONLY) Alternatively, you can integrate your own third-party simulator using the Open Analog Simulator Interface Socket (OASIS) Direct. See your local Cadence representative for more information and to request a copy of the OASIS Direct Integrator's Guide. Important The SpectreVerilog and UltrasimVerilog circuit simulators are available only in IC6.1.6 release. ■ Set up and run advanced analyses such as ❑ Parametric sweeps ❑ Corners analyses ❑ Monte Carlo statistical analyses ❑ Combination sweeps ■ View waveforms and perform post-processing tasks on your simulation results using the Virtuoso® Visualization and Analysis XL tool ■ Generate data sheets and specification sheets ■ View and manipulate your active setup as well as checkpoints from previous runs ■ Backannotate parameter values ■ Integrate third-party calculators and waveform viewers into your ADE XL environment ■ Customize your user interface (see the Virtuoso Design Environment User Guide) Getting Started in the ADE XL Environment You can launch ADE XL from the Virtuoso Design Environment Command Interpreter Window (CIW) or from your schematic editing window. The ADE XL environment consists of a set of menus, toolbars and assistant panes that make up your workspace. You can load a Cadence workspace or create and load a custom workspace. You can specify what workspace to load for a given cellview. For more information about workspaces, see Getting Started with Workspaces in the Virtuoso Design Environment User Guide. See the following topics for more information about the ADE XL environment: March 2015 © 1990-2015 34 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ■ Launching Analog Design Environment XL on page 36 ■ Using the ADE (G)XL Launch Form on page 38 ■ ADE XL Environment at Startup on page 43 ■ ADE XL Environment User Interface on page 47 ■ Specifying the Run Mode on page 79 ■ Specifying Options for Saving Simulation Results on page 81 ■ Specifying Results Database Location on page 84 One you have created a test setup cellview, you can open it in the usual ways. See “Working with Cellviews” in the Virtuoso Design Environment User Guide for more information. March 2015 © 1990-2015 35 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Launching Analog Design Environment XL To start the environment, start the Virtuoso Design Environment and do one of the following: To open the environment from the CIW 1. In the CIW, choose File – New – Cellview. and create a new cellview The New File form appears. March 2015 © 1990-2015 2. In the Library Name field, select a library. 3. In the Cell Name field, type a new or existing cell name. 4. In the View Name field, type a name for your cellview. 5. In the Type field, select adexl. 6. Click OK. The environment appears. 36 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment To open an existing ADE XL cellview from the CIW 1. In the CIW, choose File – Open. The Open File form appears. 2. Select an ADE XL cellview. 3. Click OK. To open the environment from the schematic and create a new cellview 1. In the schematic editing window, choose Launch – ADE XL. The ADE (G)XL Launch form appears. 2. Perform the procedure described in “Creating a New Setup” on page 39. Note: If you have descended into a design hierarchy, the environment returns you to the top level of your design when you choose Launch – ADE XL. To open an existing ADE XL cellview from the schematic 1. In the schematic editing window, choose Launch – ADE XL. The ADE (G)XL Launch form appears. 2. Perform the procedure described in “Opening an Existing Setup” on page 41. Note: If you have descended into a design hierarchy, the environment returns you to the top level of your design when you choose Launch – ADE XL. To open the environment from the CIW ➤ without first selecting a design In the CIW, choose Tools – ADE XL. The ADE (G)XL Launch form appears. From this form, you can create a new test setup or open an existing test setup. See “Using the ADE (G)XL Launch Form” on page 38 for more information. March 2015 © 1990-2015 37 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Using the ADE (G)XL Launch Form The ADE (G)XL Launch form appears when you do one of the following: ■ Choose Tools – ADE XL in your Command Interpreter Window (CIW). ■ Choose Launch – ADE XL in your schematic editing window. From this form, you can create a new test setup or open an existing test setup. See the following sections for information about getting started with any of these tasks: ■ Creating a New Setup on page 39 ■ Opening an Existing Setup on page 41 March 2015 © 1990-2015 38 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Creating a New Setup To create a new setup, do the following: 1. On the ADE (G)XL Launch form, select Create New View. 2. Click OK. The Create New ADE (G)XL View form appears. 3. In the Library Name drop-down list, select a library. 4. In the Cell Name field, type a cell name for your testbench. 5. In the View Name field, type a view name for your test setup. The default ADE XL view name and view type is adexl. For more information about the ADE XL view, see ADE XL View Directory Structure on page 810. 6. Verify that ADE XL appears in the Open with drop-down list. 7. (Optional) Select the Always use this application for this view type check box if you want the program to use ADE XL when opening a view that is the same as what you specified in the View Name field. March 2015 © 1990-2015 39 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment 8. In the Open in field, do one of the following: Select new tab current tab new window To Open the cellview in a new tab in the schematic editing window. Note: If a schematic editing window is not open, ADE XL is opened as a main application in a new window. Open the cellview in the current tab in the schematic editing window. Note: If a schematic editing window is not open, ADE XL is opened as a main application in a new window. Open the cellview in a new window. ADE XL is opened as a main application in a new window. 9. Click OK. The ADE XL environment appears. For more information, see ADE XL Environment at Startup on page 43 and ADE XL Environment User Interface on page 47. You can begin specifying your tests and analyses. See Chapter 2, “Specifying Tests and Analyses” for more information. March 2015 © 1990-2015 40 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Opening an Existing Setup To open an existing setup, do the following: 1. On the ADE (G)XL Launch form, select Open Existing View. 2. Click OK. The Open ADE (G)XL View form appears. 3. Use the Library Name, Cell Name, and View Name fields to select your setup. 4. Verify that ADE XL appears in the Open with drop-down list. 5. (Optional) Select the Always use this application for this view type check box if you want the program to use ADE XL when opening a view that is the same as what you specified in the View Name field. 6. (Optional) The Open for field indicates that the ADE XL view will be opened in edit mode by default. Select read to open the ADE XL view in read-only mode. March 2015 © 1990-2015 41 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment The ADE XL title bar displays the text Editing if the ADE XL view is opened in edit mode. The ADE XL title bar displays the text Reading if the view is opened in read-only mode. For more information about working with ADE XL views in read-only mode, see Working with Read-Only ADE XL Views on page 823. 7. In the Open in field, do one of the following: Select new tab current tab new window To Open the cellview in a new tab in the schematic editing window. Note: If a schematic editing window is not open, ADE XL is opened as a main application in a new window. Open the cellview in the current tab in the schematic editing window. Note: If a schematic editing window is not open, ADE XL is opened as a main application in a new window. Open the cellview in a new window. ADE XL is opened as a main application in a new window. 8. Click OK. The ADE XL environment appears. For more information, see ADE XL Environment at Startup on page 43 and ADE XL Environment User Interface on page 47. You can continue specifying tests and analyses. See Chapter 2, “Specifying Tests and Analyses” for more information. March 2015 © 1990-2015 42 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ADE XL Environment at Startup This section describes how the ADE XL environment appears on startup. ■ The Welcome to ADE XL start page is displayed if you created a new setup using the procedure described in Creating a New Setup on page 39. For more information about the Welcome to ADE XL start page, see ADE XL Start Page on page 48. March 2015 © 1990-2015 43 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ■ The Outputs pane is displayed if you opened an existing setup using the procedure described in Opening an Existing Setup on page 41. ■ The ADE XL environment is displayed in a new tab if you choose Launch – ADE XL in your schematic editing window and created a new setup or opened an existing setup March 2015 © 1990-2015 44 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment using the procedures described in Creating a New Setup on page 39 or Opening an Existing Setup on page 41. Tab for ADE XL Tab for schematic The tab for the schematic design displays the name of the cell for the schematic design. The tab for the ADE XL environment displays the name adexl. For more information about working with tabs, see the Virtuoso Design Environment User Guide. The ADE XL and Parasitics/LDE menus appear on the menu banner in the tab for the schematic design. You can access ADE XL related commands from the ADE XL menu. For more information, see Menu Bar. The Parasitics/LDE menu lets you access March 2015 © 1990-2015 45 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Virtuoso® Parasitic Aware Design to investigate the effects of parasitics on your circuits. For more information, see the Virtuoso Parasitic Aware Design User Guide. Parasitics/LDE menu ADE XL menu For more information about the user interface in the ADE XL environment, see ADE XL Environment User Interface on page 47. March 2015 © 1990-2015 46 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ADE XL Environment User Interface This section describes the following parts of the ADE XL environment user interface: ■ ADE XL Start Page on page 48 ■ Menu Bar on page 49 ■ Context-Sensitive Menus on page 58 ■ Toolbars on page 64 ■ Assistant Panes on page 69 ■ Outputs on page 75 ■ Workspaces on page 78 March 2015 © 1990-2015 47 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ADE XL Start Page The Welcome to ADE XL start page provides an overview of ADE XL and guides you through the basic setup tasks in ADE XL. You can click on a hypertext link in the start page to open the form corresponding to a setup task. The start page is displayed if you do one of the following: ■ Create a new setup using the procedure described in Creating a New Setup on page 39. ■ Choose Window – Welcome to ADE XL. March 2015 © 1990-2015 48 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Menu Bar The menu bar in ADE XL has the following menus. You can also access these menus from the ADE XL menu that appears on the menu banner in the tab for the schematic design. ■ File ■ Create ■ Tools ■ Options ■ Run ■ EAD ■ Parasitics/LDE ■ Window ■ Help March 2015 © 1990-2015 49 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment File The options in the File menu are described below: File Menu Options New Description Opens the New File form Open Save Note: This is the same form that appears when you launch ADE XL from the CIW and create a new cellview. Opens the Open File form Saves your ADE XL cellview. March 2015 © 1990-2015 50 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment File Menu Options Save As Description Opens the Save a Copy form so you can save a copy of the current ADE XL setup database to a different location. Save Script Save Setup State Load Setup State Remove Setup State Import Note: This action does not save history data, only the setup database. Opens the Save OCEAN Script form so you can save simulation setup and conditions to an OCEAN script file. Opens the Save Setup State form so you can save a copy of the current ADE XL setup database Note: This action does not save history data, only the setup database. For more information, see Creating or Updating a Setup State on page 833. Opens the Load Setup State form so you can load an existing setup state. For more information, see Loading a Setup State on page 835. Opens the Remove Setup State form so you can delete an existing setup state. For more information, see Deleting a Setup State on page 838. Opens the Import Setup form so you can import settings from an existing ADE XL setup database. For more information, see Importing the Simulation Setup on page 826. March 2015 © 1990-2015 51 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment File Menu Options Export Bookmarks Close Description Opens the Export Setup form so you can export settings from from the current ADE XL setup database to an existing ADE XL setup database For more information, see Exporting the Simulation Setup on page 829. Allows you to bookmark design views and return to them during the current or future sessions. For information on bookmarks see Using Bookmarks and Views in the Virtuoso Design Environment User Guide. Closes the ADE XL environment Create The options in the Create menu are described below: Create Menu Options Test Corner Document Description Opens the ADE XL Test Editor form so you can add a new test For more information, see Chapter 2, “Specifying Tests and Analyses.” Opens the Corners Setup form so you can setup corners for simulation For more information, see Chapter 6, “Simulating Corners.” Opens the Choose Documents to be Added form so you can select the documents to be added to the ADE XL view. For more information, see Chapter 18, “Working with Documents.” March 2015 © 1990-2015 52 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Create Menu Options Setup State Datasheet Spec Summary Spec Comparison Description Opens the Save Setup State form so you can save a copy of the current ADE XL setup database Note: This action does not save history data, only the setup database. For more information, see Creating or Updating a Setup State on page 833. Opens the Create Datasheet form so you can create a datasheet for the history item selected in the History tab of the Data View assistant pane. For more information, see Creating a Datasheet for a Checkpoint on page 868. Opens the Spec Summary form so you can view the specifications summary for the results of a simulation run. For more information, see Working with the Specification Summary on page 796. Opens the Spec Comparison form so you can compare measured results of output expressions for: ■ Any two history items. ■ Any two tests in the same history item or in two different history items. ■ Any two design points in the same history item or in two different history items. For more information, see Comparing Results on page 701. Tools The options in the Tools menu are described below: Tools Menu Options Calculator Results Browser Description Opens the Calculator window Opens the Results Browser window March 2015 53 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Tools Menu Options Job Monitor Description Opens the Job Monitor Options The options in the Options menu are described below: Options Menu Options Description Job Setup Opens the Job Policy Setup form Run Options Opens the Run Options form Save Opens the Save Options form Outputs Formatting Opens the Default Formatting Options form Plotting/Printing Opens the ADE XL Plotting/Printing Options form Run The options in the Run menu are described below: Run Menu Options Description Single Run, Sweeps and Corners Run simulations across multiple tests with sweeps and corners analyses. Monte Carlo Sampling Opens the Monte Carlo form for specifying Monte Carlo method and sampling options. Global Optimization (ADE GXL feature) Perform global optimization using a parallel simulated annealing algorithm For more information, see the Virtuoso Analog Design Environment GXL User Guide. Local Optimization Perform local optimization (ADE GXL feature) For more information, see the Virtuoso Analog Design Environment GXL User Guide. March 2015 © 1990-2015 54 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Run Menu Options Improve Yield (ADE GXL feature) High Yield Estimation (ADE GXL feature) Sensitivity Analysis (ADE GXL feature) Feasibility Analysis (ADE GXL feature) Worst Case Corners (ADE GXL feature) Manual Tuning (ADE GXL feature) Size Over Corners (ADE GXL feature) Edit Reference Point Description Performs an optimization run to improve the yield of your design. For more information, see the Virtuoso Analog Design Environment GXL User Guide. Uses worst case distance algorithm to estimate yield for circuits with high yields. Decreases the number of simulations required to estimate yield when compared with Monte Carlo simulation. For more information, see High Yield Estimation in the Virtuoso Analog Design Environment GXL User Guide. Performs sensitivity analysis. For more information, see the Virtuoso Analog Design Environment GXL User Guide. Verifies that the circuit topology meets all operating point requirements. For more information, see the Virtuoso Analog Design Environment GXL User Guide. Uses sensitivity analysis to identify worst case corners for each design specification and adds those corners to the Corners Setup form. For more information, see Creating Worst Case Corners in the Virtuoso Analog Design Environment GXL User Guide. Lets you tune your design by varying the values of parameters, running multiple simulations, and then comparing results. For more information, see Manual Tuning in the Virtuoso Analog Design Environment GXL User Guide. Optimizes test benches over a large number of corners. For more information, see the Virtuoso Analog Design Environment GXL User Guide. Used to specify reference points for global variables and device parameters. For more information, see "Creating, Viewing, and Modifying Reference Points" in the Virtuoso Analog Design Environment GXL User Guide. March 2015 © 1990-2015 55 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Run Menu Options Submit Point Stop Simulation Stop All Jobs Description Submits a design point from the history results for evaluation. For more information, see Submitting a Point. Stops the simulation run. Stops all jobs you started during the current session regardless of their current state (started, getting configured, running). Important Use this option with extreme caution. EAD The EAD menu lets create setup and save data for the Electrically Aware Design flow in Virtuoso. The options available in this menu are described below: Options Menu Options Description Setup Displays the EAD Setup form. For more information, see Preparing the EAD Setup for Simulation in Virtuoso Electrically Aware Design Flow Guide. Signal Selection Opens the design schematic in a new tab and displays the Parasitics & Electrical Setup assistant to enable selection of signals for the EAD flow. For more information, see Selecting Signals to Save Currents in Virtuoso Electrically Aware Design Flow Guide. Parasitics/LDE The Parasitics/LDE menu lets you investigate the effects of parasitics and Layout Dependent Effects (LDEs) on your circuits. You can report on parasitics that exist in your design, show or hide them on your design, and create refined extracted cellviews. For more information, see the following links: ■ Virtuoso Parasitic Aware Design User Guide March 2015 © 1990-2015 56 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ■ Simulating Designs with Layout-Dependent Effects (LDEs) Window The options in the Window menu are described below: Options Menu Options Description Welcome to ADE XL Displays the Welcome to ADE XL start page. For more information, see ADE XL Start Page on page 48. Assistants Displays or hides the selected assistant pane For more information about assistant panes, see the Virtuoso Design Environment User Guide. Workspaces Displays the selected workspace For more information about workspaces, see “Getting Started with Workspaces” in the Virtuoso Design Environment User Guide. Toolbars Displays or hides the selected toolbar You can also customize toolbars to regroup the commands as required. For more information about customizing toolbars, see the Virtuoso Design Environment User Guide. Tabs Allows you to work with tabs in the session window For more information about working with tabs, see the Virtuoso Design Environment User Guide. Help For information about the options in the Help menu, see Help and Support Facilities on page 30. March 2015 © 1990-2015 57 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Context-Sensitive Menus ADE XL provides context-sensitive menus for various UI elements to provide easy access to the commands relevant to those element. For example, the context-sensitive menu for a test name listed in the Data View assistant provides all the commands that can be used to view or modify the contents for that test, or to modify its attributes. Similarly, the context-sensitive menu for the Outputs Setup tab provides commands to add a new output or to modify the properties of an existing output. Customizing the Context-Sensitive Menus ADE XL provides you the flexibility to modify the context-sensitive menus to keep only the commands you use or to change their order to keep the most used commands on top. Note: Currently, you can modify the context-sensitive menus for the following UI elements only: ■ A test in the Data View assistant ■ The Outputs Setup tab ■ The Detail results view ■ The Detail - Transpose results view To customize the context-sensitive menu for any of the elements mentioned above, you can use the Customize Menus command given at the bottom of that menu. March 2015 © 1990-2015 58 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment For example, to customize the context-sensitive menu for the Results tab, right-click anywhere on this pane and choose Customize Menus. The Customize Menu form is displayed, as shown below. Use this form to customize the context-sensitive menu on the Results tab. You can add or remove the commands available in this menu, or change the order in which the commands are displayed. March 2015 © 1990-2015 59 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Observe the various components of the Customize Menu form. Form name indicates the name of the UI element for which the context-sensitive menu is being customized. List of commands currently available in the context-sensitive menu being customized. You would notice the following points: ■ The form name dynamically displays the name of the UI element for which you have chosen to customize the menu. In the example shown above, the form name includes Results, which indicates that the context-sensitive menu is for the Results tab. ■ The form displays all the commands that are currently available in the menu being customized. The commands are ordered in the same way as they are available in the menu. ■ A menu can contain various submenus. You can view and modify the commands available in the submenus by selecting the submenu name from the Choose a menu to reorder drop-down list. Note that the contents of this list are also specific to the context-sensitive menu being customized. March 2015 © 1990-2015 List of the submenus available in the context-sensitive menu being customized. 60 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Alternatively, you can double-click the submenu name in the list of commands on the Customize Menu form to view its commands. To customize a context-sensitive menu or its submenu, display the list of commands of that menu and do one or more of the following: ■ Add a command ■ Remove a command ■ Change the order of commands After customizing a context-sensitive menu, click OK on the Customize Menu form to save the changes. Adding a Command To add a command, click Add on the Customize Menu form. The Add Menus form is displayed. List of all the possible commands that can be included in the context-sensitive menu being customized. The Choose an item to add list displays all the commands that can be added to the menu being customized. Select the name of the command you want to add and click Apply. If required, you can resize the form vertically to view the complete list of available commands. Note: At the end of the list, a separator is also available. You can select this to add a separator in the menu. March 2015 © 1990-2015 61 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Click OK to close the form. The added commands are now visible in the list of commands on the Customize Menu form. At any time, you can click Defaults to ignore all the customization done and restore the default menu setup set in ADE XL. Important ADE XL has a pre-defined set of commands that can be included in a context-sensitive menu for a UI element. These commands are available in the Choose an item to add list on the Add Menus form. In addition to these commands, if you want to include any custom command, you can add that to the relevant.menus file saved at the /tools/dfII/etc/tools/menus/ path. After that, the command will be available at the bottom of the menu and can be rearranged as required. Removing a Command To remove a command from the menu, select the name of that command in the list of available commands. Click Delete. The command is removed from the list of commands visible in the menu. It is also possible to remove a separator from the menu. Note that the command once removed will still remain available in the Add Menus form and can be added back when required. Changing the Order of Commands To rearrange the commands in the menu, select a command in the list of available commands. Click Move Up or Move Down, as required, to move the command to some other place in the list. Note: For each customized menu, the settings are saved in a file in the .cadence/RMBcustomization/ directory. The name of the file is same as that of the corresponding pane. For example, the customized context-sensitive menu for a test in the Data View assistant is saved in a file named Data View - Tests. The path where to save this setting file is decided by setup.loc file, which is an ASCII file that specifies the locations to be searched and the order in which they should be searched. For more information about the setup.loc file or how to edit the search order, see Cadence Setup Search File: setup.loc in the Cadence Application Infrastructure User Guide. If you delete a settings file from the .cadence/RMBcustomization/ directory, the corresponding context-sensitive menu takes the default settings. March 2015 © 1990-2015 62 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Note: It is recommended not to customize a context-sensitive menu by directly editing the settings file because an incorrect XML tag or menu name can result into an incorrect menu. March 2015 © 1990-2015 63 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Toolbars ADE XL has the following toolbars: ■ File ■ Create ■ Browse ■ Go ■ Parasitic Mode ■ Reference History ■ Run ■ Setup ■ Tools ■ Workspaces File Icon Name New Open Save Description Opens the New File form Opens the Open File form Saves your ADE XL cellview Save Script Opens the Save OCEAN Script form so you can save As simulation setup and conditions to an OCEAN script file. March 2015 © 1990-2015 64 Product Version 6.1.6 All Rights Reserved. Create Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Icon Name Description Create Test Opens the ADE XL Test Editor form so you can add a new test For more information, see Chapter 2, “Specifying Tests and Analyses.” Create Corner Opens the Corners Setup form so you can setup corners for simulation For more information, see Chapter 6, “Simulating Corners.” Create Document Opens the Choose Documents to be Added form so you can select the documents to be added to the ADE XL view. For more information, see Chapter 18, “Working with Documents.” Create Setup Opens the Save Setup State form so you can save a copy of State the current ADE XL setup database Note: This action does not save history data, only the setup database. For more information, see Creating or Updating a Setup State on page 833. Create Datasheet Opens the Create Datasheet form so you can create a datasheet for the history item selected in the History tab of the Data View assistant pane For more information, see Creating a Datasheet for a Checkpoint on page 868. Create Spec Opens the Spec Summary form so you can view the Summary specifications summary for the results of a simulation run. For more information, see Working with the Specification Summary on page 796. March 2015 © 1990-2015 65 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Icon Name Description Create Spec Opens the Spec Comparison form so you can compare Comparison measured results of output expressions for: ■ Any two history items. ■ Any two tests in the same history item or in two different history items. ■ Any two design points in the same history item or in two different history items. For more information, see Comparing Results on page 701. Browse Icon Name Home Description Displays the Welcome to ADE XL start page. For more information, see ADE XL Start Page on page 48. Go The Go toolbar allows you to do the following: ■ Sequentially or non-sequentially navigate through a cellview hierarchy. ■ Navigate between cells and views in various designs. For more information about the Go toolbar, see the Virtuoso Design Environment User Guide. Parasitic Mode March 2015 © 1990-2015 66 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment For more information about the Parasitics Mode toolbar, see the Virtuoso Parasitic Estimation and Analysis User Guide. Reference History Icon Run Name Description Reference Lets you select the reference history item for incremental drop-down list simulation runs. For more information, see Running an Incremental Simulation on page 539. Show Opens the Comparison: Active Setup v/s Reference History Differences form. Reference History Options Opens the Reference History form. Icon Name Description Select a Run Specifies the run mode for simulation Mode For more information, see Specifying the Run Mode on page 79. March 2015 © 1990-2015 67 Product Version 6.1.6 All Rights Reserved. Icon Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Name Simulation Options Edit Reference Point Run Simulation Description Opens a form for specifying the simulation options for the following run modes selected in the Select a Run Mode drop-down list: ■ Monte Carlo Sampling ■ Global Optimization ■ Local Optimization ■ Improve Yield Opens the Edit Reference Point form for specifying a reference point for Improve Yield, Global Optimization, Monte Carlo Sampling and Sensitivity Analysis runs. Runs the simulation for the run mode selected in the Select a Run Mode drop-down list Stop Simulation Stops the simulation run Setup Icon Name Load Save Setup Description Opens the Load Setup State form so you can load an existing setup state. For more information, see Loading a Setup State on page 835. Opens the Save Setup State form so you can save a copy of the current ADE XL setup database Note: This action does not save history data, only the setup database. For more information, see Loading a Setup State on page 835. March 2015 © 1990-2015 68 Product Version 6.1.6 All Rights Reserved. Tools Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Icon Name Calculator Description Opens the Calculator window Results Browser Opens the Results Browser window Job Monitor Opens the Job Monitor Workspaces The Workspaces toolbar allows you work with workspaces. For more information, see “Getting Started with Workspaces” in the Virtuoso Design Environment User Guide. Assistant Panes The following assistant panes are available in ADE XL: ■ Variables and Parameters ■ Run Summary ■ Setup DB Viewer ■ Data View ■ Variable Display ■ Parasitic Filters ■ Parasitic Estimates ■ Compare Parasitics Report March 2015 69 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Variables and Parameters The Variables and Parameters assistant pane allows you to view and set up design variables, global variables and parameters. To display the Variables and Parameters assistant pane, do the following: ➤ Choose Window – Assistant – Variables and Parameters. For information about using the Variables and Parameters assistant pane, see the following: To use the Variables and Parameters pane See to work with Design variables, global Chapter 4, “Working with Global Variables” variables and instance parameters Chapter 3, “Working with Design Variables and Instance Parameters” Matched parameter constraints Chapter 5, “Working with Constraints” Parasitic parameters Virtuoso Parasitic Estimation and Analysis User Guide. Note: The Parasitics tab is displayed only if your design has swept parasitic parameters. March 2015 © 1990-2015 70 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Run Summary The Run Summary assistant pane displays a summary of the simulation setup and the status of simulation runs. To display the Run Summary assistant pane, do the following: ➤ Choose Window – Assistant – Run Summary. For information about using the Run Summary assistant pane, see the following: ■ Disabling and Enabling All Point Sweeps ■ Disabling and Enabling All Corners ■ Disabling and Enabling the Nominal Corner on page 263 ■ Viewing Job Status on page 523 Setup DB Viewer The Setup DB Viewer assistant pane provides a graphical view of the ADE XL setup database. To display the Setup DB Viewer assistant pane, do the following: March 2015 © 1990-2015 71 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ➤ Choose Window – Assistant – Setup DB Viewer. For information about using the Setup DB Viewer assistant pane, see Viewing Active Setup Details on page 858. Data View The Data View assistant pane provides a single user interface to quickly view and set up commonly used setup data. To display the Data View assistant pane, do the following: ➤ Choose Window – Assistant – Data View. March 2015 © 1990-2015 72 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment The Data tab on the Data View assistant pane allows you to quickly view and set up tests, global variables, parameters and corners, and manage documents and setup states. The History tab on the Data View assistant pane allows you to work with history items. For information about using the Data View assistant pane, see the following: To use the Data View assistant pane to work See with Tests Chapter 2, “Specifying Tests and Analyses” Design variables, global Chapter 4, “Working with Global Variables” variables and instance parameters Chapter 3, “Working with Design Variables and Instance Parameters” Matched parameter constraints Chapter 5, “Working with Constraints” March 2015 © 1990-2015 73 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment To use the Data View assistant pane to work See with Corners Chapter 6, “Simulating Corners” History Items Chapter 17, “Working with Checkpoints” Documents Chapter 18, “Working with Documents” Setup States Chapter 16, “Working with the Simulation Setup” Variable Display The Variable Display assistant pane displays the current, minimum and maximum value set for each variable and parameter for the selected design point. To display the Variable Display assistant pane, do the following: ➤ Choose Window – Assistant – Variable Display. For more information about the Variable Display assistant pane, see Showing Variables for a Design Point on page 612. March 2015 © 1990-2015 74 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Parasitic Filters For more information about the Parasitic Filters assistant pane, see the Virtuoso Parasitic Estimation and Analysis User Guide. To display the Parasitic Estimates assistant pane, do the following: ➤ Choose Window – Assistant – Parasitic Filters. Parasitic Estimates For more information about the Parasitic Estimates assistant pane, see the Virtuoso Parasitic Estimation and Analysis User Guide. To display the Parasitic Estimates assistant pane, do the following: ➤ Choose Window – Assistant – Parasitic Estimates. Compare Parasitics Report For more information about the Parasitics Report assistant pane, see the Virtuoso Parasitic Estimation and Analysis User Guide. To display the Compare Parasitics Report assistant pane, do the following: ➤ Choose Window – Assistant – Parasitics Report. Outputs The Outputs pane allows you to setup simulation outputs and view results and diagnostics information. This pane contains the following three tabs: ■ Outputs Setup ■ Results ■ Diagnostics Tip You can use the Ctrl + Page Up or Ctrl + Page Down keys to switch between the tabs on the Outputs pane. March 2015 © 1990-2015 75 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Outputs Setup The Outputs Setup tab of the Outputs pane allows you to specify nets, terminals, and measurements you want to save and plot. For more information about using the Outputs Setup tab, see Chapter 11, “Selecting Data to Save and Plot.” March 2015 © 1990-2015 76 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Results The Results tab of the Outputs pane allows you to view simulation results. For more information about using the Results tab, see Chapter 14, “Viewing, Plotting, and Printing Results.” March 2015 © 1990-2015 77 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Diagnostics The Diagnostics tab of the Outputs pane allows you to view runtime and other run-related information during and after a simulation run. For more information about using the Results tab, see Viewing Diagnostics Information on page 536 Workspaces The following workspaces are available in ADE XL: ■ Basic Workspace ■ Outputs Workspace March 2015 78 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment For more information about workspaces, see “Getting Started with Workspaces” in the Virtuoso Design Environment User Guide. Basic Workspace The following panes appear in the Basic workspace: ■ Data View ■ Run Summary ■ Outputs Outputs Workspace The Outputs workspace displays only the Outputs pane. Specifying the Run Mode A run mode specifies the type of simulation you want to run in ADE XL. You can choose a run mode to be used for simulation from the Run menu. Alternatively, you can select a run mode in the Select a Run Mode drop-down list. Simulators Supported for Run Modes The following simulators are supported for the Single Run, Sweeps and Corners, Global Optimization, Local Optimization, Sensitivity Analysis, Feasibility Analysis and Size Over Corners run modes: ■ spectre (Virtuoso Spectre circuit simulator) ■ aps (Virtuoso Accelerated Parallel simulator) ■ UltraSim (Virtuoso UltraSim simulator) ■ hspiceD (HSPICE® simulator from Synopsys, Inc) ■ ams (Virtuoso AMS Designer Simulator) ■ spectreVerilog ■ UltraSimVerilog March 2015 © 1990-2015 79 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Important The SpectreVerilog and UltrasimVerilog circuit simulators are available only in IC6.1.6 release. The following simulators are supported for the Monte Carlo Sampling and Improve Yield run modes: ■ spectre (Virtuoso Spectre circuit simulator) ■ aps (Virtuoso Accelerated Parallel simulator) ■ ams (Virtuoso AMS Designer simulator with Spectre or APS as the solver. Note the following: ❍ Ensure that you are using the Cadence IUS 9.2 or later version of Virtuoso AMS Designer simulator. ❍ You cannot use Virtuoso AMS Designer simulator with UltraSim as the solver to run Monte Carlo analysis. ❍ Running Monte Carlo simulation in interactive mode (using SimVision) is not supported with the AMS Designer simulator. Note: If you have specified device checks or operating region specifications for a test, ensure that only the Virtuoso Spectre circuit simulator, Virtuoso Accelerated Parallel simulator, or Virtuoso AMS Designer simulator (with Spectre or APS as the solver) is selected for that test. For more information about selecting the simulator for a test, see Choosing the Target Simulator on page 100. March 2015 © 1990-2015 80 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Specifying Options for Saving Simulation Results By default, the simulation results information is saved to libraryName/cellName/adexl/results/data/ in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. To specify the options for saving simulation results and a different location where you want the program to save the simulation results, do the following: 1. In the ADE XL session window, choose Options – Save. The Save Options form appears. By default, the simulation results and the netlist data are saved for all the design points. March 2015 © 1990-2015 81 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment ❑ If you do not want to save the simulation results data, deselect the Save Simulation Data check box. ❑ If you do not want to save the simulation results and the netlist data, deselect the Save Simulation Data check box, then deselect the Save Netlists check box. ❑ To save only the simulation results, but not the netlist for each design point, deselect Save Netlists and select only the Save Simulation Data option. When this option is selected, the point-specific netlist data is not saved and the netlist directory for every point is replaced with a symbolic link to the reference netlist directory. This combination of save options is useful in saving space when the netlist for each design point is very large and space-consuming. 2. By default, the results for distributed simulation runs are saved in the location specified in the Simulation Results Directory Location field. To save the results for distributed simulation jobs run on a remote system in a local directory on that system, select the Use Local Simulation Results Directory check box and specify the path to the local directory. Note the following: ❑ You must ensure that the specified local directory path exists on all the remote systems on which a distributed simulation is run. ❑ If this option is set, you can view the simulation results in the Results tab. However, you cannot plot the results, re-evaluate expressions, or annotate simulation results to the schematic. ❑ The results saved on remote systems will not be deleted if you delete the corresponding history items. You must manually delete the directories containing the results on remote systems. Tip Setting this option improves distributed simulation performance because the results are saved on the remote systems on which the jobs are run instead of saving them over the network. 3. In the Simulation Results Directory Location field, type the directory path where you want the program to write your simulation results information; or do the following: a. Click Browse. b. On the form that appears, navigate to and select the directory where you want the program to write your simulation results information. c. Click Open. March 2015 © 1990-2015 82 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment If your design library is set up as read-only, you can use this field to specify a writable location. 4. Click OK. The program writes simulation results information to libraryName/cellName/adexl/results/data/ in the specified directory. If you do not specify a simulation results location, but specify a ADE XL results database location (see Specifying Results Database Location on page 84), the program writes this information to libraryName/cellName/adexl/results/data/ in the results database location. Note: You can also specify the simulation results location using the adexl.results saveResDir environment variable. For more information, see saveResDir on page 962. See also ■ ADE XL View Directory Structure on page 810 ■ Specifying Results Database Location on page 84 ■ Specifying How Much Data to Save on page 853 ■ Overwriting a History Item during Subsequent Simulation Runs on page 855 ■ Working with Read-Only ADE XL Views on page 823 March 2015 © 1990-2015 83 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment Specifying Results Database Location By default, the program writes the results database and run log files to libraryName/cellName/adexl/results/data in the ADE XL view. For more information about the ADE XL view, see ADE XL View Directory Structure on page 810. To specify a different location where you want the program to save the results database and run log files, do the following: 1. In the ADE XL session window, choose Options – Save. The Save Options form appears. March 2015 © 1990-2015 84 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment 2. In the ADE XL Results Database Location field, type the directory path where you want the program to write your results database information and run log files; or do the following: a. Click Browse. b. On the form that appears, navigate to and select the directory where you want the program to write your results database information and run log files. c. Click Open. If your design library is set up as read-only, you can use this field to specify a writable location. 3. Click OK. The program writes results database information and run log files to libraryName/cellName/adexl/results/data in the specified directory. If you do not specify a results database location, and you open the ADE XL view in read-only mode or you do not have write permissions in the ADE XL view, the program writes this information to libraryName/cellName/adexl/results/data in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. For more information, see Working with Read-Only ADE XL Views on page 823. Note: You can also specify a different location for the results database and run log files using the adexl.results saveDir environment variable. For more information, see saveDir on page 960. See also ■ ADE XL View Directory Structure on page 810 ■ Specifying Options for Saving Simulation Results on page 81 ■ Specifying How Much Data to Save on page 853 ■ Overwriting a History Item during Subsequent Simulation Runs on page 855 ■ Working with Read-Only ADE XL Views on page 823 March 2015 © 1990-2015 85 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Getting Started in the Environment March 2015 © 1990-2015 86 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 2 Specifying Tests and Analyses You can perform the following tasks from the Data tab in the Data View assistant pane in the ADE XL environment: ■ Working with Tests on page 88 ■ Viewing Information about a Test on page 94 ■ Adding, Changing, and Removing Analyses on page 95 ■ Choosing a Design on page 99 ■ Opening a Design Schematic on page 100 ■ Choosing the Target Simulator on page 100 ■ Loading State Information on page 102 ■ Saving State Information on page 104 ■ Specifying Model Libraries on page 106 ■ Setting the Simulation Temperature on page 107 ■ Specifying Analog Stimuli on page 108 ■ Specifying a Custom Library of Sources on page 112 ■ Specifying Simulation Files on page 113 ■ Specifying Simulation Environment Options on page 118 ■ Specifying Simulation Options on page 129 ■ Creating and Viewing the Netlist on page 132 ■ Modifying a Test in the Test Editor Window on page 133 ■ Working with OCEAN-Based Tests on page 136 See also “Data View Assistant Context-Sensitive Menus” on page 137. March 2015 © 1990-2015 87 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Working with Tests See the following topics: ■ Adding a Test on page 88 ■ Renaming a Test on page 89 ■ Copying a Test on page 90 ■ Removing a Test on page 90 ■ Adding Notes to a Test on page 91 ■ Changing the Order of Tests on page 92 Adding a Test To add a test, do the following: 1. On the Data tab in the Data View assistant pane, right-click a test name and choose Add Test. Tip Alternatively, you can click where it says Click to add test on the Data View assistant pane. March 2015 © 1990-2015 88 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses The Choosing Design form appears. 2. In the Library Name, Cell Name, and View Name fields, select a design. See “Choosing a Design” on page 99 for more information. 3. Click OK. Your test appears on the Data View assistant pane. The name of the test is libName:cellName:sequenceNumber where sequenceNumber starts at 1 and increments by one for every test you add that has the same base name (so that each test name is unique). For example, the first test created in the ade_sample cell in the demoLib library is named demoLib:ade_sample:1, the second test is named demoLib:ade_sample:2, and so on. The program performs a copy-from-cellview operation so that design variables appear on the Variables and Parameters assistant pane when you first add a test. You can now define the rest of your test. See “Specifying Tests and Analyses” on page 87 for a list of tasks you can perform on the Data View assistant pane. Renaming a Test To rename a test, do the following: 1. Click once to select the test name you want to change. March 2015 © 1990-2015 89 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses 2. Click again to make the name editable. The entire test name is highlighted. 3. Either type a completely new name for the test or click to place the edit cursor and edit the name. 4. Press Return. The new test name appears on the Data View assistant pane. Copying a Test To reuse the settings of an existing test, you can create a copy of the test. This allows you to quickly setup new tests. To copy a test, do the following: ➤ On the Data View assistant pane, right-click the test you want to copy and choose Create Test Copy. The new test name appears on the Data View assistant pane. The name of the new test has the suffix :sequenceNumber where sequenceNumber starts at 1 and increments by one for every copy of the original test (so that the test name of each copy is unique). For example, if the original test has the name demoLib:ade_sample:1, the first copy of the test is named demoLib:ade_sample:1:1, the second copy of the original test is named demoLib:ade_sample:1:2 and so on. Removing a Test Caution There is no undo for this action. To remove a test, do the following: ➤ On the Data View assistant pane, right-click the test you want to remove and choose Delete. The program deletes the selected test. March 2015 © 1990-2015 90 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Adding Notes to a Test To add notes to a test, do the following: 1. On the Data View assistant pane, right-click the test for which you want to add notes and choose Notes. The Add/Edit Notes form is displayed. 2. In the Notes field, add notes for the test. Note: By default, the notes field can accept only 512 characters. You can change this limit by setting the maxNotesLength environment variable. 3. Click OK. The notes are added to the test details in the ADE XL setup database. Similarly, you can add notes for global variables, parameters, corners, Reliability Analysis setup, or history items. Important Points to Remember ■ Notes added to a test are visible in the tooltip information, which is displayed when you hover the pointer over a test name on the Data View assistant pane. If the notes are very long, only the first 10 rows are displayed in the tooltip by default. You can change this limit by setting the maxNotesRowsDisplay environment variable. ■ To remove notes added to a test, right-click on the test name and choose Delete Notes. March 2015 © 1990-2015 91 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Changing the Order of Tests When there are multiple tests defined in the ADE XL setup, you can change the order in which the tests are listed in the Data View assistant. The order of tests in this assistant also defines the order in which simulations are run. To change the order of a test, do the following in the Data tab of the Data View assistant: 1. Expand Tests to view all the tests. 2. Click a test name and drag it. A blue indicator line appears at the location where you have moved it. The tooltip also shows the name of the test being moved. 3. Drag the indicator line to the desired location and drop the test. Note: You can select more than one test and move them together. March 2015 © 1990-2015 92 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Note that simulations are run in the order in which the tests are listed in the Data View assistant. The order in which the outputs appear on the Outputs Setup tab and the Results tab is also changed to match this, as shown below. March 2015 © 1990-2015 93 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Viewing Information about a Test You can view information about a test in ADE XL such as the test name, the design associated with the test (lib/cell/view), the target simulator, and the ADE state. To view information about a test, do the following: ➤ On the Data View assistant pane or on the Variables tab of the Variables and Parameters assistant pane, hover the mouse cursor over a test name. A text box containing test information appears. If you have added notes for the test, they are appended to the test information. After a while, or if you move the mouse cursor, the text box disappears. March 2015 © 1990-2015 94 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Adding, Changing, and Removing Analyses See the following topics: ■ Adding an Analysis on page 95 ■ Changing an Analysis on page 97 ■ Removing an Analysis on page 97 Adding an Analysis To add an analysis to your test, do the following: 1. On the Data View assistant pane, right-click the test and choose Add Analysis. Tip Alternatively, you can click where it says Click to add analysis in an expanded test tree on the Data View assistant pane. March 2015 © 1990-2015 95 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses The Choosing Analyses form appears. The items that appear on this form depend on the simulator you selected (see “Choosing the Target Simulator” on page 100). 2. In the Analysis section, select a radio button for the analysis type you want to define. The setup parameters corresponding to the analysis you selected appear on the form. 3. Set the analysis parameters you want (see your simulator’s user guide for more information). Your analysis is enabled by default: After you specify one analysis parameter, the Enabled check box is selected. 4. Click OK. The analysis you specified appears under the test name on the Data View assistant pane. March 2015 © 1990-2015 96 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Changing an Analysis To change an analysis setup, do the following: 1. On the Data View assistant pane, double-click the analysis you want to change. Note: You might need to expand the tree by clicking the plus sign (+) to the left of the test that contains the analysis you want to change. The Choosing Analyses form appears. The items that appear on this form depend on the simulator you selected (see “Choosing the Target Simulator” on page 100). Tip Alternatively, you can change an analysis by right-clicking its name and choosing Edit from the context-sensitive menu that appears. 2. (Optional) In the Analysis section, select a radio button to change the analysis type you want to define. The setup parameters corresponding to the analysis you selected appear on the form. 3. (Optional) Change the analysis parameters you want (see your simulator’s user guide for more information). 4. (Optional) You can deselect the Enabled check box to turn off the analysis without removing the setup information. Tip Alternatively, you can turn off an analysis by deselecting the check box next to the analysis name in the tree on the Data View assistant pane. 5. Click OK. Removing an Analysis Caution There is no undo for this action. To remove a analysis, do the following on the Data View assistant pane: March 2015 © 1990-2015 97 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses 1. To the left of the test containing the analysis you want to remove, click + to expand the test (if it is not already expanded). 2. Right-click the analysis you want to remove and choose Delete. The program removes the selected analysis. March 2015 © 1990-2015 98 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Choosing a Design To specify a design for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Design. The Choosing Design form appears. 2. In the Library Name drop-down list, select a library name. 3. In the Cell Name list box, select a cell name. 4. In the View Name drop-down list, select a view name. 5. For the Open Mode, select one of the following radio buttons: ❑ edit opens the design in edit mode. ❑ read opens the design in read-only mode 6. Click OK. March 2015 © 1990-2015 99 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Opening a Design Schematic To open the design associated with a test, do the following: ➤ On the Data View assistant pane, right-click the test and choose Open Design in Tab. The design associated with the test appears on a new tab in your session window. Tip When the design is open, press Ctrl+Tab to switch between the ADE XL and the schematic view. Choosing the Target Simulator To choose the target simulator for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Simulator. The Choosing Simulator form appears. Note: For information about Multi-Technology Mode, see “Enabling Multi-Technology Simulation” in the Virtuoso Analog Design Environment GXL User Guide. 2. In the Simulator drop-down list, select a simulator. 3. Click OK. To specify options for high performance simulation, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose High-Performance Simulation. March 2015 © 1990-2015 100 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses The High-Performance Simulation Options form appears. For more details on the various options on this form, refer to Specifying Performance and Parasitic Reduction Options in the Virtuoso Analog Design Environment L User Guide. March 2015 © 1990-2015 101 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Loading State Information To load state information to a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Load State. The Loading State form appears. March 2015 © 1990-2015 102 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses In the Load State Option group box, the Directory radio button is selected by default. 2. In the Directory Options group box, select a state load directory by choosing information from the various drop-down lists or by clicking Browse to open a directory browser window and navigating to your state directory. State names appear in the State Name list box. 3. In the State Name list box, select the name of the state you want to load. 4. In the What to Load group box, select the check box for each type of information you want to load. For example, if you want to load analyses from your state file, select the Analyses check box; if you want to load design variables, select the Variables check box. Tip You can click Select All to select all check boxes or Clear All to clear them. 5. Click OK. The state information you selected appears on the appropriate assistant panes in your environment according to the following guidelines: ❑ The program ignores state information that is incompatible with the selected simulator. ❑ The program overwrites state variables with matching name and value types. ❑ An error message appears if the state variable name is the same but the value type is different. March 2015 © 1990-2015 103 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Saving State Information To save state information, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Save State. The Saving State form appears. State names appear in the State Name list box. 2. In the Save As field, type a name for the state you want to save. March 2015 © 1990-2015 104 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses 3. In the What to Save group box, select the check box for each type of information you want to save. For example, if you want to save analyses to your state file, select the Analyses check box; if you want to save design variables, select the Variables check box. Tip You can click Select All to select all check boxes or Clear All to clear them. Note: If you save the analyses, you can load your saved state only for tests that have the same target simulator. If you do not save the analyses, you can restore your state for a test that has a different target simulator. 4. Click OK. The program saves the state information you selected to the state name you specified. March 2015 © 1990-2015 105 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Model Libraries To specify the model libraries to use when simulating a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Model Libraries. The Model Library Setup form appears. 2. In the Model File column, type the path and file name of the model file you want to use. Alternatively, you can click … to open the Choose Model File form where you can navigate to select a valid model file. See Chapter 9, “Working with Model Files and CDF” for more information about model files. 3. (Optional) In the Section column, select a section from the drop-down list. A model file can have zero or more sections. If a model file contains no sections, there is no drop-down list available. The section you select determines which model definition the simulator uses. For more information about sections in model files, see “Corners Modeling” in the Direct Simulation Modeling User Guide. March 2015 © 1990-2015 106 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Setting the Simulation Temperature To set the simulation temperature for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Temperature. The Setting Temperature form appears. 2. Select one of the following Scale radio buttons to indicate the units you want to use for temperature: ❑ Celsius ❑ Fahrenheit ❑ Kelvin 3. In the Degrees field, type a value. The value you type can be a constant or expression which can include the use of VAR. 4. Click OK. March 2015 © 1990-2015 107 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Analog Stimuli To specify analog stimuli (input stimulus and global sources) for a test, do the following: Important The top-level schematic of your design must have input pins, bidirectional pins, or global nets (such as vdd! for power stimulus). 1. On the Data View assistant pane, right-click the test or analysis name and choose Stimuli. March 2015 © 1990-2015 108 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses The Setup Analog Stimuli form appears. Current values for the selected input, global source, or bidirectional pin appear in the fields on the form. The fields that appear depend on what is required for your simulator. When the form first appears, these fields might be blank, might contain default values, or might contain initial values that you specified at another time. March 2015 © 1990-2015 109 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses 2. Select one of the following Stimulus Type radio buttons: ❑ Inputs indicates that you want to apply stimulus to input or bidirectional pins All input and bidirectional pins in your design appear in the list box. ❑ Global Sources indicates that you want to specify global power sources All global sources on your schematic (excluding the gnd! ground signal) appear in the list box. You can set DC source values here. 3. In the list box, select the pin or global source whose parameters you want to specify. 4. In the Function drop-down list, select one of the following source functions: Important If you selected a global source, you must select dc. dc sin pulse exp pwl pwlf sffm Direct current Sinusoidal waveform Pulse waveform Exponential waveform Piecewise linear waveform Piecewise linear waveform file Single frequency FM source waveform 5. In the Type field, specify whether your stimulus is a Voltage or Current stimulus. 6. In the remaining fields on the form, type the parameter values you want. The parameters displayed in this list depend on the simulator you are using. See your simulator documentation for details on setting these parameters. 7. Click Change. The list box displays the signal using the proper stimulus syntax for your simulator. 8. Repeat the above steps for each pin to which you want to apply external stimulus. 9. Click OK. March 2015 © 1990-2015 110 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses The simulation environment recognizes your external stimuli, creates a simulator input file, and generates a stimulus file containing input and power source stimuli in the proper syntax for your simulator. Tip You can remove the voltage source for a global signal by deselecting the Enabled check box. When you click Apply, the status that appears in the list box (as the leftmost token) changes from ON to OFF. The netlister continues to honor the signal’s presence and connectivity in your design. See also ■ Specifying a Custom Library of Sources on page 112 ■ Specifying Simulation Files on page 113 March 2015 © 1990-2015 111 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying a Custom Library of Sources Unless you specify otherwise, all sources, whether used for stimulus or for a power supply, come from analogLib. To specify a custom library of sources, do the following: 1. In the CIW, choose Tools – Library Manager. The Library Manager form appears. 2. From the Library list box, select the library of the current design. 3. Choose Edit – Properties. The Library Property Editor form appears. 4. If the refLibs property does not already exist, create it as follows: a. On the Library Property Editor form, click Add. The Add Property form appears. b. In the Name field, type refLibs. c. In the Type drop-down list, select string. The Value and Possible Choices fields appear. d. Click OK. The refLibs property appears on the Library Property Editor form. 5. In the value field for refLibs, type a list of one or more libraries in the search order you want. 6. Click OK. 7. On the Library Manager form, choose File – Exit. March 2015 © 1990-2015 112 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Simulation Files Important You must specify any simulation files you want to use prior to running a simulation. To specify simulation files for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Simulation Files. The Simulation Files Setup form appears. You can set up include paths, definition files and stimulus files using the Paths/Files tab and setup digital vector files using the Vector Files tab. Note: The fields that appear on the form depend on your target simulator. Figure 2-1 Paths/Files Tab March 2015 © 1990-2015 113 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Figure 2-2 Vector Files Tab See the following sections for more information about using the Simulation Files Setup form: ■ Setting Up Include Paths on page 114 ■ Setting Up Definition Files on page 115 ■ Setting Up Stimulus Files on page 115 ■ Setting Up Vector Files on page 116 ■ Setting Up VCD and EVCD Files on page 116 ■ Enabling and Disabling Simulation Files on page 117 ■ Editing Simulation Files on page 117 ■ Deleting Simulation Files on page 117 Setting Up Include Paths Include paths specify the directories that contain the files you want to include when simulating your design. March 2015 © 1990-2015 114 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses To set up include paths, do the following: 1. In the Simulation Files Setup form, click the Paths/Files tab. 2. In the Include Paths tree, click where it says and type the path to the directory, or click the browse button to select the directory using the Choose Files/Paths form. The simulator resolves a relative path by looking in the netlist directory (relative to where you run the simulation) first. If the path starts with the . character, the simulator also resolves this by looking in the netlist directory first, then in each of the directories specified in the Include Path in the order you type them. The . does not mean the current directory. Setting Up Definition Files Definition files contain function and parameter definitions that are not displayed in the Design Variables section of the simulation window. See the following sample file that contains function and parameter definitions for the Spectre circuit simulator. /tools/dfII/samples/artist/models/spectre/definitions.scs The parameters in this file are referenced by included models and are not referenced from any part of the design in the Cadence library. To set up definition files, do the following: 1. In the Simulation Files Setup form, click the Paths/Files tab. 2. In the Definition Files tree, click where it says and type the path and file name of your definition file, or click the browse button to select one or more files using the Choose Files/Paths form. Setting Up Stimulus Files Stimulus files can contain input and power supply stimuli, initialize nodes, and include estimated parasitics in the netlist. You can look at the following example file that contains Spectre circuit simulator stimuli definitions for the opamp sample design in the aExample library. /tools/dfII/samples/artist/models/spectre/opampStimuli.scs In your stimulus file, you can type node names and component names using Open Simulation System (OSS) syntax [#name] and the system will substitute the corresponding node numbers when writing the netlist. You can use a backslash (\) to escape a square bracket. For information about OSS syntax, see the Open Simulation System Reference. March 2015 © 1990-2015 115 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses To set up stimulus files, do the following: 1. In the Simulation Files Setup form, click the Paths/Files tab. 2. In the Stimulus Files tree, click where it says and type the path and file name of your stimulus file, or click the browse button to select one or more files using the Choose Files/Paths form. Setting Up Vector Files To set up vector files, do the following: 1. In the Simulation Files Setup form, click the Vector Files tab. 2. In the Vector Files tree, click where it says and type the path and file name of your digital vector file, or click the browse button to select one or more files using the Choose Files/Paths form. 3. Click on the hlCheck field next to the file and do one of the following: ❑ Choose 1 to enable the check for H and L states for input signals (HLCheck). ❑ Choose 0 to disable the check for H and L states for input signals (HLCheck) Setting Up VCD and EVCD Files For information about VCD and EVCD stimuli, see “Verilog Value Change Dump Stimuli” (Chapter 12) in the Virtuoso UltraSim Simulator User Guide. To setup VCD and EVCD files, do the following: 1. In the Simulation Files Setup form, click the Vector Files tab. 2. In the VCD File field type the path and file name of your Verilog value change dump (VCD) file name, or click the browse button to select the file using the Choose a File form. The VCD Info File field becomes active. 3. In the VCD Info File field type the path and file name of your signal information file, or click the browse button to select the file using the Choose a File form. 4. In the EVCD File field type the path and file name of your “Extended” VCD (EVCD) file, or click the browse button to select the file using the Choose a File form. 5. The EVCD Info File field becomes active. March 2015 © 1990-2015 116 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses 6. In the EVCD Info File field type the path and file name of your signal information file, or click the browse button to select the file using the Choose a File form. Enabling and Disabling Simulation Files ➤ To enable a simulation file for simulation, select the check box next to it. Note: By default, the simulation files you add are enabled for simulation. ➤ To disable a simulation file for simulation, clear the check box next to it. Editing Simulation Files To edit simulation files, do the following: 1. Select one or more simulation files. 2. Click the button. The simulation files are opened in a text editor. Deleting Simulation Files To delete simulation files, do the following: 1. Select one or more simulation files. 2. Click the button. March 2015 © 1990-2015 117 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Simulation Environment Options To specify environment options for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Environment. The Environment Options form appears. The fields that appear on the form depend on your target simulator as follows: ❑ Environment Options for the Spectre Circuit Simulator on page 119 ❑ Environment Options for the UltraSim Circuit Simulator on page 120 ❑ Environment Options for the AMS Designer Simulator on page 121 ❑ Environment Options for the SpectreVerilog Circuit Simulator on page 123 ❑ Environment Options for the UltraSimVerilog Circuit Simulator on page 124 ❑ Environment Options for the hspiceD Circuit Simulator on page 125 2. When you are done specifying options, click OK. The environment options you specified are applied to future simulations. March 2015 © 1990-2015 118 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the Spectre Circuit Simulator You can specify the following options for the Spectre circuit simulator: ■ Switch View List ■ Stop View List ■ Parameter Range Checking File ■ Print Comments ■ userCmdLineOption ■ Automatic output log ■ savestate (ss) ■ recover (rec) Return to main procedure. March 2015 119 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the UltraSim Circuit Simulator You can specify the following options for the UltraSim circuit simulator: ■ Switch View List ■ Stop View List ■ Print Comments ■ userCmdLineOption ■ Automatic output log ■ Netlist Format ■ Run Mode Return to main procedure. March 2015 120 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the AMS Designer Simulator You can specify the following options for the AMS Designer simulator: ■ Parameter Range Checking File Return to main procedure. March 2015 © 1990-2015 121 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the Accelerated Parallel Simulator You can specify the following options for the Accelerated Parallel Simulator: ■ Parameter Range Checking File ■ Print Comments ■ userCmdLineOption ■ Automatic output log ■ savestate (ss) ■ recover (rec) Return to main procedure. March 2015 © 1990-2015 122 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the SpectreVerilog Circuit Simulator Important The SpectreVerilog circuit simulator is available only in IC6.1.6 release. You can specify the following options for the SpectreVerilog circuit simulator: ■ Parameter Range Checking File ■ Print Comments ■ userCmdLineOption ■ Automatic output log ■ savestate (ss) ■ recover (rec) ■ Verilog Netlist Option Return to main procedure. March 2015 123 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the UltraSimVerilog Circuit Simulator Important The UltrasimVerilog circuit simulator is available only in IC6.1.6 release. You can specify the following options for the UltraSimVerilog circuit simulator: ■ Print Comments ■ userCmdLineOption ■ Automatic output log ■ Run Mode ■ Verilog Netlist Option Return to main procedure. March 2015 © 1990-2015 124 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Environment Options for the hspiceD Circuit Simulator You can specify the following options for the hspiceD circuit simulator: ■ Print Comments ■ Automatic output log Return to main procedure. Switch View List The Switch View List field appears on the Environment Options form for Spectre, UltraSim, and hspiceD circuit simulators. The switch view list tells the netlister the sequence to use when descending into different views of your design. The flowchart in the Netlisting chapter shows how the netlister selects views when expanding a design. The software searches through hierarchical views in the order you specify. See also “Expanding Hierarchy to Netlist a Design” on page 393. ➤ (Optional) In the Switch View List field, type a list of one or more view names to search when looking for design variables and when netlisting. Stop View List The Stop View List field appears on the Environment Options form for Spectre, UltraSim, and hspiceD circuit simulators. ➤ (Optional) In the Stop View List field, type a list of one or more view names (in no particular order) that you want the netlister to use as stopping views. Print Comments The Print Comments check box appears on the Environment Options form for Spectre, UltraSim, SpectreVerilog, UltraSimVerilog, and hspiceD circuit simulators. March 2015 © 1990-2015 125 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses ➤ (Optional) Select the Print Comments check box if you want the program to write extra comments regarding component location and name to your netlist. Automatic Output Log The Automatic output log check box appears on the Environment Options form for Spectre, UltraSim, SpectreVerilog, UltraSimVerilog, and hspiceD circuit simulators. ➤ (Optional) Select the Automatic output log check box if you want the output log to appear automatically when the simulator generates messages. Parameter Range Checking File The Parameter Range Checking File field appears on the Environment Options form for Spectre, SpectreVerilog, and AMS circuit simulators. ➤ (Optional) In the Parameter Range Checking File field, type the name of the file containing the parameter range limits. You do not need to type the full path for the file if it is in the directory specified in the Include Path field on the Simulation Files Setup form. The program interprets the . character in a UNIX path specification relative to the directory where you started the environment. userCmdLineOption The userCmdLineOption field appears on the Environment Options form for Spectre, UltraSim, SpectreVerilog, and UltraSimVerilog circuit simulators. ➤ (Optional) In the userCmdLineOption field, type any command-line options you want to send to the simulator. savestate (ss) The savestate (ss) check boxes appear on the Environment Options form for Spectre and SpectreVerilog circuit simulators. ➤ Select one of the following savestate (ss) check boxes: ❑ Y indicates that you want to run spectre with the +ss option, which causes the simulator to save the states to a file when receiving interrupt signals like QUIT, TERM, INT, or HUP. March 2015 © 1990-2015 126 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses ❑ N indicates that you want to run spectre with the -ss option, which disables the savestate option. Start from Checkpoint File (rec) The Start from Checkpoint File (rec) check boxes appear on the Environment Options form for Spectre and SpectreVerilog circuit simulators. ➤ Select one of the following Start from Checkpoint File (rec) check boxes: ❑ Y indicates that you want to run spectre with the +rec option, which restarts a transient simulation based on conditions specified in a checkpoint file. ❑ N indicates that you want to run spectre with the -rec option, which does not restart a transient simulation, even if conditions for this have been specified in a checkpoint file. Netlist Format The Netlist Format radio buttons appear on the Environment Options form for the UltraSim circuit simulator. ➤ Select one of the following Netlist Format radio buttons: ❑ spectre specifies a Spectre format netlist ❑ hspice specifies an HSpice format netlist Run Mode The Run Mode radio buttons appear on the Environment Options form for UltraSim and UltraSimVerilog circuit simulators. ➤ Select one of the following Run Mode radio buttons: ❑ Batch ❑ Interactive If you select Interactive, you must type a valid name in the Interactive Control File field. March 2015 © 1990-2015 127 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Verilog Netlist Option The Verilog Netlist Option button appears on the Environment Options form for SpectreVerilog and UltraSimVerilog circuit simulators. To specify Verilog netlisting options, do the following: ➤ Click Verilog Netlist Option. The Verilog HNL Netlisting Options form appears. For more information about this form, see the following: ❑ “Netlisting Options” in the “UltraSimVerilog” chapter of the Virtuoso Analog Design Environment L User Guide. (6.1.6 ONLY) ❑ “Verilog Netlisting Options” in the “Netlisting Options” chapter of the Virtuoso Mixed-Signal Circuit Design Environment User Guide. ❑ “Verilog Netlist Setup Form” in the Virtuoso NC Verilog User Guide March 2015 © 1990-2015 128 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Simulation Options The options you can specify depend on your target simulator. ■ Specifying Simulator Options for Spectre, SpectreVerilog, UltraSim, and UltraSimVerilog Circuit Simulation on page 129 ■ Specifying Options for AMS Circuit Simulation on page 130 ■ Specifying Options for hspiceD Circuit Simulation on page 131 Specifying Simulator Options for Spectre, SpectreVerilog, UltraSim, and UltraSimVerilog Circuit Simulation Important The SpectreVerilog and UltrasimVerilog circuit simulators are available only in IC6.1.6 release. To specify simulator options for Spectre, APS, SpectreVerilog, UltraSim, or UltraSimVerilog circuit simulation, do the following: 1. On the Data View assistant pane, right-click the test and choose one of the following: Menu Choice Form Options – Analog The Simulator Options form appears Options – Digital The Verilog-XL Simulation Options form appears. Note: This menu is available for SpectreVerilog and UltraSimVerilog circuit simulators only. Options – Mixed Signal The Mixed Signal Options form appears. Note: This menu is available for SpectreVerilog and UltraSimVerilog circuit simulators only. The fields that appear on the form depend on your target simulator. Refer to your simulator’s user guide for information about the various options you can select. 2. When you are done specifying options, click OK. The simulator options you specified are applied to future simulations. March 2015 © 1990-2015 129 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Options for AMS Circuit Simulation To specify options for AMS circuit simulation, do the following: 1. On the Data View assistant pane, right-click the test, choose Options, then choose one of the following: ❑ Options – Analog (Spectre) ❑ Options – AMS Simulator The appropriate form appears. 2. When you are done specifying options, click OK. The simulator options you specified are applied to future simulations. March 2015 © 1990-2015 130 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Specifying Options for hspiceD Circuit Simulation To specify options for hspiceD circuit simulation, do the following: 1. On the Data View assistant pane, right-click the test, choose Options, then choose one of the following: ❑ Analog Options – All Options ❑ Analog Options – Input and Output Options ❑ Analog Options – CPU Options ❑ Analog Options – Interface Options ❑ Analog Options – Analysis Options ❑ Analog Options – Error Options ❑ Analog Options – Version Options ❑ Analog Options – Model Analysis Options ❑ Analog Options – DC Analysis Options ❑ Analog Options – Transient and AC Options The appropriate form appears. 2. When you are done specifying options, click OK. The simulator options you specified are applied to future simulations. March 2015 © 1990-2015 131 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Creating and Viewing the Netlist To create a netlist, do the following: 1. On the Data View assistant pane, right-click the test and choose Netlist – Create. The netlist appears in a text browser window. 2. When you are done viewing the netlist, choose File – Close Window. To recreate the netlist, do the following: 1. On the Data View assistant pane, right-click the test and choose Netlist – Recreate. A message appears in your Command Interpreter Window indicating success or failure. To view the netlist, do the following: 1. On the Data View assistant pane, right-click the test and choose Netlist – Display. The netlist appears in a text browser window. 2. When you are done viewing the netlist, choose File – Close Window. March 2015 © 1990-2015 132 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Modifying a Test in the Test Editor Window As an alternative to using the ADE XL environment, you can use the ADE XL Test Editor to edit an ADE XL test. In this editor, you can choose a design, update design variables, set up analyses, and specify output variables. To open the ADE XL Test Editor window for a test, do the following: ➤ On the Tests tree in the Data tab of Data View assistant pane, double-click a test name. The ADE XL Test Editor window appears. Alternatively, you can do the following: ➤ Right-click the test name and choose Open Test Editor. The ADE XL Test Editor window appears. March 2015 133 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses This window displays the test details in the same way as displayed in the ADE L environment. Here, you can create and modify the setup. If required, you can also run simulations and view output results and plots. When you close the Test Editor window, any changes done here are copied back to the ADE XL setup. Important Points To Note ■ Similar to the ADE L environment, the Test Editor contains the Save By Subckt Instances pane. The pane is hidden by default. To view it, right-click on a toolbar and select Save By Subckt Instances. Settings done in this pane are used by the ADE XL simulations, but currently these settings cannot be viewed in the ADE XL environment. For details on the Save By Subckt Instances pane, refer to the Specifying Hierarchy Levels to Save Options section in Virtuoso Analog Design Environment L User Guide. ■ Using the Save Operating Points assistant, you can specify the names of the device operating point parameters for which you need to save and plot the results. For more details, refer to Saving Operating Points in Virtuoso Analog Design Environment L User Guide. ■ To validate the test setup and to perform a preliminary analysis, you can start a debug test run by clicking Debug Test on the ADE Simulation toolbar. The same simulation settings that were set in the ADE XL environment are used in this debug run. However, an important difference is that simulations that run from the test editor do not use ICRP. They are same as ADE L simulations. That is why, for a distributed simulation, only relevant job settings are copied from the ADE XL environment. When you perform a debug test run, ADE XL displays the message given below to inform you that the results of the debug run might not reflect the actual simulation run in ADE XL. To stop this message from displaying again in the active ADE XL session, select Do not show this dialog again and click Close. You can also suppress this message from showing up in other ADE XL sessions in future, set the adexlTestEditorSetupValidateMsg environment variable to nil. ■ When you run simulations from the test editor, by default, the results are saved in the same directory as that of the previous history run. This overwrites the simulation data March 2015 © 1990-2015 134 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses saved for the previous history run. If you want to save data for the history, set the debugDataDir environment variable to specify a different location where you want to save results for the simulations run from the ADE XL Test Editor. Important If Reliability Analysis was not enabled in the adexl view and you enable it for a test in the Test Editor, after you close the Test Editor, a default reliability setup named Default_Relx is created in the Data View pane in the ADE XL window. For information about using the Test Editor window, see Environment Setup in the Virtuoso Analog Design Environment L User Guide. March 2015 © 1990-2015 135 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Working with OCEAN-Based Tests In ADE XL, you can save the simulation setup in OCEAN scripts and run these scripts either from UNIX shell or from Virtuoso GUI. For more details on creating and running OCEAN scripts, refer to Creating and Running an OCEAN Script. March 2015 © 1990-2015 136 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Data View Assistant Context-Sensitive Menus When you right-click a test name on the Data View assistant pane, the following context-sensitive menu appears: March 2015 © 1990-2015 You can customize the commands displayed in this menu by using the Customize Menu command. For more details, refer to Context-Sensitive Menus. 137 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses Note: The MTS Options item appears only after you have launched Analog Design Environment GXL. When you right-click an analysis on the Data View assistant pane, the following context-sensitive menu appears: Note: The MTS Options item appears only if you have launched Analog Design Environment GXL. March 2015 © 1990-2015 138 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses When you right-click in edit mode for a test name on the Data View assistant pane, the following context-sensitive menu appears: The action you take determines what menu items are available. When you right-click the Design Variables tree on the Data View assistant pane, the following context-sensitive menu appears: March 2015 © 1990-2015 139 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses When you right-click a design variable on the Data View assistant pane, the following context-sensitive menu appears: When you right-click the Global Variables tree on the Data View assistant pane, the following context-sensitive menu appears: When you right-click a global variable on the Data View assistant pane, the following context-sensitive menu appears: March 2015 © 1990-2015 140 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses When you right-click the Parameters tree on the Data View assistant pane, the following context-sensitive menu appears: When you right-click a parameter on the Data View assistant pane, the following context-sensitive menu appears: March 2015 © 1990-2015 141 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Specifying Tests and Analyses March 2015 © 1990-2015 142 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 3 Working with Design Variables and Instance Parameters You can use design variables and Component Description Format (CDF) instance parameters to set component values for simulation. Design variable values apply to specific tests. The scope of a CDF parameter value depends on which Analog Expression Language (AEL) functions you use to refer to the parameter. See the following topics for more information: ■ Working with Design Variables on page 144 ■ Working with Device Instance Parameters on page 161 March 2015 © 1990-2015 143 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Working with Design Variables You can add, change, and delete design variables on the Data View pane or the Variables tab of the Variables and Parameters pane in your ADE XL environment. ■ Adding a Design Variable on page 145 ■ Changing the Value of a Design Variable on page 148 ■ Hiding Overridden Design Variables for a Test on page 149 ■ Deleting a Design Variable on page 150 ■ Changing the Order of Design Variables on page 151 ■ Saving Design Variables on page 151 ■ Toggling the View on the Variables tab of the Variables and Parameters Assistant Pane on page 152 ■ Finding Design Variables in Schematic on page 153 ■ Copying Design Variable Values to the Schematic on page 155 ■ Copying Design Variable Values from the Schematic on page 156 ■ Importing Design Variables from an ADE State on page 157 ■ Displaying Design Variables on the Schematic on page 157 ■ Defining Variables in a File on page 158 March 2015 © 1990-2015 144 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Adding a Design Variable To add a design variable to a test, do the following: 1. Choose Window – Assistant – Variables and Parameters. The Variables and Parameters pane appears. 2. On the Variables tab of the Variables and Parameters pane, right-click the test and choose Add Variable. Tip Alternatively, you can do one of the following: ❑ Click where it says Click to add variable in an expanded test tree on the Data View pane or on the Variables tab of the Variables and Parameters pane. March 2015 © 1990-2015 145 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Figure 3-1 Design Variables in the Data View Pane Figure 3-2 Design Variables in Variables and Parameters Assistant ❑ In an expanded test tree on the Data View pane, right-click a design variable and choose Add Variable. March 2015 © 1990-2015 146 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The Editing Design Variables form appears. 3. In the Name field, type a name for your design variable. The name must begin with a letter or the underscore character (_) and can contain only letters, numbers, or underscore characters. 4. In the Value (Expr) field, type a value or expression for your design variable. The expression can be an equation, a function, or another variable. The simulator evaluates the expression which must follow Analog Expression Language (AEL) syntax. 5. Click Add. Your design variable and its value appear in the Design Variables table on the Editing Design Variables form and also in the expanded test tree on the Data View pane and on the Variables tab of the Variables and Parameters pane. Note: You can also define variables in a definitions file. By default, the design variables defined for your tests are automatically promoted as global variables in the Global Variables tree on the Data View assistant pane and the Variables tab of the Variables and Parameters assistant pane. The design variables are displayed with a strikethrough because the settings for a global variable override the settings of design variables that have the same name as the global variable. For example, in the following figure, the design variables specified for the test named myFirstTest are automatically added as global variables. The design variables are March 2015 © 1990-2015 147 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters displayed with a strikethrough because the global variables override the design variables. Note: You can disable the default automatic copy of design variables to global variables by setting the autoPromoteVarsToGlobal environment variable to nil. Changing the Value of a Design Variable You can change the values of design variables that are not overridden by global variables. If you want to change the value of a design variable that is overridden by a global variable, you must do one of the following: ■ Disable the global variable for test in which you want to change the value of the design variable. For more information, see Disabling Global Variables for Specific Tests on page 226. ■ Disable the global variable for all tests. For more information, see Enabling and Disabling Global Variables for All Tests on page 224. To change a design variable, do the following: 1. In an expanded test tree on the Variables tab of the Variables and Parameters pane, double-click in the Value cell of the design variable you want to change. March 2015 © 1990-2015 148 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Tip Alternatively, in an expanded test tree on the Data View pane, double-click on the value of the design variable you want to change. 2. Type a new value or expression for the design variable. 3. Press Return or click anywhere outside that table cell. The new value appears in the Value cell for that design variable. Alternatively, you can change the value of a design variable from the Editing Design Variables form as follows: 1. In an expanded test tree on the Data View pane or on the Variables tab of the Variables and Parameters pane, right-click the design variable and choose Edit Variable. The Editing Design Variables form appears. 2. In the Design Variables table, select the design variable you want to change. The row appears highlighted and the Selected Variable fields, Name and Value (Expr), contain the name and value of the design variable you selected. 3. Click in the Value (Expr) field. The editing cursor appears where you clicked. 4. Type a new value or expression. 5. Click Change. The new value appears in the Design Variables table. 6. Click OK. Hiding Overridden Design Variables for a Test By default, a design variable for a test is automatically promoted as global variables and the variable appears with a strikethrough in the list of variables for that test. You can choose to hide all the overridden variables for a test and to display only those variables for which the value specified for a test is used. For this, do any one of the following: March 2015 © 1990-2015 149 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ➡ In the Data View pane, expand the design tree, right-click on Design Variables and choose Hide Overridden Variables. ➡ On the Variables tab of the Variables and Parameters assistant, right-click on a test name and choose Hide Overridden Variables. In both the Data View pane and the Variables and Parameters assistant, the overridden variables are hidden for the test. Deleting a Design Variable To delete a design variable, do the following: ➤ In an expanded test tree on the Data View pane or on the Variables tab of the Variables and Parameters pane, right-click the design variable you want to delete and choose Delete Variable. Note: You can also delete design variables from the Editing Design Variables form. March 2015 © 1990-2015 150 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Changing the Order of Design Variables You can change the order in which the design variables are listed in the Data View assistant. A change in the order of design variables in this assistant also changes the nesting of sweep points. To change the order of design variables, do the following in the Data tab of the Data View assistant: 1. Expand Global Variables to view all the variables. 2. Click a variable name and drag it. A blue indicator line appears at the location where you have moved it. The tooltip also shows the name of the variable being moved. 3. Drag the indicator line to the desired location and drop the variable. Note: You can hold down the Ctrl key to select multiple variables and then move them together. Saving Design Variables Your design variables are saved with your ADE XL setup. To perform an explicit save, do the following: ➤ Choose File – Save. March 2015 © 1990-2015 151 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The program saves your setup information, including design variables. The program reloads these values the next time you open this design cellview. Toggling the View on the Variables tab of the Variables and Parameters Assistant Pane To toggle the view of variables on the Variables tab of the Variables and Parameters assistant pane, do the following: ➤ Right-click any item and choose Toggle View. If you were viewing the variable categories, the view changes to a tree of variables. If you were viewing a tree of variables, the view changes to the variable categories view. March 2015 © 1990-2015 152 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Finding Design Variables in Schematic You can search for a design variable in the schematic to identify its location. To find a variable, do the following: 1. In the Data View pane, expand the test tree. 2. Expand the Design Variables tree. March 2015 © 1990-2015 153 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Right-click a design variable and choose Find Variable. Alternatively, do the following on the Variables tab of the Variables and Parameters assistant: 1. Toggle the view to show the variables names. Expand a variable tree to show the test names. 2. Right-click the test name and choose Find Variable. March 2015 © 1990-2015 154 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters If the variable is found in the schematic, the design is opened in the design tab and all the instances are highlighted, as shown below. In case of a hierarchical design, if the variable is not found in the top level of design, the tool traverses down the hierarchy and highlights the variable in the lower level, where found. If the variable is not found in the schematic, a warning message, as shown below, is displayed in the CIW. Variable ‘’ not found on the schematic. Copying Design Variable Values to the Schematic If you change design variables in your simulation setup and want to copy the values back to the cellview before you save the schematic, do the following: ➤ On the Variables tab of the Variables and Parameters pane, right-click the test and choose Copy to Cellview. March 2015 © 1990-2015 155 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Tip Alternatively, in an expanded test tree on the Data View pane, right-click a design variable and choose Copy to Cellview. The program copies design variable values from the Variables tab of the Variables and Parameters pane to the cellview. Alternatively, you can do the following: 1. On the Variables tab of the Variables and Parameters pane, right-click the test and choose Edit Variable. Tip Alternatively, in an expanded test tree on the Data View pane, right-click a design variable and choose Edit Variable. The Editing Design Variables form appears. 2. Select one or more variables you want to copy to the current cellview. 3. In the Cellview variables section, click Copy To. The program copies the selected design variable values to the current cellview. 4. When you are done with the form, click OK. Copying Design Variable Values from the Schematic If you change design variables on your schematic and want to use these values in your next simulation, do the following: ➤ On the Variables tab of the Variables and Parameters pane, right-click the test and choose Copy from Cellview. Tip Alternatively, in an expanded test tree on the Data View pane, right-click a design variable and choose Copy from Cellview. The program copies design variable values from the schematic to the Variables tab of the Variables and Parameters pane. March 2015 © 1990-2015 156 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Alternatively, you can do the following: 1. On the Variables tab of the Variables and Parameters pane, right-click the test and choose Edit Variable. Tip Alternatively, in an expanded test tree on the Data View pane, right-click a design variable and choose Edit Variable. The Editing Design Variables form appears. 2. Click Copy From. The program copies design variable values from the schematic to the Variables tab of the Variables and Parameters pane. 3. When you are done with the form, click OK or Cancel. Note: You can disable copying design variables to global variables by setting the copyDesignVarsFromCellview environment variable to nil. Importing Design Variables from an ADE State For details on importing the design variables and parameters by using the Loading State form, see “Loading State Information” on page 102. Displaying Design Variables on the Schematic To display the values of instance parameters that are design variables on the schematic, do the following: 1. In the CIW, choose Tools – CDF – Edit. The Edit CDF form appears. 2. In the Scope group box, select the Library radio button. 3. In the CDF Layer group box, select one of the following CDF types (see CDF Type in the CDF Commands chapter in the Component Description Format User Guide for information about these choices): ❑ Effective ❑ User March 2015 © 1990-2015 157 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ❑ Base 4. In the Library Name field, select the library whose CDF you want to edit. 5. On the Edit CDF form, click the Interpreted Labels tab. You can use interpreted labels to display parameter values, evaluated parameter values, net connectivity information, backannotated simulation information, and more. For more information, see “Specifying Label Information” in the Component Description Format User Guide. 6. On the Interpreted Labels tab, click the Parameters(cdsParam) tab. 7. For paramEvaluate, select the full check box. Design variables appear on your schematic. Defining Variables in a File You can define functions and global variables that are not design variables (such as model parameters and simulator parameters) in a definitions file. Cadence provides sample definition files for the Spectre circuit simulator in your_install_dir/tools/dfII/samples/artist/models/spectre (see defaults.scs and definitions.scs). To set up a definitions file, do the following: 1. Create the file in the directory you specify in the Include Paths field on the Simulation Files Setup form. 2. In the Definition Files field on the Simulation Files Setup form, type the full UNIX path and name of the definitions file. The simulator reads the definitions file when it starts. Your definitions file can contain any of the following: Simple passing parameters Functions returning constant values real R(real l, real w) { return (500*l/w); } real PiRho() { return 2500; } real Rpi(real l, real w) { return PiRho()*l/w; } March 2015 © 1990-2015 158 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters For more information about defining functions in a definitions file, see “User Defined Functions (functions)” in the Virtuoso Spectre Circuit Simulator Reference. See also ■ Example of a Polynomial Resistor as a Function of Temperature on page 159 ■ About Inherited Parameter Value Functions (iPar, pPar) on page 159 Example of a Polynomial Resistor as a Function of Temperature You can define a polynomial resistor as a function of temperature as follows: real rpoly(real value, real tdc) { value*(1+.01*(tdc-25)+.002*(tdc-25)**2); } You can use this function to specify the value of a resistor as follows: rpoly(1k,tempdc) You can set resistor properties tc1 and tc2 so that the system automatically models resistor temperature effects, rather than defining your own functions. About Inherited Parameter Value Functions (iPar, pPar) You can use inherited parameter value functions iPar and pPar in conjunction with built-in functions or user-defined functions. March 2015 © 1990-2015 159 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The following diagram shows a schematic example using pPar: L=pPar("lp") W=pPar("wp") L=pPar("ln") W=pPar("wn") Hierarchical variables IN IN ln OUT wn lp wp OUT IN ln=10u wn=5u lp=5u wp=10u Cell parameters created during Automatic Symbol Generation OUT ln=20u wn=8u lp=15u wp=30u Two instances of the parameterized cell, with different transistor dimensions For more information about iPar and pPar parameters, see “Passing Parameters in a Design” in the Defining Parameters chapter of the Component Description Format User Guide. March 2015 © 1990-2015 160 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Working with Device Instance Parameters In ADE XL, you can ■ Change the value of a device instance parameter for a simulation without affecting the value on the schematic ■ Disable the changed value of a device instance parameter for a simulation ■ Sweep a device instance parameter ■ Disable callbacks on swept device parameters ■ Create matched device parameters ■ Create ratio-matched device parameters ■ Backannotate changed device instance parameter values back to the schematic See the following topics for more information: ■ Selecting Instance Properties to be Parameterized for Simulations on page 163 ■ Changing the Value of a Device Instance Parameter for Simulation on page 168 ■ Disabling a Changed Device Instance Parameter Value for a Simulation on page 170 ■ Sorting Parameters by Properties and Objects on page 171 ■ Filtering Device Instance Parameters on page 172 ■ Creating Custom Device Filters on page 174 ■ Changing the Order of Device Parameters on page 176 ■ Deleting a Parameter on page 170 ■ Creating Parameter Ranges on page 178 ■ Specifying an Instance Parameter as a Sweep Parameter on page 182 ■ Working with Parametric Sets on page 186 ■ Enabling and Disabling Parameters on page 193 ■ Adding Notes for Parameters on page 194 ■ Adding or Changing a Parameter Specification on page 195 ■ Creating Matched Device Parameters on page 205 March 2015 © 1990-2015 161 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ■ Creating Ratio-Matched Device Parameters on page 208 ■ Disabling Callbacks on Swept Device Parameters on page 211 ■ Annotating Simulation Results on page 735 March 2015 © 1990-2015 162 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Selecting Instance Properties to be Parameterized for Simulations To select instance parameters for the design associated with your test, do the following: 1. Click Click to add parameter in the Parameters tree on the Data View assistant. The schematic associated with the test is displayed in a new tab in the ADE XL window. Note that the menu changes to that of Virtuoso Schematic Editor and the Parameterization workspace is set. In this workspace, the Circuit Prospector, and the Variables and Parameters assistant panes are displayed. The Parameters tab on the Variables and Parameters assistant pane is also opened. 2. On the schematic, select one or more device instances. March 2015 163 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters To select more than one instance, hold down the Shift key and click each instance one by one or by dragging a selection box around a set of instances. Alternatively, you can use the Navigator assistant pane to select the instances. The parameter properties of the selected devices are listed in the upper half of the Parameters tab of the Variables and Parameters assistant pane. Selected device instances Parameter properties of the selected instances 3. Expand a property tree to view the device names. 4. Right-click on an instance name and choose Create Parameter. Alternatively, click Create Parameter on the toolbar. March 2015 © 1990-2015 164 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters A parameter is created for the selected property of the selected device instance. The details of the added parameter appear in the lower half of the Variables and Parameters assistant pane. The newly created parameter gets added here Note that the value to be used (shown in the Value column) is same as that of the value of the parameter in the schematic (also shown in the Design Value column). You can specify a different value in the Value column to be used while running simulation. For more details, refer to Changing the Value of a Device Instance Parameter for Simulation. Additional Points to Note ■ The default view for the Parameters tab is View by Property. That is why when you select an instance in the schematic, by default, a list of property names is displayed. March 2015 © 1990-2015 165 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters However, you can change the view to list the instance names by clicking the on the toolbar of the Parameters tab, as shown below. toggle View by Object You can also set the default view by setting the defaultParametersViewBy environment variable. ■ If you have selected more than one instance in the schematic and each instance has a different design value for a property, the value is shown as (various). ■ When the view is set to View by Property, you can select multiple devices in the schematic and use the Create Parameter command to create parameters for all the selected devices simultaneously. For example, if you have selected two instances, M1 and M2, on the schematic. In the Variables and Parameters assistant, right-click on March 2015 © 1990-2015 166 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Length, and choose Create parameter. The Length parameter is created for both M1 and M3 simultaneously. The above point has been added for CCR 1264322 ■ You can also create matched or ratio-matched parameters by using the Match Parameters or Ratio Matched Parameters commands on the toolbar. For more details, refer to Creating Matched Device Parameters and Creating Ratio-Matched Device Parameters. ■ If the devices have a large number of parameter properties, you can use filters to show only the relevant set of properties. For more details, see Filtering Device Instance Parameters. ■ When you create parameters, the lower half of the Variables and Parameters assistant pane displays the instance name, parameter name, parameter value, and the value of property in the design. You can also show the names of library, cell, and view of the instances. For this, right-click on any column name in the lower half of the assistant and choose Show Lib, Cell, View. Three more columns are displayed, as shown below. You can also show either one of these columns, as required, using the commands in the context-sensitive menu for this section of the assistant pane. If required, you can edit the names of library, cell, and view in this column. ADE XL validates the existence of the March 2015 © 1990-2015 167 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters newly specified library, cell, and view. If found, the details are updated in the assistant pane. Otherwise, an error is displayed in the CIW. ■ When you open a saved adexl view, if the cellview details of the instance parameters are different, the Variables and Parameters assistant shows all the columns to display the cellview details. Changing the Value of a Device Instance Parameter for Simulation To change the value of a device instance parameter for simulation, do the following: 1. On the upper half of the Parameters tab on the Variables and Parameters pane, click the value of the device instance parameter you want to change and type a new value. Note: You might have to expand the tree by clicking the plus sign to the left of the instance name at the root of the tree. Tip To view only the parameters in the Parameters tab, see Sorting Parameters by Properties and Objects. For example, change the value of the Length parameter from 400n to 350n. March 2015 © 1990-2015 168 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The instance parameter and its new value (350n) appear on the lower half of the Parameters tab on the Variables and Parameters assistant pane. The simulator uses this value when you click the Run Simulation button. Alternatively, you can do the following: 1. Right-click the instance parameter whose value you want to change and choose Create Parameter. The instance parameter and its value appear on the lower half of the Parameters tab on the Variables and Parameters assistant pane. 2. Double-click the value on the lower half of the Parameters tab and type a new one. The simulator uses this value when you click the Run Simulation button. The parameter is also displayed in the Parameters tree in the Data View pane. Note: You can add parameters only using the Parameters tab of the Variables and Parameters assistant pane. Parameters cannot be directly added in the Data View pane. Tip At any time, you can reset the original value, which was set in the design schematic, for a parameter. For this, in the lower half of the Parameters tab, right-click on a parameter name and choose Set to Design Value. March 2015 © 1990-2015 169 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Disabling a Changed Device Instance Parameter Value for a Simulation To disable a changed device instance parameter value for a simulation, do the following: ➤ On the lower half of the Parameters tab on the Variables and Parameters assistant pane, deselect the check box for that parameter. Tip Alternatively, in an expanded Parameters tree on the Data View pane, deselect the check box for that parameter. The next time you click the Run Simulation button, the simulator uses the device instance parameter value from the schematic. Deleting a Parameter To delete a parameter, do the following: ➤ In an expanded Parameters tree on the Data View pane or on the lower part of the Parameters tab of the Variables and Parameters pane, right-click the parameter you want to delete and choose Delete Parameter. March 2015 © 1990-2015 170 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Sorting Parameters by Properties and Objects By default, in the upper part of the Parameters tab of the Variables and Parameters assistant pane, the parameters are sorted by property names, as shown below. To sort the parameters by object names, do the following: March 2015 © 1990-2015 171 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ➡ Right-click on the upper part of the Parameters tab and choose View by Object. Alternatively, click ( ) to toggle the view types. The view changes to a tree of objects. Note: You can set the preferred view as the default view by using the defaultParametersViewBy environment variable. Filtering Device Instance Parameters To filter the device instance parameters that appear on the upper half of the Parameters tab on the Variables and Parameters assistant pane, do the following: March 2015 © 1990-2015 172 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ➤ In the Filter drop-down list, select one of the following: Whitelist Automatic Editable All Displays parameters specified in the list that you can edit by using the Filter Setup form. Displays all editable CDF parameters with non-nil CDF values Displays all editable parameters Displays all the parameters Only those device instance parameters that meet the filter specification appear in the upper half of the Parameters tab on the Variables and Parameters assistant pane. By default, the Whitelist filter shows the parameters set by the defaultParametersWhitelist environment variable. You can edit this list in either of the following ways: ❑ By editing the defaultParametersWhitelist environment variable ❑ By using the Filter Setup form that is displayed when you click Whitelist Filter ( ) on the toolbar. You can use the * wildcard character to specify the parameter names in the whitelist filter. For example, *inger* res*. The Whitelist Filter command is enabled only when the Filter drop-down list is set to Whitelist. For other filter types, this is not applicable. Note: If you have defined any custom device filter using the axlRegisterCustomDeviceFilter function, the name of that filer also appears in the drop-down list. See Creating Custom Device Filters for more information. However, it is recommended to use the Whitelist filter to customize the list of parameters to be displayed. March 2015 © 1990-2015 173 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Creating Custom Device Filters To create a custom device instance parameter filter, do the following: 1. Write a procedure to define your custom filter. For example, you want to filter out the Total Width, Threshold and S/D Metal Width parameters for all instances of the pmos2v cell, write the following procedure: (procedure (myCustomFilter inst simulator) (let (paramList libName cellName instName) (setq instName inst->name) (setq cellName inst->cellName) (setq libName inst->libName) (setq paramList list()) ;;Example filter for hiding Total Width, Threshold and S/D Metal Width ;;parameters for instances of cells whose names start with pmos2v (rexCompile "^pmos2v") (if (rexExecute cellName) then (setq paramList (list (list "fw" (get inst "fw")) (list "l" (get inst "l")) (list "fingers" (get inst "fingers")) (list "m" (get inst "m")) ))) paramList ) ) Note: You must specify the CDF parameter names and not the CDF prompt names in the procedure. For example, you must specify the CDF parameter name fw and not the CDF prompt name Finger Width in the procedure. March 2015 © 1990-2015 174 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Tip You can also write procedures to filter parameters of instances starting with specific names (for example, all instances starting with the name PM), or to filter parameters of instances of cells in a library (for example, filter parameters of all instances of the pmos2v cell in the gpdk090 library). 2. Call axlRegisterCustomDeviceFilter as follows: axlRegisterCustomDeviceFilter "My Filter" 'myCustomFilter The function returns t if the registration is successful; otherwise, nil. My Filter appears in the Filter drop-down list. To load your custom filters each time the program starts, you can declare and register them in your .cdsinit file. When you select My Filter in the Filter drop-down list, the device parameters Total Width, Threshold and S/D Metal Width do not appear on the upper half of the Parameters tab on the Variables and Parameters assistant pane for the selected device instance(s). March 2015 © 1990-2015 175 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Changing the Order of Device Parameters When there are multiple parameters in the Parameters list of the Data View assistant, you can change the order in which they are listed. A change in the order of device parameters in this assistant changes the nesting of sweep points as well. To change the order of a parameter, do the following in the Data tab of the Data View assistant: 1. Expand Parameters to view all the parameters. 2. Click a parameter name and drag it. A blue indicator line appears at the location where you have moved it. The tooltip also shows the name of the parameter being moved. Also note that because all the parameters for a device are placed together, you cannot move only a single parameter for a device to another location in the list. Therefore, while you are moving a device parameter, all the other parameters for the device are also highlighted and moved, as shown below. All the parameters for the device M5 are moved together. March 2015 © 1990-2015 176 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters While you are dragging the parameters, you cannot drop the device parameters in the midst of a list of parameters for another device. The pointer changes from a blue line to a stop icon to indicate that the movement is not allowed. The icon indicates that you cannot move and place the parameters for M5 in the midst of the list of parameters for M2. 3. Drag the indicator line to the desired location and drop the parameter. You can also select the parameters for more than one device and move them together. March 2015 © 1990-2015 177 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Creating Parameter Ranges You can specify a parameter range for an individual parameter by editing the value field in the Data View pane or the Variables and Parameters assistant, as shown below. However, if the parameter list is long, applying a parameter range for each parameter individually can take a long time. Instead, you can use the Create Parameter Range command in the right-click menu of the Parameters list. This command applies a standard parameter range to a set of selected or all the parameters in the Parameters list. To create a parameter range for more than one or all the parameters together, perform the following steps in Data View pane or the lower part of the Variables and Parameters assistant: 1. Select one or more variables in the Parameters list for which you want to create parameter range. Press the Shift or Ctrl key and select the parameter names. 2. Right-click on a parameter in the Parameters list and choose Create Parameter Range. Alternatively, click Create Parameter Range ( ) on the toolbar given on the Parameters tab of the Variables and Parameters assistant. March 2015 © 1990-2015 178 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The Create Parameter Ranges form appears, as shown below. 3. In this form, you can specify parameter ranges in one of the following two ways: ❑ Parameter range as percentage of the design value: This is the default way. In this case, the Percentage of design value option is selected and the parameter range is relative to the value of variable. If the variable is assigned any value in the Data View pane, that value is taken as a reference. If there is no value assigned to this variable in the Data View pane, the value for this variable is taken from the design. By default, you can specify a common percentage value for both the upper and the lower limit in the +/- % field. The lower limit is the value of a parameter in the design minus the specified % of the same design value. Similarly, the upper limit is the value of a parameter in the design added to the specified % of the value of parameter in the design. Note: The +/- % field can contain only an integer value between 1 and 100, including these two values. March 2015 © 1990-2015 179 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Alternatively, select the Specify +/- % separately option. When you select this option, the following fields appear in the form. In these fields, you can specify separate % values for the upper and lower range limits. Note: The -% field can contain an integer between 0 and 100, including these two values, and the +% can be set to any non-negative integer. ❑ Parameter range with a specific minimum and maximum value: This option is used to specify specific minimum and maximum value for the parameter range. These values might not be relative to the value of a parameter in the design. To specify these values, select the Specify minimum/maximum values option. The Minimum Value and Maximum Value fields appear in the form. Specify the minimum and maximum values of the parameter range in their respective fields. March 2015 © 1990-2015 180 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Tip To set the value of a parameter same as given in the design, right click on the parameter name and choose Set to Design Value. 4. Next, you can specify how to create intermediate values within the range. For this, you have the following two options in the drop-down list displayed in the lower section of the form: ❑ Step Size: Use this option to specify a step size between two steps. The tool automatically creates steps between the two outer limits of the range at a gap of the given step size. In this case, ranges of all the design parameters will have the same step size, but the number of step values will depend on the minimum and maximum values. ❑ Number of Step Values: Use this option to specify the number of step values to be created between the two range limits. The tool automatically calculates the required step size and creates the intermediate values. In this case, the number of step values will remain same for all the design parameters, but the step size will vary. 5. Select the Limit to Integer Values option to specify that the step values should be only integer numbers. This would be required for parameters that cannot have decimal values, such as m-factor and number of fingers. When you select this option, parameter range is not created if the step values contain decimal values. Note: An alternate way to limit the creation of range for parameters defining m-factor and number of fingers to only integer values is to add the names of such parameters in the layoutXL.mFactorNames and layoutXL.lxFingeringNames environment variables. ADE XL automatically sets only integer ranges for the parameters listed in these variables. 6. Click OK to close the form. ADE XL creates the parameter ranges for all the parameters and updates the Data View and the Variables and Parameters assistants. When the Variables and Parameters assistant is open in the schematic view and you select an instance to create a parameter, you can right-click on the instance in the top area of the assistant and use the Create Parameter Range command to create a parameter as well as to apply a range of values for it. March 2015 © 1990-2015 181 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying an Instance Parameter as a Sweep Parameter You can specify a device instance parameter as a sweep parameter. The settings for a sweep parameter override the settings of an instance parameter that has the same name as the sweep parameter. To specify an instance parameter as a sweep parameter, do the following: 1. Make sure you are viewing the design schematic associated with your test. For more information, see Opening a Design Schematic on page 100. 2. Choose Window – Assistant – Variables and Parameters to display the Variables and Parameters assistant pane. 3. Click the Parameters tab on the Variables and Parameters assistant pane. 4. On the schematic, select the instances whose parameters you want to specify as sweep parameters. You can select more than one instance by shift-clicking each instance one by one or by dragging a selection box around a set of instances. Tip Use the Navigator assistant pane to quickly select the instance. March 2015 © 1990-2015 182 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The selected instances are displayed on the upper half of the Parameters tab of the Variables and Parameters pane. Tip Place the mouse pointer on the instance name to view the name of the library, cell, and view containing the instance in a pop-up. 5. Click the plus sign to the left of the instance name to view the parameters for the instance. March 2015 © 1990-2015 183 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The parameters associated with the instance appear in the expanded tree beneath the instance name. The value of each parameter appears in the second column. Tip To view only the parameters in the Parameters tab, see Sorting Parameters by Properties and Objects on page 171. See also ❑ Filtering Device Instance Parameters on page 172 ❑ Creating Custom Device Filters on page 174 ❑ Sorting Parameters by Properties and Objects on page 171 6. Right-click the instance parameter you want to use as a sweep parameter and choose Create Parameter ( ). March 2015 © 1990-2015 184 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The instance parameter and its value appear on the lower half of the Parameters tab on the Variables and Parameters assistant pane. See also “Toggling the View on the Variables tab of the Variables and Parameters Assistant Pane” on page 152. 7. To define sweep values for this parameter, do one of the following: ❑ Double-click the value of the parameter on the lower half of the Parameters tab and specify a sweep value. ❑ Double-click the value of the parameter on the lower half of the Parameters tab, then click the browse button to define a parameter specification. For more information, see “Adding or Changing a Parameter Specification” on page 195. March 2015 © 1990-2015 185 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Working with Parametric Sets By default, ADE XL creates all possible sweep combinations by pairing each value of a variable or parameter with all values of the other variables or parameters. With parametric sets, a selected set of sweep combinations are created by picking values from the same ordinal position for all the variables or parameters in that parametric set. This reduces the number of design points, therefore, reducing the number of simulations. Consider an example where two variables, vdd and vin_ac, are grouped together to create a parametric set as shown below. In this case, ADE XL creates the following three sweep value sets: vdd: 2.2, vin_ac: 1.25 vdd: 2.0, vin_ac: 1.15 vdd: 1.8, vin_ac: 1.05 Note that the sweep value sets are created by picking values from the same ordinal position for all the variables or parameters in a parametric set. You can see that while running simulations, ADE XL created three design points, as shown below. March 2015 © 1990-2015 186 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters As compared to this, if the parametric sets are not created, ADE XL creates nine design points, where each value of vdd is paired with all three values of vin_ac. Note: For each design point, the parametric sets are indicated in the Results tab by using the {} brackets. You can create parametric sets when you need to run simulations for a specific set of sweep values for different parameters. This helps in saving the simulation run time. Creating Parametric Sets To create a parametric set, do the following in the Data View pane or the Variables and Parameters assistant: 1. Hold down the Ctrl key and select two or more variables that you want to group together. 2. Right-click and choose Group as Parametric Set. 3. If required, specify sweep values for the variables. Note that for different variables, you can specify sweep values in different format. For example, you can specify values for variables as shown below. March 2015 © 1990-2015 187 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters However, it is important that the number of sweep points is same for all the variables or parameters in a parametric set. If the number of sweep values are not equal, ADE XL flags an error during the simulation run. Note the following changes in the Data View pane and the Variables and Parameters assistant: ■ The variables or parameters in a parametric set are bound as a group. ■ When you create a parametric set, the list of variables is realigned to display all variables or parameters of a group together. ■ Each parametric set is highlighted with a different color, as shown below. ■ When you group two more device parameters together, the tool automatically identifies matched parameters and includes then in the parametric set. Consider an example. From the Parameters list, select two variables, M3/w and M10/w and add them to a parametric set, as shown below. March 2015 © 1990-2015 188 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters A parametric set is formed and two more variables M4/w and M9/w are also added to that set. This is because m4/w and M9/w are matched with M3/w and M10/w, respectively. ■ When you create a parametric set by using the Variables and Parameters assistant, the matched parameters in a parametric set are highlighted with yellow, as shown below. March 2015 © 1990-2015 189 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ■ When you move the mouse over any variable in a parametric set, the tooltip shows that the variable is part of a parametric set. ■ You cannot create a parametric set by including a mix of global variables and parameters. Adding a Variable to a Parametric Set To add a variable to an existing parametric set: 1. Right-click on a variable and choose Add to Parametric Set. 2. From the list of existing parametric sets shown in the submenu, select the name of the parametric set to which you want to add the parameter. The variable is added to the specified parametric set. In addition, all the variables are realigned to display all variables or parameters of a group together. March 2015 © 1990-2015 190 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Including a Dependent Variables in a Parametric Set Dependent variables that have the same number of values as that of the other variables are supported in the parametric sets. The following examples show how dependent variables can be used in parametric sets: Example 1: A: 1, 2 B: 7, 8 C: A, B D: 4, 5 In this example, a parametric set that includes variables C and D, is a valid set. This simulation will create 8 design points, as listed below. Design point 1: A1=1, B1= 7, {C1=1, D1=4} Design point 2: A1=1, B1= 7, {C1=7, D1=5} Design point 3: A1=1, B1= 8, {C1=1, D1=4} Design point 4: A1=1, B1= 8, {C1=8, D1=5} Design point 5: A1=2, B1= 7, {C1=2, D1=4} Design point 6: A1=2, B1= 7, {C1=7, D1=5} Design point 7: A1=2, B1= 8, {C1=2, D1=4} Design point 8: A1=2, B1= 8, {C1=8, D1=5} Example 2: A: 1, 2 B: 7 C: A, B D: 4, 5 March 2015 © 1990-2015 191 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters In this example, a parametric set that includes variables C and D, is a valid set. This simulation will create 4 design points, as listed below. Design point 1: A1=1, B1= 7, {C1=1, D1=4} Design point 2: A1=1, B1= 7, {C1=7, D1=5} Design point 3: A1=2, B1= 7, {C1=2, D1=4} Design point 4: A1=2, B1= 7, {C1=7, D1=5} Unsupported Dependent Variables Dependent variables are not supported when: ■ A dependent variable does not have the same number of values as that of the other variables For example: A: 1, 2 B: A C: 3, 4 In this example, A, B, and C cannot make a parametric set because B has only one value whereas A and C have two values. ■ When there is cyclic dependency For example: A: 1, 2 B: A, A C: 3, 4 In this example, A, B, and C cannot make a parametric set because there is cyclic dependency between A and B. Removing a Variable from a Parametric Set To remove a variable from a parametric set: ➡ Right-click on that variable and choose Remove from Parametric Set. March 2015 © 1990-2015 192 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The variable is removed from the parametric set and moved to its original location in the list. Ungrouping Parametric Sets To ungroup the parametric set: ➡ Right-click on any variable name in the group and choose Ungroup Parametric Set. The group is dissolved and the variables are moved back to their original location in the Global Variables or Parameters list. Enabling or Disabling Parametric Sets You can disable or enable all parametric sets present in the Global Variables or Parameters list in the Data View pane. To disable all parametric sets: ➡ In the Parameters list, right-click on Parameters and choose Disable All Parametric Sets. After the parametric sets are disabled, the variables are moved back to their original location in the list. Note: If the parametric sets are disabled, you can enable all the sets together. To do this, right-click on the list name, Global Variables or Parameters and choose Enable All Parametric Sets. All the parametric sets become visible again. Enabling and Disabling Parameters You can enable or disable parameters before starting your simulation. This allows you to specify the set of parameters you want to be used for a particular simulation. To enable a parameter, ➤ In the Parameters tree on the Data View pane or the Parameters tab on the Variables and Parameters pane, select the check box to the left of the parameter. Alternatively, right-click on the parameter and choose Enable/Disable from the context-sensitive menu. To disable a parameter, March 2015 © 1990-2015 193 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters ➤ In the Parameters tree on the Data View pane or the Parameters tab on the Variables and Parameters pane, clear the check box to the left of the parameter. Alternatively, right-click on the parameter and choose Enable/Disable from the context-sensitive menu. Note: When a parameter is disabled, its value given on the Data View pane is not used for simulation, but its definition is retained in the Parameters tree on the Data View pane and the Parameters tab on the Variables and Parameters pane. The value specified for the CDF parameter on the instance will be used for simulation. Tip To enable or disable more than one parameter at a time, select the parameters, right-click and choose Enable/Disable from the context-sensitive menu. To toggle the enabling or disabling of one or more parameters, ➤ On the Parameters tab of the Variables and Parameters pane, select one or more parameters, right-click and choose Toggle Enable/Disable. The enabled parameters are disabled and the disabled parameters are enabled. To disable all parameters, do any of the following: ■ On the Data View pane, clear the check box to the left of Parameters. ■ Right-click on the Parameters tab of the Variables and Parameters pane and choose Enable All/Disable All. Adding Notes for Parameters If you need to save some additional reference information about a device parameters, you can add notes for it. For this, do the following: 1. On the Data tab of the Data View assistant pane, expand the Parameters tree, right-click the parameter for which you want to add notes, and choose Notes. March 2015 © 1990-2015 194 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The Add/Edit Notes form is displayed. 2. In the Notes field, add notes for the device parameter. Note: By default, the notes field can accept only 512 characters. To change the default maximum characters limit, you can set the maxNotesLength environment variable. 3. Click OK. The notes is added to the parameter. This is displayed in the tooltip for the parameter and is saved with the setup state. For related information, see Adding Notes to a Test. Adding or Changing a Parameter Specification To add or change a parameter specification for a global variable you want to vary (sweep), do the following: 1. In the Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane, right-click the global variable for which you want to add or change the specification and choose Edit Variable. Alternatively, double-click on the Value field next to the global variable, then click the browse button. March 2015 © 1990-2015 195 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters The Parameterize form appears. 2. Click Add Specification and choose one of the following from the drop-down menu: ■ Inclusion List of values ■ Exclusion List of values ■ From/To range of values ■ Center/Span values ■ Center/Span% values You can specify a set of values through which you want to sweep your design variable. You can specify a set of values to exclude from your parametric sweep. You can specify a range of values through which you want to sweep your design variable and a method for stepping through that range. You can specify a center value and a span value for varying your design variable. You can specify a center value and a percentage span value for varying your design variable. March 2015 © 1990-2015 196 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying an Inclusion List of Values To specify an inclusion list of values, do the following: 1. From the Add Specification drop-down menu, choose Inclusion List. A row appears on the Parameterize form for defining the specification type you selected. The Inclusion radio button is on. 2. In the Values field, type a list of values you want to include in your sweep. Note: You can separate the values in the list with either a comma or a space. 3. (Optional) Click Add Specification to add another parameter specification. 4. Click OK. The list of values appears in the Value column beginning and ending with the {Inclusion List} text string. Note: You can change an inclusion list of values to an exclusion list (to exclude the list of values from the sweep) by selecting the Exclusion radio button in the row where your inclusion list is specified. See “Specifying an Exclusion List of Values” on page 198. March 2015 © 1990-2015 197 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying an Exclusion List of Values Tip One application of the exclusion list is to define a From/To parameter specification (see “Specifying a Range of Values” on page 199) and exclude some values from the range by defining an exclusion list. To specify an exclusion list of values, do the following: 1. From the Add Specification drop-down menu, choose Exclusion List. A row appears on the Parameterize form for defining the specification type you selected. The Exclusion radio button is on. 2. In the Values field, type a list of values you want to exclude from your sweep. Note: You can separate the values in the list with either a comma or a space. 3. (Optional) Click Add Specification to add another parameter specification. 4. Click OK. The list of values appears in the Value column beginning and ending with the {Exclusion List} text string. Note: You can change an exclusion list of values to an inclusion list (to include the list of values in the sweep) by selecting the Inclusion radio button in the row where your exclusion list is specified. See “Specifying an Inclusion List of Values” on page 197. March 2015 © 1990-2015 198 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying a Range of Values To specify a range of values and how to sweep through those values, do the following: 1. From the Add Specification drop-down menu, choose From/To. A section appears on the Parameterize form for defining the specification type you selected. 2. In the From field, type the starting value for your range. 3. In the To field, type the ending value for your range. 4. From the Step Type drop-down menu, select how you want the simulator to step from one value to the next: Linear Decade Octave Logarithmic Times Linear steps from the From value to the To value Decade steps from the From value to the To value Octave steps from the From value to the To value Logarithmic steps from the From value to the To value Steps taken according to a specified multiplier from the From value to the To value March 2015 © 1990-2015 199 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters 5. Depending on the Step Type you selected, type the remaining value for your parameter specification in the field that appears: Step Type Auto Linear Decade Octave Logarithmic Times Field that appears Total Steps Step Size Steps/Decade Steps/Octave Total Steps Multiplier Value Total number of steps to take Size of steps to take when sweeping How many steps to take per decade How many steps to take per octave Total number of steps to take Multiplier for taking steps Note: Typing 10 for Multiplier is tantamount to selecting Decade and specifying 1 step per decade. 6. (Optional) Click Add Specification to add another parameter specification. 7. Click OK. Note: You can change the specification type from From/To to Center/Span or Center/Span% by selecting a different item from the drop-down menu in the added section. See “Specifying Center and Span” on page 201 and “Specifying Center and Span as a Percentage” on page 203 for more information. March 2015 © 1990-2015 200 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying Center and Span To specify a center value and a span value, do the following: 1. From the Add Specification drop-down menu, choose Center/Span. A section appears on the Parameterize form for defining the specification type you selected. 2. In the Center field, type the center value. 3. In the Span field, type a span value. The simulator can vary your parameter between Center-Span and Center+Span according to the Step Type you select (next). 4. From the Step Type drop-down menu, select how you want the simulator to vary the parameter value: Linear Decade Octave Logarithmic Times Linear steps from Center-Span to Center+Span Decade steps from Center-Span to Center+Span Octave steps from Center-Span to Center+Span Logarithmic steps from Center-Span to Center+Span Steps taken according to a specified multiplier from Center-Span to Center+Span March 2015 © 1990-2015 201 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters 5. Depending on the Step Type you selected, type the remaining value for your parameter specification in the field that appears: Step Type Auto Linear Decade Octave Logarithmic Times Field that appears Total Steps Step Size Steps/Decade Steps/Octave Total Steps Multiplier Value Total number of steps to take Size of steps to take when varying How many steps to take per decade How many steps to take per octave Total number of steps to take Multiplier for taking steps Note: Typing 10 for Multiplier is tantamount to selecting Decade and specifying 1 step per decade. 6. (Optional) Click Add Specification to add another parameter specification. 7. Click OK. Note: You can change the specification type from Center/Span to Center/Span% or From/To by selecting a different item from the drop-down menu in the added section. See “Specifying Center and Span as a Percentage” on page 203 and “Specifying a Range of Values” on page 199 for more information. March 2015 © 1990-2015 202 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Specifying Center and Span as a Percentage To specify a center value and a span percentage, do the following: 1. From the Add Specification drop-down menu, choose Center/Span%. A section appears on the Parameterize form for defining the specification type you selected. 2. In the Center field, type the center value. 3. In the Span field, type a span value. The simulator can vary your parameter between Center – (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) and Center + (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) according to the Step Type you select (next). 4. From the Step Type drop-down menu, select how you want the simulator to vary the parameter value: Linear Decade Linear steps from Center – (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) to Center + (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) Decade steps from Center – (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) to C e nter + (Span% × Center) ---------------------------------1---0---0--------------------------------- March 2015 © 1990-2015 203 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Octave Logarithmic Times Octave steps from Center – (---S------p------a------n-----%------1---0-×--0---C-------e------n-----t----e-----r----) to Center + (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) Logarithmic steps from C en t e r – (Span% × Center) ---------------------------------1---0---0--------------------------------- to Center + (---S------p------a------n-----%-------1---0×---0--C-------e------n------t---e-----r----) Steps taken according to a specified multiplier from C e n t e r – (Span% × Center) ---------------------------------1---0---0--------------------------------- to C e nt er + (Span% × Center) ---------------------------------1---0---0--------------------------------- 5. Depending on the Step Type you selected, type the remaining value for your parameter specification in the field that appears: Step Type Auto Linear Decade Octave Logarithmic Times Field that appears Total Steps Step Size Steps/Decade Steps/Octave Total Steps Multiplier Value Total number of steps to take Size of steps to take when varying How many steps to take per decade How many steps to take per octave Total number of steps to take Multiplier for taking steps Note: Typing 10 for Multiplier is tantamount to selecting Decade and specifying 1 step per decade. 6. (Optional) Click Add Specification to add another parameter specification. 7. Click OK. Note: You can change the specification type from Center/Span% to Center/Span or From/To by selecting a different item from the drop-down menu in the added section. See “Specifying Center and Span” on page 201 and “Specifying a Range of Values” on page 199 for more information. March 2015 © 1990-2015 204 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Deleting a Parameter Specification To delete a parameter specification, do the following: ➤ On the Parameterize form, right-click in the row or section for the parameter specification you want to delete and choose Delete Specification from the context-sensitive menu. (Delete Specification is the only item on this context-sensitive menu.) To delete the last parameter specification listed in the form, do the following: 1. On the Parameterize form, click Delete Spec. The last specification listed in the form is deleted. 2. Click OK. Note: You can delete all but one specification in the form. If you want to delete the only remaining specification in the form, delete the values specified for the specification and click OK. Creating Matched Device Parameters You can create matched parameters for device matching such that one device’s parameters track with another’s. To specify two or more devices to match, do the following: 1. On your schematic, click to add the first device, then Shift+click to add one or more additional devices. As you click, each device and its parameters appear on the upper half of the Parameters tab of the Variables and Parameters assistant pane. 2. On the upper half of the Parameters tab of the Variables and Parameters assistant pane, select (highlight) the device you want to be the primary device against which all other devices are matched. March 2015 © 1990-2015 205 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters 3. Click Match Parameters on the toolbar. The instance name of the primary device for which matched parameters exist appears on the lower half of the Parameters tab of the Variables and Parameters assistant pane. March 2015 © 1990-2015 206 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters 4. (Optional) To view the devices whose parameters are matched to the primary device, click the plus sign to the left of an instance name on the lower half of the Parameters tab. The value of a matched parameter appears in the Value column as follows to indicate the matching relationship: primaryInstName/deviceParam@ For example, in the above figure, the value M9/l@ for instance M10 indicates that the fingers parameter of instance M9 is matched to the l parameter of instance M9 (the primary device). Note that you can also match parameters across different levels of design hierarchy. March 2015 © 1990-2015 207 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters Tip You can also right-click on the lower half of the Parameters tab and choose Expand All to view the devices whose parameters are matched to all primary devices. Right-click and choose Collapse All to collapse the expanded view. For information about using matched device parameters in the context of optimization, see the Virtuoso Analog Design Environment GXL User Guide. Creating Ratio-Matched Device Parameters You can create ratio-matched parameters for device tracking such that one device’s parameters track with the ratio of another’s. To specify two or more devices to ratio-match, do the following: 1. On your schematic, click to add the first device. Next, Shift+click to add each additional device. As you click, each device and its parameters appears in the panel on the upper section of the Parameters tab of the Variables and Parameters assistant pane. Note: You can also create ratio-matched parameters for the devices in different hierarchy levels of the design. For more details, see . 2. Select a device in the upper section on the Parameters tab of the Variables and Parameters assistant pane. 3. Click Ratio Matched Parameters . The ratio-matched parameters are created. A row is created in the lower section of the assistant pane and name of the primary device (that appeared on top in the upper section of this pane) and the parameter name is displayed in that. March 2015 © 1990-2015 208 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters For example, if you selected three devices, M3, M4, and M5, and created a ratio-matched parameter for the parameter length, a new row displaying M3 and l is created, as shown below. March 2015 © 1990-2015 209 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters 4. (Optional) To view the devices whose parameters are ratio-matched to the primary device, click the plus (+) sign to the left of an instance name on the lower half of the Parameters tab. The value of a ratio-matched parameter appears in the Value column as follows to indicate the matching relationship: ratio*primaryInstName/deviceParam@ For example, in the above figure, the value 3.5*M3/l@ for instance M4 indicates that the l parameter of instance M4 is ratio-matched to the l parameter of instance M3 (the primary device). Tip You can also right-click on the lower half of the Parameters tab and choose Expand All to view the devices whose parameters are matched to all primary devices. Right-click and choose Collapse All to collapse the expanded view. March 2015 © 1990-2015 210 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters For information about using ratio-matched device parameters in the context of optimization, see the Virtuoso Analog Design Environment GXL User Guide. Disabling Callbacks on Swept Device Parameters By default, the program executes callbacks on device parameters that you sweep. To disable callbacks on swept device parameters, do the following: ➤ In your .cdsinit file, set the axlExecuteCallbacks variable to nil: axlExecuteCallbacks=nil For more information about callbacks in parameter expressions, see also ■ “Scope of Parameters” in the Virtuoso Analog Design Environment L User Guide ■ “Triggering callbacks” in the “Advice and Warnings” appendix of the Component Description Format User Guide March 2015 © 1990-2015 211 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Design Variables and Instance Parameters March 2015 © 1990-2015 212 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 4 Working with Global Variables Global variables can be used to override the design variable values in the tests without having to modify the value in the test itself. In addition, global variables can be used to sweep the design variable values. This allows you to change the value of global variables so that the simulator will use the value you specified and not the value from the schematic. By default, the design variables defined for your tests are added as global variables in the Global Variables tree on the Data View assistant pane and the Variables tab of the Variables and Parameters assistant pane. For example, in the following figure, the design variables specified for the test named myFirstTest are automatically added as global variables. The design variables are displayed with a strikethrough because the settings for a global variable override the settings of design variables that have the same name as the global variable. March 2015 © 1990-2015 213 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Note: You can disable the default automatic copy of design variables to global variables by setting the autoPromoteVarsToGlobal environment variable to nil. However, after disabling automatic copy of design variables, you can add a global variable with the same name as one of the design variable. For more details, see Creating a Global Variable. When you do this, the design variable for the test is automatically displayed with a strikethrough and the global variable is applied to the test. However, you can choose to disable the global variable for a test. For more details, see Disabling Global Variables for Specific Tests on page 226. For more information, see the following: ■ Creating a Global Variable on page 214 ■ Loading a Set of Global Variables from a File on page 216 ■ Parameterizing Cellviews Defined in the Config View on page 218 ■ Importing Sweep Variables as Global Variables on page 222 ■ Saving Global Variables to an ADE State on page 222 ■ Importing Global Variables from a Saved ADE State on page 223 ■ Enabling and Disabling Global Variables for All Tests on page 224 ■ Disabling Global Variables for Specific Tests on page 226 ■ Creating a Combinatorial Expression on page 235 See also ■ Varying the Model File and Section during Simulation on page 387 Creating a Global Variable To create a new global variable, do the following: March 2015 © 1990-2015 214 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables 1. On the Data View assistant pane or the Variables tab of the Variables and Parameters assistant pane, right-click on Global Variables and choose Add Global Variable. Global Variables tree Global Variables tree Tip Alternatively, click where it says Click to add variable in an expanded Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane. March 2015 © 1990-2015 215 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables The Create Global Variable form appears. 2. In the Variable Name field, type a name for your global variable. The name must begin with a letter or number and can contain only letters and numbers. 3. In the Variable Value field, type the value for your global variable. 4. Click OK. Your global variable appears in the Global Variables tree on the Date View assistant pane and the Variables tab of the Variables and Parameters assistant pane. A global variable setting takes precedence over all other settings for variables that have the same name (such as a design variable with the same name). 5. To define sweep values for this global variable, do one of the following: ❑ Double-click on the Value field next to the global variable and modify the value. ❑ Double-click on the Value field next to the global variable, then click the browse button to define a parameter specification. For more information, see Adding or Changing a Parameter Specification. If you need to save some information about a global variable, you can add notes for it. For this, right-click on the global variable on the Data View pane and click Notes to open the Add/ Edit Notes form. Add notes in the Notes field and click OK. These notes are displayed in the tooltip for the variable and saved in the setup database. For related information, see Adding Notes to a Test. Loading a Set of Global Variables from a File You can load a set of variables that appears in the Global Variables tree on the Date View assistant pane and the Variables tab of the Variables and Parameters assistant pane whenever you add a new test. You can define a distinct set of default variables for each library. You can also define one set of default variables not associated with any library. March 2015 © 1990-2015 216 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables When you open an ADE XL setup, the program loads the set of default variables associated with the same library as the setup (if it exists). After that, it loads the set of default variables not associated with any library (if it exists). To create and load a set of global variables, do the following: 1. Create a file containing exactly one axlSetDefaultVariables SKILL function call for each set of global variables you want to define. (For example, adexlGlobals.il.) ❑ For global variables particular to a library, one call to the function for each library: axlSetDefaultVariables( '(global1 value1 global2 value2) "libName" ) For example: axlSetDefaultVariables( '(_n_len 1u _sim_time 100n) "demoLib" ) ❑ For global variables not for a particular library, exactly one call to the function: axlSetDefaultVariables( '(global1 value1 global2 value2) ) For example: axlSetDefaultVariables( '(_n_len 1u _sim_time 100n) ) 2. You can load the file into the CIW using the load command. For example: load("adexlGlobals.il") Tip You can put this load command in your .cdsinit file so that the program loads it every time you run the software. If your file contains more than one call for a library or more than one call that does not name a library, the last call takes precedence such that the program loads only those global variables that you defined in each of the last of these calls. March 2015 © 1990-2015 217 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Parameterizing Cellviews Defined in the Config View By default, the setup options defined in the ADE XL environment are applied to the cellview specified in the ADE XL tests. At times, you might need to run simulations for different views of a cell in the design using the same simulation setup. You can do this by sweeping the cellviews, including the parasitic views (estimated or extracted views), defined in the config view of that cell. Important This feature is currently supported only for the Single Run, Sweeps and Corners and Monte Carlo Sampling run modes. Prerequisites to sweep the config view of a cell: ■ The design in the ADE XL test must be the config view ■ More than one view should be present in the config view for the cell you want to sweep ■ The Parasitic Mode on the Parasitic Mode toolbar is set to No Parasitics/LDE To sweep the view for a cell, you need to define a global variable prefixed with CONFIG. The value of this global variable is a list of view names from the config view. These view names are swept during simulation. The following sections describe how to create config sweep variables or import config sweeps from the parasitic setup, and how to view these variables on the Run Preview tab or the simulation results: ■ Creating Config Sweep Variables ■ Importing Config Sweeps from the Parasitic Setup ■ Viewing Config Sweep Variables in Run Preview ■ Viewing Config Sweeps in the Simulation Results Creating Config Sweep Variables To create config sweep variables, perform the following steps: 1. Right-click on Global Variables on the Data View pane and choose Add Config Sweeps. March 2015 © 1990-2015 218 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables The Add/Edit Config Sweep form is displayed, as shown below. 2. In the Cell Name drop-down list, select the cell name for which you need to sweep the config views. Note: The cell should not be a top-level cell in the design hierarchy. 3. In the View Name List field, specify the names of the views to be swept. Note: Ensure that the views specified in this list exist for the given cell. Otherwise, while running simulations, ADE XL will ignore the view names that are not found. 4. Click OK to close the form. A config sweep variable is created and added to the Global Variables list on the Data View pane. The newly added config sweep variable is selected by default. Important Alternatively, you can create CONFIG variables by adding a global variable using the Click to add variable command in the Global Variables list on the Data View pane. Specify a variable name and value in the Create Gobal Variable form. Ensure that the variable name is in the CONFIG// format and the value is a list of view names. Importing Config Sweeps from the Parasitic Setup If the parasitic setup already uses the estimated, netlist_layout, or extracted views, you can directly import those to create a config sweep variable. For this, right-click on Global Variables and choose Import Config Sweeps from Parasitic Setup. A config sweep variable is created and added to the existing list of global variables. The name of the variable is CONFIG//, where the library and cell are March 2015 © 1990-2015 219 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables the same as in the parasitic setup. The value of this variable contains a list of all the views referred in the parasitic setup, as shown below. Viewing Config Sweep Variables in Run Preview If config sweep variables are added to the setup, the Run Preview tab for the Single Run, Sweeps and Corners run mode shows the swept values in a column for the corresponding global variable, as shown below. March 2015 © 1990-2015 Swept view names in the config sweep variable 220 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Viewing Config Sweeps in the Simulation Results Similar to the other parameterized variables, config sweep variables are also shown in the gray colored rows on the Results tab, as shown below. Important Points to Note ■ An ADE XL simulation can use only one config sweep variable. Therefore, all config sweep variables except the selected one should be disabled before running simulations. ■ You can create a parametric set containing more than one config sweep variables. ■ You can use config sweep variables to define corners, as shown below. March 2015 © 1990-2015 221 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables ■ When config sweep variables are used, ADE XL simulations do not consider the ignoreDesignChangesDuringRun and singleNetlistForAllPoints environment variables. If a simulation is already running and you make any changes in the design, the changes are considered for the simulation in progress. Also, a separate netlist is created for every data point. ■ By default, the config information is saved in the netlist directory for every data point. This is because the moveConfigsToNetlistDir environment variable is set to t. If, for debugging purposes, you want to save the config information for every point in the // directory structure, you can set this variable to nil. This will show the generated config in Virtuoso Hierarchy Editor. Importing Sweep Variables as Global Variables You can save the sweep settings you specified in the Parametric Analysis tool in the Virtuoso Analog Design Environment L (ADE L) in a file. You can then import the sweep variables in the file as global variables. For more information about parametric analysis in ADE L, see the Virtuoso Analog Design Environment L User Guide. To import sweep variables as global variables, do the following: 1. On the Data View pane or the Variables tab of the Variables and Parameters pane, right-click a global variable and choose Import Sweep. The Choose Parametric State File to Import form appears. 2. Select the file containing the sweep settings you saved in the Parametric Analysis tool in ADE L and click Open. The sweep variables in the file are displayed as global variables in the Global Variables tree on the Data View assistant pane and the Variables tab of the Variables and Parameters assistant pane. Saving Global Variables to an ADE State You can save the global variables and parameters from the Variables and Parameters assistant to an ADE state. To save the variables and parameters, do the following: March 2015 © 1990-2015 222 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables 1. After setting the variables and parameters and their values in the Variables and Parameters assistant, specify a name for the new ADE state in the Setup State field, as shown below. 2. Click Save Variables and Parameters ( ) to save the setup state. Importing Global Variables from a Saved ADE State To import global variables and parameters along with their setup information from a saved state by using the Variables and Parameters assistant, do the following: 1. From the Setup State list, select name of the state from which you want to import the details. 2. Click Load Variables and Parameters ( ). All the variables and parameters are loaded from the given ADE state and displayed in their respective tabs. Note that all the global variables and parameters are overwritten. Comparing Variables and Parameters of a Setup State with the Active State Before loading the global variables from a saved state, you can also choose to compare the variables and parameters with the currently active state. To do this, select name of a state from the Setup State list and click Compare Setup State with Active Setup ( ). The comparison is displayed in the Compare Setup State with Active Setup form, as shown below. March 2015 © 1990-2015 223 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables The variables and parameters that have different values in the two setups are highlighted in yellow. Click OK to close the form. You can also import the global variables and parameters by using the Loading State form. For more details, see Loading State Information. Enabling and Disabling Global Variables for All Tests You can enable or disable global variables before starting your simulation. This allows you to specify the set of global variables you want to be swept for a particular simulation. To enable a global variable for all tests, ➤ In the Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane, select the check box to the left of the variable. Alternatively, right-click on the variable and choose Enable/Disable from the context-sensitive menu. To disable a global variable for all tests, March 2015 © 1990-2015 224 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables ➤ In the Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane, clear the check box to the left of the variable. Alternatively, right-click on the variable and choose Enable/Disable from the context-sensitive menu. When a global variable is disabled, its value will not be used for simulation but its definition is retained in the Global Variables tree on the Data View pane and the Variables tab of the Variables and Parameters pane. The value of the design variable (specified for a test) that has the same name as the global variable will be used for the simulation. The strikethrough no longer appears for the design variable value in the test tree. For example, in the following figure, the value of design variable vin_ac specified for the tests named myFirstTest and mySecondTest will be used because the global variable vin_ac is disabled. To toggle the enabling or disabling of more than one global variable, March 2015 © 1990-2015 225 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables ➤ In the Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane, select the variables, right-click and choose Enable/Disable from the context-sensitive menu. The enabled variables are disabled and the disabled variables are enabled. When all global variables are disabled, global variable values will not be used for simulation but their definition is retained in the Global Variables tree on the Data View pane and the Variables tab of the Variables and Parameters pane. The value of design variables (specified for tests) that have the same name as the global variable will be used for the simulation. Disabling Global Variables for Specific Tests By default, global variables are swept over all the tests that are enabled in the Data View pane. You can disable a global variable for specific tests if you do not want to sweep the global variable over those tests. If a global variable is disabled for a test, the value of the design variable (specified for the test) that has the same name as the global variable will be used for simulation and for that you can specify only a single value. You can disable a design variable for a test in any of the following ways: ■ Using the Variables and Parameters assistant ■ Using the Data View assistant Disabling a Global Variable for a Test using the Variables and Parameters Assistant To disable global variables using the Variables and Parameters assistant pane. 1. Click the Variables tab of the Variables and Parameters pane. March 2015 © 1990-2015 226 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables The Variables tab displays the list of global variables as shown below: 2. Click the plus sign to the left of the global variable name to view the names of tests over which the global variable will be swept during simulation. For example, the following figure indicates that the values 45u, 50u and 55u specified for global variable iref will be swept over the tests named myFirstTest and mySecondTest. In this example, the myFirstTest and mySecondTest tests have a design variable named iref with the value 50u. The test names and values are displayed with a strikethrough because the global variable iref overrides the design variable iref. 3. In the Value column, select the check box next to the name of the test for which you want to disable the global variable. The global variable is disabled for the test. For example, in the following figure, the global variable iref is disabled for the test named myFirstTest. Because of this, the value March 2015 © 1990-2015 227 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables 50u will be used for the test during simulation. The global variable will be swept only for the test named mySecondTest. Also see: ■ Hiding Overridden Design Variables for a Test on page 149 ■ How Results are Displayed When A Global Variable is Disabled for a Test? on page 231 March 2015 © 1990-2015 228 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Disabling a Global Variable for a Test using the Data View Assistant You can disable a global variable for a test using the Data View assistant also, as shown in the following figure: Note that the global variable iref is using the value specified for the test myFirstTest instead of using the sweep points specified for the global variable. The settings made using the Data View assistant are also reflected in the Variables and Parameters assistant and vice-versa. March 2015 © 1990-2015 229 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables In the Data View pane, if you place the mouse pointer on the global variable that is disabled for a test, a tooltip is displayed containing the text (local override), as shown in the following figure: Also see: ■ Hiding Overridden Design Variables for a Test on page 149 ■ How Results are Displayed When A Global Variable is Disabled for a Test? on page 231 March 2015 © 1990-2015 230 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables How Results are Displayed When A Global Variable is Disabled for a Test? The Results tab displays the simulation results parameter-wise. Each unique combination of the parameter values is displayed on a parameter header for a design point. If a global sweep variable is disabled for a test, its simulation is run only for the local value of that variable, which is the value set for its design variable with the same name. For the other tests, the simulation is run for each sweep value specified for the global variable. Consider the following example where the ADE XL setup has two tests, ACGainBW and PSR. The IREF global variable has two sweep values, 45u and 55u, and it is disabled for the test ACGainBW, which uses a local value 40u. The Data View assistant given below shows how the variables are set. March 2015 © 1990-2015 231 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables In this case, the results are displayed as shown in the figure below. Note the following points: ■ Two design points have been generated. For the first point, the value of IREF used by ACGainBW is 40u (local), whereas the value used by PSR is 45u (global). ■ For the second design point, the simulation is run only for PSR with the value of IREF set to 55u (global). The rows for ACGainBW are hidden for this design point. ■ When a variable is disabled for a particular test, the Parameters headers (the gray rows marking the design points) contain the text (various). When you move the pointer on a header, a tooltip displays the values used for the design point. ■ If you apply a filter to show only a selected set of tests, the parameter header rows are modified accordingly to show the variable values. For example, in the Results tab shown above, if you apply a filter to hide the results for ACGainBW, the parameter header rows March 2015 © 1990-2015 232 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables are updated automatically to show the value of IREF being used by PSR only. The text (various) is also removed, as shown in the figure below. ■ The spec summary and spec comparison generated using the results of tests that have disabled global variables show all the values used by different outputs. For example, the spec summary for the example given above shows all the variable conditions used for each output. For details on how to generate Spec Summary and Spec Comparison, refer to Working with Specifications on page 745. March 2015 © 1990-2015 233 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Updating Global Variable Values with Design Variable Values To update the value of a global variable with that of a corresponding design variable, do the following: ➡ In an expanded test tree on the Data View pane or on the Variables tab of the Variables and Parameters pane, right-click a design variable and choose Create/Update Global. The value of the global variable that has the same name as the design variable is updated. Updating Design Variable Values with Global Variable Values To update the value of a test’s design variable with that of the corresponding global variable, do the following: ➡ In the Global Variables tree on the Data View pane or the Variables tab of the Variables and Parameters pane, right-click a variable, choose Backannotate to Test and do one of the following: Choose All Testname To Update the values of design variables that have the same name as the global variable in all the tests. Update the value of a design variable that has the same name as the global variable in the selected test. Note: If a design variable with the same name does not exist for the test, the design variable is automatically added for the test. Note: You cannot update a design variable whose corresponding global variable has a sweep value. March 2015 © 1990-2015 234 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables Creating a Combinatorial Expression A combinatorial expression is one created using more than one output from one or more tests. For example, you might want to create an expression such as Test1_Output1/Test2_Output2 You can create combinatorial expressions as values for a global variable. To create a combinatorial expression such as the one above, do the following: 1. On the Variables tab of the Variables and Parameters pane, right-click a test name and choose Add Variable. The Editing Design Variables form appears. 2. In the Name field, type a name for the variable (such as Out1DivOut2). 3. On the Outputs Setup tab, drag an output from any test and drop it in the Value (Expr) field on the Editing Design Variables form. 4. Type / at the end of the string in the Value (Expr) field. 5. On the Outputs Setup tab, drag another output from another test and drop it at the end of the expression in the Value (Expr) field on the Editing Design Variables form. 6. Click OK. The new variable appears in the Global Variables tree on the Data View pane and the Variables tab of the Variables and Parameters pane. The expression uses the calcVal function. March 2015 © 1990-2015 235 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Global Variables March 2015 © 1990-2015 236 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 5 Working with Constraints ADE XL supports the matched parameter and correlation constraints you specify in Virtuoso Constraint Manager. ■ ADE XL creates parameters for the matched parameter constraints specified in Constraint Manager. These parameters are displayed on the Data View and the Parameters tab on the Variables and Parameters assistant panes. For more information about working with parameters created for matched parameter constraints, see Working with Parameters Created for Matched Parameter Constraints on page 238. ■ Correlation constraints are used for Monte Carlo analysis. Correlation constraints are not displayed on the Data View or the Variables tab of the Variables and Parameters assistant panes—they are written to the netlist when you run a Monte Carlo analysis. For more information about Monte Carlo analysis, see Chapter 7, “Performing Monte Carlo Analysis.” For more information, see the following topics: ■ Adding, Modifying, and Deleting Constraints on page 238 ■ Working with Parameters Created for Matched Parameter Constraints on page 238 March 2015 © 1990-2015 237 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Constraints Adding, Modifying, and Deleting Constraints To add, modify or delete matched parameter and correlation constraints in Constraint Manager, do the following: 1. On the Data View assistant pane, right-click a test and choose Open Design in Tab. The schematic design associated with the test appears on a new tab in your session window. 2. Choose Window – Assistants – Constraint Manager. The Constraint Manager pane appears. 3. Add, modify or delete matched parameter and correlation constraints. For more information about using Constraint Manager, see the Virtuoso Unified Custom Constraints User Guide. 4. Click the Save button in Constraint Manager. 5. Click the Check and Save button in the Schematic editor. Working with Parameters Created for Matched Parameter Constraints When you launch ADE XL, parameters are automatically created for the matched parameter constraints specified in Constraint Manager. These parameters are displayed in the Parameters tree on the Data View pane and the Variables tab of the Variables and Parameters assistant pane. March 2015 © 1990-2015 238 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Constraints Figure 5-1 Matched Parameter Constraint Defined in Constraint Manager Figure 5-2 Corresponding Parameters in ADE XL for Matched Parameter Constraints Parameter for master device Parameter for member device (displayed in light grey color) March 2015 239 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Constraints Note the following: ■ In the Parameters tab on the Variables and Parameters assistant pane, you cannot modify or delete the matched parameter constraints that are created by Constraint Manager. ■ If you make changes to matched parameter constraints in Constraint Manager while ADE XL is running, the changes are automatically reflected in ADE XL. For example, if you modify a matched parameter constraint in Constraint Manager while ADE XL is running, the corresponding parameters in ADE XL are also automatically modified. Resolving Mismatch Between Matched Parameter Constraints and their Corresponding Parameters When you launch ADE XL, or restore a history item in ADE XL, ADE XL checks if there is any mismatch between the matched parameter constraints in Constraint Manager and their corresponding parameters in ADE XL. The following message is displayed for each mismatch: Do one of the following: ■ Click Yes to update the parameter based on the corresponding matched parameter constraint. ■ Click No to ignore the mismatch and mark the corresponding matched parameter constraint as impossible in Constraint Manager. ■ Click Yes to All to update all mismatched parameters based on their corresponding matched parameter constraints. ■ Click No to All to ignore all the instances where there is a mismatch and mark the corresponding matched parameter constraints as impossible in Constraint Manager. March 2015 © 1990-2015 240 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 6 Simulating Corners A corner is a combination of variables or process models that define a scenario in which you want to measure the performance of your design. In ADE XL, you can create corners using the Corners Setup form where you can vary the values for temperature, parameters, design variables, and model files from any test. You can then run the corners for one or more tests and measure how the tests perform in these varying conditions. If the corner settings are already available in pre-defined files, you can also load and use them to create corners. This chapter describes the Corners Setup form and the procedures to create and use corners in ADE XL. See the following topics for more details: ■ Opening the Corners Setup Form on page 242 ■ Adding Corners on page 246 ■ Modifying Corner Values on page 259 ■ Working with Corners on page 261 ■ Working with Corner Groups on page 279 ■ Simulating Corner on page 284 Video You can view video demonstration for this feature at Using the New Corners Setup Form in ADE XL. March 2015 © 1990-2015 241 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Opening the Corners Setup Form You can add or remove corners or modify corner settings by using the Corners Setup form. To open the Corners Setup form, do one of the following: ■ Choose Create – Corners. ■ On the Create toolbar, click . ■ In the Data View pane, expand Corners and click where it says Click to add corner. March 2015 © 1990-2015 242 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The Corners Setup form is displayed. Toolbar Corner name/ variable editing field Corners definition area Note: Each corner is added as a new column on this form. By default, the table contains a default corner, named Nominal. This is the nominal corner and runs without varying the corners variables. The Corner Setup form contains: ■ A toolbar that provides the following commands: Toolbar button Description Loads corners from a setup database file Imports corners from a Process Customization Files (PCF) or Design Customization Files (DCF). Saves corners to the active setup Imports corners from an external file Moves the selected text to the clipboard March 2015 © 1990-2015 243 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Copies the selected text to the clipboard Pastes the copied text from the clipboard Creates a new corner Deletes the currently active corner Expands a corner group Creates a corner group Sets a sweep value for the variable being edited Adds or edits a model file Adds or edits a model group ■ The variable editing text field: In this field, you can edit values for corner variables. The label to the left of this field changes dynamically to show the name of the corner and the variable that you are currently editing. For example, if you click in a cell that defines temperature for corner C2, the label for this field is shown as C2/Temperature, as shown in the following figure. ■ Corner definition area: Displays the corner definitions in a tabular format. The first column in the table lists the variables organized into various groups. Each subsequent column contains the definition of a corner where you can edit the values corresponding to these variables. When you add a corner, a new column is created for it. The top row in the table displays the corner names. You can add variables to a corner definition by clicking where it says Click to add. You will learn more about this in the following sections. ■ Context-sensitive menu: The most frequently-used commands for corners are available in the context-sensitive menu of the Corners Setup form. When you right-click in a corner column, the following context-sensitive menu is displayed: March 2015 © 1990-2015 244 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners For more details about how to add a corner or specify variables, refer to the following sections. March 2015 © 1990-2015 245 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Adding Corners You can add a corner to define the conditions under which you want to check a design of your tests. To add a new corner, in the Corners Setup form, click Add new corner on the toolbar. A new column is added in the Corners Setup form, as shown in the following figure. Corner name New Corners are, by default, applied to all the tests By default, the corners are named sequentially, prefixed with C, such as C1, C2, and so on. You can change the names, if required. After adding a new corner, specify values for the variables that define the corner conditions. Note: In a corner column, all the text fields, for example, Temperature or a design variable, are by default edited in the append mode. When you click on a field and type a value, it is appended to the already existing value, if any. To replace the existing value, select and delete it and enter a new value. March 2015 © 1990-2015 246 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Note: If you have saved a set of default corners in a .sdb file that you want to be used for an adexl view, set the defaultCorners environment variable to that file path. If no other corners are defined for the adexl view, corner definitions from the given file are loaded into the corners setup. You can specify one or more of the following settings for a particular corner: ■ Specify temperature ■ Add design variables ■ Add parameters ■ Add model files ■ Specify sections of model files ■ Add model groups Important In addition to these corners, you can also create statistical corners based on the results for a corner in a Monte Carlo sample. To know more about what statistical corners are and how to create these corners from the Monte Carlo results, refer to Managing Monte Carlo Results in the Yield View. In addition, you may want to refer to the following sections to know how to perform the various tasks related to corners: ■ Modifying Corner Values on page 259 ■ Renaming a Corner on page 261 ■ Disabling and Enabling Corners on page 262 ■ Viewing Corner Settings on page 268 ■ Copying Corners on page 268 ■ Exporting Corners on page 269 ■ Importing Corners on page 271 ■ Importing Corners from Customization Files on page 275 ■ Setting Up a Default Set of Corners on page 277 ■ Creating a Corner Group on page 279 March 2015 © 1990-2015 247 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Specifying Temperature To specify the temperature for a corner, do the following in the column for that corner: ➡ Click the cell next to the Temperature label and type a value. Note: You cannot specify a value if a parameter or variable named temperature is specified in your ADE XL test setup. Return to adding corners procedure. Specifying Values for Design Variables and Parameters To specify the value for a design variable for a corner, do the following in the column for that corner: 1. Under Design Variables, click Click to add. A drop-down list with all the global variables is displayed. List with all the global variables 2. From this list, select the name of the variable that you want to add to the corner. 3. To specify the value for this variable, click in the cell corresponding to this variable in the column that contains the corner definition. Observe the following changes: ❑ The cell that you clicked is highlighted. ❑ The label for the corner name/variable editing field changes to /. ❑ A new blank row, the label for which reads Click to add, is added below the variable you just created. March 2015 © 1990-2015 248 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners For example, when you select the vdd variable from the list, you will see the changes highlighted in the following figure. Updated label name Selected variable Highlighted cell 4. Specify value for the variable in the corner name/variable editing field. You can either specify a single value, a space- or comma-separated set of sweep points, or a range of values in the startValue:increment:stopValue format. If you specify a long list of sweep points for a variable, the tool automatically expands the text field up to the right margin of the form so that all the values can be viewed while editing, as shown in the following figure. Note: When you specify sweep points for a variable, the number of corners are calculated based on the number of sweep points for all the variables, parameters, or model files specified for that corner. For example, if for a corner, two variables have two sweep points each, the total number of corners is four. To see the setup for each corner, click on the toolbar. Important By default, before running a simulation, ADE XL does not match the design variables in the Corners Setup form with the list of global variables in the active setup. If the setup for corners uses any design variable that is not present in the active ADE XL setup, a redundant simulation is run for that variable. To ensure that any design March 2015 © 1990-2015 249 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners variable that does not exist in the ADE XL setup is reported as an error before running a simulation, set the showErrorForNonExistingVariables environment variable to t. Return to adding corners procedure. Specifying Values for Parameters For a corner, you can specify parameters in the same way as you specify variables. When you click Click to add under Parameters, a drop-down list that contains the names of all the CPF parameters created for the cells or instances used in the tests is displayed. Select the required parameter from this list and specify a value for the parameter. Return to adding corners procedure. Adding Model Files to a Corner For each model file you want to add as a corner, do the following in the Corners Setup form: 1. In the Corners Setup form, do one of the following: ❑ On the toolbar, click . ❑ Under Model Files, click where it says Click to add. March 2015 © 1990-2015 250 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The Add/Edit Model Files form is displayed. Note: If you have enabled MTS, Test and Block columns also appear in the form. For more details about MTS, refer to Virtuoso Analog Design Environment GXL User Guide. 2. In the Model Files group box, do one of the following to add model files: ❑ Click Click to add and type the path to and name of a model file. ❑ Click the browse button to select a model file. ❑ Click Import from Tests to import model files from the tests in your setup. March 2015 © 1990-2015 251 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners All the model files specified for tests in your setup are displayed in the form. For more information about specifying model files for tests, see Specifying Model Libraries. In addition to selecting the model files to be used for a corner, you can also do the following in the Add/Edit Model Files form: ❍ Modify the search order that the simulator uses to find simulation models in the model files: By default, the simulator searches for models in the model files in the order in which they are listed in the Corners Setup form. The simulator uses the first simulation model it finds with the matching name. To modify the search order, select the model file and click Up or Down. The selected model file moves up or down in the list. ❍ Edit a model file: Select the model file you want to edit and click Edit. The model file is displayed in a text editor. Make the changes you want to make. Save your changes and close the text editor. ❍ Remove a model file from the list: Select the model file and click Delete. 3. Click OK. March 2015 © 1990-2015 252 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The model file name is displayed in the Corners Setup form. 4. In the column for a corner, select the check box in the cell corresponding to the model file to add it to the corner. If required, you can specify a selected set of sections of the model file. For more details on how to specify sections for a model file, refer to Specifying Sections for Model Files. Important If you have imported model files from a test, the tool does not import the corresponding section names to be used. In this case, while running the corner simulation for a test, the tool considers those sections of the model file that are specified for the test. However, if required, you can specify a different set of section names. Return to adding corners procedure. Specifying Sections for Model Files When you specify a model file for a corner, in the column for that corner, the cell corresponding to a model file shows a default text
. This implies that the corner uses all the sections defined in the specified model file. If required, you can specify a selected set of sections of the model file that you want to use for the corner. To specify sections, double-click in the model file cell for the corner. A drop-down list that contains the names of all the sections defined in the file is displayed. Select a section that you want to include in the corner. You can also select more than one section by selecting the March 2015 © 1990-2015 253 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners required sections one by one. Each section that you select is displayed in a space-separated list, as shown in the following figure. Note the following: ■ If you do not have the read permission for the model file, the section names will not be displayed in the drop-down list. ■ If the same model file is specified in the Model Library Setup form for more than one test, but different sections are specified for each test, only the sections that are common to all the tests that are enabled in the Data View pane will be displayed in the drop-down list. For more information about specifying model files for tests, see Specifying Model Libraries on page 106. ■ If you know the section names, you can directly edit the field and enter the names. However, if the specified section name does not exist in the corresponding model file, simulation for the corner would fail. To avoid this, you can set the LimitModelSections environment variable to InModelFile to specify that if the section name does not exist in the model file, the tool should display an error message in the Corners Setup form. Return to adding corners procedure. See also ■ Varying the Model File and Section during Simulation on page 387. Adding a Model Group to a Corner To add one or more model groups to a corner, do the following in the Corners Setup form: 1. In the column for a corner, double-click where it says . A drop-down list with all the available model groups is displayed in this cell. 2. Select one by one all the model groups that you want to add to the corner. March 2015 © 1990-2015 254 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Each model group that you select is displayed in a space-separated list in the column for the corner. Note: For every model group that you add, a separate corner simulation will run. See also ■ Creating a Model Group on page 255 ■ Saving and Loading Model Groups on page 257 Return to adding corners procedure. Creating a Model Group A model group contains model files that you can use when simulating a corner. For each model file in the group, you can also specify selected sections to be used. To create a model group, do the following in the Corners Setup form: 1. Do one of the following: ❑ Click the Add/Edit Model Group(s) button. ❑ Under Model Group(s), click where it says Click to add. March 2015 © 1990-2015 255 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The Add/Edit Model Groups form is displayed. 2. In the Model Groups field, type a name for the model group. 3. Click the Add/Update button. 4. Add one or more model files to the model group in one of the following ways: ❑ In the Model column of the Model Files table, click Click to add and type a valid path to a model file. ❑ In the Model Files table, click the browse button to open the Choose Model File form. Browse to select a model file and click Open. ❑ Click Import from Tests. Model files are imported from all the tests and are displayed in the Model Files table. By default, the files appear enabled. You can disable a model file in a model group by deselecting the check box to the left of the model file. 5. (Optional) By default, the simulator searches for models in all the sections of a model file. If required, you can specify one or more sections from each model file by double-clicking in the Section column and selecting the required sections from the drop-down list that is displayed. 6. Click OK. March 2015 © 1990-2015 256 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners In addition to creating a model group, you can also do the following using the Add/Edit Model Groups form: ■ Remove a model file from the model group: Select the model file in the Model Files table and click Delete. ■ Edit a model file: Select the model file in the Model Files table and click Edit. ■ Modify the search order for the model files: Select the model file in the Model Files table and click Up or Down. ■ Create a new model group from an existing model group: You can do this by performing the following steps in the Add/Edit Model Groups form: a. In the Model Groups field, select an existing model group from the drop-down list. Model files in that model group appear in the Model Files table. b. If required, make the changes you want for the new model group. You can add or remove model files or their sections. You can also edit a file or change the search order. c. In the Model Groups field, type a new name for the model group. d. Click Add/Update. A new model group is created with the name that you specified and this name is also added to model groups drop-down list in the Corners Setup form. Saving and Loading Model Groups You can save the model group information in the Add/Edit Model Groups form to a file and use the file later to load the model group information in the same or a different ADE XL view. Saving a Model Group To save model group information, perform the following steps: 1. Click Save. The Save Model Groups form is displayed. 2. Browse to locate the folder in which to save the file and type a name for the file in the File name field. 3. Click Save. The model group information is saved in the XML format. The file has the .sdb extension. March 2015 © 1990-2015 257 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Loading a Model Group To load model group information from a previously saved file, perform the following steps: 1. Click Load. The Load Model Groups form is displayed. 2. Browse to locate the required model group information file. 3. Click Open. The model group information is displayed in the Add/Edit Model Groups form. Return to adding corners procedure. March 2015 © 1990-2015 258 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Modifying Corner Values After you add corners, you can modify values for individual corners in the Corners Setup form. To edit the values of design variables or parameters, select the cell to display its value in the variable editing text field. You can edit the value in this field. Alternatively, double-click in the cell containing that value and edit the value there. In addition, to editing values, you can also do any the following to modify a corner: ➡ You can enable/disable a model for a corner: For this, select/deselect the check box next to the model name in the column for the corner. ➡ You can enable/disable a corner for a test: For this, select/deselect the check box next to the test name in the column for the corner. ➡ You can enable/disable all corners for a test: For this, select/deselect the check box to the left of the test name. ➡ You can remove a design variable, parameter, or model file from the Corners Setup form. For this, select one or more items that you want to remove, right-click and choose Remove. Important If the Corners Setup form is already open and you change the corner or test details in the setup database, the changes are automatically updated in this form if the autoCornerUpdate environment variable is set to t. Also see: ■ Disabling and Enabling One or More Corners for All Tests on page 263 March 2015 © 1990-2015 259 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners ■ Disabling and Enabling One or More Tests for One or More Corners on page 264 ■ Viewing Disabled Corners in the Results Tab on page 264 March 2015 © 1990-2015 260 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Working with Corners This section describes the various tasks that you can perform while working with the corners: ■ Renaming a Corner on page 261 ■ Adding Notes to a Corner on page 261 ■ Disabling and Enabling Corners on page 262 ■ Changing the Order of Corners on page 266 ■ Removing Corners on page 267 ■ Viewing Corner Settings on page 268 ■ Copying Corners on page 268 ■ Exporting Corners on page 269 ■ Importing Corners on page 271 ■ Importing Corners from Customization Files on page 275 ■ Setting Up a Default Set of Corners on page 277 Renaming a Corner By default, the program names corners as C1, C2, and so on. To change the default name of a corner, do any of the following: ➡ On the Data View pane, right-click the corner name and choose Rename. The name of the corner becomes editable. Change the name of the corner and press Enter. ➡ In the Corners Setup form, select the name of the corner. The name of the corner is displayed in Corner Name text field. Change the name of the corner and press Enter. Adding Notes to a Corner If you have some additional information or notes to be added to the corners so that it can be referred to later, you can add notes for each individual corner. To add notes for a corner, do the following on the Data View pane or in the Corners Setup form: 1. Right-click the corner name and choose Notes. March 2015 © 1990-2015 261 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The Add/Edit Notes form is displayed. 2. In the Notes field, add notes for the test. 3. Click OK. The notes are saved in the setup database and displayed in the tooltip for the corner. For related information, see Adding Notes to a Test. Disabling and Enabling Corners By default, a corner is enabled to run for all the tests in the current ADE XL setup. You can selectively disable and enable the nominal corner, one or more corners for one or more tests, or all corners. ■ Disabling and Enabling the Nominal Corner on page 263 ■ Disabling and Enabling All Corners for Specific Tests on page 263 ■ Disabling and Enabling One or More Corners for All Tests on page 263 ■ Disabling and Enabling One or More Tests for One or More Corners on page 264 ■ Disabling and Enabling All Corners on page 265 March 2015 © 1990-2015 262 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Disabling and Enabling the Nominal Corner To disable/ enable the nominal corner simulation for specific tests, deselect/select the check box next to a test name in the column for the nominal corner. To disable the nominal corner simulation for all tests, do one of the following: ➡ On the Run Summary assistant pane, deselect the Nominal Corner check box. ➡ In the Corners Setup form, deselect the Nominal check box. ➡ In the Corners tree on the Data View pane, deselect the Nominal check box. Similarly, to enable the nominal corner simulation for all tests, select the Nominal check box at any of the three locations listed above. Disabling and Enabling All Corners for Specific Tests To disable all corners for a test, do the following in the Corners Setup form: ➤ Right-click on a test name and choose Disable Corners on Test. The check boxes for all the corners for the test are selected. The simulator does not run the corner simulations for the test. To enable all corners for a test, right-click on a test name and choose Enable Corners on Test. Disabling and Enabling One or More Corners for All Tests To disable one or more corners for all tests, do the following in the Corners Setup form: 1. Select a corner. 2. (Optional) Hold down the Shift key (for contiguous corners) or the Ctrl key (for noncontiguous corners) and click the next corner to add more corners to the selection set. 3. Right-click the name of a corner and choose Disable. The check boxes next to the names of all corners in the selection set are deselected. The simulator does not run those corner simulations. To enable one or more corners for all tests, select the name of the corners as described above, and then right-click the name of a selected corner and choose Enable. March 2015 © 1990-2015 263 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Disabling and Enabling One or More Tests for One or More Corners To disable one or more tests for one or more corners, do the following: ➡ In the Corners Setup form, deselect the check box next to the name of the test in the column for a corner. To disable a test for multiple corners, select all the required corners and deselect the check box next to the name of the test for one corner. The check boxes for all the tests in the selection set are deselected. The simulator does not run corner simulations for these tests. To enable one or more tests for one or more corners, select all the required corners and select the check box next to the name of the test for one corner. The program selects the check boxes for all the tests in the selection set. The simulator runs corner simulations for these tests. Viewing Disabled Corners in the Results Tab When a corner is disabled for a test, the Results tab shows disabled in the cells corresponding to that corner-test combination, as shown in the figure below. Results in the above example show that corner C1 is disabled for the test ACGain and corner C0 is disabled for PSR. If you hide or filter out the results for either one of these two tests, the March 2015 © 1990-2015 264 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners columns for the corners that are disabled for the other test are automatically hidden. The following figure shows how the results appear when the PSR test is hidden. Note that the three columns for corner C1 are now hidden because that corner is disabled for ACGain. Also see: Hiding and Showing Results for Tests Disabling and Enabling All Corners To disable all corners, do one of the following: ■ In the Run Summary assistant pane, clear the # Corners check box (where # indicates the number of enabled corners). The Nominal Corner check box also becomes unavailable. The simulator does not run any corners. ■ In the Data View pane, clear the check box next to the Corners tree. To enable all corners, select the check box at any of the two locations specified above. March 2015 © 1990-2015 265 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Changing the Order of Corners You can change the order in which the corners are listed in the Data View assistant or the Corners Setup form. Any change done in either on of these is reflected in the other as well. This also defines the order in which the corners are simulated for a test. You can change the order of corners either in the Corners Setup form or in the Data View assistant. To change the order of a corner in the Data tab of the Data View assistant, do the following: 1. Expand Corners to view all the corners. 2. Click a corner name and drag it. A blue indicator line appears at the location where you have moved it. The tooltip also shows the name of the corner being moved. 3. Drag the indicator line to the desired location and drop the corner. To change the order of a corner in the Corners Setup form, do the following: ➡ Click on the gray column header for a corner, drag and drop the column to a desired location. Important Points to Note ■ It is possible to move more than one corner at a time. For this, you can press Ctrl and select all the corners to be moved together, and then drag and drop them to the new location. ■ You cannot change the order for the Nominal corner. ■ In the Corners Setup form, it is not possible to drag and drop a corner to the right-most location. March 2015 © 1990-2015 266 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners ■ If the ADE XL setup has only one job, it will simulate all the corners for a test first, and then, it will simulate the corners for the other active tests. Therefore, even if a corner is enabled for more than one test, it will remain pending till all the corners of the previous test are simulated. The same is shown in the figure given below. In the example shown above, all the corners for the test PSR are being simulated before starting simulations for the test ACGainBW. Note that in this case, the ADE XL setup has only one job. Removing Corners To remove one or more corners, do the following in the Corners Setup form: 1. Select the name of the corner you want to remove. 2. (Optional) Hold down the Shift key (for contiguous corners), or the Ctrl key (for noncontiguous corners) and click the next corner to add more corners to the selection set. 3. Click the Remove Corner button. The selected corner columns disappear from the form. The number of Corners reflected on the Run Summary assistant pane also decreases by the number of corners you remove. March 2015 © 1990-2015 267 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Viewing Corner Settings To view the settings for a corner, do the following: ➤ In the Corners tree on the Data View pane, hover the mouse pointer over the name of a corner. The corner settings are displayed in a pop-up, as shown in the following figure: Copying Corners You can reuse the information in a corner by creating a copy of the corner. To create a copy of a corner, do the following in the Corners Setup form: 1. Right-click the corner name and choose Create Corner Copy. A new column containing the same corner information is displayed in the Corners Setup form. Note: You can also create copy of an expanded corner based on its results in the Results tab. For more details, refer to Simulating Corner on page 284. March 2015 © 1990-2015 268 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Exporting Corners You can export corners from the Corners Setup form and save them in the following formats: ■ XML format in a .sdb file (setup database) ■ CSV format in a .csv file To export corners setup information in any of these formats, do the following: 1. In the Corners Setup form, choose an appropriate command to export the corners, as shown in the figure below. Note: The default button displayed in the drop-down menu is defined by the defaultCornerExportFileFormat environment variable. If required, you can change the default command by setting the value of this environment variable before opening the Corners Setup form. March 2015 © 1990-2015 269 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The Export Corners form is displayed, as shown below. Note: The file extension displayed in the Files of type drop-down list box is determined by the export command that you select. If required, you can change the file type. 2. (Optional) Browse and select a folder in which you want to save the file. 3. In the File name field, type a name for the file in which you want to save the exported corners setup. 4. Click Save. The corners setup information is saved in the specified .csv or.sdb file. March 2015 © 1990-2015 270 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners If you saved the corners in the .csv format, you can open the file to view or modify the details. However, you need to ensure that the format of the file is correct. For details on the format of a CSV file, refer to Format Details of a Corners CSV File. Important When you export the corner details in the CSV format, ADE XL ignores the following setup details: ❑ Model groups specified for any corner ❑ Statistical corners ❑ Worst case corners If you have defined any of these details in the Corners Setup form, ADE XL does not save these in the .csv file and displays an appropriate message. Importing Corners You can import the corner details from an existing .csv or .sdb or a customization file. The following topics explain how to import corners from these files: ■ Importing Corners from .csv or .sdb Files ■ Importing Corners from Customization Files March 2015 © 1990-2015 271 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Importing Corners from .csv or .sdb Files To import the corners setup from a .csv or .sdb file, do the following: 1. In the Corners Setup form, choose an appropriate command to import the corners. Note: The default button displayed in the drop-down menu is defined by the defaultCornerImportFileFormat environment variable. If required, you can change the default command by setting the value of this environment variable before opening the Corners Setup form. The Import Corners form is displayed. 2. Browse and select a valid corners setup file. 3. Click Open. The corners setup information is loaded from the specified file and displayed in the Corners Setup form. If the file has a corner that has the same name as an existing corner, the following message is displayed. Click Auto-Rename to import the duplicate corner from the file with a different name. For example, if there is an existing corner named C1, the corner in the file will be imported as C1_0. In this case, both the existing corner and the corner being imported from the file are used. Click Overwrite to overwrite the existing corner with the corner being imported. In this case, the column for the existing corner is removed from the corners setup table. March 2015 © 1990-2015 272 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Click Cancel to cancel the import process. Important When you import the corner details from a .csv file, ADE XL ignores the global variables and parameters that are not found in the list of global variables and parameters in the Data View pane. A corresponding warning message is displayed in the CIW. Format Details of a Corners CSV File While importing corner details from a CSV file, ADE XL requires the information to be given in a desired format that it uses to identify different elements of a corner. This section explains how each row in a CSV file is required to be formatted so that the information can be imported by ADE XL into the Corners Setup form. The figure given below shows a sample CSV file. Line 1 Line 2 Line 3 Line 4 Line 5 Line 6 Line 7 Line 8 Line 9 Line 10 In the above figure, the lines have been numbered so that they can be referenced to explain the format. Line#1: The names of corners are identified by a comma-separated list given in a line that begins with the keyword Corner. Line#2: The state of a corner, enabled or not, is identified by a line that begins with the keyword Enable. In the example, the corner C2 is not enabled. If a blank entry is found in this list, ADE XL considers the default value and marks the corresponding corner as enabled. March 2015 © 1990-2015 273 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Line#3: The temperature value for each corner is defined by a comma-separated list given in a line that begins with the keyword Temperature. A blank entry in this list is considered as a NULL value for the corresponding corner. Line#4, 5: The lines that define the design variables and their values for each corner begin with variable names. There can be many lines for the design variables where each line is for a different variable. If more than one line is given for a single variable, only the values given in the last occurrence are used. A blank entry in the list for a variable is considered as a NULL value for the corresponding corner. If a variable name does not match with any variable for the tests in the setup, it is ignored and its details are not imported in the form. An appropriate warning message is also displayed in the CIW. In the example shown above, Dummy_name would be ignored. Line#6: The lines that begin with the keyword Parameter:: define the parameters and their values for each corner. A separate line is given for each parameter. If a parameter name does not exist in the Parameters pull-down list in the Corners Setup form, it is ignored and not imported. An appropriate warning message is also displayed in the CIW. Note: A comma-separated list of values assigned to a single corner column for Temperature, design variable, or parameter is to be enclosed in double-quotes, as shown in the following example: Corner,C0,C1,C2,C3 Enable,t,t,f,t Temperature,"40,75",25,,45 vdd,2.0,"2.2,2.4",, 2.0 In this case, value of Temperature for corner C0 is 40,75. Line#7, 8: The lines that begin with the keyword Modelfile:: define the model file names, their enabled status and the section names to be used for each corner. Separate rows are used for separate model files. Each value in this list is a space-separated sublist that gives the enabled status of the model for a corner and then the list of section names. The right-most value in line#7, t FF FS, mentions that the model file has been enabled for corner C3 and sections FF and FS are to be used for C3. When a blank entry is found in this list, the model file is not used for the corresponding corner. In the above example, the gpdk090_diode model file is not used for corner C2. Note: If the section names are not given and the model file entry only shows the enabled status for a corner, the correct format is . If only t or f is given, it is considered as a section name to be used from the given model file. Line#9, 10: The usage of corners for tests is defined by the rows that begin with the keywords t or f followed by the keyword Test::, the test name, and the list of enabled status for each corner. In the following line from the example CVS file: March 2015 © 1990-2015 274 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners t Test::training_new_4:ampTest:1,t,f,t t in the beginning states that corners will be run for the Test::training_new_4:ampTest:1 test. The t,f,t list states that corner C2 is not enabled for this test. Note: Any statement that does not begin with a recognized keyword is considered as an entry for a design variable. If the first word is found in the list of available design variables, it is imported into the Corners Setup form. Otherwise, a warning message is displayed in the CIW. Importing Corners from Customization Files You can import a set of predefined corners and their measurements from the following types of customization files: ■ Process Customization Files (PCFs): PCF is a file that is typically created by a process engineer or process group, and defines the processes, groups, variants, and corners so that everyone in an organization uses the same definitions. ■ Design Customization Files (DCFs): DCF is a file that is typically created by a design engineer or design group ,and defines the corner variables and measurement information for a particular design or for several designs within a design group. Usually, you need to load the process customization information before you can import corners or measurements from a design customization file. The settings must refer to the definitions that you have already loaded. For each customization file that you want to import, do the following: 1. In the Corners Setup form, click Import Corners from PCF File ( ) on the toolbar. March 2015 © 1990-2015 275 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners The ADE XL PCF/DCF Import form is displayed. 2. Click the browse button. The Choose PCF/DCF File for Import form is displayed. 3. Browse and select the PCF/DCF file from where you want to import the corners. 4. Click Open. The file is displayed in the field in the lower left corner of this form. 5. Select the check boxes next to each test name for which you want to use the imported corners. 6. Click Import. The program imports the corners and their measurements from the specified file. The new corners are added as new columns in the Corners Setup form. If required, you can edit the corner details, such as variable values or model sections. When you edit the section name for a model file, simulation for the corner would fail if the specified section name does not exist in the limited list specified in the PCF file. To avoid this, you can set the LimitModelSections environment variable to LimitedList to specify that if the section name does not exist in the limited list, the tool should display an error message in the Corners Setup form. Note the following: ❑ If the program finds any errors while reading the file, these messages appear in the CIW output area. March 2015 © 1990-2015 276 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners ❑ If more than one process has a corner set with the same name, the corners will be displayed as processName_cornerName in the Corners Setup form. For example, if the process named myProcess defines a corner set named sample and another process named myProcess1 also defines a corner set named sample, the corners are displayed as myProcess_sample and myProcess1_sample in the Corners Setup form. Setting Up a Default Set of Corners Do the following to automatically setup a default set of corners when you open an ADE XL view: 1. Use the procedure described in Exporting Corners on page 269 to create a file that contains a set of corners that you want to be used as the default set of corners in every ADE XL view. 2. Use the adexl.gui defaultCorners environment variable to automatically load the default set of corners from the file when you open an ADE XL view. You can use the default set of corners as is, or use them to quickly setup up corners for your tests. Important The default corners will be loaded only if no other corner is defined in the Corners Setup form in the ADE XL view. The following examples describe the use of the adexl.gui defaultCorners environment variable. Example 6-1 Loading a default set of corners using the defaultCorners environment variable Add the following entry in your .cdsenv file to load the corners defined in the myDefaultCorners.sdb file: adexl.gui defaultCorners string "$HOME/myDefaultCorners.sdb" Example 6-2 Loading a default set of corners based on a custom SKILL procedure Add the following procedure in your .cdsenv file to load a default set of corners defined in the myDefaultCorners.sdb file based on the myTechProp property assigned to a cellview in a technology library named myTechLibs: March 2015 © 1990-2015 277 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners procedure(myCornerLoadProc(args) session = asiGetSession(args->window) myTechName = ddGetObj(asiGetTopCellView(session)->libName)->technology envSetVal( "adexl.gui" "defaultCorners" 'string strcat("/cadence/virtuoso/" myTechName "/libraries/myTechLibs/" getShellEnvVar("myTechProp") "/myDefaultCorners.sdb")) ) deRegUserTriggers("adexl" nil nil 'myCornerLoadProc) March 2015 © 1990-2015 278 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Working with Corner Groups A corner group is a set of corners that ADE XL displays as a single corner. For more information about working with corner groups, see the following topics: ■ Creating a Corner Group on page 279 ■ Expanding a Corner Group on page 282 Creating a Corner Group When two or more corners have same corner settings except few, you can group all these corners to create a corner group. For example, in the following figure, four corners, C1, C2, C3, and C4 have same values for Temperature, param1, and Model Group. However, these corners use different corner values for the design variable vdd and different sections of the same model file. You can create groups for these corners so that the Corners Setup form displays these corners in a single column. This helps in a better management of these corners. You can create corner groups using the Corners Setup form or the Data View pane. March 2015 © 1990-2015 279 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Creating Corner Groups Using the Corners Setup Form To create a corner group using the Corners Setup form, do one of the following: ■ Select the names of the corners you want to include in the corner group by doing the following: a. Click a corner name. b. Hold down the Shift key (for contiguous corners) or the Ctrl key (for noncontiguous corners) and click the next corner name to add more corners to the selection set. c. Click . The corners are combined into one or more corner groups depending on the corners settings. For the example shown above, the program creates two groups, as shown in the following figure. Note that two corner groups, C1_0 and C1_1 have been created. The Number of Corners field for both the groups shows the value 2. This implies that both the groups contain two corners each. This also indicates that for each corner group, two simulations will run. Another way in which you can create a corner group in the Corners Setup form is by adding multiple values for corners settings. March 2015 © 1990-2015 280 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners For example, for the C1 corner in the following figure, a list of values (-40,25,125) is specified for the temperature parameter, and a range of values (2:.5:4) is specified for the vdd design variable. The program calculates creates all possible combinations using these lists or ranges of corner values and writes the number of corners that will run for the corner group. Creating Corner Groups Using the Data View Pane To create a corner group using the Data View pane, do the following: 1. In the Corners tree on the Data View pane, select the names of the corners you want to include in the corner group. Hold down the Shift key (for contiguous corners) or the Ctrl key (for noncontiguous corners) and click the next corner name to add more corners to the selection set. 2. Right-click and choose Create Corner Group(s). The corners are combined into a single corner group. For example, if you group corners named C1, C2 and C5, a corner group named C1_0 is created. March 2015 © 1990-2015 281 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Expanding a Corner Group This section describes, how to: ■ Expand a corner group for all possible combinations of corner parameters ■ Expand a corner group for selected corner parameters ■ Undo an expanded corner group Expanding Corner Group for all Combinations of Parameters To expand a corner group so that it is displayed as several individual corners, do one of the following: ■ In the Corners Setup form, select a corner group name and click . ■ In the Corners tree on the Data View pane, right-click a corner group and choose Expand Corner. The program expands the corner group and creates corners for all possible combinations of corner values. Each expanded corner is named from the original corner followed by and underscore and a sequence number starting at zero. For example, if you expand a corner group that contains two variables such as Temperature=-40,27,125 and vdd=2,2.5,3, the total number of expanded corners for these values is nine. If the original corner name is C5 (for example), the expanded corner names are C5_0 through C5_8. Expanding Corner Group for Selected Parameters If there are many corner variables, you may want to expand a corner by using values of only one or more parameters. To expand corner groups for selected variables: 1. Press and hold the Ctrl key and click on the cells of selected parameters of the corner group. 2. Right-click and choose Expand Corner Selectively – Selected Params. The corner group is expanded for all combinations of values of the selected parameters. Note: To expand corners for value sets of the selected parameters, choose Expand Corner Selectively – Selected ParamSet. For example, in a corner group, C_temp_VDD, temp is varied for three values: -25, 40 and 75. VDD is also varied for three values: 1.8, 2.0, and 2.4. If you choose the Expand Corner Selectively – March 2015 © 1990-2015 282 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Selected ParamSet command, group1 will be expanded to create the following three corners: - C_temp_VDD_0 with temp = -25 and VDD = 1.8 - C_temp_VDD_1 with temp = 40 and VDD = 2.0 - C_temp_VDD_2 with temp = 75 and VDD = 2.4 Undo Expanded Corner Group To undo the expand of a corner group, do one of the following: ■ In the Corners Setup form, right-click an expanded corner name and choose Undo Expand Corner. ■ In the Corners tree on the Data View pane, right-click an expanded corner name and choose Undo Expand Corner. Important After expanding a corner group, if you modify values of the corner variables, the Undo Expand Corner command will not be available. This is because now you need to recreate corner groups based on the new set of corner values. March 2015 © 1990-2015 283 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Simulating Corner To run a simulation for a specific corner, do the following: ➡ In the Corners tree on the Data View pane, right-click on a corner and choose Run. To run a simulation for one or more corners, do the following: 1. In the Data View pane, ensure that the name of the corners for which simulation is required to be run are selected in the Corners tree. 2. Click Run Simulation on the Run toolbar. The simulator runs simulation for the selected corners and shows results on the Results tab. If you run a corner group, simulations are run for all the corners in that group and results are displayed as shown in the following figure. Note that in case of a corner group, a column is displayed in the Results tab for each combination of corner parameters. Based on the results, if you want to create a corner by using the values of variables used for a particular data point, you can create a copy of that corner. For this, right-click in the corner column and choose Create Copy of Selected Corner. A new corner is created with the name same as that of the corner column, prefixed with Copy_. March 2015 © 1990-2015 284 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners Important While running simulations with corners, ADE XL sorts the values of variables and model sections in an alphabetical order. It also saves and displays the results in the sorted order. To disable sorting of variable values and model sections and to use the variables in the specified order, set the sortVariableValues variable to nil. March 2015 © 1990-2015 285 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Simulating Corners March 2015 © 1990-2015 286 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 7 Performing Monte Carlo Analysis You can use Monte Carlo (statistical) analysis to estimate parametric yields and generate information about the performance characteristics of the circuits you design. The manufacturing variations in components affect the production yield of any design that includes them. Statistical analysis allows you to study this relationship in detail. To prepare for a statistical analysis, you create a design that includes devices or device models that are assigned statistically varying parameter value s. The shape of each statistical distribution represents the manufacturing tolerances on a device. During the analysis, the statistical analysis option performs several simulations. Each simulation uses different parameter values for the devices based on the statistical distributions you specify. When the simulations finish, you can examine how manufacturing tolerances affect the overall production yield of your design. If necessary, you can use different components or change the design to improve yield. For more information, see the following topics: ■ Running a Monte Carlo Analysis on page 288 ■ Including or Excluding Instances and Devices for Applying Mismatch Variations on page 298 ■ Stopping Monte Carlo Based on the Target Yield on page 315 ■ Viewing Monte Carlo Results on page 319 ■ Managing Monte Carlo Results in the Yield View on page 320 ■ Creating Statistical Corners on page 321 ■ Generating Plots, Tables, and Reports on page 332 ■ Viewing Sensitivity Results on page 354 ■ Viewing Statistical Parameters for Monte Carlo Samples on page 354 March 2015 © 1990-2015 287 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ■ Saving Monte Carlo Results in CSV Format on page 355 ■ Running Multi-Technology Simulations for Monte Carlo Analysis on page 356 Running a Monte Carlo Analysis Important Monte Carlo analysis is available only for the following simulators: ❑ Virtuoso Spectre circuit simulator ❑ Virtuoso Accelerated Parallel simulator (APS) ❑ Virtuoso AMS Designer simulator with Spectre or APS as the solver To select a solver, in the Data View pane, right-click on the test name and choose High-Performance Simulation. Select a solver in the High-Performance Simulation Options form. Note the following: ❍ Ensure that you are using the Cadence IUS 9.2 or later version of Virtuoso AMS Designer simulator. ❍ You cannot use Virtuoso AMS Designer simulator with UltraSim as the solver to run Monte Carlo analysis. ❍ Running Monte Carlo simulation in interactive mode (using SimVision) is not supported with the AMS Designer simulator. You can run Monte Carlo analysis over more than one test and corner. Your design must include devices or device models for which you have specified statistically varying parameter values. You must specify either global (process) or mismatch (per-instance) variations or both. You can also specify correlation information by specifying correlation constraints in Constraint Manager. After simulating, you can select the yield view to view mean and standard deviation information. Note: For information about specifying parameter distributions for Spectre circuit simulation, see Monte Carlo in the Virtuoso Spectre Circuit Simulator and Accelerated Parallel Simulator User Guide. To run Monte Carlo analysis over more than one test or corner, do the following: 1. On the Data View assistant pane, identify the tests over which you want to run Monte Carlo by selecting their check boxes. March 2015 © 1990-2015 288 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The Run Summary pane reflects the number of tests you have selected. 2. Ensure that the simulator specified for the tests is Spectre, APS, or AMS Designer (with Spectre as the solver). You can run Monte Carlo analysis only with these simulators. 3. Disabled output expressions—expressions for which the Plot check box is not selected in the Outputs Setup tab—will not be evaluated for Monte Carlo simulations. So ensure that the Plot check box is selected for the output expressions that you want to be evaluated. 4. (Optional) Specify correlation constraints in Constraint Manager. The correlation constraints are evaluated during the Monte Carlo run. For more information, see Chapter 5, “Working with Constraints.” 5. (Optional) If you have corners defined, you can also select the # Corners check box on the Run Summary pane to run Monte Carlo over them. Note: You can change the corners you have defined on the Corners Setup form. 6. (Optional) If you do not want to include the nominal corner in the Monte Carlo analysis, you can deselect the Nominal Corner check box on the Run Summary pane. 7. From the Run menu, select Monte Carlo Sampling. Tip Alternatively, select Monte Carlo Sampling in the Select a Run Mode drop-down list on the Run toolbar, then click the Simulation Options button on the Run toolbar. March 2015 © 1990-2015 289 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The Monte Carlo form appears. 8. In the Statistical Variation group box, select one of the following statistical variations: Process Mismatch All for process statistical variations for per-instance statistical variations for both process and per-instance statistical variations Important You must define your models so that they respond to the statistical variations you choose. You must specify the file containing your models on the Model Library Setup form. For a Spectre circuit simulator example of how to define your models, see “Specifying Parameter Distributions Using Statistics Blocks” in the Virtuoso Spectre Circuit Simulator User Guide. March 2015 © 1990-2015 290 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 9. In the Sampling Method group box, select any of the following statistical sampling method to be used: ❑ Random: The Random sampling method takes the Brute Force approach of sequentially calling a random number generator without considering the samples generated previously. There is no sample selection or rejection. It has a convergence accuracy of 1/sqrt(N). ❑ Latin Hypercube: Latin Hypercube is a quasi-random sampling algorithm with sample selection and rejection. The sample space is evenly divided into probable subspaces. All sample points are then chosen simultaneously making sure that the total ensemble of sample points is a Latin Hypercube sample and that each subspace is sampled with the same density. The Latin Hypercube algorithm has a convergence accuracy of 1/pow(N,2/3). ❑ Low-Discrepancy Sequence: Low-Discrepancy Sequence (LDS) uses a deterministic sequence to get a uniform coverage of the sampling space, which makes it better than the Random sampling method. In addition, LDS uses auto stop features to generate samples, which is not supported by Latin Hypercube Sampling (LHS). The convergence speed for LDS is faster than the Random sampling method and is comparable to the LHS method. Therefore, overall, this method is better than both, Random and LHS. If the selected sampling method is Random or Low-Discrepancy Sequence, you can choose to automatically stop the simulation based on the following three methods: ❍ Auto Stop using Yield Significance Test: This method applies a stopping criteria based on the target yield value. To enable this stopping criteria, select Yield Significance Test from the Auto Stop drop-down list, as shown below. This value is automatically calculated using the Target Yield and Probability values. For more details on how a significance test helps in stopping the Monte Carlo run, refer to Stopping Monte Carlo Based on Target Yield. March 2015 © 1990-2015 291 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ❍ Auto Stop using Failure Probability: This is an enhanced method similar to Yield Significance Test, and can potentially complete much faster. This is a sample re-ordering method. This means that the Monte Carlo simulations are performed in the order of probability to fail instead of the normal random order. This method works by first simulating a small number of samples in the normal sequence until a model of performance can be built for each specification. The remaining samples are then generated and re-ordered according to the model in the order of probability to fail. The run begins simulating the re-ordered samples and automatically stops by applying a similar test as done for the Yield Significance Test method. If the design is low yield, the run can stop quickly by finding failed samples earlier. If the design is high yield, it can be determined earlier that the yield target can be met if the most probable to fail samples pass spec. Note: This method requires the Analog_Design_Environment_GXL license. ❍ Auto Stop using Model Accuracy: This method applies a stopping criteria based on the accuracy of the modeling of variation in the outputs, which is due to statistical variation. Enable this option when you need to post-process the Monte Carlo results and view the Mismatch Contribution table, but you are not sure about the number of samples required to view the mismatch contribution results. This method helps in automatically determining the number of samples required to be run to meet the target accuracy level so that post-processing for mismatch contribution analysis can be done. The number of samples depends on the design and the number of statistical parameters defined by the model files. When you choose this method, the Monte Carlo run is stopped as soon as a model for variation contribution can be built for every output. You must set a value in the Max Number of Points field. This value specifies the maximum number of sample points to simulate while trying to build an accurate model. If a model cannot be constructed even after simulating the maximum number of points, the run is stopped. March 2015 © 1990-2015 292 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Note: The modeling of variation in the outputs due to statistical variation can be done by using the post processing option to view and analyze the mismatch contribution results. Therefore, when using this option, it is required that you choose to run mismatch statistical variation and also select the Save Mismatch Data option to save the data for Monte Carlo analysis so that it can be later used for post-processing. For more details on the use of this option for variance contribution analysis, refer to Analyzing the Mismatch Contribution in the Analog Design Environment GXL User Guide. 10. If the selected sampling method is Latin Hypercube, specify the number of bins (subdivisions) in the Number of Bins field. Note the following: ❑ If a number is specified, the number of bins must be greater than the Number of Points + Starting Run Number - 1. If this condition is not satisfied, a warning message is displayed and you are suggested to change the values so that the required condition is met. ❑ If a number is specified, the number of bins will be the specified number or Number of Points + Starting Run Number - 1, whichever is greater. For example, if the specified number of bins is 90, the number of points specified in the Number of Points field is 100 and the starting run number specified in the Starting Run Number field is 6, the value 105 (100+6-1) is used. ❑ If no number is specified, a default value of Number of Points + Starting Run Number - 1 is used. For example, if the number of points specified in the Number of Points field is 100 and the starting run number specified in the Starting Run Number field is 6, the default value of Number of Bins is calculated as (100+6-1 = 105). 11. If the selected sampling method is Random or Low-Discrepancy Sequence and the Auto Stop check box is cleared, in the Number of Points field, type the number of Monte Carlo points you want to simulate. Note: When you select the Auto Stop check box, the name of this field changes to Max Number of Points and the maximum number of points for which simulation can be run is automatically calculated and populated in this field. 12. (Optional) Select the Save Process Data check box to save process parameter information in the ADE XL results database. By default, this check box is selected. March 2015 © 1990-2015 293 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Saving process parameter information in the ADE XL results database allows you to view sensitivity results. For more information, see Viewing Sensitivity Results on page 354. Note: Saving process parameter information for designs with large number of process variables will increase the simulation run time. 13. (Optional) Select the Save Mismatch Data check box to save mismatch parameter information in the ADE XL results database so that it can be further used for viewing mismatch contribution data. By default, this check box is deselected and ADE XL does not save mismatch parameters and their values and mismatch contribution analysis cannot be run. Note: Saving mismatch parameter information for designs with large number of mismatch variables increases the simulation run time. 14. (Optional) If you have created a reference point and you want Monte Carlo points to be sampled around the reference point, select the Use Reference Point check box. For more information about reference points, see the Virtuoso Analog Design Environment GXL User Guide. Note: If you select the Use Reference Point check box, ensure that the # Point Sweeps check box on the Run Summary pane is selected. 15. (Optional) Select the Run Nominal Simulation check box if you want the Spectre simulator to perform a nominal simulation run before starting the main Monte Carlo loop of iterations. If any errors are encountered during the nominal simulation run (for example, convergence problems, incorrect expressions, and so on), the Monte Carlo analysis is stopped. This allows you to stop unnecessary simulations from running if the nominal simulation fails. Deselect the Run Nominal Simulation check box if you want Spectre to run the Monte Carlo iterations without performing a nominal simulation. If any errors are encountered during the Monte Carlo iterations, Spectre will issue a warning and continue with the next iteration of the Monte Carlo loop. Note: If you are running a distributed Monte Carlo simulation, nominal simulation is performed only for the first job that is submitted by ADE XL. 16. (Optional) If you want to save raw data (psf files) for every Monte Carlo iteration so that you can perform postprocessing operations (like plotting, printing, annotation, and re-evaluation) on individual iterations, select the Save Data to Allow Family Plots check box. If you do not select this check box: ❑ The program retains the psf data for the last iteration only. March 2015 © 1990-2015 294 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ❑ Signals and waveform expressions will not be plotted. Only histograms for scalar expressions will be plotted. Note: The program calculates and saves scalar results for every run regardless of whether you select this check box or not. Important If you select this check box, the amount of raw data the program saves can be very large. You can reduce disk storage requirements, by saving only the nodes and terminals you reference in your output expressions. See “Saving All Voltages or Currents” on page 444 for information about saving nodes and terminals. 17. (Optional) If you want to specify a different seed for the Monte Carlo analysis, select the Monte Carlo Seed check box and type the seed number. By always specifying the same seed, you can reproduce a previous experiment. If you do not specify a seed, the value 12345 is used. 18. (Optional) If you want to specify a starting run number, select the Starting Run # check box and type the starting run number. The starting run number specifies the run that Monte Carlo begins with. By specifying this number, you can reproduce a particular run or sequence of runs from a previous experiment (for example, to examine an earlier case in more detail). Note: To reproduce a run or sequence of runs, you need to specify the same value in the Starting Run # and the Monte Carlo Seed fields. 19. By default, mismatch variations are applied to all subcircuit instances in the design. Click the Specify Instances/Devices button to specify the sensitive instances and devices you want to either include or exclude for applying mismatch variations. For more information, see Including or Excluding Instances and Devices for Applying Mismatch Variations on page 298. 20. Click OK. 21. On the Run toolbar, click the Run Simulation button. ADE XL calculates the number of simulations to be run. If the number exceeds the threshold limit specified using the warnWhenSimsExceed environment variable, a warning message is displayed to confirm if the run is to be continued. After the run is complete, ADE XL displays the results in the Yield view on the Results tab of the Outputs pane. Results are reported for each test, corner and measurement expression and the total yield is reported for the circuit. March 2015 © 1990-2015 295 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis You can also use the Summary view or the Detail view on the Results tab to view the detailed results for the Monte Carlo analysis. In the Summary view and Detail view, the results for each Monte Carlo sample is displayed under a row named Parameters: monteCarlo::param::sequence=n where n is the number of the sample. For example, in the following figure of the Detail view, the results under the row Parameters: monteCarlo::param::sequence=1 displays the results for the first sample. To view the description of the each column in the Details view of the Results tab, refer to Hiding and Showing Data on the Results Tab. Note that in some cases, the results are shown as Canceled. To know more about this status, refer to Starting a Simulation. Note: The program converts waveforms that have mcparamset as the sweep name to histograms and plots each such waveform in a separate subwindow. The program also displays a pass/fail type of histogram plot for the results. For more information about plotting histograms for Monte Carlo results, see Plotting Histograms on page 338. March 2015 © 1990-2015 296 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Debugging in Debug Environment If any particular data point fails or shows undesired results, you can select the result in the Detail view and load it in the debug environment. Here, you can modify the setup of that data point to debug it and run a single Monte Carlo simulation to verify the results, and bring back the updated test to the active adexl view. See also: ■ Including or Excluding Instances and Devices for Applying Mismatch Variations on page 298 ■ Stopping Monte Carlo Based on the Target Yield on page 315 ■ Running Incremental Monte Carlo Analyses on page 319 ■ Generating Plots, Tables, and Reports on page 332 ■ Viewing Sensitivity Results on page 354 ■ Viewing Statistical Parameters for Monte Carlo Samples on page 354 ■ Viewing Monte Carlo Results on page 319 March 2015 © 1990-2015 297 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Including or Excluding Instances and Devices for Applying Mismatch Variations By default, mismatch variations are applied to all subcircuit instances in the design. You can use the Specify Instances for Mismatch form to do one of the following: ■ Select specific instances and devices to which mismatch variations must be applied. Mismatch variations will also be applied to all subcircuits instantiated under the selected instances. ■ Select specific instances and devices to which mismatch variations must not be applied. Mismatch variations will also not be applied to all subcircuits instantiated under the selected instances. Important If multiple ADE XL tests are enabled, ensure that the same single top level DUT (Device Under Test) instance is selected for all the tests, so that you get the same statistical variation across all tests. This allows you to accurately predict the total yield across multiple tests. To include or exclude specific instances and devices for applying mismatch variations, do the following: 1. Click the Specify Instances/Devices button on the Monte Carlo form. Note: If the button name appears as Specify Instances/Devices (Not Specified), it indicates that no instances or devices are selected. Therefore, mismatch variations are applied to all subcircuit instances in the design. If the button name appears as Specify Instances/Devices (Exists), it indicates that you have selected specific instances and devices to include or exclude for applying mismatch variations. March 2015 © 1990-2015 298 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The Specify Instances for Mismatch form appears. 2. Do one of the following: Select Specify instances for mismatch To Select the instances and devices to which mismatch variations must be applied. In this case, mismatch results will be displayed only for the selected instances and devices. March 2015 © 1990-2015 299 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Select Specify instances to ignore (add to ignore list) To Select the instances and devices to which mismatch variations must not be applied. In this case, mismatch results will not be displayed for the selected instances and devices. The mismatch results will be displayed for all other instances and devices. 3. Do one of the following: Select Schematic Master Subcircuit To Select the instances you want to include or exclude for applying mismatch variations in the schematic. For more information, see Selecting Schematic Instances for Applying Mismatch Variations on page 301. Select instances of cellviews you want to include or exclude for applying mismatch variations. All the instances within the selected cellviews will be included or excluded. For more information, see Selecting Instances of Cellviews for Applying Mismatch Variations on page 305. Select the subcircuit instances you want to include or exclude for applying mismatch variations. All the instances within the selected subcircuits will be included or excluded. For more information, see Selecting Subcircuit Instances for Applying Mismatch Variations on page 310. Important You can either select the instances and devices to be included or excluded for applying mismatch variations. You cannot select instances and devices to be included and excluded at the same time. 4. Click OK to save the changes and return to the Monte Carlo options form. March 2015 © 1990-2015 300 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Selecting Schematic Instances for Applying Mismatch Variations To select instances you want to include or exclude for applying mismatch variations in the schematic, do the following: 1. Select the Schematic option. 2. In the Test drop-down list, choose the test for which you want to select instances. March 2015 © 1990-2015 301 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis To select instances for all the tests that are enabled in the Data View pane, choose All Tests in the Test drop-down list. If you choose All Tests, the Select Lib/Cell/View for Mismatch form appears. Do the following to open the schematic view from which you want to select instances for all the tests that are enabled in the Data View pane. a. Use the Library, Cell and View drop-down lists to select the schematic view. Note: The Library, Cell and View drop-down lists display only the cellviews that are used in the designs for all the tests. b. Click OK. The selected schematic view is opened in a new tab. 3. If a test name is selected in the Test drop-down list, click the Select Instances button. The schematic for the test is opened in a new tab. 4. In the schematic, select one or more instances. To select more than one instance at a time, do one of the following: ❑ Hold down the Shift key and click on instances. ❑ Click and drag the mouse over the instances you want to select. All the instances that are within the yellow bounding box that appears are included in the selection. March 2015 © 1990-2015 302 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis In the following example, instances I1 and I3 that are within the yellow bounding box are included in the selection. 5. Press the Esc key when you are done. The selected instances are displayed in the Choices field. If All Tests is selected in the Test drop-down list, the instance names of the selected instances in the designs for all the tests are displayed in the Choices field. You can place March 2015 © 1990-2015 303 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis the mouse pointer in the Choices field to view the instance names of the selected instances in the design for each test. 6. In the Choices field, select the instances you want to include or exclude for applying mismatch variations. To select multiple instances, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. 7. Click Apply. March 2015 © 1990-2015 304 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The selected instances are added for the test. For example, in the following figure, the instances I1 and I3 are added for the opamp090:full_diff_opamp:1 test. Selecting Instances of Cellviews for Applying Mismatch Variations To select instances of cellviews you want to include or exclude for applying mismatch variations, do the following: March 2015 © 1990-2015 305 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 1. Select the Master option. 2. In the Test drop-down list, choose the test for which you want to select instances of cellviews. To select instances for all the tests that are enabled in the Data View pane, choose All Tests in the Test drop-down list. 3. Use the Library, Cell and View drop-down lists to select the library, cell and view in which the cellview exists. All the instances of the cellview in the design for the test are displayed in the Choices field. Note the following: March 2015 © 1990-2015 306 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ❑ You can set the ignoredLibsForDUT environment variable in your .cdsenv file to specify the libraries that should not be displayed in the Library drop-down list. ❑ By default, the following views are not displayed in the View drop-down list: ❍ adestate ❍ adexl ❍ config ❍ physConfig ❍ schematicSymbol ❑ If All Tests is selected in the Tests drop-down list, the Choices field displays the instance names of the cellview in the designs for all the tests. March 2015 © 1990-2015 307 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis For example, in the following figure, the Choices field displays the instance names of the schematic cellview of the ampn cellview in the designs for all the tests. You can place the mouse pointer on the Choices field to view the instance name of the cellview in the design for each test. ❑ If All Tests is selected in the Tests drop-down list, you can add only instances of cellviews that exist in the designs for all the tests. If instances of a cellview do not exist in the designs for all the tests, the View field displays the text No Common View indicating that you cannot select instances of the cellview. March 2015 © 1990-2015 308 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis For example, in the following figure, the View field displays the text No Common View because none of the cellviews of the full_diff_opamp cell in the opamp090 library are instantiated in the designs for all the tests. 4. In the Choices field, select the cellview instances you want to include or exclude for applying mismatch variations. To select multiple instances, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. 5. Click Apply. March 2015 © 1990-2015 309 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The selected cellview instances are added for the test. For example, in the following figure, the cellview instance /I0 is added for the opamp090:full_diff_opamp_AC:1 test. Note: By default, the Type and Sch/Master/Subcircuit columns are not visible. To view these columns, right-click on the title bar and select the name of the column to be displayed in this table. Selecting Subcircuit Instances for Applying Mismatch Variations To select the subcircuit instances you want to include or exclude for applying mismatch variations, do the following: March 2015 © 1990-2015 310 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 1. Select the Subcircuit option. 2. In the Test drop-down list, choose the test for which you want to select subcircuit instances. To select subcircuit instances for all the tests that are enabled in the Data View pane, choose All Tests in the Test drop-down list. 3. In the Subcircuit drop-down list, choose the subcircuit whose instances you want to select. All the instances of the subcircuit in the design are displayed in the Choices field. Note: If All Tests is selected in the Tests drop-down list, the Choices field displays the instance names of the subcircuit in the designs for all the tests. For example, in the March 2015 © 1990-2015 311 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis following figure, the Choices field displays the instance names of the ampn subcircuit in the designs for all the tests. Tip You can place the mouse pointer in the Choices field to view the instance name of the subcircuit in the design for each test. 4. In the Choices field, select the subcircuit instances you want to include or exclude for applying mismatch variations. To select multiple instances, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. March 2015 © 1990-2015 312 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 5. Click Apply. The selected instances are added for the test. For example, in the following figure, the instance /I0/I2 is added for the opamp090:full_diff_opamp_TRAN:1 test. Note: By default, the Type and Sch/Master/Subcircuit columns are not visible. To view these columns, right-click on the title bar and select the name of the column to be displayed in this table. Deleting Instances Selected for Applying Mismatch Variations To delete an instance, do the following: ➡ Right-click on the row for the instance and choose Delete. March 2015 © 1990-2015 313 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis To delete multiple instances, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection), click the rows for the instances you want to delete, then right-click and choose Delete. To delete all instances, do the following: 1. Right-click on the row for an instance and choose Select All. 2. Right-click on the row for an instance and choose Delete. March 2015 © 1990-2015 314 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Stopping Monte Carlo Based on the Target Yield The accuracy of the yield estimate from the Monte Carlo run increases by simulating a large number of samples. However, running a large number of simulations can consume a lot of time and resources if a design is large. Auto Stop Using Significance Test is a method to automatically identify the appropriate number of samples for Monte Carlo analysis to simulate based on a target yield estimate. The Monte Carlo run will stop automatically without running additional simulations as soon as it can be determined that the yield is above or below the target. To enable the significance test stopping criteria, select Significance Test from the Auto Stop Using drop-down list and specify the following values: ■ Target Yield: This is the target yield value that you want to achieve for your design. Default value for this field is 99.73%. ■ Probability (1-alpha): This defines the significance level. Specify a value between 50% and 100% (not including 100%). Probability values closer to 100% will require more simulations before the yield estimate can be determined to be lower or higher than the target. Smaller probability values will result in a looser test and require less simulations before auto stop is triggered. Default value = 95%. Using the target yield and probaility values, the tool automatically calculates the maximum number of sample points for which simulations are to be run. This value is displayed inthe Max Number of Points field. If the significance test is enabled, but the stopping conditions are never met, the analysis will stop after simulating the maximum number of samples specified in this field. Auto Stop using Yield Significance Test is available for the Random and Low-Discrepancy Sequence Sampling methods. The following results are reported when Auto Stop using Yield Significance Test is enabled: March 2015 © 1990-2015 315 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ■ The Yield view on the Results tab displays the overall yield estimate and the confidence level in the gray row on top of the detailed results. The Clopper-Pearson method is used to calculate the binomial confidence interval of the yield estimate. Monte Carlo will stop if either the upper bound of the yield estimate is lower than the yield target, or if the lower bound of the yield estimate is higher than the yield target. Since auto stop applies two one-sided tests relating the significance test to the confidence interval is as follows: Confidence Level = 100 * (1 - 2*alpha) If Auto Stop is not enabled, you can still analyze the results by specifying a confidence level. For more details, refer to Viewing Data for a Specific Confidence Interval. ■ The run log shows the run status and the number of samples for which the analysis was run. The figure given below shows a sample. ■ The overall yield estimate plot shows a graph with the yield estimate and confidence interval at every iteration. To view the yield estimate plot, click on the Results tab, select March 2015 © 1990-2015 316 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis the test name and choose Plot/Print Versus Iteration. Keep the default options and click Apply to plot a graph. The following figure shows a sample. ■ In this example, there were no failed samples. Monte Carlo stopped after 1109 points. At this point, the lower bound of the yield estimate confidence interval is greater than the yield target. March 2015 © 1990-2015 317 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Note: In a normal Monte Carlo run, if a single ICRP job is used, it may simulate a specific corner for all sample values before fully evaluating any sample over all corners. However, when the significance test is enabled, by default, an ICRP job keeps a maximum of 40 sample points outstanding (or in partially evaluated state). That is, if there is only one ICRP job, first it runs and completely evaluates first 40 samples for all corners and uses the success status for the significance test. After that, the job moves to the next 40 samples and uses them to run simulations for all corners, and so on. This helps in getting the results of the significance test earlier, before running all samples runs for all corners. If required, you can change the maximum of sample points that can be outstanding for a corner at a given time by setting the maxOutstandingPoints environment variable. March 2015 © 1990-2015 318 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Running Incremental Monte Carlo Analyses You can use the Manual Tuning mode to run Monte Carlo incrementally. In this run mode, you can append the results of multiple Monte Carlo runs to the same history and results view. Important Points to Note Consider the following points while running incremental Monte Carlo analyses in the Manual Tuning run mode: ■ In order to run incrementally, all Monte Carlo runs must be performed within the Manual Tuning mode. You cannot append to a run performed outside of the Manual Tuning mode. ■ If the chosen sampling method is Random, for every subsequent Monte Carlo run, specify an incremented value in the Starting Run Number field. For example, if you run the first Monte Carlo run for 20 points, in the subsequent run, set the Starting Run Number field on the Monte Carlo form to 21. Similarly, the value in the Number of Points field can vary across different Monte Carlo runs. For example, if you run the first Monte Carlo run for 20 points, for the second one, you can set the Number of Points field to 40. ■ If the chosen sampling method is Latin Hypercube, specify a different seed value in the Monte Carlo Seed field or each subsequent Monte Carol run. For more details on the Manual Tuning run mode, refer to Manual Tuning in the Analog Design Environment GXL User Guide. Viewing Monte Carlo Results The default results view for the Monte Carlo Sampling run mode is the Yield view. This view displays the overall yield estimate based on the pass or fail status of all the specifications. For details on the different columns in this view, refer to the Yield view. Also see: ■ Managing Monte Carlo Results in the Yield View ■ Plot/Print versus Iteration ■ Plotting Histograms ■ Plotting Scatter Plots March 2015 © 1990-2015 319 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Managing Monte Carlo Results in the Yield View The following topics explain how you can manage the Monte Carlo results either to show the most relevant data, or to create statistical corners that can be used in the next simulation runs: ■ Viewing Data for a Specific Confidence Interval ■ Creating Statistical Corners ■ Filtering Out Data from the Yield View Viewing Data for a Specific Confidence Interval During or after a Monte Carlo analysis run, you can specify a confidence level to display the confidence intervals for the estimated yield, mean, and sigma. To set the confidence level, right-click the gray-colored row at the top and choose Set Confidence Level. The Set Confidence Level form is displayed, as shown in the following figure. Figure 7-1 The Set Confidence Level Form Specify a percentage value in the Confidence Level field and click OK. ADE XL displays the confidence intervals for the yield, mean, and sigma values, as shown in the following figure. March 2015 © 1990-2015 320 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Figure 7-2 Yield View Displaying Confidence Intervals Tip To revert to the default view without any confidence interval, specify 0 in the Confidence Level field. Creating Statistical Corners After running Monte Carlo simulations, you can analyze the yield and identify the specifications for which the results need improvement. You can then create statistical corners to be used in further analysis and design optimization. You can create statistical corners by using any of the following four methods: ■ From a selected sample ■ From a worst sample ■ From a percentile ■ By using a target yield value (specified in sigma) for a specification For the first method, you can use the Create Statistical Corner command in the right-click context-sensitive menu of the Detail or Detail – Transpose results views. The commands March 2015 © 1990-2015 321 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis for the next three methods are available in the context-sensitive menu for the specification results in the Yield results view, as shown below. For more details on these ways, refer to the topics given below. Creating a Statistical Corner from a Selected Sample You can create a statistical corner from any Monte Carlo sample. For this, do one the following: ■ Plot a histogram for the desired specification. In the plot, click a point for which you want to create a corner. ADE XL cross probes the corresponding result in the Detail view where you can right-click at the point and choose Create Statistical Corner. ■ Open the Detail or Detail – Transpose view. Identify a sample data for which you want to create a corner, right-click on it, and choose Create Statistical Corner. March 2015 © 1990-2015 322 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis In either of the two ways described above, a statistical corner is created using the sequence ID of the sample. An example is shown in the figure given below. Creating a Statistical Corner from a Worst Sample In this method, ADE XL helps in identifying a sample that generated the worst result for a specification and creates a statistical corner using the sample details. To create a statistical corner from the worst sample, do the following: March 2015 © 1990-2015 323 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 1. Open the Monte Carlo results in the Yield view and identify the specification for which you need to improve the yield. 2. Right-click on the row for that specification and choose Create Statistical Corner from Worst Sample. ADE XL looks into the simulation results to find a sample that gives the worst result for that specification and creates a statistical corner using that sample. The new corner is added it to the Corners list in the Data View assistant pane. The corner is named as Stat_Seq__, where is the sequence ID of that sample and is the name of the specification. For example, if you choose to create a corner for the worst sample for UGF, ADE XL creates a corner with the name Stat_seq_40_UGF, where the sequence ID of the sample is 40. Note the details of the statistical corner in the following figure. The figure given above shows that ADE XL saves the sequence ID, seed, and other Monte Carlo settings to the statistical corner when simulating it. Using this information, the simulator can recreate the statistical parameter values for the corner. This type of corner is efficient and does not require saving all the statistical parameter data for each sample in Monte Carlo. However, one disadvantage is that some changes to the design topology, such as, addition of a new instance to the schematic, can invalidate the corner. In that case, the simulator cannot recreate the same set of statistical parameter values when simulating the statistical March 2015 © 1990-2015 324 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis corner. You would then need to rerun the Monte Carlo simulation to recreate statistical corners. To avoid this, you can create statistical corners by directly saving the parameter values from the sample in the corner details and by not referring to any sequence ID. For more details, refer to Creating a Statistical Corner with Statistical Parameter Values. Creating a Statistical Corner with Statistical Parameter Values You can create a statistical corner by directly saving the parameter values from the sample in the corner details. These corners are named as Stat_Seq__params , where is the sequence ID of that sample and is the name of the specification. The corner details in the Corner Setup form show all the statistical parameters and their values set for the corner, as shown in the figure given below. To create statistical corners by saving the parameter values, you need to change the default value of the createStatisticalCornerType environment variable. By default, this variable is set March 2015 © 1990-2015 325 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis to sequence, which indicates that the statistical corners are to be created by using the sequence number of a sample from simulation results. Set this environment variable to values to create the corners by using the statistical parameter values. If you wan to choose a way to create a statistical corner at the runtime, set the environment variable either to prompt or promptValues. Now, when you right-click on a specification in the Yield view and choose Create Statistical Corner from Worst Sample, ADE XL displays the Create Statistical Corner form. If the createStatisticalCornerType environment variable is set to prompt, the default selection in the message box is Based on Monte Carlo sequence. You can change the default selection by setting the variable to promptValues, which makes Based on statistical parameter values as the default value. Important Statistical corners created in this way are more robust and do not need to be recreated if there are minor design changes. However, in this case, you need to save the statistical parameters while running the Monte Carlo simulations. Creating a Statistical Corner from Percentile In this method, you can create a corner for the nth worst percentile for a given specification. That is, a statistical corner is created from the Monte Carlo sample that gives the nth worst output for a specification. March 2015 © 1990-2015 326 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis To create a statistical corner from percentile, right-click the output of a specification in the Yield view and choose Create Statistical Corner from Percentile. The Create Statistical Corner form is displayed, as shown in the following figure. Specify a percentile value for which you want to create a sample and click OK. ADE XL creates a new statistical corner and adds it to the Corners node in the Data View assistant pane, as shown in the following figure. The default name of a new statistical corner consists of a prefix Stat_seq followed by the sequence ID of the sample and the specification name. The tooltip for a corner displays the March 2015 © 1990-2015 327 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis values for all corner conditions, names of the base specification and base corner, and the percentile value used to create that corner, as shown in the following figure. Base test and base corner Percentile value Important If the specification type is < or >, only one statistical corner is created from the percentile. If the specification type is range or if a specification is not defined, two corners are created–one in each direction. By default, the corner uses the sequence ID of the sample that gives the nth worst output for a specification. Using this information, the simulator can then recreate the statistical parameter values for the corner when simulating it. This type of corner is efficient and does not require saving all the statistical parameter data for each sample in Monte Carlo. However, one disadvantage is that some changes to the design topology, such as, addition of a new instance to the schematic, can invalidate the corner. In that case, the simulator cannot recreate the same set of statistical parameter values when simulating the statistical corner. You would then need to rerun the Monte Carlo simulation to recreate statistical corners. To avoid this, you can create statistical corners by directly saving the parameter values from the sample in the corner details and by not referring to any sequence ID. For more details, refer to Creating a Statistical Corner with Statistical Parameter Values. March 2015 © 1990-2015 328 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Important A statistical corner is enabled only for the test associated with the specification for which the corner is created. Creating Statistical Corners by Using Target Yield Value (Specified in Sigma) This is a fast method to create 3-sigma or user-specified sigma statistical corners without requiring a large number of Monte Carlo samples. Note: Creating statistical parameters by this method requires the Analog_Design_Environment_GXL license. For more details, refer to Creating a K-Sigma Statistical Corner in Analog Design Environment GXL User Guide. Filtering Out Data from the Yield View updated for CCR 1306531 - Change Error Filter title in yield view to Filter as these include partial data points as well By default, the statistical calculations displayed in the Yield view are based on all the points in Monte Carlo results. However, you can filter out and eliminate the points that were either partially complete or they resulted in simulation or evaluation errors so that the yield estimate is calculated only on the points for which simulation was successfully completed. Important A typical Monte Carlo error point represents a real failure of the design. Therefore, it is recommended to filter the error points only when it is certain that the error points are invalid. To apply a filter in the Yield view, right-click the gray-colored row at the top and choose Filter Points from Yield Estimate. March 2015 © 1990-2015 329 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Figure 7-3 The Context-Sensitive Menu of the title row Alternatively, you can right-click on the Errors column title in the Yield view and choose the type of filter to be applied. The Filter Points from Yield Estimate form is displayed, as shown in the following figure. Figure 7-4 The Filter Points from Yield Estimate Form Select a check box to filter the required type of errors and click OK. Note: You can select the Points with Partial Data check box to filter data from points that were not simulated completely. By default, Virtuoso includes such points, for which only the partial simulation data is available, in yield calculation. ADE XL filters out the incomplete or error points from the Yield view. The yield values for specifications and the overall yield estimate are updated. Note that the total number of points considered for yield estimate calculation are also reduced to eliminate the points that were filtered out, as shown in the example figures given below. March 2015 © 1990-2015 330 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Figure 7-5 Yield View Before Applying the Error Filter Figure 7-6 Yield View After Applying Error Filter Important Points to Note ■ The error filter only filters the results displayed in the Yield view and does not remove the results from the results database. At any time, you can remove the filter to view the results for all the points. ■ If there are multiple tests, a point that is filtered from the output statistics of a particular test is also filtered out from the statistics of other tests. March 2015 © 1990-2015 331 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Generating Plots, Tables, and Reports After a Monte Carlo run, you can generate plots, tables, and reports for your input and output parameters. See the following topics for more information: ■ Plot/Print versus Iteration on page 333 ■ Printing Correlation Tables on page 336 ■ Plotting Histograms on page 338 ■ Plotting Scatter Plots on page 351 March 2015 © 1990-2015 332 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Plot/Print versus Iteration To plot or print the values of outputs or parameters at the end of each iteration, do one of the following: 1. Click on the Results tab, select a test and choose Plot/Print Versus Iteration. Alternatively, switch to the Yield view, right-click a test name and choose Plot/Print Versus Iteration. The Plot/Print Versus Iteration form is displayed. 2. From the drop-down list on the top-left corner of the form, select the type of results for which you want to plot or print values. The default value is Outputs. When Outputs is selected, the field beneath this list box shows the names of all the outputs. In addition, the Overall Yield Estimate is also listed on top. When you select Statistical Parameters from the Select from drop-down list, the names of all the parameters are displayed in the field beneath the list box. Note: Overall Yield Estimate is useful in plotting the yield estimate graphs for a Monte Carlo simulation. 3. From the scroll list given below the Select from list, select the names of one or more output or parameters for which you want to print or plot the result values at the end of each iteration. March 2015 © 1990-2015 333 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 4. In the What to plot/print section, select appropriate check boxes to specify the types of values to be plotted or printed. You can choose to print only the result values or the calculated yield, mean or sigma values for each iteration. 5. In the Sort by list, specify the sorting criteria. You can sort by iteration number or by the result values. The printed results are sorted in the ascending order. 6. Select the Plot check box to plot the results. You can also choose a plotting mode from the drop-down list given to the right. For details on the different plotting modes, refer to Selecting the Plot Mode. 7. Select the Print check box to print the results. 8. Click Apply to print or plot as per the specifications given on this form. The iteration versus value table for the selected outputs or parameters are displayed in a Results Display Window, as shown below. March 2015 © 1990-2015 334 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The plots of the selected options are displayed in the Virtuoso Visualization and Analysis XL window as shown below. Note: You can incrementally change the options on the Plot/Print Versus Iterations form and print parameters and outputs. In that case, the incremented values are appended to the end of the Results Display Window. Extra columns are also added to the right. The plotted results are displayed in the Virtuoso Visualization and Analysis XL window. Incrementally displayed plots are shown in the same or new window or subwindow as per the specified plotting mode. March 2015 © 1990-2015 335 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Important Points to Note ■ Only the yield value can be printed or plotted for the Overall Yield Estimate output. You cannot print or plot mean or sigma value for this output type. ■ The Sort by field is applicable for printing and plotting of value, mean and sigma. ■ You can use the Search field to search for a particular output or parameter name. Printing Correlation Tables To print a table showing the correlation coefficients of each parameter with each of the other parameters sorted from most correlated to least correlated for each combination of parameters, do one of the following: 1. Click on the Results tab, select a test and choose Print Correlation. Alternatively, switch to the Yield view, right-click a test name and choose Print Correlation The Correlation Table form appears. 2. In the Suppress Printout for Correlations Less Than field, type a minimum correlation value. 3. Click OK. March 2015 © 1990-2015 336 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Pairs of parameters with correlation coefficients greater than the value you typed in the Suppress Printout for Correlations Less Than field appear in a table in a Results Display Window. Each row lists the pair of measurements considered, the mean and standard deviation of the first measurement, the mean and standard deviation of the second measurement, and the number of data points included in the calculation. March 2015 © 1990-2015 337 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Plotting Histograms You can plot histograms for the outputs and statistical parameters from Monte Carlo results. To plot histograms, do the following: 1. Click on the Results tab, select a test and choose Histogram. Alternatively, switch to the Yield view, right-click a test name and choose Histogram. The Plot Histogram form appears. By default, Outputs is selected from the drop-down list on the top-left corner of the form and a list of names of all the outputs (from the Outputs Setup tab) is also listed in the list given below that. 2. Select one or more output names that you want to plot on the histogram. Note: You can drag or Shift-click to select a group of adjacent outputs or Control-click to select individual outputs. Alternatively, you can choose to plot histograms for statistical parameters. For this, select Statistical Parameters from the drop-down list on the top-left corner of the form and select the names of one or more parameters from the list below it. March 2015 © 1990-2015 338 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Tip If the list of outputs or statistical parameters is very long, you can use the search field to search for a specific output or parameter name. 3. Specify a numeric value in the Number of Bins field. The default value is 10. You can change the default value of this field by setting the histogramBins environment variable. You can also change the default maximum value for this field from 1000 by setting the maxHistogramBins environment variable. 4. If you are plotting a histogram for multiple corners, select the Combine Histogram check box. For more details, refer to Plotting Combined Histograms. 5. Select an appropriate histogram graph type from the Type drop-down list. You can select one of the following: ❑ standard ❑ pass/fail ❑ cumulative line ❑ cumulative box 6. (Optional) Specify a plotting mode to specify how to plot graphs when a Virtuoso Visualization and Analysis XL window is already open. The default plotting mode is Replace. For more details on the plotting modes, refer to Selecting the Plot Mode. 7. (Optional) Select the types of annotations that you want to display on the histogram plots. You can select one of the following annotation types: ❑ Density Estimator: Plots a curve that estimates the distribution concentration. ❑ % Markers: Shows vertical marker lines in the histogram at percentages corresponding to 1, 2, and 3 standard deviations of a normal distribution. If the distribution of the output is normal, these lines will be at the same position as the sigma lines. You can display the marker lines to get an idea about the distribution of points. For more information, see example. ❑ Std Dev Lines: Shows the standard deviation lines in the graph indicating the mean, mean – standard deviation, and mean + standard deviation values. ❑ Show Points: Shows points on the histogram. March 2015 © 1990-2015 339 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 8. (Optional) Select the Normal Quantile Plots check box to plot the quantile plots (Q-Q plots). 9. Click OK. The histogram plot appears in the Virtuoso Visualization and Analysis XL window, as shown below. Density Estimator Std Dev Lines The standard deviation lines indicate how the data points are spread, far away or close to the mean values. The gap between each vertical line is equal to one standard deviation. March 2015 © 1990-2015 340 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The example histogram given below shows how % markers are displayed. Sigma lines % Markers The label indicates that 34.13% of the total number of points fall between the mean value and 1.11998m The vertical marker lines are placed at percentages corresponding to 1, 2, and 3 standard deviations of a normal distribution. The following intervals are bound by vertical lines and labeled, where, a label between two marker lines displays the percentage of points that fall in the given range: ❑ 0.13% (-infinite to -3 sigma normal distribution) March 2015 © 1990-2015 341 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ❑ 2.14% (-3 sigma to -2 sigma normal distribution) ❑ 13.59% (-2 sigma to -1 sigma normal distribution) ❑ 34.13% (-1 sigma to mean normal distribution) ❑ 34.13% (mean to 1 sigma normal distribution) ❑ 13.59% (1 sigma to 2 sigma normal distribution) ❑ 2.14% (2 sigma to 3 sigma normal distribution) ❑ 0.13% (3 sigma to infinite normal distribution) You can display the marker lines to get an idea about the distribution of points. If the distribution of the output is normal, these lines will be at the same position as the sigma lines. Important Points to Note ■ The default histogram type is pass/fail. You can choose a different plot type from the Type drop-down list on the Plot Histogram form. ■ The annotations displayed in the graph vary depending on the histogram type. ■ If you select multiple outputs or parameters, each output or parameter is plotted in a separate subwindow. ■ By default, the histogram bars are filled with a transparent or alpha color to make the data points clearly visible. You can click on these points to cross-probe results on the Results tab. For more details, refer to Cross-Probing ADE XL Results from Histogram Plots. ■ When you choose to display the normal quantile plot, ADE XL plots the graphs in two subwindows, one shows the histogram and the other shows the normal quantile plot. For details on a normal quantile plot, refer to Normal Quantile Plots. ■ If you observe a large variation in the results for a particular output, you can view the Mismatch Contribution table to identify the devices that are contributing to that variation. If required, you can modify such devices in your design and rerun Monte Carlo to verify that the variation is reduced. For details on the how to view data in the Mismatch Contribution table, refer to Analyzing the Mismatch Contribution. ■ You can set the histogram options using the ADE XL Printing/Plotting Options form. ■ You can set the default values for the histogram options using the following environment variables: ❑ histogramType March 2015 © 1990-2015 342 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ❑ histogramBins ❑ showHistogramDensity ❑ showHistogramDeviation ❑ showHistogramPercentMarkers ❑ showHistogramPoints ❑ histogramQQPlot ❑ maxHistogramBins Important To view the Mismatch Contribution table, you would require the Analog_Design_Environment_GXL (95220) license. Plotting Combined Histograms When the results of a Monte Carlo simulation contain outputs for multiple corners, you can plot a combined histogram for the outputs of more than one or all the corners. You can plot a combined histogram in any one of the following two ways: ➡ On the Plot Histogram form, select the names of outputs for multiple corners. Next, select the Combine Histograms check box and click OK. March 2015 © 1990-2015 2 Select this check box 1 Select outputs for multiple corners 3 Click OK 343 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ➡ In the Yield view of the Monte Carlo results, press the Ctrl key and select the outputs for multiple corners. Right-click and choose Combine Histograms. The Virtuoso Visualization and Analysis XL window is opened displaying a combined histogram for all the selected outputs as well as an individual histogram for each output. March 2015 © 1990-2015 344 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis By default, all the histograms are visible. However, you can use the visibility (Vis) marker in the graph legend to control the display of an individual histogram. Important Points to Note ■ A combined histogram shows the combined values for all the corners used to plot the histogram. For example, it shows the mean or standard deviation value calculated over all the included corners. ■ You can move a leaf out of a combined histogram into a new window, subwindow, or strip, as shown below. March 2015 © 1990-2015 345 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ■ You can right-click on the name of any output in the graph legend and click Delete to remove the histogram for that output. The combined histogram is also redrawn to show the updated calculation. ■ You can cross-select data points from an individual leaf of a combined histogram into the Detail view of results. ■ You cannot merge multiple combined histograms into a single graph. ■ It is not possible to plot histograms for individual corners and then combine them. ■ If you select the Normal Quantile Plot check box, a sub window containing a combined normal quantile plot (Q-Q plot) is created. It contains all the points from the selected corners merged into a single Q-Q plot. You can change the visibility status of each leaf in a combined Q-Q plot and also cross-select data points from an individual leaf into the Detail view of results. However, you cannot move or delete individual leaves from this plot. March 2015 © 1990-2015 346 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Normal Quantile Plots A normal quantile plot (Q-Q plot) helps in comparing the actual result values for an output with the values predicted for a standard normal distribution. Normal quantile plot In the plot shown above, Y-axis shows the Monte Carlo results for an output (sample data) and the X-axis shows the normal quantiles of that sample data, which is calculated with mean=0 and standard deviation=1. You can compare this normal quantile graph (shown in red) with the linear trend line, which is a reference line that signifies how the data is plotted if it is perfectly normally distributed. The correlation between the normal quantiles and the sample data is a good measure to check how well the data is modeled by a normal distribution. Points of a normal quantile graph that fall on the linear trend line indicate a higher positive correlation. Points close to this line indicate that the data is close to normal distribution and the points far from this line indicate that the data is not close to normal distribution. March 2015 © 1990-2015 347 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis The correlation coefficient (r) of the points in the plot is calculated and displayed in the legend. This value indicates the relationship of the two variables, sample data and the normal quantiles. This value ranges between -1 and 1, where the value of 1 indicates a perfect positive correlation, -1 indicates a perfect negative correlation, and 0 indicates no correlation between the two. Cross-Probing ADE XL Results from Histogram Plots By default, the histogram bars are filled with a transparent or alpha color to make the data points clearly visible. When you click on any point on the histogram, the Detail view of results is opened in the Results tab and the result corresponding to that point is selected, as shown below. Similarly, you can cross-probe a result value from the Results tab to the histogram. March 2015 © 1990-2015 348 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Cross-probing is supported for the histograms plotted for outputs as well as statistical parameters. When you select a point on the histogram plotted for a statistical parameter, all the outputs of the corresponding design point are selected in the Detail or Detail – Transpose results views. The following figure shows an example of a cross-probed point from a histogram to the corresponding design point in the Detail view. If you do not need to cross-probe results from histogram, clear the Show Points check box on the Plot Histograms form or on the ADE XL Printing/Plotting Options form. You can also set the showHistogramPoints environment variable to nil. This fills the bars with solid red color and disables cross-selection from histogram points. Alternatively, you can clear the Symbols On command on the context-sensitive menu of a histogram. March 2015 © 1990-2015 349 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis You can also change the style of data points by using the Symbols command on the context-sensitive menu of a histogram and select any shape to be used as symbol. March 2015 © 1990-2015 350 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Plotting Scatter Plots To plot a scatter plot depicting the relationship between the pairs of outputs or parameters in the Monte Carlo results, do one of the following: 1. Click on the Results tab, select a test and choose Scatter Plot. Alternatively, switch to the Yield view, right-click a test name and choose Scatter Plot. The Create Scatter Plot form is displayed. Note that the names of all the outputs are displayed in the X-axis Data and Y-axis Data lists. To view the list of parameters, select Statistical Parameters from the drop-down lists given on top. 2. To make an output pair, select an output from each one of the X-axis Data and Y-axis Data list. 3. Click Add. Similarly, you can select more outputs or parameters. The selected pairs appears in the list box shown in the bottom right corner of the form. March 2015 © 1990-2015 351 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis 4. (Optional) Select a plotting mode from the Plot Mode list. The default value is Replace. For more details on the plotting modes, refer to Selecting the Plot Mode. 5. (Optional) Click Best Fit Line to draw a least-squares-fit line for each parameter pair. 6. Click OK. The scatter plot is displayed for the selected output or parameter pairs in the Virtuoso Visualization and Analysis XL window. An example is shown below. Note the following values in the trace legend: ■ r shows the correlation coefficient, that is, how correlated the X- and Y-axis data are to each other. The value of r ranges between -1.0 and 1.0. March 2015 © 1990-2015 352 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis ■ b is the constant value and m is the value of slope in the linear equation describing the best fit line of the plotted data. The linear equation that is used to find the best fit line is y = b + mx. March 2015 © 1990-2015 353 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Viewing Sensitivity Results To view data on the sensitivity of variables and measurement expressions for a Monte Carlo run, do one the following: ■ Click the Sensitivity Results button on the Results tab. ■ In the History tab on the Data View pane, right-click on the history item for a Sensitivity Analysis or Monte Carlo run and choose Sensitivity Results. The Sensitivity Analysis form appears displaying the sensitivity results. For more information about the Sensitivity Analysis form, see the Virtuoso Analog Design Environment GXL User Guide. Viewing Statistical Parameters for Monte Carlo Samples After running a Monte Carlo analysis, you can switch to the Detail view on the Results tab of the Outputs pane to view the detailed results for each Monte Carlo sample. If the results for any sample need further investigation, you can view the statistical parameters for that sample so that you can debug your design. To view and print the statistical parameters for a Monte Carlo sample, do the following: 1. In the Select the results view drop-down list on the Results tab of the Outputs pane, select Detail. The Detail view is displayed. 2. Right-click on a result for a sample in the Nominal column and select Print Statistical Parameters. The statistical parameters for that sample are displayed in a Results Display Window. For information about printing the contents in the Results Display Window, see Printing Results from the Results Display Window on page 725. March 2015 © 1990-2015 354 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Saving Monte Carlo Results in CSV Format After a Monte Carlo run is complete, you can save the results in CSV format. ADE XL saves the results for each corner in a separate .csv file. For this, do the following: ➡ In the History tab on the Data View pane, right-click on a Monte Carlo run history and choose Export Data to CSV. The Export Monte Carlo Data to CSV form is displayed. The Directory field shows the default directory, \documents, where the .csv files are saved. If required, you can change this path and click OK. ADE XL exports the output data for each corner in a separate .csv file and saves it in the specified directory. The names of these .csv files are also listed in the Documents list in the Data View assistant. To open a .csv file fro the ADE XL window, right-click a file in the Data View assistant and choose Open. The file is opened in the default text editor. March 2015 © 1990-2015 355 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Running Multi-Technology Simulations for Monte Carlo Analysis You can run a Monte Carlo analysis in the multi-technology mode by enabling the Multi-Technology Mode option for a simulator and specifying the related Multi-Technology Simulation (MTS) options. For details on how to enable these settings, refer to the Multi-Technology Simulation chapter in the Analog Design Environment GXL user guide. After identifying the MTS blocks and specifying MTS options for them, run the Monte Carlo analysis. If you have specified different model libraries for the MTS blocks, the statistical and process parameters used for those blocks are different than the parameters used for the non-MTS blocks. Viewing Results of Monte Carlo Analysis with MTS After a multi-technology simulation is run, you can view the results on the Results tab. To view the process and statistical parameters used for simulation of a data point, change the results view to the Yield view, right-click on a result data cell and choose Print Statistical Parameters. The Results Display Window shows a list of all the process and statistical parameters along with the statistical value used for simulation. Note that the names of parameters for the MTS blocks are prefixed with the name of their corresponding block. For example, in the following figure, the names of parameters for the inv MTS block are prefixed with inv. March 2015 © 1990-2015 Parameters for the inv MTS block Parameters for a non-MTS block 356 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis Similarly, in the Sensitivity Analysis results window, the parameter names for MTS blocks are prefixed with the name of their corresponding block. For more details, refer to Support for MTS in Sensitivity Analysis in Analog Design Environment GXL user guide. March 2015 © 1990-2015 357 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Monte Carlo Analysis March 2015 © 1990-2015 358 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 8 Performing Reliability Analysis ADE XL supports Cadence® Virtuoso® RelXpert Reliability Simulator and native reliability analysis in Spectre and APS. The reliability analysis analyzes the effect of time on circuit performance drift and predicts the reliability of designs in terms of performance. In ADE XL, you can run the reliability simulation for fresh test (when time is zero), stress test (to generate degradation data), and aged test (at specific intervals, such as 1 yr, 3 yrs, or 10 yrs). In the stress test, extreme environmental conditions are used to stress devices before aging analysis. Note: The RelXpert Reliability Simulator interface in ADE XL is supported with the Spectre Simulator in MMSIM 7.2 or a later version. For more information, see Virtuoso RelXpert Reliability Simulator User Guide. This chapter describes how to set up and run reliability simulation in ADE XL. See the following topics for more information: ■ Simulator Modes for Reliability Analysis on page 360 ■ Specifying the Reliability Analysis Setup on page 360 ■ Reliability Form on page 364 ■ Running the Reliability Simulation on page 366 ■ Working with RelXpert Data on page 368 ■ Annotating Simulation Results to Schematic View on page 376 Important Currently, reliability analysis is run with Sweeps and Corners run mode only. You can sweep design variables including age. This analysis is not compatible with any other run mode. March 2015 © 1990-2015 359 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Simulator Modes for Reliability Analysis You can run reliability analysis in two simulator modes: ■ Spectre native: The Spectre native mode runs simulations using the Spectre simulator. The is the default simulator mode and gives higher performance for large circuits. Starting from MMSIM10.1.1 ISR6, Spectre native reliability analysis supports the BSIM3V3, BSIM4, BSIMSOI and PSP102 models. Note: To know more about the Spectre native simulator mode and the models supported by it, refer to the Reliability Simulation Block section in Virtuoso® Spectre® Circuit Simulator and Accelerated Parallel Simulator User Guide. ■ RelXpert: The RelXpert mode runs simulations using the RelXpert simulator. This mode accepts agemos parameters for BSIM3v3 and BSIM4 and supports the agemos method for aged .model card generation. You can choose a simulator mode by using the Reliability form. Specifying the Reliability Analysis Setup Before you specify the reliability analysis setup, ensure that you do the following: ■ In the Data View assistant pane, select the tests on which you want to run the reliability simulation (fresh, stress, and aged). This is required because only the tests you select in the Data View assistant pane are visible in the setup form. ■ On the Run toolbar, in the Select a Run Mode drop-down list, select Single Run, Sweeps and Corners. Reliability analysis is supported only for this run mode. To specify the reliability analysis setup, follow the steps listed below: 1. In the Data View assistant pane, expand the Reliability Analyses node and click where it says Click to add reliability analysis setup. March 2015 © 1990-2015 360 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis The Reliability Analysis Setup form appears. 2. In the Analysis Name field, specify a unique name for the reliability analysis setup. 3. From the Fresh Test drop-down list, select the name of the test you want to use for running fresh simulation. 4. From the Stress Test drop-down list, select the name of the test you want to use for running stress simulation. 5. From the Aged Test drop-down list, select the name of the test you want to use for running an aging simulation. Note the following important points with respect to the selection of tests for the fresh, stress, and aged test: ❑ It is possible to specify different test names for fresh, stress, and aged tests. However, the reliability options, set in step 7, are used only from the fresh test. ❑ Simulation for an aged test uses the simulation data generated by the stress test. Therefore, a stress simulation must be run before an aging simulation is run. ❑ If you select a test that is already specified in another reliability analysis setup, ADE XL displays a warning stating that any changes that you make to this test take effect in the other reliability analysis setups too. March 2015 © 1990-2015 361 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis The table displayed at the bottom of the form shows the values of variables to be used for fresh, stress, and aged tests, 6. If required, for the stress and aging simulations, you can modify values of the variables in this table. For the fresh test, you can modify the values in the ADE XL Test Editor. 7. Click Options. The Reliability form appears. March 2015 © 1990-2015 362 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis March 2015 © 1990-2015 363 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis 8. In the Reliability form, specify options for the simulation. These options for reliability analysis are stored in the setup for the fresh test, but the same options are applied to all fresh, stress, and aging simulations. Note: If you have already specified reliability options for the fresh test in the ADE L environment or ADE XL Test Editor, the same settings are displayed in the Reliability form. If required, you can modify the settings in the ADE XL environment. For details of the Reliability form, refer to Reliability Form. 9. After specifying the reliability options, close the Reliability form. 10. Click OK to close the Reliability Analysis Setup form. The reliability setup appears under the Reliability Analysis tree on the Data View assistant pane. If required, you can add notes to the reliability analysis setup you have created. For this, right-click on the reliability analysis setup name on the Data View assistant pane and click Notes to open the Add/Edit Notes form. Add notes in the Notes field and click OK. These notes are displayed in the tooltip for the setup and saved in the setup database. For related information, see Adding Notes to a Test. Reliability Form The Reliability form specifies options for reliability analysis. This form contains four tabs: Basic This tab contains basic options to be used for reliability analysis. In the Reliability Analysis section, you can enable/disable the reliability analysis for the test. An important option to set on this tab is to choose a simulator mode that you want to use for reliability analysis. March 2015 © 1990-2015 364 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis For details about the two simulator modes, refer to Simulator Modes for Reliability Analysis. Advanced This tab contains advanced options to be used for reliability analysis. For more details about the options on this tab, refer to Reliability in Analog Design Environment L User Guide. HCI By using the options on this tab, you can control of the accuracy and approach in calculating the HCI effects during the aging analysis. For more details about the options on this tab, refer to Reliability in Analog Design Environment L User Guide. Gradual Aging By using the options on this tab, you can set options to measure the effects of gradual aging by sweeping age. For this, you need to enable Gradual aging and specify an aging mode and related options. For more details about the options on this tab, refer to Reliability in Analog Design Environment L User Guide. Important There are many options on the Reliability form that are not enabled for the Spectre native mode. For the complete list of those options, refer to Reliability Options Not Supported In Spectre Native Simulator Mode in Analog Design Environment L User Guide. March 2015 © 1990-2015 365 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Running the Reliability Simulation Before you run reliability simulation, ensure that the following prerequisites are met: ■ A Spectre or APS transient analysis is set up and enabled for the fresh, stress, and aged tests. You can set these by using the ADE XL Test Editor. ■ The Enable Reliability check box is selected in the RelXpert Options form. To run the reliability simulation: ➡ Click the Run Simulation button . The fresh, stress, and aging simulations are run for the specified tests. To view the RelXpert simulation result data, right-click on the Results tab and choose an appropriate option from the menu shown in the following figure. For more details on how to view RelXpert simulation result data, refer to Working with RelXpert Data. March 2015 © 1990-2015 366 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Important Points to Note ■ You can also run multiple RelXpert setups simultaneously. When you run multiple setups, an additional column, Relx, is visible before the Age Column on the Results tab. The Relx column specifies the name of the corresponding RelXpert setup. The number of results sets generated from the reliability analysis is determined by the total number of data points on which the simulations specified in the reliability analysis setup is run. Consider a reliability analysis with the following data that needs to be run for fresh and aged tests (two age points): ❑ 1 variable with 2 sweep points ❑ 3 corners (2 corners + 1 nominal corner) In this example, each simulation (one fresh and two aging) is run 6 times. Therefore, the total number of data points for which the reliability analysis is run is 18. For more information, see the Working with RelXpert Data. ■ If we have enabled Reliability Analysis in ADE XL, simulations are run only for those tests that are part of any of the Reliability Analysis setup. Therefore, if there are any tests that are enabled in ADE XL user interface, but are not used as fresh, stress, or aged tests in the Reliability Analysis setup, those tests are ignored. In such a case, the following warning message is displayed in CIW. WARNING (ADEXL-7005): The following tests are not being used in any of the enabled Reliability Analysis setups and hence it will be disabled for the current run ■ RelXpert Reliability Simulator always runs in batch mode. Therefore, ADE XL too automatically runs in batch mode when you enable RelXpert. The following message is displayed in CIW indicating the change in mode: WARNING: The Spectre run mode needs to be 'batch' when running RelXpert. Automatically setting the run mode to 'batch'. ■ Consider the case of an ADE XL setup in which reliability analysis is not set up. If you modify a testbench in the ADE XL Test Editor, and enable reliability analysis, after you close the Test Editor, a default reliability setup named Default_Relx is created in the Data View pane. However, it is important to note that the default ADE XL reliability setup will be created only for the test for which reliability setup is enabled in the Test Editor. Once a default setup has been created for a test, if you create or modify another test in the Test Editor, no default setup will be created for that test. March 2015 © 1990-2015 367 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Working with RelXpert Data With RelXpert data, you can do the following: ■ Viewing Simulation Results ■ Viewing Aged Netlist ■ Plotting Results ■ Plotting Results Across Corners ■ Printing or Plotting Stress Results for Gradual Aging Run ■ Annotating Simulation Results to Schematic View Viewing Simulation Results To view simulation results, do the following: 1. On the Results tab, select the required test. 2. Right-click the selected test and choose Reliability Data. If you have used MMSIM 11.1 to run simulation, the following submenu is displayed. Note: Depending on the type of test: fresh, stress or aged; the simulator mode: native or RelXpert); and the reliability setup, only those commands are available in this submenu for which the corresponding results are available. 3. Choose Results. March 2015 © 1990-2015 368 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis The RelXpert Results Display form appears. 4. In the RelXpert Results Display form, you can do the following: Click... Device Lifetime and Degradation To... Display the lifetime and degradation values for all degraded devices. March 2015 © 1990-2015 369 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Device Characteristic Degradation Model Parameter Changes Display the device degradation for the specified aging time period. Display fresh and aged parameter information. For more details on this forms to view reliability results, refer to Virtuoso Analog Design Environment L User Guide. Note: If you have used MMSIM 12.1 to run simulation, the following submenu is displayed and you can directly use these commands to view the reliability data. Viewing Aged Netlist To view the aged netlist for a test: 1. In the Virtuoso ADE XL window on the Results tab, select the result of an aged test. 2. Right-click the selected test and choose Reliability Data – Aged netlist. March 2015 © 1990-2015 370 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis The aged netlist generated by the RelXpert Reliability Simulator is displayed in a new window. A sample is shown below. Note: The Aged Netlist command is available only when aging results are generated from an aging simulation run. This command is disabled if an aging simulation is not run as part of the reliability simulation. Plotting Results You can plot the fresh, stress, or aged results in the Virtuoso Visualization and Analysis XL window. To plot the results: ➡ On the Results tab, right-click on the fresh, stress, or aged result and choose Plot. The results are plotted in the Virtuoso Visualization and Analysis XL window. Note that in the plot of fresh test, the graph legend shows age value as 0 and for the age test, the legend shows the age in years. However, for the stress result, the trace legend and trace March 2015 © 1990-2015 371 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis name for the stress plot shows age=stress to indicate that the results are plotted for stress results, as shown below. Plotting Results Across Corners You can plot the fresh and aged results across corners. To plot results across corners: ➡ On the Results tab, right-click on the fresh or aged result and choose Plot Across Corners. March 2015 © 1990-2015 372 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis The results are plotted in the Virtuoso Visualization and Analysis XL window, as shown below. Note: When you plot the results of Reliability analysis across corners, age is plotted on the x-axis. Printing or Plotting Stress Results for Gradual Aging Run If you had chosen to save the results data for gradual aging, you can print or plot the stress results for every age point for which data was saved. March 2015 © 1990-2015 373 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis ■ Printing Stress Results for an Age Point ■ Plotting Stress Results for an Age Point Printing Stress Results for an Age Point To print stress results for an age point: 1. On the Results tab, select the result of that age point. 2. Right-click and choose Print Stress Results. A text file containing the stress results is displayed, as shown below. March 2015 © 1990-2015 374 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Note: The Print Stress Results command is available only for the aging points of the gradual aging run. It is not available for fresh and stress points or age point of non-gradual aging run. Plotting Stress Results for an Age Point To plot stress results for an age point: 1. On the Results tab, select the result of that age point. 2. Right-click and choose Plot Stress Results. The results are plotted in the Virtuoso Visualization and Analysis XL window, as shown below. March 2015 © 1990-2015 375 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Note: The Plot Stress Results command is available only for the aging points of the gradual aging run. It is not available for fresh and stress points or age point of non-gradual aging run. Annotating Simulation Results to Schematic View To annotate the device lifetime and degradation results to schematic view: 1. In the Virtuoso ADE XL window, on the Results tab, select the required test. 2. Right-click the selected test and choose Reliability Data – Results. The RelXpert Results Display form appears. 3. Select the RelXpert modes for which you want to backannotate the results. March 2015 © 1990-2015 376 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis Results are backannotated based on the specified threshold values. For example, if the Lifetime (year) (<=) field specifies a threshold value of 10, results are backannotated only to those instances whose lifetime is less than or equal to 10 years. 4. Select the threshold rules based on which you want to backannotate the results. The threshold rules corresponding to the selected modes are displayed in the form. The fields containing the default threshold values for the selected rules become available. 5. Click the Annotate button. The instances to which the results are backannotated are highlighted in yellow in the schematic. Note: In a hierarchical design, a block is highlighted if results are backannotated to an instance in that block. When you descend into the block, the instances to which the results are backannotated are also highlighted. March 2015 © 1990-2015 377 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Performing Reliability Analysis March 2015 © 1990-2015 378 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 9 Working with Model Files and CDF Model files contain definitions for models used in your design that are not defined in the library. You can specify the model files you want to reference for simulation on the Model Library Setup form. You can associate a model name (from one of your referenced model files) with a component on your schematic by setting the Model name CDF parameter. The Model name could refer either to a model definition or to a subcircuit (also called macro) definition. To netlist a subcircuit correctly, you must have a symbol cellview, a stopping cellview, and appropriate CDF information on the cell. For example, the opamp schematic in the aExamples library contains instances of npn and pnp bipolar transistors (the Model name is set to npn or pnp accordingly). Cadence provides model definitions for Spectre circuit simulation of these parts in the file your_install_dir/tools/dfII/samples/artist/models/spectre/bipolar.scs You can declare this model library file by typing the path and file name above in the Model Library File field on the Model Library Setup form. Note: See “Simple Device Models” in the Direct Simulation Models chapter of the Direct Simulation Modeling Guide for more information. See also ■ Specifying Model Libraries on page 106 ■ Associating a Model or Subcircuit Name with an Instance on page 380 ■ Editing Component CDF on page 381 ■ Adding a Model Name Parameter to a Component’s CDF on page 383 ■ Using Component CDF to Specify Simulation Information on page 385 ■ Creating a Stopping Cellview on page 385 ■ Varying the Model File and Section during Simulation on page 387 ■ Editing a Model File on page 390 ■ Disabling a Model File on page 390 March 2015 © 1990-2015 379 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Associating a Model or Subcircuit Name with an Instance To associate a model or subcircuit name with an instance on your schematic do the following: 1. On the schematic, select the component. The instance name and its parameters appear in the scrolling list area on the top part of the Parameters tab on the Variables and Parameters assistant pane. 2. Locate the model-name parameter (such as model). You can use a filter to narrow the device instance parameter selection list. If your component does not have a model name parameter in its CDF, see “Adding a Model Name Parameter to a Component’s CDF” on page 383. If your component does have a model name parameter but the parameter value is not editable, see “Making the Model Name Parameter Editable” on page 384. See also Toggling the View on the Variables tab of the Variables and Parameters Assistant Pane . 3. Double-click in the Value column and type a model name. 4. Use the Model Library Setup form to specify the file containing the model or subcircuit definition whose name you typed in the Value column (see “Specifying Model Libraries” on page 106). March 2015 © 1990-2015 380 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Editing Component CDF To Edit CDF, do the following: 1. In the CIW, choose Tools – CDF – Edit. The Edit CDF form appears. 2. For Scope, select the Cell radio button. See “CDF Selection” in the "CDF Commands" chapter of the Component Description Format User Guide for information about this selection. 3. In the CDF Layer group box, select a CDF type: Effective, Base, or User. See “CDF Layer” in the "CDF Commands" chapter of the Component Description Format User Guide for information about this selection. 4. Click Browse. March 2015 © 1990-2015 381 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF The Library Browser form appears. 5. In the Library Name drop-down list, select a library. 6. In the Cell drop-down list, select a cell. The CDF information for the cell is displayed on the Edit CDF form. See also ■ Adding a Model Name Parameter to a Component’s CDF on page 383 ■ Making the Model Name Parameter Editable on page 384 ■ Using Component CDF to Specify Simulation Information on page 385 March 2015 © 1990-2015 382 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Adding a Model Name Parameter to a Component’s CDF To add a parameter for model name to your component, do the following: 1. Open the Edit CDF form. 2. Specify the cell (component) whose CDF you want to edit. 3. In the Name column on the Component Parameter tab, click where it says . Specify your model name parameter as follows: Column Name Prompt Type Parse as CEL P arse as number Value Type model. Type Model name. Select string as the parameter type. Select no from the drop-down list. You do not want your model name parsed as an expression. Select no from the drop-down list. You do not want your model name parsed as a number. 4. Click Apply to apply your changes and leave the form open, or OK to apply your changes and close the form. For more information, see “Defining Parameters” in the Component Description Format User Guide. March 2015 © 1990-2015 383 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Making the Model Name Parameter Editable To make the model name parameter editable (so that you can vary it during simulation), do the following: 1. Use the Edit CDF form to edit the component’s CDF. 2. In the CDF Layer group box, select Base. 3. In the Component Parameter tab, select the model-name parameter (such as model). 4. In the Editable Condition field, type a non-nil value. 5. Click OK. 6. On the Edit CDF form, click OK. When you select this component instance on your schematic, the model-name parameter appears in the list of CDF Editable device instance parameters in the Parameters tab on the Variables and Parameters assistant pane. March 2015 © 1990-2015 384 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Using Component CDF to Specify Simulation Information To specify how you want the software to netlist your component, what parameters to pass to the underlying subcircuit or model definition, and the order of the input terminals (for netlisting), do the following: 1. Use the Edit CDF form to edit the component’s CDF. 2. Click the Simulation Information tab. 3. Select the By Simulator radio button and select your simulator in the drop-down list. 4. In the following fields, you can specify how you want the software to netlist your component, what parameters to pass to the underlying subcircuit or model definition, and the order of the input terminals (for netlisting): Field netlistProcedure otherParameters instParameters termOrder Value Type the name of a netlist procedure or leave this field blank to use the default netlist procedure. Type model to specify a parameter for model or subcircuit name. Type the names of one or more component parameters (space-separated) you want to pass into the subcircuit or model. Type the names of the symbol’s terminals in the order you want them netlisted (the order must match the node order on the subckt line or that of the model referenced). Note: For more information, see “Modifying Simulation Information” in the Component Description Format User Guide. Creating a Stopping Cellview Important You must have write privileges on the library to perform this task. To create a stopping cellview for your simulator, do the following: 1. Edit the symbol cellview. March 2015 385 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF 2. Choose Design – Save As. The Save As form appears. 3. In the View Name field, type a view name to represent your simulator. For example, for the Spectre circuit simulator, type spectre. 4. Click OK. The environment creates a new cellview (as a directory of files) in the specified library. March 2015 © 1990-2015 386 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Varying the Model File and Section during Simulation To make the model file or section something you can vary during simulation, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Model Libraries. The Model Library Setup form appears. 2. In the Model File column, double-click and type a variable name for the model file you want to vary (or as a part of the model file path) using the following format: VAR("variableModelFileName") For example: VAR("myModelFile") or ../models/VAR("section")/models.scs 3. In the Section column, double-click and type a variable name for the section you want to vary. For example: VAR("myModelCorner") Note: For more information about sections in model files, see “Corners Modeling” in the Direct Simulation Modeling User Guide. 4. Click Apply. Variables you specify using VAR (such as myModelFile or section, and myModelCorner) appear on the Variables tab of the Variables and Parameters assistant pane. March 2015 © 1990-2015 387 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF 5. Double-click in the Value column for each global variable and type a value. For example: Name Global Variables myModelCorner myModelFile Value "NN" "$PROJECT1/path/to/myModels.scs" You can vary these global variables in parametric sweeps and corners analysis. March 2015 © 1990-2015 388 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Here is an example application using VAR in the specification of a model file to sweep through different model types. If you have model files stored in a directory hierarchy such as the following: ../models/sectionIdentifier/models.scs where sectionIdentifier is the model type (such as typ, ff, ss), you can create a sweep of model types as follows: 1. On the Model Library Setup form, double-click in the Model File column and type the following: ../models/VAR("section")/models.scs 2. Click OK. The section variable appears in the Global Variables tree on the Variables tab of the Variables and Parameters assistant pane. 3. Double-click in the Value column for section and click the ellipsis that appears at the right end of the field. The Parameterize form appears. 4. Click Add Specification and select Inclusion List from the drop-down list: 5. In the Values field, type the set of model types (valid section names from the model file) through which you want the program to sweep. For example: "typ", "ff", "ss" The program sweeps through all values of section. March 2015 © 1990-2015 389 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Model Files and CDF Editing a Model File To edit a model file, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Model Libraries. The Model Library Setup form appears. 2. Select the model library you want to edit and click Edit File. The model file appears in an editing window. 3. Make the edits you want to make. 4. Save and exit the file. 5. On the Model Library Setup form, click OK. Disabling a Model File To disable a model file for a test, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Model Libraries. The Model Library Setup form appears. 2. Deselect the check box for the model library you want to disable. 3. Click OK. March 2015 © 1990-2015 390 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 10 Netlisting The environment generates the following files for simulation: File Netlist Simulator input file Description Contains component and design connectivity information only Contains the netlist and simulator control information Note: The environment passes the simulator input file to your configured simulator. ADE XL creates or updates the simulator input file automatically when you give the command to run a simulation. The environment creates hierarchical netlists incrementally: incremental netlisting is faster than full hierarchical netlisting because the environment updates the netlist only for those schematics that have changed since it created the previous netlist. Alternatively, you can generate a netlist and simulator input file when ■ You want to run the simulator in stand-alone mode ■ You want to modify the netlist to take advantage of features that the design environment interface to your simulator does not support ■ You want to read the netlist before running the simulation See the following topics for more information: ■ Creating a Netlist on page 392 ■ Displaying a Netlist on page 392 ■ Expanding Hierarchy to Netlist a Design on page 393 March 2015 © 1990-2015 391 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Netlisting Creating a Netlist To create and display the simulation input file, which contains the netlist, do the following: ➤ On the Data View assistant pane, right-click the test or analysis name and choose Netlist – Create. To recreate the netlist, choose Netlist – Recreate. Displaying a Netlist To display an existing simulator input file, do one of the following: ➤ On the Data View assistant pane, right-click the test and choose Netlist – Display. ➤ On the Results tab of the Outputs pane, right-click a test and choose Netlist – Display. March 2015 © 1990-2015 392 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Netlisting Expanding Hierarchy to Netlist a Design While netlisting a hierarchical design, the environment expands every cell (instance) into lower level cells until it reaches one designated as a primitive. The environment adds each primitive to the netlist. At each level in your design hierarchy, you can have one or more views for each cell. You use a view list to specify which view the design environment selects for expansion during netlisting. View lists can be global to the entire design or specific to an instance as specified by its property values. For analog simulation, you specify the global or default view list in the Switch View List field of the Environment Options form when the selected cellview is not a configuration (config) view. If an instance does not have any of the views listed in the switch view list, the netlister reports an error. The netlister uses the stop list, which you specify in the Stop View List field on the Environment Options form, to identify primitives. When the netlister reaches a view that is specified in both the switch and the stop list, it netlists the instance and does not expand beyond this level. For more information, see the Virtuoso AMS Hierarchy Editor User Guide. Note: Parasitic simulation and mixed-signal simulation use different processes for creating switch and stop view lists. See the Virtuoso Parasitic Aware Design User Guide and the Virtuoso Mixed-Signal Circuit Design Environment User Guide for more information. March 2015 © 1990-2015 393 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Netlisting The following flowchart shows how a typical OSS-based netlister netlists a design. Start at the top-level cell. Read the first view in the Switch View List. Does the view exist for this cell? Yes No Read the next view in the Switch View List. Pick the next cell instantiated in this cellview. Is the view on No the stop list? Yes Netlist the instance. Descend into view. March 2015 © 1990-2015 394 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Netlisting The following figure illustrates how hierarchy expansion is performed on a simple design. The solid lines show the view selection and design expansion based on the switch view list and stop view list shown. Switch View List: Stop View List: spectre schematic cmos.sch verilog spectre verilog schematic inv1 inv2 symbol schematic verilog nmos pmos symbol schematic verilog nmos pmos symbol spectre symbol spectre symbol spectre symbol spectre March 2015 © 1990-2015 395 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Netlisting March 2015 © 1990-2015 396 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 11 Selecting Data to Save and Plot From the Outputs Setup tab of the Outputs pane, you can specify nets, terminals, and measurements you want to save and plot. You can save all node voltages and terminal currents or specify a set of voltages and currents you want to save. You can select output nodes and terminals on your schematic and build expressions using the Calculator to analyze or measure particular results. Each item that appears on the Outputs Setup tab has a Plot check box and a Save check box. You can select the check box for those outputs you want to plot or save, or deselect the check boxes of those items you do not want to plot or save. See the following topics for more information: ■ Opening the Outputs Setup Tab on page 399 ■ Selecting Output Signals on the Schematic on page 400 ■ Specifying Whether a Result Will Be Saved or Plotted on page 403 ■ Adding an Output Expression on page 404 ■ Creating Dependent Expressions on page 407 ■ Creating Expressions to be Measured Across Corners on page 410 ■ Creating a Combinatorial Expression on page 409 ■ Modifying an Output Expression on page 419 ■ Loading an OCEAN or a MATLAB Measurement on page 424 ■ Copying Outputs on page 428 ■ Adding User-Defined Columns in the Outputs Setup Tab on page 430 ■ Exporting Outputs to a CSV File on page 434 ■ Importing Outputs from a CSV File on page 436 ■ Configuring How Outputs Appear on the Outputs Setup Tab on page 439 March 2015 © 1990-2015 397 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot ■ Selecting Outputs to Save or Plot on page 442 ■ Removing Outputs on page 442 ■ Saving All Voltages or Currents on page 444 March 2015 © 1990-2015 398 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Opening the Outputs Setup Tab You can use the Outputs Setup tab of the Outputs pane to add a new output signal/ expression/OCEAN or MATLAB script or to change an existing output. To open the Outputs Setup tab, do the following: ➤ On the Welcome to ADE XL pane, click the hypertext link below Outputs. The Outputs pane appears displaying the Outputs Setup tab. See the following topics for more information: ■ Selecting Output Signals on the Schematic on page 400 ■ Adding an Output Expression on page 404 ■ Modifying an Output Expression on page 419 ■ Specifying Whether a Result Will Be Saved or Plotted on page 403 ■ Copying Outputs on page 428 ■ Adding User-Defined Columns in the Outputs Setup Tab on page 430 ■ Configuring How Outputs Appear on the Outputs Setup Tab on page 439 ■ Selecting Outputs to Save or Plot on page 442 ■ Removing Outputs on page 442 ■ Loading an OCEAN or a MATLAB Measurement on page 424 March 2015 © 1990-2015 399 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Selecting Output Signals on the Schematic You can select outputs on the schematic and specify whether you want to save or plot them. To select an output on the schematic, do the following: Note: This procedure allows you to select only one output on the schematic. If you want to select multiple outputs on the schematic at a time, see Selecting Outputs to Save on page 401 and Selecting Outputs to Plot on page 401. 1. On the Outputs Setup tab, click the button. 2. In the drop-down list, select a test and choose Signal. A new row is added for the test with the output type signal. Tip You can double-click on the test name or output type to select a different test or output type from the drop-down list that appears in the Test or Type column. 3. (Optional) In the Name field, type the name for the output. This name appears in the Waveform window. 4. Double-click on the Expression/Signal/File field and click the ellipsis button. The schematic window appears in a tab. 5. In the schematic, select a signal. The signal name appears in the Expression/Signal/File field on the Outputs Setup tab. By default, the Plot and Save check boxes are selected. 6. (Optional) You can select or deselect either or both of the check boxes: ❑ Plot — The program plots the specified signal output after simulation. ❑ Save — The program saves the signal output to the simulation results file. See also the following topics for more information: ■ Selecting Outputs to Save on page 401 ■ Selecting Outputs to Plot on page 401 ■ Selecting Nodes, Nets, and Terminals on page 402 ■ Setting Plotting Options for Specific Tests on page 662 March 2015 © 1990-2015 400 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot ■ Viewing and Editing Output Signals or Expressions in Calculator Selecting Outputs to Save To select outputs to be saved, do the following: 1. On the Outputs Setup tab of the Outputs pane, right-click a test and choose To be saved. The schematic window appears in a tab. 2. On the schematic, select one or more nodes, nets, or terminals. 3. Press the Esc key when you are done. The name of each selected item appears (such as /out or /I2/PLUS) in different rows in the Outputs Setup tab. The Save check box is selected. Selecting Outputs to Plot To select outputs to be plotted, do the following: 1. On the Outputs Setup tab of the Outputs pane, right-click a test and choose To be plotted. The schematic window appears in a tab. 2. On the schematic, select one or more nodes, nets, or terminals. 3. Press the Esc key when you are done. The name of each selected item appears (such as /out or /I2/PLUS) in different rows in the Outputs Setup tab. The Plot check box is selected. Note: For nets, both the Plot and Save check boxes are selected. The program plots the selected items in a waveform window at the end of the simulation. See also Setting Plotting Options for Specific Tests on page 662. March 2015 © 1990-2015 401 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Selecting Nodes, Nets, and Terminals Do not click on the wire stub. Click here to choose the terminal current. Click anywhere on the wire to choose the node voltage. A circle appears around each pin when you choose a terminal and wires appear highlighted when you choose a net. You can alternate between selecting a terminal and selecting the wire to which it is connected. You can ■ Click on an instance to choose all instance terminals. ■ Click on the square pin symbols to choose currents. ■ Click on wires to choose voltages. ■ Click and drag to choose voltages by area. ■ Select nodes and terminals on lower-level schematics by doing the following: a. In the schematic window, choose Design – Hierarchy – Descend Edit. b. Select a hierarchical instance. The Descend form appears. c. Click OK. The lower-level schematic appears. d. In the schematic window, select one or more nodes, nets, or terminals. March 2015 © 1990-2015 402 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Specifying Whether a Result Will Be Saved or Plotted You can specify whether an item will be saved to the results database or plotted in a waveform window on the Outputs Setup tab of the Outputs pane by selecting or deselecting the Plot or Save check box for the item. Selecting the Plot check box causes the selected item or items to appear in a waveform window at the end of the simulation. Note: If none of the outputs specified for a test are selected for plotting, the following warning message is displayed in the CIW: (ADEXL-1617): Following tests do not have any outputs selected for plotting: ... March 2015 © 1990-2015 403 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Adding an Output Expression You can use the Outputs Setup tab of the Outputs pane to add output expressions. You can type an output expression directly in the Expression/Signal/File field or use the Calculator to build an output expression. To add an output expression, do the following: 1. On the Outputs Setup tab, click . 2. In the drop-down list, select a test and choose Expression from the sub menu. A new row is added for the test with the output type expr. Tip You can double-click on the test name or output type to select a different test or output type from the drop-down list that appears in the Test or Type column. 3. (Optional) In the Name field, type a name for the expression. This expression name appears in the Virtuoso Visualization and Analysis XL window. 4. (Optional) The default value in the EvalType column is point. This signifies that by default the expression will run for the given design point. If you want to run the expression for all corners across the design point, double-click in the EvalType cell and select corners from the pull-down list. When you set the EvalType as corners, the color of the row is changed to blue. For more details, refer to Creating Expressions to be Measured Across Corners on page 410. 5. Double-click on the Expression/Signal/File field. 6. Type an output expression directly in the Expression/Signal/File field or use the Calculator to build an output expression. To add the output expression using the calculator, do the following: a. Click the ellipsis button. The Calculator window appears. b. In the Calculator window, build an output expression. For example, you can build an expression for the 3 dB point of an output signal as follows: bandwidth(VF("/OUT), 3, "low") March 2015 © 1990-2015 404 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot c. Do one of the following: ❍ Choose Tools – Send to ADEXL Test in the Calculator window. ❍ On the Outputs Setup tab, click the field. button in the Expression/Signal/File The expression appears in the Expression/Signal/File field. Note: While performing the division of two integer or floating point values, if denominator is greater than numerator, the division results are truncated. For example, if you perform the division of 1/2, the int function displays the result as 0 instead of 0.5. For more information about how the integer and floating point division is performed using SKILL, see Integer vs. Floating-Point Division in the Arithmetic and Logical Expressions chapter of the Cadence SKILL Language User Guide. See also: ❑ Creating Dependent Expressions on page 407 ❑ Creating Expressions to be Measured Across Corners on page 410 7. (Optional) Change the Plot and Save options for the expression, if required. See also Specifying Whether a Result Will Be Saved or Plotted on page 403. 8. (Optional) In the Spec and Weight columns next to the expression, define the specification and the weighting factor for the specification for the output expression. For more information, see Defining a Specification on page 747. 9. (Optional) In the Units column next to the expression, specify the unit value to be used for displaying the measured results for the expression in the Results tab of the Outputs pane. For example, if you specify the unit value as dB for an expression named Gain, the measured results for the expression is displayed with the unit value dB in the Results tab of the Outputs pane. 10. (Optional) In the Digits column next to the expression, specify the number of significant digits in which the measured results for the expression needs to be displayed in the Results tab of the Outputs pane. Valid values are 2 to 15. Note: If you do not specify the number of significant digits, the default number of significant digits specified in the Default Formatting Options form will be used to display the measured results for the expression in the Results tab. For more information, see Specifying Default Formatting Options on page 605. March 2015 © 1990-2015 405 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot 11. (Optional) Double-click in the Notation column next to the expression. From the dropdown list that appears, choose the notation style in which the measured results for the expression needs to be displayed in the Results tab of the Outputs pane. Choose default eng sci suffix To Display results using the default notation style specified in the Default Formatting Options form. For more information, see Specifying Default Formatting Options on page 605. Display results in the engineering notation. Display results in the scientific notation. Display results in the suffix notation. If you choose suffix, double-click in the Suffix column next to the expression and choose the suffix from the drop-down list. If you specify the suffix as auto or do not specify the suffix in the Suffix column, the suffix is automatically assigned. Note: If you do not specify the notation style, the default notation style specified in the Default Formatting Options form will be used to display the measured results for the expression in the Results tab. For more information, see Specifying Default Formatting Options on page 605. See also: ■ Creating Dependent Expressions on page 407 ■ Creating a Combinatorial Expression on page 409 ■ Creating Expressions to be Measured Across Corners on page 410 ■ Modifying an Output Expression on page 419 ■ Viewing and Editing Output Signals or Expressions in Calculator ■ Loading an OCEAN or a MATLAB Measurement on page 424 ■ Setting Plotting Options for Specific Tests on page 662 ■ Working with Specifications on page 745 ■ Specifying Default Formatting Options on page 605 March 2015 © 1990-2015 406 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Creating Dependent Expressions You can create expressions based on other expressions. For example, assume that you have an expression named s1 with the expression 5. If you want another expression, say, s2 to be ten times the value of s1, type s1*10 in the Expression/Signal/File field as shown in the figure below. Note the following when you create dependent expressions: ■ Expressions can be added in any order, irrespective of their dependencies. For example, if the expression s2 is based on expression s1, it is not necessary to add the expression s1 before adding the expression s2. ■ An expression can be based on any number of other expressions. ■ Ensure that there is no cyclic dependency between the dependent expressions. In the following example, a cyclic dependency exists because expression myExpr depends on expression myExpr1, and expression myExpr1 also depends on expression myExpr. myExpr=myExpr1*5 myExpr1=myExpr+10 ■ If the expression name that is being used in a dependent expression has special characters such as spaces or dot (.), use the \ character to escape these special character. For example, if you are using an expression named my expr in another expression, escape the space character in my expr as shown in the figure below: March 2015 © 1990-2015 407 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Note: Generally, expression names can have special characters as they are valid string values. However, when these expression names are used in dependent expressions, they are treated as SKILL symbols and should be in a valid SKILL format. Therefore, special characters in such expression names should be escaped using the \ character. ■ It is not necessary to plot or save the expressions on which other expressions are based. For example, if the expression s2 is based on expression s1, it is not necessary to select the Plot or Save check box for the expression s1 in the Outputs Setup tab. ■ You cannot assign a name to an output of type signal and then use that name in a dependent expression. For example, you cannot assign the name myVout2 for the Vout2 signal as shown below, and then use myVout2 in a dependent expression. If you want a dependent expression to be based on a signal, create an expression based on that signal and use the name of that expression in a dependent expression. For example, create an expression named myVout2Expr based on the signal Vout2 as shown below, and then use myVout2Expr in a dependent expression. ■ Error messages, if any, regarding dependent expressions are displayed in the Command Interpreter Window (CIW). ■ Dependent expressions will appear on the Results tab only if the Plot check box is checked. However, if you want to display of the results of intermediate expressions irrespective of the setting of the Plot check box, set the forceShowAutomaticExpressions environment variable to t. March 2015 © 1990-2015 408 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Creating a Combinatorial Expression A combinatorial expression is one created using more than one output from one or more tests. For example, you might want to create an expression such as Test1_Output1/Test2_Output2 To create a combinatorial expression such as the one above, do the following: 1. On the Outputs Setup tab, click the button. 2. In the drop-down list, select a test and choose Expression. A new row is added for the test with the output type expr. Tip You can double-click on the test name or output type to select a different test or output type from the drop-down list that appears in the Test or Type column. 3. (Optional) In the Name field, type the name for the expression (such as Out1DivOut2). This name appears in the Waveform window. 4. Double-click on the Expression/Signal/File field. 5. Click the ellipsis button. The Calculator window appears. 6. On the Outputs Setup tab, drag an output from any test and drop it in the buffer on the Calculator window. 7. Type / at the end of the expression. 8. On the Outputs Setup tab, drag another output from another test and drop it at the end of the expression in the buffer on the Calculator window. 9. Do one of the following: ❑ Choose Tools – Send to ADEXL Test in the Calculator window. ❑ On the Outputs Setup tab, click the field. button in the Expression/Signal/File The expression appears in the Expression/Signal/File field. Note: The expression uses the calcVal function. March 2015 © 1990-2015 409 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Creating Expressions to be Measured Across Corners You can create expressions that measure results across all corners for a design point. Important Currently, this feature is supported in the following run modes: - Single Run, Sweeps, and Corners - Monte Carlo - Local Optimization - Global Optimization To evaluate expressions across corners, perform the following steps: 1. Right-click in the Outputs Setup tab and choose Add Expression. A new blank output row with output type expr is added to the outputs table. 2. In the new row, double-click in the Test column and select a test name. 3. Double-click in the EvalType column and specify the evaluation type as corners. The color of the row changes to blue. Note: Outputs of type Signal, Matlab script, Area Spec, Device Check, and Op Region Spec are always evaluated for design points, that is, when evalType is equal to point. 4. (Optional) Add a name for the expression in the Name column. 5. Enter an expression in the Expression/Signal/File column. When the evaluation type os set as corners, if you use any of the following functions in the expression, the tool automatically adds an additional argument, overall, to the function call and sets it to t: ❑ average ❑ ymax ❑ ymin ❑ peakToPeak ❑ stddev March 2015 © 1990-2015 410 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot An example is shown in the following figure. When the argument overall is set to t, it performs the calculation on the results of corner simulations for each design point that are treated as discrete values for evaluation and not waveforms. For more details on how the measures are calculated across corners, refer to Calculations of Measurements Across Corners. Caution The new argument, overall, has been added to only five most-frequently used Calculator functions listed above. Usage of this argument in any other function might generate erroneous results. There are some more ways in which you can create expressions to be measured across corners. For more details, refer to Alternate Ways to Create Measurements Across Corners on page 413. 6. (Optional) Add specification details in the Spec column. Note: The Override Specification command in the popup menu on the Output Setup tab is disabled for measurements across corners. When you run simulations, results of the expressions measured across corners are displayed on the Results tab, as shown in the following figure. March 2015 © 1990-2015 411 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Note the following on the Results tab: ❑ Rows that display results of the expressions measured across corners appear in blue. ❑ Results of the expressions measured across corners are displayed in the Nominal column and the columns for other corners are blank. No new column is created to show this result. ❑ If you disable the nominal corner before running simulation, the results are still displayed in the Nominal column. Only the cells that display results for expressions measured across corners show results. Other cells in the column do not have any results. ❑ If you specify performance specifications for the expressions measured across corners, depending on the measured value, the tool displays the pass/fail status. ❑ If you troubleshoot a design point, ADE XL ignores the outputs that are measured across corners. ❑ If you open the debug environment, the outputs that are measured across corners are not shown in the Outputs section of the debug environment. ❑ Re-evaluation is not supported for the outputs that are measured across corners. ❑ For Monte Carlo simulations, if you clear the Save Data to Allow Family Plots check box and if you have outputs to be measured across corners as independent expression then it will not be evaluated and show eval error. This is because the March 2015 © 1990-2015 412 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot evaluation is based on simulation results that are not saved. However, note that if an expression to be measured across corners is fully dependent on other expressions for which results are saved in the results database, it is evaluated and results are shown. Also note that: ❑ When you plot the results using Auto Plot, the results of measurements across corners are plotted across all design points, as shown in the following figure. ❑ The results of measurements across corners are displayed in all views on the Results tab. ❑ For Monte Carlo results, in the yield view, only a single row is displayed for the expressions measured across corners. However, for other expressions, result for each corner is displayed in a separate row. Alternate Ways to Create Measurements Across Corners Alternate ways in which you can create expressions to be evaluated across corners are: ■ By creating OCEAN measures in a .ocn file and loading that file. For example: MAC_ocn1= ymax(bandwidth(dB20(mag(VF("/OUT"))) 10 "low") ?overall t) axlOutputResult(MAC_ocn1 "MAC_ocn1") While creating an OCEAN measure in one file, you can also use an expression defined in another OCEAN file. For example, ocean1.ocn is defined as given below. March 2015 © 1990-2015 413 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot BW=bandwidth(VF("/net1") 10 "low") axlOutputResult(BW "BW") In ocean2.ocn, you can create another measure that uses BW that was defined in ocean1.ocn. This is shown in the example given below. MAC_ocn1=ymax(calcVal("BW" "testLib:top:1") ?overall t) axlOutputResult(MAC_ocn1 "MAC_ocn1") Important If you want to create an OCEAN measure of both the types, point and corners, you need to create separate OCEAN script files where one file contains functions of a single type only. Use a separate axlOutputResult statement for each output. ■ By using the ocnxlOutputExpr OCEAN function in an OCEAN script to create an output. This function supports the evalType argument that specifies how to evaluate the expression. Calculations of Measurements Across Corners When the evalType column is set to corners, the measurements are calculated across corners. This section describes how different scalar and waveform expressions are calculated to measure the outputs across corners. Measurements of Scalar Expressions When the evalType column is set to corners, by default the overall argument is set to t. With this default value of overall, the measurement is calculated by using the result values obtained for each corner, irrespective of the number of sweep variables. This gives a scalar value as result. In the example shown below, average of risetime is calculated by adding the risetime calculated for all the sweep variables and then dividing the sum by the count of values. rt_avg = average of risetime scalar values calculated for each corner See the results of rt_avg in the figure given below. March 2015 © 1990-2015 414 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot If you change the default value of the overall argument and set it to nil, this returns a scalar value in case of a single sweep variable, but a waveform output in case of multiple sweep variables. In the example given above, for rt_max_nil, ymax is calculated across vdd at each temperature value and a waveform is plotted for each temperature. The result is shown in the figure given below. March 2015 © 1990-2015 415 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Note: Getting a waveform in case of multiple sweep variables is not the desired output for measurements across corners. Measurements of Waveform Expressions For the default value of the overall argument, a measurement is first calculated on the waveform for each corner thereby resulting into a set of values. The measurement is further applied on this resulting set, thereby giving a scalar value as a result. Consider the example shown below. In this example, for wave_avg_t, first average of VT("/OUT") is calculated for each corner individually and then discrete average of the resulting values is taken, as shown below. average = average values obtained for corners Similarly, for wave_pp_t, first, ymax and ymin are calculated for VT("/OUT") for each corner. Next, ymax and ymin of the resulting values is calculated. ymax_all = ymax of the ymax values of individual waveforms ymin_all = ymin of the ymin values of individual waveforms Next, peakToPeak is calculated using the resulting ymax_all and ymin_all values, thereby giving a scalar result. peakToPeak = ymax_all - ymin_all March 2015 © 1990-2015 416 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot However, if you set the overall argument to nil, a measurement is calculated on the waveform for each corner and the resulting values are plotted. This is not the expected result for measurements across corners. In the example shown above, for wave_avg_t1, average is calculated for each combination of VDD and temperature and the resulting values are plotted, as shown in the figure shown below. Measurements Across Corners for Functions that Run on a Single Corner Variable Some of the calculator functions that do not support the new argument, overall, give correct results when calculated across corners. For example, functions such as xmin, xmax, deriv, cross, and value, that work on a single dimension, give correct results when calculated across corners, as shown below. The results for these outputs are shown below. March 2015 417 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot However, it is not recommended to measure outputs across corners for other functions that work on multiple dimensions and do not support the overall argument. March 2015 © 1990-2015 418 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Modifying an Output Expression You can use the Outputs Setup tab of the Outputs pane to modify output expressions. You can modify an output expression directly in the Expression/Signal/File field or use the Calculator to modify an output expression. To modify an output expression, do the following: 1. On the Outputs Setup tab, double-click on the expression you want to change in the Expression/Signal/File field. 2. Make your changes by modifying what appears in the Expression/Signal/File field. You can make your changes by typing them directly in the Expression field or by opening a Calculator window. To modify the output expression using the calculator, do the following: a. Click the ellipsis button. The output expressoin is copied to the buffer area in the Calculator window. b. Edit the output expression. c. On the Outputs Setup tab, click the field. button in the Expression/Signal/File The new expression is copied back to the Expression/Signal/File field for the output. See also: ■ Viewing and Editing Output Signals or Expressions in Calculator ■ Re-evaluating Expressions and Specifications March 2015 © 1990-2015 419 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Viewing and Editing Output Signals or Expressions in Calculator You can send the outputs from the Outputs Setup tab of the ADE XL Outputs pane to the Expression Editor in Virtuoso Visualization and Anaysis XL Calculator. In the Calculator window, you can copy an expression from the Expression Editor to the buffer, make changes, and send it back to the Outputs pane. Depending on your requirement, you can either send a single output (signal or expression), a set of outputs, or all the outputs to the Calculator. To send a single or a selected set of outputs to the Calculator, do the following: 1. On the Outputs Setup tab, press the Ctrl key and click on the expressions or signals that you want to copy to the Calculator. 2. Right-click on any one of the selected output and choose Send to Expression Editor. March 2015 © 1990-2015 420 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot The selected outputs are copied to the Expression Editor in Virtuoso Visualization and Analysis XL Calculator window, as shown below. If the Expression Editor is not visible, you might need to expand the Calculator window. March 2015 © 1990-2015 421 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot The names of expressions are the same as those mentioned in ADE XL. If no name is given for the source output in ADE XL, a default name E is used, as shown in the following figure. Note that in the above figure, the signals have been copied from the ADE XL Outputs Setup tab to the Expression Editor. These signals have been assigned default names and they have been converted into expressions. Also note that if more than one analysis is enabled for the ADE XL test, a separate expression is created to get the signal data from each analysis. In the example shown above, the test ACGainBW contains two tests, ac and dc. When the signal /OUT is sent to the Expression Editor, two separate expressions are created to get the result data for /OUT from the two analysis. The ?result argument indicates the name of the analysis from which the data is taken. To send all the output expressions or signals from the ADE XL Outputs Setup tab to the Expression Editor in Calculator, do the following: March 2015 © 1990-2015 422 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot 1. Click on the drop-down arrow to the right of the Send to Expression Editor command to view the command options. By default, Expressions is selected, which implies that only the expressions will be copied to the Calculator. 2. To copy all the expressions and signals, select All. Note: You can change the default selection by setting the value of the sendOutputsToEEFilter environment variable. 3. Click on the Send Outputs to Expression Editor command. All the expressions and signals, are copied to the Expression Editor in Calculator. Note: The Send to Expression Editor command is also available on the right-click menu of the Outputs pane of the ADE XL Test Editor. March 2015 © 1990-2015 423 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Loading an OCEAN or a MATLAB Measurement Note: See axlOutputResult in the Virtuoso Analog Design Environment XL SKILL Functions Reference. See the OCEAN Reference for information about OCEAN script commands. To load an OCEAN script file containing one or more output measurements or a MATLAB measurement defined in a script file (one value per script) for a test, do the following: 1. On the Outputs Setup tab, click the button. 2. In the drop-down list, select a test and choose OCEAN script or MATLAB script. A new row is added for the test with the output type ocean or matlab. Tip You can double-click on the test name or output type to select a different test or output type from the drop-down list that appears in the Test or Type column. 3. (Optional) In the Name field, type a name to represent the measure. 4. Double-click on the Expression/Signal/File field. 5. Type the name of (and location/path to) the script file. Tip Alternatively, you can click the browse button to open a browser window so that you can browse to locate a file. After you select a file and click Open, the relative path to the file appears in the Expression/Signal/File field. Note: Once the script file name appears in this field, you can edit it by clicking the Edit File button . See also ■ Editing an OCEAN or a MATLAB Script File on page 425 ■ Writing a MATLAB Measure on page 426 ■ Specifying Whether a Result Will Be Saved or Plotted on page 403 ■ Setting Plotting Options for Specific Tests on page 662 March 2015 © 1990-2015 424 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Editing an OCEAN or a MATLAB Script File To edit an OCEAN or a MATLAB measurement in a script file, do the following: 1. On the Outputs Setup tab, double-click on the OCEAN or MATLAB script file you want to edit in the Expression/Signal/File field. 2. Click clicking the Edit File button. The script file appears in an editing window. 3. Edit the script file and save your changes. The program uses the new script the next time you run the test. March 2015 © 1990-2015 425 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Writing a MATLAB Measure When writing a MATLAB measure, you create a script in a .m file. You can use additional tools such as the cds_srr function provided in the Spectre/RF MATLAB Toolbox1 to read the results data. You can also use the axlCurrentResultsPath special function in your MATLAB script file to determine the current ADE XL results path. If you want your script to write results to the Results tab of the Outputs pane, you must assign the value to the axlResult variable. You can plot your results in MATLAB if you include a MATLAB plot command in your script file. To write a MATLAB measure for a test, do the following: 1. Use a text editor to create a .m file. 2. (Optional) Use the cds_srr function to access results data as follows: cds_srr( ’path_to_psf_dir’, ’analysisName’, ’outputVariable’ ) where path_to_psf_dir is the path to the psf directory; for example: simulation/ampTest/schematic/psf analysisName outputVariable Tip You can use the axlCurrentResultsPath function (instead of ’path_to_psf_dir’) as follows to return the current ADE XL results path: cds_srr( axlCurrentResultsPath, … ) is the analysis name string that corresponds to the psf subdirectory that contains the results; for example: tran-tran is the output variable name For example: cds_srr( ’simulation/ampTest/schematic/psf’, ’tran-tran’, ’out’ ) 3. If you want your script to write results to the Results tab of the Outputs pane, you must assign the value to the axlResult variable as follows: axlResult = resultStatement 1. Installed in your MMSIM 6.x hierarchy under tools/spectre/matlab. March 2015 © 1990-2015 426 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot For example: axlResult = max( out.time ) 4. Save your changes and load this .m file. Important Matlab prefers current directory over any other path. So, if the Matlab script file (.m file) exists in the current directory, it is always run from there. To run a matlab script saved at a location other than the current run directory, delete the script from the current directory. Example scripts The following script creates a MATLAB plot using the specified X and Y values. figure x = [1 2 3] y = [2 0 6] plot(x,y) The following script accesses the value of the out output variable from the current transient results directory using axlCurrentResultsPath, plots out using MATLAB (Voltage on the X axis and time on the Y axis), and writes the measured value (for total simulation time) to the Results tab of the Outputs pane. out = cds_srr( axlCurrentResultsPath,'tran-tran', 'out' ) fig = figure plot( out.V,out.time ) axlResult = max( out.time ) March 2015 © 1990-2015 427 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Copying Outputs You can copy outputs within a test or from one test to another. You can also copy and paste the contents of an output. This allows you to quickly setup outputs for your tests. For more information, see the following topics: ■ Copying Outputs Within and Across Tests on page 428. ■ Copying the Contents of an Output on page 429 Copying Outputs Within and Across Tests You can copy outputs within a test or from one test to another. For example, if you have specified an output expression for one test, you can do the following: ■ Make a copy of the output expression within the same test. ■ Copy the output expression to another test. Important An operating region specification is copied from one test to another test only if the design and testbench of both the tests is same. To copy outputs within and across tests, do the following: ➤ On the Outputs Setup tab of the Outputs pane, right-click the row for the output you want to copy, select Copy To Test, then do one of the following: ❑ To copy the output within a test, select the name of the same test. ❑ To copy the output to another test, select the name of that test. ❑ To copy the output to all tests, select All. To copy multiple outputs, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the output to add it to the selection set. Rightclick and choose Copy To Test, then select the name of the target test or All. Note: An output will be copied across tests only if an output with the same name does not exist in the target test. For example, if you are copying an output expression named DCGain from one test to another, and the target test has an output with the same name, the output expression will not be copied. March 2015 © 1990-2015 428 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Copying the Contents of an Output To copy the contents (name, expression, file name, specification, weight, units or digits) of an output, do the following: 1. On the row for the output in the Outputs Setup tab of the Outputs pane, select the content you want to copy. For example, to copy an expression, select the expression in the Expression/Signal/ File column. 2. Press Ctrl+C to copy the content. 3. Select the cell where you want to paste the content. For example, to paste an expression, select a cell in the Expression/Signal/File column. 4. Press Ctrl+V to paste the content. March 2015 © 1990-2015 429 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Adding User-Defined Columns in the Outputs Setup Tab In addition to the default set of columns that appear in the Outputs Setup tab, you can add one or more user-defined or custom columns. These user-defined columns can be used to save additional information, such as comments, target values for specifications, or other notes related to a measurement. To help you use the information provided in the user-defined columns while analyzing results, ADE XL makes this information available in the following ways: ■ User-defined columns are displayed on the Results tab. These columns are visible in the Detail, Optimization, Summary, and Yield result views. Note: Currently, these columns are not available in the Detail-Transpose view. ■ If you add a new column and re-evaluate results, the new column is displayed on the Results tab. ■ When you export the outputs to CSV or HTML files, the user-defined columns are also saved with other columns. ■ These columns are displayed in the Specification summary sheets and datasheets. For more information, see the following topics: ■ Adding a User-Defined Column ■ Renaming a User-Defined Column ■ Deleting a User-Defined Column ■ Hiding a User-Defined Column Tip To know more about the SKILL APIs required to add a new user-defined column or to get or set value in a SKILL script, refer to SKILL Functions for Outputs in the ADE XL SKILL Reference Guide. Adding a User-Defined Column To add a user-defined column in the Outputs Setup tab, do the following: March 2015 © 1990-2015 430 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot 1. Right-click on the title of any existing column and choose Add Column from the contextsensitive menu that appears. The Add Column form is displayed. 2. In the New Column Name field, specify a name for the new column to be added. 3. Click OK. March 2015 © 1990-2015 431 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot A new column is added to the right of the existing columns. You can add any information in a custom column. The information in this column is retained and displayed on the Results tab post simulation run. Also see: ■ Renaming a User-Defined Column ■ Deleting a User-Defined Column ■ Hiding a User-Defined Column Renaming a User-Defined Column If required, you can rename a user-defined column. For this, do the following: ➡ Right-click on the column in the Outputs Setup tab and choose Rename Column from the context-sensitive menu. The Rename Column form is displayed. 1. In the Rename Column to field, specify a new name for the column. 2. Click OK. March 2015 © 1990-2015 432 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Deleting a User-Defined Column To delete a user-defined column, do the following: ➡ Right-click on the column and choose Delete Column. The column is removed from the Outputs Setup tab. Important You can only delete a custom or user-defined column. It is not possible to delete a standard column from the Outputs Setup tab. However, you can hide or show selected columns, as required. Hiding a User-Defined Column To hide a user-defined column on the Outputs Setup tab, do the following: ➡ Click (Configure what is shown in the table) on this tab and clear User-Defined Columns. To hide a user-defined column on the Results tab, do the following: ➡ Click (Configure what is shown in the table) on this tab and clear User-Defined Columns. All the custom columns are hidden. March 2015 © 1990-2015 433 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Exporting Outputs to a CSV File You can save the outputs from the Outputs tab to a CSV file. This helps in saving outputs in a format from which they can be later reused and imported in another adexl view. To export outputs to a CSV file, do the following: 1. Ensure that all the required outputs are defined on the Outputs Setup tab. 2. Click Export Outputs to CSV File on the toolbar on the Outputs Setup tab. The Export Outputs to CSV form is displayed, as shown below. 3. (Optional) Change the file name in the File field. By default, ADE XL uses the name of the adexl view as the name of the CSV file. 4. (Optional) Click Browse to choose a directory where you want to save the CSV file. By default, the file is saved in the current working directory. 5. (Optional) Select the Omit Test Column check box to specify that the test names are not to be saved in the CSV file. By default, ADE XL saves the test name along with each saved output to indicate the test to which this belongs. Next time, when you import the outputs from the CVS file, the outputs will be assigned to the given test name only. When the outputs are saved without the test name, you can load them later for another test as well. For more details, refer to Importing Outputs from a CSV File. 6. Click Apply and then OK to export the outputs and to close the form. March 2015 © 1990-2015 434 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot All the outputs defined on the Outputs tab are saved in the specified CSV file, as shown below. Important Points to Note: ■ In the saved CSV file, the Test column has been saved to indicate the test for which an output is saved. If you omit to save the test column, this information is not saved in the CSV file. ■ An appropriate output type, such as, net, terminal, expr, or corners is used to indicate the output type. corners is the output type used for the expressions measured across corners. ■ If no value is specified for any column, it is considered as null. ■ It is mandatory to specify at least the Name column or the Signal and Expression columns in the CSV file. ■ If you override an output specification for a corner, the overridden spec is also saved with the exported output. When you import such an output, the overridden spec value is applied to the same corner, if it exists in the ADE XL setup. ■ Outputs that include the following are ignored while exporting outputs to CSV: ❑ OCEAN measures ❑ MATLAB scripts ❑ device checks ❑ area specifications March 2015 © 1990-2015 435 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot ❑ operating region specifications ■ By default, only the Test, Name, Type, Output, Plot, Save, and Spec columns are saved. However, if you have specified values in other columns as well, all other columns, such as Notation, are also saved in the CSV file. ■ In the earlier releases, outputs exported from ADE L were saved in the .txt format. Now, the outputs from ADE L are also saved in the CSV format by default. However, you still have an option to save them in the .txt format as before. For more details, refer to Importing and Exporting Outputs in ADE L Environment in the Analog Design Environment L user guide. ■ Outputs that were earlier exported from the ADE L environment in a .txt file can be imported in ADE XL. Related topics: ■ Importing Outputs from a CSV File on page 436 ■ Related SKILL functions Importing Outputs from a CSV File If you have outputs exported and saved in a CSV file, you can import those to the same or a different adexl view, as required. To import the outputs from a CSV file, do the following: 1. Open the adexl view to which you need to import the outputs. 2. Click Import Outputs from CSV File on the toolbar on the Outputs Setup tab. The Import Outputs from CSV form is displayed, as shown below. March 2015 © 1990-2015 436 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot 3. Click Browse and select the CSV file from which you need to import the output details. ADE XL reads the specified file. If the details in the file were saved with the test column, the Test drop-down list on this form remains disabled. If the selected CSV file does not contain the details of the test column, the Test dropdown list is enabled and the names of all the tests in the current adexl view are listed in it. 4. (Optional) If the Test drop-down list is enabled, select the name of the test for which you wish to import the outputs from the specified CSV file. Select Import to All Tests to import the complete set of outputs for all the tests in the current adexl view. 5. Select an appropriate option from the Operation field to specify how you want to use the output rows that already exist before you import details from the CSV file. Following are the three possible operations to choose from: ❑ retain: If an output already exists in the Outputs Setup tab with a name which is same as that of an output being imported, the import is not done and the existing output is retained. In this case, a message similar to the one shown below is displayed in CIW: *Info* Output "Supply_Current" exists in the current setup and the operation is "retain". Skipping import of row 2 from CSV file "./out2.csv". An existing output which has the same signal name as that of an output being imported is also retained. ❑ merge: If an existing output for a given test has the same name as that of an output being imported, it is deleted and is overwritten by the imported output. In this case, a message similar to the one shown below is displayed in CIW: March 2015 © 1990-2015 437 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot *Info* Output "CMRR@10M" exists in the current setup and the operation is "merge". Deleting this output from the current setup and importing it from CSV file "./out1.csv". Note: Other outputs for which the names do not match with the outputs being imported are also retained. ❑ overwrite: All existing outputs for the given test are deleted and all the imported outputs are used. In this case, a message similar to the one shown below is displayed in CIW: *Info* The import outputs from CSV file operation is "overwrite". The original outputs in test "Offset" are deleted. 6. Click Apply and then OK to import the outputs and to close the form. Related topics: ■ Exporting Outputs to a CSV File on page 434 ■ Related SKILL functions March 2015 © 1990-2015 438 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Configuring How Outputs Appear on the Outputs Setup Tab By default, the Outputs Setup tab of the Outputs pane displays the outputs added for all the tests. You can change the order in which outputs or columns are displayed or you can show or hide the outputs or columns by using the toolbar on top of this tab. For more information about viewing outputs in the Outputs Setup tab, see the following topics: ■ Changing the Order of Outputs on page 439 ■ Sorting the Outputs on page 440 ■ Hiding and Showing Outputs on page 440 ■ Hiding and Showing Output Details on page 441 ■ Changing the Order of Columns on page 441 ■ Hiding and Showing Columns on page 441 Changing the Order of Outputs To change the order of outputs, do one of the following: ■ Click on the row for an output and: ❑ Click the button to move it one level up. ❑ Click the button to move it one level down. ■ Drag and drop the output at the desired location. When you run a simulation, the outputs for a test are displayed in the same order in the Results tab of the Outputs pane. Note: Order of output rows is overridden if you sort the outputs by a column. For details, see Sorting the Outputs. March 2015 © 1990-2015 439 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Sorting the Outputs By default, outputs are sorted by test names. However, you can sort them by any column on this tab. For example, you can sort the outputs by output name or by output type. To change the sorting order by a column, click on the header of that column. The up or down arrow on the top-right area of the column header shows if the rows are being arranged in the ascending or the descending order. All the output rows are sorted according the values in the selected column. Important Before sorting the rows, if you had rearranged the output rows in a specific order by using the or buttons, those settings are overridden after you sort the outputs by a column. However, you can restore the same arrangement by clicking on the (Reset table to display per-test evaluation order) button on the Outputs Setup tab. The tool groups the outputs by test name and within each test, displays the outputs in the user-specified order. Hiding and Showing Outputs To view only the outputs added for a specific test, do the following: 1. Click the button on the Outputs Setup tab and select Hide All Tests. 2. Click the button on the Outputs Setup tab and select a specific test. To view the outputs added for all the tests, do the following: ➤ Click the button on the Outputs Setup tab and select Show All Tests. To view only the outputs added the tests that are enabled in the Data View pane, do the following: ➤ Click the button on the Outputs Setup tab and select Show Enabled Tests. To view only the outputs added the tests that are disabled in the Data View pane, do the following: ➤ Click the button on the Outputs Setup tab and select Show Disabled Tests. To hide the outputs added for all tests, do the following: ➤ Click the button on the Outputs Setup tab and select Hide All Tests. March 2015 © 1990-2015 440 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Hiding and Showing Output Details To show or hide output details in the Outputs table, do the following: 1. Click the Configure what is shown in the table ( ) button on the Outputs Setup tab. The following drop-down list appears. Shows/hides these columns in the Outputs table Shows/hides these types of output rows Shows/hides the Units/Digits/Notation/Suffix/userdefined columns 2. Select/deselect the check box next to an item in this list to show or hide the related information in the Outputs table. Changing the Order of Columns To change the order of columns in the Outputs Setup tab of the Outputs pane, do the following: 1. Click on a column name. 2. Drag and drop the column at the desired location. Hiding and Showing Columns To hide the columns in the Outputs Setup tab of the Outputs pane, do the following: Right-click on a column name to display a context-sensitive menu listing all the columns. A check mark next to a column name indicates that the column is being displayed. ➡ To hide a column, click the column name. ➡ To unhide the column, right-click on a column name and click the column once again in the context-sensitive menu. March 2015 © 1990-2015 441 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Selecting Outputs to Save or Plot You can select outputs (signals and expressions) to save or plot by selecting the Plot or Save check boxes on the Outputs Setup tab of the Outputs pane. To select an output for plotting, do the following: ➤ In the Plot column, select the Plot check box. The program plots the item when the simulation finishes. Tip To select more than one output for plotting, select the outputs, right-click and choose Enable Plot from the context-sensitive menu. To select an output for saving, do the following: ➤ In the Save column, select the Save check box. The program saves the item to the results database. Tip To select more than one output for saving, select the outputs, right-click and choose Enable Save from the context-sensitive menu. See also “Specifying Whether a Result Will Be Saved or Plotted” on page 403. Removing Outputs You can remove outputs (signals and expressions) from the save or plot set by deselecting the Plot or Save check boxes on the Outputs Setup tab of the Outputs pane. You can also remove outputs altogether from the test setup. To remove an output from the plot set, do the following: ➤ In the Plot column, deselect the Plot check box. The program does not plot the item when the simulation finishes. March 2015 © 1990-2015 442 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Tip To remove more than one output from the plot set, select the outputs, right-click and choose Disable Plot from the context-sensitive menu. To remove an output from the save set, do the following: ➤ In the Save column, deselect the Save check box. The program does not save the item to the results database. Tip To remove more than one output from the save set, select the outputs, right-click and choose Disable Save from the context-sensitive menu. To remove an output from the test setup, do the following: ➤ In the Outputs Setup tab, select an output, right-click and choose Delete Output. The program removes the item from the test setup. Tip To remove more than one output from the test setup, select the outputs, right-click and choose Delete Output. See also “Specifying Whether a Result Will Be Saved or Plotted” on page 403. March 2015 © 1990-2015 443 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Saving All Voltages or Currents To save all of the node voltages and terminal currents, do the following: 1. On the Outputs Setup tab of the Outputs pane, right-click a test and choose Save All. The Save Options or Keep Options form appears, depending on your target simulator. The options that appear on this form vary according to your target simulator: ❑ Save Options form for Spectre Simulations on page 445 ❑ Keep Options form for UltraSim Simulations on page 446 ❑ Save Options form for AMS Simulations on page 447 ❑ Save Options form for SpectreVerilog Simulations on page 448 ❑ Keep Options form for UltraSimVerilog Simulations on page 449 ❑ Keep Options form for HspiceD Simulations on page 451 2. Select the values you want to save and click OK. March 2015 © 1990-2015 444 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Save Options form for Spectre Simulations For Spectre simulations, the following Save Options form appears: For more information, see “Saving All Voltages or Currents” in the Virtuoso Analog Design Environment L User Guide. March 2015 © 1990-2015 445 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Keep Options form for UltraSim Simulations For UltraSim Simulations, the following form appears: For more information, see ".probe" and “save” in the Virtuoso UltraSim Simulator User Guide. March 2015 © 1990-2015 446 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Save Options form for AMS Simulations For AMS Simulations, the following form appears: For more information, see Displaying and Saving Information (info) in the Virtuoso AMS Designer Simulator User Guide. March 2015 © 1990-2015 447 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Save Options form for SpectreVerilog Simulations Important The SpectreVerilog circuit simulator is available only in IC6.1.6 release. For SpectreVerilog Simulations, the following form appears: March 2015 © 1990-2015 448 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot For more information, see “Saving All Voltages or Currents” in the Virtuoso Analog Design Environment L User Guide. Keep Options form for UltraSimVerilog Simulations Important The UltrasimVerilog circuit simulator is available only in IC6.1.6 release. March 2015 © 1990-2015 449 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot For UltraSimVerilog simulations, the following form appears: For more information, see “.probe“ and “save” in the Virtuoso UltraSim Simulator User Guide. March 2015 © 1990-2015 450 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot Keep Options form for HspiceD Simulations For HspiceD Simulations, the following form appears: March 2015 © 1990-2015 451 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Selecting Data to Save and Plot March 2015 © 1990-2015 452 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 12 Device Checking You can use Spectre’s device checking feature to determine whether elements in your circuit are violating predefined safe operating areas. You can specify rules that check operating point parameters, as well as expressions that combine these parameters. If your circuit has any violations, you can highlight violating devices on the schematic, view the details of violations for a device check, and print a summary of all the violations. See the following topics for more information: ■ Enabling and Disabling Device Checking on page 454 ■ Setting Up Device Checks on page 455 ■ Specifying Global Device Check Options ■ Specifying Options for Writing Violations Information ■ Viewing and Printing Device Check Violations on page 457 March 2015 © 1990-2015 453 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking Enabling and Disabling Device Checking You can enable and disable device checking for individual tests. To enable device checking for a test, do the following: 1. On the Data View assistant pane, right-click the test and choose Options – Analog. The Simulator Options form appears. 2. Click the Check tab. 3. In the DEVICE CHECKING OPTIONS section, select the yes check box next to dochecklimit. 4. Click OK. The program will check for violations when you run the simulation. March 2015 © 1990-2015 454 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking To disable device checking for a test, do the following 1. On the Data View assistant pane, right-click the test and choose Options – Analog. The Simulator Options form appears. 2. Click the Check tab page. 3. In the DEVICE CHECKING OPTIONS section, select the no check box next to dochecklimit. 4. Click OK. See also: Specifying Options for Writing Violations Information Setting Up Device Checks You can set up device checks for individual tests. To set up device checks for a test, do the following: 1. On the Outputs Setup tab, click the button. 2. In the drop-down list, select a test and choose Device Check. The Device Check Specifications form appears. March 2015 © 1990-2015 455 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking From this form, you can perform the following tasks: ❑ Add or change device checks ❑ Set global device check options The device checks that are enabled in the Device Check Specification form are displayed in the Outputs Setup tab of the Outputs pane. ■ The device check name is displayed in the Name field. ■ The type check in the Type column indicates that it is a device check. March 2015 © 1990-2015 456 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking ■ The Expression/Signal/File column displays: ❑ The text parameter, if the device check is of type Device, Model, Primitive or Parameter. ❑ The expression, if the device check is of type Expression. For more information, see the following tasks: ■ Adding or changing device checks ■ Setting global device check options Viewing and Printing Device Check Violations A violation occurs when the value of a device, parameter, or expression that you have defined as a device check falls outside the specified operating range. To view all the device check violations for the nominal corner, do the following: ➤ On the Results tab of the Outputs pane, right-click a device check name in the Output column and choose Violations Display – All checks for Nominal. The Violations Display form appears displaying the device check violations for the nominal corner. For more information about using this form, see the following tasks: ❑ Highlighting device check violations on the schematic ❑ Unhighlighting device check violations on the schematic March 2015 © 1990-2015 457 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking ❑ Viewing the details of device check violations ❑ Printing device check violations To view the violations for a specific device check at the nominal corner, do the following: ➤ On the Results tab of the Outputs pane, right-click a device check name in the Output column and choose Violations Display – Selected Checks. The Results Display Window form appears displaying the violations for the specific device check at the nominal corner. To view all the device check violations for a corner, do the following: ➤ On the Results tab of the Outputs pane, right-click on the column for a corner and choose Violations Display – All checks for . March 2015 © 1990-2015 458 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking The Violations Display form appears displaying the device check violations for the corner. For more information about using this form, see the following tasks: ❑ Highlighting device check violations on the schematic ❑ Unhighlighting device check violations on the schematic ❑ Viewing the details of device check violations ❑ Printing device check violations To view the violations for a specific device check at a corner, do the following: ➤ On the Results tab of the Outputs pane, right-click on the corner column in the row for the device check and choose Violations Display – Selected Checks. March 2015 © 1990-2015 459 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Device Checking The Results Display Window form appears displaying the violations for the specific device check at the corner. Note that the violations for device checks (parameters and expressions) for model files are also displayed in the Results Display Window. For example, in the figure shown above, the violation for R0.soa_rppoly_i is for a parameter specified in the model file. March 2015 © 1990-2015 460 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 13 Running Simulations Before you run a simulation, you should ■ Start the ADE XL environment (see Getting Started in the Environment) ■ Specify tests and analyses (see Specifying Tests and Analyses) ■ Select data to save and plot (see Selecting Data to Save and Plot) ■ Set up job policies for local, remote, or distributed simulation (see Setting Up Job Policies) ■ Set up run options (see Setting Up Run Options) ■ Set up pre-run scripts (see Running Pre-run Scripts before Simulation Runs) ■ Review the Run Setup (see Viewing the Run Preview) See the following sections for more information: ■ Using Convergence Aids ■ Specifying a History Name ■ Starting a Simulation ■ Stopping a Simulation ■ Canceling Simulations for Selected Tests or Corners ■ Checking Run Status on the Progress Bar ■ Stopping Jobs and Resubmitting Simulations March 2015 461 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ Continuing the In-Process Simulations After ADE XL GUI Exits ■ Viewing the ADE XL Logs After Running Simulations ■ Viewing Job Status ■ Viewing the Job Log ■ Viewing the Simulation Output Log File ■ Viewing Diagnostics Information ■ Running an Incremental Simulation ■ Submitting a Point ■ Simulating Only Error or Incomplete Points ■ Troubleshooting a Design or Data Point ■ Debugging Points ■ Creating and Running an OCEAN Script ■ Simulating Designs with Layout-Dependent Effects (LDEs) After simulating, you can plot results (see Chapter 14, “Viewing, Plotting, and Printing Results”). March 2015 © 1990-2015 462 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Setting Up Job Policies When you run a simulation in ADE XL, it starts an IC Remote Processes (ICRPs) where it runs simulations. Each ICRP is also called a job and can be configured to run one or more simulation points. ADE XL internally uses these ICRPs/jobs to efficiently distribute timeconsuming tasks that can be performed in parallel. Settings for these ICRPs such as how many remote processes to start; where the processes should run, on local or remote machines; or the time for which a remote process should stay active and wait for a simulation to run; are set as a job policy. The default job policy for ADE XL is ADE XL Default. You can also define a custom job policy, save it with a unique name in the.cadence/jobpolicy directory and set it as default by using the defaultJobPolicy environment variable. The order in which the job policy files are searched in the .cadence/jobpolicy directory is determined by the Cadence Setup Search File mechanism (CSF). To find this information, CSF uses the setup.loc file, which is an ASCII file that specifies the locations to be searched and the order in which they should be searched. For more information about the setup.loc file or how to edit search order, see Cadence Setup Search File: setup.loc in the Cadence Application Infrastructure User Guide. A job policy can be defined for: ■ A single test. For more details, refer to Setting Up a Job Policy for a Test. March 2015 © 1990-2015 463 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ A global job policy that is applied to all the tests that do not have their own job policies. A job policy can be defined by using the Job Policy Setup form. For more details, refer to Setting Up the Default Job Policy. March 2015 464 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations While running a simulation, ADE XL looks for a job policy in the order given below and applies the policy that is found first: ■ A test-specific job policy applied to the test by using the using the Job Setup context- sensitive menu command for that test. ■ A global job policy applied to the ADE XL session by using the Options — Job Setup command. ■ The default job policy specified by using the defaultJobPolicy environment variable in the .csdenv file. ■ If no custom job policy setting is found, the ADE XL Default job Policy is used. Important If you want to use a custom job policy in every new adexl view, set the defaultJobPolicy environment variable to the name of your job policy. However, if you do not want to use the default job policy for a particular adexl view, you can apply a different policy to that view. The job policy information is saved in the active setup database of that view and is applied in every subsequent use. Setting Up a Job Policy for a Test You can set up a job policy for each test. This enables you to use different distributed processing resources or queues for different tests. ➡ To set up a job policy for a test, on the Data View pane, right-click a test and choose Job Setup. ➡ To remove the job setup for a test and apply global job policy for it, on the Data View pane, right-click a test and choose Clear Job Setup. Important Points Related to Job Policies ■ Name of a test-specific job policy is shown in the test tooltip. March 2015 © 1990-2015 465 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ The job policy specified for a test overrides the global job policy specified using Options – Job Setup. Information about the test(s) for which job policy is defined is shown in the global Job Policy Setup form, as shown below. ■ If all the tests have test-specific job policy, the global job policy specified through the Options – Job Setup command will not have any impact. If you specify global job policy in this case, the following message is displayed. ■ If some tests are running with test-specific job policies whereas other are running with global job policy, the Options – Job Setup – Stop All command stops the simulations for only those tests that are using the global job policy. ■ For every test-specific job policy, a separate ICRP process is started and that is not used for any other test. ■ If you change the job policy for a test while an ICRP process was running for that test, ADE XL completes the simulation for the running point. After that, the job is terminated and a new ICRP process is started according to the new job policy. March 2015 © 1990-2015 466 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Setting Up the Default Job Policy You cab specify a custom policy by using the Job Policy Setup form. March 2015 © 1990-2015 467 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations If you do not specify a job policy, the program applies the following defaults: Optimize Single Point Run Distribution Method Max. Jobs Start Timeout Configure Timeout Run Timeout Linger Time t Local 1 300 (seconds) 300 (seconds) Infinite 300 (seconds) See the following topics for more information: ■ Specifying a Job Policy Name on page 469 ■ Optimizing a Single Point Run on page 469 ■ Specifying a Distribution Method on page 470 ■ Specifying a Local Job Policy on page 470 ■ Specifying a Remote Host Job Policy on page 471 ■ Specifying a Command Job Policy on page 473 ■ Specifying an LBS Job Policy on page 475 ■ Specifying Max Jobs on page 478 ■ Specifying Job Timeouts on page 479 ■ Specifying Error Reporting Options on page 480 ■ Specifying Multiple Run Options on page 481 ■ Specifying a Job Submit Command on page 481 ■ Using Buttons at the Bottom of the Form on page 482 ■ Saving a Job Policy on page 483 ■ Deleting a Job Policy on page 484 March 2015 © 1990-2015 468 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Specifying a Job Policy Name To specify a job policy name, do the following: 1. Choose Options – Job Setup. The Job Policy Setup form appears. 2. In the Job Policy Name field, type a name for your job policy. The job policy name must be alphanumeric with no spaces or special characters. Note: You can specify the default job policy name by setting the defaultJobPolicy environment variable. Optimizing a Single Point Run By default, the Optimize Single Point Run check box in the Setup section is selected. Therefore, for a single point run, ADE XL optimizes the run by completing the netlist generation and expression evaluation tasks inside the ADE XL process and running the simulation as per the distribution method specified by the job policy. This saves the overhead of starting a seperate ICRP process thereby saving the overall processing time. When this check box is cleared, an ICRP process is started and all the tasks are completed by that process. You can keep the Optimize Single Point Run check box selected to optimize a single point run. For multiple point runs, netlist generation and expression evaluation tasks are done by the ICRP process only. Important While the netlist generation for a single point run is being done inside the ADE XL process, the user interface becomes unavailable for any changes. Therefore, it is recommended to clear the Optimize Single Point Run check box for designs and tests that require a large time to generate netlist. March 2015 © 1990-2015 469 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note: This feature is not supported when simulating a single point for the EAD flow or for Monte Carlo sampling. Related environment variable: useSameProcess Specifying a Distribution Method You can specify a distribution method by using the Distribution Method drop-down list Depending on your setup, you can choose one of the following methods: ■ Local – The program runs simulations on the local host. ■ Remote-Host – The program runs simulations on the remote host that you specify. ■ Command – You send a command to the distributed processing software. ■ LBS – The program uses Cadence Load Balancing Software. Note: Both LBS and Command distribution method submit ADE XL job to a job distribution engine, for example Sun Grid Engine (SGE). In LBS mode, you can specify a selected set of qsub options whereas with the Command method you can submit a command with any qsub option. Specifying a Local Job Policy To specify a local job policy, do the following: 1. Specify a name for your job policy. 2. In the Distribution Method drop-down list, select Local. 3. (Optional) Specify maximum job information. March 2015 © 1990-2015 470 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 4. (Optional) Specify job timeouts. 5. (Optional) Specify error reporting options. 6. (Optional) Specify multiple run options. 7. Save your job policy. For more information, see Saving a Job Policy on page 483. 8. Click OK. The program runs simulations on the local host. Specifying a Remote Host Job Policy To specify a remote host job policy, do the following: 1. Specify a name for your job policy. 2. In the Distribution Method drop-down list, select Remote-Host. March 2015 © 1990-2015 471 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The Host field appears in the Setup group box. 3. In the Host field, type the name of a valid remote host. 4. (Optional) Specify maximum job information. March 2015 472 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 5. (Optional) Specify job timeouts. 6. (Optional) Specify error reporting options. 7. (Optional) Specify multiple run options. 8. Save your job policy. For more information, see Saving a Job Policy on page 483. 9. Click OK. The program submits remote simulations on the specified host. Specifying a Command Job Policy To specify a command job policy, do the following: 1. Specify a name for your job policy. 2. In the Distribution Method drop-down list, select Command. March 2015 © 1990-2015 473 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The Command field appears in the Setup group box. 3. In the Command field, type the command you want to use to start jobs. The command must adhere to these guidelines. March 2015 © 1990-2015 474 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 4. (Optional) Specify maximum job information. 5. (Optional) Specify job timeouts. 6. (Optional) Specify error reporting options. 7. (Optional) Specify multiple run options. 8. Save your job policy. For more information, see Saving a Job Policy on page 483. 9. Click OK. The program uses the command to submit jobs. Specifying an LBS Job Policy ADE XL supports the following Distributed Resource Management Systems (DRMS): LBS LSF SGE Load Balancing System – Simple job distribution system (cdsqmgr) for setting up queues (collections of host machines) and hosts per queue; each queue has a job-per-host limit Load Sharing Facility – DRMS from Platform Computing Sun Grid Engine – Freeware from Sun Microsystems, Inc. Note: See “Setting Up to Use Distributed Processing Option” in the Virtuoso Analog Distributed Processing Option User Guide for more information on setting up this job distribution method. March 2015 © 1990-2015 475 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations To specify a load balancing system job policy, do the following: 1. Specify a name for your job policy. 2. In the Distribution Method drop-down list, select LBS. Check boxes, fields, and list boxes related to specifying queues and hosts appear. If you have set up the LSF DRMS, the form shows the fields as shown below: Figure 13-1 Job Policy Setup Form for LSF If you have set up the SGE DRMS, the form shows the fields as shown below: March 2015 © 1990-2015 476 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Figure 13-2 Job Policy Setup Form for SGE 3. (For LSF only) Select the Queue check box and select an available queue from the dropdown list. Note: Your system administrator determines the list of available queues. See “System Administrator Information” in the Virtuoso Analog Distributed Processing Option User Guide for more information. If you do not select the Queue check box, the program uses default system queue. 4. (For LSF only) Select the Host check box and select an available host from the list area. Note: The list of hosts corresponds to those available in the selected queue (see the previous step). If you do not select the Host check box, your DRMS decides which host to use. 5. (For LSF only) In the Resource Requirements field, specify any additional resource requirements to submit the job. The program uses these resource requirements along with the queue/host you specified to start the job. It is up to the load sharing facility software to resolve any conflicts between the queue/host and the resource requirements. March 2015 © 1990-2015 477 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 6. (For SGE only) In the Hard Resource Req field, specify the resources that must be allocated before a job can be started. For example, num_proc=4,mem_total=4G 7. (For SGE only) In the Soft Resource Req field, specify the resources that a job needs but do not have to be allocated before the job can be started. The specified resources will be allocated to the job on an as-available basis. For example, mem_free=2G 8. (For SGE only) In the Job Priority field, specify the priority for the job being submitted relative to other pending jobs submitted by you. Default priority of a submitted job is 0. Users with administrator privileges can set this value from -1023 to 1024. Other users can set this value from -1023 to 0. For example, you can set priority for a job as -500. 9. (For SGE only) In the Parallel Environment field, specify the name of the parallel environment. 10. In the Parallel Num Processors field, specify the number of parallel processors to be used to run the submitted job. 11. (Optional) Specify maximum job information. 12. (Optional) Specify job timeouts. 13. (Optional) Specify error reporting options. 14. (Optional) Specify multiple run options. 15. Save your job policy. For more information, see Saving a Job Policy on page 483. 16. Click OK. Specifying Max Jobs Max jobs specifies the maximum number of ICRP jobs that can run in a ADE XL session. The Max Jobs value along with the value specified in the Specify field on the Run Options form is used by ADE XL to assign jobs to the simulations running in a session. If multiple To specify maximum job information, do the following: ➤ In the Max. Jobs field, type the maximum number of jobs that can run at any time during your ADE XL session. March 2015 © 1990-2015 478 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note: If the distribution method specified in your job policy is Command, Local or RemoteHost, the maximum number of jobs that can run at any time cannot exceed the value specified using the maxIPCJobsLimit environment variable. The default value of this environment variable is 100. When Start Immediately is turned on, the program immediately submits the specified maximum number of jobs, or one job for every test, whichever is less, when you start ADE XL. This means that the defined number of ICRP processes are already running before you start the simulation. This saves the overhead of staring ICRP processes at time of running simulation. To turn off this feature, do the following: ➤ Deselect the Start Immediately check box. However, it is also important to understand that even if already started, the life of an idle ICRP process is controlled by the Linger Time field whose default value is 300 second. This implies that if a user launches a simulation 5 minutes after starting ADE XL, these processes would have already been killed and would restart when a simulation is run. Specifying Job Timeouts To specify job timeouts, do the following in the Timeouts group box: 1. In the Start Timeout field, type an integer number of seconds of time to wait for the icrp process to report back to ADE XL that it has started the job. The wait time starts as soon as ADE XL submits the job. If icrp does not respond in the number of seconds you specify, ADE XL considers the job not started and kills it. If there is another job waiting to start, ADE XL starts it. March 2015 © 1990-2015 479 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 2. In the Configure Timeout field, type an integer number of seconds to wait for the icrp process to report back to ADE XL that it has configured the job. The wait time starts as soon as ADE XL sends the job configure command. If icrp does not respond with a successful configuration message in the number of seconds you specify, ADE XL considers the job configuration unsuccessful and kills it. ADE XL looks for the next idle job and tries to start and configure it. 3. In the Run Timeout field, type an integer number of seconds to wait for the icrp process to report back to ADE XL that it has run the job. The wait time starts as soon as ADE XL sends the run command for the job. If icrp does not respond that the job has completed in the number of seconds you specify, ADE XL considers the job run unsuccessful and kills it. ADE XL looks for the next idle job and tries to start, configure, and run it. 4. In the Linger Time field, type an integer number of seconds after which you want the program to kill a remote job (a remote workbench process) after the simulations finish. Specifying Error Reporting Options To specify error reporting options, do the following in the Error Reporting group box: ➤ By default, if multiple error points exist for a test, the program displays only the output log file of the first error point in the test. To view the output log file of the remaining error points, right-click the job status icon on the Run Summary assistant pane. To cause the program to display the output log files of all error points in the test, select the Show output log on error check box. ➤ To cause the program to display the output log file on the occurrence of an error for a test, even if the ADE XL distribution system is retrying the test, select the Show errors even if retrying test check box. March 2015 © 1990-2015 480 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Specifying Multiple Run Options To specify the job option to be used when running multiple runs in the same ADE XL session, do one of the following in the For Multiple Runs group box. ➤ To cause the program to reassign a completed job for the current run to a new run, select the Reassign immediately for new run option. ➤ To cause the program to wait until all the jobs for the current run are completed before assigning the jobs to a new run, select the Wait until currently running points complete option. Also see: Setting Up Run Options Specifying a Job Submit Command When the software submits a job, it runs a separate process (icrp). The software prepends the command you type in the Command field on the Job Policy Setup form to the icrp startup command. The program runs the entire command on the local host. Important The command you type must take the icrp startup command as its argument. For example, you might type a Distributed Resource Management System (DRMS) command such as bsub for LSF or qsub for Sun Grid Engine (SGE) in the Command field: bsub -I -q queueName other_bsub_options The program puts the icrp startup command at the end of the command you type as follows: bsub -I -q queueName other_bsub_options icrpStartupCommand You are responsible for making sure that this command is valid, that the bsub command you type can start icrp on some host in the cluster using the specified options. March 2015 © 1990-2015 481 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Tip You can try customizing your job submissions by developing wrapper scripts and using them with a command job policy to submit your jobs. The program will not validate the correctness of your wrappers/scripts. Using Buttons at the Bottom of the Form Use the buttons at the bottom of the form as follows: Button OK Cancel Apply Stop All Help Description Saves the settings for the job policy, applies it to all future jobs you start during the current session, and closes the form Note: The program kills any currently running jobs as soon as they become idle. Closes the form without saving your changes to the settings for the job policy Saves the settings for the job policy and applies it to all future jobs you start during the current session Note: The program kills any currently running jobs as soon as they become idle. Stops all the jobs you started during the current session regardless of their current state (started, preparing UI, populating results etc.) Important Use this option with extreme caution. Opens the online Help page for this form March 2015 © 1990-2015 482 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Saving a Job Policy To save a job policy, do the following: 1. In the Job Policy Setup form, click Save. The Save Job Policy form appears. 2. In the Select Path list, select the directory where you want to save the job policy. You can save the job policy in one of the following directories in which you have write permissions or in the paths specified in your setup.loc file where you have write permissions: ❑ .cadence folder in the current directory ❑ The .cadence folder in the path specified in the CDS_WORKAREA environment variable. ❑ $HOME/.cadence (the .cadence folder in your home directory) ❑ The .cadence folder in the path specified in the CDS_PROJECT environment variable. ❑ The .cadence folder in the path specified in the CDS_SITE environment variable. 3. Click OK. March 2015 © 1990-2015 483 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The job policy is saved in the jobpolicy folder under the selected directory. The job policy file has the .jp extension. If a job policy file with the same name is found in more than one of the above locations, the first job policy file found in the first of the following locations is used: ■ .cadence folder in the current directory ■ The .cadence folder in the path specified in the CDS_WORKAREA environment variable. ■ $HOME/.cadence (the .cadence folder in your home directory) ■ The .cadence folder in the path specified in the CDS_PROJECT environment variable. ■ The .cadence folder in the path specified in the CDS_SITE environment variable. Deleting a Job Policy To delete a job policy, do the following: 1. Choose Options – Job Setup. The Job Policy Setup form appears. 2. From the Job Policy Name drop-down list, select the job policy you want to delete. 3. Click Delete. March 2015 © 1990-2015 484 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Setting Up Run Options When you perform multiple ADE XL runs simultaneously (that is, an ADE XL run is already in progress and you click again to start more runs simultaneously), the options specified on the Run Options form are used to allocate the available ICRPs or jobs. You can change the options on this form to control allocation of the ICRPs among various ADE XL runs. To set up run options, in the ADE XL window, choose Options – Run Options. The Run Options form appears, as shown below. The following table describes the commands available on the Run Options form: Command Run In group box Series Description Contains the options to specify how more than one ADE XL runs are to be performed Performs multiple ADE XL runs in series. In this case, only one run is performed at a particular point of time. If the number of available ICRPs (as specified by Max Jobs in the job policy) is greater than the number of points in the current ADE XL run, only the ICRPs required to run the points are used. The remaining ICRPs are not allocated to any subsequent run until the current ADE XL run is complete. March 2015 © 1990-2015 485 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Command Parallel Number of jobs group box Description Runs multiple ADE XL runs in parallel. If ICRPs are available, multiple ADE XL runs are started without waiting for the previous one to complete. The allocation of points or corners to ICRPs depends on the setting in the Number of jobs section on this form. Note: The default value for Run In is set to Series. To make Parallel as the default value, set the defaultRunInParallel environment variable to t. Contains the options to specify how the ICRPs are to be allocated among multiple ADE XL runs. Share resources equally Specify When Run In is set to Parallel, this option shares the number of jobs among all the parallel runs equally. For example, if Max Jobs is 10 and the current run is using 4 ICRPs, two additional parallel runs will each get 3 ICRPs. When Run In is set to Parallel, this option specifies the maximum number of ICRPs to be allocated to each ADE XL run in parallel. Note: The value in the Specify field should not exceed the value of Max Jobs because in that case, the value in Specify is ignored. If the value of Max Jobs is greater than the value in Specify, each ADE XL run gets the same number of ICRPs as specified in the Specify text box. Note: You can change the value of Specify between two ADE XL runs. For example, Max Jobs is set to 10. Before starting the first run, Specify is set to 4, so it gets four ICRPs. After this, if you change the value of Specify to 2 and start two more runs, the subsequent runs will get two ICRPs each. Also see: Examples of ICRP Allocation to Parallel Runs Based on Specify and Max Jobs March 2015 © 1990-2015 486 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Examples of ICRP Allocation to Parallel Runs Based on Specify and Max Jobs Example 1 If Max Jobs=5 and Specify=2, the first ADE XL run will get two ICRPs and the subsequent runs will also get two ICRPs allocated to them. If there are only two runs in parallel, one ICRP still remains unallocated, as shown in the figure given below. A max. of five ICRP jobs can be available March 2015 © 1990-2015 Allocates two ICRPs to each run Two runs in parallel 487 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Example 2 If Max Jobs=6 and Specify=4, the first ADE XL run will get four ICRPs. The next run initially gets the remaining two ICRPs. Depending on the value set for Reassign immediately for new runs job policy setting, ADE XL reassigns one of the ICRPs from the first run to the second run so that each run is using three ICRPs. Example 3 If Max Jobs=24 and Specify=8, the first run gets eight ICRPs. The next run will get another eight ICRPs. Eight more ICRPs still remain unallocated. March 2015 © 1990-2015 488 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Running Pre-run Scripts before Simulation Runs For each test, you can specify a pre-run script that contains a set of OCEAN commands to be run before the test is simulated. If a pre-run script is specified for an ADE XL test, for every point of evaluation, first the pre-run script is run and then the test is simulated for that point. Using pre-run scripts, you can specify OCEAN commands that read the simulation setup for a test, run pre-simulation analyses for each simulation point and, if required, modify the simulation setup for that point. For example, you can run a script to calculate a calibrated value for a design variable and use that value in the main simulation run. To see an example, refer to Pre-run script Example for Monte Carlo Calibration. In a pre-run script, you can use any OCEAN command. For example, you can use the desVar command to get the value of a design variable in an ADE XL test. To see how, refer to Pre-run Script Example. In addition, you use the following OCEAN commands that are specifically meant for use in pre-run scripts: ■ ocnxlLoadCurrentEnvironment ■ ocnxlSetCalibration ■ ocnxlRunCalibration ■ ocnxlAddOrUpdateOutput ■ ocnxlUpdatePointVariable ■ ocnxlGetJobId ■ ocnxlGetPointId ■ ocnxlMCIterNum ■ ocnxlMainSimSession For more information about these and other OCEAN commands, see the OCEAN Reference. Note: A pre-run script is run in non-graphical mode. Therefore, in this script, you cannot specify OCEAN commands that plot waveforms. For more information, see the following topics: ■ Adding a Pre-Run Script on page 490 ■ Modifying a Pre-Run Script on page 493 March 2015 © 1990-2015 489 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Adding a Pre-Run Script To add a pre-run script for a test, do the following: 1. In the Data View pane, right-click the test and choose Pre-Run Script. The Pre-Run Script form appears. 2. Click Enable to enable the use of a pre-run script for the test. All other fields and buttons on the form are enabled. 3. Do any of the following to provide a pre-run script: ❑ If a script is already saved in a file, specify the path to the file in the File field. You can click Browse to view the directories and select a file. Now, click (Edit pre-run script) to open and edit the script in the default text editor for Virtuoso specified by using the $VISUAL or $EDITOR variables in the .cshrc file, in the given order of preference. If none of these two variables is set, the tool uses the vi editor. ❑ To load a script template file and use it to create a new script, click . The path to the default template, monteCalibrationTemplate.preRun.ocn, is displayed in the File field. You can now click Edit pre-run script to open and edit the script in the default text editor. March 2015 © 1990-2015 490 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 4. After editing, save the script and close it. If you used a script template, save your script with a new name. 5. (Recommended) Click (Lint check pre-run script) to run SKILL Lint rules and check the scripts for errors. The script is displayed in the SKILL IDE where you can run lint rules and modify your script. 6. Save the script and close the SKILL IDE. 7. Click OK to set the script for your test. You can also run the following SKILL fucntions to set a pre-run script: ■ axlSetPreRunScriptEnabled ■ axlImportPreRunScript ■ axlSetPreRunScript ■ axlGetPreRunScript Note: By default, the pre-run script file specified for a test is copied to the ADE XL view and is saved as a part of the state. To use the script file from its original location and not to copy it to the ADE XL view, set the copyPreRunScripts environment variable to nil. The following examples show how pre-run scripts can be used. Example 13-1 Pre-run Script Example The following pre-run script reads the simulation setup of a test and before every point of evaluation, it runs a transient simulation for a selected set of sweep values of design variable R1. Based on the simulation result, it updates the value of another variable DC1 before running the main simulation for that point. ; Read the simulation setup for the test ocnxlLoadCurrentEnvironment(?noAnalysis t) ; If design variable R1 is swept from 10K to 30K, the following logic will run only ; for the points where R1 > 20K when(evalstring(desVar(“R1”)) > 20K resultsDir(“./newDir”) save( 'i "/NM2/D" "/NM0/D" ) analysis( ‘tran ?stop “10u”) run( ) SimRes=xmax(i("NM2.d" ?result "tran-tran" ?resultsDir "./newDir/psf") 1 )) March 2015 © 1990-2015 491 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ; Update value of variable DC1 in the simulation setup for the point based on ; whether R is greater than or lesser than 90u. a=110u b=120u if( SimRes > 90u then ocnxlUpdatePointVariable("DCI" sprintf( nil "%L" a)) else ocnxlUpdatePointVariable("DCI" sprintf( nil "%L" b)) ) ) Example 13-2 Pre-run script Example for Monte Carlo Calibration The following pre-run script customizes the simulation setup of a test and sets up a single iteration Monte Carlo calibration run by inheriting the settings from the main Monte Carlo Sampling run. Next, it calculates a calibrated value that is used in the main simulation. In the Pre-Run Script form, click Enable. Next, click Open Template. ADE XL loads the monteCalibrationTemplate.preRun.ocn template. Click (Edit pre-run script) to open and edit the script in the default text editor for Virtuoso. The following template script is opened. ; Read the simulation setup for the test Test1 ocnxlLoadCurrentEnvironment( ?noAnalysis t) ; The following command changes the simulation setup for the calibration run by ; specifying a new analysis for the calibration run analysis('ac ?start "1G" ?stop "3G" ?step "1M") ; The following command sets up a single iteration Monte Carlo calibration run by ; inheriting the settings from the main Monte Carlo Sampling run ocnxlSetCalibration() ; The following logic calculates the calibrated value using the successive ; approximation method. The ocnxlRunCalibration() runs a single iteration Monte ; Carlo simulation. for( n 1 noOfBits i = noOfBits - n BitWord = BitWord + 2**i ParamVal = BitWord*8 desVar( "ParamName" ParamVal ) ocnxlRunCalibration() SimResult = if( SimResult < target then BitWord = BitWord - 2**i March 2015 © 1990-2015 492 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ) ) CalResult = BitWord * 8 ; The following command adds the calibrated value as an output named ; Calibrated_ParamName so that it can be viewed in the ADE XL Outputs Setup tab for ; each point. ocnxlAddOrUpdateOutput("Calibrated_ParamName" CalResult) ; The following command updates the value of global variable ParamName with ; the calibrated result. ocnxlUpdatePointVariable("ParamName" sprintf( nil "%L" CalResult)) After assigning the calibrated values to the output of a test, Test1 in the above example, you can also pass the calibrated value to a global variable in another test, for example, to variable N2 in Test2. In this case, you can define variable N2 for Test2 using the calcVal function, as shown below: calcVal("Calibrated_ParamName" "Test1") Important It is not possible to distribute a simulation running from a pre-run script. If you specify distributions setup in the script or in .cdsenv, it is ignored. The simulations in prerun scripts are distributed with jobs as per the job policy set in ADE XL. Modifying a Pre-Run Script To modify the pre-run script for a test, do the following: 1. In the Data View pane, right-click the test and choose Pre-Run Script. The Pre-Run Script form appears. 2. Verify that the File field shows the path to the required script file name. 3. Click (Edit pre-run script). The script file is opened in the default text editor where you can edt the script and save the changes. March 2015 © 1990-2015 493 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Viewing the Run Preview The Run Preview tab in the Outputs pane provides a summarized view of all the settings applied in the current ADE XL view. You can view various details, such as the total number of sweep points and corners that would be run, the number of active tests, or the job policies being used. If required, you can also view a particular data point in the debug environment and run simulation for that. Note: The Run Preview tab is available for the Single Run, Sweeps, and Corners run mode only. March 2015 © 1990-2015 494 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The figure given above shows how the Run Preview appears with the default ADE XL setup. As you modify the setup in the current view, the setup summary is refreshed automatically and the count of corners, points, and total simulations to be run keeps varying. Tip You can modify the type of information or the format in which it is displayed on the Run Preview tab by updating the .xsl stylesheet that defines the format of this tab. For more details, refer to Modifying the Format of the Run Preview Tab. The Run Preview tab has two sections, the Setup Summary section and the points table. By default, only the summary data is displayed and updated. This is because the Auto Refresh Setup Summary check box in the drop-down menu is selected by default. Refresh Drop-down menu You can also display the details of design points by clicking Refresh. If the number of the simulation points is large, it may take several minutes to display the details. March 2015 © 1990-2015 495 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The design point and corner combinations, and the values of variables are displayed in the points table below the Setup Summary section, as shown below. Sweep points All possible sweep points and corners combinations To refresh the points table automatically after every change in the sweep values or corner setup, select the Auto Refresh Points Table check box. Important If the Auto Refresh Points Table check box is selected, the simulation run triggers the points table to refresh. If the number of the simulation points is large, it may take more time for the simulation run to complete. Therefore, it is recommend to clear the Auto Refresh Points Table check box before running simulations. To view only the points table and to hide the Setup Summary, you can clear the Auto Refresh Setup Summary check box and select the Auto Refresh Points Table check box. Related Environment Variables ■ enableAutoRefreshSetupSummary ■ enableAutoRefreshPointsTable March 2015 © 1990-2015 496 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Using the Information Displayed on the Run Preview Tab You can use the information displayed on the Run Preview tab as explained below. Viewing the Corner and Sweep Combinations If you have selected the check boxes that enable automatic refresh of information, the details on the Run Preview tab show the updated corner and point details while you modify the ADE XL setup. Modifying the Setup You can click on the hyperlinks provided in the Setup Summary section to open the relevant section in the ADE XL setup and modify the settings. For example, when you click the Corner hyperlink, the Corners Setup form is displayed where you can modify the corners for the current setup. After you close the Corners Setup form, the number of corners is updated according to the changes done. Similarly, you can click on the Job Policy hyperlink to open the Job Policy Setup form to view or modify the job policy. If any test has an overridden job policy, the Job Policy information in the Setup Summary indicates that by using the keyword (various), as shown in the figure above. Creating Netlist You can create netlist for a specific design point and corner combination and verify details. For this, right-click anywhere in the row corresponding to that combination and choose Create Netlist. ADE XL creates and displays a netlist for that point in a separate window. Running Simulation for a Specific Point Before running simulation for all the points, you might be interested in viewing the results of a specific design point and corner combination. In that case, you can run a simulation for that combination only and verify results. If required, make further modifications in the setup. To run simulation for a specific design point and corner combination, right-click anywhere in the row corresponding to that combination and choose Open Debug Environment. ADE XL opens that simulation point in the ADE XL Debug Environment where you can run a simulation and view results. Note: The Create Netlist and Open Debug Environment commands are not enabled for the OCEAN-based tests. March 2015 © 1990-2015 497 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Modifying the Format of the Run Preview Tab The format of information displayed on the Run Preview tab is defined by the previewSetup.xsl stylesheet saved at the following default location: /share/cdssetup/adexl/previewSetup.xsl To modify this format or to define the content to be displayed on this tab, you can provide the path to a customized .xsl stylesheet by setting the RUNPREVIEW shell environment variable before running Virtuoso, as shown below. setenv RUNPREVIEW_XSL ADE XL uses the stylesheet specified by this variable to display the information on the Run Preview tab. March 2015 © 1990-2015 498 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Using Convergence Aids To specify node set information, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Convergence Aids – Node Set. The appropriate form for your target simulator appears. 2. When you are done specifying node set information, click OK. To specify initial conditions, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Convergence Aids – Initial Condition. The appropriate form for your target simulator appears. 2. When you are done specifying initial conditions, click OK. (hspiceD only) To force a node to a particular voltage for the entire simulation, do the following: To specify node set information, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Convergence Aids – Force. The Select Force Node Set form appears. 2. When you are done specifying force nodes, click OK. March 2015 © 1990-2015 499 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Disabling and Enabling All Point Sweeps To disable all point sweeps, do the following: ➤ On the Run Summary pane, deselect the # Point Sweeps check box (where # indicates the number of point sweeps). The simulator does not run any point sweeps. To restore all point sweeps, do the following: ➤ On the Run Summary pane, select the # Point Sweeps check box (where # indicates the number of point sweeps). The simulator runs the specified number of point sweeps. March 2015 © 1990-2015 500 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Starting a Simulation To start a simulation, do the following: ➤ On the Run toolbar, click the Run Simulation button. ADE XL does the following: ❑ If the showNameHistoryForm environment variable is set to t, displays the Specify History Name form to prompt for a history name to be used for the current run. For more details, refer to Specifying a History Name. ❑ Checks for new design variables by performing a copy-from-cellview operation. The simulator requires a value for every design variable or a global variable that is enabled and has a valid value or set of values. ❑ Generates a new netlist that reflects any design changes (any changes you made to the cellview since the last extraction). Note: For single point simulations, netlist generation in ADE environment also depends on the setting for the nlRenetlistAll variable in the .simrc file. When this variable set to t, all cellviews in the design are re-netlisted, irrespective of the setting specified using the UI commands Create or Recreate in the Simulation – Netlist submenu in the ADE XL test editor. If the setup has sweeps or corners, ADE XL always recreates the netlist. ❑ Updates the simulation information numbers that appear on the Run Summary assistant pane to indicate the number of tests running, the number of values varying (Point Sweeps), the number of corners, and the nominal corner. ❑ Displays the progress of the simulation run in the Run Summary assistant pane. March 2015 © 1990-2015 501 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations For more details of the progress bar, refer to Checking Run Status on the Progress Bar. ❑ Simulates your testbench. ❑ Displays the progress and results of the simulation run on a new tab in the Results tab of the Outputs pane. The name of the tab matches the name of the checkpoint for the simulation run. For more information, see Working with Tabs for Simulation Checkpoints on page 603. ❑ If simulations are not run successfully, displays appropriate errors. For more information on the types of errors, refer to Simulation Errors on page 534. After the simulation is complete, the results appear on the Results tab. For details on how to view results on the Results tab and how to customize the view, refer to Viewing, Plotting, and Printing Results. In some cases, the results status is shown as Canceled. This status indicates any one of the following scenarios: ■ You have canceled the simulation run by clicking the Stop Simulation button. ■ The ADE XL GUI is closed abruptly. ■ There is no sufficient disk space to complete the simulation run. ■ If you are running a Monte Carlo simulation, a particular simulation is canceled by ADE XL because the target yield specified by selecting the Auto Stop using Significance Test field is met. For more details, refer to Stopping Monte Carlo Based on Target Yield. ■ If you are running a Monte Carlo simulation, the Run Nominal Simulation option is enabled on the Monte Carlo setup form, but the Monte Carlo run for the nominal simulation fails. See also ■ Specifying a History Name on page 504 ■ Checking Run Status on the Progress Bar on page 506 ■ Specifying the Run Mode on page 79 ■ Stopping a Simulation on page 507 ■ Stopping Jobs and Resubmitting Simulations on page 512 ■ Ignoring Design Changes During Run on page 514 ■ Continuing the In-Process Simulations After ADE XL GUI Exits on page 516 March 2015 © 1990-2015 502 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ Disabling and Enabling All Point Sweeps on page 500 ■ Disabling and Enabling the Nominal Corner on page 263 ■ Disabling and Enabling All Corners on page 265 ■ Simulating Corner on page 284 ■ Simulation Errors on page 534 ■ Creating and Running an OCEAN Script on page 578 ■ Chapter 14, “Viewing, Plotting, and Printing Results” March 2015 © 1990-2015 503 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Specifying a History Name When you run a simulation, depending on the run mode, ADE XL assigns a default name to the new history. For example, for the Single Run, Sweeps, and Corners run mode, the default history name is Interactive , and for the Monte Carlo Sampling run mode, the default history name is MonteCarlo. If required, you can specify a custom name to be used for a history. You can do this in either of the following two ways: ■ By setting an appropriate environment variable to set the default history name. This method is useful when you want to override the default history name for a specific run mode. For example, for the Single Run, Sweeps, and Corners run mode, you want to use SingleRun instead of Interactive as the history name. To change the default history name for a run mode, you can change the value of the environment variable corresponding to the run mode. ADE XL provides the following environment variables: ❑ singleRunSweepsAndCorners ❑ monteCarloSampling ❑ WorstCaseCorners ❑ globalOptimization ❑ localOptimization ❑ improveYield ❑ highYieldEstimation ❑ sensitivityAnalysis ❑ feasibilityAnalysis ❑ manualTuning ❑ sizeOverCorners ■ By specifying a history name at the simulation run time. This method is useful when you want to use a specific history name for a particular run and not for all the consecutive runs of the same run mode. For this, you can set the showNameHistoryForm March 2015 © 1990-2015 504 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations environment variable to t before running the simulation. After this, when you run a simulation, the Specify History Name form is displayed. In the History Name field, specify the name of the history to be used for the current run. You can also add notes specific to this history in the Notes field. Click OK to close the form. The simulation run continues and the specified history name specified is used for the new history. Related SKILL Function: axlSetHistoryPrefixInPreRunTrigger Important Points to Note ■ If the Overwrite History option on the Save Options form is selected, the history name for the next run will be the same as that specified in the Overwrite History drop-down list. The setting for the showNameHistoryForm environment variable is ignored. ■ By default, all the history names are suffixed with an incremental number to keep them unique. For example, If you have specified the history name as TestRun, the histories will be named as TestRun.0, TestRun.1, TestRun.2, and so on. To exclude the unique identifier, you can set the initiallyAddHistoryNameUniquifier environment variable to nil. Note: The initiallyAddHistoryNameUniquifier environment variable is applied only when the history name being used is unique. If the name has already been used for an existing March 2015 © 1990-2015 505 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations history, the value of this variable is ignored and a unique number is added as a suffix. This helps in keeping the names of both the histories unique. Checking Run Status on the Progress Bar While ADE XL is preparing to run a simulation or during a run, you can check its status on the progress bar displayed on the Run Summary assistant pane. The progress bar is displayed to the right of the history item name, as shown in the following figure. Run progress bar It shows one of the following status values to correctly indicate the step being performed: Table 13-1 Status Values Displayed on the Run Progress bar Status Value validating setup saving history Indicates that... Verification of the test setup, variables, parameters, and corners specified in the Data View pane is in progress. ADE XL is also verifying the run options specified for different types of runs in the corresponding run options form. If there are any errors or warnings, appropriate messages are displayed in the CIW or error message dialogs. Creation of the test setup data is in progress. That is, ADE XL is creating the directories in which the test setup data for the simulation run will be saved. March 2015 © 1990-2015 506 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Table 13-1 Status Values Displayed on the Run Progress bar Status Value Indicates that... preparing result directories Creation of the results database (.rdb file) and the results directory is in progress. loading tests x/n ADE XL is starting a session for each active test in the setup. Here n specifies the total number of active tests in the setup, not the total number of tests. evaluating design points x/n Creation and evaluation of the xth number of design point out of n design points is in progress. Here, a total of n design points is calculated based on the given variables, parameters, and run options. Note: These are not data points, but the design points that are created by swept values. populating results UI Preparation of the user interface to display results is in progress. After this step is complete, the Results tab for the current run is displayed on the ADE XL window. At this time, the run status for all the simulations is shown as pending. running – x/n complete ADE XL is running the xth run out of a total of n runs. Note that the progress bar is reset in this stage. finished or finished with errors Successful or unsuccessful completion of all the simulation runs. Stopping a Simulation To stop a simulation run, do one of the following: ■ On the Run toolbar, click the Stop Simulation button. ■ On the Results tab of the Outputs pane, right-click on the name of the tab for the checkpoint for the simulation that is running and choose Stop Run. ■ On the Run Summary pane, right-click on a history item and choose Stop All to stop all the jobs you started during the current session regardless of their current state (started, getting configured, running). March 2015 © 1990-2015 507 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ Switch to the Status view on the Results tab and click the Stop button. ADE XL stops all the simulations that are running. Results for the points that are already successfully complete are saved in the results database for the history checkpoint. Important Points to Note ■ Instead of stopping the entire simulation run, you can stop the simulation for only selected tests or points. For more details, refer to Canceling Simulations for Selected Tests or Corners. ■ If required, you can rerun the simulation for incomplete points later. For more details, refer to Simulating Only Error or Incomplete Points. Important If you are using the Spectre circuit simulator, you can release your license by clicking the button. March 2015 © 1990-2015 508 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Canceling Simulations for Selected Tests or Corners In certain cases, you might need to cancel the simulation for a specific test or corner and complete the simulation for the remaining. This is generally helpful in the following scenarios: ■ When the results of a corner indicate that there is scope of improvement in the design and you do not want to run similar corners. ■ When the results of a test indicate that the setup needs to be changed and you want to cancel all of the pending runs for that test, but complete the simulations for the other tests. ■ When you are running resource-intensive simulations and you want to allow only the jobs that are already running to continue, and to cancel all the pending jobs so that the limited MMSIM licenses can be released for other high-priority simulations. Canceling Simulations for Selected Corners To cancel a simulation for one or more corners, do the following: 1. In the Detail view of the Results tab, select one or more result points in the corner columns for which you do not want to run the simulation. Note: You can cancel the simulation in pending as well as running state. March 2015 © 1990-2015 509 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 2. Right-click on one of the selected points and choose Cancel Selected Simulation(s). ADE XL cancels the simulation for the points corresponding to the selected cells and completes the remaining simulations. The status of the simulations that you stopped appears as canceled, as shown below. Important Points to Note ■ When you cancel the simulations for a corner, ADE XL cancels the simulations only for the tests corresponding to the selected points. For other tests, simulations for those corner and point combinations are completed. ■ To cancel simulations for all the corners in a test, hold down the Shift key and select all the corners in a row for that test, right-click and choose Cancel Selected Simulation(s). If there are multiple design points, all the corner simulations for only that design point and test combination will be canceled. ■ To cancel simulations for a particular corner in all the tests, hold down the Shift key and select all the rows in the corner column, right-click and choose Cancel Selected Simulation(s). March 2015 © 1990-2015 510 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ Canceled simulations are considered to be specification failures, so the Pass/Fail column shows the Fail status for any output specification that contains canceled points. ■ When you plot an output across corners, the canceled corners for which results were not generated are not shown in the plot. ■ You can cancel simulations for the selected corners in the Detail - Transpose view as well. For this, do the following: ❑ To cancel simulations for one or more corners across all the tests, in the left pane of the view, click to select the rows for the corners, right-click and choose Cancel Selected Simulations(s), as shown in the figure below. Simulations for the corresponding design point and corner combinations are canceled across all the tests. ❑ To cancel simulations for specific design point, corner, and test combinations, select the corresponding cells in the right pane of this view, right-click and choose Cancel Selected Simulations(s). Canceling Simulations for Selected Tests To cancel simulation for one or more tests, do one of the following: 1. In the Detail view of the Results tab, select one or more tests in the Test column. 2. Right-click on one of the selected test names and choose Cancel Selected Test(s). ADE XL cancels all the pending or running simulations for the selected tests and completes the remaining tests. March 2015 © 1990-2015 511 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important Points to Note ■ You can cancel simulations for the selected tests in the Summary view as well. For this, select one or more rows for tests, right-click and choose Cancel Selected Test(s). ■ You can also select a combination of test and corners to cancel their simulations. In this case, when you right-click any one of the selected tests or corners, the name of the command changes to Cancel Selected Test(s) and Simulation(s). Known Limitations You cannot cancel selected simulations while running Monte Carlo Sampling simulations with Auto Stop enabled. Stopping Jobs and Resubmitting Simulations During a simulation, the Run Summary assistant shows the status of the ICRP jobs that are running simulations. You can check the status of each individual ICRP job by placing the pointer over it. A tooltip is displayed giving the details of the current simulation in progress and the total number of simulations completed by the job. An example is shown in the following figure. If you observe that a particular job is taking an unusually long time to complete, you can stop that job and resubmit the simulation. March 2015 © 1990-2015 512 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ➡ To stop a job and resubmit the simulation, right-click on the job and choose Stop and Resubmit. When you use this command, ADE XL does the following: ■ The icon for the stopped job changes to and then disappears. A new job is created to replace the stopped job. ■ The simulation that was running on the stopped job is placed in the beginning of the queue of pending simulations. The simulation for this point is then submitted to the next available job. ■ If no more simulations are pending, ADE XL might not create a new job. Stopping a job is generally helpful in the following scenarios: ■ When a job is submitted to a machine that is known to be slow or with limited memory: If the tooltip of a job shows the name of the slow machine and you observe that the currently running simulation is taking an unusually long time to complete, you can stop the job and restart it. The queuing software might distribute the resubmitted job to another machine that has better resources. ■ When a particular job has simulated a significantly smaller than the average number of simulations: If the tooltip of a job shows that the number of points simulated by it are less than the points simulated by other jobs, you can stop the slow job and resubmit it. ■ When nearing the end of a run, only one or two jobs remain pending and are taking more than the expected time to complete the simulation for the current design points: In this case, you can try to stop and resubmit the job. Resubmission of job can allocate it to another better machine. Note: If no simulation is running on a job, the context-sensitive menu shows the Stop command in place of the Stop and Resubmit command. March 2015 © 1990-2015 513 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Ignoring Design Changes During Run Important This feature is not supported when the ADE XL setup includes device parameterization. If you modify the schematic while a simulation run is in progress, the design changes may get considered for the netlist creation and simulation of the pending design points in the current run. This is because a new netlist is created before simulating every design point and any design change, such as, a change in pin name, instance name, instance parameter property, or config binding or any addition or deletion of a design component, may get reflected in the netlist. However, if you want to ignore any design changes in the simulation run that is already running and to consider them only for the subsequent runs, set the ignoreDesignChangesDuringRun flag to t as shown below: envSetVal("adexl.simulation" "ignoreDesignChangesDuringRun" 'boolean t) When this flag is set and you run the simulation, a netlist is created upfront for each test in ADE XL and saved as a master netlist in the top psf directory for the respective test in the simulation directory. A progress bar is also displayed for each test in the ADE XL window to indicate that the netlist is being generated. The saved master netlist for each test is then reused for all the point simulations for the test. In addition, the user setting for the singleNetlistForAllPoints and includeStatementForNetlistInSimInputFile environment variables are ignored when the ignoreDesignChangesDuringRun variable is set. That is, the netlist file in the netlist directory for each point is symbolically linked to the master netlist residing in the top level PSF netlist directory that is saved under the top level psf directory for the test. The following figure shows the netlist directory for point 1 of the Interactive.2 simulation run. March 2015 © 1990-2015 514 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that the netlist for point 1 is a symbolic link to the netlist in the netlist directory under the psf directory for the test. The input.scs file for Spectre and input.ckt file for Ultrasim simulator contain the include "netlist" statement, which reflects that the netlist being used is the same netlist for all the points. The following figure shows the input.scs file for point 1. This helps in minimizing the size of the simulation directory. March 2015 515 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Limitation When the ADE XL setup includes device parameterization, an incremental netlist needs to be generated for each simulation point during the simulation run. This is required to execute any CDF callbacks during the run. Therefore, any changes that are made to the schematic design during this simulation run cannot be ignored. In this case, a warning is displayed in the ADE XL window requiring confirmation that you want to continue. Now, if you continue, any design changes that happen while the simulation is running are considered in the current run. Continuing the In-Process Simulations After ADE XL GUI Exits By default, in case of an abrupt exit of ADE XL or Virtuoso GUI, any in-process ADE XL simulation stops immediately. This results in loss of results of the incomplete simulations and there is no way to recover them. However, you can choose to keep the in-process simulations running in the background even if the ADE XL or Virtuoso GUI is closed. After the simulations are complete, their results are saved in the results database. Next time, you open the ADE XL GUI and if the in-process simulations are complete, you can load the history to view results. In this case, you do not need to rerun the simulations that were running when the ADE XL GUI was closed. See the following topics for more information: ■ Enabling Continuation of the In-Process Simulations on page 516 ■ Supported Scenarios on page 517 ■ Limitations on page 523 Enabling Continuation of the In-Process Simulations To continue and complete the in-process simulations even after the ADE XL GUI is closed, set the continueICRPRunOnAbruptGUIExit environment variable to t. When the continueICRPRunOnAbruptGUIExit variable is set to t, the IC Remote Processes (ICRPs) that were running the simulations are kept active to complete the simulations. By default, the ICRPs are closed immediately after the ADE XL GUI is exited. March 2015 © 1990-2015 516 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important After the ADE XL GUI is closed abruptly, the existing ICRPs will use the ADE XL license to complete the in-process simulations. If more than one ICRP was running, all the processes will share a single license. A new ADE XL session will require another license token. Supported Scenarios This feature is supported for the following scenarios: ■ When the ICRPs are Running and the ADE XL GUI Exits Abruptly ■ When the ICRPs are Running and Virtuoso Exits Abruptly ■ When the Simulations are Running and Virtuoso is Closed The following sections describe how the running simulations are completed in the scenarios given above. When ICRPs are Running and Virtuoso or ADE XL Environment Exits Abruptly In the first two scenarios, when the Virtuoso or ADE XL GUI exits abruptly, the ICRPs complete the simulations that are currently running, evaluate the output expressions, save results in the results database and then exit. Consider the following scenario in which the ADE XL GUI is closed abruptly when some of the simulations are in the running state, as shown below. March 2015 © 1990-2015 517 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations If the continueICRPRunOnAbruptGUIExit variable is set to t, all ICRPs that are currently running these simulations will continue and complete the simulations. Next time when you open the history of this run and view results, the results will appear as shown below. March 2015 © 1990-2015 518 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that the results of the simulations were completed and saved in the results database. You need to run only the pending simulations, whose status appears as pending. For this, on the History tab of the Data View assistant pane, right-click on the history item that was running when the GUI exited and choose Re-run Unfinished/Error Points. If the continueICRPRunOnAbruptGUIExit variable is set to nil, all the ICRPs are immediately exited without completing the simulations that were already running. In such a case, if you open the history results, the status of simulations is shown as running, but actually they are not running. March 2015 © 1990-2015 519 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations If you rerun the unfinished points, all the simulations that were in the running or pending state are run again. Important Points to Note ■ If you reopen Virtuoso and load the history results while the simulations are still running, you might not see results of the in-process simulations that have the status set as running. In such cases, it is recommended to view the results again after an estimated time of simulation run. Note: The ADE XL GUI of the reopened Virtuoso session does not provide any status update about the ICRP jobs started by the previous Virtuoso session, but you can use the job monitoring commands provided by your DRMS to monitor the status of the jobs. For example, you can use the bjobs command to monitor the LSF jobs. After verifying that all the ICRP jobs started by the previous Virtuoso session have completed, you can expect to view the results by reloading the history, as shown below. March 2015 © 1990-2015 520 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations a. On the Results tab, make sure to close any opened instance of the history that was running when the GUI exited. b. On the History tab of the Data View assistant pane, right-click on the history item that was running when the GUI exited and choose Load Setup to Active or View Results. ■ If you reopen Virtuoso and ADE XL immediately after the GUI was closed abruptly and the in-process simulations are still running, you might not see the updated results after reloading the results. The results are available only after the simulations are complete and saved to the results database. To view the results: a. On the Results tab, make sure to close any opened instance of the history that was running when the GUI exited. b. On the History tab of the Data View assistant pane, right-click on the history item that was running when the GUI exited and choose Load Setup to Active or View Results. When the Simulations are Running and Virtuoso is Closed By default, if the continueICRPRunOnAbruptGUIExit variable is set to nil and you close Virtuoso while simulations are running, Virtuoso displays the following message to alert that some simulations are running and to confirm if you want to exit Virtuoso without completing those simulations. If you click Yes, all running simulations are stopped and Virtuoso is closed. If you click Yes, simulations that are currently running are stopped and ADE XL is closed. Next time, when you view the history results, the status of the pending simulations is shown as Canceled, as shown below. March 2015 © 1990-2015 521 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations If you want that even if you close Virtuoso, the simulations that are already running should continue to run, set the continueICRPRunOnAbruptGUIExit variable is set to t. If this variable is set, when you close Virtuoso, it checks the state of simulation runs. There can be the following two cases: ■ Simulation run has started, but no job is running when you close Virtuoso In this case, the following message is displayed to alert that you started some simulation runs that are pending to run. To exit Virtuoso and cancel all the pending simulations, click Yes. Click No to stop from exiting Virtuoso. ■ Simulation run has started and one or more jobs are running In this case, the following message is displayed to confirm if you want to continue the running simulations or stop them after closing Virtuoso. March 2015 © 1990-2015 522 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations To exit Virtuoso without completing the running simulation jobs, click Exit and stop simulations. To exit Virtuoso, but to continue running simulations, click Exit but continue with running jobs. Next time, when you run Virtuoso, you can load the history results to view the updated simulation results. Limitations The known limitations of this feature are as follows: ■ While the ICRPs of a history are running to complete the in-process simulations, if you restart the ADE XL GUI, the new session is not connected to the already running ICRPs. ■ A new ADE XL session will not share a license with the ICRPs that are already running to complete simulations for a history run. The new ADE XL session will require another ADE XL license. ■ If you open a new ADE XL session while the in-process simulations of a history are still running and load the results of that history, the status of the in-process runs appears as running. After the simulations are complete, the status is not refreshed automatically. You need to reload the history to view the updated status. Viewing Job Status For each job the program submits, a computer terminal icon appears on the Run Summary assistant pane. Each icon indicates the status of its respective job as follows: Icon Job Status Pending Starting Configuring March 2015 523 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Icon Job Status Running Idle Cleaning up Completed Additionally, you can monitor the job status by doing the following: ➤ Hover the mouse cursor over the job status icon. A job status pop-up appears. The job status pop-up contains information about how long the job has been running, what state it is in, how many simulations have completed with how many errors and how many timeouts. To view the log file while the program is writing it, do the following: ➤ Right-click the job status icon. The log file appears in a separate window. Simulator messages appear in the window as the program writes them. As the window fills up with messages, the program scrolls down so that the most recent messages are always visible. Viewing the Netlist To view the netlist file, do the following: ➤ On the Results tab of the Outputs pane: ❑ Right-click a test or the result for the nominal corner and choose View Netlist to view the netlist for the nominal corner. ❑ Right-click the result for a corner and choose View Netlist to view the netlist for the corner. The netlist file appears in a text window. March 2015 © 1990-2015 524 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Viewing the ADE XL Logs After Running Simulations After running simulations, ADE XL saves the information of ICRP jobs, simulation runs, and outputs in different log files. This section describes the various types of log files ADE XL maintains and the details provided in those files. Log File Contains... Job log (for an ICRP job) Information about an ICRP job and all the simulations that were run on that job. It includes various details, such as the Cadence software version number, operating system version, working directory, the testbench details, variables and parameters for every run, simulator details, results location, data directory, netlist directory, and simulation errors (if any). Each ICRP has a separate log file. To view the job log for an ICRP, right-click an ICRP icon in the Run Summary assistant and choose Job log. Also see: Viewing the Job Log March 2015 © 1990-2015 525 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Log File Contains... Job log (for a data point) Information related to the job for a selected data point. This log contains the details for a data point such as the variable and parameter values, the path to the netlist directory and the data directory, and the output or error details.To view the job log for a point, right-click on any result value for that point on the Results tab and choose Job Log. The simulator log for that point is displayed in a new window. Environment variable to control the creation of the job log for a data point: generateJobFileOnlyOnError At the data point level, ADE XL saves job logs only for the simulations that result into an error. To save the job logs for all the jobs irrespective of their result status, set the generateJobFileOnlyOnError environment variable to nil. However, note that this would increase the disk space requirement. March 2015 © 1990-2015 526 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Log File Output log Contains... The simulator output log for a particular data point. To view the output log for a point, right-click on any result value for that point on the Results tab and choose Output Log. Also see: Viewing the Simulation Output Log File showSimLogForOnePointSim March 2015 © 1990-2015 527 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Log File Composite output log Contains... The composite output logs for all the simulations run for all the points and corners. In this composite log, log for each simulation is separated by the following two statements: ********* LOG ENDS ************** ** ** ** ** ********* LOG STARTS ************ To view the composite output log, on the Results tab, right-click in the Test or Output column and choose Output Log. Environment variable to control the creation of the composite output log depending on the number of simulations: createCompositeSimLogFileWhenSimCountFewerThan March 2015 © 1990-2015 528 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Log File Run log Contains... The summary of a simulation run in ADE XL. To view the run log, on the History tab of the Data View assistant, right-click on a history item and choose Open Run Log. March 2015 © 1990-2015 This log contains the start time and end time for the simulation run, the number of points completed and the number of simulation errors. In addition to these, by default, ADE XL also saves the details of the best design point when the number of points is less than the count specified by createRunLogWhenSimsFewerThan or when the Single Run, Sweeps and Corners run mode is run as part of the Manual Tuning run mode. You can choose to include this information in other scenarios as well by using the following two environment variables: Environment variables to control the creation of the run job log: ■ createRunLogForSweepsCorners ■ createRunLogWhenSimsFewerThan 529 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Viewing the Job Log A job log can be viewed for a particular ICRP on which simulation is running or a particular data point in the Results tab. Viewing Job Log for an ICRP To view the log file for a particular ICRP job, do the following: ➡ In the Run Summary assistant pane, right-click the job status icon Log. and click Job The Job.log file appears in a text window. This file contains information about the ICRP job that is running simulations. It includes various details, such as the Cadence software version number, operating system version, working directory, design path, simulator, results location, data directory, netlist directory, and simulation errors, if any. How Virtuoso Saves the Job Logs? By default, each Virtuoso process creates a unique log subdirectory such as logs under logs_, where all the ICRP processes started by that Virtuoso process write their job log files. For example, if you start a Virtuoso process from a directory and that process further starts three ICRP jobs, Virtuoso creates a directory logs_/ logs0 and the three ICRPs create their job log files, Job0.log, Job1.log and Job2.log in logs_/logs0 directory. While this Virtuoso process is running, if the user starts another Virtuoso process from the same directory, which further starts two ICRP jobs, the second Virtuoso process will create a directory logs_/logs1 and two ICRPs started by it write their job log files Job0.log and Job1.log in the logs_/logs1 directory. Viewing Job Log for a Result Note: By default, ADE XL saves job logs only for the simulations that result into an error. To view the job log file for a particular data point in the Results tab, do the following: ➡ On the Results tab of the Outputs pane, right-click a result cell and choose Job Log. March 2015 © 1990-2015 530 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The job log file for the selected result appears in a text window. This file contains all the information related to the job, such as the parameter values, the path to the netlist directory and the data directory, and the output or error details. To view the job logs for multiple points in the same log window, do the following: ➡ On the Results tab of the Outputs pane, hold down the Ctrl key and click multiple cells, right-click and choose Job Log. March 2015 © 1990-2015 531 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important Points to Note ■ ADE XL saves the job log files in the psf directory and can be viewed when you load the results for a history. ■ By default, to enable debugging, ADE XL saves the job log files only for those jobs that failed due to some reason and did not give any result. The Job Log command is not enabled for the points that successfully showed results. To save the job logs for all the jobs, set the generateJobFileOnlyOnError environment variable to nil. However, note that this would increase the disk space requirement. March 2015 © 1990-2015 532 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Viewing the Simulation Output Log File To view the simulation log file, do the following: ➤ On the Results tab of the Outputs pane: ❑ Right-click a test or the result for the nominal corner and choose Output Log to view the simulation log file for the nominal corner. ❑ Right-click the result for a corner and choose Output Log to view the simulation log file for the corner. The simulation output log file appears in a text window. This file contains information about the simulation environment, the command line sent to the simulator, the details of analyses, the simulation summary, and any simulation error or warning messages. An example of the output log is shown below. March 2015 © 1990-2015 533 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that the log contains hyperlinks that provide direct access to the netlist file, input files, instances in the schematic, the setup forms for analyses, and error or warning information. These links are very helpful in debugging. For more details on the hyperlinked logs, refer to Viewing the Simulation Output in the Virtuoso Analog Design Environment L User Guide. See also: Simulation Errors showSimLogForOnePointSim Simulation Errors If the simulation of an analysis or evaluation of an expression fails, ADE XL reports appropriate errors in the Results tab or in the output log. The errors can be categorized as described in the following table. Type of error netlist error (error) simulation error (sim err) evaluation error (eval err) Reported when... ■ Generation of netlist fails because of some reason, such as a missing device master. ■ A simulation was killed. This can be due to various reasons such as process killed in the background or insufficient disk space. ■ The analysis on which an expression is dependent failed due to errors. In this case, all the expressions that depend on the failed analysis show sim err in the results table. Other outputs are not affected due to this failure. ■ An expression was wrongly constructed, and therefore, could not be properly evaluated ■ No data was generated after simulation due to some reason ■ The analysis on which evaluation of an expression is dependent was not selected for simulation March 2015 © 1990-2015 534 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important Points to Note ■ You can rerun the design points that could not run because of simulation errors. However, you cannot rerun the design points that failed with eval errors because they will result in the same error again. ■ If the eval error occurs because of an incorrectly built expression, you can update the expression on the Output Setup tab and click Re-evaluate on the Results tab to rerun the expression evaluation. See also: ■ Viewing the Simulation Output Log File ■ Viewing the Job Log ■ Simulating Only Error or Incomplete Points ■ showOutputLogOnError ■ useLocalPsfDir March 2015 © 1990-2015 535 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Viewing Diagnostics Information The Diagnostics tab of the Outputs pane displays information on machine utilization, the average time for a simulation run, and other runtime information including the total elapsed time of the simulation run, the number of points run thus far, the total number of nodes in use, and so on. The Diagnostics tab consists of three parts: ■ Run Summary on page 537 ■ Job Summary on page 537 ■ Test Summary on page 537 March 2015 536 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Run Summary The Run Summary table summarizes the following information about the simulation run. Field Design Points Simulations Total Nodes Points/Hour Elapsed Time Total Errors Description Number of points in the run Total number of simulations Total number of simulation nodes used Points simulated per hour Elapsed time of the simulation run Total number of runtime errors for all tests. Runtime errors include netlisting errors, simulation errors, and errors other than evaluation errors. Job Summary The Job Summary tab displays the following job related information when a simulation run is in progress. Field Job Status Machine Test Name Description Job name Status of the job System on which job is running Name of the test for which simulation is running Test Summary The Test Summary tab summarizes the following information about the simulation run. Field Test March 2015 © 1990-2015 Description Name of the test 537 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Field Avg(s) Current Errors Description Average time in seconds the simulation takes to run Number of simulation nodes that are currently running Total number of runtime errors for each test. Runtime errors include netlisting errors, simulation errors, and errors other than evaluation errors. You can view the information in the Diagnostics tab during and after a simulation run. You can also view the diagnostics information for all the runs or for a specific run. Note: The Diagnostics tab displays information only for the runs that occurred in the current ADE XL session. To view the combined diagnostics information for all the runs, do the following in the Diagnostics tab: ➤ In the Run drop-down list, select All Runs. To view the diagnostics information for a specific run, do the following in the Diagnostics tab: ➤ In the Run drop-down list, select the name of the run for which you want to view the diagnostics information. To view the log file for a job, do the following: ➤ Right-click on the row for the job in the Job Summary tab. The Job.log file appears in a text window. This file contains information about the job such as Cadence software version number, operating system version, working directory, design path, simulator, results location, data directory, netlist directory, and whether there were any simulation errors. If there were simulation errors, you might be directed to look in the simulation output log file for more information (see “Viewing the Simulation Output Log File”). March 2015 © 1990-2015 538 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Running an Incremental Simulation The results for simulation runs in ADE XL and ADE GXL are stored in history items. Incremental simulation allows you to specify a reference history item from which you can do either or both of the following: ■ Reuse the results for subsequent simulation runs After running a simulation, you can add more corners or sweep points or modify the values of the existing ones and see the simulation results of the changed corners or sweep points. For example, you change the value of a variable, say, sLoad from 1,2,3 to 1,2,5. In such a case, you can specify the history item for the previous run as the reference history for the incremental simulation run. This allows you to save time because the results for the completed points (when sLoad=1 and sLoad=2) will be reused from the reference history and simulations will be run only for the change (from sload=3 to sload=5) in the variable value. This is also helpful when you have to correct any value of a corner or sweep point. ADE XL will re-run the simulation only for the new corner or sweep point. The results of the matched corners or points will be copied from the reference history to the new history and the undesired points will be filtered out. ■ Reuse the netlist for subsequent simulation runs For example, if your design has not changed, you can reuse the netlist in the history item for the previous run. You can also reuse the netlist if your design has changed, but you want to run incremental simulation using the netlist for the reference history for debugging that netlist across different operating conditions. For more information, see the following topics: ■ Requirements for Running Incremental Simulation ■ Running an Incremental Simulation ■ Viewing Differences Between the Active Setup and the Reference History Setup ■ Rerunning Simulation after Modifying the Netlist Requirements for Running Incremental Simulation Note the following requirements for running incremental simulation: ■ You can run incremental simulation only for the following run modes: ❑ Single Run, Sweeps and Corners March 2015 © 1990-2015 539 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ Monte Carlo Sampling ❑ Global Optimization ❑ Local Optimization For more information about run modes, see Specifying the Run Mode on page 79. ■ The results and the netlist can be reused only from a history item that meets the following requirements: ❑ At least one enabled test in the reference history has the same name as an enabled test in the active setup, and that test has not been modified in the active setup. A test is considered modified if there is any difference between the analyses (including differences in analysis settings such as change in start time, stop time, and so on), outputs, model setup, and so on for a test in the reference history and the same test in the active setup. Note: During incremental simulation, tests that are modified in the active setup will be resimulated. ❑ At least one enabled corner (including the nominal corner) in the reference history has the same name as an enabled corner in the active setup, and that corner has not been modified in the active setup. A corner is considered modified if: ❍ Anything other than the value of variables (including temperature) and parameters is different between a corner in the reference history and the same corner in the active setup. For example, a corner is considered modified if its model setup is different in the reference history and the active setup. ❍ Any variable or parameter does not have at least one value that is the same in both the reference history and the active setup. ❑ The same set of global variables and parameters exist in the reference history and the active setup. Note the following: ❍ The global variables and parameters in the active setup can have values that are different from the values in the reference history, but must have at least one value that is the same in both the reference history and the active setup. ❍ This condition is not required to be met if only the netlist is reused from a history item. March 2015 © 1990-2015 540 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ If the current run mode is Single Run, Sweeps and Corners, Local Optimization or Global Optimization, the reference history must also be for one of these run modes. For more information about run modes, see Specifying the Run Mode. For information about the name of the history item for various run modes, see Viewing Checkpoints. ❑ If the current run mode is Monte Carlo Sampling, the reference history must also be for the Monte Carlo Sampling run mode. ■ If the design has changed and the active setup includes device parameterization, incremental simulation cannot be done because the netlist must be recreated for each simulation when device parameters are present. In this case, you must revert your schematic to the version used in the earlier simulation run. Running an Incremental Simulation Note: The incremental simulation run uses the active setup. The setup in the reference history is ignored during the run. To run incremental simulation, do the following: 1. Ensure that the set up of the previous run that had errors is loaded as an active setup in the ADE XL environment. 2. Select the run mode in the Select a Run Mode drop-down list on the Run toolbar. For more information about run modes, see Specifying the Run Mode on page 79. 3. Click the Reference History Options The Reference History form appears. button on the Reference History toolbar. March 2015 © 1990-2015 541 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 4. Select the Use reference results as cache for new run check box if you want the results in the reference history to be reused for the incremental simulation run. Then do one of the following: Select Copy (retain) Move To Copy the simulation results of the reference history to the new history item that is created during the incremental simulation run. Move the simulation results of the reference history to the new history item that is created during the incremental simulation run. Note: If the simulation results are moved, you will not be able to perform post-processing operations (like plotting, printing, annotation, re-evaluation, and so on) on the history item specified as the reference history. Note: The results for completed points will be reused from the reference history only for tests that are not modified in the active setup. This is because modified tests will be resimulated during the incremental simulation run. 5. Specify the netlisting mode for the run by doing one of the following: Select New To Renetlist designs during the incremental simulation run. March 2015 © 1990-2015 542 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Use reference netlist Reuse the netlist of the reference history for the incremental simulation run. This ensures that all the simulations in the completed history use the same netlist. Select this option if: ■ Your design has not changed after the simulation run in which the reference history (you want to use for the incremental simulation run) was created. ■ Your design has changed after the simulation run in which the reference history was created, but you want to run incremental simulation using the netlist for the reference history for debugging that netlist across different operating conditions. 6. Click OK to save the changes and close the Reference History form. 7. In the Reference drop-down list on the Reference History toolbar, choose the history item you want to use as the reference history for the incremental simulation run. Note: The Reference drop-down list displays only the history items from which results and the netlist can be reused during incremental simulation runs. For more information, see Requirements for Running Incremental Simulation on page 539. 8. (Optional) Click the Show Differences button on the Reference History toolbar to view the differences between the active setup and the setup in the reference history. For more information, see Viewing Differences Between the Active Setup and the Reference History Setup on page 544. 9. On the Run toolbar, click the Run Simulation simulation run. button to start the incremental The following message box appears if Use reference netlist is set as the netlisting mode in the Reference History form. Click Yes to continue with the incremental simulation run. March 2015 © 1990-2015 543 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that the number of completed points displayed on the run status quickly reflects the number of points already run in the referenced history and for which the results are already available. Result data for those points is reused (copied or moved) from the results of the referenced history. Simulation is then continued for the remaining points that earlier showed errors or were incomplete. Viewing Differences Between the Active Setup and the Reference History Setup To view the differences between the active setup and the setup in the reference history, do the following: ➡ Click the Show Differences button on the Reference History toolbar. The differences between the active setup and the setup in the reference history are displayed in the Comparison: Active Setup v/s Reference History form. March 2015 © 1990-2015 544 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Rerunning Simulation after Modifying the Netlist After running a simulation, you might need to make some manual modifications in the netlist and re-run a simulation without regenerating a new netlist using ADE XL. In some cases, you might need to completely replace the netlist file with another one to be used to run a simulation with the existing ADE XL setup. In the scenarios described above, you can perform the following steps to modify or replace a netlist file used in the previous run and use it for the next simulation: 1. After the reference simulation run is complete, note the name of a history saved for it. For example, Interactive.3. 2. At the command prompt, traverse to the directory where the netlist was saved for that history. Note: By default, the netlist file is saved in the simulation results directory specified by the saveResDir or saveDir environment variables in the given order of preference. For example, if the name of the history item for the test ACGainBW is Interactive.14, the netlist file for this history is saved in the /simulation/ //adexl/results/data/Interactive.14/psf/ACGainBW directory. 3. Open the netlist file in a text editor and make changes as required. 4. Save and close the netlist file. Note: You can also replace the existing netlist file with another netlist for the same design. 5. In the ADE XL environment, click Reference History Options on the Reference History toolbar. The Reference History form is displayed. March 2015 © 1990-2015 545 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 6. In the Reference History form, select the Use reference netlist netlisting mode, as shown below. When the Use reference netlist mode is set, ADE XL does not generate netlist during the next simulation run. Instead, it uses the netlist file available in the results directory of the referenced history name. In this case, this is the netlist file that was edited in step 3. 7. Click OK to close the form. 8. From the Reference drop-down list on the Reference History toolbar, select the name of a reference history corresponding to the edited netlist file. 9. Run simulation. ADE XL will copy the edited netlist file from the results directory for Interactive.3 to the results directory for the new simulation run. March 2015 © 1990-2015 546 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Submitting a Point You can sweep variables and parameters by specifying values for them without actually modifying their values in the active setup and then submit the resulting points for evaluation. Submitting points for evaluation allows you to experiment with different values for global variables and parameters without modifying the active setup. You can submit points using any of the following two methods: ■ Using the Single Run, Sweeps and Corners options form In this method, you submit a point based on the values of variables and parameters in the active setup that are modified as required. For more information, see Submitting a Point Using the Single Run, Sweeps and Corners Options Form on page 547. ■ Submit points from a history item In this method, you submit a point based on the values of variables and parameters for a design point in a history item that are modified as required. For more information, see Submitting a Point From a History Item on page 551. For more information, see the following topics: ■ Submitting a Point Using the Single Run, Sweeps and Corners Options Form on page 547 ■ Submitting a Point From a History Item on page 551 ■ Viewing and Modifying the Current Point in the Submit Point Form on page 553 ■ Saving a Point in the Submit Point Form on page 555 ■ Loading a Point in the Submit Point Form on page 557 ■ Deleting a Point on page 558 Submitting a Point Using the Single Run, Sweeps and Corners Options Form To submit a point using the Single Run, Sweeps and Corners options, do the following: 1. From the Run menu, select Single Run, Sweeps and Corners. March 2015 © 1990-2015 547 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Tip Alternatively, select Single Run, Sweeps and Corners in the Select a Run Mode drop-down list on the Run toolbar, then click the Simulation Options button on the .bar. The Single Run, Sweeps and Corners form appears. 2. Select the Override Active Setup check box. 3. Click the Specify Point(s) button. March 2015 © 1990-2015 548 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The Edit Submit Point form appears. If you have not previously created a submit point, this form will be populated with the active setup values. The Submit To field in the Run section is by default set to New Run-Single Run, Sweeps and Corners. You can also submit a new point to an existing manual tuning run. For more details, refer to Manual Tuning in the Analog Design Environment XL user guide. 4. Add or modify the values as desired. You can specify your own values for the global variables and parameters, or load values from the active setup, schematic or an existing reference point. ❑ Select the Value field for any global variable or parameter and enter a value. March 2015 © 1990-2015 549 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ To load values from the active setup, schematic or an existing reference point for global variables and parameters, do one of the following: Select Active Setup Schematic Reference Point To Load values of global variables and parameters from the active setup. Load values of parameters from the schematic. Load values of parameters from an existing reference point. Note: This option will be disabled if no values exist for the parameters in the reference point. Then, do the following to load the values: ❍ To load the values for specific global variables and parameters, select the global variables and parameters for which you want to load the values, click Get Parameter Values and choose Selected Parameters. You can also select global variables and parameters, right-click and choose Get Schematic Value, Get Ref Point Value or Get Active Setup Value to load values from the active setup, schematic or an existing reference point for the selected global variables and parameters. ❍ To load the values for all the global variables and parameters that have no values, click Get Parameter Values and choose Parameters With No Value. ❍ To load the values for all global variables and parameters, click Get Parameter Values and choose All Parameters. ❑ Select one or more rows and click Clear Point to clear the values. You can also select rows, right-click and choose Clear to clear the values. 5. Click OK to save the changes and close the Edit Submit Point form. The submit point will remain the active submit point for the current session until you modify it. For more information, see Viewing and Modifying the Current Point in the Submit Point Form on page 553. March 2015 © 1990-2015 550 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important The submit point information will not be automatically saved in the active setup and hence will not be available when you restart ADE XL. You must manually save the submit point information (see Saving a Point in the Submit Point Form on page 555) if you want to load it later (see Loading a Point in the Submit Point Form on page 557). 6. Click OK to close the Single Run, Sweeps and Corners form. The text Submit Point Enabled in the Run Summary assistant pane indicates that the submit point is enabled. 7. On the Run toolbar, click the Run Simulation evaluation. button to submit the sweep for The submitted point is simulated across all the enabled tests and corners and the results are displayed in the Results tab of the Outputs pane. Information about the submitted point is stored in a new history item. Submitting a Point From a History Item To submit a point from a history item, do the following: 1. Display the results for the history item in the Results tab of the Outputs pane. For more information, see Viewing Results from a Particular Checkpoint on page 864. 2. Right-click on a design point (highlighted in gray) in the Results tab of the Outputs pane and choose Submit Point. March 2015 © 1990-2015 551 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note: You cannot submit a design point that contains statistical parameters. Hence, the Submit Point shortcut menu will be disabled if your design point contains statistical parameters (for example, statistical parameters from Sensitivity Analysis runs). Design Point The Submit Point form appears displaying the values of global variables and parameters at the design point. Note the following: March 2015 552 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ Global variables or parameters that exist in the history item but not in the active setup will be highlighted in yellow color and automatically removed from the submit point when you click OK or Apply in the Submit Point form. ❑ Global variables or parameters that exist in the active setup but not in the history item are automatically added in the Submit Point form. You must specify values for such variables and parameters. 3. If desired, modify the values as described in step 4 of Submitting a Point. 4. Click OK to submit the point for evaluation. The submitted point is simulated across all the enabled tests and corners and the results are displayed in the Results tab of the Outputs pane. Information about the submitted point is stored in a new history item. Viewing and Modifying the Current Point in the Submit Point Form The current point is the last one created or modified during the current session. You can view and modify this point. To view and modify the current point, do the following: 1. From the Run menu, select Single Run, Sweeps and Corners. Tip Alternatively, select Single Run, Sweeps and Corners in the Select a Run Mode drop-down list on the Run toolbar, then click the Simulation Options button on the Run toolbar. The Single Run, Sweeps and Corners form appears. 2. Click the Specify Point(s) button. March 2015 553 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The Edit Submit Point form appears displaying the values for the current point. Important Global variables or parameters that exist in the point but not in the active setup are highlighted in yellow color and you will be prompted to enable or add them in the design space. If you click the OK button without enabling or adding them in the design space, they will be automatically removed from the point. 3. If desired, modify the values as described in step 4 of Submitting a Point. 4. Click OK to save the changes and close the Edit Submit Point form. March 2015 © 1990-2015 554 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important The point information will not be automatically saved in the active setup and hence will not be available when you restart ADE XL. You must manually save the point information (see Saving a Point in the Submit Point Form on page 555) if you want to load it later (see Loading a Point in the Submit Point Form on page 557). 5. Click OK to close the Single Run, Sweeps and Corners form. Saving a Point in the Submit Point Form By default, the point information in the Submit Point form is not saved automatically in the active setup. Therefore, the point information in the current ADE XL session is not available when you restart ADE XL. You can save the point information to a setup state if you want to load it in a new ADE XL session. Tip You can also save different combinations of variable and parameter values to setup states and load them later. To save a point, do the following in the Edit Submit Point form: March 2015 © 1990-2015 555 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 1. In the Setup State field, type a name for the point. 2. Click . The saved point is displayed in the Setup States tree on the Data View pane. March 2015 © 1990-2015 Saved submit point displayed in Setup States tree 556 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Loading a Point in the Submit Point Form You can load a point in the Edit Submit Point form or in the Setup States tree in the Data View pane. To load a point in the Edit Submit Point form, do the following: ➡ Select the point from the Setup State drop-down list and click . To load a point in the Setup States tree in the Data View pane, do the following: 1. Right-click the point and choose Load. The Load Setup State form appears. 2. Select the point you want to load and click OK. March 2015 557 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations For more information about the Load Setup State form, see Loading a Setup State on page 835. Deleting a Point To delete a saved point, do the following: 1. In the Setup States tree in the Data View pane, right-click the point and choose Delete. The Remove Setup State form appears. 2. Select the point you want to delete and click OK. For more information about the Remove Setup State form, see Deleting a Setup State on page 838. March 2015 © 1990-2015 558 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Simulating Only Error or Incomplete Points If a history item includes points that are incomplete or that show errors, it could be because the simulation run was stopped before completion, or some simulations failed due to issues like license check failures, an unavailable model file, system issues on a remote host used for distributed simulation etc. For such history items, you can run incremental simulations to simulate only the incomplete or error points in the history item. This helps in saving time because the results for the completed points will be reused from the previous history item and the simulations will not run again for those points. ADE XL provides two ways in which you can run only those points that had errors or that were incomplete in the previous run: ■ By using the Re-run Unfinished/Error Points Command ■ By setting reference to the simulation results of a previous run Method 1: Running Error or Incomplete Points By Using the Re-run Unfinished/Error Points Command Note: This method is useful in scenarios when the design has not changed and you want to use the previous simulation setup while completing the unfinished points. If the design has changed, a new netlist will be generated, which may be different from the one used in the original run with unfinished points. To simulate only the incomplete or error points in a history item, do the following: 1. Ensure that the History tab of the Data View assistant pane is open. March 2015 © 1990-2015 559 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 2. Right-click on the desired history item that contains error points and choose Re-run Unfinished/Error Points. When you use this command, ADE XL ignores any changes in the active setup after the last run and re-runs simulations for all the error or unfinished points in the selected history run. All the consolidated results are saved in a new history named history_name.rerun.seqNum, where seqNum starts from 0 and increases incrementally in the subsequent simulation runs. Note the following: ■ The simulation run uses the setup of the history item on which you ran Re-run Unfinished/Error Points. So any changes you make in the active setup will be ignored during the run. March 2015 © 1990-2015 560 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ When you run Re-run Unfinished/Error Points on a history item, the simulation results of that history item are moved to the new history item. As a result, you will not be able to perform postprocessing operations (like plotting, printing, annotation, re-evaluation, and so on) on the history item on which you ran Re-run Unfinished/Error Points. You can use the retainReferenceSimResults environment variable to retain the simulation results of the history item on which you ran Re-run Unfinished/Error Points. For more information about this environment variable, see retainReferenceSimResults. ■ You cannot run Re-run Unfinished/Error Points on child history items. For more information about child history items, see Viewing Checkpoints. Method 2: Running Error or Incomplete Points By Referencing the Simulation Results of a Previous Run Note: This method is useful when the design has changed, but you want to reuse the previous netlist and simulation setup while completing the unfinished points. In this method, you can reference the netlist and the existing simulation results of a previous run. For details on the pre-requisites of this method and steps to run an incremental simulation, refer to Running an Incremental Simulation. Troubleshooting a Design or Data Point When you troubleshoot a design point or data point, ADE XL submits the point for evaluation, then saves out the files necessary for you to produce results in your simulator. These files are specific to each simulator, but generally include the following that can be used to troubleshoot problems in points: ■ your current environment settings ■ logs of commands run by the simulation nodes ■ a log of interactions with the simulator ■ the changelist sent to the simulator ■ the netlist that ADE XL will simulate ■ the simulation results To troubleshoot points, do one of the following on the Results tab of the Outputs pane: ■ To troubleshoot an entire design point (across all corners), right-click on the design point and choose Troubleshoot Point. March 2015 © 1990-2015 561 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The following figure shows an example of design point M2.m=3 being selected. Design point ■ To troubleshoot a data point at a corner, right-click on the result for the data point at the corner and choose Troubleshoot Point. March 2015 © 1990-2015 562 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The following figure shows an example of the result for the nominal corner of data point 2 being selected. Data point 2 Result for the nominal corner of data point 2 ■ To troubleshoot a data point at more than one corner, hold down the Ctrl key, click on the results for the data point at the corners, then right-click and choose Troubleshoot Point. March 2015 © 1990-2015 563 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The following figure shows an example of the results for the nominal corner and corners C0 and C3 of data point 2 being selected. Tip To troubleshoot a point from the results of a history item, display the results for the history item in the Results tab of the Outputs pane (see Viewing Results from a Particular Checkpoint on page 864), right-click on the point in the Results tab and choose Troubleshoot Point. ADE XL submits the point for evaluation, then saves all the information for that point to a history item named history_name.TS.seqNum, where seqNum is 0 (zero) for the first item, then 1+(the largest existing seqNum for that history_name). For example, if you run troubleshoot point on a history item named interactive.9, the new history item will be named interactive.9.TS.0. March 2015 © 1990-2015 564 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations The results directory for the new history item will have subdirectories for each corner that contain the following data for troubleshooting the point: Directory Name netlist psf troubleshoot Contents Netlist and related files. Simulation results. ■ Job.log file. For more information about this file, see Viewing the Job Log on page 530. ■ changelist file that contains the list of changes in values of global variables, parameters and corners that are passed to the simulator. ■ environ file that contains the current environment settings on the remote node. ■ evalshell file that can be used to start a shell using the environ file. ■ ocean.il file that contains the OCEAN commands that can be used to troubleshoot expression evaluation errors. Note: When you run troubleshoot points, ADE XL ignores the settings in the Save Settings form (see Specifying Options for Saving Simulation Results on page 81). To view information regarding the design or data point for which you ran troubleshoot point, do the following: 1. On the History tab of the Data View assistant pane, click + to expand the history item for the troubleshoot point. The history details appear in the expanded branch. 2. Click + next to Troubleshoot Info branch. The information regarding the design or data point for which you ran troubleshoot point is displayed. For example, the Troubleshoot Info branch in the following figure indicates March 2015 © 1990-2015 565 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations that you ran troubleshoot point on the second design point of the history item named Interactive.24. March 2015 © 1990-2015 566 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Debugging Points After you run simulations in ADE XL, if any particular data point fails or shows undesired results, you can selectively change the setup of that data point and debug it. For this, you can use the ADE XL Debug Environment. The ADE XL Debug Environment is a Virtuoso Analog Design Environment L (ADE L) based debug environment where you can load the setup of a data point you want to debug. The entire setup for the data point selected in ADE XL including the test, variables, and analyses details, corners, outputs, simulation settings, and job policy gets loaded. You can modify the settings for debugging purpose and perform all the tasks that you can perform in ADE L, such as running simulations and plotting results, except the following tasks: ■ Saving and loading states ■ Changing the simulator or simulation run mode ■ Changing the switch view list ■ Running parametric analysis Note: Simulations that run from the debug environment do not use ICRP. They are same as ADE L simulations. After debugging the data point, you can bring back the corrected simulation setup to the ADE XL view. You can then run the simulation by using the updated setup in the ADE XL view. Video You can view a video demonstration for this feature at Debugging Points of Simulation Results in ADE XL. To debug a data point by using the debug environment, do the following: 1. On the Results tab, right-click the data point and choose Open Debug Environment. The ADE XL Debug Environment window appears displaying the setup for the data point. For example, the following figure displays the setup for corner C0_2 of test myTest at data point 3 in history item Interactive.1. March 2015 © 1990-2015 567 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Figure 13-3 ADE XL Debug Environment Temperature at corner C0_2 Analyses run for selected point Title bar displays test, history item, corner and design point names for selected point Value of variables at selected point Value of outputs at selected point Note the following: ❑ The ADE XL Debug Environment window title bar displays the test name, history item name, corner name and design point ID for the selected point. For example, the title bar in Figure 13-3 on page 568 displays the point information as: myTest, Interactive.1, Corner-C0_2, Design Point-3 Where, myTest is the test name, Interactive.1 is the history item name, C0_2 is the corner name and 3 is the design point number for the selected point. March 2015 © 1990-2015 568 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ The Design Variables pane displays the value of the design variables at the selected data point. The Type column indicates the type of the variables, as described below: Type Test Sweep Scalar Constraint Corner Description Design variable from test Global variable or device parameter with sweep (multiple) values Global variable or device parameter with single value Matched or ratioed device parameter Note: You can modify only the value of the master parameter. Values of the matched and ratioed device parameters will change accordingly. Design variables and parameters specified for the corner Note: The value of the Temperature variable specified for the corner is displayed on the toolbar, as shown below: Temperature at corner C0_2 ❑ The default project directory for the data point is the /results/data/ historyName/pointID/testName/debug directory of the ADE XL view. Note: You can choose Setup – Simulator/Directory/Host to modify the project directory path. March 2015 © 1990-2015 569 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ You can see the path of the results directory for the data point in the ADE Result Directory toolbar. By default, this toolbar is hidden. You can right-click on any toolbar and choose ADE Result Directory to make it visible. Path to the results directory XTerm Click XTerm to open the terminal window from where you can access the the netlist or psf directories for the data point. ❑ The relevant job policy settings set up in the ADE XL environment are copied to the debug environment. For example, if job policy is set in the ADE XL environment as shown below: March 2015 © 1990-2015 570 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that in the form shown above, settings are done for distributed processing by using the LBS method. Relevant settings for distributed processing are copied from this form to the Analog Distributed Processing option Job Submit form in the debug environment, as shown below: March 2015 © 1990-2015 571 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ You cannot use the debug environment to debug results from OCEAN-based tests. For more information about OCEAN-based tests, see Working with OCEAN-Based Tests on page 136. ❑ Any existing .cdsinit variables set by the user (for example, the variables to set the simulation directory or the host run mode) are applicable to the debug environment. March 2015 © 1990-2015 572 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 2. Modify the setup for the data point as required and run simulations to debug the data point. 3. (Optional) Choose Session – Setup Back To ADEXL and click Yes in the message box that appears to bring the corrected setup back to the ADE XL view. If you click Yes, ADE XL overwrites the active setup with the setup information in the history item for which you debugged the data point. For example, if you debug a data point in a history item named Interactive.2, ADE XL overwrites the active setup with the setup information in Interactive.2. Then, the changes in the debug environment setup are merged with the active setup as described below: ❑ Changes in design variables, analyses and outputs for a test in the debug environment are merged with the setup for that test in the ADE XL view. ❑ Changes in scalar variables (global variables or device parameters with single value) in the debug environment overwrite the value of the corresponding global variables and device parameters in the ADE XL view. ❑ Changes in sweep variables (global variables or device parameters with sweep values) in the debug environment are appended to the sweep range for the corresponding global variables and design parameters in the ADE XL view. ❑ Changes in corner values in the debug environment result in a new corner being created in the ADE XL view. The new corner is enabled only for the test for which you debugged the data point. For example, if you choose Session – Setup Back To ADEXL after making the following changes in the debug environment, as shown in the figure: ❑ Modified the value of the scalar variable M6_fingers from 1 to 3 ❑ Modified the value of the sweep variable M8_M6_fingers_ratio from 3 to 4 March 2015 © 1990-2015 573 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ Modified the value of the Temperature variable for the corner from 125 to 120 The changes are merged into the active setup as described below: March 2015 © 1990-2015 574 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ The value of the scalar global variable M6_fingers changes to 3. ❑ The value 4 specified for the sweep global variable M8_M6_fingers_ratio is included in the sweep range for the variable. March 2015 © 1990-2015 575 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ❑ A new corner named C0_2_3_0 which is enabled for test myTest for which you debugged the data point is created because of the change in the value of the Temperature variable for corner C0_2 from 125 to 120 in the debug environment. 4. (Optional) Run the simulation with the modified setup. Important Point to Note It is important to note the following point while working in the debug environment: ■ If you try to open a debug environment for a point while this environment is already open for another point, the set up of the previous point is replaced with the new point. However, if a simulation is already running for the previous point, the following confirmation message is displayed. March 2015 © 1990-2015 576 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Click No to continue with the simulation already running. Click Yes to stop the simulation that is already running. The simulation running from the debug environment is stopped and the partial simulation results are plotted. In addition, the setup details of the new debug point overwrite the setup of the previous data point. March 2015 © 1990-2015 577 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Creating and Running an OCEAN Script You can create and run an OCEAN script to run one or more tests over zero or more corner conditions. When you save an OCEAN script, the program saves setup information for all your tests, sweeps, corner conditions and Monte Carlo analyses. For more details, refer to the following sections: ■ Creating an OCEAN Script ■ Modifying an OCEAN Script ■ Running an OCEAN Script ■ Running Parallel OCEAN XL Simulation Runs for an ADE XL View ■ Viewing Results of Simulations Run using OCEAN Scripts Creating an OCEAN Script You can create an OCEAN script in any of the following two ways: ➡ Saving the ADE XL Setup to an OCEAN Script ➡ Scripting an OCEAN Script ➡ Creating OCEAN Scripts with Netlist Specified as a Design Saving the ADE XL Setup to an OCEAN Script You can create a simulation setup in ADE XL user interface and save it as an OCEAN script. For this, after the simulation setup is complete, do the following: 1. In the main session window, choose File – Save Script. The Save OCEAN Script form appears. 2. In the File Name field, type a name and location for your OCEAN script file. March 2015 © 1990-2015 578 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note: The default name and location is ./oceanScript.ocn. 3. Click OK. The program saves simulation setup and conditions to the specified OCEAN script file. Note: The setup information for non-ADE XL tests will not be saved in the OCEAN script. Scripting an OCEAN Script You can use a text editor to create an OCEAN script by using OCEAN commands and save it in a .ocn file. Creating OCEAN Scripts with Netlist Specified as a Design If you have an already generated netlist of a design, you can provide the path to that netlist file to the design OCEAN command. By doing this, you can run a simulation without loading/ requiring the complete design hierarchy. Later, you can view the simulation results in ADE XL user interface. For more details, refer to Viewing Results of Simulations Run using OCEAN Scripts. Modifying an OCEAN Script If you run an OCEAN script from an ADE XL interface, if required, you can load its setup in ADE XL user interface and modify it after the run. To modify the OCEAN setup, do the following: 1. In the History tab of the Data View assistant pane, right-click on the history item for the OCEAN run and choose Load Setup to Active. Caution Load Setup to Active will overwrite the current setup with the setup in the history item for the OCEAN run. 2. Modify the setup as required. You can modify the setup using the ADE XL user interface (such as adding or modifying global variables or corners using the Data View assistant pane), or use the OCEAN Test Editor form to modify the setup. To use the OCEAN Test Editor form, do the following: March 2015 © 1990-2015 579 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations a. Right-click on a test name on the Tests tree in the Data tab of Data View assistant pane and choose Open Test Editor. The OCEAN Test Editor form appears. The OCEAN Test Editor form is a text editor that displays the OCEAN commands saved in a script. b. Change the simulation setup by modifying the OCEAN commands in the OCEAN Test Editor form. c. Click OK to save the changes in the setup. March 2015 © 1990-2015 580 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Important When you modify the setup in the history item for the OCEAN run in ADE XL, the original OCEAN script that you used to run the simulation from a UNIX shell will not be modified. Choose File – Save Script if you want to save the changes in the setup to a new OCEAN script file. Running an OCEAN Script To run simulations using OCEAN scripts, perform any one of the following steps: ➡ In CIW, run the following command: load("") ➡ In ADE XL user interface, load the set up from history of a previous OCEAN run and click Run Simulation on the Run toolbar to start the simulation. ➡ In a UNIX shell, type the following commands: ocean load("") For information about running an OCEAN script from a UNIX shell, see the OCEAN Reference. When you run a simulation using an OCEAN script, a history item named Ocean.n is created for the run. You can then start ADE XL, and use the ADE XL user interface to view the results for the OCEAN run. Important You must not load and run your OCEAN script in the Command Interpreter Window (CIW) while ADE XL is still running for the same cellview. When you run the script, the program reports the following information: ■ Sweep parameters and their values ■ Number of tests, sweep points, and corners ■ Points completed and job status information ■ Results location to the output area of the CIW For example: March 2015 © 1990-2015 581 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 1/1 completed. *Info* The result of this OCEAN XL run are saved in "Interactive.3" in library "rfExamples", cell "ne600", view "adexl". The results location corresponds to the lib/cell/view specified in the ocnxlTargetCellView call, such as ocnxlTargetCellView( "rfExamples" "ne600" "adexl") See “OCEAN Commands in XL Mode” in the OCEAN Reference for information about OCEAN script commands for ADE XL. Tip You can run an OCEAN script using LSF, for example, by submitting the job remotely using the bsub command (for the LSF example) as follows: bsub ocean -nograph OCEANscriptFileName See also Specifying a Job Submit Command for additional information. Also see: includeSimLogInJobLog, an environment that can be used to control the inclusion of the simulator output log in the OCEAN job log. Running Parallel OCEAN XL Simulation Runs for an ADE XL View In OCEAN XL, you can simultaneously run multiple simulation runs for an ADE XL view. You can do this by executing multiple ocnxlRun functions in parallel from the same OCEAN XL script. The results of all the runs are saved in the results database of that ADE XL view. This section describes how to prepare setup and run parallel simulation runs in OCEAN XL. Preparing Setup for Parallel Simulation Runs You can enable the parallel run option for your OCEAN XL scripts in any of the following ways: ■ To enable the parallel run, before saving an OCEAN XL script from an ADE XL view, select the Parallel option in the Run Options form. See also: ❑ Saving State Information ❑ Setting Up Run Options ■ Use the ocnxlSetRunDistributeOptions command in the OCEAN XL script to set the parallel run option. March 2015 © 1990-2015 582 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Running Parallel Simulation Runs In your OCEAN script, ensure that the waitUntilDone argument of the ocnxlRun function is set to nil. For example, if you have saved an ADE XL state, Ac_State1, and want to run a simulation for it parallel to other runs in your OCEAN XL script, use the following commands: ocnxlLoadSetupState( "AC_State1" 'retain ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?specs t ?corners t ?extensions t ?modelGroups nil ?relxanalysis nil ) runid1 = ocnxlRun(?waitUntilDone nil) ocnxlLoadSetupState( "Tran_State2" 'retain ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?specs t ?corners t ?extensions t ?modelGroups nil ?relxanalysis nil ) runid2 = ocnxlRun(?waitUntilDone nil) When the waitUntilDone argument is set to nil, OCEAN XL does not wait for the run to complete. Instead, while the run is in progress, it executes the next line in the script. In the example given above, OCEAN XL loads another state, Tran_State2, and starts a simulation for that without waiting for the first simulation run to finish. Note: You need to set the waitUntilDone argument for each OCEAN XL run that you want to run in parallel. By default, this argument is set to t. When you set the waitUntilDone argument to nil, the ocnxlRun function also returns a run ID for each run. You can use this run ID later to either wait for that run to complete at a later stage or to access the history results of that run. For example, before printing results, if you want to wait for a particular OCEAN XL run to complete simulations, you can use the following statement in your script: (ocnxlWaitUntilDone rinid2) (ocnxlOutputSummary ?forRun runid1 ?detailed nil) ; The previous command displays run summary for the simulation run with run ID as runid1 After a run is complete, you can get access to its results by using its run ID, as shown in the following statement: h1 = ocnxlGetHistory(runid1) You can use this handle to get results for the given OCEAN XL run. For details on the related OCEAN XL functions and their examples, refer to the following sections in the OCEAN Reference Guide: ■ ocnxlRun March 2015 © 1990-2015 583 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations ■ ocnxlOutputSummary ■ ocnxlWaitUntilDone ■ ocnxlGetHistory ■ ocnxlSetRunDistributeOptions ■ ocnxlGetRunDistributeOptions Viewing Results of Simulations Run using OCEAN Scripts The results of simulations run from OCEAN scripts are saved in the results database of the ADE XL view. While the OCEAN XL simulations are in progress or after they are complete, you can view these results in the ADE XL user interface. To view the results for an OCEAN simulation run in the ADE XL user interface, do the following: ➡ In the History tab of the Data View assistant pane, right-click on the history item for the OCEAN run and choose View Results. Note: While the simulations are in progress, you need to close and reopen the results to view the updated data. Important When you view the results of simulations performed by specifying netlist as design, you cannot use the schematic-based post processing options. For example, you cannot use the VT calculator function to select a net on schematic or you cannot use the direct plotting feature. Therefore, when you right-click on data in the Results tab, some of the commands that require use of the schematic view are not enabled. March 2015 © 1990-2015 584 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Simulating Designs with Layout-Dependent Effects (LDEs) Important Ensure that the following prerequisites are met before you run simulations with Layout-Dependent Effects (LDEs): ❑ The Virtuoso_Variation_Analysis_Op license is available for use. For more details, see the Virtuoso Software Licensing and Configuration Guide. ❑ Verify that the path to the Cadence Physical Verification System (PVS) installation is correct. The LDE re-simulation flow works with 10.1 or higher versions of PVS. ❑ Specify the path to the PVS-LVS rule file and layer map file by using the lvsRulesFile and layerMapFile environment variables, respectively. These files are required when performing LVS checks. At advanced nodes, cells are placed very close together and such proximity can lead to various interconnect and layout-dependent effects. These LDEs, such as Shallow Trench Isolation (STI) and Well Proximity Effect (WPE), have substantial impact (in some cases, upto 30 percent difference) on the performance of a circuit. Therefore, it becomes very important to take into account these LDEs while simulating a design to measure the performance of a circuit accurately. In the previous design flows, circuit designers used to take only an LVS-clean design to analyze the impact of layout decisions on the circuit performance, as described in the flow shown below. March 2015 © 1990-2015 585 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations In advanced node designs, LDEs can have high impact on the circuit performance. Therefore, it is important to take them into account quite early in the design cycle, that is, while simulating a design before the completion or verification of the layout. This helps in avoiding too many design iterations because you can correct a design before finalizing the layout. In the LDE re-simulation flow, you can use a partial or a full layout and extract more accurate LDE parameter values from it to be used in ADE XL simulations. This helps in simulating a circuit with a better model of the physical implementation. ADE XL provides options to include extracted LDE parameter values in a simulation run. The LDE re-simulation flow is shown in the figure given below. March 2015 © 1990-2015 586 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations As depicted in the figure shown above, you can include LDE parameter values in ADE XL simulations in the following two ways: ■ By including LDEs extracted from the Modgen constraint definitions extracted from the schematic ■ By including LDEs extracted from a partial or a full layout Simulating Designs with LDEs Extracted from Modgen Constraints If a layout view is not available for your design, you can use design constraints to create optimized Modgen constraint definitions. Then, you can extract LDE parameter values from these Modgen constraint definitions and include them in the simulation netlist to analyze their effect on simulation results. March 2015 © 1990-2015 587 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations To create Modgen constraint definitions and to use extracted LDE parameter values from these Modgen definitions in simulations, perform the steps given below: 1. Create a simulation setup in an adexl view. For more details, refer to Specifying Tests and Analyses. 2. Run a simulation. Note: You have run a simulation without considering any parasitics or layout effects. 3. Open the design schematic in Virtuoso Schematic Editor XL. 4. Change the workspace to Constraint-Helper. The Circuit Prospector and Constraint Manager assistants are displayed. 5. Ensure that in the Circuit Prospector assistant, Rapid Analog Prototype, is selected from the Category drop-down list. March 2015 © 1990-2015 588 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Rapid Analog Prototype is a new category in Circuit Prospector. This category contains many of the more common mixed-signal circuit finders and constraint generators required to constrain a design automatically. The resulting constraints can be used to create good initial layouts and routes from which layout effects (interconnect parasitic and LDEs) can be extracted and taken into account during simulation. However, note that this flow does not extract interconnect parasitics. For more details on this category, refer to The Circuit Prospector Assistant in Virtuoso Unified Custom Constraints User Guide. 6. From the Search for drop-down list, select ALL. All the structures defined in this category are found in the schematic, if they exist. 7. Click Run all respective actions for the Current Cellview on the Constraints menu. March 2015 © 1990-2015 589 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 8. The tool runs the default constraint generator for all the structures identified by the Rapid Analog Prototype filter. All the constraints are populated in the Constraint Manager assistant, as shown below. Note: For more details on how the constraints are generated, refer to RAP Flow in Virtuoso Unified Custom Constraints User Guide. March 2015 © 1990-2015 590 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 9. (Optional) If required, you can open a Modgen constraint in the Modgen Editing tool and make changes in the prototype layout, for example, you can change the abutment for modules or add a guard ring or dummy cells. For more details, refer to Working with Module Generators in Virtuoso Analog Placer User Guide. 10. Open the same adexl view that you used in step 1. 11. In the Analog Design Environment XL window, choose Parasitics/LDE – Setup. The Setup Parasitics & LDE Setup form is displayed. 12. Open the Layout tab and specify a netlist view name in the Netlist view name field. 13. In the LDE section, select the MODGEN Constraints option, as shown below. March 2015 © 1990-2015 591 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 14. (Optional) On the General tab, specify the names of CDF parameters that define mfactors for devices in the Device M Factor Parameter Names field. For details on how to define CDF parameters, refer to Component Description Format User Guide. 15. (Optional) In the Device Finger Parameter Names field, specify the names of CDF parameters that define fingers for devices. 16. Click Apply. If the parasitic mode on the Parasitic Mode toolbar is not set to Layout(LDE/ Parasitics), ADE XL prompts you to confirm if the mode is to be changed. The tool also prompts you to build the estimated (netlist_layout) view with LDE parameters. You can choose to build the view estimated view now or from the Parasitic Mode toolbar after closing the form. 17. Click OK. March 2015 © 1990-2015 592 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 18. Ensure that the Sweeps drop-down list on the Parasitic Mode toolbar is set to Devices Only to sweep only devices. 19. Click Build Parasitic/LDE View on the Parasitic Mode toolbar. The Build Parasitic/LDE View form is displayed, as shown below. 20. (Optional) Specify a name for the parasitic/LDE view. Note: netlist_layout is the default name for the parasitic/LDE view. 21. Click OK to close the Build Parasitic/LDE View form. ADE XL runs PVS-LVS, which reads the Modgen constraints and extracts the values for LDE parameters to create a new netlist. It further creates a parasitic/LDE view. While the parasitic/LDE view is being built, the ADE XL status bar shows the progress. After completion, the tool shows a message with the number of devices defined in the Modgen constraints. A message is also displayed in the CIW. March 2015 © 1990-2015 593 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note: Ensure that the paths to the PVS-LVS rule file and layer map file are specified by using the lvsRulesFile and layerMapFile environment variables. PVS refers to these files while performing the LVS check. 22. Click Run to re-simulate the ADE XL testcase. 23. Compare the simulation results of this run with the history of the previous run and identify the effect of LDEs on circuit performance. If the circuit performance has deteriorated or needs improvement, you can choose to modify the constraints by using the Schematic Editor, or change the layout by using Modgen Editor, regenerate the LDE parameter estimated view and run simulations again to measure the results. Note: When simulating designs with LDEs, Virtuoso runs PVS-LVS to read the Modgen constraints and to extract the values of LDE parameters. The Virtuoso IPVS log file is saved in the /tmp/_pvs_* directory and is automatically deleted when you exit the Virtuoso session. However, for debugging purposes, you can preserve the Virtuoso IPVS log file. For this, set the Virtuoso_IPVS_log environment variable before starting Virtuoso. For more details, refer to Debugging Problems in Virtuoso IPVS in the Virtuoso IPVS User Guide. For more details on the Setup Parasitics and LDE form options, refer to Setting Up and Using Parasitics in Parasitics Aware User Guide. Simulating Designs with LDEs Extracted from a Partial or Full Layout ADE XL simulation with LDE parameters can also be done by using the partial layout capture, which would not be a LVS clean layout, or a full LVS clean layout. Note: A layout, partial or full, is created by using the connectivity-driven layout flow of Virtuoso Layout Suite XL. To simulate a design by using the LDEs extracted from a layout view, perform the following steps: March 2015 © 1990-2015 594 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 1. In the Analog Design Environment XL window, choose Parasitics/LDE – Setup. The Setup Parasitics & LDE Setup form is displayed. 2. On the Layout tab, specify a name for the netlist view in the Netlist View Name field. 3. In the LDE section, select Layout View. 4. Select the library, cell, and view name for the layout view that contains LDE parameters, as shown below. Note: The Expand devices with M-factor check box is disabled when you select the option to include LDE parameters from a layout view. This is because in this mode, the tool always considers the m-factor parameters from the layout view to expand the devices in the netlist_layout view. 5. Select an appropriate option for the Update LDE Parameters using field. Note: The default option is PVS. However, if you want to run LEA(LDE), ), you need to set the environment variable as shown below in the terminal window before running Virtuoso. March 2015 © 1990-2015 595 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations setenv CDS_LEA_EXTRACTION 1 This feature is only supported by the advanced process nodes with LDE Process Design Kits (PDKs). Contact your PDK provider or Cadence Customer Support to determine whether the PVS or LEA flow is supported for LDE analysis in Virtuoso. 6. (Optional) In the Device M Factor Parameter Names field on the General tab, specify the names of CDF parameters that define m-factors for devices. For details on how to define CDF parameters, refer to Component Description Format User Guide. 7. (Optional) In the Device Finger Parameter Names field on the General tab, specify the names of CDF parameters that define fingers for devices. 8. By default, the dummy cells backannotated from layout to the schematic view are ignored while generating netlist for simulation. To include the dummy cells in the netlist, clear the Ignore Dummies Back-Annotated to Schematic check box. 9. Click Apply to apply and save the changes. The following message is displayed. 10. Click Yes to confirm. This will switch run mode on Parasitic Mode toolbar from No Parasitics/LDE to Layout (Parasitics/LDE). This extracts the LDE parameters using PVS or LEA from the layout. ADE XL will then generate a new netlist for simulation with LDE parameters extracted from the layout. 11. Click Build Parasitic/LDE View on the Parasitic Mode toolbar. The Build Parasitic/LDE View form is displayed, as shown below. March 2015 © 1990-2015 596 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations 12. (Optional) Specify a name for the parasitic/LDE view. By default, it shows the value specified in the Setup Parasitics & LDE form. 13. Click OK to close the Build Parasitic/LDE View form. 14. Click Run on the Run toolbar to re-simulate the adexl view and compare the results. Note: If the simulation fails with LDE effects, you may then fix the LDE hotspots in the layout and rerun the simulations in ADE-XL with the fixed layout view and compare the results. Important Points to Note ❑ You can run the Local Optimization or Global Optimization run modes to identify the best design points that meet the desired specifications. The optimization flow will consider all the device parameters defined in the schematic, except those that define the m-factor for devices. For more details, refer to Optimizing an Extracted or Layout View in the Virtuoso Parasitic Aware Design Flow User Guide. ❑ If the simulation results need improvement, you can change the LDE parameters and rerun the simulation in ADE XL to evaluate the performance change. March 2015 © 1990-2015 597 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Additional Information If you compare the netlists created before and after extracting the LDE parameters, you can observe that the new netlist created with the updated LDE parameter Parasitic/LDE view contains different values for these parameters as compared to the netlist created without parasitics. The figure given below shows the netlist created without parasitic effects. The figure given below shows the netlist created with extracted LDE parameters. March 2015 © 1990-2015 598 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations Note that for device PM5, the values of LDE parameters, such as sa, sb, sca, and scb are different. In addition, for the devices with m-factor in the layout view, multiple instances have been created. For example, multiple instances have been created for PM5 in the netlist shown above. Tip You can run Litho/LDE Analysis from Virtuoso Layout Suite XL to view violations and to debug the layout. For more details, refer to Litho/LDE Analysis in the Virtuoso Layout XL User Guide. March 2015 © 1990-2015 599 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Running Simulations March 2015 © 1990-2015 600 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 14 Viewing, Plotting, and Printing Results You can view simulation results on the Results tab of the Outputs pane in the ADE XL environment. Results appear on a new tab in the Results tab of the Outputs pane after you run a successful simulation, or view or restore results from a previous checkpoint on the History tab of the Data View assistant pane. For more information about working with tabs, see Working with Tabs for Simulation Checkpoints on page 603. For more information about how results are displayed in the Results tab, see Viewing Specification Results in the Results Tab on page 783. March 2015 © 1990-2015 601 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results By default, all columns and types of information appear on the Results tab. You can show and hide various columns and types of information using the button. Corners conditions appear in a table along the top portion of the tab. You can switch the view using the Select the results view drop-down list. You can export results to HTML or a comma-separated values file. See the following topics for more information: ■ Working with Tabs for Simulation Checkpoints on page 603 ■ Specifying Default Formatting Options on page 605 ■ Hiding and Showing Data on the Results Tab on page 606 ■ Hiding and Showing Results for Tests on page 612 ■ Showing Variables for a Design Point on page 612 ■ About Results Views on page 614 ■ Selecting the Plot Mode on page 627 ■ Setting Default Plotting Options for All Tests on page 629 ■ Setting Plotting Options for Specific Tests on page 662 ■ Plotting Results on page 666 ■ Using Direct Plot on page 674 ■ Printing Results on page 676 ■ Re-evaluating Expressions and Specifications on page 692 ■ Saving and Restoring the Waveform Window Setup on page 693 ■ Searching for Conditional Results on page 695 ■ Comparing Results on page 701 ■ Saving Results on page 723 ■ Working in the Results Display Window on page 724 ■ Exporting Results to a HTML or CSV File on page 733 ■ Using SKILL to Display Tabular Data on page 734 ■ Annotating Simulation Results on page 735 ■ Viewing Results from the Data View Pane on page 741 March 2015 © 1990-2015 602 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results See also “Results Tab Right-Click Menus” on page 742. Working with Tabs for Simulation Checkpoints When you run a simulation, or view or restore results from a previous checkpoint on the History tab of the Data View assistant pane, the simulation results appear on a new tab in the Results tab of the Outputs pane. The name of the tab matches the name of the checkpoint for the simulation run. If you view or restore results from a previous checkpoint, the name of the tab matches the name of that checkpoint. For example, in the following figure, the Interactive.4 tab displays the results for the Interactive.4 checkpoint. To view the results for the Interactive.3 checkpoint, click the Interactive.3 tab. Results tab for Results tab for Interactive.3 Interactive.4 checkpoint checkpoint March 2015 603 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The icons that are displayed in the tab name when you run a simulation are described below: Icon Description Simulation run for Interactive.16 checkpoint is started. Simulation run for Interactive.16 checkpoint is in progress. The progress of the simulation run is displayed in the form of a pie chart. Simulation run for Interactive.16 checkpoint is complete. To close the currently active tab, do the following: ➡ Click the icon on the bottom right of the Results tab. To close a specific tab, do the following: ➤ Right-click on the tab name and choose Close Tab. To close all tabs other than the current one, do the following: ➤ Right-click on the tab name and choose Close Other Tabs. To close all tabs, do the following: ➤ Right-click on the tab name and choose Close All Tabs. March 2015 © 1990-2015 604 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying Default Formatting Options To specify the default number of significant digits and notation style for the measured results displayed in the Results tab of the Outputs pane, do the following: 1. Choose Options – Outputs Formatting. The Default Formatting Options form appears. 2. Specify the number of significant digits in the Significant Digits field. The default value is 4. Valid values are 2 to 15. 3. Select the notation style in the Notation Style drop-down list. Select suffix engineering scientific To Display the results in the suffix notation. For example, 5.802m is displayed as 5.802m when number of significant digits is 4. This is the default value. Display the results in the engineering notation. For example, 5.802m is displayed as 5.802e-3 when number of significant digits is 4. Display the results in the scientific notation. For example, 5.802m is displayed as 5.802e-03 when number of significant digits is 4. Tip You can use the Units, Digits, Notation and Suffix columns in the Outputs Setup tab of the Outputs pane to override the default number of significant digits and notation style for displaying the results for individual output expressions. For more information, see Adding an Output Expression on page 404. March 2015 © 1990-2015 605 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Hiding and Showing Data on the Results Tab The following data appears on the Results tab of the Outputs pane for the Detail view. See “About Results Views” on page 614 for more information about other views in the Results tab. Table 14-1 Columns in the Detail View Column Point Test Output Nominal Spec Weight Pass/Fail Min Max Data/Content Hide/Unhide Number of the design point for which results are displayed. Test name, top of expandable tree of outputs See “Hiding Test Details” on page 608 Signal or expression/measurement name Plot icon for signals and waveform See “Hiding Signals” expressions; status indicator box and on page 608 measured value for expressions at the nominal corner: green indicates a value within the specifications; yellow indicates a value that is See “Hiding Measured Result Values” on no more than 10% outside the target value of page 609 specifications; red indicates a value that is more than 10% outside the target value Specification information Weighting factor given to a specification See “Hiding Specification Details” on page 608 pass when values are within specifications; near when one or more measured values are no more than 10% outside the target value of the specification; fail when one or more measured values are more than 10% outside the target value of the specification For more information about the pass, near or fail status, see Viewing Specification Results in the Results Tab on page 783. Minimum value for the specification Maximum value for the specification “Hiding Minimum and Maximum Values” on page 609 March 2015 © 1990-2015 606 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column CornersName Data/Content Measured value or waveform at each corner Hide/Unhide See “Hiding Corner Results” on page 608 You can show or hide columns and rows displayed on the Results tab by using the (Configure what is shown in the table) button on this tab. When you click this button, ADE XL shows the following menu. For information about these options, see the following topics: ■ Hiding Test Details on page 608 ■ Hiding Specification Details on page 608 ■ Hiding Corner Results on page 608 ■ Hiding Signals on page 608 ■ Hiding Signals on page 608 ■ Hiding Measured Result Values on page 609 ■ Hiding Minimum and Maximum Values on page 609 ■ Showing Only Errors on page 609 ■ Showing the Starting Point on page 610 ■ Showing Fixed Parameters for a Design Point on page 610 March 2015 607 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Hiding Test Details Test details appear in the Test column on the Results tab of the Outputs pane. To hide test details, do the following: ➤ Click the (Configure what is shown in the table) button on the Results tab and choose Test. The Test column disappears from the Results tab. To unhide this column, click the button once again and choose Test. Hiding Specification Details Specification details appear in the Spec and Weight columns on the Results tab of the Outputs pane. To hide specification details, do the following: ➤ Click the button on the Results tab and choose Spec/Weight. The Spec and Weight columns disappear from the Results tab. To unhide these columns, click the button once again and choose Spec/Weight. Hiding Corner Results Corner results appear in columns on the Results tab of the Outputs pane, each result in its own column. To hide corner results columns, do the following: ➤ Click the button on the Results tab and choose Corners. The corner results columns disappear from the Results tab. To unhide these columns, click the button once again and choose Corners. Hiding Signals Signals appear as rows with the icon in the Nominal column and the columns for corners on the Results tab of the Outputs pane. To hide signals, do the following: ➤ Click the button on the Results tab and choose Signals. March 2015 © 1990-2015 608 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The signal rows disappear from the Results tab. If you have any measured values for expressions, those are the only values that appear. To unhide these rows, click the button once again and choose Signals. Hiding Measured Result Values Measured result values appear in the Nominal column and the columns for corners on the Results tab of the Outputs pane. To hide measured result values, do the following: ➤ Click the button on the Results tab and choose Expressions. The rows displaying measured result values disappear from the Results tab. The Results tab displays only the information about signals. To unhide these rows, click the button once again and choose Expressions. Hiding Minimum and Maximum Values The minimum and maximum values appear in the Min and Max columns on the Results tab of the Outputs pane. To hide minimum and maximum values, do the following: ➤ Click the button on the Results tab and choose Min/Max. The Min and Max columns disappear from the Results tab. To unhide these columns, click the button once again and choose Min/Max. Hiding Device Checks To hide device checks, do the following: ➤ Click the button on the Results tab and choose Device Checks. To unhide these rows, click the button once again and choose Device Checks. Showing Only Errors To show errors only, do the following: ➤ Click the button on the Results tab and choose Only Errors. March 2015 609 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results To hide these rows, click the button once again and choose Only Errors. Showing the Starting Point The reference point specified for Monte Carlo Sampling, Global Optimization, Local Optimization, Improve, Sensitivity Analysis, Feasibility Analysis and Size Over Corners runs is displayed as the starting point on the Results tab of the Outputs pane. To show the starting point on the top of the Results tab, do the following: ➤ Click the button on the Results tab and Starting Point. The rows displaying the starting point appears on the top of the Results tab. To hide these rows, click the button once again and choose Starting Point. Showing Fixed Parameters for a Design Point By default, for every design point, parameters names and their values are displayed in the gray bar on top of the results shown for that design point. For example, in the following figure, for each design point, the gray bars shows the values set for the two swept parameters. If, in addition to the swept parameters, you want to display the fixed parameters on the March 2015 © 1990-2015 610 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results gray bar, click the button on the Results tab and choose Fixed Parameters. To hide the fixed parameters, click once again and choose Fixed Parameters. Note: Similarly, you can show or hide fixed parameters on the Variable Display assistant. March 2015 © 1990-2015 611 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Hiding and Showing Results for Tests By default, the Results tab displays the results for all the tests. However, if you need to focus on the results of a particular test, you can choose to hide the rows related to that test. To view only the results for a specific test, do the following: 1. Click the button on the Results tab and select Hide All Tests. 2. Click the button on the Results tab and select a specific test. To view the results for all the tests, do the following: ➤ Click the button on the Results tab and select Show All Tests. To hide the results for all tests, do the following: ➤ Click the button on the Results tab and select Hide All Tests. The tool filters out the results for the selected tests. Note that in case the tests use overridden values for variables, the parameter header rows are updated to show the variable values related to only those tests that are visible. For more details, refer to How Results are Displayed When A Global Variable is Disabled for a Test?. Similarly, if a corner is disabled for a test, only the corners that are enabled for the visible tests are shown. Columns that contain the results for the corners that are disabled for the visible tests are hidden. For more details, refer to Viewing Disabled Corners in the Results Tab. Showing Variables for a Design Point By default, the Results tab displays the names and values of variable parameters, which were used for a particular design point run, on the gray row above the results for a design point. If you also want to view the values of fixed parameters for a design point, click and choose Fixed Parameters. You can also view the list of all the variable parameters in the Variable Display assistant. To open this assistant, choose Window – Assistant – Variable Display. The Variable Display assistant is displayed at the bottom of the ADE XL window. Click on any design point on the Results tab. A list of all the variables and their values used for a particular design point are displayed in the Variable Display assistant. March 2015 © 1990-2015 612 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The Variable Display assistant shows the name of each variable with the minimum and maximum values and the current value used for the currently selected design point. The blue and red color bars indicate the sweep stage for a variable. For example, in the above figure, the blue bar for M6_fw shows that 9u is one of the sweep values for this variable and there are few more sweeps. The red bar for M3_fw shows that 15u is the maximum sweep value used for this variable. By default, the fixed parameters are not shown in the Variable Display assistant. Click Fixed Parameters on top to show all fixed and variable parameters, as shown below. March 2015 © 1990-2015 613 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results About Results Views By default, the columns listed in Table 14-1 on page 606 are displayed in the Results tab of the Outputs pane. This view is called the Detail view. You can use the Select the results view drop-down list to switch between the following views: ■ Detail ■ Detail - Transpose ■ Optimization ■ Status ■ Summary ■ Yield Select the results view drop-down list March 2015 © 1990-2015 614 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Every run mode has a default result view mapped to it. For example, the default result view for the Monte Carlo Sampling run mode is the Yield view. Note: You can change the default results view for the Single Run, Sweeps and Corners run mode by using the defaultResultsViewForSweepsCorners on page 959environment variable. This feature is currently not available for other run modes. Detail Displays the detailed results. For more information about the columns in the Detail view, see Table 14-1 on page 606. Figure 14-1 Detail View in Results Tab Detail - Transpose The Detail - Transpose view allows visualization of results across corners. The table on the March 2015 © 1990-2015 615 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results left side displays corner and sweep conditions for each simulation point, and the table on the right side displays the results and pass, near or fail status for output expressions at each simulation point. Note: The pass, near or fail status displayed for output expressions in the Pass/Fail column is based on the status of all specifications across all tests. For more information about the pass, near or fail status for output expressions, see Viewing Specification Results in the Results Tab on page 783. Figure 14-2 Detail - Transpose View in Results Tab For more information about the Detail - Transpose view, see Using the Detail - Transpose View on page 622. Optimization The Optimization view displays the Test, Output, Value, Spec, Weight, Min, Max and corners-related columns. Status The Status view displays the progress and status of the simulation run, and the contents of the run log file. For more information about the Status view, see Using the Status View on page 623. March 2015 © 1990-2015 616 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-3 Status View in Results Tab March 2015 © 1990-2015 617 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Summary The Summary view displays the summary of the results for output expressions across all corners and sweeps. Figure 14-4 Summary View in Results Tab The columns in the Summary view are described below: Column Test Output Min Max Mean Median Std Dev Data/Content Name of the test for which the output is defined. Name of the output expression. Minimum value of the output. Maximum value of the output. Mean value of the output. Median value of the output. Standard deviation of the values for the specification. Note: For Single Run, Sweeps and Corners, this is the population standard deviation. For other run modes, this is the sample standard deviation. March 2015 © 1990-2015 618 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column Spec Pass/Fail Data/Content Specification defined for the output expression. The pass/fail status of the specification across all sweeps and corners. Yield The Monte Carlo Yield view displays for all specifications the overall yield estimate based on pass or fail status. The yield estimate for each specification and statistics, such as mean and standard deviation, are also reported. A sample Yield view is displayed in the following figure. Figure 14-5 Yield View on Results Tab March 2015 © 1990-2015 619 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Description of the columns displayed in this view is given below: Column Data/Content Test Test name, top of expandable tree of outputs Name Expression/measurement or corner name Yield Resulting yield for each specification Min Minimum value resulted for an output Target Target specification Max Maximum value resulted for an output Mean Mean value resulted for an output Std Dev Sample standard deviation for an output Sigma To Target Distance from the standard deviation value to the target value, defined as follows: mean value to target value / standard deviation Note: This column is hidden by default. Cpk Cpk is the process capability index, a statistical measure of the process capability. It is the capability of a process to produce an output within the given specification limits. If USL and LSL are the upper and lower specification limits, is the estimated mean of the process and is the estimated variability of the process, Cpk is calculated by using the following equation. Cpk is a good estimation of yield if the output distribution is Gaussian. Cpk > 1 indicates greater than 3-sigma yield and Cpk < 0 indicates that the process mean falls outside the USL or LSL limits. The summary row for each specification displays the analysis for that specification across all corners. Summary values are derived as follows: Column Yield Summary value Minimum yield value across all corners March 2015 © 1990-2015 620 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column Min Max Mean Std Dev Cpk Errors Summary value Minimum value across all corners Maximum value across all corners Mean value across all corners Sample standard deviation across all corners Minimum Cpk value across all corners Number of points that resulted in simulation or evaluation errors for the output The gray-colored row at the top displays the Yield Estimate – an estimate of the circuit yield taking into account all of the specifications. You can specify a confidence level to view the yield estimate confidence intervals. For more details, refer to Viewing Data for a Specific Confidence Interval Viewing Data for a Specific Confidence Interval. You can also set the error filter to filter out the results with simulation error or evaluation errors. For more details, refer to Filtering Out Data from the Yield View. Tip To specify the names of columns you want to view in the Yield view, on the Results toolbar, click Configure what is shown in the table and select the names of columns to show. Alternatively, you can specify the names of columns to show by setting the yieldViewShowDefault environment variable. March 2015 © 1990-2015 621 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Using the Detail - Transpose View Most of the tasks that you can perform in the Detail - Transpose view are the same as in other results views. The following topics describe the tasks that are specific to the Detail Transpose view, or different from those in other results views: ■ Hiding and Showing Columns in the Detail - Transpose View on page 622 ■ Changing the Order of Columns in the Detail - Transpose View on page 622 ■ Viewing the Test Name for Outputs in the Detail - Transpose View on page 622 Hiding and Showing Columns in the Detail - Transpose View To hide a column, do the following: ➤ Right-click on the name of the column and choose Hide Column. To display all the columns, do the following: ➤ Right-click on the name of any column and choose Show All Columns. Changing the Order of Columns in the Detail - Transpose View To change the order of columns, do the following: 1. Click on a column name. 2. Drag and drop the column at the desired location. Viewing the Test Name for Outputs in the Detail - Transpose View To view the name of the test for which an output is defined, do the following: ➡ Place the mouse pointer on the name of the column for the output on the right hand side of the Detail - Transpose view. The name of the test for which the output is defined is displayed in a pop-up. Important In the Detail - Transpose view, you can also view the statistical parameter values used on each point and create a statistical corner that can be used to rerun a particular point in the distribution. These commands are available in the context-sensitive menu commands. March 2015 © 1990-2015 622 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Using the Status View See the following topics for more information about using the Status view on the Results tab of the Outputs pane: ■ Stopping the Simulation Run from the Status View on page 623 ■ Hiding and Showing Information in the Status View on page 623 Stopping the Simulation Run from the Status View To stop the simulation run, do the following: ➡ Click the Stop button next to the Progress bar. Hiding and Showing Information in the Status View Click the button on the Results tab. A check mark next to an item indicates that information for that item is being displayed. To hide information, do the following: ➤ Click the button on the Results tab and choose the item. To unhide the information click the button once again and choose the item. Switching Between Results Views To switch between views, do the following: ➤ From the Select the results view drop-down list, select the view you want to display. Select the results view drop-down list March 2015 © 1990-2015 623 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Freezing Columns in the Detail and Optimization View You can view two areas of the Results tab and lock the columns in one area by freezing columns. When you freeze columns, you select specific columns that remain visible when scrolling in the Results tab. Note: You can freeze columns only in the Detail and Optimization views in the Results tab. To freeze columns, do the following: ➡ Right-click on the column to the right of where you want the split to appear and choose Freeze columns. For example, to freeze the Output column and all the columns to the left of the Output column, right-click on the heading for the Output column and choose Freeze columns. This allows you to view the contents of the Output column and all the columns to the left of the Output column when you use the horizontal scroll bar in the Results tab scroll through the results for corners. March 2015 © 1990-2015 624 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Backannotating from ADE XL Results After running an ADE XL simulation, you can backannotate the results from the best or the desired design point to make appropriate changes in the design and simulation setup. When you backannotate the results from a design point, the values of global variables used for that point are copied to the Design Variables list in the Data View pane of the ADE XL setup and the values of the device parameters are copied to the schematic view of the design. To backannotate the ADE XL results, do the following: 1. Ensure that the Details view is open in the Results view tab. 2. Right-click on the gray bar on top of the selected design point and choose Backannotate. The ADE XL Back Annotation Options form is displayed, as shown below. 3. Select an appropriate option on this form to specify the types of values that you want to backannotate from the results: ❑ All variables and parameters: This option backannotates the values of all the global variables and device parameters. This option is selected by default. Note: You can change the default value by using the defaultBackAnnotationOption environment variable. ❑ Only design variables: This option backannotates only the global variables. March 2015 © 1990-2015 625 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Only device parameters: This option backannotates only the device parameters. ❑ None: This option does not backannotate any value. 4. Select the Do not show this dialog again check box if you do not want to view this form every time you backannotate values. The check box will be set for the session only. Once you close ADE XL and open the next session, you will have to set the check box again. 5. Click OK to apply the changes and close the form. Note: You cannot restore the original values after the results are backannotated to the schematic or the ADE XL setup. March 2015 © 1990-2015 626 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Selecting the Plot Mode On the Results tab of the Outputs pane, do the following: ➤ From the Select the plotting mode drop-down list on the Results tab, select one of the following plot modes: Select the plotting mode drop-down list Table 14-2 Plot Modes Plot Mode Append Replace March 2015 © 1990-2015 Description A new trace is appended to the active waveform window if the test name and X-axis match. Important Points To Note ■ Traces for different tests are always plotted in different waveform windows tabs in the Virtuoso Visualization and Analysis XL window. ■ If the test name for the active waveform window tab is different from the test name of the new trace to be plotted, ADE XL looks for an existing tab (from left) for the same test. If found, the new trace is appended to that window tab. Otherwise, a new window tab is created. ■ The axes units of the new trace must match with the axes of the existing traces. If the units of X-axis differ, the new trace is plotted in a new subwindow in the existing window tab. If the units of Y-axis differ, a new Y-axis is created in the existing subwindow. New traces replace the existing traces in the active waveform window. If the active waveform window has multiple subwindows, all the subwindows are deleted and new traces are plotted. 627 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Plot Mode New SubWin New Win Description New traces are plotted in a new subwindow in the active waveform window New traces are plotted in a new waveform window Note: These plot modes can also be set from the Direct Plot, Calculator, and Results Browser windows. March 2015 © 1990-2015 628 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Setting Default Plotting Options for All Tests You can use the ADE XL Plotting/Printing Options form to set the default printing and plotting options for all tests. These options will be used: ■ For automatic plotting of results after a simulation run is complete ■ When you click the Plot all waveforms button on the Results tab Note: You can use the Setting Plotting Options form to override the default printing and plotting options for individual tests. For more information, see Setting Plotting Options for Specific Tests on page 662. 1. To open the ADE XL Plotting/Printing Options form, do one of the following: ❑ Choose Options – Plotting/Printing. ❑ Click the button on the Outputs Setup tab or the Results tab of the Outputs pane. March 2015 © 1990-2015 629 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The ADE XL Plotting/Printing Options form appears. 2. Specify plotting options. See the following topics for assistance: March 2015 630 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Specifying the Default Plotting Option for All Tests on page 632 ❑ Specifying the Outputs that Need to be Plotted on page 633 ❑ Specifying the Default Plotting Mode for All Tests on page 634 ❑ Specifying Annotations for the Graph Window on page 634 ❑ Specifying the Default Direct Plot Mode on page 635 ❑ Specifying When to Plot Direct Plot Results on page 636 ❑ Specifying When to Print Results on page 636 3. When you are finished specifying options, click OK. March 2015 © 1990-2015 631 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying the Default Plotting Option for All Tests You can specify the default plotting option for all tests. These options will be used for the following: ■ Automatic plotting of results after a simulation run is complete ■ When you click the Plot all waveforms button on the Results tab To specify the default plotting option for all tests, do the following in the ADE XL Printing/Plotting Options form: ➡ In the Plot group box, select the plotting option from the Plotting Option drop-down list. Select None Auto To Disable automatic plotting of results after the simulation run. This is the default option. Automatically plot outputs after the simulation run. For every subsequent simulation run, a new graph replaces the existing graph. You can choose to append the new graph to the existing graph of the previous simulation run or plot it in a new window using the Plotting Mode drop-down list. When this option is selected, any customization done in the Virtuoso Visualization and Analysis graph windows that are currently open, such as setting up traces, colors, or zoom levels, are not reused. Every time a graph is plotted, the default settings are used. March 2015 © 1990-2015 632 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Select Refresh To Plot the results by updating the existing graphs in the Virtuoso Visualization and Analysis XL graph window that is already open. Use this option when you want to save and reapply graph and trace settings on the plots that you want to review across different simulation runs. Note: Currently, this feature is supported only in the Single Run, Sweeps, and Corners run mode. For more details on how the graphs are refreshed, refer to Refreshing Graphs on page 636. This mode ignores the following options in the ADE XL Printing/Plotting Options form: ■ Plotting mode selected in the Plotting Mode drop-down list ■ Plot Signals, Plot Waveform Expressions and Plot Scalar Expressions options ■ Graph annotation options You can configure the default plotting option by using the plotType environment variable. Return to main procedure. Specifying the Outputs that Need to be Plotted To specify the outputs that need to be plotted automatically after the simulation finishes, do the following in the Plot group box: Select Plot Signals Plot Waveform Expressions Plot Scalar Expressions To To plot signals. To plot expressions that evaluate to waveforms. To plot expressions that evaluate to scalar values. Return to main procedure. March 2015 © 1990-2015 633 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying the Default Plotting Mode for All Tests To specify the default plotting mode for all tests, do the following: ➡ In the Plot group box, select the plot mode from the Plotting Mode drop-down list. For more information about plot modes, see Table 14-2 on page 627. Return to main procedure. Specifying Annotations for the Graph Window To specify annotations for the graph window, do the following: 1. Select one or more of the following Annotations check boxes: ❑ Design Name — Displays design name in the title banner of the waveform window. ❑ Simulation Date — Displays date and time of simulation in the title banner of the waveform window. ❑ Temperature — Displays simulation temperature in the plot area of the waveform window. ❑ Design Variables — Displays design variables and their values in the plot area of the waveform window. ❑ Scalar Outputs — Displays calculated results in the plot area of the waveform window. ❑ Spec Markers — Displays spec markers in the plot area of the waveform window. For more details about the spec markers, refer to Displaying Spec Markers on Graphs on page 651. 2. Click Apply. March 2015 © 1990-2015 634 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Here is a waveform window with all annotations applied: Return to main procedure. Specifying the Default Direct Plot Mode To specify the default direct plot mode for all tests, do the following: ➡ In the Direct Plot group box, select the plot mode from the Plotting Mode drop-down list. For more information about plot modes, see Table 14-2 on page 627. Return to main procedure. March 2015 © 1990-2015 635 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying When to Plot Direct Plot Results To specify when to plot results you select from your schematic when you use the Results – Direct Plot submenu, do the following: 1. Select one of the following Direct Plots Done After options: ❑ Each Selection – Plot results after each item you select on the schematic. ❑ All Selections Are Made – Plot results after you select all items and press Esc to end selection mode. 2. Click Apply. Return to main procedure. Specifying When to Print Results To specify when to print results to the Results Display Window, do the following: 1. Select one of the following Print After options: ❑ Each Selection – Print results after each item you select on the schematic. ❑ All Selections Are Made – Print results after you select all items and press Esc to end selection mode. 2. Click Apply. Return to main procedure. Refreshing Graphs Graphs can be refreshed by using the Refresh plotting option in the ADE XL Printing/Plotting Options form. This option updates already open graphs with new simulation data and retains graph and trace settings. You can use the Refresh plotting option to review graphs across different simulation runs. For example, for a test ACGainBW, you want to run multiple simulations with varying values of the global variable VDD. In the first run, you sweep VDD for three values 1.8, 2.0, and 2.2. After the simulation results are plotted in the graph, you customize two plots, as shown in the figure below. March 2015 © 1990-2015 636 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Changed plot style and color Changed plot style March 2015 © 1990-2015 637 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Now, do not close this graph and set Refresh in the Plotting Option field. In the next run, sweep VDD for four values: 1.8, 2.0, 2.2, and 2.4. After simulation, the graph appears as shown in the following figure. Plot style and color retained New plot added Plot style and color retained New plot added Note that: ■ Traces for VDD = 1.8, 2.0, and 2.2 are updated in the same graph and trace settings are retained. ■ New trace for VDD = 2.4 is added to the same graph Graph Settings Retained During Refresh Plotting When the Plotting Option field is set to Refresh, the graphs retain the following settings across simulation runs: ■ Trace color, type, style, width, or symbols March 2015 © 1990-2015 638 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ■ Visibility status of graphs ■ Axes settings ■ Pan and zoom settings ■ Graph layout ■ Strip layout ■ Markers and marker locations The following example shows how markers are retained with refresh plotting. Add an AB delta marker on the V0/PLUS trace in your graph, as shown in the following figure. Markers applied on the plots Now, if you change the values of variables and run the simulation again, the refreshed graph is plotted for the new simulation results, as shown in the figure below. March 2015 © 1990-2015 639 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Markers remain at their original place Note that the A and B markers remain displayed at their original positions and are not connected with the trace in the refreshed plot. Important If you save graphs as part of an ADE XL state, all graph settings specified above are retained and when you reload the state, the trace settings are retrained. However, if you save the graph (in a .grf file) from standalone graph window, these settings are not saved. Graph Settings Not Retained During Refresh Plotting The following graph settings are not retained: ■ Swapping of sweep variable on the X-axis ■ Addition of a new graph window March 2015 © 1990-2015 640 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ■ Any plot added to the graph in any of the following ways: ❑ By using the Direct Plot main form ❑ By using the Plot or Plot Across Corners commands on the Results tab ❑ By plotting directly from the Results Browser ❑ By plotting from the Calculator. For example, by plotting analog to digital, digital to analog, eye diagram, or spectrum measurements. ❑ By adding outputs from a different history These graphs are not refreshed because any plot that is not on the Outputs tab of ADE XL is deleted after the graph is refreshed. To retain these additional plots and their settings, you can send the plot from the graph to the ADE XL Outputs tab by using the Send to ADE command on the shortcut menu of the graph. For more details, refer to Sending Traces to ADE in Virtuoso Visualization and Analysis XL User Guide. The following sections describe how the graphs are updated with refresh plotting in different scenarios: ■ Refresh Plotting with Varying Tests ■ Refresh Plotting with Varying Analyses ■ Refresh Plotting with Varying Output Setup ■ Refresh Plotting with Varying Sweep Variables ■ Refresh Plotting with Varying Corners Refresh Plotting with Varying Tests The following table summarizes how graphs are refreshed when tests are varied across different simulation runs: Table 14-3 Effect of Test Variations on Graph Settings Test Variation Add or enable a test Effect on Graph Settings ■ A new graph window is added to display the plots of the newly added/enabled test. ■ Graph windows for the already existing tests are retained. Their graphs are updated with the new simulation data and trace settings are retained. March 2015 © 1990-2015 641 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-3 Effect of Test Variations on Graph Settings Test Variation Change the test for which simulation is run Delete or disable a test Effect on Graph Settings ■ A new graph window is added to display the plots of the new/changed test. ■ Graph windows displayed in the previous run are retained. ■ Graph window for the test that is deleted or disabled is retained, but their graphs are not updated. The following example shows how graphs are updated when a new test is added: When you run simulation with a single test, the graph appears as shown in the following figures. Figure 14-6 Graphs Plotted for a Simulation Run for a Single Test Now, if you add one more test, PSR, and run simulation, a new graph window is added, as shown in the following figure. March 2015 © 1990-2015 642 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-7 Graphs Plotted for Simulation Run for an Additional Test New graph window Refresh Plotting with Varying Analyses The following table summarizes how graphs are refreshed when analyses are varied across different simulation runs (assuming that the test remains same): Table 14-4 Effect of Analyses Variations on Graph Settings Analyses Variation Add or enable an analysis Delete or disable an analysis Effect on Graph Settings ■ A new subwindow is added to the graph to display the plots of the newly added or enabled analysis. ■ Graphs for the analysis that are common across the two runs are updated with the new simulation data and any trace settings are retained. ■ Subwindows related to the analysis that has been deleted or disabled after the previous simulation run are removed from the graph. March 2015 © 1990-2015 643 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Refresh Plotting with Varying Output Setup The following table summarizes how graphs are refreshed when outputs are varied across different simulation runs: Table 14-5 Effect of Changes in Output Variations on Graph Settings Output Variation Add or enable an output Delete or disable an output Effect on Graph Settings ■ Newly added or enabled output is added in a new subwindow. ■ Existing graphs are updated with new simulation data and their graph and trace settings are retained. ■ The plot for the deleted or disabled output is removed. ■ Other graphs are updated with new simulation data and their graph and trace settings are retained. Note: The Refresh plotting option does not update the graphs plotted for MATLAB measurements. Refresh Plotting with Varying Sweep Variables If you vary sweeps across simulation runs, the traces that use common sweep values are updated with new simulation data. For new sweep values, new traces are added to the same graph. Traces for unmatched sweep values are removed. For example, set the variables as shown below. Figure 14-8 Variables Used for Simulation March 2015 © 1990-2015 644 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The graph plotted in this case includes plots for all three sweep values for VDD as shown below. Figure 14-9 Graphs Generated after Sweeping Variable VDD For the next simulation run, change the sweep values for VDD to 2.0:0.2:2.6. Note the change in values of VDD, as shown below (mismatch values are underlined). Values of VDD in the first run: 1.8, 2.0, and 2.2 Values of VDD in the second run: 2.0, 2.2, 2.4, and 2.6 With the Refresh plotting option, the traces generated for the matching values of VDD, that is, when VDD is 2.0 and 2.2, are updated with new simulation data. The trace that was earlier plotted for VDD=1.8 is deleted. New traces are added for VDD= 2.4 and 2.6. March 2015 © 1990-2015 645 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-10 Graph settings Saved for the Plots with Common Sweep Values However, there are some exceptions to this. In some cases, the traces plotted for common sweep values of the swept variables are not refreshed. These cases are listed below: ■ Change from a single run to the sweep run and vice-versa. ■ Change in the number of swept variables. For example, in the first simulation run, you sweep variable x, and in the subsequent runs, you sweep variables x and y. In this case, traces plotted for x are not refreshed. Refresh Plotting with Varying Corners Note: The following scenarios are based on the assumption that the test name remains same because only the traces for same test are plotted in the same waveform window. Traces from different tests are plotted in different waveform windows. If you vary corners across simulation runs, traces generated for the common set of corners are updated with the new simulation data. For other corners, new traces are added in the same graph. Traces for unmatched corners are deleted. March 2015 © 1990-2015 646 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The following example shows are graphs are updated with different corners across three different runs: Run 1: Run a simulation for three corners: nominal, C0, and C1. Both C0 and C1 sweep temperature for two values, -25 and 75, and use a common section from the model file, but vary the value of VDD. The graph is plotted as shown below. Figure 14-11 Graphs Plotted for Corners: nominal, C0, and C1 Run 2: For the next simulation run, use the nominal and C1 corners. In place of corner C0, use corner C2, which uses the same value of VDD as is being used in C1, but a different section from the model file. After simulation, the graph is updated as shown below. March 2015 © 1990-2015 647 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-12 Graphs Plotted for Corners: nominal, C1, and C2 Note the following changes: ■ Traces plotted for the corners, nominal and C1 have been retained. ■ New traces have been plotted for corner C2. ■ Traces for corner C0 have been removed from the graph. Run 3: For the third run, use change the values of corner variables for corner C2 and disable all other corners. Use the following variables for corner C2: VDD = 2.3 Temp = 25, 40, 75 In this case, corner conditions of the new simulation run do not match with that of the previous run. Therefore, no trace is updated and only new traces are plotted, as shown below. March 2015 © 1990-2015 648 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-13 Graphs Plotted For Corner C2 The following table summarizes how graphs are updated when corners and sweep variables are varied across different simulation runs: Table 14-6 Effect of Corners and Sweep Variations on Graph Settings Corner or Sweep Variations Across Two Simulation Runs In the first run, a single run is used with the nominal corner. In the next run, the global variable is swept and the same nominal corner is used Effect on Graph Settings ■ Traces for the sweep values that are same across both the runs are refreshed and their trace settings are retained. For example, in the first run, VDD=1.8, and in the second run, VDD=1.8, 2.0, and 2.2. In this case, trace plotted for VDD=1.8 is refreshed. ■ If there is no common value for the swept variable across different run, new traces are plotted and settings are not retained. For example, in the first run, VDD=1.8, and in the second run, VDD=2.0, 2.2, and 2.4. In this case, trace plotted for VDD=1.8 is removed. March 2015 © 1990-2015 649 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-6 Effect of Corners and Sweep Variations on Graph Settings Corner or Sweep Variations Across Two Simulation Runs Effect on Graph Settings Both simulation runs sweep a ■ Traces for the sweep values that are same across common global variable. both the runs are refreshed and their trace settings Nominal corner is same in both are retained. the runs. ■ If none of the sweep values match across the runs, new traces are plotted and no settings are not retained. In the first run, a corner is used. ■ In the next run, a new corner is added to the existing setup. ■ Traces plotted for the existing corner are updated and their settings are retained. For the new corner, new traces are plotted in the same graph. Corners used in the first run are ■ No traces are updated with new simulation data. disabled and a new corner is added. ■ New traces are plotted in the same graph. In both simulation runs, only ■ nominal corner is used, but the values of variables in the nominal ■ corner are different. No traces are updated with new simulation data. New traces are plotted in the same graph. Both simulation runs use the same set of sweep values for global variables and nominal corner. In addition, the second run uses an additional corner. ■ Traces plotted for the nominal corner are updated with new simulation data and their settings are retained. ■ For the new corner, new traces are plotted in the same graph. March 2015 © 1990-2015 650 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Displaying Spec Markers on Graphs Spec markers are color markers that are displayed on a graph to demarcate the region under a trace as pass or fail region. This demarcation is done by shading the pass and fail regions with green and red line patterns, respectively. The demarcation depends on the status of simulation results with respect to the specifications given on the Outputs Setup tab. For example, in the Outputs Setup tab, a specification is set for Supply_Current in the Spec column, as shown in the figure below. Figure 14-14 Specifications in the Output Setup Tab When you plot the results in Virtuoso Visualization and Analysis XL window, spec markers are displayed for Supply_Current, as shown in the figure below. March 2015 © 1990-2015 651 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-15 Spec Markers on a Graph Marker labels Pass region where the results meet the specification Pass label displayed in center Fail region where the results do not meet the specification In the above figure, depending on the spec range, pass and fail regions are shaded with green and red patterns, respectively. The two white dotted bold lines that indicate the threshold value separate these regions. When you select a trace in the graph or in the trace legend, the thickness of the threshold line increases and the spec marker label background changes to its respective pass or fail color. Marker label displayed in each region shows the pass or fail status and the specification type and values. For example, the pass:(range 95u 103u) marker label displayed in the above graph shows that the specification type is range and the target range values are 95u and 103u. The results that are plotted in the region marked by this label meet the specification. March 2015 © 1990-2015 652 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results By default, the pass and fail labels appear near the threshold line. However, if the specification type is range, the pass label is displayed in the center as shown in Figure 14-15 on page 652. To display the Spec column in trace legend, right-click the trace legend header and choose Spec. Enabling Display of Spec Markers To display spec markers, in the ADE XL Plotting/Printing Options form, select the Spec Markers graph annotation and click Apply. March 2015 © 1990-2015 653 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-16 ADE XL Plotting/Printing Options Form Note: By default, the Spec Markers option is deselected. If you select the Spec Markers option and plot graphs, ADE XL checks for the presence of specifications for the result to be plotted. For the measurements to be plotted, if you have specified spec values in the ADE XL Outputs section, the tool shades the pass and fail regions in the graph. March 2015 © 1990-2015 654 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Displaying Spec Markers on Zoomed-in Graph Spec markers are displayed on the graph only if the associated trace is visible. When you zoom in a graph, only the spec markers that fall in the zoomed-in graph portion are visible. This helps improve visibility when multiple spec markers are applied on multiple traces. Figure 14-17 Spec Markers on Zoomed-in Graph Graph displaying both the pass and fail spec markers Zoomed-in graph displaying only fail marker region The figures below demonstrate an example when two traces are plotted in the same graph and share the same Y-axis. In this example, the trace Open_Loop_Gain has a huge Y-axis scale and the other overlaid trace, UGF, has a comparatively small Y-axis scale. Therefore, the spec markers for Open_Loop_Gain are not visible in the graph (as shown in Figure 14-17 on page 655). To display the hidden spec markers, you need to zoom in the graph until you get the small Y-axis scale. March 2015 © 1990-2015 655 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-18 Example: Spec Markers on a Zoomed-in Graph Spec marker pass/fail region is hidden for Open_Loop_Gain When you zoom in the above displayed graph to ymax=60 and ymin=30, the hidden spec markers become visible as shown in Figure 14-19 on page 657. March 2015 © 1990-2015 656 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-19 Example: Spec Markers on a Zoomed-in Graph Spec Markers for Different Specification Types Depending on the type of specification, ADE XL displays spec markers in different ways, as described in the following table. March 2015 © 1990-2015 657 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-7 Spec Markers for Different Specification Types Specification Type minimum Spec Marker Display Displays one horizontal marker line at the target minimum value. The region in which the results are below the minimum target is shaded with green and the region above it is shaded with red. maximum Displays one horizontal marker line at the target maximum value. The region in which the results are greater than the maximum target is shaded with green and the region below it is shaded with red. March 2015 © 1990-2015 658 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-7 Spec Markers for Different Specification Types Specification Type < Spec Marker Display Displays one horizontal marker line at the spec value. This specification requires that the results should be less than the spec value. Therefore, the region below the marker is shaded with green and the region above it is shaded with red. > Displays one horizontal marker line at the spec value. This specification requires that the results should be greater than the spec value. Therefore, the region below the marker is shaded with red and the region above it is shaded with green. If all the results appear in one region, the other region is not displayed, as shown in the figure below: March 2015 © 1990-2015 659 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-7 Spec Markers for Different Specification Types Specification Type range Spec Marker Display Displays two horizontal marker lines—one at the lower bound value and the other at the upper bound value. This specification type requires that results should be within the given range. Therefore, the region between the two marker lines is shaded with green and the region outside these lines is shaded with red. tol Displays two horizontal marker lines—one at the lower end of the tolerance range and the other at the higher end. This specification type requires that results should be within the given tolerance range. Therefore, the region between the two marker lines is shaded with green and the region outside these lines is shaded with red. info No marker is displayed for this specification type. Important While displaying spec markers, ADE XL does not consider overridden specifications for corners. If any overridden specification exists, spec markers are displayed by considering only the global specifications. March 2015 © 1990-2015 660 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Changing Properties of Spec Markers You can change the display of spec markers by setting their properties in the Virtuoso Visualization and Analysis XL graph. For example, you can change the shading color or you can choose to show or hide the markers in the pass or fail region. For more details, refer to the Changing Spec Marker Properties section in the Virtuoso Visualization and Analysis XL User Guide. March 2015 © 1990-2015 661 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Setting Plotting Options for Specific Tests You can use the Setting Plotting Options form to set various options related to printing and plotting for specific tests. The options you specify in this form override the options specified in the ADE XL Setting Plotting Options form. For more information about the ADE XL Setting Plotting Options form, see Setting Default Plotting Options for All Tests on page 629. 1. On the Outputs Setup tab of the Outputs pane, right-click a test name and choose Printing/Plotting Options. The Setting Plotting Options form appears. 2. Specify plotting options. See the following topics for assistance: ❑ Specifying When to Print Results on page 663 March 2015 662 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Specifying Whether to Plot Automatically After Simulation on page 663 ❑ Specifying When to Plot Direct Plot Results on page 664 ❑ Specifying Annotations for the Graph Window on page 634 ❑ Specifying Waveform Window Configuration Information on page 664 ❑ Enabling Fast Waveform Viewing Format for PSF Output on page 665 3. When you are finished specifying options, click OK. Specifying When to Print Results To specify when to print results to the Results Display Window, do the following: 1. Select one of the following Print After options: ❑ Each Selection – Print results after each item you select on the schematic. ❑ All Selections Are Made – Print results after you select all items and press Esc to end selection mode. 2. Click Apply. Return to main procedure. Specifying Whether to Plot Automatically After Simulation To specify that you want to plot outputs automatically after the simulation finishes, do the following: 1. Select the Auto Plot Outputs After Simulation check box. 2. Click Apply. To specify that you do not want to plot outputs automatically after the simulation finishes, do the following: 1. Deselect the Auto Plot Outputs After Simulation check box. 2. Click Apply. Return to main procedure. March 2015 © 1990-2015 663 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying When to Plot Direct Plot Results To specify when to plot results you select from your schematic when you use the Results – Direct Plot submenu, do the following: 1. Select one of the following Direct Plots Done After options: ❑ Each Selection – Plot results after each item you select on the schematic. ❑ All Selections Are Made – Plot results after you select all items and press Esc to end selection mode. 2. Click Apply. Return to main procedure. Specifying Waveform Window Configuration Information You can specify waveform window configuration information such as font size, window height and width, X and Y location. To specify waveform window configuration information, do the following: 1. In the Waveform Window group box, use the sliders to change one or more of the following settings: ❑ Font Size – Sets the font size for the text on the waveform window. ❑ Width – Sets the initial width of the waveform window. ❑ Height – Sets the initial height of the waveform window. ❑ X Location – Sets the initial X location of the upper left corner of the waveform window: a higher number places the window farther to the right on your display. ❑ Y Location – Sets the initial Y location of the upper left corner of the waveform window: a higher number places the window lower on your display. 2. Click Apply. Tip To preserve these settings for future design sessions, do the following: a. In the Command Interpreter Window (CIW), choose Options – Save Defaults. The Save Defaults form appears. March 2015 © 1990-2015 664 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results b. Click OK. Return to main procedure. Enabling Fast Waveform Viewing Format for PSF Output Using the PSF output in the fast waveform viewing format, Virtuoso Visualization and Analysis can render extremely large datasets (where signals have a large number of data points, for example 10 million) within seconds. To enable the fast waveform viewing format for PSF output, do the following: ■ Select the Fast Viewing Support check box. Return to main procedure. March 2015 © 1990-2015 665 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Plotting Results You can plot the results that appear on the Results tab of the Outputs pane. The plots are displayed in a waveform window. Important Starting with IC6.1.5 ISR6 release, the structure of the psf directory where simulation results are saved has been enhanced for single point runs. As a result, you may observe the following changes: i) Similar to multiple point runs, the simulation results for a single point run are now also saved under the top level psf directory. That is, the results are saved in: - Interactive./psf//psf, which is the top level psf directory - Interactive./1//psf, which is the psf directory for the single point ii) When you set context from Result Browser to the top level psf directory and evaluate a scalar expression in Calculator, the result is returned as a waveform object. However, when you set context to the results directory of the single point run, the result of a scalar expression is returned as a scalar value. iii) When you plot results of a single point run, if no global variables or parameters were used, the trace legend of the graph shows the Design Point column. If global variables or parameters were used to run the simulation for that point, name of last variable or parameter in the global list is shown in the trace legend. For more information, see the following topics: ■ Plotting Across All Points on page 667 ■ Plotting Across All Corners and Sweeps on page 667 ■ Plotting Across Corners on page 668 ■ Plotting Selected Points on page 669 ■ Plotting Outputs from the Specified Plot Set on page 670 ■ Other Plotting Methods on page 670 March 2015 © 1990-2015 666 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Tip You need not wait for the simulation run to complete before plotting results. You can plot the results for completed data points and corners even when the simulation run is in progress. Plotting Across All Points To plot across all points, do the following: 1. Select the plot mode. For more information, see Selecting the Plot Mode on page 627. 2. On the Results tab of the Outputs pane, click the button. The waveforms appear in a waveform window. Note: If you click the button after modifying measurement expressions or specifications in the Outputs Setup tab, the following message box appears. Click Yes to update the results displayed in the Results tab based on the new or modified expressions and specifications and then plot the results. Click No to ignore the changes in expressions and specifications and plot the results. Plotting Across All Corners and Sweeps To plot waveforms across all corners and sweeps for a signal or waveform expression, do the following: 1. Select the plot mode. For more information, see “Selecting the Plot Mode” on page 627. 2. Do one of the following: March 2015 © 1990-2015 667 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Double-click on a test name in the Test column or a signal or waveform expression name in the Output column of the Results tab. 3. Right-click on any of the following on the Results tab and choose Plot All: ❑ A test name in the Test column ❑ A signal or waveform expression name in the Output column ❑ In the Nominal column or in the column for a corner The waveforms for all the corners or sweep points are displayed in a waveform window. Plotting Across Corners To plot waveforms across all corners for a signal or waveform expression, do the following: 1. Select the plot mode. For more information, see “Selecting the Plot Mode” on page 627. 2. Right-click on any of the following on the Results tab and choose Plot Across Corners: ❑ A test name in the Test column ❑ A signal or waveform expression name in the Output column ❑ In the Nominal column or in the column for a corner The waveforms are displayed in a waveform window. Plotting Across Design Points To plot waveforms across all design points for a signal or waveform expression, do the following: 1. Select the plot mode. For more information, see “Selecting the Plot Mode” on page 627. 2. On the Results tab, right-click on the Nominal column or in the column for a corner and choose Plot Across Design Points. The waveforms displayed in a waveform window show results plotted across all design points, as shown below. March 2015 © 1990-2015 668 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Note that in the above figure, graphs have been plotted after setting the Append plotting mode. Plotting Selected Points To plot waveforms selectively, select the plot mode (see “Selecting the Plot Mode” on page 627) and then do one of the following: ■ Right-click a signal (indicated by the icon) or a waveform expression in the Nominal column or in the column for a corner and choose Plot. To plot multiple signals or waveform expressions, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next signal or waveform expression to add it to the selection set. Right-click and choose Plot. Note: You cannot plot multiple signals or waveform expressions for Monte Carlo simulation results. ■ Double-click on a signal or waveform expression in the Nominal column or in the column for a corner. March 2015 © 1990-2015 669 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The waveforms for the selected signals and waveform expressions appear in a waveform window. Plotting Outputs from the Specified Plot Set To plot outputs from the specified plot set, do the following: 1. Select the plot mode. For more information, see Selecting the Plot Mode on page 627. 2. Do one of the following on the Results tab of the Outputs pane: ❑ To plot outputs across all corners and sweeps for a signal or waveform expression, right-click on a test name in the Test column or a signal or waveform expression name in the Output column and choose Plot Outputs. ❑ To plot outputs for a specific point, right-click on a signal or waveform expression in in the Nominal column or in the column for a corner and choose Plot Outputs. 3. Select one of the following from the submenu that appears: Transient AC Noise DC Expressions Plots the transient response for each node Plots the AC response for each node Plots the squared noise voltage for each node Plots the DC sweep response for each node Plots the waveforms for expressions you define on the Outputs Setup tab of the Outputs pane. The outputs that you specified for plotting appears in a plot window according to the plotting mode you selected. Other Plotting Methods You can also use any of the following methods to plot selected simulation results in a waveform window: ■ On the Results tab of the Outputs pane, right-click any of the following and choose Open Results Browser to load the selected results in the Results Browser: ❑ Right-click a test name in the Test column or a signal or waveform expression name in the Output column to plot across all the corners for the signal or waveform expression. March 2015 © 1990-2015 670 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Right-click one or more signal or waveform expressions in the Nominal column to plot across the nominal corner. ❑ Right-click one or more signal or waveform expressions in a corner column to plot across the corner. When you load a single result in the Results Browser, the Virtuoso Visualization and Analysis XL window is opened. The selected results are opened in the Results Browser and context is set to the psf directory of these results. This is indicated by a green check mark on the name of results, as shown in the following figure. Navigate to a node that contains waveform data and right-click to select a plot mode (such as Append, Replace, New SubWin, New Win). For more details, refer to Virtuoso Visualization and Analysis User Guide. March 2015 © 1990-2015 671 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results When you load multiple results in the Results Browser, the psf directories of all the points are opened in the sequence of selection. The context is set to the psf that was selected last, as shown in the following figure. ■ On the Results tab of the Outputs pane, right-click any of the following and choose Direct Plot for a submenu of functions for plotting selected nets and terminals from your schematic. ❑ Right-click a test name in the Test column or a signal or waveform expression name in the Output column to direct plot across all the corners for a signal or waveform expression. ❑ Right-click a signal or waveform expression in the Nominal column to direct plot across the nominal corner. ❑ Right-click a signal or waveform expression in a corner column to direct plot across the corner. ■ On the Results tab of the Outputs pane, right-click a test name in the Test column or a signal or waveform expression name in the Output column or a single data point and choose Open Calculator. The Virtuoso Visualization and Analysis XL calculator window March 2015 © 1990-2015 672 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results is opened. The current context in this window is set to the psf directory of selected results data. Now, you can create expressions using the data point and plot outputs from calculator. See also ■ Chapter 11, “Selecting Data to Save and Plot” ■ “Selecting the Plot Mode” on page 627 March 2015 © 1990-2015 673 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Using Direct Plot You can use the direct plotting feature to plot a function from a set of one or more nets or terminals that you select on your schematic. Tip You need not wait for the simulation run to complete before using direct plotting. You can use direct plot for completed data points and corners even when the simulation run is in progress. To use direct plot, do the following: 1. Select the plot mode. For more information, see “Selecting the Plot Mode” on page 627. 2. On the Results tab of the Outputs pane, right-click on any of the following and choose Direct Plot. ❑ Right-click on a test name in the Test column or a signal or waveform expression name in the Output column to direct plot across all the corners for a signal or waveform expression. ❑ Right-click on a signal or waveform expression in the Nominal column to direct plot across the nominal corner. ❑ Right-click on a signal or waveform expression in a corner column to direct plot across the corner. A submenu of functions appears. Only those functions that apply to the current results are available for selection. 3. Select a function. If you have the prompt line turned on, you can read the prompt text for a hint about what you need to select. 4. In the schematic window, select one or more nets or terminals to plot using the function you selected. 5. Press Esc when you are done selecting. The selected nets or terminals are plotted in a waveform window according to the function you selected. If a waveform window was not already open, then one appears. If a waveform window was already open, then it appears in the foreground. March 2015 © 1990-2015 674 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Note: If the Add To Outputs check box is selected in the Direct Plot Form, expressions are added for the plotted results in the Outputs Setup tab of the Outputs pane. Re-evaluate the expressions to display the updated results in the Results tab of the Outputs pane. For more information about re-evaluating expressions, see Re-evaluating Expressions and Specifications. Here is a table of direct plot functions. Direct Plot Functions Function Main Form Transient Signal Transient Minus DC Transient Sum Transient Difference AC Magnitude AC dB10 AC dB20 AC Phase AC Magnitude & Phase AC Gain & Phase Equivalent Output Noise Equivalent Input Noise Description Opens the Direct Plot Form for specifying plotting mode, analysis, function, and modifier (see “Using the Direct Plot Main Form” in the Virtuoso Analog Design Environment L User Guide). Transient voltage or current waveforms Transient voltage or current waveforms without the DC offset Multiple signals added together and plotted; you are prompted for the signals Two signals subtracted (sig1- sig2) and plotted; you are prompted for two signals AC voltage or current gain waveform The magnitude on a decibel scale 10log(V1) The magnitude of selected signals on a decibel scale 20log(V1) AC voltage or current phase waveform The db20 gain and phase of selected signals simultaneously The differences between two magnitudes and two phases; you are prompted for two signals 20log(V2)-20log(V1) which is equivalent to 20log(V2/V1) Output noise voltage or current signals selected in the analysis form; the curve plots automatically and does not require selection Input noise waveform, which is the equivalent output noise divided by the gain of the circuit March 2015 © 1990-2015 675 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Direct Plot Functions, continued Function Squared Output Noise Squared Input Noise Noise Figure DC Description Squared output noise voltage or current signals selected in the analysis form; the curve plots automatically and does not require selection Input noise waveform, which is the equivalent output noise divided by the gain of the circuit squared Noise figure of selected signals according to the input, output, and source resistance DC sweep voltage or current waveform Printing Results To print text results and reports to the Results Display Window, do the following: 1. On the Results tab of the Outputs pane, right-click a test name and choose Print. A submenu of functions appears. Only those functions that apply to the current results are available for selection. 2. Select a function. If you have the prompt line turned on, you can read the prompt text for a hint about what you need to select. March 2015 © 1990-2015 676 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The Results Display Window appears. 3. In the schematic window, select one or more nets or terminals to plot using the function you selected. The values for the selected nets or terminals appear in the Results Display Window according to the function you selected. If a Results Display Window was not already open, then one appears. If a Results Display Window was already open, then it appears in the foreground. Note: See also “Specifying When to Print Results” on page 663. March 2015 © 1990-2015 677 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Here is a table of print functions. Print Functions Function Description DC Node Voltages Print DC node voltages of selected nodes Note: This function is available following a DC analysis. 1. In the schematic window, select one or more nodes. 2. Press Esc when you are finished selecting. DC Operating Points Print DC operating points of selected instances Note: This function is available following a DC analysis. 1. In the schematic window, select one or more instances. If you select an instance that is a subcircuit definition, the program prints operating points for all devices in the subcircuit. 2. Press Esc when you are finished selecting. Model Parameters Note: It may take some time to search for all instances in a subcircuit definition. To disable this feature, you can set the following environment variable in your .cdsenv file: asimenv.printing printInlines boolean nil Print model parameters of selected instances 1. In the schematic window, select one or more instances. If you select an instance that is a subcircuit definition, the program prints model parameters for all devices in the subcircuit. 2. Press Esc when you are finished selecting. Note: It may take some time to search for all instances in a subcircuit definition. To disable this feature, you can set the following environment variable in your .cdsenv file: asimenv.printing printInlines boolean nil March 2015 © 1990-2015 678 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Print Functions, continued Function Transient Node Voltages Note: This function is available following a transient analysis. Description Print transient node voltages of selected nodes The Select Time Value form appears when you select this function. Transient Operating Points Note: This function is available following a transient analysis. S-Parameter 1. In the Time field, type the time value for which you want to print transient node voltages. 2. Click OK. 3. In the schematic window, select one or more nodes. 4. Press Esc when you are finished selecting. Print final transient operating points of selected items 1. In the schematic window, select one or more instances or nodes. If you select an instance that is a subcircuit definition, operating point values for all devices in the subcircuit appear in the Results Display Window. 2. Press Esc when you are finished selecting. Note: It may take some time to search for all instances in a subcircuit definition. To disable this feature, you can set the following environment variable in your .cdsenv file: asimenv.printing printInlines boolean nil Print S-parameter data March 2015 © 1990-2015 679 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Print Functions, continued Function Noise Parameters Note: This function is available following a noise analysis. Description Print noise parameters of selected instances The Select Frequency Value form appears when you select this function. The default frequency is 1K. Noise Summary Note: This function is available following a noise analysis. DC Mismatch Summary Note: This function is available following a dcmatch analysis. Stability Summary Note: This function is available following a stability analysis. Pole Zero Summary Note: This function is available following a pole-zero analysis. 1. In the Frequency field, type the frequency value for which you want to print noise parameters. 2. Click OK. 3. In the schematic window, select one or more instances. 4. Press Esc when you are finished selecting. Opens the Noise Summary form so you can print noise contributions of selected instances See “Printing Noise Summary Information” on page 681 for more information. Opens the Dcmatch Summary form so you can print DC mismatch information for your design See “Printing DC Mismatch Summary” on page 688 for more information. Print phase margin and gain margin results for every combination of sweep variable values Opens the Pole-Zero Summary form so you can print pole-zero information for your design See “Printing Pole Zero Summary” on page 690 for more information. March 2015 © 1990-2015 680 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Print Functions, continued Function Sensitivities Note: This function is available following a sensitivity analysis. Description Print sensitivities 1. In the schematic window, select one or more nets or ports. 2. Press Esc when you are finished selecting. Printing Noise Summary Information To print noise contributions of selected instances, do the following: 1. On the Results tab of the Outputs pane, right-click a test name and choose Print – Noise S u m m a r y. The Noise Summary form appears. March 2015 © 1990-2015 681 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 2. Choose one of the following noise summary types: ❑ spot noise – Type a frequency in the Frequency Spot (Hz) field. ❑ integrated noise – Specify a range and weighting option. 3. In the FILTER group box, specify options to include or exclude devices types or instances. 4. (Optional) In the TRUNCATE & SORT group box, specify options to truncate and sort your noise summary data. 5. Click OK. The noise summary information you specified appears in the Results Display Window. See also “Controlling Precision of Printed Noise Data” on page 687. Specifying Options for Integrated Noise When you select integrated noise, the From (Hz) and To (Hz) fields become active and you can specify a weighting option. To specify options after selecting integrated noise, do the following: 1. In the From (Hz) field, type a starting value for the frequency range for the integration. 2. In the To (Hz) field, type an ending value for the frequency range for the integration. 3. Select one of the following weighting options: ❑ flat – The program integrates over the original unweighted waveform. ❑ from weight file – You can specify a file containing weight factors to apply to the noise contributions of particular frequencies prior to integrating. The file must contain one of the following entries as the first line: db, mag, dbl, DB, MAG, DBL. Each additional line must contain a pair of X and Y values. All the pairs together must define a function. For example: mag 1 .001641 60 .001641 100 .007499 200 .05559 4. Return to “Printing Noise Summary Information” on page 681. March 2015 © 1990-2015 682 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specifying Device Types and Instances to Include or Exclude Device types in your design appear in the list box in the FILTER group box. To specify which device types to include and which to exclude from the noise summary, do the following: 1. To include all device types in the summary, click All Types. 2. (Optional) To exclude individual device types, hold down the Ctrl key and click each one. Alternatively, you can do the following: 1. To exclude all device types from the summary, click None. 2. Select each device type you want to include in the summary: ❑ You can hold down the Shift key to select more than one contiguous device type. ❑ You can hold down the Ctrl key to select more than one noncontiguous device type. To specify instances to include in the noise summary, do the following: 1. To the right of the include instances field, click Select. 2. In the schematic window, select one or more instances. Each instance path appears in the include instances field. 3. Press Esc when you are finished selecting. To specify instances to exclude from the noise summary, do the following: 1. To the right of the exclude instances field, click Select. 2. In the schematic window, select one or more instances. Each instance path appears in the exclude instances field. 3. Press Esc when you are finished selecting. March 2015 © 1990-2015 683 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Truncating Noise Summary Data From the TRUNCATE & SORT group box on the Noise Summary form, you can select a truncation option to limit the number of noise contributors that appear in the Results Display Window when you click Apply or OK. To specify no truncation of noise data, do the following: ➤ Select none. All noise contributors appear in the noise summary report. To limit the number of noise contributors that appear in the summary, do the following: 1. Select by number. 2. In the top field, type the number of highest noise contributors you want to see. The program reports only that number of noise contributors. To limit the report to only those devices that contribute a certain percentage of the total noise, do the following: 1. Select by rel. threshold. 2. In the noise % field, type the minimum percentage noise contribution threshold. The program reports only those devices that contribute at least the minimum percentage of the total noise. To limit the report to only those devices that contribute a minimum level of noise, do the following: 1. Select by abs. threshold. 2. In the noise value field, type the minimum noise contribution threshold. The program reports only those devices that contribute at least the minimum noise value. Sorting Noise Summary Data From the TRUNCATE & SORT group box on the Noise Summary form, you can sort the list of devices that the program reports by noise contributors (highest to lowest), composite noise (highest to lowest), or device name (alphabetical from A to Z). The report appears in the Results Display Window when you click Apply or OK. March 2015 © 1990-2015 684 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results To request one or more sorted lists of noise contributors in your noise summary report, do the following: ➤ Select one or more of the following sort by options: ❑ noise contributors – Sorts devices by noise contribution, highest to lowest. March 2015 © 1990-2015 685 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ composite noise – Sorts devices by composite noise contribution, highest to lowest. March 2015 © 1990-2015 686 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ device name – Sorts devices by device name in alphabetical order from A to Z. You can select one, two, or three check boxes. The number of boxes you select determines the number of lists that appear in your Results Display Window when you click Apply or OK. Controlling Precision of Printed Noise Data You can control the precision of them noise data that you print by setting the following variable in your .cdsenv file: asimenv.noiseSummary digits int numberOfDigits where numberOfDigits is the number of digits to print. For example, to specify ten digits of precision, use the following setting: asimenv.noiseSummary digits int 10 The default value for this variable is 6. Alternatively, you can set this value for the current session using the following command in your CIW: March 2015 © 1990-2015 687 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results envSetVal("asimenv.noiseSummary" "digits" ’int 10) You can specify the number of digits to use when printing relative noise contributions by setting the following variable in your .cdsenv file: asimenv.noiseSummary percentDecimals int numberOfDigits where numberOfDigits is the number of digits to print. For example, to specify four digits for relative contributions, use the following setting: asimenv.noiseSummary percentDecimals int 4 The default value for this variable is 2. Alternatively, you can set this value for the current session using the following command in your CIW: envSetVal("asimenv.noiseSummary" "percentDecimals" ’int 4) You can control the precision of your printed results using the aelPushSignifDigits SKILL function as follows: aelPushSignifDigits(numDigits) where numDigits is the number of digits of precision you want. Example aelPushSignifDigits(4) rn 37.9322e-18 fn 0 37.9322e-18 aelPushSignifDigits(8) rn 37.932238e-18 fn 0 37.932238e-18 total total Printing DC Mismatch Summary To print the DC mismatch summary for your circuit, do the following: 1. On the Results tab of the Outputs pane, right-click a test name and choose Print – DC Mismatch Summary. Note: This menu option is available when you run a dcmatch analysis or when you select a test that has dcmatch analysis results. March 2015 © 1990-2015 688 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The Dcmatch Summary form appears. 2. In the Print results when value is field, type a value. Note: The Swept Parameter group box appears on the form only when you sweep a parameter through numeric values. 3. In the Filter group box, specify the device types you want to include in the summary. ❑ Click Include all types to include all device types. ❑ Click Include none to exclude all device types. March 2015 © 1990-2015 689 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Use the Include Instances and Exclude Instances fields to include and exclude specific instances. ❍ Type instance names in these fields. ❍ Click Select to select instances from the schematic. ❍ Click Clear to clear the fields. 4. In the Variations to Print group box, do the following: a. In the Device Type drop-down list, select a device type. b. In the list area below, select one or more variations for the selected device type. ❍ Click Include all columns to select all variations in the list area. ❍ Click Include none to clear your selection. 5. In the Truncate & Sort group box, select one of the following truncation methods: ❑ none – No truncation. ❑ by number – In the top field, type the number of top contributors you want to see. ❑ by relative threshold – In the threshold field, type a relative threshold value. ❑ by absolute threshold – In the mismatch field, type an absolute threshold value. 6. For Sort, select one or both of the following sorting methods: ❑ Output Variation ❑ Device Name Printing Pole Zero Summary To print the pole-zero summary for your circuit, do the following: March 2015 690 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 1. On the Results tab of the Outputs pane, right-click a test name and choose Print – Pole-Zero Summary. Note: This menu option is available when you run a pole-zero analysis or when you select a test that has pole-zero analysis results. The Pole-Zero Summary form appears. 2. Select one of the following options: ❑ Poles and Zeros if you want to plot both poles and zeros. ❑ Poles if you want to plot only poles. ❑ Zeros if you want to plot only zeros. 3. In the Filter Out group box, select zero or more of the following filtering mechanisms: ❑ Max Frequency This option enables you to filter out poles and zeros that are outside the frequency band of interest (FBOI) and that do not influence the transfer function in the FBOI. The default value is whatever appears in the fmax field on the Pole-Zero Options form. For the Direct Plot form, fmax is read from the header of the psf data. The program filters out any poles and zeros whose magnitudes exceed the frequency value you type in this field. ❑ Real Value This option enables you to specify the real part of the frequency. The program filters out any poles and zeros whose real values are less than or equal to the real value you type in this field. 4. Click OK. Pole-zero data appears in the Results Display Window according to the criteria you specified. March 2015 © 1990-2015 691 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Re-evaluating Expressions and Specifications After running a simulation, if you add, modify or delete output expressions or specifications on the Outputs Setup tab of the Outputs pane, you can re-evaluate the expressions and specifications without having to re-run the simulation. When output expressions or specifications are re-evaluated, the updated results are displayed in the Results tab of the Outputs pane. The results database is also automatically updated. Note: When you re-evaluate expressions and specifications, the updated results will not be plotted. For information about how to plot the results, see Plotting Results. Important If you re-evaluate expressions and specifications for an optimization run, costs are re-calculated for all the design points and a new best point is identified. If the Save all design points option was not selected in the Save Options form before running optimization, waveform data may not exist for the new best point. To re-evaluate expressions and specifications for the last run history, do one of the following: ■ Click on the Results tab of the Outputs pane to re-evaluate both expressions and specifications. ■ Click on the Results tab of the Outputs pane, and do one of the following: ❑ Select Expressions to re-evaluate expressions. ❑ Select Specifications to re-evaluate specifications. ❑ Select All to re-evaluate both expressions and specifications. ❑ Select Partial Data to re-evaluate both expressions and specifications using the paritally complete simulation data. You can use this option to evaluate the partial results if the simulation run could not complete due to some reason but there are significant results that can be used to analyze the results. For any output value that is evaluated on the partial data, the tooltip shows the text [Evaluated on partial data]. Similarly, you can re-evaluate the results for an older history item by viewing its results. To re-evaluate the results for an older history, do the following: 1. On the History tab of the Data View pane, right-click on a history name and choose View Results. The results of the history item are displayed on the Results tab of the Outputs pane. March 2015 © 1990-2015 692 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 2. Click on the Results tab of the Outputs pane, and do one of the following: ❑ Select Expressions to re-evaluate expressions. ❑ Select Specifications to re-evaluate specifications. ❑ Select All to re-evaluate both expressions and specifications. ❑ Select Partial Data to re-evaluate both expressions and specifications using the paritally complete simulation data. ADE XL uses the settings from the active setup to re-evaluate the results for the history item and the updated results are displayed on the Results tab. However, the settings specified by the following environment variables are also considered to decide how to re-evaluate and save the new results: ❑ confirmReEvaluationWhen ❑ reEvaluationAgeHoursThreshold ❑ reEvaluationRemovingOutputsThreshold ❑ reEvaluationWhenActiveAndHistoryTestsDiffer Note: By default, the reEvalOnlyMostRecentHistory environment variable is set to nil and you can re-evaluate the results for a recent as well as an older history. However, you can disable re-evaluatation of results for older history items by setting this variable to t. See also ■ Adding an Output Expression on page 404 ■ Modifying an Output Expression on page 419 ■ Chapter 15, “Working with Specifications” Saving and Restoring the Waveform Window Setup To save and restore the waveform window setup, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Save State. The Saving State form appears. 2. In the Save As field, type a name for the state you want to save. 3. In the What to Save group box, select the Waveform Setup check box. March 2015 © 1990-2015 693 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 4. Click OK. The program saves the waveform window setup to the state name you specified. To restore the saved settings, do the following: 1. On the Data View assistant pane, right-click the test or analysis name and choose Load State. The Loading State form appears. 2. Select a previously-saved state that contains waveform window setup information. 3. In the What to Load group box, select the Waveform Setup check box. 4. Click OK. The program loads the specified state information. March 2015 © 1990-2015 694 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Searching for Conditional Results Important You must run a DC operating-point analysis to use the circuit conditions capability. After running a simulation, you can search the results for components in the saturation region, breakdown region, or any user-defined region. To do a conditional search for results, do the following: 1. On the Results tab of the Outputs pane, right-click a test name and choose Circuit Conditions. The Circuit Conditions form appears: 2. In the Device Operating Conditions group box, specify device operating conditions. March 2015 © 1990-2015 695 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results You can choose to view components in the saturation (for BJT devices), linear (for MOS devices), or breakdown region. Note: The appropriate model parameters must be set for the simulator to calculate these conditions. These features might not be available for simulators other than Spectre. 3. In the User Defined Conditions group box, do the following: a. Use the cyclic and type-in fields to specify custom conditions. b. Click Add. 4. In the Results group box, do the following: ❑ (Optional) Click Place to highlight the instances that meet the specified conditions on the schematic. ❑ (Optional) Click Print to print the values of instances that meet the specified conditions in a print window. 5. Click Add. See also ■ Filtering Out Components by Model Name on page 697 ■ Sorting Components by Parameter Value on page 699 Note: Filters and sorting conditions are active only if you have selected either and or in the Boolean drop-down list at the bottom right corner of the User Defined Conditions group box on the Circuit Conditions form. March 2015 © 1990-2015 696 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Filtering Out Components by Model Name 1. On the Circuit Conditions Circuit Conditions form, click Options. The Circuit Conditions Options Form appears. 2. Select the Filter out Components by Model Name check box. 3. In the Component drop-down list, select a component type. 4. In the Model Name field, type a model name. 5. Click Add. The specified filter appears in the list box. Note: Filters are active only if you have selected either and or in the Boolean drop-down list at the bottom right corner of the User Defined Conditions group box on the Circuit March 2015 © 1990-2015 697 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Conditions form. The program filters out any components that match the filters and these components do not appear in the output when you click Print. To remove a filter, do the following: 1. In the list box, select one or more filters that you want to delete. 2. Click Delete. March 2015 © 1990-2015 698 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Sorting Components by Parameter Value 1. On the Circuit Conditions form, click Options. The Circuit Conditions Options Form appears. 2. Select the Sort Components by Parameter Value check box. 3. In the Component drop-down list, select a component type. 4. In the Param Name field, type a parameter name. 5. Click Add. The specified sort condition appears in the list box. Note: Sort conditions are active only if you have selected either and or in the Boolean drop-down list at the bottom right corner of the User Defined Conditions group box on the March 2015 © 1990-2015 699 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Circuit Conditions form. The program sorts the specified components by parameter name when you click Print. March 2015 © 1990-2015 700 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Comparing Results You can use the Spec Comparison form to compare measured values of output expressions for: ■ Any two history items. ■ Any two tests in the same history item or in two different history items. ■ Any two design points in the same history item or in two different history items. For more information, see the following topics: ■ Opening the Spec Comparison Form on page 702 ■ Comparing Results for History Items on page 705 ■ Comparing Results for Specific Tests on page 710 ■ Comparing Results for Specific Design Points on page 712 ■ Comparing the Detailed Results for Output Expressions on page 717 ■ Hiding and Showing the Comparison Data for Tests on page 720 ■ Hiding and Showing an Output Expression in the Spec Comparison on page 720 ■ Updating the Spec Comparison with the Latest Results on page 720 ■ Sorting Data in the Spec Comparison Form on page 720 ■ Saving a Spec Comparison on page 721 ■ Opening a Spec Comparison on page 721 ■ Deleting a Spec Comparison on page 721 ■ Exporting a Spec Comparison to a HTML or CSV File on page 721 March 2015 © 1990-2015 701 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Opening the Spec Comparison Form To open the Spec Comparison form, do one the following: ■ Choose Create – Spec Comparison. ■ Click the toolbar button on the ADE XL window. ■ Click the button on the Results tab. The Spec Comparison form appears. The toolbar in the Spec Comparison form is described in the following table: March 2015 © 1990-2015 702 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-8 Spec Comparison Toolbar Icon Name Description Back to Summary View Switches from the detail view to the summary view. For more information, see Comparing the Detailed Results for Output Expressions on page 717. Show Detail Displays the comparison of detailed results for the selected View output expression in the detail view. For more information, see Comparing the Detailed Results for Output Expressions on page 717. Select which tests are displayed in the table Hides or shows the comparison data for specific tests. For more information, see Hiding and Showing the Comparison Data for Tests on page 720. Show/Hide Setup Conditions Tables Hides or shows the Comparison Setup and Run Conditions group boxes in the Spec Comparison form. Name Name of Saved Spec Comparison Lets you do the following: ■ Specify the name by which a spec comparison is to be saved. For more information, see Saving a Spec Comparison on page 721. ■ Open an existing spec comparison. For more information, see Opening a Spec Comparison on page 721 Save Spec Saves the spec comparison with the name specified in the Comparison Name field. For more information, see Saving a Spec Comparison on page 721. Update with Latest Results Data Updates the spec comparison with the latest results from the history items selected for comparison. For more information, see Updating the Spec Comparison with the Latest Results on page 720. March 2015 © 1990-2015 703 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Icon Name Description Export to Exports a spec comparison to a HTML or comma-separated CSV or HTML values (CSV) file. File For more information, see Exporting a Spec Comparison to a HTML or CSV File on page 721. The fields in the Spec Comparison form are described in the following table: Field Comparison Setup Comparison Mode History Description Specifies the comparison mode. Do one of the following: ■ Select Histories to compare measured values of output expressions for: ❑ Any two history items. For more information, see Comparing Results for History Items on page 705. ❑ Any two tests in the same history item or in two different history items. For more information, see Comparing Results for Specific Tests on page 710. ■ Select Design Points to compare measured values of output expressions for any two design points in the same history item or in two different history items. You can compare two design points in the same test or in two different tests. For more information, see Comparing Results for Specific Design Points on page 712. Displays the history items for which you are comparing the measured values of output expressions. For more information, see Comparing Results for History Items on page 705. March 2015 © 1990-2015 704 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Field Test Point Run Conditions Parameter Value(s) Description Displays the tests in the history items for which you are comparing the results. For more information, see Comparing Results for Specific Tests on page 710. Displays the design points in the history items for which you are comparing the measured values of output expressions. This column is displayed only if the Design Points is selected in the Comparison Mode drop-down list. For more information, see Comparing Results for Specific Design Points on page 712. Displays the conditions that were used for the simulation run in the reference history item. The values of each swept parameter in the reference history item is displayed as a list or range of values. For example, if a parameter p is swept through a list of values x, y, and z, then the Value(s) column displays the values as p=x,y,z If a parameter p is swept through a range of values, the Value(s) column displays the values as p=startValue:increment:stopValue Displays the names of swept parameters. Displays the values of swept parameters. Comparing Results for History Items To compare results for history items, do the following: 1. From the Comparison Mode drop-down list, choose Histories. 2. The history item for which you are viewing the results in the Results tab is displayed as the default reference history item. Do one of the following to select a different reference history item: ❑ Double-click in the History column in the Reference row and select a different history item from the drop-down list. March 2015 © 1990-2015 705 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Click the Select Reference button, click the tab for the history item in the Results tab, then click anywhere on the results displayed for the history item. Note: The Spec Comparison form does not allow comparison of results of history items for optimization runs. So you cannot select history items for optimization runs when the comparison mode is Histories. 3. Do one of the following to select the history item whose results you want to compare with the reference history item. ❑ Double-click in the History column in the Other row and select the history item from the drop-down list. ❑ Click the Select Other button, click the tab for the history item in the Results tab, then click anywhere on the results displayed for the history item. Note: Earlier, in the Other row, you could select only that history item that has the same set of conditions (displayed in the Run Conditions field) as the reference history item. Starting IC 6.1.5, you can select a history with different run conditions, for example, different sweep values for variables. Tip After you click Select Other, you can select any number of history items in the Results tab without clicking the button again. For example, you can click the Select Other button and select a history item in the Results tab to view the results comparison. Once you are done, you can select another history item in the Results tab without clicking Select Other again. The comparison of results for the history items is displayed in the Spec Comparison form. March 2015 © 1990-2015 706 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-20 Spec Comparison for History Items Note: By default, the Spec Comparison form displays the comparison of results for all the tests in the reference and other history item. The text all in the Test column indicates that the results for all the tests will be compared. For information about viewing the spec comparison for specific tests, see Comparing Results for Specific Tests on page 710. The columns that are displayed in the Spec Comparison form when you compare the specifications for two history items are described in the following table. March 2015 © 1990-2015 707 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-9 Spec Comparison Columns for History Items and Tests Column Output Test Min Diff Min % Max Diff Max % Description Displays the names of output expressions for which the results are being compared. Note: Output expressions that evaluate to waveforms are not displayed in the Spec Comparison form. Lists the tests used to generate the results for the output expressions. Displays the minimum difference between the measured values across all the points in the two history items. Displays the percentage error between the two measured values in the history items for which the minimum difference is reported. Displays the maximum difference between the measured values across all the points in the two history items. Displays the percentage error between the two measured values in the history items for which the maximum difference is reported. March 2015 © 1990-2015 708 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column Comp Type Description Comparison type, selected from a drop-down list, that specifies how the results from the two history items are compared. Pass/fail criteria are as follows: ■ absolute—the absolute value of the difference in measured values for the two history items must be less than the tolerance specified. If absolute, the output expression will have a pass status if: abs(refHistoryValue - otherHistoryValue) < Tolerance ■ percentage—the absolute value of the difference in measured values for the two history items must be less than the tolerance multiplied by the absolute value of the measured value for the reference history item. If percentage, the output expression will have a pass status if: abs(refHistoryValue - otherHistoryValue) < abs(refHistoryValue * Tolerance) ■ range—the absolute value of the difference in measured values for the two history items must be less than the tolerance multiplied by the absolute value of the difference between the maximum and minimum measured values for the reference history item. If range, the output expression will have a pass status if: abs(refHistoryValue - otherHistoryValue) < abs(maxrefHistoryValue - minOtherHistoryValue) * Tolerance ■ absolute/percentage—the absolute value of the difference in measured values for the two history items must be less than the specified tolerance, or less than the tolerance multiplied by the absolute value of the measured value for the reference history item (see equations for absolute and percentage, above). This comparison type is useful for comparing measured values near zero. ■ none—does not apply the tolerance to determine pass/fail criteria. The pass/fail status will also not be displayed in the Pass/Fail column. March 2015 © 1990-2015 709 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column Tolerance Pass/Fail Description Specifies the tolerance value that determines the pass or fail status of the output expression. Note: Specify a positive value if the comparison type is absolute or range, and a positive percentage if the comparison type is percentage. Displays the pass or fail status of the output expression based on the specified comparison type and the tolerance. See also: ■ Comparing the Detailed Results for Output Expressions on page 717 ■ Hiding and Showing the Comparison Data for Tests on page 720 ■ Hiding and Showing an Output Expression in the Spec Comparison on page 720 ■ Updating the Spec Comparison with the Latest Results on page 720 ■ Sorting Data in the Spec Comparison Form on page 720 ■ Exporting a Spec Comparison to a HTML or CSV File on page 721 Comparing Results for Specific Tests By default, the Spec Comparison form displays the comparison of measured values of output expressions for all the tests in the reference and other history item. The text all in the Test column indicates that the results for all the tests will be compared. You can compare the results for any two tests in the same history item or in two different history items. To compare the results for specific tests, do the following: 1. Select the reference and other history item by performing steps 1 to 3 described in Comparing Results for History Items on page 705. Note: To compare the results for any two tests in the same history item, select the same history item as the reference and other history item. 2. Double-click in the Test column in the Reference row and select a test name for the reference history item from the drop-down list. March 2015 © 1990-2015 710 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 3. Double-click in the Test column in the Other row and select a test name for the other history item from the drop-down list. The comparison of results for the tests is displayed in the Spec Comparison form. Figure 14-21 Spec Comparison for Tests The columns that are displayed in the Spec Comparison form when you compare the specifications for two tests are described in Table 14-9 on page 708. When you compare results of different tests in two history items, the Test column shows the names of both the referenced test and the other test, as shown below. March 2015 © 1990-2015 711 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Figure 14-22 Spec Comparison for Different Tests See also: ■ Comparing the Detailed Results for Output Expressions on page 717 ■ Hiding and Showing an Output Expression in the Spec Comparison on page 720 ■ Updating the Spec Comparison with the Latest Results on page 720 ■ Sorting Data in the Spec Comparison Form on page 720 ■ Exporting a Spec Comparison to a HTML or CSV File on page 721 Comparing Results for Specific Design Points By default, the Spec Comparison form displays the comparison of measured values of output expressions for all the design points in the reference and other history item. You can compare the results for any two design points in the same history item or in two different history items. To compare the results for specific design points, do the following: 1. From the Comparison Mode drop-down list, choose Design Points. March 2015 © 1990-2015 712 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 2. Select the reference and other history item by performing steps 2 and 3 described in Comparing Results for History Items on page 705. 3. By default, the Spec Comparison form displays the comparison of results for design points in all the tests in the reference and other history item. To compare the results for design points in specific tests, select the tests by performing steps 2 and 3 described in Comparing Results for Specific Tests on page 710. 4. By default, the ID of the first design point is displayed as the default design point for the reference history item. If the reference history item is for an optimization run, the ID of the best design point in the reference history item is displayed as the default point for the reference history item. Do one of the following to select a different design point for the reference history item: ❑ Double-click in the Point column in the Reference row and specify a different design point. ❑ Click on the Select Reference button and click on the results for a specific design point for the history item in the Results tab. The following figure shows an example of selecting design point 2 for comparing results by clicking on the results for design point 2. Results for design point 1 Results for design point 2 5. Do one of the following to select a design point for the other history item: March 2015 © 1990-2015 713 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Double-click in the Point column in the Other row and select a design point for the other history item from the drop-down list. ❑ Click on the Select Other button and click on the results for a specific design point for the history item in the Results tab. Tip After you click Select Other , you can select any number of design points in the Results tab without clicking the button again. For example, you can click the Select Other button, and select a design point in the Results tab to view the results comparison. Once you are done, you can select another design point in the Results tab without clicking Select Other again. The comparison of results for the design points is displayed in the Spec Comparison form. Figure 14-23 Spec Comparison for Design Points The columns that are displayed in the Spec Comparison form when you compare the results for two design points are described in the following table. March 2015 © 1990-2015 714 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-10 Spec Comparison Columns for Design Points Column Output Test Spec Nominal (Reference) Nominal (Other) Description Displays the names of output expressions for which the results are being compared. Note: Output expressions that evaluate to waveforms are not displayed in the Spec Comparison form. Lists the tests used to generate the results for output expressions. Displays specification information. Displays the status and measured value for expressions at the nominal corner in the reference history item. The color of a cell indicates the status of the result with respect to the specification: ■ Green indicates a value within the specifications. ■ Yellow indicates a value that is no more than 10% outside the target value of the specification. ■ Red indicates a value that is more than 10% outside the target value of the specification. Displays the status and measured value for expressions at the nominal corner in the other history item. March 2015 © 1990-2015 715 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column % Error cornerName (Reference) cornerName (Other) Description Displays the status (using arrow icons) and percentage error of the measured values at the nominal corner in the other history item relative to the values in the reference history item. The arrow color indicates how well the specification is satisfied by the value in the other history item relative to the value in the reference history item. A green arrow indicates that the value in the other history item more effectively meets the specification relative to the reference history item, whereas a red arrow indicates that the value in the other history item is less effective at meeting the specification. The arrow direction indicates the magnitude of the value in the other history item relative to the value in the reference history item. An up arrow indicates that the value in the other history item is higher relative to the reference history item, whereas a down arrow indicates that the value in the other history item is lower. For example, the icon indicates that the value in the other history item more effectively meets the specification and has a higher value relative to the value in the reference history item. Displays the status and measured value for expressions at each corner in the reference history item. The color of a cell indicates the status of the result with respect to the specification: ■ Green indicates a value within the specifications. ■ Yellow indicates a value that is no more than 10% outside the target value of the specification. ■ Red indicates a value that is more than 10% outside the target value of the specification. Displays the status and measured value for expressions at each corner in the other history item. March 2015 © 1990-2015 716 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Column % Error Description Displays the status (using arrow icons) and percentage error of the measured values at the corner in the other history item relative to the values in the reference history item. The arrow color indicates how well the specification is satisfied by the value in the other history item relative to the value in the reference history item. A green arrow indicates that the value in the other history item more effectively meets the specification relative to the reference history item, whereas a red arrow indicates that the value in the other history item is less effective at meeting the specification. The arrow direction indicates the magnitude of the value in the other history item relative to the value in the reference history item. An up arrow indicates that the value in the other history item is higher relative to the reference history item, whereas a down arrow indicates that the value in the other history item is lower. For example, the icon indicates that the value in the other history item more effectively meets the specification and has a higher value relative to the value in the reference history item. See also: ■ Comparing the Detailed Results for Output Expressions on page 717 ■ Hiding and Showing an Output Expression in the Spec Comparison on page 720 ■ Updating the Spec Comparison with the Latest Results on page 720 ■ Sorting Data in the Spec Comparison Form on page 720 ■ Exporting a Spec Comparison to a HTML or CSV File on page 721 Comparing the Detailed Results for Output Expressions You can compare the detailed results for output expressions when the Histories option is selected in the Comparison Mode drop-down list. To compare the detailed results for an output expression, do one of the following: ■ Select the row for the output expression and click the button. March 2015 © 1990-2015 717 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ■ Double-click on the row for the output expression. ■ Right-click on the row for the output expression and choose Show Detail View. The comparison of the detailed results are displayed in the detail view. Note: You cannot compare the detailed results for an output expression if the reference or other history item does not exist. Figure 14-24 Spec Comparison Detailed View The columns in the detail view in the Spec Comparison form are described in the following tables. March 2015 © 1990-2015 718 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Table 14-11 Columns in Table on Left Side of Spec Comparison Detailed View Column Point Corner paramName Description Displays the design point number. Displays the name of the corner. Displays the values of swept parameters at each design point. Table 14-12 Columns in Table on Right Side of Spec Comparison Detailed View Column Description exprName Displays the measured value for the expression in the reference (referenceHistory history item at each design point. Name) exprName Displays the measured value for the expression in the other (otherHistoryName history item at each design point. ) Difference Displays the difference between the measured values for the expression in the reference history item and the other history item. % Error Pass/Fail Displays the percentage error of the measured values for the expression in the other history item relative to the values in the reference history item. Displays a pass, near or fail status for the specification. ■ pass means that all the measured values are within the limits defined by the specification. ■ near means that the measured values are no more than 10% outside the target value of the specification. ■ fail means that the measured values are greater than 10% outside the target value of the specification. To go back to the summary view, do one of the following in the detail view: ■ Click the button. ■ Right-click on any row and choose Go back. March 2015 © 1990-2015 719 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Hiding and Showing the Comparison Data for Tests By default, the Spec Comparison form displays the comparison data for all the tests in the reference and other history item. Click the button. A check mark next to a test indicates that data for that test is being displayed. To hide the comparison data for a test, do the following: ➤ Click the button and choose the test. To unhide the data click the button once again and choose the test. Hiding and Showing an Output Expression in the Spec Comparison To hide an output expression in the Spec Comparison form, do the following. ➤ Right-click on the row for the output expression and choose Hide Selected Rows. To hide the rows for multiple output expressions, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection), right-click and choose Hide Selected Rows. To display all the output expressions in the Spec Comparison form, do the following: ➤ Right-click on any row and choose Show All Hidden Rows. Updating the Spec Comparison with the Latest Results To update the spec comparison with the latest results from the history items selected for comparison, do the following: ➤ Click the button. Note: You cannot update the spec comparison with the latest results if the reference or other history item does not exist. Sorting Data in the Spec Comparison Form To sort data in the Spec Comparison form, do the following: ➤ Click on the name of the column based on which you want to sort the data. March 2015 © 1990-2015 720 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Saving a Spec Comparison To save a spec comparison, do the following: 1. In the Name field, type a name for the spec comparison. 2. Click the button. The spec comparison is saved to the documents folder of the ADE XL view and displayed in the Documents tree on the Data View pane. For more information about working with documents, see Chapter 18, “Working with Documents.” Note: The spec comparison file is saved with the .speccomparison extension. Opening a Spec Comparison To open an existing spec comparison, do one of the following: ■ In the Name cyclic field on the Spec Comparison form, select the spec comparison. ■ In the Documents tree on the Data View pane, double-click on the spec comparison. The spec comparison is displayed in the Spec Comparison form. Deleting a Spec Comparison To delete an existing spec comparison, do the following: ➡ In the Documents tree on the Data View pane, right-click the spec comparison and choose Delete. The spec comparison will not be displayed in the Name drop-down list in the Spec Comparison form. Exporting a Spec Comparison to a HTML or CSV File You can export the spec comparison data displayed in the Spec Comparison form to a HTML or comma-separated values (CSV) file. March 2015 © 1990-2015 721 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Tip You can hide the spec comparison data you do not want to export to the HTML or CSV file. For more information on hiding spec comparison data, see the following topics: ❑ Hiding and Showing the Comparison Data for Tests on page 720 ❑ Hiding and Showing an Output Expression in the Spec Comparison on page 720 To export a spec comparison to a HTML or CSV file, do the following: 1. Click the button. The Export Results form appears. 2. In the File name field, type a file name with the .html, .htm or .csv extension. 3. Click Save. The program exports the results to the file you specified. By default, the file is saved in the documents folder of the ADE XL view and displayed in the Documents tree on the Data View pane. For more information about working with documents, see Chapter 18, “Working with Documents.” Note: If you click the button in the detail view, the resulting HTML or CSV file contains the contents of the detail view and summary view. March 2015 © 1990-2015 722 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Saving Results To save results for specific tests, do the following: 1. On the Results tab of the Outputs pane, right-click a test name and choose Save. The Save Results form appears. 2. (Optional) By default, the results are saved to a directory named schematic-save. To use a different directory name, type the directory name in the Save As field. 3. (Optional) In the Comment field, type a comment so that you can more easily differentiate simulation results. 4. Enter the path to the directory where you want to save the results. Alternatively click the browse button to specify the directory. 5. Click OK. To save results for all tests, do the following: 1. Click the button on the Results tab of the Outputs pane. The Save Results form appears. 2. Enter the path to the directory where you want to save the results. Alternatively click the browse button to specify the directory. 3. (Optional) Select the Copy PSF Results? check box if you want to copy PSF results. 4. Click OK. March 2015 © 1990-2015 723 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Working in the Results Display Window The Results Display Window appears automatically when you right-click a test name on the Results tab of the Outputs pane and choose an item from the Print submenu. Using the menus in the Results Display Window, you can perform the following tasks: ■ Printing Results from the Results Display Window on page 725 ■ Saving Results Display Window Setup Information on page 726 ■ Loading Results Display Window Setup Information on page 726 ■ Updating Results in the Results Display Window on page 727 ■ Clearing the Results Display Window on page 727 ■ Making a Window Active on page 727 ■ Closing a Results Display Window on page 727 ■ Editing Expressions on page 728 ■ Setting Results Display Options on page 730 ■ Displaying Untruncated Output Information on page 732 March 2015 © 1990-2015 724 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Printing Results from the Results Display Window To print results from the Results Display Window, do the following: 1. Choose Window – Print. The Print form appears. 2. In the Print from window drop-down list, verify that the number from the lower left corner of the Results Display Window appears. 3. In the Number of Characters Per Line field, type an integer number of characters you want printed on each line. 4. Select one of the following Print To options: ❑ Printer – In the Command field, type a valid printer command. ❑ File – In the File Name field, type a file name. 5. Click OK. The program prints the contents of your Results Display Window to a file or printer. March 2015 © 1990-2015 725 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Saving Results Display Window Setup Information You can save your current Results Display Window setup (such as printing format, setting a printing range if the amount of data is too large, printing at a certain interval, sorting) to a file so that you can load it again after running another simulation. The saved setup information determines how the program displays your results. Note: You can only save setup information for expressions that can evaluate to waveforms: If you print a single number, like a node voltage, the Save State command is not active. To save the contents and format of a Results Display Window, do the following: 1. Choose Window – Save State. The Save Window form appears. 2. In the empty field, type a file name. 3. Click OK. The program saves the setup of your current Results Display Window. Loading Results Display Window Setup Information To load a Results Display Window state that you previously saved, do the following: 1. Choose Window – Load State. The Load Window form appears. 2. In the empty field, type the name of the saved window state file. 3. Click OK. March 2015 726 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The program loads the specified window state file. Updating Results in the Results Display Window To update the Results Display Window with results from a new simulation, do the following: ➤ Choose Window – Update Results. The program uses the current window setup when updating the results data. The program updates only results data that can evaluate to a waveform: This command is not active for updating single-number data (such as a node voltage). Clearing the Results Display Window To clear the results from the Results Display Window, do the following: ➤ Choose Window – Clear. The program clears the Results Display Window. Making a Window Active There is no limit to the number of Results Display Windows you can have open, but only one is active at a time. The program writes printed results to the active window. To make a window active, do the following: ➤ Choose Window – Make Active. The word Active appears beneath the menu bar in the Results Display Window. Closing a Results Display Window To close a Results Display Window, do the following: ➤ Choose Window – Close. The Results Display Window closes. March 2015 © 1990-2015 727 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Editing Expressions You can edit any expressions that evaluate to waveforms (such as DC operating point, transient operating point, and model parameters). If you print only one value, the Edit menu choices are not active. The editing commands operate only on the last table in the active Results Display Window. To edit expressions in the currently active Results Display Window, do the following: 1. Choose Expressions – Edit. The Edit form appears. 2. Using the buttons and fields on the form, edit the expressions you want to edit. When more than one expression appears in the window, you must select the expression you intend to edit. Expressions If you specified an optional aliased name for the expression, that name appears in the edit field to the left of the equal sign. Otherwise, that field is blank. The expression appears in the edit field to the right of the equal sign. March 2015 © 1990-2015 728 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Specify Add Change Delete Undelete Move Up Move Down Sort Reverse Sort Clear Sort Clear Selection Retrieves the expression from the calculator buffer into the edit field. Note: If you click Specify when there is no expression in the buffer, the Calculator window appears so that you can create an expression. Adds the expression from the edit field to the list box and as a column in your Results Display Window. If you specified an optional name, this name appears in the list box and as the column heading. Replaces the selected expression in the list box with the one in the edit field and its values in the Results Display Window. Removes the selected expression from the list box and its column from the Results Display Window. Undoes the last Delete action. Moves the selected expression up one position in the list box and its column over one to the left in the Results Display Window. If the selected expression is already at the top of the list, it moves (wraps around) to the bottom and its column moves (wraps around) to the rightmost side. Moves the selected expression down one position in the list box and its column over one to the right in the Results Display Window. If the selected expression is already at the bottom of the list, it moves (wraps around) to the top and its column moves (wraps around) to the leftmost side. Sorts the values of the selected expression (which appear in the Results Display Window) such that they increase down the column (smallest value on top). Sorts the values of the selected expression (which appear in the Results Display Window) such that they decrease down the column (largest value on top). Reverts to the default sort order (alphabetical by parameter name). Clears the selection in the list box. Note: You can also clear a selection by clicking it while holding down the Control key. March 2015 © 1990-2015 729 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 3. Click OK when you are finished editing. Note: See also “Saving Results Display Window Setup Information” on page 726. Setting Results Display Options Tip The Results Display Window may contain more than one type of results. Display options settings apply only to the last result (if the last result can evaluate to a waveform). After you edit the data, only the last results appear in the window. You can preserve the previous results by opening a new Results Display Window and printing the results you want to edit in the new window. To change the results display options in the currently active Results Display Window, do the following: 1. Choose Expressions – Display Options. The Display Options form appears. 2. Use the fields and buttons on the form to specify one or more of the following display options: Step Specifies one of the following scales for the step size: ■ Linear ■ Log March 2015 © 1990-2015 730 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Size Display from, to Format Column Width Column Spacing Number of Significant Digits Specifies the interval for printing data using the Step scale specified above. Specifies the range of data to print. If you leave the Display from field blank, the program uses the beginning of the data as the Display from value. If you leave the to field blank, the program uses the end of the data as the to value. Note: You can set the print range only after printing data. Specifies one of the following formats for the printed data: ■ Engineering Suffix (default) If you select Engineering Suffix, the program represents 0.0001 as 0.1m. ■ Engineering If you select Engineering, the program represents 0.0001 as 0.1e-3. ■ Scientific If you select Scientific, the program represents 0.0001 as 1e-4. Specifies the number of characters allowed for column width. You can specify a number from 4 to 20. The default width is 14 characters. Specifies the number of blank spaces the program uses to separate columns. You can specify a number from 1 to 10. The default spacing is 4. Specifies the number of significant digits the program uses when printing results data. You can specify a number from 2 to 10. The default is 4 digits. March 2015 © 1990-2015 731 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Displaying Untruncated Output Information When output names are too long to fit into columns in the Results Display Window, the program truncates them. To see untruncated output names, do the following: ➤ In the Results Display Window, choose Info – Show Output. The Show Output window appears. If you have more than one output in your Results Display Window, only the last one appears in the Show Output window. March 2015 © 1990-2015 732 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Exporting Results to a HTML or CSV File To export results to a HTML or comma-separated values (CSV) file, do the following: Tip To customize the results that are exported to the HTML or CSV file, you can do the following: ❑ Hide the data for which you do not want to export results. For more information, see Hiding and Showing Data on the Results Tab on page 606. ❑ Hide columns in the Detail - Transpose view. For more information, see Hiding and Showing Columns in the Detail - Transpose View on page 622. ❑ Hide the results for the tests for which you do not want to export results. For more information, see Hiding and Showing Results for Tests on page 612. ❑ Only the data displayed in the Results tab is exported to the HTML or CSV file. By default, the Results tab displays the best 10 design points from the simulation run. To display more design points in the Results tab, use the numberOfBestPointsToView environment variable. For more information, see numberOfBestPointsToView on page 987. ❑ By default, results are exported to CSV files in the scientific notation format. Set the exportPreserveScalingFactors environment variable to export results in the same format as they are displayed in the Results tab to the CSV file. 1. On the Results tab of the Outputs pane, click the button. The Export Results form appears. 2. In the File name field, type a file name with the .html, .htm or .csv extension. 3. Click Save. The program exports the results to the file you specified. By default, the file is saved in the documents folder of the ADE XL view and displayed in the Documents tree on the Data View pane. For more information about working with documents, see Chapter 18, “Working with Documents.” March 2015 © 1990-2015 733 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Using SKILL to Display Tabular Data You can use the SKILL language for queries to request other kinds of simulation results, to build output format macros, and to automate test and result reporting sequences. The syntax for queries is shown at the beginning of the line in the Results Display window. To display… Type this command in the CIW A list of operating-point parameter names and their values OP("/R1","??") for R1 A list of just the operating-point parameter names for R1 OP("/R1","?") A single operating-point parameter (v for voltage, for example) and its value for R1 OP("/R1","v") A list of transient operating-point parameter names and their OPT("/C1","??") values for C1 A list of just the transient operating-point parameter names OPT("/C1","?") for C1 A single transient operating-point parameter (i for current, OPT("/C1","i") for example) and its value for C1 A list of model parameter names and their values for Q1 MP("/Q1","??") A list of just the model parameter names for Q1 MP("/Q1","?") A single model parameter (is for saturation current, for MP("/Q1","is") example) and its value for Q1 Noise parameter information for a device with only one noise parameter (a resistor R4, for example) VNP("/R4") A list of noise parameter names for a device with more than VNPP("/D24","??") one noise parameter (a device D24, for example) and their values A list of just the noise parameter names for a device with VNPP("/D24","?") more than one noise parameter (a device D24, for example) A single noise parameter (rs for saturation resistance, for VNPP("/D24","rs") example) and its value for a device with more than one noise parameter (a device D24, for example) March 2015 © 1990-2015 734 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Annotating Simulation Results Video You can view video demonstration for this feature at Result Annotation Flow Enhancement in Virtuoso. You can annotate the schematic to show parameters, operating points, net names, and voltages of individual design components from the results displayed on the Results tab of the Outputs pane. Results can be displayed by performing any one of the following actions: ■ Run a simulation. ■ View results. To annotate results to the schematic, do the following: 1. On the Results tab of the Outputs pane, right-click a data point and choose Annotate. A submenu of items that you can annotate appears. Only those items for which you have annotation data are active on the submenu. March 2015 © 1990-2015 735 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 2. Select the required item from the Annotate submenu. The following table describes each submenu item: Annotate Submenu Item DC Node Voltages DC Operating Points Model Parameters Transient Node Voltages Description The program annotates your design schematic with DC node voltage values. The program annotates your design schematic with DC operating point data. The program annotates your design schematic with enabled model parameter values. The Annotating Transient Results form appears. Transient Operating Points Net Names Component Parameters Design Defaults 1. In the Time field, type the transient time point. 2. Click OK. The program annotates your design schematic with transient node voltage values from the specified simulation time point. The program annotates your design schematic with operating point data for the given time point. The program annotates your design schematic with net names. The program annotates your design schematic with component parameters. The program restores the annotations on your design schematic from the CDF. March 2015 © 1990-2015 736 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Annotate Submenu Item Show Parasitics Hide Parasitics Setup Description The program shows or hides parasitics when you descend (Edit – Hierarchy – Descend Edit) into the schematic view of a cell you simulated using its extracted view—(out of context) appears in the title bar Note: These submenu items are available only when you have DC operating point results. These submenu items also appear on the Parasitics menu on the main menu bar. The Annotation Setup form appears. You can configure the annotation settings in the design. For more information, see Using Annotation Setup Form section in the Virtuoso Schematic Editor L User Guide. To save the annotation settings, choose File – Save from the Annotation Setup form. For more information on saving the annotation settings, see Saving Annotation Settings section in the Virtuoso Schematic Editor L User Guide. Using Annotation Balloons for Annotation After running a simulation or viewing the results, you can annotate the simulation results from different data points using the annotation balloons on the schematic canvas. You can set multiple data points for annotations from different data points from a history and from different histories. The annotated data is displayed in the tabular form on the annotation balloons. As a result, you can compare and debug data from multiple data points. To annotate data points on the annotation balloons, do the following: 1. On the Results tab of the Outputs pane, right-click a data point and choose Annotation Balloons. A submenu of options appears. March 2015 © 1990-2015 737 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results 2. Select an available option from the Annotation Balloons submenu: Annotate Submenu Item Description Add Point(s) to Balloons Adds the values of the selected data point to the existing data on the annotation balloon and displays the data in a tabular form. Replace Point(s) in Balloons Replaces the value of the last selected data point with the existing data on the annotation balloon. Annotation balloons are displayed when you move the cursor over any instance on the schematic. When you add multiple data points for annotation, the values of the last selected data point are annotated on the schematic as well as displayed on annotation balloons. As a result, the last selected data point result is highlighted in different color on annotation balloon to differentiate from the other data point results. In the annotation balloon, the color of the data point annotated on canvas appears yellow when the transparency is set from 21 to 65; and orange when the transparency is set from 0 to 20, or from 66 to 100. You can change the color settings of the annotation balloon using the Annotation Balloon Options. The annotation balloon shows the following information in the tooltip of the column header, when displaying information for multiple data points: ❑ Test name ❑ History name ❑ Data point ID ❑ Sweep parameters The header of the annotation balloon shows the following information: ❑ Design point ID March 2015 © 1990-2015 738 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ❑ Corner name Specifying the Data Directory for Labels To specify the simulation data directory (run directory) for labels, do the following: 1. In the schematic window, choose View – Annotations – Setup. March 2015 © 1990-2015 739 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results The Annotation Setup form appears. 2. In the Simulation Data Directory field, type the path to the simulation run directory. 3. Click OK. Note: You do not need to use this form if March 2015 © 1990-2015 740 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results ■ The analog circuit design environment is active and you have specified the correct directory as the run directory ■ You used the Results Browser to select results for the current schematic ■ The most recent simulation you ran was for this schematic Viewing Results from the Data View Pane You can view results from various checkpoints listed in the History tab of the Data View pane. See “Viewing Results from a Particular Checkpoint” on page 864 for more information. March 2015 © 1990-2015 741 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results Results Tab Right-Click Menus When you right-click a test name on the Results tab of the Outputs pane, a context-sensitive menu appears. The items on the context-sensitive menu depend on the simulator: For Spectre For UltraSim For AMS For the Spectre circuit simulator, the following items appear on the RF submenu: March 2015 © 1990-2015 742 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results For the UltraSim and AMS circuit simulators, the following items appear on their respective Advanced Analysis Results submenus: For UltraSim For AMS March 2015 © 1990-2015 743 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Viewing, Plotting, and Printing Results When you right-click an output on the Results tab of the Outputs pane, the following context-sensitive menu appears: March 2015 © 1990-2015 744 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 15 Working with Specifications You define performance specifications on the Outputs Setup tab of the Outputs pane. After simulation, the program displays information so that you can see whether your design met, nearly met, or failed to meet your performance specifications. You can view specification (spec) results from one or more history items (checkpoints) on the Results tab of the Outputs pane. You can select which measurement result for which corner or sweep to display. The program displays specification information such as the corner or sweep name, the analysis name, the measurement name, the conditions, the minimum or maximum values. You can view the spec for each measurement along with information about whether each spec passed or failed. You can create a summary report of pass/fail results. You can control the format for each specification such that the program uses particular units or engineering or scientific notation when displaying each spec. You can sort by measurement name and export your spec sheet to a comma-separated values file. See the following topics for details: ■ Working with Specifications on page 746 ■ Working with the Specification Summary on page 796 ■ Defining Operating Region Specifications on page 757 March 2015 © 1990-2015 745 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Working with Specifications The outputs of type Expression, OCEAN Script, MATLAB Script, Area Goal, Device Check or Op Region Spec that are added in the Outputs Setup tab of the Outputs pane are called measurements. You can define a performance specification for a measurement in the Spec column on the Outputs Setup tab of the Outputs pane or in the Override Specifications form. By default, the specification defined for a measurement applies to all the corners enabled for the test. You can override the measurement specification for a corner or disable the corner specification. For more information, see the following topics: ■ Defining a Specification on page 747 ■ Using Variables in Specifications on page 748 ■ Overriding the Measurement Specification for a Corner on page 750 ■ Undoing a Corner Specification Override on page 755 ■ Disabling and Enabling Corner Specifications on page 756 ■ Defining Operating Region Specifications on page 757 ■ Viewing Specification Results in the Results Tab on page 783 ■ Viewing Operating Region Violations on page 787 ■ Migrating Operating Region Specifications from IC6.1.4 to IC6.1.5 on page 795 March 2015 © 1990-2015 746 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Defining a Specification To define a specification for a measurement on the Outputs Setup tab, do the following: 1. On the Outputs Setup tab of the Outputs pane, double-click in the Spec column. The Spec cell has two parts: a specification type (which you select from a drop-down list) and a target value. Specification Type Specification Target Value 2. In the drop-down list that appears in the left half of the cell, select one of the following specification types and fill in the right half of the cell with an appropriate target information as indicated: Table 15-1 Specification Types Objective minimize maximize < > range tol info Target Description targetValue Minimize the result; optional target value targetValue Maximize the result; optional target value targetValue The result must be less than the target value targetValue The result must be greater than the target value lowerBound upperBound The result must fall between the boundary values targetValue The result must be within the specified percentageDev percentage deviation of the target value iation Choose this setting when you want the measured value to appear but there is no target value or performance objective to meet Note: A target specification value can be specified in the form of constant values or expressions using global variables or other other output names. For more details, refer to Using Variables in Specifications. March 2015 © 1990-2015 747 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 3. (Optional) In the Weight column next to the specification, specify the weighting factor for the specification. Using Variables in Specifications The target values for specifications can be specified as a constant or an expression using variables. In case the value is specified as an expression, the evaluated value of the expression is compared with the output value to identify the pass or fail status. By using expressions in specifications, you can vary the specifications across sweep points. Note: Currently, only the Single Run, Sweeps, and Corners and Monte Carlo run modes support expressions in specification target values. The expressions can be created for specification target values in any of the following ways: ■ By creating calculator expressions, as shown in the following example. Note that the field for specification value is a multiline text field that is expanded automatically to accomodate the complete expression. ■ Using global variables: You can create an expression that refers to a global variable using the VAR function. For example, is the ADE XL setup has a global variable maxLimit, you can specify a specification value as VAR("maxLimit"). ■ Using other outputs: You can use the name of another output expression in the specification value. ■ Using the outputs of other tests: For this, you can use the calcVal function to refer to the output of another test in the same ADE XL setup. For example, specification value for an output of Test2 can be defined as calcVal("tdcd" "Test1"), where it is referring to output tdcd of Test1. ■ Using a SKILL or OCEAN script. For this, you can add the SKILL or OCEAN code in the Spec column. Alternatively, you can create a separate output with a SKILL or OCEAN script. Result of that output can be referred in the expression for a specification type. Important Points to Note ■ In case of an overridden specification, a corner can use only a constant value as an overridden target value. You cannot specify an overridden expression different from that specified for the global target value. March 2015 © 1990-2015 748 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications ■ For a history checkpoint, you can change a constant specification value to an expression and re-evaluate the results. ■ Spec markers are not supported for the specifications with expressions. Also see: Viewing Specification Results in the Results Tab. March 2015 © 1990-2015 749 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Overriding the Measurement Specification for a Corner By default, the specification defined for a measurement applies to all the corners enabled for the test. For example, assume that the nominal corner and two corners named C0 and C3 are enabled for a test named myTest. If you define a measurement named Gain_commonMode for the test, the specification for the Gain_commonMode measurement applies to the nominal corner and to corners C0 and C3. For example, in the following figure, the specification <550m for the Gain_commonMode measurement applies to all the corners displayed in the Corner column. If you modify the specification for a measurement in the Outputs Setup tab of the Outputs pane or in the Global Spec field on the Override Specifications form, the change will apply to all the corners selected for the test. For example, the following figure indicates that when March 2015 © 1990-2015 750 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications the specification for the Gain_commonMode measurement is changed from <550m to <600m, the change is applied to all the corners displayed in the Corner column. You can override the measurement specification for a corner by specifying a different specification for the corner. To define a specification for a measurement in the Override Specifications form, do the following: 1. Right-click on the row for a measurement in the Outputs Setup tab of the Outputs pane and choose Override Specifications from the context-sensitive menu. March 2015 © 1990-2015 751 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications The Override Specifications form appears. Table 15-2 Override Specifications Form Field Description Field Description Measurement Displays the measurements for which you can define specifications. Note the following: ■ By default, the name of the measurement you selected on the Outputs Setup tab of the Outputs pane is displayed. ■ This drop-down list displays only the names of the measurements for the test whose measurement you selected on the Outputs Setup tab. To define a spec for a measurement of another test, right-click on a measurement for that test and choose Override Specifications. ■ If you have not specified the name for a measurement in the Name column on the Outputs Setup tab, the expression for that measurement is displayed as its name in this drop-down list. Global Spec Displays the specification for the measurement. To define or modify a specification, select one of the specification types (described in Table 15-1 on page 747) from the drop-down list, and fill in the text field next to the drop-down list with appropriate target information for the measurement. March 2015 © 1990-2015 752 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Table 15-2 Override Specifications Form Field Description Field Corner Spec Description Displays the list of corners enabled for the test. For more information about enabling corners for tests, see Disabling and Enabling Corners on page 262. You can disable or enable a corner specification for a specific measurement. For more information, see Disabling and Enabling Corner Specifications on page 756 Displays the specification for each corner enabled for the test. For more information about specifying a different specification for a corner, see Overriding the Measurement Specification for a Corner on page 750. 2. In the Measurement drop-down list, select the measurement for which you want to define the specification. 3. In the Global Spec drop-down list, select one of the specification types (described in Table 15-1 on page 747) from the drop-down list, and fill in the text field next to it with appropriate target information for the measurement. 4. In the Spec column, specify an overridden value next to the corner for which you want to use a different specification. For example, in the following figure, the specification <450m for corner C0 overrides the specification <550m for the Gain_commonMode measurement. March 2015 © 1990-2015 753 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Note: In case of an overridden specification, a corner can use only a constant value as an overridden value. You cannot specify an overridden expression different from that specified for the global target value. 5. Click OK. Note: If you later modify the specification for a measurement in the Outputs Setup tab of the Outputs pane or in the Global Spec field on the Edit Specification form, the change will apply only to the corners for which you did not override the specification. For example, the following figure indicates that when the specification for the Gain_commonMode measurement is changed from <550m to <600m, the change is applied only to the Nominal corner and corner C3. The change is not applied to corner C0 because the specification <450m for corner C0 overrides the specification for the Gain_commonMode measurement. By default, the specification applies to all the corners selected for the test. You can do the following: ❑ Override the specification for a specific corner. For more information, see Overriding the Measurement Specification for a Corner on page 750. ❑ Undo a corner specification override. For more information, see Undoing a Corner Specification Override on page 755. ❑ Disable or enable the corner specification for a specific measurement. For more information, see Disabling and Enabling Corner Specifications on page 756. ❑ Disable or enable the corner specification across all measurements for a test. For more information, see Disabling and Enabling Corner Specifications on page 756. The next time you run a simulation, the program measures the result against the performance specification and displays the results in the Results tab of the Outputs pane. For more March 2015 © 1990-2015 754 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications information about how results are displayed in the Results tab, see Viewing Specification Results in the Results Tab on page 783. Tip If you add or modify measurement expressions or specifications after running a simulation, you can click the button on the Results tab to update the results displayed in the Results tab based on the new or modified expressions and specifications. For more information about using the button, see Re-evaluating Expressions and Specifications on page 692. The results will also be updated based on the new or modified expressions and specifications if you click the button on the Results tab to plot across all points. For more information about using the button, see Plotting Results on page 666. Note: For information about setting up specifications for optimization, see “Setting Up Specifications” in the Virtuoso Analog Design Environment GXL User Guide. See also: ■ Starting a Simulation on page 501 ■ Re-evaluating Expressions and Specifications on page 692 ■ Viewing Specification Results in the Results Tab on page 783 Undoing a Corner Specification Override To undo a corner specification override, do the following in the Override Specifications form: 1. In the Measurement drop-down list, select the measurement for which you want to undo a corner specification override. 2. In the Spec column, right-click on the specification for the corner for which you want to undo the specification override and choose Set to Global from the context-sensitive menu. To undo the overrides for multiple corners, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection), right-click and then choose Set to Global from the context-sensitive menu. The specification for the measurement (displayed in the Global Spec field) is applied to the corner. March 2015 © 1990-2015 755 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Disabling and Enabling Corner Specifications By default, the specification defined for a measurement applies to all corners enabled for the test. You can do the following: ■ Disable or enable the corner specification for a specific measurement. ■ Disable or enable the corner specification across all measurements for a test. To disable or enable a corner specification for a specific measurement, do the following: 1. Right-click on the row for a measurement in the Outputs Setup tab of the Outputs pane and choose Override Specifications from the context-sensitive menu. The Override Specifications form appears. 2. In the Measurement drop-down list, select the measurement for which you want to disable or enable the corner specification. 3. Do one of the following: ❑ To disable a corner specification for the measurement, clear the check box next to the corner. For example, in the following figure, the specification for corner C0 is disabled. ❑ To enable a corner specification for the measurement, select the check box next to the corner. ❑ To disable a corner specification for all the measurements for the test, select All in the Measurement drop-down list, then clear the check box next to the corner. March 2015 © 1990-2015 756 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications For example, in the following figure, the specification for corner C0 is disabled for all the measurements for the test. ❑ To enable a corner specification for all the measurements for the test, select All in the Measurement drop-down list, then select the check box next to the corner. Note: You can also right-click on the first column in the Override Specifications form and choose Disable All or Enable All to disable or enable all the corner specifications. 4. Click OK. See also: Viewing Specification Results in the Results Tab on page 783 Defining Operating Region Specifications Operating region specifications define expressions that ensure that your devices are operating in a desired region (saturation, triode, and so on). For more information, see the following topics: ■ Setting Up Operating Region Specifications on page 758 ■ Saving Operating Region Expressions to a File on page 779 ■ Loading Operating Region Expressions from a File on page 781 ■ Modifying Operating Region Specifications on page 775 March 2015 © 1990-2015 757 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications ■ Deleting Operating Region Specifications on page 782 ■ Disabling and Enabling Operating Region Specifications on page 782 ■ Viewing Operating Region Violations on page 787 ■ Re-evaluating Operating Region Expressions on page 791 Important In the IC6.1.4 and previous releases of ADE XL, operating region expressions for each operating region specification were defined as dcOp device checks. However, from the IC6.1.5 release, ADE XL provides a separate user interface for defining operating region expressions. Therefore, you need to migrate the operating region expressions that were defined in IC6.1.4 to IC6.1.5. For more details, refer to Migrating Operating Region Specifications from IC6.1.4 to IC6.1.5 on page 795. Copying a Specification To copy a specification, do the following: 1. In the Spec column on the Outputs Setup tab of the Outputs pane, select the specification. 2. Press Ctrl+C to copy the specification. 3. Click in the Spec column next to the expression for which you want to paste the specification. 4. Press Ctrl+V to paste the specification. Setting Up Operating Region Specifications To set up an operating region specification for a test, do the following: March 2015 © 1990-2015 758 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 1. Ensure that a DC analysis with option to save DC operating point information is set up for the test as shown below: For more information about setting up a DC analysis, see Adding an Analysis. Note: In the earlier releases, for operating region specifications, it was required to enable the dochecklimit device checking option in the Simulator Options form. Starting from IC6.1.5 ISR8, the operating region specifications do not depend on device checks and it is not required to check this option. 2. On the Outputs Setup tab, click the Add new output drop-down list of available tests. toolbar button, to view the March 2015 © 1990-2015 759 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 3. In the drop-down list, select a test and choose Op Region Spec. Tip You can also right-click a test name in the Outputs Setup tab and choose Add Op Region Spec to set up an operating region specification for that test. March 2015 © 1990-2015 760 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications The schematic for the test is displayed with the Operating Region and Navigator assistant panes docked. 4. Specify operating region expressions using the Operating Region assistant pane or the Operating Region Specification form. The Operating Region assistant pane enables you to quickly specify expressions while the Operating Region Specification form provides advanced methods for specifying expressions. Note: You can specify multiple operating region specifications for a single test. For more information, see the following topics: ❑ Specifying Operating Region Expressions Using the Operating Region Assistant Pane on page 763 ❑ Specifying Operating Region Expressions Using the Operating Region Specification Form on page 768 March 2015 © 1990-2015 761 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications ❑ Viewing Operating Region Violations on page 787 ❑ Re-evaluating Operating Region Expressions on page 791 5. Click the adexl tab when you are done. adexl Tab The operating region specification for the test is displayed in the Outputs Setup tab as shown below: March 2015 © 1990-2015 762 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Specifying Operating Region Expressions Using the Operating Region Assistant Pane To specify operating region expressions using the Operating Region assistant pane, do the following: 1. On the schematic or in the Navigator assistant pane, select the instance for which you want to specify operating region expressions. You can also select more than one instance of the same type to simultaneously specify operating region expressions for all of them. ❑ To select more than one instance at a time on the schematic, do one of the following: ❍ Hold down the Shift key and click on instances. ❍ Click and drag the mouse over the instances you want to select. All the instances that are within the yellow bounding box that appears are included in the selection. ❑ To select more than one instance at a time in the Navigator assistant pane, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. March 2015 © 1990-2015 763 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications For example, in the following figure, four instances of the nmos2v device are selected in the Navigator assistant pane. 2. Specify operating region expressions for the selected instances by doing the following in the Operating Region assistant pane: a. (Optional) If the selected instance has subcircuit instances, select the subcircuit instance for which the operating region expression is to be applied from the SubInst drop-down list. b. In the Expr column on the Operating Region assistant, click where it says and enter an operating region expression. For example: vgs - vth Note: To view the list of operating point parameters that you can use in expressions, March 2015 © 1990-2015 764 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications click the Show Parameters button on the Operating Region assistant. Note: The operating point parameters for the selected instances are displayed in the Op Point Parameters form. Identify the parameters from this list and create expression in the Expr column of the Operating Region assistant. c. Click in the Spec column and select the specification for the expression. d. Click in the Value column and specify the target value for the specification. March 2015 © 1990-2015 765 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications For example, in the following figure, two expressions have been specified for the selected instances. 3. By default, the specified expressions are enabled. Ensure that the expressions you want to add for the selected instances are enabled, and the expressions you do not want to add for the selected instances are disabled. ❑ To enable an expression, select the check box next to it in the Enable column. ❑ To disable an expression, deselect the check box next to it in the Enable column. 4. Click Add. March 2015 © 1990-2015 766 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications The enabled expressions are added for the selected instances and displayed in the table at the bottom of the Operating Region assistant pane as shown below: Note: The Operating Region assistant form displays only the operating region expressions specified for the instances that are currently selected on the schematic or in the Navigator assistant pane. However, if no instance is selected, expressions for all the instances are displayed in the Operating Region assistant. Alternatively, you can click the Show All button to view all the operating region expressions specified for the test in the Operating Region Specification form. For more information about using the Operating Region Specification form, see Modifying Operating Region Specifications on page 775. See also: ■ Saving Operating Region Expressions to a File on page 779 ■ Loading Operating Region Expressions from a File on page 781 ■ Copying and Pasting Operating Region Expressions on page 778 ■ Deleting Operating Region Expressions on page 778 March 2015 © 1990-2015 767 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Specifying Operating Region Expressions Using the Operating Region Specification Form You can use the advanced view of the Operating Region Specification form to specify operating region expressions. To specify operating region expressions using the Operating Region Specification form, do the following: 1. Click the Show All button on the Operating Region assistant pane. The Operating Region Specification form appears. March 2015 © 1990-2015 768 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 2. Click the Advanced check box to display the advanced view of the form. March 2015 © 1990-2015 769 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 3. Select the instances for which you want to add operating region expressions by doing one of the following: Select Master Model To Select instances based on the library in which they exist. Then, do the following to select instances: 1. Use the Library and Cell drop-down lists to select the library and cell in which cellviews for instances in the design for the test exist. All the instances of the cellviews in the design for the test are displayed in the Instances list box. 2. In the Instances list box, select the instances for which you want to add operating region expressions. To select more than one instance at a time, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. 3. (Optional) If the selected instance has subcircuit instances, select the subcircuit instance for which the operating region expression is to be applied from the Subcircuit drop-down list. Select instances based on the models specified for the instances. Then, do the following to select instances: 1. From the Model drop-down list, select a model. All the instances in the design for the test for which the model is specified are displayed in the Instances list box. 2. In the Instances list box, do one of the following: ❑ Select All to add operating region expressions to all instances for which the model is specified. ❑ Select the specific instances for which you want to add operating region expressions. To select more than one instance at a time, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the next instance to add it to the selection set. March 2015 © 1990-2015 770 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Tip The list of operating point parameters that you can use in expressions for the selected instances are displayed in the Parameters field. 4. Specify operating region expressions for the selected instances by doing the following: March 2015 © 1990-2015 771 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications a. In the Expression column, click where it says and enter an operating region expression. b. Click in the Spec column and select the specification for the expression. c. Click in the Value column and specify the target value for the specification. For example, in the following figure, two expressions have been specified for the selected instances. March 2015 © 1990-2015 772 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 5. By default, the specified expressions are enabled. Ensure that the expressions you want to add for the selected instances are enabled, and the expressions you don’t want to add for the selected instances are disabled. ❑ To enable an expression, select the check box next to it in the Enable column. ❑ To disable an expression, deselect the check box next to it in the Enable column. 6. Click Add. The enabled expressions are added for the selected instances and displayed in the table at the bottom of the Operating Region Specification form as shown below. March 2015 © 1990-2015 773 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications See also: ■ Saving Operating Region Expressions to a File on page 779 ■ Loading Operating Region Expressions from a File on page 781 ■ Disabling and Enabling Operating Region Expressions on page 778 ■ Copying and Pasting Operating Region Expressions on page 778 ■ Deleting Operating Region Expressions on page 778 March 2015 © 1990-2015 774 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Modifying Operating Region Specifications To modify an operating region specification, do the following: 1. In the Outputs Setup tab, double-click on the Expression/Signal/File field in the row for the operating region specification. An ellipse button appears in this field. Click the ellipse button. The Operating Region Specification form appears displaying the operating region expressions specified for the test. March 2015 © 1990-2015 775 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications You can use this form to perform the following tasks: Task Description View operating region expressions Modify operating region expressions To modify an expression, double-click in the Expr/Param, Spec or Value columns and make the required changes. If you need to use a common expression for multiple parameters, you can modify expressions for their rows together. For more details, see Modifying Multiple Expressions Together on page 777. Copy and paste operating region expressions For more information, see Copying and Pasting Operating Region Expressions on page 778 Delete operating region expressions For more information, see Deleting Operating Region Expressions on page 778 Enable or disable operating region expressions For more information, see Disabling and Enabling Operating Region Expressions on page 778 Click the Launch Schematic Assis- For more information, see Specifying Operattant to open the schematic for the test ing Region Expressions Using the Operating with the Operating Region and Naviga- Region Assistant Pane on page 763 tor assistant panes docked. You can use the Operating Region assistant pane to quickly add or modify operating region expressions for instances you select on the schematic or in the Navigator assistant pane. Note: The Operating Region assistant pane displays only the operating region expressions for the instances that are currently selected on the schematic or in the Navigator assistant pane. March 2015 © 1990-2015 776 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Task Click the Advanced check box to access a detailed user interface for adding or modifying operating region expressions Description For more information, see Specifying Operating Region Expressions Using the Operating Region Specification Form on page 768 2. Modify the operating region expressions as required. 3. Click OK. Modifying Multiple Expressions Together To modify multiple operating region expressions together, do the following: 1. Hold down the Ctrl key and select more than one expressions. 2. Right-click and choose Edit Selected Rows. The Editing Op Region Form Rows form appears. 3. Enter an expression in the Expr/Param field. 4. Enter a spec value in the Value field. 5. Click OK. The expression that you specified in this form is updated in the Expr/Param column of all the selected rows in the Operating Region Specifications form. March 2015 © 1990-2015 777 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Copying and Pasting Operating Region Expressions To copy an operating region expression, do the following: ➡ Right-click the row for the expression you want to copy and select Copy Expression. To paste an operating region expression, do the following: ➡ Right-click the row where you want to paste the expression and select Paste. Disabling and Enabling Operating Region Expressions The Enable column in the Operating Region Specification form indicates whether an operating region expression is enabled or disabled. By default, the operating region expressions you add are automatically enabled. To disable an operating region expression, do the following: ➤ Deselect the check box next to the expression in the Enable column. To enable an operating region expression, do the following: ➤ Select the check box next to the expression in the Enable column. Deleting Operating Region Expressions To delete an operating region expression, do the following: ➡ Right-click the row for the expression and choose Delete. March 2015 © 1990-2015 778 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Saving Operating Region Expressions to a File You can save the operating region expressions specified in the Operating Region assistant pane or the detailed view of the Operating Region Specification form to a file. You can then load the file to quickly add operating region expressions. For more information about loading operating region expressions, see Loading Operating Region Expressions from a File on page 781. To save operating region expressions to a file, do the following: 1. On the Operating Region assistant pane or the detailed view of the Operating Region Specification form, in the Label field, type a name for the specified set of operating region expressions. For example, in the following figure, the two expressions specified in the Operating Region assistant pane will be saved with the name myOpRegionExpr. Figure 15-1 Saving Expressions in Operating Region Assistant Pane Enabled operating region expressions will be saved These operating region expressions will not be saved March 2015 © 1990-2015 779 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Figure 15-2 Saving Expressions in Operating Region Specification Form Enabled operating region expressions will be saved These operating region expressions will not be saved 2. Ensure that the expressions you want to save are enabled, and the expressions you don’t want to save are disabled. ❑ To enable an expression, select the check box next to it in the Enable column. ❑ To disable an expression, deselect the check box next to it in the Enable column. 3. Click the Save button. The Select Operating Region Expression File form appears. March 2015 © 1990-2015 780 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 4. Specify the name and location of the file and click Save. The enabled expressions are saved in the file. Important If you specify name of an existing file, the tool prompts you to check if you want to replace the existing file or specify another file name. The tool does not append the expressions to the existing file. Tip You can concatenate the expressions specified in multiple files and save in a common file. In this case, when the file is loaded, all expressions saved with a common label name are displayed together. Loading Operating Region Expressions from a File You can load operating region expressions from a file into the Operating Region assistant pane and the detailed view of the Operating Region Specification form. To load operating region expressions from a file, do the following: 1. Click the Load button in the Operating Region assistant pane or the detailed view of the Operating Region Specification form. The Select Operating Region Expression File form appears. 2. Select the file and click Open. The expressions in the file are displayed. The name specified for the set of expressions in the file is also displayed in the Label drop-down list. Tip The names specified for the sets of expressions in the files loaded during the current ADE GXL session are displayed in the Label drop-down list. Therefore, during the current ADE GXL session, you can select a name from the Label drop-down list to add expressions, instead of loading the corresponding file again. March 2015 © 1990-2015 781 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Tip Expressions saved in a tab- or comma-separated file can also be loaded in the Operating Region assistant pane or the Operating Region Specification form. In this case, if the expressions are not associated with a label name, the Label list displays . Deleting Operating Region Specifications To delete an existing operating region specification, do the following: ➡ In the Outputs Setup tab, right-click the row for the operating region specification and choose Delete Output. ➡ In the Operating Region assistant pane or the detailed view of the Operating Region Specification form, select a label from the Label list and click Delete. All the expressions saved with the selected label name are deleted. Disabling and Enabling Operating Region Specifications To disable an operating region specification, do the following: ➡ In the Plot column on the Outputs Setup tab, deselect the check box next to the specification. ➡ Right-click on an operating region specification and choose Disable Plot. To enable an operating region specification, do the following: ➡ In the Plot column on the Outputs Setup tab, select the check box next to the specification. ➡ Right-click on an operating region specification and choose Enable Plot. March 2015 © 1990-2015 782 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Viewing Specification Results in the Results Tab When you run a simulation, the simulation results are displayed in the Results tab of the Outputs pane. For more information about running simulations, see Chapter 13, “Running Simulations.” Figure 15-3 Display of Simulation Results in the Results Tab Plot icon for signals pass/near/fail status of measured value against specifications Measured value for nominal corner Measured values for individual corners March 2015 © 1990-2015 783 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Tip After running a simulation, if you add or modify measurement expressions or specifications in the Outputs Setup tab, you can click the button on the Results tab to update the results displayed in the Results tab based on the new or modified expressions and specifications. For more information about using the button, see Re-evaluating Expressions and Specifications on page 692. The results will also be updated based on the new or modified expressions and specifications if you click the button on the Results tab to plot across all points. For more information about using the button, see Plotting Results on page 666. The Results tab displays a plot icon for the signals that you have selected for plotting or saving on the Outputs Setup tab of the Outputs pane. For more information about selecting signals for plotting or saving, see Specifying Whether a Result Will Be Saved or Plotted on page 403. For measurements defined in the Outputs Setup tab, the program measures the result against the performance specification and displays the following information for each simulation in the Results tab. ■ Measured value for the nominal corner in the Nominal column. ■ Measured value for each corner in the column for the corner. ■ If a specification is specified as an expression, OCEAN script, or SKILL code, the evaluated value of the expression or code is compared with the output value to identify the pass or fail status. To view the evaluated specification value, move the mouse pointer over the Spec column on the Results tab. The evaluated value is displayed in a tooltip. ■ pass, near, fail or error status for the measured value from each simulation in the Pass/Fail column. ❑ pass means that all the measured values are within the limits defined by the specification. For example, in Figure 15-3, the measured value 506.7m for the Gain_commonMode measurement has the pass status because it falls within the target value <550m for the measurement. ❑ near means that one or more measured values are no more than 10% outside the target value of the specification. March 2015 © 1990-2015 784 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications For example, in Figure 15-3, the measured value 94.24 for the Gain_openLoop measurement has the near status because it falls near (within 10% of) the target value >95 for the measurement. ❑ fail means that one or more measured values are greater than 10% outside the target value of the specification. For example, in Figure 15-3, the measured value 118.4 for the AC_gain_1KHz measurement has the fail status because it falls outside the target value >130 for the measurement. ❑ error means that the expression given in the Spec column for the output failed to evaluate. In this case, the result value is also displayed with a bright red background To view the error details, move the mouse over the result value in the corner column. The tooltip displays the details of the error, as shown in the figure given below. The measured values with a pass status are displayed with a green background, those with a near status appear with a yellow background, and those with a fail status appear with a red background. Note the following: ❑ The Pass/Fail column displays the pass status for a measurement only if the measured values for all the corners for the measurement have a pass status (displayed with a green background). For example, in 15-3, the Gain_commonMode measurement has the pass status because the measured values for the nominal corner (displayed in the Nominal column) and the corners C0 and C3 have a pass status. March 2015 © 1990-2015 785 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications ❑ If the measured value for any corner has a near status (displayed with a yellow background), the Pass/Fail column displays the near status for the measurement. ❑ If the measured value for any corner has a fail status (displayed with a red background), the Pass/Fail column displays the fail status for the measurement. ■ The text overridden displayed next to a measurement in the Spec column on the Results tab indicates that you have overridden or disabled one or more corner specifications for the measurement. For example, in Figure 15-4, the text overridden next to the CMRR measurement in the Spec column indicates that you have overridden or disabled one or more corner specifications for the CMRR measurement. Figure 15-4 Display in Results Tab when Corner Specs are Disabled or Overridden One or more corner specs are overridden or disabled for CMRR measurement All corner specs are disabled for AC_gain_1KHx measurement Do the following to view the specification for the measurement and for each corner: ❑ To view the specification for the measurement, hover the mouse pointer over the text overridden in the Spec column. The specification for the measurement is displayed in a pop-up, as shown below: ❑ To view the specification for the nominal corner, hover the mouse pointer over the measured value for the nominal corner that is displayed next to the measurement in the Nominal column. March 2015 © 1990-2015 786 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications To view the specification for a corner, hover the mouse pointer over the measured value for the corner that is displayed next to the measurement in the column for the corner. The measured value and specification for the corner is displayed in a pop-up, as shown below: If a corner specification is disabled for the measurement, the pop-up displays the measured value and disabled status for the corner as shown below: ■ The text disabled displayed next to a measurement in the Spec column on the Results tab indicates that you have disabled all the corner specifications for the measurement. For example, in Figure 15-4, the text disabled next to the AC_gain_1KHz measurement in the Spec column indicates that you have disabled all the corner specifications for the AC_gain_1KHz measurement. Viewing Operating Region Violations When you run a simulation, ADE GXL combines the individual device expressions in the operating region specification into a single output and calculates the total error. The total error is the sum of all the individual violation margins plus an offset of 1. An operating region specification is met if the results for all its operating region expressions fall within their corresponding target values. The Results tab displays a value of 0 and a pass March 2015 © 1990-2015 787 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications status if an operating region specification is met. For example, in the following figure, the operating region specification for the ACGainBW test has a pass status because its value is 0. A violation occurs when the result for any operating region expression in the specification falls outside its specified target value. In this case, the Results tab displays a value greater than 0 that is calculated as, shown below: failed operating region result = 1 + sum of fail margin for failed expressions Note: The operating region result is never between 0 and 1. A near or fail status depending on the range of deviation from the target spec value. For example, in the following figure, the operating region specification for the AC test, March 2015 © 1990-2015 788 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Op_Region, has a near status because its value is slightly greater than 1 whereas the spec requires the value to be less than 1. To view operating region violations, do the following: ➡ In the Results tab of the Outputs pane, right-click the operating region specification and choose Op. Region Violations. The Operating Region Specification form is displayed with the Results tab in view. This tab displays the results of all operating region expressions in a tabular format, as shown below: March 2015 © 1990-2015 789 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Two columns are shown for each corner—the column with corner name shows the result of expression evaluation for that corner and the Margin column next to it shows the margin by which the result deviates from the spec value. Depending on the difference between the spec and margin values, cells in the Margin column are colored as green, red, and yellow to highlight the pass, fail, or near status, respectively. For more information about using the Results tab of the Operating Region Specification form, see the following sections: ■ Re-evaluating Operating Region Expressions on page 791 ■ Highlighting Operating Region Violations on the Schematic on page 791 ■ Unhighlighting Operating Region Violations on the Schematic on page 792 ■ Hiding and Showing a Single Column on page 793 ■ Hiding and Showing Multiple Columns on page 793 ■ Hiding and Showing Only Expression Columns or Margin Columns on page 794 March 2015 © 1990-2015 790 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Re-evaluating Operating Region Expressions Important Make sure that you load the setup to active before re-evaluating outputs on the Outputs Setup tab. You cannot re-evaluate operating region expressions only by viewing results. If required, you can edit the expressions that do not meet the specs and re-evaluate results. For this, do the following in the Operating Region Specification form: 1. Open the Setup tab and add, edit, or delete expressions, as required. 2. Open the Results tab and click Re-evaluate. The results for all the expressions are re-evaluated for all the corners and updated on the Results tab. If you get the desired results, click OK to save the changes in the operating region specification. Now, to see the result of change in operating region specification on the operating region output, click on the Results tab of ADE XL Outputs pane. All the expressions and operating region outputs are re-evaluated. The operating region output is now the result of new operating region specifications. Highlighting Operating Region Violations on the Schematic You can highlight the instance on the schematic for which an operating region expression has failed. This helps you to quickly correct the design or the operating region expression. To highlight the instance for which an operating region expression has failed, do the following: 1. Right-click on the row for which an expression has failed. 2. Choose Highlight. March 2015 © 1990-2015 791 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications The instance for which the expression failed is highlighted in yellow on the schematic. For example, in the following figure, the instance M10 for which an expression failed is highlighted on the schematic. Tip To highlight the instances corresponding to multiple failed expressions, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the row for the next failed expression to add more expressions to the selection set, then click the Highlight button. Note: In a hierarchical design, a block is highlighted in yellow if an operating region expression has failed for an instance in the block. When you descend into the block, the instance for which the expression has failed is also highlighted in yellow. Unhighlighting Operating Region Violations on the Schematic To clear the highlight from all the instances corresponding to the operating region violations on the schematic, do the following: 1. Right-click on the row for which an expression has failed. 2. Choose Clear. March 2015 © 1990-2015 792 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Hiding and Showing a Single Column You can hide and show the required columns in the Setup or Results tab of the Operating Region Specification form. To hide a column that is currently displayed, do the following: 1. Right-click on a column name to display a context-sensitive menu. A tick mark next to a column name in the context-sensitive menu indicates that the column is currently displayed. 2. Choose the name of the column you want to hide. To show a column that is currently not displayed, ➡ Right-click on a column name and choose the name of the column you want to display from the context-sensitive menu. Hiding and Showing Multiple Columns You can hide and show the required columns in the Setup or Results tab of the Operating Region Specification form. To hide multiple columns that are currently displayed, do the following: 1. Hold down the Ctrl key and click in any cell in the columns that you want to hide. 2. Right-click in any of the selected cells and choose Hide Columns. March 2015 © 1990-2015 793 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications All the selected columns are hidden. To display all the columns that are currently hidden, ➡ Right-click in any cell and choose Show Hidden Columns. All the hidden columns become visible on the Results tab. Hiding and Showing Only Expression Columns or Margin Columns If multiple columns are displayed on the Results tab of the Operating Region Specification form, you can show only expression columns or margin columns. This helps in showing only one type of results at a time. To hide all expression columns and to show only the margin columns: ➡ Right-click in any of the results cells and choose Hide All Expressions. All expression columns are hidden and only the margin columns appear, as shown below. Tip An alternate way to hide multiple columns is to right-click on any column header and clear the check box for columns to be hidden. However, the Hide All Margins or Hide All Expressions commands provide quick options to hide multiple columns. To unhide the hidden margin columns, right-click in any cell and choose Show Hidden Columns. March 2015 © 1990-2015 794 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Migrating Operating Region Specifications from IC6.1.4 to IC6.1.5 Starting from IC6.1.5, ADE XL provides a new user interface for defining operating region expressions. Because of this, the following message is displayed if an ADE XL view that contains operating region specifications created in the IC6.1.4 or earlier release is opened in the IC6.1.5 or later release. Do the following to migrate operating region expressions created in IC6.1.4 or earlier releases to the IC6.1.5 format: 1. Click OK to open the ADE XL view. The operating region expressions defined for each test’s operating region specification in the view are displayed as device checks for the test in the Outputs Setup tab. 2. In the Outputs Setup tab, double-click on the Expression/Signal/File field in the row for a device check. The Device Check Specification form appears displaying the operating region expression details. 3. Define the operating region expressions for the test using the procedure described in Setting Up Operating Region Specifications on page 758. 4. Delete the device checks that have been defined as operating region expressions. For more information about device checks, see the Device Checking chapter. March 2015 © 1990-2015 795 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Working with the Specification Summary The Spec Summary form provides a mechanism for managing and organizing simulation results for different purposes: ■ Create a spec summary for design reviews ■ Generate a summary report of pass/fail results for measurements ■ Display results for quick inspection of multiple simulation runs ■ Verify a design against specifications ■ Export the spec summary to HTML or CSV format files for printing purposes. For more information, see the following topics: ■ Viewing the Spec Summary on page 797 ■ Saving a Spec Summary on page 800 ■ Opening a Spec Summary on page 801 ■ Adding a Specification to the Spec Summary on page 801 ■ Deleting a Specification from the Spec Summary on page 802 ■ Changing the History Item from which Results are Displayed on page 802 ■ Updating the Spec Summary with the Latest Results on page 803 ■ Recreating the Spec Summary from the Results in the Active Results Tab on page 804 ■ Viewing the Detailed Results for Specifications on page 804 ■ Plotting the Results for Specifications on page 806 ■ Exporting a Spec Summary to a HTML or CSV File on page 806 ■ Sorting Data in the Spec Summary Form on page 807 ■ Hiding and Showing Columns in the Spec Summary Form on page 807 March 2015 © 1990-2015 796 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Viewing the Spec Summary To view the specification (spec) summary, do the following on the Results tab of the Outputs pane: Note: You can view the spec summary only for the results of a Single Run, Sweeps and Corners or Monte Carlo Sampling simulation run. You cannot view the spec summary for the results of a Global Optimization, Local Optimization, , Feasibility Analysis, Size Over Corners or Sensitivity Analysis simulation run. ➤ Do one of the following on the currently active Results tab for a Single Run, Sweeps and Corners or Monte Carlo simulation run: ❑ Choose Create – Spec Summary. ❑ Click the toolbar button on the ADE XL window. ❑ Click the button on the Results tab. The spec summary for the results in the currently active Results tab is displayed in the Spec Summary form. The toolbar in the Spec Summary form is described in the following table: March 2015 © 1990-2015 797 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Table 15-3 Spec Summary Toolbar Icon Name Description Back to Summary View Switches from the detail view to the summary view. For more information, see Viewing the Detailed Results for Specifications on page 804. Show Detail Displays the detailed results for the selected specifications in View the detail view. For more information, see Viewing the Detailed Results for Specifications on page 804. Delete Deletes the selected specifications. For more information, see Deleting a Specification from the Spec Summary on page 802. Save Spec Summary Saves the spec summary. For more information, see Saving a Spec Summary on page 800. Transpose Table Displays the results in the detail view in horizontal or vertical format. For more information, see Viewing the Detailed Results for Specifications on page 804. Update with Latest Results Data Updates the spec summary with the latest results from the history item selected for each specification. For more information, see Updating the Spec Summary with the Latest Results on page 803. Recreate for the Current History Results Recreates the spec summary using the results in the active Results tab. For more information, see Recreating the Spec Summary from the Results in the Active Results Tab on page 804. Plot Signals Plots the results for the selected row. For more information, see Plotting the Results for Specifications on page 806. March 2015 © 1990-2015 798 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Icon Name Description Export to Exports a spec summary to a HTML or comma-separated CSV or HTML values (CSV) file File For more information, see Exporting a Spec Summary to a HTML or CSV File on page 806. The columns in the Spec Summary form are described in the following table: Table 15-4 Spec Summary Columns Column Output History Test Conditions Min Max Description Displays the names of the outputs for which the specifications are evaluated. Displays the names of the history items from which the results of outputs are displayed. Displays the names of the tests for which the results of outputs are displayed. Displays the values of each swept parameter as a list or range of values. For example, if a parameter p is swept through a list of values x, y, and z, then the Conditions column displays the values as p=x,y,z If a parameter p is swept through a range of values, the Conditions column displays the values as p=startValue:increment:stopValue Displays the minimum measured value for each output. Displays the maximum measured value for each output. March 2015 © 1990-2015 799 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Column Std Dev Spec Pass/Fail Description Displays the standard deviation of the measured values for each output. You can hover the mouse pointer over a standard deviation value to view the following information in a pop-up: ■ The number of simulations for the output expression. ■ The mean of the measured values for all simulations for the output expression. ■ The variance in the measured values. Note: For Single Run, Sweeps and Corners, this is the population standard deviation. For other run modes, this is the sample standard deviation. Displays the specifications for outputs. Displays a pass, near or fail status for each specification. ■ pass means that all the measured values are within the limits defined by the specification. ■ near means that one or more measured values are no more than 10% outside the target value of the specification. ■ fail means that one or more measured values are greater than 10% outside the target value of the specification. To investigate the measured values further, see Viewing the Detailed Results for Specifications on page 804 Saving a Spec Summary To save a spec summary in the Spec Summary form, do the following: 1. In the Name field, type a name for the spec summary. 2. Click the button. The spec summary is saved to the documents folder of the ADE XL view and displayed in the Documents tree on the Data View pane. For more information about working with documents, see Chapter 18, “Working with Documents.” Note: The spec summary file is saved with the .specsummary extension. March 2015 © 1990-2015 800 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Opening a Spec Summary To open an existing spec summary, do one of the following: ■ In the Name drop-down list on the Spec Summary form, select the spec summary. ■ In the Documents tree on the Data View pane, double-click on the spec summary. The spec summary is displayed in the Spec Summary form. Deleting a Spec Comparison To delete an existing spec summary, do the following: ➡ In the Documents tree on the Data View pane, right-click the spec summary you want to delete and choose Delete. The spec summary will not be displayed in the Name drop-down list in the Spec Summary form. Adding a Specification to the Spec Summary You can add a specification from the results in the active Results tab or from the results of a history item. Note: You can add specifications only from the results of a Single Run, Sweeps and Corners or Monte Carlo simulation run. You cannot add specifications from the results of a Global Optimization, Local Optimization, , Feasibility Analysis, Size Over Corners or Sensitivity Analysis simulation run. To add a specification from the results in the active Results tab for a Single Run, Sweeps and Corners or Monte Carlo simulation run, do the following: ➤ Right-click on a row in the Results tab of the Outputs pane and choose Add to Spec S u m m a r y. The specification is added to the spec summary. Note: You cannot add an output of type signal to the spec summary. To add a specification from the results of a history item for a Single Run, Sweeps and Corners or Monte Carlo simulation run, do the following: 1. Display the results for the history item. For more information, see Viewing Results from a Particular Checkpoint on page 864. March 2015 © 1990-2015 801 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 2. On the Results tab for the history item, right-click a specification and choose Add to Spec Summary. Tip To add multiple specifications, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection), right-click and choose Add to Spec S u m m a r y. Deleting a Specification from the Spec Summary To delete a specification from the spec summary, do the following. ➤ Select the specification and click the button. To delete multiple specifications, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the button. Changing the History Item from which Results are Displayed The History column in the Spec Summary form displays the names of the history items from which the results of the specifications are displayed. You can change the history item for a specification to display the results from that history item. Note: You can change only to a history item for a Single Run, Sweeps and Corners or Monte Carlo simulation run. You cannot change to a history item for a Global Optimization, Local Optimization, , Feasibility Analysis, Size Over Corners or Sensitivity Analysis simulation run. To change the history item for a single specification, do the following: 1. In the History column, click on the name of the history item for the specification. A button with the name of the history item appears. March 2015 © 1990-2015 802 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications 2. Click on the button and select a different history item. The results for the specification from the selected history item are displayed in the spec summary. To change the history item for multiple specifications, do the following: 1. Hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click on the name of a history item for any specification in the selection. A button with the name of the history item appears. 2. Click on the button and select a different history item. The results for the specifications from the selected history item are displayed in the spec summary. Updating the Spec Summary with the Latest Results To update the spec summary with the latest results from the history item selected for each specification, do the following: ➤ Click the button. Note: If the history item selected for a specification does not exist, the row for the specification is highlighted in red color. You can select a different history item for the specification (see Changing the History Item from which Results are Displayed on page 802) March 2015 © 1990-2015 803 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications or delete the specification from the spec summary (see Deleting a Specification from the Spec Summary on page 802). Recreating the Spec Summary from the Results in the Active Results Tab To clear the current spec summary view and display all the specifications from the active Results tab, do the following. ➤ Click the button. Note: You can recreate the spec summary only from the results of a Single Run, Sweeps and Corners or Monte Carlo simulation run. You cannot recreate the spec summary from the results of a Global Optimization, Local Optimization, , Feasibility Analysis, Size Over Corners or Sensitivity Analysis simulation run. Viewing the Detailed Results for Specifications To view the detailed results for a specification, do the following: ➤ Select a specification and click the button. To view the detailed results for multiple specifications, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the button. Ensure that the specifications you select have the same conditions. The detailed results are displayed in the detail view. You can click the the detailed results in horizontal or vertical format. button to view March 2015 © 1990-2015 804 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications Figure 15-5 Detailed Results in Horizontal Format Figure 15-6 Detailed Results in Vertical Format The detail view displays the following information: ❑ Values of swept parameters for each simulation. ❑ pass, near or fail status for each simulation. ❍ pass means that the measured value is within the limits defined by the specification. ❍ near means that the measured value is no more than 10% outside the target value of the specification. March 2015 © 1990-2015 805 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications ❍ fail means that the measured value is greater than 10% outside the target value of the specification. ❑ Measured values from each simulation. The measured values with a pass status are displayed with a green background, those with a near status appear with a yellow background, and those with a fail status appear with a red background. To go back to the summary view, do the following: ➤ Click the button. Plotting the Results for Specifications To plot the results for the specifications in the summary view, do the following: ➤ Select a specification and click the button. To plot the results for multiple specifications, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the button. To plot the results in the detail view, do the following: 1. Click the button to display the results in the detail view in the vertical format. See Detailed Results in Vertical Format figure on page 805 for an example of the detail in the vertical format. 2. Select a row in the table on the left-hand side and click the button. To plot the results for multiple rows, hold down the Shift key (for contiguous selection) or the Ctrl key (for noncontiguous selection) and click the button. Exporting a Spec Summary to a HTML or CSV File To export a spec summary to a HTML or comma-separated values (CSV) file, do the following: 1. Click the button. The Export Results form appears. 2. In the File name field, type a file name with the .html, .htm or .csv extension. 3. Click Save. March 2015 © 1990-2015 806 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications The program exports the results to the file you specified. By default, the file is saved in the documents folder of the ADE XL view and displayed in the Documents tree on the Data View pane. For more information about working with documents, see Chapter 18, “Working with Documents.” Note: If you click the button in the detail view, the resulting HTML or CSV file contains the contents of the detail view and summary view. Sorting Data in the Spec Summary Form To sort data in the Spec Summary form, do the following: ➤ Click on the name of the column based on which you want to sort the data. Hiding and Showing Columns in the Spec Summary Form To hide a column, do the following: ➤ Right-click on the name of any column and select the name of the column you want to hide. To display a hidden column, do the following: ➤ Right-click on the name of any column and select the name of the column you want to display. March 2015 © 1990-2015 807 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Specifications March 2015 © 1990-2015 808 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 16 Working with the Simulation Setup This chapter describes the following topics: ■ ADE XL View Directory Structure on page 810 ■ Saving the Simulation Setup on page 813 ■ Copying an ADE XL View on page 814 ■ Deleting an ADE XL View on page 822 ■ Working with Read-Only ADE XL Views on page 823 ■ Importing and Exporting the Simulation Setup on page 826 ■ Working with Setup States on page 831 ■ Running a Simulation Using a Setup State on page 843 ■ Creating a Plan Using Setup States on page 844 March 2015 © 1990-2015 809 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup ADE XL View Directory Structure The simulation setup in ADE XL is saved in the ADE XL view. The default name for the ADE XL view is adexl. The ADE XL view has the following directory structure: Figure 16-1 ADE XL View Directory Structure The following table describes the contents of folders in the ADE XL view. Table 16-1 Contents of ADE XL View Folder documents Description Contains the documents you added in ADE XL and the specification summaries and datasheets you created in ADE XL. For information about working with documents, see Chapter 18, “Working with Documents.” For information about creating a specification summary, see Working with the Specification Summary on page 796. For information about creating datasheets, see Working with Datasheets on page 868. March 2015 © 1990-2015 810 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Table 16-1 Contents of ADE XL View Folder results Description Contains the results database (.rdb) files and run log (.log) files for history items. For example, the Interactive.1.rdb and Interactive.1.log files in the results folder are the results database and run log files for the history item Interactive.1. For more information about working with history items, see Chapter 17, “Working with Checkpoints.” states To specify a different location where you want the program to save the results database and run log files, do one of the following: ■ Use the ADE XL Results Database Location field in the Save Options form. For more information, see Specifying Results Database Location on page 84 ■ Use the adexl.results saveDir environment variable. For more information, see saveDir on page 960. Note: If you do not specify a different location, and you open the ADE XL view in read-only mode or you do not have write permissions in the ADE XL view, the program writes this information to libraryName/cellName/adexl/results/data in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. Note: Simulation results are not saved in the results folder. For information about the location of simulation results information, see Specifying Options for Saving Simulation Results on page 81. Contains the setup states you created in ADE XL. For more information, see Working with Setup States on page 831. March 2015 © 1990-2015 811 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Table 16-1 Contents of ADE XL View Folder test_states Description Contains the ADE states for the current simulation setup and the simulation setup for history items. Note: If you open the ADE XL view in read-only mode or you do not have write permissions in the ADE XL view, the program writes this information to libraryName/cellName/adexl/results/data/ in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. March 2015 © 1990-2015 812 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Saving the Simulation Setup To save the simulation setup, do the following ➤ Choose File – Save. To save the simulation setup to a different ADE XL view, do the following: 1. Choose File – Save As. The Save As form appears. 2. Enter the name of the library, cell and view in which you want to save the setup. 3. Click OK. Note: This action does not save history data, only the setup database. See also ■ Saving Setup Changes in Read-Only ADE XL Views on page 826 March 2015 © 1990-2015 813 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Copying an ADE XL View Caution Do not copy ADE XL views using file system commands or a graphical File Manager. This can result in loss of data from previous simulation runs. You can use Library Manager to copy ADE XL views. Use one of the methods described in Table 16-1 when you: ■ Copy an ADE XL view ■ Copy a cell containing an ADE XL view ■ Copy a library in which any cell has an ADE XL view Note: This section describes only the procedures for copying an ADE XL view. The procedures for copying libraries or cells containing ADE XL views are similar. For more information about copying libraries and cells, see the Cadence Library Manager User Guide. Table 16-2 Methods of Copying ADE XL Views Method Purpose Copy only the simulation setup, but Use this method if you only want to reuse the not the results database, run log simulation setup existing in an ADE XL view, and do files, and simulation results for the not want to view the simulation results, plot waveforms, history items. or do other tasks that need access to simulation results in the new ADE XL view. For more information, see Copying only the Simulation Setup in an ADE XL View on page 815. Note: If the results database exists within the ADE XL view that you are copying, you can view the simulation results in the new ADE XL view. However, you cannot plot waveforms or do other tasks that need access to simulation results in the new ADE XL view. For more information about the location of the results database, see Specifying Results Database Location on page 84. March 2015 © 1990-2015 814 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Method Purpose Copy the simulation setup and the results database Use this method if you want to reuse the simulation setup and view the simulation results, but do not want to plot waveforms or do other tasks that need access to simulation results in the new ADE XL view. For more information, see Copying the Simulation Setup and the Results Database in an ADE XL View on page 818. Copy everything (the simulation setup, results database, run log files and the simulation results) in the ADE XL view Use this method if you want to make a complete copy of an ADE XL view, or create a backup of an ADE XL view. For more information, see Copying Everything in an ADE XL View on page 820. Copying only the Simulation Setup in an ADE XL View To copy only the Simulation Setup in an ADE XL View, do the following. 1. Set the following environment variables in your .cdsenv file: ddserv.lib enableCopyInDFII boolean t cdsLibManager.copyGlobals mpsRadio toggle t 2. Start the Virtuoso design environment. 3. In the CIW, choose Tools – Library Manager. March 2015 © 1990-2015 815 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Library Manager form appears. 4. In the Library column, select the library in which the ADE XL view exists. 5. In the Cell column, select the cell in which the ADE XL view exists. 6. In the View column, select the ADE XL view. 7. Choose Edit – Copy. The Copy View form appears. March 2015 © 1990-2015 816 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 8. In the To group box, type specify the destination library, cell and view name. March 2015 © 1990-2015 817 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 9. Click OK to copy the ADE XL view. Copying the Simulation Setup and the Results Database in an ADE XL View To copy the simulation setup and the results database in an ADE XL view, do the following: 1. Perform steps 3 to 8 described in Copying only the Simulation Setup in an ADE XL View on page 815. 2. Select the Update Instances check box. The drop-down list becomes active. March 2015 © 1990-2015 818 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 3. From the drop-down list, select Of New Copies Only. March 2015 © 1990-2015 819 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 4. Click OK to copy the ADE XL view. See also: ■ How is the Results Database is Copied When an ADE XL View is Copied? on page 820 Copying Everything in an ADE XL View To copy everything in an ADE XL view, do the following: 1. If you have used the asimenv.startup projectDir environment variable to specify the location for storing simulation results, ensure that the variable is set in your .cdsenv file. For more information about specifying the location for storing simulation results, see the following topics: ❑ Specifying Options for Saving Simulation Results on page 81 ❑ saveResDir on page 962 2. Set the adexl.cpupdtr copyResultsData environment variable in your .cdsenv file. 3. Start the Virtuoso design environment. 4. Copy the ADE XL view using the procedure described in Copying the Simulation Setup and the Results Database in an ADE XL View on page 818. See also: ■ How is the Results Database is Copied When an ADE XL View is Copied? on page 820 ■ How are Simulation Results Copied When an ADE XL View is Copied? on page 821 How is the Results Database is Copied When an ADE XL View is Copied? This section describes how the results database is copied when an ADE XL view is copied using one of the following procedures: ■ Copying the Simulation Setup and the Results Database in an ADE XL View on page 818 ■ Copying Everything in an ADE XL View on page 820 March 2015 © 1990-2015 820 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The results database can be located inside or outside the ADE XL view. For more information about the location of the results database, see Specifying Results Database Location on page 84. ■ If the results database is located inside the ADE XL view, it is copied into the new ADE XL view. ■ If the results database is located outside the ADE XL view, it will not be copied into the new ADE XL view. Instead, a copy of the results database will be created in the specified results database location. For example, if the results database for the adexl view in the myCell cell of the myLib library is located outside the adexl view at: $HOME/myResultsDatabase/myLib/myCell/adexl/results/data and you copy the adexl view to a new view called adexl_copy, the results database for the adexl_copy view will be located at: $HOME/myResultsDatabase/myLib/myCell/adexl_copy/results/data How are Simulation Results Copied When an ADE XL View is Copied? Simulation results are always located outside the ADE XL view. For more information about the location of simulation results, see Specifying Options for Saving Simulation Results on page 81. When an ADE XL view is copied using the procedure described in Copying Everything in an ADE XL View on page 820, simulation results will not be copied into the new ADE XL view. Instead, a copy of the simulation results is created in the specified simulation results location. For example, if the simulation results for the adexl view in the myCell cell of the myLib library is located outside the adexl view at: $HOME/mySimulationResults/myLib/myCell/adexl/results/data/ and you copy the adexl view to a new view called adexl_copy, the simulation results for the adexl_copy view will be located at: $HOME/myResultsDatabase/myLib/myCell/adexl_copy/results/data/ March 2015 © 1990-2015 821 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Deleting an ADE XL View To delete an ADE XL view, do the following: 1. In the CIW, choose Tools – Library Manager. The Library Manager form appears. 2. In the Library column, select the library in which the ADE XL view exists. 3. In the Cell column, select the cell in which the ADE XL view exists. 4. In the View column, select the ADE XL view. 5. Choose Edit – Delete. The Delete Cell Views form appears. 6. Click OK. March 2015 © 1990-2015 822 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Working with Read-Only ADE XL Views An ADE XL view is considered a read-only view if: ■ You open the ADE XL view in read-only mode. ■ You do not have write permissions to the ADE XL view. The following sections describe how you can work with read-only ADE XL views: ■ Opening ADE XL Views in Read-Only Mode on page 823 ■ Opening ADE XL Views to Which You Do Not Have Write Permissions on page 824 ■ Running Simulations from Read-Only ADE XL Views on page 825 ■ Saving Setup Changes in Read-Only ADE XL Views on page 826 Opening ADE XL Views in Read-Only Mode You can open an ADE XL view in read-only mode from the Open ADE (G)XL View form or from Library Manager. Note: You need an ADE XL and VSE L/XL license to open a ADE XL view in read only mode. (CCR 3561651) For information about opening an ADE XL view in read-only mode from the Open ADE (G)XL View form, see Opening an Existing Setup on page 41. To open an ADE XL view in read-only mode from Library Manager, do the following: 1. In the CIW, choose Tools – Library Manager. The Library Manager form appears. March 2015 © 1990-2015 823 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 2. Use the Library, Cell, and View fields to select your ADE XL view. 3. In the View field, right-click on the ADE XL view and choose Open (Read -Only). The view is opened in ADE XL. The ADE XL title bar displays the text Reading if the view is opened in read-only mode. Opening ADE XL Views to Which You Do Not Have Write Permissions When you open an ADE XL view to which you do not have write permissions, the following message appears: March 2015 © 1990-2015 824 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Could not open for edit (no data or lock available). Would you like to open it for read? Click Yes to open the ADE XL view in read-only mode. For more information about opening ADE XL views, see “Opening an Existing Setup” on page 41. Running Simulations from Read-Only ADE XL Views You can run simulations from a read-only ADE XL view. However, note the following when you run simulations from read-only ADE XL views: ■ Location of Simulation Results Information for Read-Only ADE XL Views on page 825 ■ Location of Results Database Information for Read-Only ADE XL Views on page 825 ■ Number of History Entries Saved for Read-Only ADE XL Views on page 826 Note: You can disable running of simulations in a read-only ADE XL view using the adexl.gui disableRunInReadOnly environment variable. Location of Simulation Results Information for Read-Only ADE XL Views By default, the program writes simulation results information to libraryName/cellName/adexl/results/data/ in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. You can specify a different location for storing simulation results using the procedure described in Specifying Options for Saving Simulation Results on page 81. Location of Results Database Information for Read-Only ADE XL Views By default, the program writes results database information to libraryName/cellName/adexl/results/data in the location specified using the asimenv.startup projectDir environment variable. The default setting for this environment variable is $HOME/simulation. You can specify a different location for storing results database information using the procedure described in Specifying Results Database Location on page 84. March 2015 © 1990-2015 825 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Number of History Entries Saved for Read-Only ADE XL Views The setting for the number of history entries to be saved, specified in the Save Options form or the saveLastNHistoryEntries environment variable, will only apply to history entries created in the current ADE XL session. History entries created in previous ADE XL sessions will not be automatically removed. For more information about using the Save Options form, see Specifying How Much Data to Save on page 853. For more information about the saveLastNHistoryEntries environment variable, see saveLastNHistoryEntries on page 908. Saving Setup Changes in Read-Only ADE XL Views If you make any changes to the setup in a read-only ADE XL view, the Save As form appears when you save or close the ADE XL view. You can save the changes to a new ADE XL view in a location where you have write permissions. For information about using the Save As form, see Saving the Simulation Setup on page 813. Importing and Exporting the Simulation Setup You can import the simulation setup from an ADE XL view into the current ADE XL view. You can also export the simulation setup from the current ADE XL view to an existing or new ADE XL view. You can import or export the complete simulation setup or only specific simulation settings. This allows you to quickly reuse the simulation setup created for other designs. For more information, see the following sections: ■ Importing the Simulation Setup on page 826 ■ Exporting the Simulation Setup on page 829 Importing the Simulation Setup To import the simulation setup from an existing ADE XL view to the current ADE XL view, do the following: 1. Choose File – Import. March 2015 © 1990-2015 826 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Import Setup form appears. 2. Select the ADE XL view from which you want to import the setup. March 2015 827 © 1990-2015 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 3. In the History drop-down list, select the history item from which you want to import the setup. By default, the current simulation setup (indicated by the text Active) is selected for import. 4. In the What to Import group box, select the check box next to the settings you want to import. By default, all the settings existing in the history item specified in the History drop-down list are selected for import. You can click Select All to select all the settings for import, or click Clear All to clear all the selections. Select Tests Variables Parameters Run Mode Run Options Specifications Corners Model Groups Extensions To Import the test definitions in the Data View pane. The simulation state of each test is also saved in the subdirectories. Import the global variable definitions, including their enabled status and values, in the Data View pane. Import the deifinitions of parameters, including their enabled status and values, in the Data View pane. Import the active run mode and set it on the Run toolbar. Import the following settings: ■ Options in the Run Options form. ■ Simulation options for all the customized run modes. For example, if you changed the default simulation options of the Monte Carlo, Global Optimization, and Local Optimization run modes before saving the state, the tool will import the settings for all the three run modes. Import the specifications defined in the Outputs pane. This includes the details of the specification type and their target values. Import the corner definitions defined in the Corners Setup form. Import the model groups defined in the Corners Setup form. Import the parasitic details in the Parasitic Setup form. March 2015 © 1990-2015 828 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 5. In the Operation drop-down list, select the import mode. Select To retain Retain the current setup information and append other setup information for each setting selected in the What to Import group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. merge Overwrite the current setup information for items that have the same name and append other setup information for each setting selected in the What to Import group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. overwrite Overwrite the current setup information for each setting selected in the What to Import group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. 6. Click OK to import the setup into the current ADE XL view. Exporting the Simulation Setup To export the simulation setup from the current ADE XL view to an existing ADE XL view, do the following: 1. Choose File – Export. March 2015 © 1990-2015 829 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Export Setup form appears. 2. Select the ADE XL view to which you want to export the setup. 3. In the What to Export group box, select the check box next to the settings you want to export. March 2015 © 1990-2015 830 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup By default, all the settings existing in the current ADE XL view are selected for export. You can click Select All to select all the settings for import, or click Clear All to clear all the selections. Select Tests Variables Parameters Run Mode Run Options Specifications Corners Model Groups Extensions To Export the test definitions in the Data View pane. The simulation state of each test is also saved in the subdirectories. Export the global variable definitions, including their enabled status and values, in the Data View pane. Export the deifinitions of parameters, including their enabled status and values, in the Data View pane. Export the active run mode set on the Run toolbar. Export the following settings: ■ Options from the Run Options form. ■ Simulation options for all the customized run modes. For example, if you have changed the default settings of the Monte Carlo and Local Optimization run modes, but the currently active run mode is Global Optimization, the tool will export the settings for all three run modes. Export the specifications defined in the Outputs pane. This includes the details of the specification type and their target values. Export the corner definitions defined in the Corners Setup form. Export the model groups defined in the Corners Setup form. Export the parasitic details set by using the Parasitic Setup form. 4. Click OK to export the setup to the specified ADE XL view. Working with Setup States ADE XL and ADE GXL support different run modes like Single Run, Sweeps and Corners, Monte Carlo Sampling, Local Optimization, Global Optimization, and so on. For more information about run modes, see Specifying the Run Mode on page 79. March 2015 © 1990-2015 831 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup For each run mode, you may need a different simulation setup. For example, you may need different parameter specifications for running Monte Carlo analysis, optimization and . Similarly, you may need a different set of global variable values for running local and global optimization. Even for the same run mode, you may need a different simulation setup. For example, you may want to run Single Run, Sweeps and Corners with a different set of global variables. ADE XL and ADE GXL allow you to create setup states that contain all or part of the simulation setup. You can later restore the simulation setup from the setup state by loading all or part of the settings in the setup state. This allows you to avoid modifying the simulation setup every time you need to run simulation using a different setup. The following examples describe the use of setup states: Example 16-1 Different Setup States for Different Run Modes To have a different setup for Single Run, Sweeps and Corners runs and Monte Carlo analysis, do the following: 1. Define the settings required for Single Run, Sweeps and Corners runs and save the settings in a setup state named SweepsCornersSetup. For more information about creating a setup state, see Creating or Updating a Setup State on page 833. 2. Modify the settings as required for Monte Carlo analysis, and save the settings in a setup state named MonteCarloSetup. 3. Do the following: ❑ Before you run Single Run, Sweeps and Corners, load the SweepsCornersSetup setup state using the Overwrite option. For more information about loading a setup state, see Loading a Setup State on page 835. ❑ Before you run Monte Carlo analysis, load the MonteCarloSetup setup state using the Overwrite option. Example 16-2 Different Setup States for Different Set of Global Variables To run Single Run, Sweeps and Corners with a different set of global variables, do the following: 1. Create the first set of global variables and save the variables in a setup state named SetupGlobalVars_1. March 2015 © 1990-2015 832 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup For more information about creating global variables, see Creating a Global Variable on page 214. For more information about creating a setup state, see Creating or Updating a Setup State on page 833. 2. Delete the first set of global variables. 3. Create the second set of global variables and save the variables in a setup state named SetupGlobalVars_2. 4. Do one of following before you run Single Run, Sweeps and Corners: ❑ To run Single Run, Sweeps and Corners using the global variables in the setup state named SetupGlobalVars_1, load the SetupGlobalVars_1 setup state using the Overwrite option. For more information about loading a setup state, see Loading a Setup State on page 835. ❑ To run Single Run, Sweeps and Corners using the global variables in the setup state named SetupGlobalVars_2, load the SetupGlobalVars_2 setup state using the Overwrite option. See the following topics for more information: ■ Creating or Updating a Setup State on page 833 ■ Loading a Setup State on page 835 ■ Deleting a Setup State on page 838 ■ Running a Simulation Using a Setup State on page 843 Creating or Updating a Setup State To create a new setup state, or update an existing setup state, do the following: 1. Choose File – Save Setup State. March 2015 © 1990-2015 833 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Save Setup State form appears. 2. Do one of the following: ❑ To create a new setup state, enter the name of the setup state in the State field. ❑ To update an existing setup state, select an existing state in the Existing list. 3. In the What to Save group box, select the check box next to the settings you want to save. By default, all the settings existing in the ADE XL view are selected for saving. You can click Select All to select all the settings for saving, or click Clear All to clear all the selections. Select Tests March 2015 © 1990-2015 To Save the test definitions in the Data View pane. The simulation state of each test is also saved in the subdirectories. 834 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Variables Parameters Run Mode Run Options Specifications Corners Model Groups Extensions Save the global variable definitions, including their enabled status and values, in the Data View pane. Save the deifinitions of parameters, including their enabled status and values, in the Data View pane. Save the active run mode that is currently selected on the Run toolbar. Save the following settings: ■ Options from the Run Options form. ■ Simulation options for all the customized run modes. For example, if you have changed the default settings of the Monte Carlo and Local Optimization run modes, but the currently active run mode is Global Optimization, the tool will save the settings for all three run modes. Save the specifications defined in the Outputs pane. This includes the details of the specification type and their target values. Save the corner definitions defined in the Corners Setup form. Save the model groups defined in the Corners Setup form. Save the parasitic details set by using the Parasitic Setup form. 4. Click OK. Loading a Setup State To load a setup state, do the following: 1. Choose File – Load Setup State. March 2015 © 1990-2015 835 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Load Setup State form appears. 2. In the State Name group box, select the name of the state you want to load. 3. In the What to Load group box, select the check box next to the settings you want to restore to the current simulation setup. By default, all the settings existing in the setup state are selected for restore. You can click Select All to select all the settings for restoring, or click Clear All to clear all the selections. Select Tests March 2015 © 1990-2015 To Restore the test definitions in the Data View pane. The simulation state of each test is also saved in the subdirectories. 836 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Variables Parameters Run Mode Run Options Specifications Corners Model Groups Extensions Restore the global variable definitions, including their enabled status and values, in the Data View pane. Restore the deifinitions of parameters, including their enabled status and values, in the Data View pane. Restore the active run mode and set it on the Run toolbar. Restore the following settings: ■ Options in the Run Options form. ■ Simulation options for all the customized run modes. For example, if you changed the default simulation options of the Monte Carlo, Global Optimization, and Local Optimization run modes before saving the state, the tool will restore the settings for all the three run modes. Restore the specifications defined in the Outputs pane. This includes the details of the specification type and their target values. Restore the corner definitions and their enable status defined in the Corners Setup form. Restore the model groups defined in the Corners Setup form. Restore the parasitic details set by using the Parasitic Setup form. 4. In the Operation drop-down list, select the restore mode. Select retain merge To Retain the current setup information and append other setup information for each setting selected in the What to Load group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. Overwrite the current setup information for items that have the same name and append other setup information for each setting selected in the What to Load group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. March 2015 © 1990-2015 837 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup overwrite Overwrite the current setup information for each setting selected in the What to Load group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. 5. Click OK to load the selected setup state. Deleting a Setup State To delete a setup state, do the following: 1. Choose File – Remove Setup State. The Remove Setup State form appears. 2. In the State Name group box, select the name of the setup state you want to delete. 3. Click OK to delete the setup state. March 2015 © 1990-2015 838 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup How the Simulation Setup is Updated When You Load Setup States When you load a setup state, you can choose to load the following settings: ■ Tests ■ Run mode settings ■ Corners ■ Global variables ■ Run options ■ Model groups ■ Parameters ■ Specifications ■ Extensions You can also choose to load setup states in the following modes: ■ retain ■ merge ■ overwrite This section describes how the current simulation setup is updated when you load a setup state in retain, merge or overwrite mode. To understand how the current simulation setup is updated when you load a setup state in retain, merge or overwrite mode, we will do the following: ■ Choose to load Variables from a setup state named mySetupState. March 2015 © 1990-2015 839 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup ■ Use a current simulation setup that has the following global variables: ■ Load a setup state named mySetupState that has the following global variables: See the following sections to understand how the current simulation setup is updated when you load the setup state in retain, merge or overwrite mode: ■ Results of Loading a Setup State in Retain Mode on page 841 ■ Results of Loading a Setup State in Merge Mode on page 842 ■ Results of Loading a Setup State in Overwrite Mode on page 843 March 2015 © 1990-2015 840 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Results of Loading a Setup State in Retain Mode The updated simulation setup after loading the setup state in retain mode will have the following global variables: Note the following: ■ The settings for the clk_freq variable are retained because the setup state has a variable with the same name. ■ The settings for the cload variable are retained ■ The fsignal variable is added because the current simulation setup does not have a variable with the same name March 2015 © 1990-2015 841 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Results of Loading a Setup State in Merge Mode The updated simulation setup after loading the setup state in merge mode will be: Note the following: ■ The settings for the clk_freq variable are overwritten because the setup state has a variable with the same name. ■ The settings for the cload variable are retained because the setup state does not have a variable with the same name. ■ The fsignal variable is added because the current simulation setup does not have a variable with the same name. March 2015 © 1990-2015 842 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Results of Loading a Setup State in Overwrite Mode The updated simulation setup after loading the setup state in overwrite mode will be: Note that all the global variables in the current simulation setup are deleted and the global variables in the setup state are added when you load the setup state in overwrite mode. Running a Simulation Using a Setup State You can run a simulation based on the settings in a setup state. To run a simulation using a setup state, do the following: ➤ Right-click the setup state in the expanded Setup States tree on the Data View pane and choose Run. Note: The history item for the simulation run will have a name starting with the name of the setup state. For example, if the name of the setup state is myCorners, the history item will have the name myCorners.seqNum, where seqNum is 0 (zero) for the first history item, then 1+(the largest existing seqNum for that setup state). For more information about history items, see Chapter 17, “Working with Checkpoints.” March 2015 © 1990-2015 843 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Creating a Plan Using Setup States A plan is a sequence of steps required to complete a particular task. For example, characterizing a design might involve running several tests or sweeps. These tasks can be grouped together to form a characterization plan. You can create a plan by creating a setup state for each task in the plan and linking the setup states, in the order they need to be run, to an OCEAN script file. When you run the OCEAN script file, ADE XL does the following for each setup state, in the order in which the setup states are linked to the OCEAN script file: 1. Loads the current simulation setup to memory. 2. Loads the setup state to update the simulation setup in memory. 3. Runs simulation using the updated simulation setup in memory. 4. Clears the simulation setup in memory. For example, if you have two tasks in a plan, create two setup states—say, myTask1 and mytask2—that contain the simulation settings required to run the simulations corresponding to each task in the plan. Then link the setup states to an OCEAN script file named myPlan.ocn, in the order in which they need to be run. When you run the myPlan.ocn OCEAN script file, ADE XL does the following: 1. Loads the current simulation setup to memory. 2. Loads the myTask1 setup state to update the simulation setup in memory. 3. Runs simulations using the updated simulation setup in memory. 4. Clears the simulation setup in memory. 5. Loads the current simulation setup to memory. 6. Loads the myTask2 setup state to update the simulation setup in memory. 7. Runs simulations using the updated simulation setup in memory. 8. Clears the simulation setup in memory. To create a plan, do the following: 1. Create setup states that contain the simulation settings required to run the simulations corresponding to each task in the plan. For more information, see Creating or Updating a Setup State on page 833. March 2015 © 1990-2015 844 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup 2. Right-click a setup state in the expanded Setup States tree on the Data View pane and choose Link to OCEAN XL Script. The Choose an OCEAN XL File form appears. 3. Do one of the following: ❑ To link a setup state to a new OCEAN script file, type the name of the OCEAN script file in the File Name field, and click Open. ❑ To link a setup state to an existing OCEAN script file, select the OCEAN script file, and click Open. The following message appears: File already exists. How do you want to link to it. Do one of the following: ❍ Click Append to add the OCEAN XL commands required to link the setup state in the end of the file. ❍ Click Overwrite to delete the contents of the file and add only the OCEAN XL commands required to link the setup state. March 2015 © 1990-2015 845 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup The Link Setup State form appears. 4. In the State Name group box, select the name of the setup state you want to link to the OCEAN XL script file. 5. In the What to Link group box, select the check box next to the settings you want to be restored to the simulation setup in memory. By default, all the settings existing in the setup state are selected. You can click Select All to select all the settings, or click Clear All to clear all the selections. Select Tests Run Mode To Restore tests Restore run mode settings March 2015 © 1990-2015 846 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup Corners Variables Run Options Model Groups Parameters Specifications Extensions Restore corners Restore global variables Restore run options Restore model groups Restore parameters Restore specifications Restore extensions 6. In the Operation drop-down list, select the restore mode. Select To retain Retain the setup information in memory and append other setup information for each setting selected in the What to Link group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. merge Overwrite the setup information in memory for items that have the same name and append other setup information for each setting selected in the What to Link group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. overwrite Overwrite the setup information in memory for each setting selected in the What to Link group box. For more information, see How the Simulation Setup is Updated When You Load Setup States on page 839. 7. Click OK to link the setup state to the OCEAN script file. The OCEAN script file is opened in a text editor. The OCEAN script file contains the OCEAN XL commands required to required to link the setup state. ;----------------- Setup State "myStep1" --------------ocnSetXLMode() ocnxlTargetCellView( "workshopLib" "MSPS_DUT" "adexl" ) ocnxlLoadSetupState( "myStep1" ’retain ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?extensions t ?specs nil ?corners nil ?modelGroups nil ) ocnxlRun() March 2015 © 1990-2015 847 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup ocnxlOutputSummary() ocnxlEndXLMode() 8. Repeat steps 2 to 7 to link more setup states to the OCEAN script file. The OCEAN XL commands required to required to link the setup states are appended in the order in which they are linked to the OCEAN script file. The following example shows how three setup states named myTask1, mytask2 and myTask3 are linked to an OCEAN script file. ;----------------- Setup State "myStep1" --------------ocnSetXLMode() ocnxlTargetCellView( "workshopLib" "MSPS_DUT" "adexl" ) ocnxlLoadSetupState( "myStep1" ’retain ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?extensions t ?specs nil ?corners nil ?modelGroups nil ) ocnxlRun() ocnxlOutputSummary() ocnxlEndXLMode() ;----------------- Setup State "myStep2" --------------ocnSetXLMode() ocnxlTargetCellView( "workshopLib" "MSPS_DUT" "adexl" ) ocnxlLoadSetupState( "myStep2" ’retain ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?extensions t ?specs nil ?corners nil ?modelGroups nil ) ocnxlRun() ocnxlOutputSummary() ocnxlEndXLMode() ;----------------- Setup State "myStep3" --------------ocnSetXLMode() ocnxlTargetCellView( "workshopLib" "MSPS_DUT" "adexl" ) ocnxlLoadSetupState( "myStep3" ’overwrite ?tests t ?vars t ?parameters t ?currentMode t ?runOptions t ?extensions t ?specs nil ?corners nil ?modelGroups nil ) ocnxlRun() ocnxlOutputSummary() ocnxlEndXLMode() 9. Load and run your OCEAN script file in the Command Interpreter Window (CIW). For more information, see the OCEAN Reference. Important You must not load and run your OCEAN XL script in the CIW while ADE XL is still running for the same cellview. When you run the OCEAN XL script, the program reports the following information: ❑ Sweep parameters and their values March 2015 © 1990-2015 848 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup ❑ Number of tests, sweep points, and corners ❑ Points completed and job status information ❑ Results location to the output area of the CIW For example: 1/1 completed. *Info* The result of this OCEAN XL run are saved in "Interactive.3" in library "workshopLib", cell "MSPS_DUT", view "adexl". The results location corresponds to the lib/cell/view specified in the ocnxlTargetCellView call, such as ocnxlTargetCellView( "workshopLib" "MSPS_DUT" "adexl" ) See “OCEAN Commands in XL Mode” in the OCEAN Reference for information about OCEAN script commands for ADE XL. March 2015 © 1990-2015 849 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with the Simulation Setup March 2015 © 1990-2015 850 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide 17 Working with Checkpoints You can use checkpoints in the ADE XL environment to save the active configuration of data such as corners analysis setup, global variables, sweep and test definitions. The environment creates a checkpoint prior to running a simulation and stores checkpoints in your project directory. You can restore fragments of a checkpoint (such as just the sweep setup), edit the data, and run the simulation again. Checkpoints appear as part of history items on the History tab of the Data View assistant pane in your ADE XL environment. See the following topics for more information: ■ Expanding and Collapsing Tree Branches on page 852 ■ Specifying How Much Data to Save on page 853 ■ Overwriting a History Item during Subsequent Simulation Runs on page 855 ■ Viewing Active Setup Details on page 858 ■ Viewing Checkpoints on page 859 ■ Adding Notes to a Checkpoint on page 860 ■ Renaming Checkpoints on page 862 ■ Restoring a Checkpoint on page 863 ■ Viewing Results from a Particular Checkpoint on page 864 ■ Opening a Terminal Window in the Results Directory for a Particular History Item on page 865 ■ Deleting a Checkpoint on page 866 ■ Locking and Unlocking a History Item on page 866 ■ Working with Datasheets on page 868 See also “History Tab Right-Click Menus” on page 879. March 2015 © 1990-2015 851 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Expanding and Collapsing Tree Branches To expand a tree branch on the History tab of the Data View assistant pane, do the following: ➤ Click + to expand an item. The set of items belonging to that branch appear beneath it. Tip Another way to expand a tree branch on the History tab is to right-click the branch and choose Expand from the context-sensitive menu. To collapse a tree branch, do the following: ➤ Click - to collapse an item. The set of items belonging to that branch are no longer visible. Tip You can also double-click most items to expand or collapse them. The exception is the top branches in the tree: You can type new names for the top branches in the tree by double-clicking them. See Renaming Checkpoints for more information. March 2015 © 1990-2015 852 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Specifying How Much Data to Save To specify the number of history entries for which you want to save simulation data, do the following: 1. Choose Options – Save. The Save Options form appears. 2. In the History Entries to Save group box, type the number of history items you want to save. Note: The History Entries to Save group box setting is ignored when you submit a point for evaluation (see Submitting a Point) or troubleshoot a design or data point (see Troubleshooting a Design or Data Point). March 2015 © 1990-2015 853 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints 3. Click OK. The program saves only as many history items as the number you typed and automatically removes (does not retain) any unlocked history items above and beyond that number. The reference history item used for incremental simulation runs (see Running an Incremental Simulation) is not automatically removed. For information about how history entries are saved when you open an ADE XL view in read-only mode, see Number of History Entries Saved for Read-Only ADE XL Views. See Locking and Unlocking a History Item for information about how to lock or unlock history items. Note: For information on the Design Points per Optimization Run group box settings, see “Specifying How Much Optimization Data to Save” in the Virtuoso Analog Design Environment GXL User Guide. March 2015 © 1990-2015 854 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Overwriting a History Item during Subsequent Simulation Runs By default, a new history item is created for each simulation run. If you want to do any of the following, you can specify that the selected history item be overwritten during subsequent simulation runs: ■ Save disk space by using the same history item for subsequent simulation runs. ■ Reuse the netlist from a history item. ■ Reuse the OCEAN and other scripts that you use with your design If a new history item is created for each simulation run, the netlist and result directory paths change for each simulation run. This requires you to modify these directory paths in the OCEAN and other scripts that you use with your design for each simulation run. However, when a history item is set to be overwritten, the same netlist and result directories are used for subsequent simulation runs. This enables you to reuse the OCEAN and other scripts because you need not change the directory paths in the scripts. ■ Perform any other task that requires that the netlist directory does not change for subsequent simulation runs. Such tasks include: ❑ Saving simulation snapshots at specified timepoints during a transient analysis simulation that is run by using the Virtuoso Spectre or Virtuoso UltraSim simulator, and later restarting the simulation from a specific snapshot. For more details about how to save the state of a simulation run at a given timepoint, refer to the Virtuoso Analog Design Environment L user guide. ❑ Reusing state files created during simulation runs for subsequent simulation runs. For example, you can reuse the spectre.ic and spectre.fc state files containing DC operating point output at the first and last step of a transient analysis sweep in subsequent simulation runs. Video You can view video demonstration for this feature at Overwriting a History Item during Simulation Runs in Virtuoso Analog Design Environment XL. To overwrite a history item during subsequent simulation runs, do the following: 1. Choose Options – Save. March 2015 © 1990-2015 855 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints The Save Options form appears. 2. Select the Overwrite History check box. Note: If the number of histories to be saved is specified as 1 in the Save field, the Overwrite History check box is automatically selected. The value displayed in the Save field is determined by the value of the saveLastNHistoryEntries environment variable. If required, you can edit the value in this field. 3. From the Overwrite History drop-down list, select one of the following: March 2015 © 1990-2015 856 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints ❑ Select the history item you want to be overwritten every time a simulation is run. ❑ Select Next History Run if you want the history item created for the next simulation run to be overwritten during simulation runs. For example, if you run Single Run, Corners and Sweeps analysis after selecting Next History Run, the history item, say Interactive.5, that is created will be automatically selected as the overwrite history item. The Interactive.5 history item will then be overwritten for subsequent simulation runs. 4. By default, the netlist directory of a previous run history is deleted and then created again before the next run. If you want to reuse the files related to simulation, such as the state files that are created during the previous history runs, you can select the Retain Netlist Directory check box. When this check box is selected, the netlist directory of the previous history is retained to reuse the simulation information in the next run. Note that the netlist is generated incrementally in case you change any design information or some of the simulation settings. Note: The netlist directory of a history item is retained only if the run mode has not changed after the last simulation run. 5. Click OK. Important Points to Note ■ The Overwrite History drop-down list displays the names of only the history items that are not locked or selected as a reference history item (see Running an Incremental Simulation on page 539 for more details about reference history items). ■ The Overwrite History option is automatically set to Next History Run if you lock, rename, or delete the history item that was set to be overwritten. ■ The Overwrite History check box is automatically deselected if an operation on the history item set to be overwritten requires the history item to be referenced. History items are referenced when you do any of the following: ❑ Submit a point (see Submitting a Point) ❑ Simulate only error or incomplete points (see Simulating Only Error or Incomplete Points on page 559) ❑ Troubleshoot a design or data point (see Troubleshooting a Design or Data Point on page 561) ❑ Run incremental simulation (see Running an Incremental Simulation on page 539) March 2015 © 1990-2015 857 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints For example, if the history item named Interactive.5 that is set to be overwritten is also selected as a reference history item for an incremental simulation run, the Overwrite History check box is automatically deselected and Interactive.5 is not overwritten during subsequent simulation runs. ■ The values for the Overwrite History and Next History Run options are saved in the setup database, and the values for the other save options are saved in the ADE XL project directory. ■ To apply default values for the two overwrite history options that can be used by all the adexl views, you can use the axlSetOverwriteHistory and axlSetOverwriteHistoryName SKILL functions in the .cdsinit file. For more details on these functions, see ADE XL SKILL Reference Guide. For more details on saving simulation data by using the Save Options form, see Specifying Options for Saving Simulation Results. Viewing Active Setup Details To view details for the active setup, do the following: 1. On the Setup DB Viewer assistant pane, click + to expand the Active Setup tree. Details for the current setup appear in the expanded tree. 2. (Optional) Click + at each level of the tree to expand it. March 2015 © 1990-2015 858 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Viewing Checkpoints To view checkpoints, do the following: ➤ Click the History tab of the Data View assistant pane. The name of the history item is runType.seqNum Where, runType is one of the following: ❑ Interactive (for Single Run, Sweeps and Corners runs) ❑ MonteCarlo (for Monte Carlo Sampling runs) ❑ GlobalOpt (for Global Optimization runs) ❑ LocalOpt (for Local Optimization runs) ❑ SensitivityAnalysis (for Sensitivity Analysis runs) ❑ ImproveYield (for runs) ❑ FeasibilityAnalysis (for Feasibility Analysis runs) ❑ SizeOverCorners (for Size Over Corners runs) and seqNum is 0 (zero) for the first item, then 1+(the largest existing seqNum for that runType). When you troubleshoot a design or data point (see Troubleshooting a Design or Data Point on page 561, the name of the resulting history item is runType.seqNum.TS.seqNum To view details for a particular checkpoint, do the following: March 2015 © 1990-2015 859 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints 1. On the History tab of the Data View assistant pane, click + to expand the checkpoint whose details you want to view. Checkpoint details appear in the expanded branch, including what testbenches were run, what parameters were varied, and any specifications or corners. 2. (Optional) Click + to the left of each level of the tree to expand it. Note: ImproveYield, Manual Tuning, and SizeOverCorners history items are slightly different from other history items in that they have historychildren items that correspond to other simulations that are run during these runs. The historychildren items are displayed under the History Children tree for a history item, as shown in the figure below. historychildren items for a Size Over Corners run Adding Notes to a Checkpoint To add notes to a checkpoint, do the following: 1. On the History tab of the Data View assistant pane, right-click the history for which you want to add notes and choose Notes. March 2015 © 1990-2015 860 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints The Add/Edit Notes form is displayed. 2. In the Notes field, add notes for the history. Note: By default, the notes field can accept only 512 characters. To change the default maximum characters limit, you can set the maxNotesLength environment variable. 3. Click OK. For related information, see Adding Notes to a Test. March 2015 © 1990-2015 861 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Renaming Checkpoints When the program creates a checkpoint, the checkpoint appears in the History tab of the Data View assistant pane. To rename a checkpoint, do the following: 1. Double-click the checkpoint name (for example, Interactive.0). The name becomes editable. 2. Type a new name or click-drag to highlight the portion of the name you want to change and type new text. The name you type must be unique (that is, not the same as any other checkpoint name). 3. Press Return when finished. The new name appears in place of the old name in the History tab. Note the following: ■ If you rename ImproveYield and SizeOverCorners history items, the corresponding historychildren items are also automatically renamed. ■ You cannot rename historychildren items. March 2015 © 1990-2015 862 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Restoring a Checkpoint You can restore all or parts of a checkpoint. Restoring an Entire Checkpoint To restore an entire checkpoint, do the following: ➤ In the History tab of the Data View assistant pane, right-click the checkpoint you want to restore and choose Load Setup to Active. The program restores test setup (including run mode) and parameter information to the various assistant panes. You can access results on the Results tab of the Outputs pane. The results database context in Calculator and Results Browser is also set to the results of this history. See Chapter 14, “Viewing, Plotting, and Printing Results” for more information. Restoring Part of a Checkpoint To restore part of a checkpoint, do the following: 1. In the History tab of the Data View assistant pane, expand the history item. 2. In the expanded history item, right-click the item or set of selected items you want to restore and choose Load Setup to Active. For example, you can ❑ Right-click the Tests, Global Variables, Parameters or Corners branch and choose Load Setup to Active to restore all tests, corners, or specifications in the checkpoint. ❑ Select/highlight one or more: ❍ tests under the Tests branch, or ❍ corners under the Corners branch. then right-click and choose Load Setup to Active to restore them. The program restores the selected item or items. See also “Viewing Results from a Particular Checkpoint” next. March 2015 © 1990-2015 863 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Viewing Results from a Particular Checkpoint To view the results from a particular checkpoint, do the following: ➤ In the History tab of the Data View assistant pane, right-click the checkpoint whose results you want to view and choose View Results. The results appear on a new tab in the Results tab of the Outputs pane. The name of the tab matches the name of the history item whose results you are viewing. Important If you want to access results from a previous checkpoint, you need to restore the checkpoint. See Chapter 14, “Viewing, Plotting, and Printing Results” for more information. Saving Results from a Particular Checkpoint To save the results from a particular checkpoint, do the following: 1. In the History tab of the Data View assistant pane, right-click the checkpoint whose results you want to view and choose Save Results. The Save Results form appears. 2. Enter the path to the directory where you want to save the results. Alternatively click the browse button to specify the directory. 3. (Optional) Select the Copy PSF Results? check box if you want to copy PSF results 4. Click OK. Viewing Results for a Particular Checkpoint in the Results Browser Window To view the results for a particular checkpoint in the Results Browser window, do the following: ➤ In the History tab of the Data View assistant pane, right-click the checkpoint whose results you want to view and choose Results Browser. The Results Browser window appears. March 2015 © 1990-2015 864 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Viewing the Run Log for a Particular Checkpoint To view the simulation run log file for a particular checkpoint, do one of the following: ➤ Click on the Open Run Log button in the Results tab. ➤ In the History tab of the Data View pane, right-click the checkpoint whose run log file you want to view and choose Open Run Log. The Run Log | Log File Viewer form appears displaying the simulation run log file. Tip You can also view the contents of the run log file in the Status view on the Results tab. Opening a Terminal Window in the Results Directory for a Particular History Item To open a terminal window in the results directory for a particular history item, do the following: ➤ In the History tab of the Data View assistant pane, right-click the history item whose results directory you want to view and choose Open Terminal. A terminal window opens in the results/data/ directory. For example, if the history item you right-click is Interactive.2, the terminal window opens in the results/data/Interactive.2 directory. For more information about the location of the results directory, see Specifying Options for Saving Simulation Results on page 81. Note: You can specify the command the program uses to open a terminal window using the adexl.gui openTerminalCommand environment variable. ImproveYield and SizeOverCorners history items are slightly different from other history items in that the Open Terminal menu item appears on the historychildren items (such as ImproveYield.0.GlobalOpt.0) rather than on the history item itself. To open a terminal window in the results directory for a particular ImproveYield history item, do the following: ➤ In the History tab of the Data View assistant pane, right-click the history children item whose results directory you want to view and choose Open Terminal. March 2015 © 1990-2015 865 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints A terminal window opens in the results/data/historyChild directory. For example, if the historychildren item you right-click is ImproveYield.0.GlobalOpt.0, the terminal window opens in the results/data/ImproveYield.0.GlobalOpt.0 directory. Deleting the Simulation Data for a History Item To delete the simulation data for a history item, do the following: ➤ In the History tab, right-click the history item for which you want to delete the simulation data and choose Delete Simulation Data. Deleting a Checkpoint To delete a checkpoint from the History tab of the Data View assistant pane, do the following: ➤ In the History tab, right-click the history item that contains the checkpoint you want to delete and choose Delete. The program removes the history item and its checkpoint from the History tree and the raw simulation results from the results directory. Locking and Unlocking a History Item To lock a history item so that you cannot delete it, do the following: ➤ In the History tab of the Data View assistant pane, right-click the history item you want to protect from accidental deletion and choose Lock. The icon that appears to the left of the history item in the History tab becomes a lock. You cannot delete this item while the lock icon is present. (The Delete item is not available on the context-sensitive menu.) The number of locked items does not count toward number of saved items. To unlock a history item, do the following: ➤ In the History tab of the Data View assistant pane, right-click the history item you want to unlock and choose Unlock. The program replaces the lock icon with the clock icon and you can delete this history item. (The Delete item is now available on the context-sensitive menu.) March 2015 © 1990-2015 866 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Note the following: ■ If a history item is locked, all the historychidren items listed under the History Children tree are also locked. You cannot unlock a historychidren item when the history item is locked. ■ If a history item is unlocked, all the historychidren items listed under the History Children tree are also unlocked. ■ If you lock a historychidren item when the history item is unlocked, the history item and all other historychidren items are also locked. March 2015 © 1990-2015 867 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Working with Datasheets ■ Creating a Datasheet for a Checkpoint on page 868 ■ Displaying Customized Waveform Images in the Data Sheet on page 877 ■ Opening a Datasheet on page 877 ■ Customizing the Datasheet Format and Structure on page 878 Creating a Datasheet for a Checkpoint To create a datasheet for a checkpoint, do the following: 1. In the History tab of the Data View pane, right-click the checkpoint for which you want to create a datasheet and choose Create Datasheet. March 2015 © 1990-2015 868 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints The Create Datasheet form appears. Note the following: ❑ You can also choose Create – Datasheet or click the the Create Datasheet form. toolbar button to open ❑ You cannot create a datasheet for a check point when simulations are in progress for that checkpoint. 2. In the Name field, type a name for the datasheet. Note: By default, the name of the datasheet is the name of the checkpoint for which you March 2015 © 1990-2015 869 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints are creating the datasheet. For example, if you are creating a datasheet for a checkpoint named Interactive.17, the default name of the datasheet will be Interactive.17. 3. In the Location field, type the directory path where you want the program to write your datasheet; or do the following: a. Click Browse. b. On the form that appears, navigate to and select the directory where you want the program to write your datasheet. c. Click Open. Note the following: ❑ By default, the datasheet is created in the documents folder of the ADE XL view. ❑ If you do not specify the absolute path to a directory in the Location field, the directory will be created in your current working directory (the directory in which you ran the virtuoso command). For example, if you run the virtuoso command from /net/designs/myDesign and type myDatasheets in the Location field, datasheets will be created in the /net/designs/myDesign/myDatasheets directory. March 2015 © 1990-2015 870 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints 4. (Optional) Select or deselect the following check boxes: Check Box Spec Summary Variables Summary Corners Summary Description When turned on, this option writes spec summary information to the datasheet. Spec summary information is displayed in the following sections in the datasheet: ■ Results Summary section in the main datasheet page ■ Results Summary section in the datasheet page for each test The text Various in the Target column in the Results Summary section indicates that you have overridden or disabled one or more corner specifications for a measurement. For more information, see Disabling and Enabling Corner Specifications on page 756. For information about the colors used in the Minimum Value and Maximum Value columns in the Results Summary section, see Colors Used to Display Status of Measured Values and Specifications in Datasheets on page 876. When turned on, this option writes variables summary information to the datasheet, including names and values of variables. Variables summary information is displayed in the Variables section in the main datasheet page. When turned on, this option writes corners summary information to the datasheet, including the list of corners enabled or disabled for each test, values of parameters and design variables at corners, and the model groups added for each corner. Corners summary information is displayed in the Corners section in the main datasheet page. March 2015 © 1990-2015 871 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Check Box Tests summary Parameters Summary Detailed Results Description When turned on, this option writes test summary information to the datasheet, including test name, test design, simulator, and state information. Tests summary information is displayed in the Tests Summary section in the main datasheet page. When turned on, this option writes parameters summary information to the datasheet, including names and values of parameters. Parameters summary information is displayed in the Parameters section in the main datasheet page. When turned on, this option writes detailed results information for each test to the datasheet, including parameter values for each run (sweeps, corners) and output values for each measurement expression. Detailed results information for each test is displayed in the Detailed Results section in the datasheet page for that test. For information about the colors used in the Value and Target columns in the Outputs sub-section of the Detailed Results section, see Colors Used to Display Status of Measured Values and Specifications in Datasheets on page 876. Note: The Target column is displayed for a measurement in the Outputs sub-section of the Detailed Results section only if you have overridden or disabled a corner specification for the measurement. For more information about overriding or disabling corner specifications, see Working with Specifications on page 746. March 2015 © 1990-2015 872 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Check Box Waveforms Description When turned on, this option displays waveform images in the datasheet files for each test. The waveform images display the outputs for which the Plot check box is selected in the Outputs Setup tab of the Outputs pane. If you want only specific results to be displayed in the waveform images in a datasheet, do the following before you create the datasheet: 1. On the Outputs Setup tab of the Outputs pane, select the Plot check box next to the outputs that you want to include in the waveforms. 2. On the Results tab of the Outputs pane, click the button. The waveform images are saved as Portable Network Graphic (.png) image files in the datasheet directory. For more information about the location of the datasheet directory, see Location of Datasheet Files on page 875. Note: By default, the waveform images in the results directory for a history item are displayed in the datasheet. If waveform images are not available for a history item, they are automatically created and displayed in the datasheet. See also: Displaying Customized Waveform Images in the Data Sheet on page 877 March 2015 © 1990-2015 873 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Check Box Launch in browser Description When turned on, this option launches the datasheet in an web browser. The datasheet is displayed in the browser specified in the Web Browser field of the CIW's User Preferences form. The default value of the Web Browser field is netscape. You can also specify the default browser to be used by setting the following environment variable in the your .cdsenv file before starting the Virtuoso Design Environment: ui webBrowser string “browserName” where browserName is the name of the browser’s executable. The default value for this environment variable is netscape. Note: Ensure that your web browser supports XML and XSLT. 5. (Optional) In the Points tab, do one of the following: Select Design Point ID All Design Points To Include results information only for a specific design point in the datasheet. Type the ID of the design point in the Design Point ID field. Note: You can find the ID for a design point from the Point column in the Results tab of the Outputs pane. Include results information for all the design points in the datasheet. 6. (Optional) In the Description tab, enter a description for the datasheet. 7. Click OK. The program writes the datasheet information you requested. If you selected the Launch in browser check box, the program also launches the datasheet in an HTML browser. March 2015 © 1990-2015 874 Product Version 6.1.6 All Rights Reserved. Virtuoso Analog Design Environment XL User Guide Working with Checkpoints Location of Datasheet Files The datasheet files are saved in a directory that has the same name as the name of the datasheet. For example, if you specified the name of the datasheet as myDatasheet in the Create Datasheet form, the datasheet files are saved in the myDatasheet directory in the location specified in the Create Datasheet form. The datasheet directory contains the following files: Table 17-1 Datasheet Files File Name Description .xml _.xml The main datasheet file. For example, if you specified the name of the dat