virtuoso schematic composer user guide
TRANSCRIPT
Virtuoso Schematic Composer User Guide
June 2000 1 Product Version 4.4.6
Virtuoso ® Schematic Composer UserGuide
Product Version 4.4.6June 2000
1990-2000 Cadence Design Systems, Inc. All rights reserved.Printed in the United States of America.
Cadence Design Systems, Inc., 555 River Oaks Parkway, San Jose, CA 95134, USA
Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. (Cadence) contained in thisdocument 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 1-800-862-4522.
All other trademarks are the property of their respective holders.
Restricted Print Permission: This publication is protected by copyright and any unauthorized use of thispublication may violate copyright, trademark, and other laws. Except as specified in this permission statement,this publication may not be copied, reproduced, modified, published, uploaded, posted, transmitted, ordistributed in any way, without prior written permission from Cadence. This statement grants you permission toprint one (1) hard copy of this publication subject to the following conditions:
1. The publication may be used solely for personal, informational, and noncommercialpurposes;
2. The publication may not be modified in any way;
3. Any copy of the publication or portion thereof must include all original copyright,trademark, and other proprietary notices and this permission statement; and
4. Cadence reserves the right to revoke this authorization at any time, and any such useshall be discontinued immediately upon written notice from Cadence.
Disclaimer: Information in this publication is subject to change without notice and does not represent acommitment on the part of Cadence. The information contained herein is the proprietary and confidentialinformation of Cadence or its licensors, and is supplied subject to, and may be used only by Cadence’scustomer in accordance with, a written agreement between Cadence and its customer. Except as may beexplicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representationsor 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 Cadenceassume 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 inFAR52.227-14 and DFAR252.227-7013 et seq. or its successor.
Virtuoso Schematic Composer User Guide
. .
. . 27
. . . . 29
. . . .
.
. .
. . . . 3
. . . . 44
. .
. . . 49 . .
Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Related Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Typographic and Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 26
1Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Starting the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Using the Command Interpreter Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Opening a New Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Opening an Existing Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Using the Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 33Using the Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Making Designs Editable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Making Designs Read Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Saving Your Edits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38Closing Editor Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Quitting the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Working with Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Database Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Design Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Reference Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Using Menus and the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Using Pull-Down Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Using Pop-Up Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 44Using Object-Sensitive Menus (OSMs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Working with Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Using Command Prompts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 48Selecting Objects to Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Using Modal (Repeating) Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Canceling Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Undoing a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Redoing a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 50
June 2000 Contents-2 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. .
. . 55 . . 56. . . 57 . . 58
. . . . . . 6
. . . 66 . . . 66. . . . 67
.
. . . 76
. . . 76 . . 77. . 78 . . . 80. . . 80 . . . 81. . . 82. . . 83. . . 84
Using Command Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 50Working with Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Displaying Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Using Form Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Using Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Working with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Quick Reference Bindkey Chart — Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Quick Reference Bindkey Chart — Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Quick Reference Bindkey Chart — Mouse Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Quick Reference Bindkey Chart — General Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Dynamic Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60Using the Mouse to Select Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60Extending the Selection Area of a Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Selecting One Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Selecting Multiple Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63Selecting Parts of Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Selecting Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Selecting a Wire Name and Its Associated Wire Segments . . . . . . . . . . . . . . . . . . . . . . . . .Selecting a Pin and Its Associated Wire Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Selecting an Instance and Its Associated Wire Segments . . . . . . . . . . . . . . . . . . . . . . . . . . Deselecting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Selecting Objects by Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Working with Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Panning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75Redrawing a Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Viewing the Same Cell in Two Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Accessing and Using the Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Browser Type Option to the Library Browser . . . . . . . . . . . . . . . . . . . . . . . . .Using the Library Browser to Initialize Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 80Accessing and Using the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Browser Type Option to the Component Browser . . . . . . . . . . . . . . . . . . . . . Opening the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Opening the Add Instance Form Instead of the Component Browser . . . . . . . . . . . . . . . . . Listing Components from Several Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Component Browser Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-3 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . .
. . . 91. .. . . . . . 95 . . .
. . .. . 103. . 103. . . 10. 10. 106 . 106. 107. 107. 108 . . 108
. . . 112 . 113. . 114
. . 116. . . . 1 . . 1 . 121
2Understanding Connectivity and Naming Conventions . 86
Connectivity with Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Instance Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
System-Generated Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88User-Defined Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Iterated Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Wire Connections and Wire Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wire-to-Wire Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92Wire-to-Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94Wire-by-Name Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Wire-to-Iterated Instance Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Global Net Name Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
Multiple-Bit Wire Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Tapping Multiple Bits of a Bundle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99Tapping Multiple Bits of a Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101Tapping Wire Intersections by Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Designating Tap Size and Bit Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . System-Generated Net Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Multiple-Bit Wire Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Using Vector Expressions in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Vector Expressions in Multiple Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Evaluating Vector Expressions in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . Using Prefix Repeat Operators in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . Using Suffix Repeat Operators in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . . . . . . .
Pin Connections and Pin Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Hierarchical Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 110Offsheet Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110Bus Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110Pin-to-Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111Tapping Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Patchcord Connections and Patchcord Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . Naming Single and Multiple Bits Using Patchcords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Naming Multiple Nets Using Patchcords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inherited Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115Inherited Connections in a Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Defining Inherited Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118How Net Expressions Evaluate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20Inherited Connections Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21Inherited Connections Helpful Hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-4 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 1 . .
128
. . 130 . . 1. . 133. . 136. . 138
. 139. . 139.
. . 14 . 145 . 147 . 147
. 149
. . 151 .
. . 154 . 154 . 1
. 157
. 1
Sample Net Expression Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Summary of Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
3Creating Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Getting Started with Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129Adding Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
What Is an Instance? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130Methods of Adding an Instance to Your Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Instances One by One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31Adding Instances by Rows and Columns (an Array) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Instances Using an Iterative Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Default Instance Name Prefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Instance Masters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139Specifying the View to Use While Placing the Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the View after an Instance Is Already Placed . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renumbering Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Adding Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142Adding Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142Adding Wires and Pins to Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Changing the Block Pin Direction Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Direction or Name of a Single Block Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Names and Directions of Multiple Block Pins . . . . . . . . . . . . . . . . . . . . . . . . .Deleting Block Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149Disabling Automatic Block Pin Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150Adding Schematic and Offsheet Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Showing Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 152
Adding Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153Adding Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154Using Wire Snap and Gravity Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Wire Draw, Width, and Route Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Using Wire Flight Lines Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55Routing Flight Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156Manipulating Wires with Only the Mouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157Naming a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157Adding Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158Adding Multiple Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
June 2000 Contents-5 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. 1 .. . 16. . 165 . 168. . 1. . 170. . 1 . . . 172. . . 177
. 179 .
. 183
. . 187. . . . 188
92
. . 193
. . . . . 197
Verifying Invisible Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63Using Net Name Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Adding and Editing Net Expression Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Adding a Net Expression Label to a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding an Inherited Supply Symbol to a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Editing a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Changing the Net Expression Label Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Adding and Editing netSet Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172Adding a netSet Property to an Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Modifying a netSet Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176Changing the netSet Property Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Deleting a netSet Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 177
Adding Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178Adding Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Deleting Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Disabling Automatic Solder Dot Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing Solder Dot Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Adding Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181Adding Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182Adding Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183Importing an ASCII File for Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Patchcords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184Adding Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Adding Probes to a Net, Pin, or Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Showing Probe Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188Removing Probes from a Net, Pin, or Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Removing All Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189Saving Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190Loading Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
4Creating a Multisheet Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Browsing a List of Multisheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193Converting a Single-Sheet Schematic to a Multisheet Schematic . . . . . . . . . . . . . . . . . . . . . . .Adding New Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194Editing the Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194Editing the Sheet Border Size and Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Understanding Offsheet Pins and Their Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-6 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 199. . . . . . 201
. . . 206. . . 207. . . 208. . . . . . 211. . 21 . . 212 . . 21. . 215. . 216
. . 217 . . 218 . . 219
. . 2
. . . 225
227
Adding Offsheet Pins to Multisheet Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Understanding the Index Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200Going to and from the Index Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .200Repositioning a Schematic within the Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Deleting Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203Reordering Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204Renumbering Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205Working with Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 205
Understanding Cross-Reference Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Understanding Pin Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Understanding Cross-Reference Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preparing to Cross-Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208Displaying Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209Zooming In to View All Cross-Referenced Pins One by One . . . . . . . . . . . . . . . . . . . . . . . .Going to a Specific Hierarchical Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Viewing Cross-Reference Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Editing a Cross-Reference Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4Controlling the Format String Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing the Format String Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Multisheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216Customizing the Types and Sizes of Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Customizing the Cross Reference Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Drawing a Customized Sheet Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Drawing Sheet Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219Drawing Zone Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220Adding the Sheet Zone Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21Adding a Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222Adding Title Block Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222Verifying the Label Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224Adding Title Block Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224Customizing Pin Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5Creating Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Grid Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229Importing Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230Creating New Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Drawing Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232Drawing Rectangles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
June 2000 Contents-7 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 2. . . . 240 . 241
.
. . 250. . 2. . . 252
3
254 . 255. 257 . 259. 261 . 264. . . 265
. . 271
Drawing Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234Drawing Circles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235Drawing Ellipses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Drawing Arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Adding Pins as Graphic Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38Adding Pins as Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239Creating Custom Pins as Graphic Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Making the Custom Pin Name Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Adding a Selection Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242Adding Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243Adding a Normal Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244Adding an NLP Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245Adding an IL Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248Adding Note Text and Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Adding a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Setting the Symbol Origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Creating Symbol Cellviews Using Generators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6Automatically Creating Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Features of Creating Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253Automatically Creating a Cellview from Another Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Replacing an Existing Symbol Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Modifying an Existing Symbol Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Examples of Replacing and Modifying Pins on a Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . .
Automatically Creating a Cellview from a Pin List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automatically Creating a Cellview from an Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Editing Symbol Generation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Adding, Changing, and Reordering Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Editing Pin Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267Loading and Saving a TSG Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Symbol Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274Editing Symbol Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275Creating a New Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278Deleting Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280Modifying Label Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282Editing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285Creating a New Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 286Deleting Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
June 2000 Contents-8 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
.. . 2
294
. . 2. 2
.
. . 299 . 3 . 304
.
. . 310
. 312
. . .
. .
. . . 31
. . 319 . . 319
Modifying Property Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290Specifying Symbol Generator Pin Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7Editing Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295Direct Manipulation Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Turning Off Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Undoing and Redoing an Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297Changing the Undo Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Stretching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298Stretching with the Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Stretching with the Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02Stretching with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Stretching with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305Copying Single Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307Copying Arrays of Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308Copying Across Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309Copying with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copying with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Moving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311Moving Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311Moving with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Deleting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313Deleting Preselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 314Deleting Postselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314Deleting Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Rotating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Rotating Preselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Rotating Postselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316Rotating with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Rotating with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Discarding Edits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318Alternating Symbol Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Changing the View of a Preselected Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the View of a Postselected Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Toggling Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
June 2000 Contents-9 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 320 . 320 . 321 . 321. . 323 . 323. 325. 325. . 327
328
. . 330
. . 334 . 339 . . . 343
. . 345
. 348
.
. . 353
. . 356. . 3
.
. . . . 361
Toggling Pin Direction Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319Toggling Wire Draw Mode Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Toggling Instance Symbol View Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Display Configuration of a Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Display Configuration of Instance IL Labels . . . . . . . . . . . . . . . . . . . . . . . . . .Saving the Current Label Display File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Loading the Current Label Display File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Attaching the Label Display File to the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Detaching the Label Display File from the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Simulation Data Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8Editing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Searching for Objects That Have a Specific Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Search String Wildcards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 332
Replacing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332Replacing String-Tagged Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Selecting Objects Automatically by Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Selecting Objects by Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 341Adding a Property Name to the Search List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects by Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344Object and Cellview Property Types and Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Editing Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Applying Edits to Objects and Displaying Object Types . . . . . . . . . . . . . . . . . . . . . . . . . . . .Adding Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349Deleting Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 350Modifying Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Editing Specific Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352Editing Instance and Block Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Pin Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355Designating the Order of Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 355Copying a Pin Order from Another Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Resolving Pin Order Mismatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Verifying Pin Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357Editing Pin Name Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 358Editing Wire Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359Editing Wire Name Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360Editing Instance Pin Properties on an Instance of a Block . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Label Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
June 2000 Contents-10 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . . . . 36. .. . 3. . 372. . 373
.
. . . .. 3
384
. . . 38 . 38 . 389
. . . 393 . . 396 . . 396. . 398. . 399. . 400. . 4 . 401
Resetting Invisible Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363Editing netSet Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364Editing Note Text Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364Editing Note Shape Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367Editing Symbol Shape Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Editing Symbol Pin Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370Editing Symbol Label Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Editing Symbol Selection Box Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing User-Defined Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374Adding Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375Deleting Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377Modifying Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .377Editing VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 378Adding VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380Deleting VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381Modifying VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Setting the Parameter Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
9Traversing the Design Hierarchy and Creating a DesignConfiguration View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
About the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384Exploring the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Top-Level Schematic View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386Middle-Level Schematic View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Lower-Level Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
About the Configuration View of a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .About the Hierarchy Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391Traversing a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Descending Using the Descend Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing an Instance in Place . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 395Descending Using the View Name List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the View Precedence Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Returning Up the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using OSMs to Traverse the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Bindkeys to Traverse the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying the Current Hierarchical Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 01Creating a New Configuration View for the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-11 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. 403. . 404 . 406 . 406 . 406 . . 40. 409.
413
. .
.
. . 4. . . . . 428 . . 42. .
. . 4 . . 434
. . 438 . . 439 . . 43. . 439. . . 4 . . 44. . 440
. 442
Opening an Existing Design Configuration View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .About the Hierarchy Editor within the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . . . . Working with a Design Configuration within the Schematic Composer . . . . . . . . . . . . . . . . . . .
Opening a Hierarchy Editor Menu within the Schematic Composer . . . . . . . . . . . . . . . . . . .Editing a Design Configuration within the Schematic Composer . . . . . . . . . . . . . . . . . . . . .Setting Instance Bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 406Updating a Design Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Building a New Inherited View List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Showing Views Found . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
10Checking Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Features of the Check Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414Setting the Check Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Setting User Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416Setting Schematic Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 418
Checking a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423Checking and Saving a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24Checking the Current Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426Checking a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427Checking a Design Hierarchy in the Configuration Context . . . . . . . . . . . . . . . . . . . . . . . . .Checking Multisheet Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Checking a Label Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430Cross-View Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Bypassing Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433Bypassing Floating Pin Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33Bypassing Unconnected Wire Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resolving Check Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436Finding Errors and Warnings in a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mapping an Error Message to a Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Managing the Error Message List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Assigning an ignoreCheck Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Suppressing Message Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Deleting an ignoreCheck Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0Deleting All ignoreCheck Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Individual Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 441Deleting All Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Monitoring a Verilog or VHDL Simulation State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Cross Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
June 2000 Contents-12 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . . . 446 . 448
. 450 . .
452
. . . . 462
5
. . 466
. . 469 . . . 470
. . . 471
. . 472
. .
Opening an SHM Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .444Displaying the Simulation State of Wires and Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting a Time Value for Displaying Signal Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Setting the Time Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449Setting the Display Radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 449Synchronizing with Simulation at Breakpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Closing the SHM Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
11Plotting Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Up Your System to Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452Plotting a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Plotting a Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453Plotting a Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455Plotting Part of a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 456Adding Notes to a Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458Setting Plot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Using a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460Creating a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 461Loading a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461Creating a Default Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking the Queue Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463Canceling a Plot Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
12Setting Schematic Composer Options . . . . . . . . . . . . . . . . . . . . . . . 46
Overview of Schematic Composer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing User Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
Minimizing Mouse Clicks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467Changing the Default Display Setting for Command Option Forms . . . . . . . . . . . . . . . . . . .
Saving the Current Window Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 469Restoring a Saved Window Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing Bindkey Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470Changing Browser and CIW Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing Editor Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Canceling the Modal (Repeat) Command Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473Selecting Objects Using the Filter Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
June 2000 Contents-13 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . . 474
.
6
. . 476
. .
. 479 . . 479. . 480. .
. 481
. 48 . 482. . 483.. . . . 485 .
. . 48 488
. 489 . 48 . . . 49 . . . . . 496
Setting Plot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473Setting Schematic Check Options and Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Parameter Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474Saving Form Field Default Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 474Loading Form Field Default Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
13Customizing the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . 47
Customizing Pull-Down and Pop-Up Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Default Menu Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477Sample Menu File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Customizing Object-Sensitive Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478Customizing the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Positioning Icons and Turning Off Icon Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Contents of the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Changing the Display of the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Initialization and Setup Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480Customizing Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Locating the schBindKeys.il Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Locating Your Installation Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Loading Your Customized Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Loading the Cadence-Supplied Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483Opening the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484Editing the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 484Loading the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
Customizing Global Editor Variables for Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Schematic Editor Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486Symbol Editor Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486Symbol Generation (tsg) Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7HDL (Verilog, SpectreHDL, and VerilogA) Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .AMS Netlisting Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489You can set severities for the following AMS checks: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Block Pin Direction Rule Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Block Sample Sizes Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491View Name Exclusion Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3Schematic Pin Types Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .493Plot Template File Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495Schematic Rule Checker Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-14 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
.
. . 500. . 5 . 5
. . . 510. . 51. . 511 . . . 513
. 513. ..
.
518
.
.
Properties for Find Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496Multisheet Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499Simulation Probe Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Name Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 01View Master Options Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .04Zone Formats Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 505Symbol Label Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505Symbol Pin Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
Customizing Text-to-Symbol Generator (TSG) Variables for Form Fields . . . . . . . . . . . . . . . . .Pin Master Connections Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0Symbol Pin Characteristics Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Template Masters Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
Customizing HDL Variables for Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit After Error Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513Update Symbol After Edit Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Cross View Check Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514Cross View String Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514Printing Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514Verbose Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515No Hierarchy Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516Net to Port Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
Customizing the Plot Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
AEnvironment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Window Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524schDisplayDepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524schDrawAxesOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525schDynamicHilightOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525schGridMultiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525schGridSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526schGridType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526schMaxDragFig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527schPathType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527schShowDirectConnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 527schShowLabelOrigin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528schSnapSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528schWindowBBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529symDisplayDepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
June 2000 Contents-15 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. ..
.
.
symDrawAxesOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529symDynamicHilightOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 530symGridMultiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530symGridSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531symGridType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531symMaxDragFig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531symPathType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532symShowDirectConnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532symShowLabelOrigin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532symSnapSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533symWindowBBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533viewNameList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
Schematic Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534autoDot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534blockDirRules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535broadcast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535browserType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535checkAlways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536checkBeepOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536checkHierSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537checkSymTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537compBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538condOp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538createCvOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539createInstResetCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539createInstShowCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540createLabelFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540createLabelFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540createLabelHorzOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541createLabelHorzPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 541createLabelHorzRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541createLabelJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542createLabelOffsetMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 542createLabelVertOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543createLabelVertPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543createLabelVertRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 543cvDisplay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544defaultsFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544defWideWireWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545descendSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545descendTarget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
June 2000 Contents-16 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . .
.
dotOverlap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546drawMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546drawModeRoute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547echoToCIW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547editPropShowCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547editPropShowSystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 548editPropShowUser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548findZoomButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549gravityOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549libList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549markerSeverity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550markerShowIgnore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550markerZoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551maxLabelOffsetUU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551minMarkerSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551modalCommands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552netExprDisplay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552netNameMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553netNamePrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553netNameRangeDescend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553netNameSeparator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554noteFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554noteFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555noteJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555noteShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555noteShapeLineStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556pinBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556pinNameSeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557pinRefDuplicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557pinRefFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557pinRefSorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558replSaveChanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558runSRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559runVIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559saveAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559schematicAreaPartialSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560schematicSelectFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560sensitiveMenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561shapeLineType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561shapeLineWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561simProbeFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
June 2000 Contents-17 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
.
. .
simProbeType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562snapEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563spanLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563srcConnByName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563srcFloatingBIDIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564srcFloatingInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564srcFloatingIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565srcFloatingNets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565srcFloatingOutput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565srcInheritedConnCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 566srcInstNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566srcInstNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567srcInstOverlap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567srcInstOverlapValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567srcMaxLabelOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568srcNameCollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568srcNetNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569srcNetNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569srcNoOverrideNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569srcOffsheetConnCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570srcPinNetCollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570srcShortedOutputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571srcSolderOnCrossover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 571srcTermNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571srcTermNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 572srcUnconnectedWires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 572srcVerilogSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573srcVHDLSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573ssgSortPins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573statusBanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574statusBannerXY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574stickyWireLabelRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575symbolAreaPartialSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 575symbolLabelChoiceText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575symbolLabelFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576symbolLabelFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576symbolLabelJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577symbolLabelType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577symbolPinFlatten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577symbolPinIncrCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578symbolPinLocate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
June 2000 Contents-18 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
85
. . .
. .
. 612
symbolPinUsage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579symbolSelectFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579symbolShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579symbolShapeFillStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580transToSheetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580tsgTemplateType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580updateConn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581vicExactPinMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582vicInheritedPins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582vicInheritedPinsMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582vicSeverity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583vicViewList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583wireBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584zoomOutButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
BText-to-Symbol Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Symbol Shape Generated by TSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586TSG Symbol Description File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587TSG Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587Clock and Negation Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588Backannotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588Simple File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588Complex File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589Extended File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591TSG Symbol Description File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
Basic File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595
Using TSG Constructs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596Cell Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597Input Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598Output Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598I/O Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598Symbol Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
Executing TSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611TSG Processing Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 612Creating Symbols Automatically from a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-19 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 619nt 619ment
. .
. . 649
6
. 658
CSymbol and Simulation Library Generator . . . . . . . . . . . . . . . . . 614
Terms and Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616Library Command File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618Running the Symbol and Simulation Library Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running the Symbol and Simulation Library Generator in the Cadence Graphic EnvironmeRunning the Symbol and Simulation Library Generator in the Cadence Nongraphic Environ620
Library Management Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .622lmCheckTerm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624lmCheckView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625lmCloseLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627lmDefCell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628lmDefTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631lmDefViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633lmDeleteTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637lmDeleteViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638lmGetValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639lmLoadData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640lmOpenLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641lmPrintLibTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642lmPrintLibViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643lmPrintTerm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644lmPrintTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645lmPrintViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646lmReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 647lmSimView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
Variables That Control Command Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Properties That Modify Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650Sample Library Command File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 650
DConfiguring and Using Kanji Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657Configuring Your System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
Installing the Required Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657Uncompressing the Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 657Modifying the Schematic Editor Menu File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
June 2000 Contents-20 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 6 . 6
. . 661. . 662
. . 668
670
. . 67
. . . . .
. . . .
. . 69
. . .
Setting the Environment Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59Modifying the Data Registry File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
Using Kanji Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660Formats, Files, and Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 660Adding a New Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661Generating a Symbol from an Existing File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generating a Symbol from a New File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing an Existing Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666Known Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666Using the schHiCreateKanjiSymbol Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EForm Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Block Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675Add Custom Pin Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676Add Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Add Instance Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678Add Kanji Note Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679Add Net Expression Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 680Add New Property to Find Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681Add New Property to Replace Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 682Add New Property for Search Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683Add Note Shape Form – Arc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684Add Note Shape Form – Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685Add Note Shape Form – Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 686Add Note Shape Form – Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687Add Note Shape Form – Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 688Add Note Shape Form – Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 689Add Note Text Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690Add Pin Form – Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 692Add Pin Form – Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693Add Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Add Selection Box Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695Add Simulation Monitor Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696Add Symbol Label Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 698Add Symbol Shape Form – Arc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699Add Symbol Shape Form – Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 700Add Symbol Shape Form – Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 701
June 2000 Contents-21 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . . 7. . . 7
.
. . . 71
. 717
.
. . 723 . . 724
. .
.
. . .
. . . 738 . . . . . 745 . . 747. . . 74 . . . . 7
. . 7
Add Symbol Shape Form – Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 702Add Symbol Shape Form – Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03Add Symbol Shape Form – Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 04Add Wire Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 705Add Wire Name Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706Build Inherited View List Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708Cellview From Cellview Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709Cellview From Instance Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710Cellview From Pin List Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711Change Sheet Border Size Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712Check Hierarchy Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713Component Browser Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714Component Browser Preferences Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Copy Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716Create Cellview Dialog Box – Replace or Modify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Create Schematic Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718Create Schematic Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 719Cross Reference Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720Cross-View Checker Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721Delete All Markers Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722Delete Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Delete Schematic Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725Descend Form – Descend Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726Descend Form – Iterated Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727Descend Form – Multisheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728Descend Form – Noniterated Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729Display Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730Edit Cellview Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733Edit Component Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735Edit Object Properties Form – Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737Edit Object Properties Form – Instance and Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit Object Properties Form – Instance Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .741Edit Object Properties Form – Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743Edit Object Properties Form – Master Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit Object Properties Form – Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit Object Properties Form – Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Edit Object Properties Form – Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .751Edit Object Properties Form – Other Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53Edit Object Properties Form – Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755Edit Object Properties Form – Pin Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
June 2000 Contents-22 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
. . 75. . 760. . 76 . . 764 . . 76 . . 768
. . .
. 780
. 783. . 784
.. . . . . 79. . . 800
.
. .
. 807
. . .
Edit Object Properties Form – Selection Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9Edit Object Properties Form – Symbol Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Edit Object Properties Form – Symbol Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Edit Object Properties Form – Symbol Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit Object Properties Form – Wire Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6Edit Object Properties Form – Wire Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Edit Pin Order Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 770Edit Schematic Sheet Number Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 771Editor Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772Find Marker Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775Go To Pin Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777Go To Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 778Import Symbol Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 779Left, Right, Top, Bottom Pin Attributes Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Load Label Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 781Load Schematic Defaults Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 782Modify Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Modify Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Move Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785Open Simulation Data Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786Plot Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787Renumber Instances Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 789Reset Invisible Labels Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790Rotate Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 791Route Flight Line Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 792Save Label Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793Save Schematic Defaults Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794Save Schematics with Errors Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795Schematic Check Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796Schematic Find and Symbol Find Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Schematic Replace and Symbol Replace Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Schematic Select All Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802Schematic Select By Property Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 803Schematic Selection Filter Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804Schematic Title Block Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805Set Instance Binding Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 806Set Label Display Simulation Data Directory Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Set Radix Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808Set Time Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809Setup Schematic Rules Checks Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810Show Label Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 814
June 2000 Contents-23 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
.
.
.
Show Views Found Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815Stretch Form – Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816Stretch Form – Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 818Submit Plot Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 819Symbol Generation Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 823Symbol Select All Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827Symbol Select By Property Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 828Symbol Selection Filter Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829Synchronization Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830Time Scale Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 831VHDL Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 833
June 2000 Contents-24 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
Preface
The Virtuoso® schematic composer is a design entry tool that supports the work of logic andcircuit design engineers, including drafters. Physical layout designers and printed circuitboard designers can use the information as background material to support their work.
The preface discusses the following:
■ Related Documents on page 25
■ Typographic and Syntax Conventions on page 26
Related Documents
You can use the schematic composer with other Cadence® products. It requires knowledgeof special languages such as the Cadence SKILL language. The following documents giveyou more information about these tools and languages.
■ The Design Framework II Help provides information if you are not familiar with Cadenceterms and starting your system.
■ The Cadence Application Infrastructure User Guide provides additional informationabout the architecture.
■ The Virtuoso Schematic Composer Tutorial assumes that you know how to designschematics but are new to the schematic composer software.
■ The Inherited Connections Flow Guide describes how to use inherited connectionsand net expressions with various Cadence tools in the design flow.
■ The Virtuoso Schematic Composer SKILL Functions Reference Manual is for users whocustomize the standard product.
■ The Library Manager User Guide explains how to open or create cellviews from thelibrary manager.
■ The Verilog-XL Integration Reference Manual describes how to use design entry withVerilog® HDL. Integrated circuit designers who use the Verilog-XL simulator to verify thelogic of their designs can benefit from this manual.
■ The Virtuoso Schematic Composer VHDL Interface User Guide describes how to usedesign entry with VHDL.
June 2000 25 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePreface
■ The Text-to-Symbol Generator (TSG) is a Cadence application program thatautomatically generates circuit symbols for schematic composer and subsequentsimulation processes. TSG provides a quick way to generate a symbol from a list of pins.You also use TSG when you use the Create – Cellview commands when the destinationis a symbol cellview.
■ The Symbol and Simulation Library Generator (S/SLG) is a Cadence SKILL language-based library management program that generates symbol and simulation views.
Typographic and Syntax Conventions
This list describes syntax conventions used in this manual for clarifying the text. The syntaxconventions used in the product itself are discussed in the sections where the technologyitself is described.
text Indicates text you must type exactly as it is presented.
z_argument… Indicates text that you must replace with an appropriateargument. The prefix indicates the data type(s) the argument canaccept, for example t_ for text. The three dots indicate that youcan repeat the argument. Substitute one or more names orvalues. Do not type the data type or underscore.
italic Indicates names of manuals, commands, form buttons, and formfields.
| Separates possible choices for a single argument and takesprecedence over any other character. Also separates the valuesreturned by a SKILL function.
[ ] Indicate and enclose optional arguments.
{ } Indicate you must specify one of the enclosed arguments.
=> Precedes the values returned by a Cadence SKILL languagefunction.
June 2000 26 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
1Getting Started
The Virtuoso® schematic composer is a design entry tool that supports the work of logic andcircuit design engineers, including drafters. Physical layout designers and printed circuitboard designers can use the information as background material to support their work. Thischapter discusses the following topics:
■ Starting the Schematic Composer on page 27
■ Working with Designs on page 29
■ Working with Libraries on page 41
■ Using Menus and the Icon Bar on page 43
■ Working with Commands on page 47
■ Working with Forms on page 50
■ Working with Bindkeys on page 53
■ Selecting Objects on page 58
■ Working with Windows on page 71
■ Using the Library Browser on page 76
■ Using the Component Browser on page 80
Starting the Schematic Composer
To start the schematic composer, you must run an executable that contains the software.Examples of such executables are as follows:
■ icde , which includes the schematic editor, symbol editor, and plotting
■ icds , which includes all of the above, plus digital simulator interfaces
■ icms , which includes all of the above plus mixed-signal functionality
June 2000 27 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
■ msfb , which encompasses mixed-signal front-to-back functionality
■ icfb , which encompasses full-chip design functionality
To start an executable, do the following:
1. Type the name of the executable after the UNIX prompt in an xterm window.
For example:
icde &
The ampersand (&) starts the software in the background so you can use the xtermwindow for other tasks while the software is running.
2. Press the Return key.
The Command Interpreter Window (CIW) opens.
June 2000 28 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using the Command Interpreter Window
The Command Interpreter Window (CIW) is the first window that appears after you start a oneof the executables.
For details, refer to Design Framework II Help.
Working with Designs
The following section describes the basics about the schematic editor and the symbol editor.
■ Opening a New Cellview on page 31
■ Opening an Existing Cellview on page 32
■ Quitting the Schematic Composer on page 39
The menu banner displaysthe Cadence® designframework II menus.
The message area displays messages from thesoftware as you use the schematic composer.You can resize the CIW to see more messages inthis area.
The input line is where you can typeCadence SKILL commands andfunctions or indicate coordinates.
The mouse settings line shows the currentsettings for the mouse buttons (left, middle,right). The settings change as you move themouse in and out of cellviews or start and stopcommands. Press Shift to see Shift mousebindings; press Control to see Controlmouse bindings.
The prompt line shows messagesfrom the current command.
June 2000 29 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
■ Using the Schematic Editor on page 33
■ Using the Symbol Editor on page 35
■ Making Designs Editable on page 35
■ Making Designs Read Only on page 37
■ Saving Your Edits on page 38
■ Closing Editor Windows on page 39
June 2000 30 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Opening a New Cellview
To open a new cellview from the CIW, do the following:
1. Choose either Design – Newfrom an editor window or File – New – Cellviewfrom the CIW.
The Create New Fle form appears.
2. In the Library Name cyclic field, choose the library in which to store the new cellview.
3. In the Cell Name field, type a new cell name.
4. In the View Name field, type a view name that reflects the type of data that you want tocreate; for example, schematic or symbol .
schematic opens the schematic editor.
symbol opens the symbol editor.
5. Set the Tool cyclic field to either Composer – Schematic or Composer – Symbol.
6. Click OK.
June 2000 31 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Opening an Existing Cellview
To open an existing cellview, do the following:
1. Choose either Design – Open from an editor window or File – Open from the CIW.
The Open File form appears.
2. In the Library Name cyclic field, choose the library that contains the existing cellview.
3. In the Cell Name field, specify a cell name by doing one of the following:
❑ Type the cell name
❑ Click on a cell name in the Cell Names list box
❑ Click Browse to open the Library Browser
4. In the View Name cyclic field, choose a view name.
5. Click OK.
June 2000 32 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using the Schematic Editor
A schematic design is a graphical representation of a logic circuit design. The connectivityinformation is derived from the placement of pins, wires, and instances. To create a schematicdesign, you use the schematic editor, which is shown in the following graphic.
Tools Design Window Edit Add Check Sheet Options
Virtuoso ® Schematic Editing: mixedVHDL designA 1 schematic
Prompt line
Mouse settings
Design area
Pointer
Cursor
Icon bar
Menu banner
Status banner
Window title
June 2000 33 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Use the schematic editor to add the following objects.
Use the symbol editor to draw symbols that you place in the schematic window.
Note: You can use multisheet schematics to partition a large design among several sheets(pages), which improves readability and produces better plot output.
BC
AI1
Y
nand3
■ Instances
■ Schematic pins
■ Wires and wire names
■ Solder dots
■ Notes fordocumentationpurposes
■ Properties
TERM1
Schematic for Group B
June 2000 34 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using the Symbol Editor
When a schematic design requires a symbol that does not have a corresponding symbol in aCadence library, you can create your own symbol using the symbol editor.
After you create the master symbol, you can add a copy of it (known as an instance) to yourdesign using the schematic editor.
If you later change a master symbol, the schematic editor automatically applies the changesto all the existing instances of that symbol, as well as to any new instances you might add.
The only visual difference between the schematic editor and the symbol editor is in the iconbar, which shows symbol commands instead of schematic commands. Also, the Sheetmenudoes not appear in the symbol editor.
You use the symbol editor to add the following graphics.
Making Designs Editable
If you opened your schematic or symbol in read-only mode, you can change the mode tomake it editable.
➤ Choose Design – Make Editable.
■ The basic shape, such as apolygon, circle, or rectangle
■ Symbol pins
■ Lines to connect the shapes to thepins
■ Symbol labels
■ A selection box aroundyour symbol
■ Notes for documentation purposes
■ Properties
A Y
[@instanceName]
inv
ABC Inverter
June 2000 35 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
This command toggles with Design – Make Read Only.
Note: Some libraries might have read-only file permissions, which you cannot override withthis command.
June 2000 36 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Making Designs Read Only
To make a design open in read-only mode, do the following:
➤ Choose Design – Make Read Only.
If you have made any changes to the current cellview but have not saved them, theChange Edit Mode form appears and prompts you to either save the changes or discardthem.
Yes saves your edits.
No discards your edits.
After you click on Yes or No, the mode becomes read only.
This command toggles with Design – Make Editable.
Change Edit Mode
June 2000 37 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Saving Your Edits
You can use any of the following two methods to save a design.
To save a design, do the following:
➤ Choose Design – Save.
To save a design to a different name, do the following:
1. Choose Design – Save As.
The Save As form appears.
2. Change the form fields to a filename of your choice.
3. Click OK.
Save As
June 2000 38 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Closing Editor Windows
To close an editor window, do the following:
➤ Choose Window – Close.
If you edited the current cellview since the last time you saved your data, the SaveChanges form appears and prompts you to save the changes, discard them, or cancelthe Close operation.
Yes saves your edits and closes the window.
No discards your edits and closes the window.
Cancel cancels the Close command but does not discard the changes. It returns you tothe cellview you were editing.
Quitting the Schematic Composer
To quit the schematic composer, do the following:
1. From the CIW, choose File – Exit.
Save Changes
June 2000 39 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The system prompts you before exiting.
If you have not saved your edits, the Save Changes form appears.
2. Specify one of the save options by clicking on the corresponding button.
❑ Click All to reselect all cellviews and save all your changes.
❑ Click None to deselect all cellviews and quit without saving your changes.
3. Click OK.
If you click Cancel on the Save Changes form, you cancel both the save and the quitoperations, and the software continues to run.
For information about saving your environment, saving your session, or viewing your log file,refer to Design Framework II Help.
exit icds?
Save Changes
June 2000 40 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Working with Libraries
This section describes the following topics:
■ Database Structure on page 41
■ Design Libraries on page 42
■ Reference Libraries on page 42
■ Library Browser on page 42
Database Structure
The database holds all design data as follows:
Libraries hold your design hierarchy.
Cells are components of a design. If a schematic spans more than one page, as the IO regdoes, the page shows up as a cell denoted by the sheet number. The first cell name withoutthe sheet number is the schematic index.
Cellviews are specific representations of a cell.
Views contain connectivity data that describe the logical views of a design.
A library has the following characteristics:
■ It is a logical collection of cells, views, and technology information
Libraries
samplebasictestA
aoiinverterdesign1IOregIOreg/sheet001IOreg/sheet002IOreg/sheet003IOreg/sheet004
Cellviews
Cells Views
Design Entrydatabase
symbollayoutverilogschematic
June 2000 41 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
■ It is a physical collection of files and directories that can reside anywhere in the filesystem
■ It can be shared by all users, but it can be controlled by a single person
■ It has associated files, such as the technology file, catalog file, foreign database files, andan audit trail
Note: The catalog file keeps track of the logical names of design objects and their physicallocation.
The Cadence Application Infrastructure User Guide provides additional information about thelibrary structure.
Design Libraries
A design library is a storage area where you create a new design. Design libraries have read-write access so that you can edit and save a design.
You need to create a new library with read and write access so that you can edit and save adesign in it.
Reference Libraries
Reference libraries store Cadence-supplied cells. In the design entry system, severalcollections of master symbols, such as various pins and gates, are stored in the followingreference libraries:
■ sample – stores common symbols (instances)
■ US_8th – stores a template for various sizes and types of multisheet schematics
■ basic – stores specific pins
Library Browser
The Library Browser is the Cadence utility that lets you view information about the contentsof those libraries that you specify in your cds.lib file. Also, several forms, such as the OpenDesign form, let you use the Library Browser to initialize library and cellview form fields.
June 2000 42 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using Menus and the Icon Bar
The following section describes using the various schematic editor and symbol editor menusand the icon bar.
■ Using Pull-Down Menus on page 43
■ Using Pop-Up Menus on page 44
■ Using Object-Sensitive Menus (OSMs) on page 44
■ Using the Icon Bar on page 46
Using Pull-Down Menus
To use pull-down menu commands, do the following:
1. Click on a menu title to display the pull-down commands.
2. Click on the command you want.
The command you select does one of the following:
❑ Starts immediately using the default settings or selected object
❑ Prompts you to click on something, to select an object, or to identify a point in thewindow (prompts can appear in the editor window and the CIW)
❑ Displays an options form to assist you in completing the command
Design Window Edit Add
Check and Save XSave SSave As ^sHierarchyCreate CellviewNew ...Open ...Discard Edits ...
Menu titles
Commandnames
Letters indicate bindkeys.
Three dots bring up options forms.
Triangles bring up slider commands.
June 2000 43 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using Pop-Up Menus
You can pop up a default menu of a few commonly used commands by doing the following:
1. Move the pointer to an open area in your design (not over any object).
2. Press and hold the middle mouse button.
The pop-up menu appears.
3. Slide the pointer to the command you want and release the middle mouse button.
Using Object-Sensitive Menus (OSMs)
An object-sensitive menu (OSM) (also called popup menus) contians the most commonlyused commands associated with a particular object. To set up the OSMs, do the following:
1. From the CIW, choose Options – User Preferences
The User Preferences form appears.
2. Turn infix on.
3. Click OK.
4. Verify that the bindkey file is installed properly.
5. From the editor window, choose Options – Display and set the OSM option to on(default).
Commands for theschematic editor
Commands for thesymbol editor
Symbol
Zoom InZoom Out By 2FitUndoSelect Filter ...Add Pin ...Return
Schematic
Zoom InZoom Out By 2FitAdd Component ...Add Pin...Create Cellview ...Wire (narrow)Return
June 2000 44 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
6. From the editor window, choose Options – Select Filter and set Schematic Objects to all(default).
7. Make sure that you are in edit mode by doing one of the following:
❑ Verify that Make Read Only is visible.
❑ Verify that the word Editing appears in the editor window banner.
To use OSMs once they are set up, do the following:
1. Place the pointer over an object; for example, over an instance as shown below (theobject is highlighted dynamically).
2. Press and hold the middle mouse button.
A menu pops up at the pointer location.
3. Slide the pointer to the command you want and release the middle mouse button.
Instance
StretchCopyDeleteProperties...Descend Edit ...Descend Read ...Edit In PlaceCreate Cellview ...Rotate
June 2000 45 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using the Icon Bar
The icon bar appears on the left side of the design window. This bar allows for quick accessto frequently used commands.
Icon Bar Names
The commands displayed on the icon bar vary depending on which editor you are using andon whether you are in edit or read mode.
You can turn off the icon name.
You can customize the icon bar.
Check and Savechecks and savesthe cellview.
Zoom In By 2enlarges theimage in thewindow.
Stretch stretchesobject edges orcorners.
Delete removesobjects from thiscellview.
Save saves thecellview.
Zoom Out By 2reduces the imagein the window.
Copy duplicatesobjects in thiscellview.
Undo cancels thelast edit.
Property lets youedit features ofobjects.
Wire (narrow) letsyou create anarrow wire.
Wire Name letsyou name a wire.
Command Optionslets you display (orhide) an options formof an activecommand.
Instance lets youcreate aninstance.
Wire (wide) letsyou create a wideor bus wire.
Pin lets you createa pin.
Repeat lets yourepeat acommand.
June 2000 46 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Working with Commands
The following sections provide information about working with commands.
■ Using Command Prompts on page 48
■ Selecting Objects to Edit on page 49
■ Using Modal (Repeating) Commands on page 49
■ Canceling Commands on page 49
■ Undoing a Command on page 49
■ Redoing a Command on page 50
■ Using Command Shortcuts on page 50
To start a command from the icon bar, do the following:
1. Click on an icon.
2. Press the F3 key (optionally).
3. Complete the resulting form.
To help you recognize an icon, the command name appears when you slidethe pointer over the icon.
Copy
June 2000 47 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using Command Prompts
After you start a command, the CIW and the editor window tell you what to do next.
The mouse settings line shows the current settings for the mouse buttons. The settingschange as you move the mouse in and out of design windows or start and stop commands.
For example:mouseSingleSelectPt = enter a pointmousePopUp = popup menuschHiCopy = Copy command
The window title banner at the top of the schematic window or symbol window shows theactive command.
The prompt line showsmessages from thecurrent command.
Leftmousebutton
Middlemousebutton
Rightmousebutton
June 2000 48 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Selecting Objects to Edit
You can select objects before or after you start an editing command.
If you select an object before you start an editing command, the system prompts you for astarting point called the reference point for the edit. The reference point is usually in themiddle of the object.
When you select an object after you start a modal (repeating) command (such as move,delete, copy), the command remains active (default) until you cancel the command bypressing the Escape key. To change the default to nonrepeating, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Turn Modal Commandsoff.
3. Click OK.
Using Modal (Repeating) Commands
You do not have to repeatedly select a command if you plan to perform the same task severalconsecutive times. For example, editing commands automatically repeat when the modalcommands option is set to on (the default).
Canceling Commands
To cancel a command, do one of the following:
■ Press the Escape key.
■ Click Cancelon a form.
■ Select another command.
Undoing a Command
To undo a command, do one of the following:
■ Press the u key.
■ Choose Edit – Undo.
June 2000 49 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Redoing a Command
To redo a command (that is, undo an undo), do one of the following:
■ Press the Shift-u keys.
■ Choose Edit – Redo.
Using Command Shortcuts
Direct editing (or direct manipulation) is the quickest way to edit or create an object. You canuse your mouse to start the following command operations, rather than selecting a menucommand or an icon:
■ Stretching using direct manipulation
■ Copying using direct manipulation
■ Moving using direct manipulation
■ Create a wire from a schematic pin
■ Create a wire from a block pin
■ Repeat the last command
■ Rotating using the mouse
■ Using other mouse options
Working with Forms
The following sections provide more information about working with forms:
■ Displaying Forms on page 51
■ Using Form Buttons on page 52
■ Using Form Fields on page 53
June 2000 50 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Displaying Forms
In general, when a menu command is followed by three dots, a form automatically appearswhen you choose the command.
Manually Displaying Forms
To display the associated options form, press the F3 key after you choose the command.
Design Window Edit Add
Check and Save X
Save S
Save As... ^s
Hierarchy
Create Cellview
New...
Open...
In general, clicking on a command that is followed by three dotsopens an options form.
June 2000 51 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using Form Buttons
The buttons at the top of standard forms have the following functions:
Note: Some forms do not have a Defaults button.
Completes thecommand and closesthe form
Resets default valuesfor options on theform
Closes the form withoutcompleting thecommand
Completes the command andcontinues to display the form onthe screen
Resets default values, ifany, for options on theform
Closes the form and letsyou go on with thecommand
Closes the form withoutcompleting thecommand
June 2000 52 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using Form Fields
In addition to the buttons at the top of a form, there are several types of fields and buttonsinside a form.
Working with Bindkeys
One of the quickest ways to start a command for an application type, such as the schematiceditor or the symbol editor, is to press a bindkey (a letter key or function key on your keyboardthat is mapped to a pull-down menu command) for that command. The following exampleshows some of the Edit pull-down menu commands and their corresponding bindkeys.
system
user
Click on a radio buttonto turn a form settingon (filled in orchecked) or off(empty).
Text fieldsThe text cursor shows whereyou can start typing. You canjump from one text field toanother by pressing the Tabkey. Scroll back and forth usingthe left and right arrow keys.
Press and hold the left mouse button ona cyclic field and a list appears. Toselect a value, slide the cursor to oneitem in the list and release the mousebutton.
Click on a button tochoose an action thattakes placeimmediately.
Click on a radio button to choose onesetting from several options.
June 2000 53 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Caution
The bindkey for Redo is an uppercase U. For all uppercase letters, use theShift key and not the Caps Lock key.
Window Edit Add
Undo u
Redo U
Stretch m
Pull-down menucommands Bindkeys
June 2000 54 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Quick Reference Bindkey Chart — Schematic Editor
DESIGNX Check and SaveS Save (not needed)
^ s Save AsE Hierarchy ⇒ Descend Edite Hierarchy ⇒ Descend Read
Hierarchy ⇒ Edit In PlaceHierarchy ⇒ Show Scope
^ e Hierarchy ⇒ ReturnHierarchy ⇒ Return To TopCreate CellviewNewOpenDiscard EditsMake Read OnlyMake Editable
9 Probe ⇒ Add NetPlot
/ Renumber Instances
CHECKx Current Cellview
HierarchyOptionsRules SetupLabel Attachment
g Find Marker^ g Delete Marker
Delete All MarkersSimulation Monitors
WINDOWz Zoom In] Zoom In By 2[ Zoom Out By 2
Pan Down← Pan Left→ Pan Right↑ Pan Upf Fit
F6 RedrawUtilitiesClose
↑
EDITu UndoU Redom Stretchc CopyM Move
Del Deleter Rotateq Properties ⇒ ObjectsQ Properties ⇒ Cellviews
Reset Invisible LabelsComponent DisplayAlternate View
^ f Select ⇒ FilterSearch
5 Route Flight
OPTIONSO Editoro Display
^ f Select FilterCheckCheck Rules SetupParameter FilterSave DefaultsLoad Defaults
ADDi Instance
w Wire (narrow)W Wire (wide)
l Wire Namep Pinb Block
Net ExpressionSolder Dot
L Note ⇒ Textn Note ⇒ Shape
CHECKx Current Cellview
HierarchyOptionsRules SetupLabel Attachment
g Find Marker^ g Delete Marker
Delete All MarkersSimulation Monitors
June 2000 55 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Quick Reference Bindkey Chart — Symbol Editor
DESIGNX Check and SaveS Save (not needed0
^ s Save AsE Hierarchy ⇒ Descend Edite Hierarchy ⇒ Descend Read
Hierarchy ⇒ Edit In PlaceHierarchy ⇒ Show Scope
^ e Hierarchy ⇒ ReturnHierarchy ⇒ Return To TopCreate CellviewNewOpenDiscard EditsMake Read OnlyMake Editable
9 Probe ⇒ Add NetPlot
CHECKx Cross View Checkg Find Marker
^ g Delete MarkerDelete All Markers
WINDOWz Zoom In] Zoom In By 2[ Zoom Out By 2
Pan Down← Pan Left→ Pan Right↑ Pan Upf Fit
F6 RedrawUtilitiesClose
↑
EDITu UndoU Redom Stretchc CopyM Move
Del Deleter Rotateq Properties ⇒ ObjectsQ Properties ⇒ Cellviews
Reset Invisible Labels^ f Select ⇒ Filter
SearchOrigin
OPTIONSO Editoro Display
^ f Select FilterSave DefaultsLoad Defaults
ADDp Pin
Shapel Label
Selection BoxL Note ⇒ Textn Note ⇒ Shape
Net ExpressionCustom PinImport Symbol
June 2000 56 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Quick Reference Bindkey Chart — Mouse Buttons
Left Mouse Button – Select and DeselectClick Select Point
Double Click Extend SelectShift Click Select Point (Add)Cntl Click Deselect Point
Drawthrough Select Box or Direct Edit*Shift Drawthrough Select Box (Add) or Direct Edit*Cntl Drawthrough Deselect Box or Direct Edit*
Click (EF) Add Point
*Direct Edit applies only when over object.
Middle Mouse Button – Pop-Up MenusClick Pop-Up Menus
Click (EF) Pop-Up MenusDouble Click (EF) Toggle Options Form
Right Mouse Button – Repeat, Zoom, Options Click Repeat Last Command
Drawthrough Zoom InShift Drawthrough Zoom Out
(EF) Command Options(command-specific bindings)
EF (Enter Function) bindkeys usedwithin an active command.
June 2000 57 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Quick Reference Bindkey Chart — General Bindkeys
You can customize bindkey settings.
Selecting Objects
This section describes the following topics:
■ Dynamic Highlighting on page 60
■ Using the Mouse to Select Objects on page 60
■ Extending the Selection Area of a Net on page 62
■ Selecting One Object on page 62
■ Selecting Multiple Objects on page 63
■ Selecting Parts of Objects on page 65
■ Selecting Wires on page 65
■ Selecting a Wire Name and Its Associated Wire Segments on page 66
■ Selecting a Pin and Its Associated Wire Segments on page 66
■ Selecting an Instance and Its Associated Wire Segments on page 67
VERILOG HDL or VHDLCheck and Save
^ s Save AsSearchOpenPrint
^ e ReturnReturn To TopClose Window
Z Previous View^ v Go To CIW
Pan Down← Pan Left→ Pan Right↑ Pan Up
F3 Toggle Options FormF4 Toggle Partial Selection
r Rotate (EF)R Sideways (EF)
^ r Upside Down (EF)
Del Undo Point (EF), DeleteEsc Stop Command IterationF1 Help
Help Help
↑
June 2000 58 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
■ Deselecting Objects on page 68
■ Selecting Objects by Filtering on page 69
June 2000 59 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Dynamic Highlighting
By default, the software highlights objects automatically when you move your cursor over theobject. This behavior is called dynamic highlighting and helps you by identifying
■ Which object you will select when you press the left mouse button
■ Which object will be affected by a direct manipulation command
■ Which object will be affected by a command when infix is turned on
To highlight an object dynamically, do the following:
➤ Move the cursor over the object.
The object is highlighted with a dashed line.
Note: You can turn off dynamic highlighting.
Using the Mouse to Select Objects
Left Mouse Button
To select or deselect a command from a menuTo select options on a formTo select objects in a cellviewTo draw objectsTo move, stretch, and shrink a schematic window
✘
June 2000 60 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
To bring a schematic window to the foregroundTo select a windowing system command
Middle Mouse Button
To pop up the object-sensitive pop-up menusTo pop up options forms (double-click)
Right Mouse Button
To repeat the last commandTo use command-specific bindings, such as rotate
The following table summarizes how you can use your mouse to manipulate objects in adesign window:
Action Result
Click once on an object Selects the object under the pointer and deselects all otherobjects.
Double-click on a wire First selects a wire segment, then branch, then path, then net.This is referred to as extended selection.
Double-click on an object First selects the object (instance, pin, or block), then selectsits wire segments.
Click, hold, and drag Selects objects in the box. These objects become the selectedset. Deselects objects outside the box.
Shift-click Adds an object to the selected set.
June 2000 61 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Extending the Selection Area of a Net
When you want to copy, move, stretch, or delete an entire section of a net, you need to extendthe selection area of all physically connected wire segments.
An entire section of a net ends at
■ Any three-way or four-way wire connection point
■ An instance pin
■ A schematic pin
■ A change in wire width (bus)
You can use extended selection to select the following:
■ Several wire segments
■ A wire name and its associated wire segments
■ A pin and its associated wire segments
■ An instance and its associated wire segments
Selecting One Object
To select one object to copy, move, stretch, or delete, do the following:
1. Move your cursor over the object.
Dynamic highlighting shows you which object will be selected when you click the mousebutton.
2. Click the mouse button.
Dynamic highlighting
June 2000 62 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The selected object is highlighted.
Selecting Multiple Objects
There are three ways to select multiple objects:
■ Shift –click (hold down the Shift key and click) on each object that you want to add tothe set
■ Drag a box completely around all the objects that you want to select
■ Select one object, and drag a box completely around the other objects that you want toadd to the selected set
Example 1
■ Hold down the Shift key and click on each object you want to add to the set.
Highlighted object
Click on an object.
✘
Shift–click on a second object.
✘ The object also becomes highlighted.
The object becomes highlighted.
Both objects are now highlighted.
June 2000 63 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Example 2
■ Hold down the left mouse button while you drag a box completely around all the objectsyou want to select.
Example 3
■ Click on the first object and then hold down the Shift key and the left mouse button anddrag a box completely around the objects you want to add to a selected set.
Click andhold whiledragging.
Release.
✘
All the objects are now highlighted
Shift, click, anddrawthrough.
Release.
The first and subsequent objects are now highlighted
June 2000 64 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Selecting Parts of Objects
Selecting a part of an object is important when you want to stretch only that part.
You can select parts of schematic wires, note shapes, symbol lines, and symbol devices.
Selecting Wires
To select several physically connected segments of one wire, do the following:
1. Click on Wire 1 to select the first wire segment.
2. Double-click on Wire 1 to select both Wire 1 and Wire 2.
The extended selection grows to include all segments up to a branch.
3. Double-click again on Wire 1 to select all the connected wires (Wires 2, 3, and 4).
All segments of the network that are physically connected are selected and highlighted.
Wire or line segment endpoint
Vertex of an objectEdge of an object
Wire 1
Wire 2
Wire 3
Wire 4
June 2000 65 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Selecting a Wire Name and Its Associated Wire Segments
To select a wire name and its associated wire segments, do the following:
1. Click on the wire name to select it.
2. Double-click on the already selected wire name to select its associated wire segment.
Selecting a Pin and Its Associated Wire Segments
To select a pin and its associated wire segments, do the following:
1. Click on a pin to select it.
2. Double-click on the selected pin.
This selects the wire segment connected to the pin.
3. Double-click again on the selected pin.
WireName
Click on wire name.
Double-click on the highlightedwire name to select itscorresponding wire.
First click selects pin.
First double-click adds a wiresegment to the selection.
Second double-click adds the entire connected network to theselection.
June 2000 66 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
This extends the selection area to all physically connected wire segments.
Selecting an Instance and Its Associated Wire Segments
To select an instance and its associated wire segments, do the following:
1. Click on an instance to select it.
2. Double-click on the selected instance.
This adds all single wire segments that are connected to the instance up to the firstbranch to the selection.
3. Double-click again on the instance.
This extends the selection area to all physically connected wire segments.
First click selects instance.
First double-click selects all wiresegments up to the first branch.
Second double-click selects allwire segments.
June 2000 67 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Deselecting Objects
You can use the mouse to deselect objects.
The following table summarizes how you can use your mouse to deselect objects in a designwindow:
To deselect all objects, click in an open area of your design.
To deselect one object and select another, click on the second object.
Action Result
Click once in an openarea
Deselects all objects if not within a command. If in a modal(repeating) command, use Ctrl-d .
Control-click Deselects the object under the pointer.
✘
Before After
Click.
Before After
✘
Click.
June 2000 68 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
To deselect only one object from a selected set, hold down the Control key and click on theobject you want to deselect.
To deselect more than one object from the selected set, hold down both the Control keyand the left mouse button while dragging a box around the objects you want to deselect.
Selecting Objects by Filtering
The Symbol Selection Filter form and the Schematic Selection Filter form let you specifywhich object types you can select manually for editing. This is especially useful when youhave many object types, or overlapping object types, in a small area of your design.
For example, if you want to work exclusively with pins, you can turn on selection capabilitiesfor pins only. As a result, if you accidentally click on another type of object that is near a pin,the other object is not selected.
To specify the objects you want to filter for selection, do the following:
1. Choose Options – Select Filter.
✘
Before After
Hold Control andclick.
✘
Release.
Hold Control , click, anddrawthrough.
June 2000 69 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
If you are in the symbol editor, the Symbol Selection Filter form appears.
If you are in the schematic editor, the Schematic Selection Filter form appears.
2. In the Schematic (or Symbol) Objects section, specify the object types you want to selectfor editing.
The option none turns off all object types.
3. Click OK.
June 2000 70 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Working with Windows
A variety of window commands is available to help you work quickly.
■ Zooming on page 71
■ Panning on page 75
■ Redrawing a Window on page 76
■ Viewing the Same Cell in Two Windows on page 76
Zooming
Zooming is helpful as you add and edit objects. For example, you can view objects in twowindows at the same time and use a different zoom factor in each.
Zooming In Manually
To zoom in (decrease the display area) manually, do the following:
1. Choose Window – Zoom – Zoom In.
2. Click your cursor to mark one corner of the zoom area.
3. Click your cursor to mark the other corner of the zoom area.
Zooming In Automatically
To zoom in automatically by 2 (decrease the display area by a factor of 2), do the following:
1st click
2nd click
Selecting Zoom In area After Zoom In
✘
✘
BC
A I2Y
nand3
Before Zoom In
June 2000 71 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
➤ Choose Window – Zoom – Zoom In By 2.
Zooming Out Automatically
To zoom out by 2 (increase the display area by a factor of 2), do the following:
➤ Choose Window – Zoom – Zoom Out By 2.
Zoom to Fit Automatically
To zoom to fit (resize the display area to show the entire cellview in the window), do thefollowing:
Before Zoom In By 2 After Zoom In By 2
BC
A I2Y
nand3
Before Zoom Out By 2 After Zoom Out By 2
BC
A I2Y
nand3
June 2000 72 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
➤ Select Window – Fit.
Saving View Area Settings in Memory
You can temporarily store your current viewing area. This procedure is useful when you wantto look at one section of the design, move to a new section, and then return to the first section.
To temporarily save your viewing area, do the following:
1. Choose Window – Utilities – Save View.
The Save Window form appears.
2. In the Name field, type the name you want to assign to your current view.
3. Click OK.
Restoring View Area Settings
To restore a saved viewing area, do the following:
1. Choose Window – Utilities – Restore View.
Before Fit After Fit
B
AI2
Y
nand
Save Window
saveView2
June 2000 73 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The Restore View form appears, listing the names you assigned with the Window –Utilities – Save View command.
2. Click once on the name.
3. Click OK.
The previously saved viewing area appears.
Restore View
June 2000 74 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Panning
Panning lets you reposition your design within the editor window, which is helpful when youadd or edit objects.
To pan, you can use
■ Your cursor and the Window – Pan command
■ The arrow keys on your keyboard
■ The editor window scroll bars
■ Assigned bindkeys
Panning Using Your Cursor and the Window – Pan Command
To pan, do the following:
1. Choose Window – Pan.
2. Click on the point that you want to appear in the center of the editor window, (thereference point).
The image moves and places the reference point in the center of the editor window.
Panning Using the Arrow Keys
To pan using the arrow keys on your keyboard, do the following:
➤ Press the arrow keys corresponding to the direction you want to pan.
Panning Using the Editor Window Scroll Bars
To pan using the vertical and horizontal scroll bars on the editor window, do the following:
Before Pan After Pan
Referencepoint
BC
A I2Y
nand3BC
A I
n
Center ofscreen
June 2000 75 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
1. From the CIW, choose Options – User Preferences.
The User Preferences form appears.
2. Set Scroll Bars to on.
3. Click OK.
Note: This feature works only if you turn on the scroll bars before you open a design.
Redrawing a Window
To redraw a window, do the following:
➤ Choose Window – Redraw.
Viewing the Same Cell in Two Windows
Use the Copy Window command to see the same cellview from different zoom and pansettings simultaneously. This feature lets you work in one area of the cellview and still have areference window showing the entire cellview.
To view the same cellview in two windows, do the following:
➤ Choose Window – Utilities – Copy Window.
A copy of the current cellview opens in a new window.
The copy has the same title as the original. Any change you make in either windowaffects both windows.
Note: Commands started in one window are also active in the other window. For example,when you use the Add – Wire command, you add wires inside both windows.
Using the Library Browser
You can use the library browser to view and select the contents of the libraries you specify inyour cds.lib file. As an alternative, you can use the component browser.
Accessing and Using the Library Browser
You can use the Library Browser
June 2000 76 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
■ To view the contents of the libraries specified in your cds.lib file
■ To initialize the Library, Cell, and Viewfields on certain forms (these forms have a Browsebutton)
You can access the Library Browser by clicking on the Browse button when it appears on aform, such as the Open File form or the Add Instance form. The browser type option must beset to Library Browser (the default).
Changing the Browser Type Option to the Library Browser
To set the browser option to library, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. In the Add Instance Browser Type option, click library.
3. Click OK.
June 2000 77 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
Using the Library Browser to Initialize Form Fields
To automatically fill in the fields of a form after you click on the Browsebutton, do the following:
1. In the Library list box, click on a library name.
2. In the Category list box, click on a category name.
Note: The Category list box appears only when you click the Show Categories togglebutton.
3. Click on a cell name in the Cell list box.
4. Click on a view name in the View list box.
June 2000 78 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
As you click on the names in the Library Browser, the corresponding form fields areinitialized on the form that called the browser.
To browse only a certain cell or view in a library, do the following:
1. Click Filters at the bottom of the Library Browser.
June 2000 79 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The View Filter By form appears.
2. In Cell Filter, type the name of the cell you want to browse.
3. In View Filter, type the name of the view you want to browse.
4. Click OK.
Using the Component Browser
You can use the component browser to view and select the contents of the libraries youspecify in your cds.lib file. As an alternative, you can use the library browser.
Accessing and Using the Component Browser
The Component Browser is available only in conjunction with the Add – Instancecommand,and only after you change the default setting on the Editor Options form. By default, thebrowser type is set to the Library Browser.
You can use the Component Browser
■ To view the contents of the libraries specified in your cds.lib file
■ To select the components you want to add to your design
Changing the Browser Type Option to the Component Browser
To access the Component Browser, do the following:
June 2000 80 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
1. Choose Options – Editor.
The Editor Options form appears.
2. In the Add Instance Browser Type option, click component.
3. Click OK.
Opening the Component Browser
To open the Component Browser to add component instances from a library, do the following:
➤ Choose Add – Instance.
June 2000 81 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The Component Browser form appears.
The form on the left shows the top-level categories for the sample library. The form on theright shows the expanded uncategorized category.
Opening the Add Instance Form Instead of the Component Browser
If you have specified the Component Browser as the default browser but want to open theAdd Instance form first when you choose Add – Instance, do the following:
1. From the Component Browser, choose Commands – Preferences.
June 2000 82 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The Component Browser Preferences form appears.
2. Turn off the Browser Opens with Invocation of Add Instance option.
3. Click OK.
Listing Components from Several Libraries
To list components from several libraries, do the following:
1. From the Component Browser menu banner, choose Commands – Add Library.
June 2000 83 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The Component Browser form expands to display the contents of another library.
2. From the Library cyclic fields, choose the libraries that you want to browse.
Changing the Component Browser Display
To display all components within categories of a library, do the following:
➤ Choose the Flatten option.
By default, Flatten is deselected, so the Component Browser displays a hierarchical listof components grouped by categories.
To limit the display to specific components, do the following:
➤ Type a selection pattern in the Filter field.
By default, the Filter field contains an asterisk, so the Component Browser displays alllibrary components.
June 2000 84 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGetting Started
The following table describes filter patterns.
Key Filter Pattern Description
c Matches any ordinary character (not a special character listed here).
[c...] Matches the string enclosed in the square brackets (called a set). If the firstcharacter in the set is ^, it matches a character not in the set. Specify aninclusive set of characters by separating the characters with a dash.
$ At the end of a filter string, matches the end of a pattern. Used elsewhere inthe pattern, is treated as an ordinary character.
* When used alone, lists all components. When used as the last character ina pattern, matches zero or more occurrences of a pattern. For example, tolist all components beginning with the letter c, use the filter c* .
+ When used as the last character in a pattern, matches one or moreoccurrences of a pattern.
\(...\) Saves the enclosed expression in a numbered register(from 1 to 9).
. Matches any character.
\ Preceding a special character, matches the character literally.
\n Matches the contents of the nth register from the current regularexpression.
\<...\> Restricts the pattern matching to the beginning and/or end of a word.
rs A composite regular expression. Matches the longest match of r followedby a match for s .
^ At the beginning of a filter string, matches the beginning of a pattern. Usedelsewhere in the pattern, is treated as an ordinary character.
June 2000 85 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
uousins toe
2Understanding Connectivity and NamingConventions
Connectivity is the way in which components and pins are linked together in a nonambigmanner. The connectivity in a schematic is represented by wires linking the component pother component pins. Connectivity can also be represented by pins of the common nam(connection by name). The connectivity of a cellview is created by either theDesign – Checkand Save command or theCheck – Current Cellview command.
■ Connectivity with Objects on page 86
■ Instance Naming Conventions on page 87
■ Wire Connections and Wire Naming Conventions on page 91
■ Multiple-Bit Wire Connections on page 99
■ Multiple-Bit Wire Naming Conventions on page 106
■ Pin Connections and Pin Naming Conventions on page 108
■ Patchcord Connections and Patchcord Naming Conventions on page 112
■ Inherited Connections on page 115
■ Summary of Naming Conventions on page 122
Connectivity with Objects
Connectivity is the logical connection between signals in a design. Connectivity is derived(extracted) from the physical connections found in a schematic. Pins and wires implementphysical connections. Terminals and signals implement logical connections. Pins andterminals indicate which signals in a cellview are imported from or exported to other levels ofa design hierarchy.
June 2000 86 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
A complete schematic design provides input data for a variety of design tools,such as simulation and layout. It is essential, therefore, that you establishconnectivity in your schematic designs.
The following diagram shows connectivity and naming conventions.
Instance Naming Conventions
You can name instances using any one of the following naming conventions:
Key Connectivity / Name Key Connectivity / Name
A Instance name H Overbars in a name
B Single wire names I Wire name with multiple bits
C Pin name J Bus tap
D Wire-to-pin connection K Multiple-bit naming convention
E Wire-to-wire connection L Wire-to-iterated instance connection
F Pin-to-pin connection M Net expression label
G Global net name
[@ground:%:gnd!]
RESET
CLK
DATA
Q
Q
_
BUFF
ADDER
a0,a1,a2,a3
reset
clk
INPUT
OUTPUT
out<3:0> I
K
E
F
C
L
A
A<0:3>
3 out<2> J
wire1
Mgnd!
B
D
H
G
June 2000 87 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
■ System-Generated Names on page 88
■ User-Defined Names on page 88
■ Iterated Names on page 89
System-Generated Names
If you do not name the instance explicitly, the system assigns default instance names by usingI plus a number. The editor increases incrementally the instance number starting from 0.
The advantage of system-generated instance names is that you never have to type a nameon the Add Instance form. You can add many instances very quickly and automatically.
You can also change the instance name prefix ( I ) to another letter.
User-Defined Names
The advantage of user-defined names is that you can explicitly name instances in yourdesign. Examples of user-defined names are as follows:
A0 A1 A2 A3
ABC DEF HIJ
IOLATCH FLIPFLOP
Each user-defined name you add must be a string of one or more characters. You must namean instance when you create it using the Add Instance form. If you do not name the instanceexplicitly, the system generates a name for you.
I0
I1
June 2000 88 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
On the Add Instance form, separate each instance name by a space; for example, ABC BCD.
Iterated Names
Use the iterative naming method to name many instances created from only one visualinstance in your design.
This method is particularly useful in bus-type or dataflow architectures that have identicalstructures to handle each bit on the bus. It also saves space in your design.
This example uses the base name A. The 0 to the left of the colon and the 3 to the right ofthe colon indicate the numbered range (0 through 3), which names instances A<0>, A<1>,A<2>, and A<3>.
Iterated instances save space. The instances in the following two figures represent identicalcircuitry, but the second figure is easier and faster to create.
ABC
BCD
BC
A A<0: 3>
Y
nand3
June 2000 89 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The first schematic shows four IOlatch instances in a design: I0 , I1 , I2 , I3 . Comparethis with the next schematic.
I3 I4 I5 I6
June 2000 90 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
This schematic shows one IOlatch iterated four times: I<0:3> . Compare this with theprevious schematic.
Wire Connections and Wire Naming Conventions
You can connect single-bit wires in your design using any one of the following conventions:
■ Wire-to-Wire Connections on page 92
■ Wire-to-Pin Connections on page 94
■ Wire-by-Name Connections on page 95
■ Wire-to-Iterated Instance Connections on page 95
■ Global Net Name Connections on page 98
I<0:3>
June 2000 91 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Wire-to-Wire Connections
If you draw two intersecting manhattan wires in a T configuration, the editor automaticallyconnects the wires.
If you draw two manhattan wires that cross, you must explicitly add a solder dot to make theconnection at the crossover.
If you draw two manhattan wires in an L configuration, or if you draw an angled wire and amanhattan wire that intersect at their end points, the wires are connected, but the editor doesnot add a solder dot.
If you connect a narrow wire to a wide wire—for example, as in a bus—you must intersect thecenterline of the wide wire.
Wire 1
Wire 2
Wire 2
Wire 1
You must add a solderdot if you want thewires to connect.
Wire 2
Wire 1
Before After
Wire 1Wire 1
Wire 2 Wire 2
Wide wire
Unconnected wire at the edge ofthe wire
Connected wire at the center ofthe wire
June 2000 92 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
If you want to connect to an angled wire, you must connect to one of its endpoints. The editorautomatically adds a solder dot after you add the last wire in each of these examples.
Note: Make connections for all angled wide wires, narrow wires, and flight lines at theirendpoints.
Wire 2
Wire
1
Wire
3Wire 1
Wire 2
June 2000 93 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Wire-to-Pin Connections
To make wire-to-pin connections, the wire must intersect the pin.
■ Draw the wire so it ends in the body of a pin.
■ Draw the wire so it ends on the border or perimeter of a pin.
■ Draw the wire so it passes through a pin.
■ You cannot make a wire-to-pin connection by drawing an angled wire that passesthrough a pin.
Two mechanisms help you make an accurate connection between your wires and pins.
■ As you move the pointer near a pin while you draw the wire, a small diamond appearsover the pin to show you the nearest object with which you can establish electricalconnectivity.
■ You can zoom in on your design to see if you are making an accurate connection.
PinWire
Pin
Angledwire
PinPinWireWire
PinWire
Floating pin
Angledwire
June 2000 94 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Wire-by-Name Connections
A signal is said to be “connected by name” if more than one physically disjoint wire or groupof wires exist that carry the signal.
To connect instance pins, assign the same name to each wire. The wires do not have to bephysically connected. If you use a local net name, you can connect by name on the samepage. If you use a global net name, you can connect by name across all levels of thehierarchy.
Be careful not to inadvertently connect a signal across a schematic by using the same name.You can catch this error before your design has been netlisted by checking your design.
Wire-to-Iterated Instance Connections
Note: The net width has no limit.
Before the editor lets you connect a wire to an iterated instance, it checks to see that the netwidth equals one of the following:
net_name
net_name
Instance pinconnections
net_name
Instance pinconnections
June 2000 95 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
■ Connection Width on page 96
■ Pin Width on page 96
■ 1 on page 97
If the connection cannot be made, the editor generates an error message when you checkyour design.
Connection Width
If the connection width is equal to the net width, the editor allows the connection withoutmodifying the design. To determine whether net width equals connection width, the editorcompares the net width to a computed connection width. The connection width is computedas follows:
(instance iteration width ) * (instance pin width )
In the following example, the width of instance I<0:2> is 3 and the width of pin P<0:2> is 3.The computed connection width equals 9. The net width N<0:8> also equals 9. Therefore,the connection can be made
Pin Width
If the net width is equal to the pin width, the editor adds a net prefix repeat operator to the netwidth before it allows the connection. If the net width equals the pin width but does not equal
N<0:8>P<0:2>
I<0:2>
N<0> is connected to P<0> of I<0>N<1> is connected to P<1> of I<0>N<2> is connected to P<2> of I<0>N<3> is connected to P<0> of I<1>N<4> is connected to P<1> of I<1>
June 2000 96 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
the connection width, the editor computes a net prefix repeat operator that equals theinstance iterations.
The net width (3) equals the pin width but does not equal the connection width (9). Therefore,the editor generates a net prefix repeat operator, <*3> , for the net in order to allow theconnection.
1
If the net width is equal to 1, the editor adds a net prefix repeat operator to the net width beforeit allows the connection. If the connection width is 1, the editor computes a net prefix repeatoperator that equals the computed connection width.
N<0:2>P<0:2>
I<0:2>
Net N<0:2> is 3 bits wide, pin P<0:2> is 3 bits wide, andinstance I<0:2> is 3 bits wide. The computed connectionwidth is 9.
<*3>(N<0:2>)P<0:2>
I<0:2>
N<0> is connected to P<0> of I<0>N<1> is connected to P<1> of I<0>N<2> is connected to P<2> of I<0>N<0> is connected to P<0> of I<1>. . .
NP<0:2>
I<0:2>
The net width equals 1, the pin width equals 3, and the instancewidth equals 3. The computed width is 9.
June 2000 97 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The net width does not equal either the connection width (9) or the pin width (3), but it doesequal 1.
Global Net Name Connections
Global nets make connections across the design hierarchy without using pins and wires toexplicitly pass the signal throughout the hierarchy. Global nets are used primarily for powerand ground connections.
To create a global net, add an exclamation mark to the net name.
To make a bus global, add an exclamation mark to the base name of the bus.
Another way to make a net global is to connect it to a pin or instance pin that is global. Thenet inherits the name of the global pin or instance pin. The basic library has various globalsymbols you can use to indicate global nets.
In summary, you can create a global signal by
■ Using the Add – Wire Name command
■ Using the Add – Instance command of normal power and ground symbols
<*9>NP<0:2>
I<0:2>
The editor generates a net prefix repeat operator, <*9> , for the netin order to allow the connection.
gnd!
A!<0:3>
gnd!
vdd!
June 2000 98 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Creating a net expression works in a similar way.
Multiple-Bit Wire Connections
You can connect multiple-bit wires in your design using any one of the following conventions:
■ Tapping Multiple Bits of a Bundle on page 99
■ Tapping Multiple Bits of a Bus on page 101
■ Tapping Wire Intersections by Name on page 103
■ Designating Tap Size and Bit Order on page 103
■ System-Generated Net Names on page 104
Tapping Multiple Bits of a Bundle
Tapping extracts specified bits from a named net and propagates the bits along the design.Tapping a subset of signals from a bus or a bundle is called bus tapping.
To create a bus tap, connect a wire that carries the subset of signals to the bus or bundle thatcontains the signals. You can use one of the many different configurations of wire-to-wire orpin-to-wire connections to create the bus tap. You can also use collinear taps.
Then add the name of the bus tap that specifies the tapped signals. The name depends onwhether you tap from a bus or from a bundle.
June 2000 99 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
You tap bits of a bus or bundle when you connect multiple-bit wires to a bus or bundle andname the wires accordingly. For example, in the following illustration, all multiple-bit wires usesignal S, signal R, or bus Q.
A bundle is a wire or pin name consisting of simple names separated by a comma; forexample, S,R . A bus is a single name with a vector expression; for example, Q<0:15> .
If you want to tap signals from a bundle (that is, a multibit wire whose signals do not have thesame base name), you must specify the name of the signals in the wire name to indicatenumbered bits.
In the following example, bus Q<0:7> taps eight bits from bus Q<0:15> , which is part of abundle. In this case, the tap name contains a base name with a vector expression. Wire S,Rtaps two signals with different names from the bundle. In this case, the wire name is a list ofnames separated by commas.
Collinear taps contain acommon wire.
Q<5:3>
Q<0:7>
S
Q<0>
S,R
S,R,Q<0:15>
Bundle
S,R,Q<0:15>
Q<0:7> S,R Q<0>
June 2000 100 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The following example shows the same multiple bits of a bundle with a pin and a collinearintersection or tap.
Tapping Multiple Bits of a Bus
A wire named with a vector expression can intersect another wire named with a vectorexpression, provided that one of them also intersects a wire named with the full bus name.This procedure lets you cascade taps without repeating the base name. Any wires or pins ofinstances connected to tap wires inherit the name of the tapped signal. This process is called“cascading” bus taps. If a tap wire carries more than one bit from the bus, the editor can tapthe wire.
For example, to tap signal DATA<0> from bus DATA<0:3> , specify <0> or 0.
Q<5:3>
Q<0:7>
S
Q<0>
S,R
S,R,Q<0:15>
Bundle
Five subsets of thebundle
Collinear intersection or tap
DATA<0:3>
<0> <1>
This isDATA<0>.
This isDATA<1>.
June 2000 101 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
You can create a geometric configuration when a tap wire carries more than one bit from thebus. The single-bit taps <0>, <1>, <2>, and <3> are drawn from the two-bit taps <0:1> ,<2:3> rather than directly from the DATA<0:3> bus.
As shown in the above example, if you intersect a bus wire named DATA<0:7> with a tap wirenamed <0:3> , you can intersect the tap wire with a second tap wire named <0:1> . Thename of the first tap wire becomes DATA<0:3> . The name of the second tap wire becomesDATA<0:1> .
You can also intersect the second tap wire with other tap wires to individually tap bit <0>, bit<1>, and so on. In general, you can intersect any bus with a tap wire, even if the bus itself isa tap of a larger bus. Taps can cascade down any number of steps.
DATA<0:3>
<0:1>
<0>
<1>
<2:3>
<2>
<3>
Wire named using a vector expression
Wire named using a2-bit tap
2-bit taps carry two signals, <2>and <3>
Wire named with tapsignal DATA<0>
Wire named with tap signalDATA<2>
Wire named with tapsignal DATA<1>
Wire named with tap signalDATA<3>
June 2000 102 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Tapping Wire Intersections by Name
The following illustration summarizes how to specify bus tap intersections.
Any other wires or pins of instances connected to tap wires inherit the name of the tappedsignal. This process is called “cascading” bus taps. Any narrow or wide wire connected to thewire named <3> is connected to the DATA<3>bit of the bus. Any wire connected to the wirenamed <2> is connected to the DATA<2> bit of the bus, and so on.
Designating Tap Size and Bit Order
A tap wire can contain only the signals present in the bus, but the total number of bits in a tapwire can exceed the total number of bits in the bus. To make this happen, use one of therepeat operators in the tap expression. For example, you can intersect a 4-bit bus wire namedA<0:3> with an 8-bit tap wire named <0:1*2,(0:1)*2> . The resulting name of the tap wireis A<0,0,1,1,0,1,0,1> .
The editor orders bits in a bus just as they appear in the bus name. Similarly, the editor ordersbits in a tap as they appear in the tap name.
419
DATA<0:3>
<3>
<1>
<0> <2>
The <1> wirerepresents aT-tapintersection.
The <2> wirerepresents a T-tap intersection.
Wire (narrow) taps thesingle bit calledDATA<3> from the bus.
Wire (wide) isthe bus wire forall intersections.
Collinear intersections occur wherewide and narrow wires meet.
The <0> wirerepresents an L-tapintersection and tapsthe single bit calledDATA<0> from thebus.
June 2000 103 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
For example, you can tap the four bits of a bus named DATA<0:3> in order from DATA<0>toDATA<3>. However, a tap wire named DATA<3:0> that intersects with bus DATA<0:3> tapsthe bits in reverse order, as shown in the following figure.
System-Generated Net Names
The following items explain how the system determines a name for unnamed wire segments.
■ The editor places all unnamed intersecting wires in the same unnamed net.
■ To determine the name of the unnamed net, the editor chooses a name from among thenamed nets that intersect with the unnamed net. Named nets are those nets whosenames are derived from wire names, schematic pins, or tap names.
■ The chosen name for the unnamed net is the one with the largest number of uniquemembers. For example, a net named A,B,C has three unique members, but a netnamed A,A has only one unique member.
■ At all wire-wire and wire-pin intersections, the editor verifies that all names present at theintersection are members of the name that contains the most unique members.
For example, in the following illustration
■ The editor places wire segments 3, 5, and 7 in the same net because these segmentsare intersecting and unnamed
■ This unnamed net is then named A,B,C because it takes the names of all theintersecting named nets. The name A,B,C is the one with the most unique membernames; that is, three.
DATA<0:3>
0:3 3:0
This isDATA<0:3> .
This isDATA<3:0> .
June 2000 104 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
■ The editor then verifies that all intersecting named nets (B,C,C,B and A,A,B,B ) aretaps of A,B,C .
A,B,C A,A,B,B
B,CC,B 4 5 6
1 2
7
3
June 2000 105 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Multiple-Bit Wire Naming Conventions
You can connect multiple-bit wires in your design using any one of the following namingconventions:
■ Using Vector Expressions in Multiple-Bit Wire Names on page 106
■ Using Vector Expressions in Multiple Signals on page 106
■ Evaluating Vector Expressions in Multiple-Bit Wire Names on page 107
■ Using Prefix Repeat Operators in Multiple-Bit Wire Names on page 107
■ Using Suffix Repeat Operators in Multiple-Bit Wire Names on page 108
Using Vector Expressions in Multiple-Bit Wire Names
A multiple-bit wire name can be a bundle, a bus, or a combination of the two. You can improvereadability in your designs by shortening multiple-bit wire names.
To indicate that multiple bits of one wire carry similar information, give each bit the same basename. Then add a suffix to each bit name to distinguish the signals.
For example, to show four bits of a wire with a common base name (DATA), but with individualsuffixes (<0>, <1>, <2>, and <3>), assign the following names: DATA<0>, DATA<1>,DATA<2>, and DATA<3> .
Using Vector Expressions in Multiple Signals
To name a wire that contains multiple signals with the same base name, specify the basename followed by a vector expression. The vector expression can be
■ A list of the individual bit numbers separated by commas and enclosed with anglebrackets.
For example, DATA<2,1,0> represents DATA<2>, DATA<1>, and DATA<0>.
■ A range of numbers containing a lower and upper bound and, optionally, an incrementvalue. The numbers are separated with colons and enclosed with angle brackets.
For example, DATA<1:7:2> represents
baseName < lowerBound : upperBound : [ incrValue ]>
Use a positive integer for incrValue . If you do not specify an increment value, the editoruses 1.
June 2000 106 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The ordering of the bits in a bus is important when you are connecting the bus to a pin thathas a width greater than 1.
Evaluating Vector Expressions in Multiple-Bit Wire Names
The system evaluates vector expressions in multiple-bit wire names as follows:
■ The vector expression DATA<0:3:2> names a 2-bit bus containing DATA<0> andDATA<2>.
■ The vector expression DATA<1:3:2> names a 2-bit bus containing DATA<1> andDATA<3>.
■ The vector expressions DATA<0:3> and DATA<0:3:1> are equivalent names thatgenerate a 4-bit bus containing DATA<0>, DATA<1>, DATA<2>, and DATA<3>.
If the lower bound is larger than the upper bound, the editor generates the bit numbers indescending order, as follows:
■ The vector expression DATA<2:0> generates a 3-bit bus that contains DATA<2>,DATA<1>, and DATA<0>.
Using Prefix Repeat Operators in Multiple-Bit Wire Names
A multiple-bit wire name can be a bundle, a bus, or a combination of the two. You can improvereadability in your designs by shortening multiple-bit wire names.
You can repeat a single signal name, a group of signal names, or a vector term any numberof times in the wire name by placing a prefix repeat operator <* n> in front of the name, wheren is a positive integer that defines the number of times to repeat each bit in the vector term.
■ Use the prefix repeat operator <* n> to repeat a single-signal name. The followingequivalent wire names both name the same four-bit wire:
<*2>A,B,CA,A,B,C
■ Use the prefix repeat operator <*n > and parentheses to repeat a group of signal names.The following two wire names are equivalent:
<*2>(A,B),CA,B,A,B,C
■ Use combinations of the prefix repeat operator <* n> and parentheses to nestparenthetical expressions to any required depth. The editor expands nested expressions
June 2000 107 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
from the innermost expression outward. For example, a name with the expression<*2>(A,<*2>(X,Y)),B expands to A,X,Y,X,Y,A,X,Y,X,Y,B .
Using Suffix Repeat Operators in Multiple-Bit Wire Names
A multiple-bit wire name can be a bundle, a bus, or a combination of the two. You can improvereadability in your designs by shortening multiple-bit wire names using vector expressions.
A suffix repeat operator is a number, <*n >, after a vector term, where n is a positive integerthat defines the number of times to repeat each bit in the vector term.
■ Use the suffix repeat operator <*n > to repeat each bit in a group of bit names beforeexpanding the vector term. For example, the following three names all describe the samesix-bit wire:
A<0:2*2>A<0*2,1*2,2*2>A<0,0,1,1,2,2>
■ Use the suffix repeat operator <*n > and parentheses to repeat the sequence of bitnames. In this case, the vector term is expanded before the bits are repeated. Thefollowing names all describe the same six-bit wire:
A<(0:2)*2>A<0:2,0:2>A<0,1,2,0,1,2>
Pin Connections and Pin Naming Conventions
A pin name consists of a string of printable characters. You must observe the rules forreserved characters.
You can name pins in a design
■ To declare which nets in the schematic are connected to a higher level of the designhierarchy
■ To declare which nets span across sheets in a multisheet schematic
This section describes the following pin connections and naming conventions:
■ Hierarchical Pin Names on page 110
■ Offsheet Pin Names on page 110
■ Bus Pin Names on page 110
June 2000 108 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
■ Pin-to-Pin Connections on page 111
■ Tapping Pins on page 111
June 2000 109 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Hierarchical Pin Names
If you are designing a multisheet schematic, your sheets contain hierarchical pins andoffsheet pins.
Hierarchical pins are pins that also appear on the symbol of the design. The hierarchical pinsfrom each sheet become the hierarchical pins of the multisheet.
Offsheet Pin Names
Offsheet pins connect signals across the sheets of a multisheet schematic only. Use the samename for the offsheet pins on each sheet.
If you want a signal to appear on a multiple sheet that is also exported by a hierarchical pin,place a hierarchial pin for the first usage and offsheet pins on other sheets. Do not place morethan one hierarchical pin with the same name in a multisheet design.
Bus Pin Names
Use a base name with a vector expression. For example, IN<16:10:2> expands to thesefour pins: IN<16> , IN<14> , IN<12> , and IN<10> .
IO<0:7>OUT2<0:7>A<0:7>
Hierarchical pin Offsheet pin
IO<0:7>OUT2<0:7>A<0:7>
Hierarchical pin Offsheet pin
June 2000 110 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Pin-to-Pin Connections
A direct connection between two instance pins without an intermediate wire is called a pin-to-pin connection. There are four ways to make pin-to-pin connections:
Tapping Pins
You cannot draw a tap directly from an instance pin.
To tap a multibit connection to an instance pin, you must attach a wire named with a bus nameto the instance pin. You can then draw taps from the named bus.
If a schematic pin has a bus name, you can draw a tap directly from the pin using a vectorexpression to name a wire that intersects with the pin.
Pin 1
Pin 1
Pin 1
Pin 2
Pin 2
Pin 2
Pins overlap partially.
Pins overlap entirely.
Pin is contained withina pin.
Pin 2
Pins touch each other. Pin 1
June 2000 111 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The following figure shows how to tap pins in a design.
In the example above, the wire named <7:4> is a tap of the schematic pin namedINPUT<7:0> and connects a four-bit bus called INPUT<7:4> to the input of the inverter (aniterated instance).
The wire named <3:0> is also a tap of the INPUT<7:0> pin and connects a four-bit buscalled INPUT<3:0> to the input of the NAND2 gate (also an iterated instance).
If you do not apply a name to a net that is attached to a pin, the editor gives the net the samename as the pin. For example, the wire that connects the output of the NAND2 gate to theOUTPUT<0:3> pin is called OUTPUT<0:3>.
Patchcord Connections and Patchcord NamingConventions
The schPatchExpr connection expression (value) for patchcords has the following form:
src_vector_expression = dst_vector_expression
INPUT
<7:4>
inv
nand2
YA
B
OUTPUT
<3:0>
A Y
<0:3><7:0>
I1<0:3>
I4<0:3>
Wire namedOUTPUT<0:3>
Hierarchical pin Hierarchical pin
Symbol pins
A B0=0
June 2000 112 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
where src_vector_expression is the source and dst_vector_expression isthe destination.
Naming Single and Multiple Bits Using Patchcords
Naming conventions for patchcords using vector expressions have exactly the same syntaxas the vector expressions for wires with multiple bits. The number of bits insrc_vector_expression must equal the number of bits in dst_vector_expression .
In the following example, nets A and B are aliased together. Logically, each object that A isconnected to is also connected to B, and the patchcord connects the first bit named insrc_vector_expression to the first bit named in dst_vector_expression .
In the following example, signal A is aliased to CNTR<2>, signal B is aliased to CNTR<1>, andsignal C is aliased to CNTR<0>.
A B0=0
A B
A,B,C CNTR<2:0>0:2 = 0:2
C
CNTR<2>
CNTR<1>
CNTR<0>
A
B
June 2000 113 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
In the following example, A<0> is aliased to B<3>, A<1> is aliased to B<2>, A<2> is aliasedto B<1>, and A<3> is aliased to B<0>.
Naming Multiple Nets Using Patchcords
The following figure shows how to use patchcords to merge two buses.
The upper patchcord connects the eight-bit bus SYSBUS<15:8> to the eight-bit busDATA<7:0> . The lower patchcord connects the eight-bit bus SYSBUS<7:0> to the eight-bitbus ADDR<7:0>.
The range of bits named in the lower patchcord using src_vector_expression < 8:15>does not refer to the bits of SYSBUS. It refers to the order of the bits attached to the src pinof the patchcord. Therefore, according to the connection expression, bits 8 through 15 of busSYSBUS<15:0> (corresponding to the bits named SYSBUS<7:0>) are connected to bit 0through 7 of bus ADDR<7:0> (corresponding to the bits named ADDR<7:0>).
If you want to connect all the bits of the net to all the bits of the nets attached to the dst pinin the order they are attached to the src pin, omit the src vector expression and the equalsign ( = ) from the connection expression.
A<0:3> B<0:3>0:3 = 3:0
A<0>
A<1>
A<2>
A<3>
B<0>
B<1>
B<2>
B<3>
SYSBUS<15:0>
0:7 = 0:7
src dst
src dst
8:15 = 0:7
DATA<7:0>
( SYSBUS<15:8> )
ADDR<7:0>
( SYSBUS<7:0> )
June 2000 114 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
For example, to connect two single-bit nets called NET1 and NET2 with a patchcord, aconnection expression of 0 is sufficient.
Note: Only one of the nets can be connected to a schematic pin (I/O pin).
Inherited Connections
If you use global signals in your design, this section is important for you to read. If you havea need to change the value of a global signal, you can do so without recreating a completehierarchical branch. You can build one library containing components potentially requiringdifferent power and ground connections in different parts of a design.
The inherited connections solution allows you to selectively override global signals in designsoriginated in the Virtuoso® schematic composer. To have this override information availableto other Cadence® tools across the design flow, the override information is communicated tothe software by means of net expressions and a class of properties called netSetproperties.
Inherited connections is an extension to the connectivity model that allows you to createspecial global signals and override their names for selected branches of the design hierarchy.This flexibility allows you to use
■ Multiple power supplies in a design
■ Overridable substrate connections
■ Parameterized power and ground symbols
The inherited connections feature is recognized by all tools throughout the IC design flow. Tolearn about using inherited connections and net expressions with various Cadence tools inthe design flow, refer to the Inherited Connections Flow Guide.
This section describes the following information about inherited connections:
■ Inherited Connections in a Hierarchy on page 116
■ Defining Inherited Connections on page 118
■ How Net Expressions Evaluate on page 120
■ Inherited Connections Restrictions on page 121
■ Inherited Connections Helpful Hints on page 121
■ Sample Net Expression Library on page 121
June 2000 115 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Inherited Connections in a Hierarchy
You use inherited connections to selectively override global signals within your design.Consider the following example and its following explanation:
The high-level schematic shows five instances: I1 , I2 , I3 , I4 , and I5 . Each instancerepresents a portion of the design, each of which eventually references the inverter shownbelow the high-level schematic.
vdd!
I1
cellA
I4
cellA
3V!
power=3V!I2
cellB
I5
cellB
analogVdd
power=analogVddI3
cellC
Wire segmentsand wire names
Property names
Instances
High-Level Schematic
inv
A Y
[@instanceName]
A Y
p vdd_inherit
a
gnd_inherit
vdd_inherit ->[@power:%:vdd!]
gnd_inherit ->[@gnd:%:gnd!]
Lower-Level Schematic
Inverter Symbol Inverter Schematic
June 2000 116 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
In the inverter schematic, the power and ground wires are defined using the net expressions[@power:%:vdd!] and [@gnd:%:gnd!] , respectively. By default, all inverter pmostransistors are connected to vdd! and all nmos transistors are connected to gnd! .
In the high-level schematic, all the inverter pmos transistors below instance I2 of cellB areto use 3V! as the power supply, and the inverters in instance I3 of cellC are to useanalogVdd .
To selectively override the default global signal vdd! , you create a netSet property oninstance I2 named power with the value 3V! and a netSet property on instance I3 namedpower with the value analogVdd. Notice that the inverters below instances I1 , I4 , and I5are still connected to vdd! .
In other words, you place a netSet property on an instance representing the branch ofhierarchy where it is to be applied. You can create the netSet property on any instances atany level above the cellviews with net expressions. For example, if a large hierarchical designhas seven levels of hierarchy, you can place a netSet property power = 3V! on an I2instance in the top-level schematic. This affects all the logic below instance I2 all the way tothe bottom in all cellviews that contain a net expression, such as [@power:%:vdd!] . Allcellviews that contain this net expression would use 3V! instead of vdd! for that branch ofthe design.
However, if on a lower-level cellview there was an I7 instance with a netSet property power= 2V! , then 2V! would always be used below the I7 instance.
June 2000 117 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Defining Inherited Connections
In the schematic composer, you define an inherited connection by adding a net expressionlabel to either a wire or a pin. A net expression defines the default global signal name for theconnection and the name of a property that can be used to override that default global signalname.
The asterisk ( * ) after a global name shows that this is not a regular wire name but a namethat is an overridable net expression.The default global signal name specifies what the wireor pin is connected to by default.
Note: The display of the net expression label has several options.
You can create an inherited connection in a schematic by placing an instance of a symbolwhere one of the symbol pins has a net expression label. When you run the checker program
[@power:%:vdd!]*
Property name Default global signal name
Example Net Expression
[@gnd:%:gnd!]*
Ground supply symbol containing asymbol pin with a net expressionlabel
[@vdd:%:vdd!]*
Schematic wire with a netexpression label
Example Net Expression Labels
June 2000 118 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
on the schematic, the net expression label from the symbol pin is propagated onto the netwithin the schematic.
The basic library contains sample parameterized power and ground supply symbols calledvcc_inherit , vdd_inherit , gnd_inherit , and vss_inherit .
Inherited Supply Symbol Net Expression Label
basic vcc_inherit symbol [@vcc:%:vcc!]
basic vdd_inherit symbol [@vdd:%:vdd!]
basic gnd_inherit symbol [@gnd:%:gnd!]
basic vss_inherit symbol [@vss:%:vss!]
A Y
p vdd_inherit
a
gnd_inherit
[@gnd:%:gnd!]
Inverter Schematic gnd_inherit Symbol
A Y
p
[@vdd:%vdd!]
a
[@gnd:%:gnd!]
Net expression labels can also be placed onwires to achieve the same effect.
Inverter Schemat ic
June 2000 119 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
How Net Expressions Evaluate
Net expressions are evaluated for each hierarchical path. The system uses the propertyname specified in the net expression label to search upward from the cellview containing thenet expression label (one instance at a time) to the top of the design. The first instance thatis found that has a matching property name terminates the search. If the property is of typenetSet and is a legal net name, its value is used as the connecting net rather than the defaultnet name specified in the expression.
The netSet property can be placed on any instance and it will affect all net expression labelswith matching property names at all levels below that instance unless overridden by anothernetSet property on a lower-level instance.
Is there anetSet property on
the instance of this path?
Use default net namespecified in the net
expression
Start at cellviewcontaining net
expression
Is there acellviewabove?
No
Yes
No YesUse value of thenetSet property
June 2000 120 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Inherited Connections Restrictions
You should be aware of some restrictions when using net expression labels and netSetproperties:
■ The default name in a net expression label must denote a scalar, global name. Forexample, vdd! and mygnd! are legal; bus!<0:15> and vdd are illegal.
■ The property you use to override an inherited connection must be of type netSet .
■ The netSet property value must represent an existing scalar signal name (for example,A, clock , or myPower! ) or another net expression label.
Note: The signal name used in a netSet property must be the name of an existing netin that cellview.
■ Within one cellview, you cannot use two different net expression labels for the samedefault global signal. Therefore, using both [@power:%:vdd!] and [@vdd:%:vdd!]in the same cellview is not allowed.
Inherited Connections Helpful Hints
Be aware of these hints when using net expression labels and netSet properties:
■ For correct net expression evaluation, always run Check – Current Cellview or Design –Check and Save after adding or changing a net expression label or netSet property.
■ Use the Edit – Search – Find command to hierarchically search for net expressions ornetSet properties that are used in a design.
Sample Net Expression Library
The location of a sample design that uses inherited connections is
your_install_dir /tools/dfII/samples/tutorial/inhConnFlow/top_easy/schematic
June 2000 121 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
The following design shows the top-level schematic cellview.
For details, see the Inherited Connections Flow Guide.
Summary of Naming Conventions
The following tables detail naming conventions.
■ Reserved Characters for Wire, Net, and Pin Names on page 123
■ Reserved Characters for Instances on page 123
■ Illegal Characters in Wire and Net Names on page 123
■ Illegal Characters in Instance Names on page 123
■ Syntax Conventions for Wire, Net, and Pin Names on page 124
■ Syntax Conventions for Instances on page 125
■ Expanded Names for Wires, Nets, and Pins on page 126
■ Expanded Names for Instances on page 127
inhConnFlow / top_easy / schematic
3.3V!
a_gnd!
June 2000 122 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Table 2-1 Reserved Characters for Wire, Net, and Pin Names
Character Symbol Description Example
comma , Separates the elements of a wire name A,B<0:1>,C
angle brackets < > Enclose expressions for multiple-bitwires; used for iterators (prefix repeatoperator) and bus taps
A<0:3>,<*2>B,<12>
parentheses ( ) Enclose related multiple-bit wires withinan expression
A<(0:2)*2>
asterisk * Is used in the graphic screen tohighlight net expression labels is notpart of the net expression
A<(0:2)*2>
colon : Separates a range of numbers withinan expression
A<0:2>
exclamation point ! Global signal for a power supply vdd!, gnd!
Table 2-2 Reserved Characters for Instances
Character Symbol Description Example
angle brackets < > Enclose a range of numbers A<0>
colon : Separates a range of numbersexpressed by a starting and endingnumber
A<1: 3>
Table 2-3 Illegal Characters in Wire and Net Names
Character Symbol
forward slash /
Table 2-4 Illegal Characters in Instance Names
Character Symbol
comma ,
parentheses ( )
asterisk *
June 2000 123 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
colon :
forward slash /
Key to Syntax Conventions for Table 2-5
Syntax Description
[ ] Items enclosed in brackets are optional where no item, or, at most, oneitem is present.
{ } Items enclosed in braces are also optional, but zero or more than oneitem can be present.
| The Boolean logical operator OR.
n A positive integer less than 16,375. This is also the bus width limitationand the limitation for inherited connections.
Table 2-5 Syntax Conventions for Wire, Net, and Pin Names
Name Description
baseName A string of printable ASCII characters that does not include reservedcharacters.
NET, R, C
nameTerm A baseName optionally followed by a vector expression enclosed in anglebrackets.
A nameTerm can also be a name expression enclosed in parentheses.
nameTerm ::= baseName [ < vectExpr > ] |( nameExpr )
nameExpr A string consisting of a nameTerm, optionally prefixed with the <* n>construct. The <* n> construct is also referred to as a prefix repeatoperator, which means that the nameTerm is to be repeated n times.
Name expressions can be concatenated to form a comma-separated list.
nameExpr ::= [ < * n > ] nameTerm{ , nameExpr }
Table 2-4 Illegal Characters in Instance Names
June 2000 124 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
vectTerm A single number or a range of numbers. The range can be expressed by astarting, ending, and increment number, separated by colons.
A vectTerm can also be a vector expression enclosed in parentheses. Inthis case, the innermost term is expanded first, and then the repeatoperator repeats the entire expanded term enclosed in parentheses.
vectTerm ::= n[ : n[ : n] ] |( vectExpr )
vectExpr A single or repeated vectTerm . The optional <*n> suffix on a vectTermis called a suffix repeat operator and indicates n repetitions of each bit ofthe vectTerm . The value of n must be greater than zero.
Vector expressions can be concatenated to form a comma-separated list.
vectExpr ::= vectTerm [ *n ]{ , vectExpr }
Table 2-6 Syntax Conventions for Instances
Name Description
baseName A string of printable ASCII characters that does not include reservedcharacters.
I0, R, C
instName Scalar and iterated instance names must be unique. A scalar name cannotimply more than one member. An iterated instance name must imply thesame number of members as iterations.
instName ::= baseName [ < n [ : n ] > ]
where n is a positive integer less than 16,375.
Table 2-5 Syntax Conventions for Wire, Net, and Pin Names, continued
Name Description
June 2000 125 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
Note: You can use up to 1,024 characters for a name, but the editor ignores any blank or tabcharacters found before or after a name.
To determine the n th member name, use a zero-based counting method to find the Nthelement in the expanded form. For example,
■ Member zero of <*2>(a,<*2>b) is a
■ Member one of <*2>(a,<*2>b) is b
■ Member two of <*2>(a,<*2>b) is b, and so on
If the name contains a vector expression, such as b<0:1,2:2> , then
■ Member zero in this case is called b<0>
■ Member one in this case is called b<1>
Table 2-7 Expanded Names for Wires, Nets, and Pins
Sample Name Members Expanded Form
clk 1 clk
data<2> 1 data<2>
<*1>base 1 base
<*2>term 2 term,term
<*2>(a,b),c 5 a,b,a,b,c
<*2>(a,<*2>b) 6 a,b,b,a,b,b
b<0:2> 3 b<0,1,2> or b<0>,b<1>,b<2>
b<0:2:1> 3 b<0,1,2>
b<3:0:2> 2 b<3,1>
b<0:2*2> 6 b<0,0,1,1,2,2,>
b<(0:2)*2> 6 b<0,1,2,0,1,2>
b<0,2*2> 3 b<0,2,2>
b<(0,2)*2> 4 b<0,2,0,2>
b<0,1:3:4*1,2:2> 3 b<0,1,2>
b<0:1,2:2> 3 b<0,1,2>
June 2000 126 Product Version 4.4.6
Virtuoso Schematic Composer User GuideUnderstanding Connectivity and Naming Conventions
■ Member two in this case is called b<2>
Note: You can use up to 1,024 characters for a name, but the editor ignores any blank or tabcharacters found before or after a name.
Table 2-8 Expanded Names for Instances
Name Members Expanded Form
H10 1 H10
J20<0:1> 2 J20<0>, J20<1>
K30<2:1> 2 K30<2>, K30<1>
June 2000 127 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
3Creating Schematics
This chapter provides information about creating a schematic.
■ Getting Started with Schematics on page 129
■ Adding Instances on page 129
■ Adding Blocks on page 142
■ Adding Pins on page 150
■ Adding Wires on page 153
■ Adding Wire Names on page 157
■ Adding and Editing Net Expression Labels on page 164
■ Adding and Editing netSet Properties on page 172
■ Adding Solder Dots on page 178
■ Adding Notes on page 181
■ Adding Patchcords on page 184
■ Adding Probes on page 186
June 2000 128 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Getting Started with Schematics
One of the best ways to begin a schematic in an empty window is by adding objects in acertain order, as indicated below:
Adding Instances
You can add instances to your design using several methods with different options.
■ What Is an Instance? on page 130
■ Methods of Adding an Instance to Your Design on page 130
■ Adding Instances One by One on page 131
■ Adding Instances by Rows and Columns (an Array) on page 133
wireName
3. Addschematic pins,such as thisinput pin.
4. Add wires andwire names toconnectschematic pinsto instances.
1. Add instances from yourlibrary, such as this nand3gate.
2. Add blocks to hold the placeof an undetermined instance,such as this GATE_REP.
N1
N2
N3
N4
N5
N6
GATE_REP
N7
pin1
June 2000 129 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ Adding Instances Using an Iterative Expression on page 136
■ Changing the Default Instance Name Prefix on page 138
■ Editing Instance Masters on page 139
■ Specifying the View to Use While Placing the Instance on page 139
■ Changing the View after an Instance Is Already Placed on page 139
■ Renumbering Instances on page 140
What Is an Instance?
An instance is a database object that represents a master symbol cellview. When you add aninstance to your design, you actually create a reference of the master symbol from areference library.
You can have several instances of the same master symbol cellview in a design, but theinstance name must be different. For example, the nand3 gate is a master symbol stored inthe Cadence® sample library. Each time you add a nand3 gate to your design, you add aninstance of the nand3 master. The instance names can be I1 , I2 , I3 , and so forth.
Related topic: patchcords
Methods of Adding an Instance to Your Design
Plan to place instances
■ One by one
■ By rows and columns (an array)
BC
A I4Y
nand3
Cell names for otherinstance symbol mastersstored in the Cadencesample library
nand2nand3nand4nand5nand6nor2
Instance name
June 2000 130 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ By using iterative expressions
Adding Instances One by One
The Add – Instance command lets you place multiple copies of a single instance in aschematic, based on a single lib/cell/view name.
To add instances singly in your design window, do the following:
1. Choose Add – Instance.
BC
A A<1:8>Y
nand3BC
A I1Y
nand3
BC
A I1Y
nand3
BC
A I3Y
nand3
BC
A I5Y
nand3
One by one. Use this method to placeinstances singly.
By rows and columns (anarray). Use this method toplace instances in anarray.
BC
A I2Y
nand3
BC
A I4Y
nand3
BC
A I6Y
nand3
Using an iterative expression. To savespace in your design window when you needto add several instances of the same type,you can express multiple unique names withan iterative expression.B
C
A I2Y
nand3
June 2000 131 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Instance form appears.
2. In the Library, Cell, and View fields, specify the cellview of the instance.
You can also click on the Browse button to assist you in finding the cellview you want toadd.
You can designate the Browse button to open either the Component Browser or theLibrary Browser. If the cell you want does not exist, you need to create it using the symboleditor.
If you do not add instance names in the Names field, the system generates defaultinstance names prefixed with the letter I .
3. Move the pointer into your cellview.
The instance appears attached to the pointer.
4. Click in your cellview to place the instance.
The Add – Instance command is modal (if modal mode is turned on) and continues toprompt you to add another instance. To stop generating instances, press the Esc key,press Control-c , or choose another command.
June 2000 132 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Instances by Rows and Columns (an Array)
To add an array of a single instance using rows and columns, do the following:
1. Choose Add – Instance.
The Add Instance form appears.
2. In the Library, Cell, and View fields, specify the cellview of the instance.
You can also click on the Browse button to assist you in finding the cellview you want toadd.
If you do not add instance names in the Names field, the system generates defaultinstance names prefixed with the letter I .
3. Fill in the Rows and Columns fields.
4. Move the pointer into your cellview.
The first instance appears, attached to the pointer.
June 2000 133 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
5. Place the first instance by clicking the mouse.
6. Drag the mouse vertically and click on a location for the first instance of the second row.
The rest of the instances follow the cursor.
7. Drag the mouse horizontally and click on a location of the first instance of the secondcolumn.
BC
A I1Y
nand3
First click
BC
A I1Y
nand3
BC
A I4Y
nand3
BC
A I7Y
nand3
BC
A I10Y
nand3
First instance of thesecond row
The rest of the instancesfollow the cursor.
June 2000 134 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The rest of the instances follow the cursor.
The Add – Instanceis modal and continues to prompt you to add another instance. To stopgenerating instances, press the Esc key, press Control-c , or choose anothercommand.
BC
A I1Y
nand3
BC
A I6Y
nand3
BC
A I9Y
nand3
BC
A I3Y
nand3
BC
A I2Y
nand3
BC
A I12Y
nand3
BC
A I4Y
nand3
BC
A I7Y
nand3
BC
A I10Y
nand3
BC
A I5Y
nand3
BC
A I8Y
nand3
BC
A I11Y
nand3
First instance of the secondcolumn
June 2000 135 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Instances Using an Iterative Expression
Instance iteration is a compact way of displaying repeated instances of a symbol in yourschematic. It is particularly useful in bus-type or data-flow architectures that have identicalstructures to handle each bit on the bus.
To save space in your design window when you need to add several instances of the sametype, you can express multiple unique names with an iterative expression. For example,A<0:3> generates one graphic representing four instances: A0, A1, A2, and A3.
Using iterated instances not only saves space in your design, it makes your design easier toread.
To add instances using an iterative expression, do the following:
1. Choose Add – Instance.
The Add Instance form appears.
2. In the Names field, type a name using iterative expression format.
BC
A A<0:3>Y
nand3
June 2000 136 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The following schematic shows four instances: I0 , I1 , I2 , and I3 . Comparethis schematic with the following schematic showing iterated instances:
I0 I1 I2 I3
June 2000 137 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The following schematic shows one latch iterated four times: I<0:3> . Compare thisschematic with the previous schematic showing four individual instances.
Changing the Default Instance Name Prefix
Each instance requires a unique name. If you do not specify instance names on the AddInstance form, the schematic editor generates unique names automatically. The prefix is asymbol cellview property, not an instance object property.
To change the default instance name prefix from I to a prefix that you designate, do thefollowing:
1. Open a symbol cellview.
2. Choose Edit – Properties – Cellview.
The Edit Cellview Properties form appears.
3. Show the system properties on the form by choosing system.
4. Change the instNamePrefixproperty.
5. Click OK.
I<0:3>
June 2000 138 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The new name must be only one character. When you place new instances of this samesymbol, the new prefix name appears.
Editing Instance Masters
To edit the master of an instance and automatically change all occurrences of the instance,do the following:
1. Open a symbol cellview.
2. Select the part of the symbol you want to edit.
You might want to select the shape, the pin, the label, or the selection box.
3. Choose Edit – Properties – Objects to edit the symbol.
The Edit Object Properties form appears.
To edit a single instance, you edit object properties, not cellview properties. The systemchanges all cellviews containing instances of this master.
Specifying the View to Use While Placing the Instance
To change instance views (for example, from a nand2 symbolview to a nand2 symbolNegview) as you add an instance, do the following:
1. Choose Add – Instance.
2. Before placing the instance, press the Shift key and click the right mouse button totoggle through the symbol views.
The following diagram shows an instance changing views from nand2 symbolto nand2symbolNeg.
3. Place the instance.
Changing the View after an Instance Is Already Placed
To change instance views (for example, from a nand2 symbolview to a nand2 symbolNegview) after you have added an instance, do the following:
June 2000 139 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
1. Select the instance you was to change.
2. Choose Edit – Alternate View.
Renumbering Instances
If you deleted several instances in your cellview, you might want to renumber the instancesto make the numbers consecutive.
To renumber all the instances in your hierarchy consecutively, do the following:
1. Choose Design – Renumber Instances.
The Renumber Instances form appears.
The default setting renumbers all instances in only the current cellview.
Only the instance names that match with the instNamePrefix property are renumbered.
Mapping of the former and new instance names appears in the Command InterpreterWindow (CIW).
2. Do one of the following:
Renumber Instances
June 2000 140 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
❑ If you want to renumber instances in the your entire hierarchy, change the Scopecyclic field to hierarchy.
❑ If you want to renumber instances in the your entire library, change the Scopecyclicfield to library.
3. Click OK.
Renumber Instances
Renumber Instances
June 2000 141 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Blocks
You can use blocks when you design with a top-down methodology. Blocks let you create asymbol from the context of a higher-level schematic.
You create a block to represent a lower-level cell. As you develop the logic of your higher-levelschematic, you can add wires to the block, which automatically creates block pins. After youname the wires, you can rename the block pins so they inherit the connected signal names.You can automatically generate other views (for example, a schematic, VHDL, or Affirma™
Verilog® representation) for the lower-level block cell.
■ Adding Blocks on page 142
■ Adding Wires and Pins to Blocks on page 144
■ Changing the Block Pin Direction Rule on page 145
■ Changing the Direction or Name of a Single Block Pin on page 147
■ Changing the Names and Directions of Multiple Block Pins on page 147
■ Deleting Block Pins on page 149
■ Disabling Automatic Block Pin Creation on page 149
Adding Blocks
Unlike adding multiple copies of a single instance in a schematic based on a single lib/cell/viewname, the Add – Blockcommand lets you create multiple blocks, each with a different lib/cell/view name.
To add a block, do the following:
1. Choose Add – Block
pin1
GATE_REP
N7
pin2
Input pin Output pin
June 2000 142 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Block form appears.
2. In the Library, Cells, and View fields, specify the path to the block cellview.
The specified cellview cannot already exist in the library. Only one name (instance) canbe entered for each cell. There is a one-to-one correspondence between the entries inthe Cells and the Name fields. You can specify multiple cell names by using a space toseparate each name. The Cellsand Namesfields must match in number. If there are moreentries in Cells than in Names, the system assigns a name for each. If there are moreentries in Names than in Cells, the system ignores the extra names.
3. In the Names field, type instance names using a space as a separator.
The editor generates unique names for you if you leave the field blank.
4. In the Pin Name Prefixfield, type a new prefix name for the pin or leave the default as pin .
Later, when you add block pins, the system adds numbers sequentially to the prefixname; for example, pin1 , pin2 , pin3 , and so forth.
5. Choose a block from the Block Shapecyclic field.
June 2000 143 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The freeformoption lets you create a rectangular block of any size by entering oppositecorners of the rectangle.
6. Move the pointer into your design.
The block symbol is attached to the pointer unless you chose freeform. You can togglethe block shape before you place it by pressing the right mouse button until you reachthe shape you want.
7. Click to place the block in your design.
As you place a block, the system creates the specified block cellview and an instance ofthat block appears in your schematic.
Adding Wires and Pins to Blocks
Caution
Do not create a block pin using the Add – Pin command in either thesymbol editor or schematic editor.
For general information, see “Adding Wires” on page 154.
When you add a wire that touches the edge of a block, the editor automatically creates a blockpin attached to the wire.
smallmedium
large
2 by 1
alu
mux4 mux8
1 by 2freeform
June 2000 144 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
To add wires to a block, do the following:
1. Choose Add – Wire.
2. Click to indicate wire segment endpoints.
You can either start a wire or end a wire along the edge of a block. The system createsa pin where the wire touches the block edge. The pin name is constructed from the pinname prefix and a unique sequence number. The pin direction depends on the block pindirection rule.
Changing the Block Pin Direction Rule
When the block pin direction rule is set to edge,
■ Any pin created on the left side of the block becomes an input pin
■ Any pin created on the right side of the block becomes an output pin
■ Any pin created on the top or bottom side of the block becomes an inputOutput pin
When the block pin direction rule is set to order of entry, one of the following applies:
■ Ending the wire on the edge of the block creates an input pin
blockNamepinName
pin1
GATE_REP
N7pin2
Input pin Output pin
InputOutput pin
InputOutput pin
June 2000 145 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ Starting the wire on the edge of the block creates an output pin
To set the block pin direction rule for new block pins to edgeor order of entry, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Select the Block Pin Direction Rule option you want.
3. Click OK.
pin1
Starting the wire on the edge of theblock creates an output pin.
Ending the wire on the edge of the blockcreates an input pin.
GATE_REP
N7
pin2
June 2000 146 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Changing the Direction or Name of a Single Block Pin
To change the direction or name property of a pin, do the following:
1. Select the block pin only.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the pin Name or Direction properties.
4. Click OK.
Changing the Names and Directions of Multiple Block Pins
To change the name and direction of multiple block pins, do the following:
1. Select the block.
2. Choose Edit – Properties – Objects.
Edit Object Properties
June 2000 147 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Edit Object Properties form appears.
3. In the Show field, turn on the system button.
4. Do one of the following:
❑ In the Pin Direction cyclic fields, change the pin directions.
❑ Turn on the Inherit button to use the associated net name as the pin name.
5. Click OK.
Edit Object Properties
June 2000 148 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Deleting Block Pins
To delete a block pin after you create it, do the following:
1. Select the block.
2. Open the symbol editor by choosing either Design – Hierarchy – Descend Edit or Design– Edit In Place.
3. Select the pin to be removed.
4. Choose Edit – Delete.
5. Save your design.
Disabling Automatic Block Pin Creation
To disable automatic block pin creation, do the following:
1. Select a block in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
June 2000 149 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
3. In the Show field, turn on the system button.
4. Turn on the FreezePinCreatebutton.
5. Click OK.
Adding Pins
This section describes the following procedures:
■ Adding Schematic and Offsheet Pins on page 151
■ Showing Pin Connections on page 152
Pins represent the schematic input, output, and inputOutput terminals to which a netconnects in a schematic.
Edit Object Properties
June 2000 150 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
You add pins to establish connectivity between different levels of hierarchy and to connectdifferent sheets of a multisheet schematic.
Hierarchical pins (schematic pins) connect signals that span different levels of a hierarchicaldesign. Offsheet pins (offsheet connectors) connect signals that span multisheet schematics.
Cadence has a large set of pin definitions in the cell category PINS of the basicreferencelibrary. These are the pins that the system uses when you choose Add – Pin.
The following pins are examples of pins in the basic reference library.
Caution
Do not use the Add – Instance command to place these pins.
Adding Schematic and Offsheet Pins
To add a schematic pin or an offsheet pin, do the following:
1. Choose Add – Pin.
N6
NAND3Schematic pin
Pin name
Offsheet pin
opin(output pin)
ipin(input pin)
iopin (inputOutputpin)
June 2000 151 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Pin form appears.
2. In the Pin Names field, type a pin name or multiple pin names separated by spaces.
Use the same naming conventions for pins as for wires. Use a vector expression toname bus pins.
3. Set Usageto schematicfor a schematic pin or offsheetto connect the pin to another sheetin a multisheet schematic.
4. Move the pointer into the schematic and click.
The pin name appears next to the pin.
Showing Pin Connections
To enable the display option for highlighting the connection between pins, do the following:
1. Choose Options – Display.
The Display Options form appears.
2. Turn the Show Direct Connections option on.
June 2000 152 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
3. Click OK.
Adding Wires
A wire is a line that connects a pin and an instance or a line that intersects another wire. Whenyou draw a wire between a pin and an instance, you create a net.
■ Adding Wires on page 154
■ Using Wire Snap and Gravity Options on page 154
■ Using Wire Draw, Width, and Route Options on page 154
■ Using Wire Flight Lines Option on page 155
■ Routing Flight Lines on page 156
■ Manipulating Wires with Only the Mouse on page 157
June 2000 153 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Wires
To add wires, do the following:
1. Choose Add – Wire (narrow) or Add – Wire (wide).
You create buses by naming the wire using a specific notation.
2. Click on the wire starting point (for example, at a pin).
3. Click again for each wire segment.
As you move the pointer, a small diamond shape appears over the connection objectclosest to the pointer. The diamond jumps from one connection object to another as youmove the pointer around the design window.
4. To end the wire, do one of the following:
❑ Click a schematic pin, an instance pin, or another wire or double-click on a new wireendpoint.
❑ Press s to snap to the nearest object that shows a diamond shape.
Shortcut: To create a wire from an instance pin, use the OSM or object direct manipulation.
Note: To terminate wires to pins that have been placed within a selection box, you must bein draw mode (not route mode).
Using Wire Snap and Gravity Options
To turn the wire snap or gravity option on or off, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Turn the Wire Snapping or Gravity field on or off.
Using Wire Draw, Width, and Route Options
To change wire draw, width, and route options, do the following:
1. Choose Add – Wire.
2. Press F3.
June 2000 154 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Wire form appears.
3. Change the Draw Mode, Width, and Route Method options as follows:
❑ The full or direct routing method cannot complete the connection wire. In this case,use a draw mode other than route to manually enter the wire.
❑ The selection area boxes around two instances overlap each other and the full ordirect wire connection cannot be made. In this case, move the instances apart tomake room for the wire to pass through.
Using Wire Flight Lines Option
You might find it easier to use flight lines (dotted lines) while you are initially creating aschematic so that you will have more space to add instances. You use a flight line to show anintended logic connection. After all the instances are in place, you can let the system routethe wires for you automatically to establish a physical connection represented by solid wires.
To draw flight lines to indicate an intended connection, do the following:
1. Choose Add – Wire.
2. Press F3.
3. Set Draw Mode to route.
4. Set Route Method to flight.
Add Wire
June 2000 155 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
5. Draw a direct line between two objects.
Routing Flight Lines
To convert wires to normal wires after adding them using the flight route method on the AddWire form, do the following:
1. Choose Edit – Route Flight.
2. Click on a flight line to route.
The system routes the logical connections.
To change the route method, do the following:
1. Choose Edit – Route Flight.
2. Press the F3 key.
The Route Flight Line form appears.
3. Select a route method.
❑ To draw complex lines to complete the connection, choose full.
❑ To draw a direct line between two given points, choose direct.
BC
AI1
Y
nand3
TERM1
Flight line
Route Flight Line
June 2000 156 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Manipulating Wires with Only the Mouse
Direct manipulation is the quickest way to create a wire.
To create a wire from a schematic pin, instance pin, or block pin, do the following:
1. Press the Esc key.
2. Click the pin and drag the cursor away from the pin.
Adding Wire Names
Naming a wire affects the connectivity of your design. You must follow specific naming rules.
■ Naming a Wire on page 157
■ Adding Wire Names on page 158
■ Adding Multiple Wire Names on page 161
■ Verifying Invisible Wire Names on page 163
■ Using Net Name Prefixes on page 163
Naming a Wire
The following examples show ways you can name a wire.
■ Name a wire explicitly. Assign a wire name with the Add – Wire Namecommand. The wirename becomes the net name. For VHDL designs, the net name must match the pinname; if not, the schematic rules checker (SRC) flags it as a VHDL violation.
■ Let the wire inherit a wire name from the system. When you do not assign a wire name,the net takes the name of the pin; for example, TERM1.
net_nameTERM1
TERM1
June 2000 157 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ Let the system automatically assign a name to a wire not connected to a schematic pin.You can view the wire name by choosing Edit – Properties – Objects.
■ Name a wire that consists of multiple signals (a bus) that have the same base name andsubscripts.
■ Name a wire that consists of a collection of signals with different names. A bundle isrepresented by names separated by a comma.
Adding Wire Names
To create wire names, do the following:
1. Choose Add – Wire Name.
BUS<15:8>
DATA,BUS<0:7>
June 2000 158 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Wire Name form appears.
2. In the Names field, type the names of the wires.
To establish connectivity, use specific wire naming conventions. To name a bus, usevector expressions.
If you specify multiple names for several wires, separate each name with a space.
3. Move the pointer into your design.
The first wire name is attached to the pointer.
4. Place the name in your design by clicking near or on the wire.
If you name a vertical wire, the name rotates.
Add Wire Name
InputAWireA
A Rotated wire name
June 2000 159 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The text justification option displays a plus sign (+) in your cellview at the location of thejustification.
5. If you place the wire name at a greater distance from the wire than the default offset, clickon the wire that the label names.
When a wire name is associated with a wire, any action you perform with the wire affects thewire name. For example, if you stretch the wire, the wire name remains with the wire. If youdelete the wire, the wire name is deleted.
If you select the entry style of fixed offset, the system uses predefined default settings toautomatically calculate the position of the wire name. To change the fixed offsetdefaults, dothe following:
1. Click Show Offset Defaults.
InputA+WireA
+A
June 2000 160 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Wire Name form expands.
2. Edit the Text Offset fields.
Adding Multiple Wire Names
To add multiple wire names, do the following:
1. Choose Add – Wire Name.
Add Wire Name
June 2000 161 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Wire Name form appears.
2. In the Names field, type the names you want to create; for example, addr<0:3> oraddr1 addr2 addr3 .
3. Set the following options as needed:
❑ If you want bus expansion of multiple wire names, turn the Bus Expansionfield to on.
This option places multibit bus names as multiple names, one for each bit of the busrange, instead of one name. For example, for the name A<0:1> , the label A<0> isplaced first, then A<1>.
❑ If you want to place multiple wire names, set the Placement field to multiple.
This option lets you place wire names as if in single mode but prompts you to bringthe rubberbanding line across remaining wires to be named.
4. Move the pointer to the desired location and click once.
If you place the wire name at a greater distance from the wire than the default, point onthe wire that the label names.
5. To place the remaining names, move the pointer above each wire to be named and clickonce to place the remaining wire names.
Add Wire Name
June 2000 162 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Verifying Invisible Wire Names
To see a system-generated wire name or net name, do the following:
1. Choose Check – Current Cellview.
The editor assigns a name to all unlabeled wires.
2. Select the wire.
3. Choose Edit – Properties – Objects.
The Edit Object Properties form appears and displays the wire name.
Using Net Name Prefixes
To change the default net name prefix, do the following:
1. Choose Options – Editor.
June 2000 163 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Editor Options form appears.
2. In the Net Name Prefix field, type a name of your choice.
3. Click OK.
The change affects all new wires you create.
Adding and Editing Net Expression Labels
To create an inherited connection, you need to add a net expression label to a power supply(or wire) in a lower-level schematic (as well as add a netSet property to an instance in ahigher-level schematic—see next section).
■ Adding a Net Expression Label to a Wire on page 165
June 2000 164 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ Adding an Inherited Supply Symbol to a Wire on page 168
■ Editing a Net Expression Label on page 168
■ Changing the Net Expression Label Display on page 170
■ Deleting a Net Expression Label on page 172
Refer to Inherited Connections on page 115 for details on the meaning of inheritedconnections.
To add a net expression label in a lower-level schematic, you need to do one of the following:
■ Place a net expression label to a wire (which is done frequently).
■ Create an inherited supply symbol by placing an instance of an inherited power supplyto a wire in a schematic (which is done only once).
Adding a Net Expression Label to a Wire
A net expression defines the default global signal name for the connection and the name ofthe property that can be used to override that global signal name.
You place the net expression on a wire segment that represents the signal. The netexpression names the signal in the same way that a wire name names a signal. The defaultname in the net expression serves to name the underlying signal.
To create a net expression label in a schematic or in a symbol, do the following:
1. Choose Add – Net Expression.
[@power:%:vdd!]
Property name Default global signal name
June 2000 165 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Net Expression form appears.
2. In the Property Name field, type a property name; for example, power .
3. In the Default Net Name field, type the name of a global signal; for example, vdd! .
The net expression label is attached to the cursor. The display shows[@power:%:vdd!] , but when you place it in your design, the default net expressiondisplay is vdd!* . The asterisk ( * ) after the net expression label distinguishes it from aregular wire name. The at sign ( @) in the net expression label specifies the beginning ofa property substitution expression, as [@instanceName] . It specifies how NLP labelexpressions are interpreted.
4. Drag the cursor into your design and place the label on a wire (or symbol pin in thesymbol editor).
5. If the label does not automatically attach to the wire, click on the wire that you want to beinherited.
6. Choose Check – Current Cellview or Design – Check and Save to ensure that the signal isupdated with the information from the net expression label.
June 2000 166 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
When a net expression label is attached to a wire, the default net name in the expressionnames the net.
The schematic extractor processes expressions associated with symbol pins only when theextractor encounters an instance of the inherited symbol in a schematic.
You can change the net expression label display using the Options – Editorcommand. Wheninitially becoming familiar with net expressions, the value [expression] option can be veryuseful.
June 2000 167 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding an Inherited Supply Symbol to a Wire
Creating a library with inherited power and ground supplies is a task that is done once. In asimilar way, regular power supplies can be used instead of wire names to give a global signalname to a net. Inherited power supplies can be used, instead of net expression labels, toassign a net expression to a net.
To place an instance of an inherited power supply on a wire in a schematic, do the following:
1. In the schematic editor, choose Add – Instance.
2. Place an instance of an inherited power supply symbol, such as basic/vdd_inherit/symbol , on a wire.
3. Choose Check – Current Cellview or Design – Check and Save to ensure that the signal isupdated with the information from the inherited supply symbol.
Editing a Net Expression Label
To edit the net expression label, do the following:
1. In the lower-level schematic, select the net expression label.
You might want to change the net expression label display.
2. Choose Edit – Properties – Objects.
[@prop:%:vdd!]*
June 2000 168 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Edit Object Properties form appears.
The Evaluated Name field contains the result of evaluating the net expression for thecurrent descend path of the window.
3. Change the Property Name, Default Net, Height, Font, or Justification value of the netexpression label.
4. To reattach the label to a new wire or pin, click Attachment.
5. Click OK.
June 2000 169 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Changing the Net Expression Label Display
To change the net expression label display so that you can see the value, property, and/orexpression, do the following:
1. Choose Options – Display.
The Display Options form appears.
2. Change the option for the Net Expression Display.
3. Click OK.
The following table shows the display for net expression labels.
Option Display
value only vdd!*
value (default) vdd! (vdd!)*
June 2000 170 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The value option implies the resulting signal name from the evaluated net expression for thecurrent hierarchical path. The hierarchical path is the instance path that was descended toget to this level.
To display the hierarchical path, do the following:
➤ Choose Design – Hierarchy – Show Scope.
The value [expression] option is very useful when becoming familiar with inheritedconnections.
value (property) vdd! [power]*
value [expression] vdd! [@power:%:vdd!]*
expression only [@power:%:vdd!]*
Option Display
June 2000 171 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Deleting a Net Expression Label
To delete a net expression label from a wire or pin, do the following:
1. In the lower-level schematic, choose Edit – Delete.
2. Select the net expression label.
3. Press the Esc key to cancel the Delete command.
If you select the net expression label before choosing the command, you do not need topress the Esc key to cancel the Delete command.
4. Choose Check – Current Cellviewor Design – Check and Saveto update the connectivity ofthe cellview.
Adding and Editing netSet Properties
Adding a netSet property to an instance in a higher-level schematic lets you override thedefault signal name specified in a net expression of a lower-level schematic.
■ Adding a netSet Property to an Instance on page 172
■ Modifying a netSet Property on page 176
■ Changing the netSet Property Display on page 177
■ Deleting a netSet Property on page 177
Refer to Inherited Connections on page 115 for details on the meaning of netSet propertiesused as inherited connections.
Adding a netSet Property to an Instance
To add a netSet property to an instance at a higher level, do the following:
1. At the desired level of hierarchy, select an instance that represents the branch of thedesign hierarchy to be affected.
2. Choose Edit – Properties – Objects.
June 2000 172 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Edit Object Properties form appears.
3. Click Add.
The Add Property form appears.
June 2000 173 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
4. In the Name field, type the name of the property used in the net expression label.
5. Set the Type cyclic field to netSet.
6. In the Value field, type the name of the signal that is to override the lower-level defaultsignal name.
This will be the new net name. It may be a global or a local signal name. The name mustconsist of one of the following:
❑ A scalar (one-bit) name that is the name of a net in this schematic
❑ Another net expression whose default name is a net in this schematic.
7. Click OK.
The Edit Object Properties form shows the new added netSet property; in this case,power .
June 2000 174 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
8. For clarity, you should change the Displaycyclic field from the default off to bothto displayboth the name and value of the netSet property on the instance. This more clearlyshows that power = 3V! in this branch of your design.
9. Click OK.
10. Choose Check – Current Cellview or Design – Check and Save.
If a signal not found message appears in the CIW, you must add a wire and wirename to this schematic for the signal name used within the netSet property value.
June 2000 175 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Modifying a netSet Property
You might want to modify the display of the property in your design. To change the display, dothe following:
1. Choose Edit – Properties – Objects to add the netSet property.
The Edit Object Properties form appears.
2. Select an instance in the schematic window you want to modify.
The steps for modifying a netSet property are the same as those for adding a netSetproperty. But instead of clicking Add, you click Modify.
3. Click Modify.
The Modify Property form appears.
4. Edit the Type, Name, and Value fields for the property.
The name should match the property name in a net expression label within the designhierarchy below this instance.
June 2000 176 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
5. Click OK.
The Edit Object Properties form shows the netSet property and its new name or value.
6. Click OK.
Changing the netSet Property Display
You may want to make the netSet property visible to help illustrate the intent of your design.
To change the netSet property display so that you can see both the value and the name ofthe property in your design, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an instance to edit.
3. Change the Display cyclic field from the default off to both to display both the value andname of the netSet property on the instance; for example, power = 3V .
4. Click OK.
Deleting a netSet Property
To delete a netSet property, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an instance in the schematic window to edit.
3. Click Delete.
June 2000 177 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Solder Dots
Place a solder dot where more than two wire segments intersect. Do not confuse four-wireintersections, which are always connected logically, with two-wire overpasses.
■ Adding Solder Dots on page 179
■ Deleting Solder Dots on page 179
■ Disabling Automatic Solder Dot Creation on page 179
■ Changing Solder Dot Size on page 180w
ire_
1
wire_2
Two overpass wires Four connected wires
wire_2
wire
_3
wire
_4
wire_2
June 2000 178 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Solder Dots
To add a solder dot, do the following:
1. Choose Add – Solder Dot.
2. Click where you want to create a four-way orthogonal wire connection.
Note: When two wire segments form a T-wire intersection, the system places solder dotsautomatically.
Deleting Solder Dots
To delete a solder dot from your design, do the following:
1. Click on the solder dot you want to delete.
2. Press the Delete key or choose Edit – Delete.
Note: You can delete the solder dot only at a four-way orthogonal wire connection. Thesystem changes the connection into a two-wire overpass.
Disabling Automatic Solder Dot Creation
By default, the editor creates a solder dot automatically when you intersect two wiresegments.
To stop the system from adding solder dots automatically, do the following:
1. Choose Options – Editor.
June 2000 179 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Editor Options form appears.
2. Set Automatic Solder Dots to off.
3. Click OK.
Changing Solder Dot Size
To change the size of the solder dot, do the following:
1. Choose Options – Editor.
Editor Options
June 2000 180 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Editor Options form appears.
2. In the Solder Dot Wire Overlapfield, specify a value in user units to define the distance thatsolder dots overlap wires.
3. Click OK.
Adding Notes
To document a schematic, you can use
■ Note shapes
■ Note text
Editor Options
June 2000 181 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The following diagram shows an inverter with documentation notes to the left of the inverter.
■ Adding Note Shapes on page 182
■ Adding Note Text on page 183
■ Importing an ASCII File for Note Text on page 183
Adding Note Shapes
To add a shape to annotate your design for documentation purposes, do the following:
1. Choose Add – Note – Shape.
The Add Note Shape form appears.
Click here for Form Help on Lines, Rectangles, Polygons, Circles, Ellipses, and Arcs.
2. Select a shape (line, rectangle, polygon, circle, ellipse, arc).
3. Read the prompts at the bottom of your design window for further steps, depending onthe shape you are drawing.
A Y
[@instanceName]
inv
ABC Inverter
Note textNote shape(rectangle)
Add Note Shape
June 2000 182 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Adding Note Text
To add text to annotate your design for documentation purposes, do the following:
1. Choose Add – Note – Note Text.
The Add Note Text form appears.
2. In the Note Text field, type your text.
Keystrokes are available for editing the text on the form.
3. Place the text in your cellview by moving the pointer into your design and clicking.
Importing an ASCII File for Note Text
To import (read in) an ASCII file to document a design, do the following:
1. Choose Add – Note – Note Text.
Add Note Text
You can type a note to document your design.You can also read in (or import) an ASCII filefrom disk.
June 2000 183 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Add Note Text form appears.
2. In the Read File field, type the path to the file.
3. Click the Read Filebutton.
Adding Patchcords
A patchcord is a special connection symbol. You use a patchcord to establish aliases betweenthe signals of two different nets.
Unlike tap names, where you extract bits of a single net, you can use patchcords to copy onenet to another. You can also use the patchcord to map bits from one net to different bits ofanother net.
The value (connection expression) of the NLP label describes how to map the bits of the netattached to the src (source) pin to the bits of the net attached to the dst (destination) pin.
Add Note Text
You can type a note to document your design.You can also read in (or import) an ASCII filefrom disk.
~/fileNamemy_directory/fileName
June 2000 184 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The syntax you use for naming the vector expression is the same as the syntax for wires andmultiple bits.
The number of bits in the src vector expression must equal the number of bits in the dstvector expression.
You can also use patchcords to connect multiple nets (merge two buses).
To add a patchcord to a schematic, do the following:
1. Choose Add – Instance.
The Add Instance form appears.
2. In the Library field, type basic .
3. In the Cell field, type patch .
The default connection expression is 0=0 , which indicates that the nets are equal to orgreater than 1 bit wide.
June 2000 185 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
If the nets are more than 1 bit wide, you can update the connection expression value onthe Edit Object Properties form.
To add the following properties to a patchcord symbol, do the following:
1. Choose Edit – Properties – Object.
The Edit Object Properties form appears.
2. Click the Add button and add the following properties on the form that appears.
nlAction = ignore
pcbAction = ignore
schType = patchCord
These properties must exist on the patchcord symbol to ensure that the netlister ignorespatchcord instances.
3. Make sure that the symbol view of the patchcord has two pins:
❑ The source pin is named src.
❑ The destination pin is named dst.
The system puts 0=0 in the Connection Expressionfield, which indicates that the nets areequal to or greater than 1 bit wide.
If the nets are more than 1 bit wide, you can update the connection expression value onthe Add Instance form.
Adding Probes
The Probe – Addcommand lets you select the data you want to display in another cellview andselect the data for the net for which you want to show a cross-reference.
■ Adding Probes to a Net, Pin, or Instance on page 187
■ Showing Probe Information on page 188
■ Removing Probes from a Net, Pin, or Instance on page 188
0=0
dst pinsrc pin
June 2000 186 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
■ Removing All Probes on page 189
■ Saving Probes on page 190
■ Loading Probes on page 190
Adding Probes to a Net, Pin, or Instance
To add probes to a net, pin, or instance, do the following:
1. Choose Design – Probe – Add Net, Design – Probe – Add Pin, or Design – Probe – Add Instance.
2. Click on a figure on a net, pin, or instance or type its name.
The Applications to Cross Probe form appears.
The color of the net, pin, or instance changes to show that your probes are added.
You can also add probes by typing the net, pin, or instance name as follows:
1. While the cursor is in the schematic window, press Control-V .
The Command Interpreter Window (CIW) appears.
2. Type the name of the net, pin, or instance you want to probe in the CIW.
You must enclose the name in quotation marks.
To add a probe to a net named net_20 , type “net_20” .
3. Press the Return key.
Applications to Cross Probe
June 2000 187 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The color of the net, pin, or instance changes to show that your probes are added.
Showing Probe Information
To show an existing probe type and object name, do the following:
1. Choose Design – Probe – Explain.
2. Click on or near an object in your design that has a probe.
A list window similar to the one below appears, showing the probe type and name of theobject. If you clicked near two or more objects with probes, the window lists each objectand its probe type.
Removing Probes from a Net, Pin, or Instance
The Design – Probe Removecommand removes the data you displayed in another cellview orremoves the data that cross-referenced a net, pin, or instance.
To remove probes from a selected net, pin, or instance, do the following:
1. Choose Design – Probe – Remove Net, Design – Probe – Remove Pin, or Design – Probe –Remove Instance.
2. Press F3.
June 2000 188 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
The Delete Cross Probes form appears.
If you do not click on Cross Probe, the cross-probes are left in place.
3. Click on a net, pin, or instance in your design that contains a probe.
If you assigned more than one probe to this net, pin, or instance, only one is deleted. Thecolor of the object changes to show that the probe was deleted.
You can also remove probes by typing the object name, as follows:
1. While the cursor is in the schematic window, press Control-V .
The CIW appears.
2. Type the name of the net, pin, or instance you want to remove.
You must enclose the name in quotation marks.
To remove a probe to a net named net_20 , type “net_20” .
3. Press the Return key.
If you assigned more than one probe to this net, pin, or instance, only one is deleted. Thecolor of the object changes to show that the probe was deleted.
Removing All Probes
To remove all probes, including cross-probes attached to objects in the top-level design of thecurrent window, do the following:
➤ Choose Design – Probe – Remove All.
Delete Cross Probes
June 2000 189 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
Saving Probes
Probes are not saved with your design when you choose Design – Probe – Save or Design –Probe – Save As. If you want to reattach the probes, you need to save them to a file, thenchoose Design – Probe – Load to reapply them the next time you open your design.
To save the list of currently attached probes to a file, do the following:
1. Choose Design – Probe – Save.
The Save Probes form appears.
2. In the Probe File Namefield, type the name of the file in which you want to save the probes.
3. Click OK.
Loading Probes
If you want to reattach the probes, you need to save them to a file, then choose Probe – Loadto reapply them the next time you open your design.
To load and attach probes from a saved file, do the following:
1. Choose Design – Probe – Load.
The Load Probes form appears.
Save Probes
Load Probes
June 2000 190 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Schematics
2. In the Probe File Name field, type the name of the file containing the probes you want toload.
3. Click OK.
June 2000 191 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
4Creating a Multisheet Schematic
You can use multisheet schematics to partition your design among several sheets, thuscreating a hierarchy.
This chapter provides information about the following topics:
■ Browsing a List of Multisheets on page 193
■ Converting a Single-Sheet Schematic to a Multisheet Schematic on page 193
■ Adding New Sheets on page 194
■ Editing the Title Block on page 194
■ Editing the Sheet Border Size and Type on page 196
■ Understanding Offsheet Pins and Their Naming Conventions on page 197
■ Adding Offsheet Pins to Multisheet Schematics on page 199
■ Understanding the Index Schematic on page 200
■ Going to and from the Index Schematic on page 200
■ Repositioning a Schematic within the Sheet Borders on page 201
■ Deleting Sheets on page 203
■ Reordering Sheets on page 204
■ Renumbering Sheets on page 205
■ Working with Cross-References on page 205
■ Customizing Multisheets on page 216
June 2000 192 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Browsing a List of Multisheets
The system uses a base name to group sheets of a multisheet schematic in a library. Bydefault, the base name is the cell name of the original single-sheet schematic. Each sheet ofa multisheet schematic has a unique sheet number.
Converting a Single-Sheet Schematic to a MultisheetSchematic
When you extend your design over several sheets, you improve readability, maintain draftingstandards, and produce better plot output.
To convert a single-sheet schematic to a multisheet schematic, do the following:
1. Open a single-sheet schematic.
2. Choose Sheet – Make Multisheet.
The Create Schematic Sheet form appears.
3. Change the options to specify a multisheet schematic of the size and type you want.
4. Click OK.
A sheet border and title block appear in your design window. You might need to changethe size of the border, reposition your schematic within the border, or edit the sheet title.
myDesignmyDesign@sheet001myDesign@sheet002myDesign@sheet003myDesign@sheet004
Individual sheets
Index sheet
Create Schematic Sheet
June 2000 193 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Adding New Sheets
To add a new sheet to a multisheet schematic, do the following:
1. Choose Sheet – Create.
The Create Schematic Sheet form appears.
2. In the Number field, type the number of the sheet you want to add.
If you want to determine the total number of pages, look at the title block in the lowerright-hand corner of your schematic.
The size and type automatically default to the current values of the present set of sheets.
3. Click OK.
If a sheet with the number you chose already exists, you are prompted to confirm thecreation of the new sheet. The schematic editor creates the new sheet with the numberyou chose and renumbers the remaining sheets. The schematic editor also updates allproperties in the index schematic.
Editing the Title Block
Title blocks help you keep track of the titles and revisions.
To add or modify the title block of a multisheet schematic, do the following:
1. Choose Sheet – Edit Title.
Create Schematic Sheet
June 2000 194 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The Schematic Title Block Properties form appears.
2. Change the options to edit the title block.
From an index schematic, only the Global Border Titles fields are editable.
All fields are visible when you edit a sheet.
3. Click OK.
Schematic Title Block Properties
June 2000 195 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The following sheet title block shows the information from the form on the previous page.
Editing the Sheet Border Size and Type
To change the existing size and type of a schematic border, do the following:
1. Choose Sheet – Edit Size.
The Change Sheet Border Size form appears.
1999
Change Sheet Border Size
June 2000 196 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
2. Change the Border Size and Border Type cyclic fields.
To delete the sheet border of a schematic sheet, set the Border Size to none.
3. Click OK.
Understanding Offsheet Pins and Their NamingConventions
Offsheet pins are the pins you use to connect nets between sheets of a multisheet schematic.Hierarchical pins (schematic pins) connect signals that span different levels of a hierarchicaldesign. When you place a hierarchical pin or offsheet pin in a sheet schematic, the schematiceditor creates an equivalent pin in the index schematic.
The following examples show how to use hierarchical and offsheet pins in a multisheetschematic. Chapter 2, “Connectivity and Naming Conventions,” explains the pin namingconventions used in these four examples.
Example 1
Two hierarchical pins, A<0:7> and OUT1<0:7> , are placed in sheet 1. Bus signal A<0:7>appears in both sheets. To connect these sheets, you need either an offsheet pin in sheet 1or a matching hierarchical pin named out2<0:7> in sheet 1.
Example 2
In this example, the following hierarchical pins represent the partitioned bit width of a bussignal, A<0:7> and OUT<0:7> :
A<0:3>, B<0:3>, OUT<0:3> (in sheet 1)A<4:7> and OUT<4:7> (in sheet 2)
IO<0:7>OUT2<0:7>A<0:7>
IO<0:7>OUT1<0:7>A<0:7>
Sheet 1 Sheet 2
KEY:Schematic pinsOffsheet pins
June 2000 197 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The example shows the usage of offsheet pin S<0:3> connecting sheet 1 to sheet 2 and viceversa.
Example 3
Pin A is hierarchical in sheet 1.
To access pin A from sheet 2, you use an offsheet pin.
Example 4
A hierarchical pin for the bus B<0:7> is placed in sheet 1.
Sheet 2 uses only two bits of the bus, which you access with offsheet pin B<0:1> .
I1<0:3>S<0:3>B<0:3>
IO<0:3>
OUT<4:7>A<4:7>IO<0:3>
OUT<0:3>A<0:3>
S<0:3>
Sheet 1 Sheet 2
KEY:Schematic pinsOffsheet pins
IOOUT2A
IOOUT1A
Sheet 1 Sheet 2
KEY:Schematic pinsOffsheet pins
June 2000 198 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Sheet 3 uses another two bits, which you access with offsheet pin B<6:7> .
Adding Offsheet Pins to Multisheet Schematics
To add offsheet pins to connect signals that span several sheets, do the following:
1. Choose Add – Pin.
The Add Pin form appears.
I2<0:1>B<0:1>
I1<0:7>B<0:7>
Sheet 1 Sheet 2
B<6:7>
Sheet 3KEY:Schematic pinsOffsheet pins
June 2000 199 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
2. Change the Usage cyclic field to offSheet.
For more details, see the single-sheet schematic Add – Pin command.
3. Move the pointer into your design and click to place the pin.
Understanding the Index Schematic
When you create a multisheet schematic, the schematic editor automatically creates an indexschematic to organize the sheets. The index schematic provides a graphical overview of allthe sheets in the schematic.
When you run a check on your design, the schematic editor displays all hierarchical pins andtheir names at the top of the index schematic.
The following diagram is an example of an index schematic.
Going to and from the Index Schematic
To go to the index schematic, do the following:
1. Choose Sheet – Go To.
Hierarchical pins
Output offsheet pins (top right corner)
Input offsheet pins (top left corner)
Sheet title
Sheet size and revision number
Sheet number
Project A
AsizeRev: 3
Project A
AsizeRev: 4
June 2000 200 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The Go To Sheet form appears.
2. Choose index.
3. Click OK.
To go to a sheet from the index schematic, do the following:
1. Press and hold down the middle mouse button while the pointer is over your destinationsheet.
2. On the object-sensitive menu (OSM) that pops up, choose Go To.
You can set the OSMs on or off at any time.
Repositioning a Schematic within the Sheet Borders
If part of your schematic extends beyond the sheet border, you need to reposition it.
To reposition a schematic within the sheet borders, do the following:
Go To Sheet
June 2000 201 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
1. Draw a selection box around all the objects in your schematic by dragging the mousewhile holding down the left mouse button.
2. Choose Edit – Move.
3. Select a reference point by clicking in the design.
The design is now attached to the pointer.
4. Move the pointer within the sheet border and click to place the reference point of thehighlighted schematic.
5. Click in an open area to deselect the highlighted schematic.
The selectedobjects arehighlighted.
June 2000 202 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The schematic now appears within the sheet border.
Deleting Sheets
Caution
This operation cannot be undone.
You can use this operation only when editing the index schematic of a multisheet design. Youcan delete a sheet or range of sheets from a multisheet schematic.
To delete a sheet, do the following:
1. Choose Sheet – Delete from an index schematic.
June 2000 203 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The Delete Schematic Sheet form appears.
2. Type the page range you want to delete.
The schematic editor prompts you to confirm or cancel the deletion.
Reordering Sheets
Note: You can use this command only when editing an index schematic.
To change the order in which sheets are numbered, do the following:
1. Choose Sheet – Renumber from an index schematic.
The Edit Schematic Sheet Number form appears.
2. Specify the sheet to be renumbered and the new sheet number.
Delete Schematic Sheet
Delete Schematic Sheet
This action is not undoable, continue?
Edit Schematic Sheet Number
June 2000 204 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
3. Click OK.
If there is already a sheet with the new sheet number, the sheet whose number you wantto change is inserted before the existing sheet and gets the specified sheet number. Thesheets following it are automatically renumbered. On the example form above, sheet 1becomes sheet 10. sheets 2 through 9 stay the same, and sheets 10 and up, if they exist,are increased by 1. The values displayed in the title block change to reflect the new sheetnumbers.
Renumbering Sheets
To sequentially renumber all sheets in a multisheet schematic beginning with 1, do thefollowing:
➤ Choose Sheet – Resequence from an index schematic.
The schematic editor renumbers all sheets sequentially beginning with sheet 1. Forexample, if you previously deleted sheets 4 and 5 so that your sheets are numbered 1 23 6 7, this command reorders the pages in the correct sequence, 1 2 3 4 5.
Working with Cross-References
You can display cross-reference annotations to schematic and offsheet pins to indicate otherlocations in the design where the same pins are used on different sheets.
You can cross-reference multisheet pins to
■ Reference all pins on all sheets of a multisheet schematic
■ Zoom in automatically from one pin to the cross-referenced pin
■ Use the index schematic to link directly to specific hierarchical pins in your design
■ Produce a cross-reference report of all locations in your schematic where pins are cross-referenced
This section discusses the following topics:
■ Understanding Cross-Reference Zones on page 206
■ Understanding Pin Cross-References on page 207
■ Understanding Cross-Reference Reports on page 208
■ Preparing to Cross-Reference on page 208
June 2000 205 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
■ Displaying Cross-References on page 209
■ Zooming In to View All Cross-Referenced Pins One by One on page 211
■ Going to a Specific Hierarchical Pin on page 212
■ Viewing Cross-Reference Reports on page 212
■ Editing a Cross-Reference Display on page 214
■ Controlling the Format String Syntax on page 215
■ Customizing the Format String Syntax on page 216
Understanding Cross-Reference Zones
Multisheet schematics with borders show numbers and letters that reference different zones,similar to the squares on a map.
Letter zones
Number zones
8
June 2000 206 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Understanding Pin Cross-References
Pin cross-references are displayed on the schematic next to the pin name.
Example 1
Two pin names reference each other if any of the individual bits of the pin names are shared.For example, the bundle a<0:3>,b references the following pins:
a<0:3>b
Example 2
Pin PP<7:0> is referenced at sheet 1, zone A2 by pin name PP<0:3> ; at sheet 2, zone A1by pin name PP<7:0> ; and at sheet 3, zone B4 by pin name PP<7:0> . The reference namesare not listed for the last two locations because the reference name matches the pin name.
PP<7:0> 1A2(PP<0:3>),2A1,3B4
i1
2A4, 3B1
a<0:3>,b
1B3, 3B2(a<0>), 4C1(b)
Pin names i1 and a<0:3>,b
Sheet numbers 2 and 3 Zone numbers B3 and B2(a<0>)
June 2000 207 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Understanding Cross-Reference Reports
The following cross-reference report shows pin names and lists locations where the pins arereferenced.
Preparing to Cross-Reference
You must make sure your schematic is error free before you cross-reference pins, but you donot have to correct warnings.
To check a multisheet schematic for errors before displaying cross-references, do thefollowing:
1. From the index schematic, choose Design – Check and Save.
Sheet 1 shows where the signal is referenced.Zone C3 specifies the area where the pin isreferenced, using alphanumeric grids on thesheet borders.
--------------------------------------------Composer Cross Reference Report
Library name: myLibModule Name: test2
--------------------------------------------
Sheet Number: 1 Cellname: test2/sheet001
Pin Name References-------- ----------B<0:7> 2A1(B<0:1>),3A1(B<6:7>)CLEAR 1C3CLEAR 1C3CLEAR 1B3PRESET 1A1PRESET 1C3
Sheet Number: 2 Cellname: test2/sheet002
Pin Name References-------- ----------B<0:1> 1C4(B<0:7>)
Sheet Number: 3 Cellname: test2/sheet003
Pin Name References-------- ----------B<6:7> 1C4(B<0:7>)
Duplicate zones are shown if you turn the optionon.
The reference name lists the name of the pinthat made the reference, B<0:7> .
A comma separates location references
June 2000 208 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
A dialog box appears, showing you the number of errors and warnings in your schematic.The CIW shows details about the errors and warnings and how to fix them.
2. Correct all errors, if applicable.
Displaying Cross-References
You can display cross-reference annotations to schematic and offsheet pins to indicate otherlocations in the design where the same pins are used on different sheets.
To display cross-reference annotations to schematic or offsheet pins, do the following:
1. Choose Sheet – Cross Reference.
Schematic Check
Close
There were 0 errors and 7 warnings found.
June 2000 209 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The Cross Reference Options form appears.
2. To produce a report that you can view in a window, do the following:
❑ Turn on Generate Cross Reference Report File.
❑ In the Report File field, type a filename.
❑ Edit the Format String field, if necessary.
3. Click OK.
The system searches for each pin on each sheet and creates a list of the locations whereyou use each pin or a subset of a bus or bundle pin. The reference pin must have at leastone shared member name with the pin name.
Cross Reference Options
<sheetNumber><zone><referenceName>
report.file
June 2000 210 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Pin cross-references are displayed on the schematic next to the pin name.
You can now zoom in from one pin to another by choosing Sheet – Go To Pin.
Zooming In to View All Cross-Referenced Pins One by One
To see each occurrence of a cross-referenced pin on all sheets of a multisheet schematic, dothe following:
1. Choose Check – Current Cellview from the index schematic to make sure the cellviewis error free.
2. Choose Sheet – Cross Reference to generate the pin cross-references.
3. Choose Sheet – Go To Pin.
The Go To Pin form appears.
4. Select the pin or offsheet connector in your design to follow throughout the multisheets.
i1
2A4, 3B1
a<0:3>,b
1B3, 3B2(a<0>), 4C1(b)
Pin names i1 and a<0:3>,b
Sheet numbers 2 and 3 Zone numbers B3 and B2(a<0>)
Go To Pin
June 2000 211 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The schematic editor zooms in to the area that contains the specified pin or offsheetconnector. For example, if you selected first, the schematic editor shows the cellview thatcontains the first reference of the pin or offsheet connector you selected.
You can continue to view all related pins using the Go To Pin form.
Going to a Specific Hierarchical Pin
To go to a specific hierarchical pin, do the following:
1. Choose Check – Current Cellview from the index schematic to make sure the cellviewis error free.
2. Choose Sheet – Cross Reference to generate the pin cross-references.
3. Go to the index schematic.
4. Press and hold down the middle mouse button while the pointer is over one of thehierarchical pins.
5. On the object-sensitive menu (OSM) that pops up, choose Go To.
You can set the OSMs on or off at any time.
Viewing Cross-Reference Reports
The cross-reference report file contains a list of pin names followed by all of the locationswhere each pin is referenced in a multisheet schematic. The report lists the cross-referencesin the same format as the strings that are displayed in the schematic.
To view a cross-reference report, do the following:
1. Choose Sheet – Cross Reference.
June 2000 212 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
The Cross Reference Options form appears.
2. Click View Report.
A window listing the pin references appears, as follows:
Cross Reference Options
<sheetNumber><zone><referenceName>
report.file
June 2000 213 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Example
In this sample design, a hierarchial pin for the bus B<0:7> is declared insheet 1. Sheets 2 and 3 use two bits of the bus declared in sheet 1. These two bits arerepresented by offsheet pins.
Editing a Cross-Reference Display
You can edit the cross-reference display using standard editing commands and control thevisibility of the strings. You can
■ Make text invisible
■ Change fonts and sizes to make text easier to read
B<0:1>
B<0:7>
Sheet 1
Sheet 2
B<6:7>
Sheet 3
--------------------------------------------Composer Cross Reference Report
Library name: myLibModule Name: test2
--------------------------------------------
Sheet Number: 1 Cellname: test2/sheet001
Pin Name References-------- ----------B<0:7> 2A1(B<0:1>),3A1(B<6:7>)CLEAR 1C3CLEAR 1C3CLEAR 1B3PRESET 1C3PRESET 1C3
Sheet Number: 2 Cellname: test2/sheet002
Pin Name References-------- ----------B<0:1> 1C4(B<0:7>)
Sheet Number: 3 Cellname: test2/sheet003
Pin Name References-------- ----------B<6:7> 1C4(B<0:7>)
June 2000 214 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
■ Move the text independent of the pin or pin label (when you move the pin, cross-reference text also moves)
To edit cross-reference text, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select the cross-reference data in your design.
3. Edit the data on the Edit Object Properties form.
4. Click OK.
5. Choose Edit – Move to move text, if applicable.
Controlling the Format String Syntax
You can control the format of cross-references (written to the report file or displayed next topins) by using your own cross-reference format string. You construct a string using thefollowing parameters in any order:
Syntax
pinName location , location , . . .
location :=[ sheetNumber ][ zone ][ direction ][ referenceName ]
direction :=’i’|’o’|’io’
[sheetNumber]
[zone]
[direction]
[referenceName]
Sheet number that contains the pin
The alphanumeric grids that contain the pin
The direction of the pin
The name of the pin.The referenced pin name is only printed when it does not exactlymatch the original pin name. For example, the following string letsyou see which bits of a bus are used on which sheets
"1A1(bus<0:7>),2B2(bus<0:3>),3C3(bus<4:7>)"
June 2000 215 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
for input, output, or input/output respectively
referenceName: = B<0:7>
pin name that has at least one shared bus component
Example
Using the default format of sheetNumber zone referenceName
Pin Name ReferencesPP<7:0> 1A2(PP<0:3>), 2A1, 3B4
The reference name (PP<0:3> ) is enclosed in parentheses only if it is different from the pinname. PP<7:0> is referenced at
■ Sheet 1, zone A2, by pin name PP<0:3>
■ Sheet 2, zone A1, by pin name PP<7:0>
■ Sheet 3, zone B4, by pin name PP<7:0>
Customizing the Format String Syntax
You can customize the following:
■ Pin Reference Format using the pinRefFormat environment variable
Specifies the format for displaying the pin reference information that appears next toeach pin when you choose Sheet – Cross Reference.
■ Pin Reference Duplicates using the pinRefDuplicates environment variable
Specifies whether the editor reports duplicate pin references for a pin when you chooseSheet – Cross Reference.
■ Pin Reference Sorting using the pinRefSorting environment variable
Specifies how the editor sorts pin references when you choose Sheet – Cross Reference.
Customizing Multisheets
This section describes the following:
■ Customizing the Types and Sizes of Sheet Borders on page 217
■ Customizing the Cross Reference Options Form on page 218
June 2000 216 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
■ Drawing a Customized Sheet Border on page 219
■ Drawing Sheet Zones on page 219
■ Drawing Zone Labels on page 220
■ Adding the Sheet Zone Property on page 221
■ Adding a Title Block on page 222
■ Adding Title Block Labels on page 222
■ Verifying the Label Type on page 224
■ Adding Title Block Properties on page 224
■ Customizing Pin Cross-References on page 225
Customizing the Types and Sizes of Sheet Borders
You can use your own customized sheet border symbols when you create new sheetschematics. You can customize the display of pin cross-references.
The fields on the Create Schematic Sheet form appear as follows:
To customize the default settings on the Create Schematic Sheet form, do the following:
1. In the configuration file, search for schSheetMasters .
2. Define or delete the types and sizes of sheet borders.
For example, you can modify the C-size sheet as follows:
list("myLib" "myCsize" "symbol")list("myLib" "myCsize.c" "symbol"))
where
Create Schematic Sheet
June 2000 217 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
myLib is the name of your design library.myCsize is your name for the size of your customized sheet.myCsize.c is the continuation sheet.symbol specifies all multisheet borders are symbols.
Customizing the Cross Reference Options Form
The fields on the Cross Reference Options form appear as follows:
You can customize default settings on the Cross Reference Options form.
The cross-reference format string variable, PinRefFormat , can contain any text and thefollowing keywords: zone , sheetNumber , direction , referenceName .
For example:
PinRefFormat = "Zone: zone , Sheet: sheetNumber , Dir: direction "
yields reference strings such as
"Zone:A5, Sheet:3, Dir:input"
Cross Reference Options
June 2000 218 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Drawing a Customized Sheet Border
A sheet border symbol contains several cellview properties that you can customize:
■ Outer border
■ Sheet zones and their corresponding labels and properties
■ Title blocks and their corresponding labels and properties
The border symbol also needs to contain two other cellview properties, both with the propertytype string .
■ "nlAction" = "ignore"
Choose Edit – Properties – Cellview to add this property.
■ geQuerySelSet()
Type this command in the CIW and use the Add button to add a type string property
"schType" = "border"
To draw a customized outer sheet border, do the following:
1. In the symbol editor, choose Add – Shape – Rectangle.
2. Press F3.
The Add Symbol Shape form appears.
3. Draw a rectangle that represents the edge of your customized sheet.
4. Press Esc to cancel the Add – Shape – Rectangle command.
Drawing Sheet Zones
To add sheet zones, do the following:
1. In the symbol editor, choose Add – Shape – Line.
2. Press F3.
The Add Symbol Shape form appears.
June 2000 219 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
3. Draw the equally spaced short lines (tick marks) around the sheet border.
Drawing Zone Labels
To add customized sheet zone labels to the sheet border, do the following:
1. In the symbol editor, choose Add – Label.
The Add Symbol Label form appears.
2. Type a label name in the Label field.
You must type and place each label separately.
To draw equally spaced tick marks, draw the firstsegment, and then use the Edit – Copy commandarray option.
June 2000 220 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
3. Select the normalLabel option.
Adding the Sheet Zone Property
To add the sheetHasZones sheet zone property, do the following:
1. In the symbol editor, choose Edit – Properties – Cellview.
The Edit Cellview Properties form appears.
2. Click Add.
The Add Property form appears.
3. In the Name field, type schHasZones .
4. In the Value field, type (3 2 1) (C B A) .
The value consists of two lists. The first describes the X coordinates (3,2,1) and thesecond describes the Y coordinates (C,B,A) . The order of the coordinates determineshow they are displayed in the sheet border zones. The X coordinate list is displayed leftto right, and the Y coordinate list is displayed top to bottom.
5. Click OK.
6. Click OK on the Edit Cellview Properties form.
3 2 1
C
B
A
3 2 1
A
B
CSheet zones describe a coordinate system thathelps you identify exactly where an object islocated in a cellview. You can divide your sheetinto a3 x 3 matrix with sheet zones 1, 2, 3, A, B, andC.
June 2000 221 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
Adding a Title Block
To add sheet titles and properties to a customized sheet border, you can
■ Use the standard title symbol in the US_8ths reference library
■ Create your own title block
To create your own title block (add an instance of a title block symbol), do the following:
1. Using the schematic editor, add an instance of the title block symbol to a schematicdesign.
2. Open the window that contains your customized border.
This window uses the symbol editor.
3. In the schematic editor window, select the title block instance.
4. Choose Edit – Copy to copy the instance from the schematic window to the symbol editorwindow that contains your customized border.
To draw a sheet title block for a customized sheet border, do the following:
1. In the symbol editor, zoom in on the lower right corner of the sheet border.
2. Choose Add – Shape – Line and draw vertical and horizontal lines that define the blockand the block fields.
Adding Title Block Labels
To name the sheet title block fields for a normal label, do the following:
Lines
June 2000 222 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
1. In the symbol editor, choose Add – Label.
The Add Symbol Label form appears.
Note: Do not use the Add – Note Text command to add block titles.
2. Type a label name and choose normalLabel as the label type.
3. Click in your design to place the label.
4. Repeat steps 2 and 3 to place all the labels you plan to use.
To add the values of the title block fields with NLP and IL labels, do the following:
1. Choose Add – Label.
The Add Symbol Label form appears.
You must type and place each label separately. An example follows:
2. On the first line, type [@COMPANY].
Company
Title
Date
Sheet No.
Company
Title
Date
[@COMPANY]
[@TITLE]
ilInst~>cellView~>instancesLastChanged
[@SHEET]Sheet No. Label 4
Label 3
Label 2
Label 1
June 2000 223 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
3. In the Label Type cyclic field, choose NLPLabel.
4. In your design, click the label to place it in the sheet title block.
5. On the second line, type [@TITLE] .
6. In the Label Type cyclic field, choose NLPLabel.
7. In your design, click the label to place it in the sheet title block.
8. On the third line, type the following Cadence® SKILL language code:
ilInst~>cellView~>instancesLastChanged
ilInst is a SKILL variable used to provide self-reference to an instance during graphicdisplay of the cellview containing the instance.
9. In the Label Type cyclic field, choose ILLabel.
10. In your design, click the label to place it in the sheet title block.
The SKILL code displays a time stamp; for example,
Jun 5 15:07:33 2000
11. On the forth line, type [@SHEET].
12. In the Label Type cyclic field, choose NLPLabel.
13. In your design, click the label to place it in the sheet title block.
Verifying the Label Type
To verify the label type, do the following:
1. Select the label of the symbol.
2. In the CIW, type
geGetSelSet()~>??
You can now see all the attributes of the label.
Adding Title Block Properties
The editor recognizes a sheet title property called schSheetTitles . TheschSheetTitles property is added to the titleblock cellview, which is a symbol. TheschSheetTitles property contains the list of properties that can be edited with the Sheet– Edit Title command.
June 2000 224 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
To add the schSheetTitles property to your sheet title block, do the following:
1. Choose Edit – Properties – Cellview.
The Edit Cellview Properties form appears.
2. Click Add.
The Add Property form appears.
3. In the Name field, type, schSheetTitles .
4. Change the Type cyclic field to ILList.
5. Fill in the Value field.
The Value field contains two lists. The first list contains global titles that apply to allsheets. The second list contains local titles that apply to a specific sheet, all in list form.
Value := ( ( global-titles ) ( local-titles ) )
global-titles := nil |
( title-pair ) |
( title-pair ) global-titles
local-titles := nil |
( title-pair ) |
( title-pair ) local-titles
title-pair := "propertyName" "propertyType"
Note: The Sheet – Edit Title command creates the schSheetTitles properties within theindex schematic (on the instances of the msymbols ). Properties for global titles are placedon all msymbol instances. Properties for local titles are placed only on the instance of thecorresponding msymbol . When you display a sheet schematic, the NLPLabels in the titleblock are evaluated; these labels use the property values stored in the index schematic.
6. To verify the creation of the schSheetTitles property, select an instance of anmsymbol then, in the CIW, type
geQuerySelSet( )
7. Click OK.
8. Click OK to add the property to the cellview.
Customizing Pin Cross-References
You can customize environment variables for pin cross-references as follows:
June 2000 225 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating a Multisheet Schematic
■ Pin reference format
The pinRefFormatenvironment variable specifies the format for displaying the pinreference information that appears next to each pin when you use Sheet – CrossReference.
■ Pin reference duplicates
The pinRefDuplicatesenvironment variable specifies whether the editor reports duplicatepin references within the same zone of a multisheet schematic when you use Sheet –Cross Reference.
■ Pin reference sorting
The pinRefSorting environment variable specifies how the editor sorts pin referenceswhen you use Sheet – Cross Reference.
June 2000 226 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
5Creating Symbols
You can quickly create a new symbol by importing (copying) an existing symbol into thesymbol editor window and then modifying the imported symbol. If you cannot use an existingsymbol—for example, if your schematic requires an electrical or logical function that does nothave a corresponding symbol in a Cadence® library—you need to create your own symbolusing the symbol editor.
This chapter describes the following topics:
■ Setting Grid Options on page 229
■ Importing Symbols on page 230
■ Creating New Symbols on page 231
❑ Drawing Lines on page 232
❑ Drawing Rectangles on page 233
❑ Drawing Polygons on page 234
❑ Drawing Circles on page 235
❑ Drawing Ellipses on page 236
❑ Drawing Arcs on page 236
❑ Adding Pins as Graphic Images on page 238
❑ Adding Pins as Instances on page 239
❑ Creating Custom Pins as Graphic Images on page 240
❑ Making the Custom Pin Name Visible on page 241
❑ Adding a Selection Box on page 242
❑ Adding Labels on page 243
❑ Adding a Normal Label on page 244
June 2000 227 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
❑ Adding an NLP Label on page 245
❑ Adding an IL Label on page 248
❑ Adding Note Text and Note Shapes on page 250
❑ Adding a Net Expression Label on page 250
❑ Setting the Symbol Origin on page 251
■ Creating Symbol Cellviews Using Generators on page 252
June 2000 228 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Setting Grid Options
Before you create a symbol, you might want to set the grids in the symbol editor to assist youin drawing. If you want to create shapes that are smaller than what the current snap spacingallows, choose a smaller snap spacing.
To set grid options, do the following:
1. Choose Options – Display.
The Display Options form appears.
2. Set the grid controls according to your specifications.
3. Click OK.
June 2000 229 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Importing Symbols
You can import (copy) an existing symbol into the symbol editor. You can then modify theimported symbol and create a new symbol cellview.
To import an existing symbol, from the symbol editor, do the following:
1. Choose Add – Import Symbol.
The Import Symbol form appears.
2. Specify the symbol you want to copy into the symbol design window.
3. Move the pointer into your design and click to place the symbol.
You can now edit the symbol to create a new symbol.
June 2000 230 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Creating New Symbols
On occasion, your design might require an electrical function that does not have acorresponding symbol in an existing library. In such situations, you need to create your ownsymbol. This section describes how to create your own symbol using the symbol editor.
You create a symbol by assembling elements in your design such as
■ Lines, rectangles, polygons, circles, ellipses, and arcs
■ Pins used to connect the symbol to the rest of a schematic
■ Labels to identify the symbol and pins
■ A selection box to surround a symbol that lets you select an instance of the symbol inthe schematic editor
■ Notes that consist of text and shapes to annotate the symbol.
Selection box
A Y
[@instanceName]
INV
Normal label
Input pin Inverter symbol polygon(device shape)
NLP label
Output pin
Circle (shape)Line(shape)
ABC Inverter
Note text Note shape(rectangle)
June 2000 231 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Drawing Lines
To draw lines for a symbol, using the symbol editor, do the following:
1. Choose Add – Shape – Line.
2. Press F3.
The Add Symbol Shape form appears.
3. Set the options to your specifications.
4. Move the pointer into your design window.
The following example shows a line being added to a triangle shape.
Click the first point tostart a line.
Double-click the last point toend the line.
✘
You can enter manypoints to create amulti-segmented line.You can also press theEsc key to terminatelines.
✘
June 2000 232 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Drawing Rectangles
To draw a rectangle, using the symbol editor, do the following:
1. Choose Add – Shape – Rectangle.
2. Press F3.
The Add Symbol Shape form appears.
3. Set the options to your specifications.
4. Move the pointer into your design window and click to enter the first corner of therectangle.
5. Click the opposite corner.
✘
✘
1st point
2nd point
June 2000 233 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Drawing Polygons
To draw a polygon, using the symbol editor, do the following:
1. Choose Add – Shape – Polygon.
2. Press the F3 key.
The Add Symbol Shape form appears.
3. Set the options to your specifications.
4. Move the pointer into your design window and draw the segments that form a polygonsymbol by clicking on each point.
2nd point
1st point
3rd point, or double-click to close the polygon
✘
✘
✘
4th point
June 2000 234 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Drawing Circles
To draw a circle, using the symbol editor, do the following:
1. Choose Add – Shape – Circle.
2. Press F3.
The Add Symbol Shape form appears.
3. Set the options to your specifications.
4. Move the pointer into your design window, and click to specify the center of the circle.
5. Move the cursor away from the center point, and click to specify the distance of the radiusand complete the circle.
1st point
2nd point✘ ✘
June 2000 235 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Drawing Ellipses
To draw an ellipse, using the symbol editor, do the following:
1. Choose Add – Shape – Ellipse.
2. Press F3.
The Add Symbol Shape form appears.
3. Set the options to your specifications.
4. Move the pointer into your design window and click one point to begin creation of theellipse.
5. Stretch the ellipse to your specifications and click the second point to complete theellipse.
Drawing Arcs
To draw an arc, using the symbol editor, do the following:
1. Choose Add – Shape – Arc.
2. Press F3.
✘
✘1st point
2nd point
June 2000 236 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The Add Symbol Shape form appears.
3. Move the pointer into your design window and specify three points to create an arc.
The example shows two ways to draw an arc.
✘
✘✘1st point 2nd point
3rd point✘
✘✘1st point 3rd point
2nd point
June 2000 237 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Adding Pins as Graphic Images
By default, the symbol pin that you create using the Add – Pin command in the symbol editoris a graphic image of a symbol master. When you add pins as graphic images of a symbolmaster, any changes you make to the symbol pin master are not reflected in the graphicimages that were previously added from the symbol pin master.
To add a symbol pin using the symbol editor, do the following:
1. Choose Add – Pin.
The Add Pin form appears.
2. In the Pin Names field, type the pin names.
Use a space to separate each name.
3. In the Direction cyclic field, choose the pin direction.
4. In the Type cyclic field, choose the pin type.
5. Move the pointer into the cellview and click to place the first pin.
June 2000 238 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The following example shows how an input pin with a pin name of A appears after youclick your mouse in the design.
6. Change the Direction cyclic field, if necessary, before placing a subsequent pin.
7. Move the pointer into the design window and click to place pin Y.
The following example assumes you changed the pin direction.
Adding Pins as Instances
When you add symbol pins as instances, any changes you make to the graphics of thesymbol pin master are reflected in all the pin instances that were previously added from thesymbol pin master.
To turn on the option for adding symbol pins as instances, do the following:
1. Choose Options – Editor.
Input pinA
Output pinInput pinA Y
June 2000 239 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The Editor Options form appears.
2. In the Command Controls section of the form, turn on the Add Symbol Pins as Instancesoption.
3. Click OK.
4. Refer to the Add – Pin command to create a symbol pin.
Creating Custom Pins as Graphic Images
You can use the Add – Custom Pincommand to create your own graphic images (polygons) forthe pins you want to place in your design.
To create and place a new custom pin, using the symbol editor, do the following:
1. Choose Add – Custom Pin.
June 2000 240 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The Add Custom Pin form appears.
2. In the Pin Names field, type the name of the custom pin.
3. In the Direction cyclic field, choose the pin direction.
4. In your design window, click the first point and each subsequent point of the polygonshape that you want to create.
5. Double-click on the last point to close the polygon.
The editor fills in the pin color and prompts you to use the Edit Object Properties form todisplay the pin name. By default, the pin names are not visible.
6. Press the Esc key.
Making the Custom Pin Name Visible
To make the custom pin name visible or to edit other custom pin properties, do the following:
1. Choose Edit – Objects – Properties.
2. In the design window, click the custom pin.
The Edit Object Properties form appears. The Valuefield displays the name you gave toyour custom pin.
3. Set the Display cyclic field to value.
4. Click OK.
June 2000 241 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Adding a Selection Box
A symbol selection box defines the area of the symbol that you can use when selecting aninstance of that symbol from the schematic editor.
To create a selection box, using the symbol editor, do the following:
1. Choose Add – Selection Box.
The Add Selection Box form appears.
2. Draw a selection box manually, or click Automatic.
❑ To draw the selection box manually, click the first corner of the rectangle, then movethe cursor to the opposite corner and click.
❑ To draw the box automatically, click Automatic. The software generates a selectionbox that encloses all symbol pins and symbol shapes.
Note: You can use the Stretch command to adjust the box shape.
A Y
[@instanceName]
inv
✘1st point
✘ 2nd point
June 2000 242 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Adding Labels
Symbol labels display assorted textual information. You can add one of three types of labelsto your symbol:
■ Normal labels, which have fixed text.
This type of label is generally used to identify the device and pins.
■ NLP labels, which have expressions that the editor evaluates to determine the value.
When you place an instance in your schematic, the system evaluates the NLPexpression and displays the resulting value. For example, the system displays the NLPlabel [@instanceName] in the symbol editor but displays a value—for example, I3 —in the schematic editor.
■ IL labels, which have expressions that are evaluated by the SKILL language to determinethe value.
When you place an instance in your schematic, the system evaluates the SKILLexpression and displays the resulting value. For example, the system displays the ILlabel ilInst~>name in the symbol editor, but displays a value — for example, I3 — inthe schematic editor.
A Y
[@instanceName]
inv
A Y
I3
inv
Schematic editorSymbol editor
A Y
ilInst~>name
INV
Symbol editor Schematic editor
A Y
INV
I3
June 2000 243 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Adding a Normal Label
To add a normal label, using the symbol editor, do the following:
1. Choose Add – Label.
The Add Symbol Label form appears.
2. In the Label field, type the name of your symbol.
3. In the Label Choice cyclic field, choose logical label.
4. In the Label Type field, click normalLabel.
5. Move the pointer into your design window.
The normalLabel expression is attached to the pointer.
6. Click to place the label.
A Y
Example of a normal labelINV
June 2000 244 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
When you place an instance of the symbol in your design, the schematic editor displaysthe label text. To force an evaluation of the SKILL expression or function and display theresults, use the Window – Redraw command.
Adding an NLP Label
To add an NLP label, using the symbol editor, do the following:
1. Choose Add – Label.
The Add Symbol Label form appears.
2. To complete the Label field, do one of the following:
❑ Accept the default, [@instanceName]
❑ Type your own expression
3. In the Label Type field, click NLPLabel.
The label choice affects the color of the label.
4. Move the pointer into your design window.
June 2000 245 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The NLPLabel expression is attached to the pointer.
5. Click to place the label next to the symbol.
When you place an instance of a symbol in a schematic cellview, the schematic editorinterprets the [@instanceName] label and displays the current value of the property.To force an evaluation of the SKILL expression or function and display the results, usethe Window – Redraw command.
The schematic editor evaluates NLP labels using netlisting rules.
Example – Syntax for an NLP Label Expression Containing One Property
[@propertyName : displayFormat1 [: displayFormat2 ]]
In the example, displayFormat1 is used when a specified property exists, anddisplayFormat2 (optional) is used when a specified property cannot be located.
If displayFormat2 is not defined and the property does not exist, the editor does notdisplay the NLP label.
The rules table below and the examples that follow the table show how NLP label expressionsare interpreted.
Syntax Expression Definition
[ ] Delimits the property substitution expression. Text outsidesquare brackets remains unevaluated.
@ Specifies the beginning of a property substitutionexpression, as [@instanceName] .
propertyName Specifies the property name.
A Y
[@instanceName] Example of an NLP label
June 2000 246 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Examples – Evaluating NLP Label Expressions
If the current value of a named property is defined, the schematic editor substitutes thedefined value for the percent character (%) in the NLPLabel expression when you place theinstance in the design.
If the schematic editor does not find a value for a property when you place an instance of asymbol, the schematic editor uses displayFormat2 .
A label expression represents the current value of a property.
■ Example 1 – Basic expressions
[@w:%]
or
[@w]
If you reference only one property in the NLPLabelexpression, you specify only the nameof the property. When evaluated, the schematic editor returns the value of the property.In Example 1, when w has a value of 8, the editor generates the following label:
8
■ Example 2 – Simple expressions
[@w:w=%]
: Separates the property name from the display format string.For example, in [@w:w=%], the colon separates theproperty name (w) from the expression (w=%).
% A placeholder in the format string for the current value ofpropertyName .
\ plus a reserved character Lets you include one of the above reserved characters as atext character in your label.
\n Generates a carriage return.
\t Generates a tab.
\nnn Substitutes an ASCII character defined by octal nnn .
Syntax Expression Definition
June 2000 247 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
The editor considers any nonreserved characters after the separator (:) to be a textstring. When evaluated, the schematic editor returns the string. If there is a specialcharacter in the expression, the editor evaluates it also. In Example 2, when w has avalue of 8, the editor generates the following label:
w=8
■ Example 3 – Compound expressions
[@w:w=%;][@l:l=%;]
In Example 3, if w is not defined and l has a defined value of 8 , the editor generatesthe following label:
l=8;
In Example 3, if w has a value of 4 and l has a value of 8, the editor generates thefollowing label:
w=4;l=8;
If you specify a value for wand l after you place the instance, or if you change the valueafter you place the instance, the schematic editor updates the label to display the currentvalue.
■ Example 4 – Combined label expressions
[@w:w=%:w is not defined;]
In Example 4, if w is not defined, the editor goes on to the next label expression, w isnot defined , which is a text string. The editor evaluates the string as a value anddisplays the result as a label. The semicolon is part of the text string.
w is not defined;
■ Example 5 – Nested label expressions
[@w:w=%;[@l:l=%]]
In Example 5, the editor returns the values for both properties if they are both defined.For example, if the value of w is 4 and the value of l is 8, the editor generates thefollowing label:
w=4;l=8
Adding an IL Label
To display the value of an instance property, you can add an IL label using a Cadence® SKILLlanguage expression that can be evaluated by the SKILL language.
June 2000 248 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Using the symbol editor, do the following:
1. Choose Add – Label.
The default [@instanceName] label is attached to the cursor. The Add Symbol Labelform appears.
2. In the Label field, type a SKILL expression or function, with the form
ilInst ~>master~>libName
ilInst is a SKILL variable used to provide self-reference to an instance during graphicdisplay of the cellview containing the instance.
3. Set the Label Choice cyclic field to instance label.
4. In the Label Type field, click ILLabel.
June 2000 249 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
5. Move the pointer into your cellview and click to place the IL label.
■ Example 6 – SKILL code
ilInst~>cellView~>instancesLastChanged
The SKILL code displays a time stamp; for example,
Jun 5 15:07:33 2000
Adding Note Text and Note Shapes
You add note text and note shapes in the symbol editor in the same way you add notes in theschematic editor. Refer to “Adding Notes” on page 181.
Adding a Net Expression Label
You add a net expression label in the symbol editor in the same way you add a net expressionlabel in the schematic editor. Refer to Adding and Editing Net Expression Labels onpage 164.
A Y
ilInst~>master~>libName IL label
A Y
GaCells library name
June 2000 250 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
Setting the Symbol Origin
The origin of a symbol is the (0,0) location within a symbol. When you place instances in aschematic, the symbol origin affects the position of the symbol graphics and pins relative tothe instance placement point.
Caution
Changing the origin of a symbol moves instance pins within allschematics that use that symbol. This might affect the connectivity of theschematic because schematic wires do not automatically move to thenew pin locations.
To set the origin of a symbol, using the symbol editor, do the following:
1. Choose Edit – Origin.
2. Point to a location for the new origin of the symbol.
Pointing to the middle of the symbol moves the symbol graphic, repositioning the X=0,Y=0 origin point of the symbol to the new location.
When you use this command, it might be helpful to turn on the display of the following:
❑ X and Y axes
❑ Coordinates in the status banner
A Y
[@instanceName]
INV
✘
Point to a location.
A Y
[@instanceName]
INV
June 2000 251 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCreating Symbols
3. Choose Window – Fitto view the enlarged symbol, if necessary.
Creating Symbol Cellviews Using Generators
A symbol cellview is a lower cell of a complete schematic cellview.
Besides using the Design – Create Cellviewcommand mentioned in Chapter 6, “AutomaticallyCreating Cellviews,” you can create symbol cellviews using generators.
■ Text-to-Symbol Generator on page 585
The text-to-symbol generator (TSG) is a Cadence application program that automaticallygenerates symbol cellviews for schematic capture and subsequent simulationprocesses. TSG provides a quick way to generate a symbol from a list of pins in a TSGfile.
■ Symbol and Simulation Library Generator on page 614
The Cadence SKILL-based symbol and simulation library generator(S/SLG) is a library management program that generates symbol and simulation views.
June 2000 252 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
6Automatically Creating Cellviews
This chapter discusses the following topics:
■ Features of Creating Cellviews on page 253
■ Automatically Creating a Cellview from Another Cellview on page 254
■ Automatically Creating a Cellview from a Pin List on page 261
■ Automatically Creating a Cellview from an Instance on page 264
■ Editing Symbol Generation Options on page 264
■ Specifying Symbol Generator Pin Sorting on page 292
Features of Creating Cellviews
You can automatically
■ Create a new cellview from an existing cellview
Refer to the Create Cellview – From Cellview command.
■ Create a new cellview from a list of port/pin names
Refer to the Create Cellview – From Pin List command.
■ Create a new cellview from an existing instance
Refer to the Create Cellview – From Instance command.
■ Generate circuit symbols for schematic capture and subsequent simulation processes
You can automatically generate a symbol from a list of pins in a text-to-symbol generator(TSG) file. Refer to the Text-to-Symbol Generator.
■ Generate symbol and simulation views
June 2000 253 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Refer to the Cadence® SKILL-based library management program symbol andsimulation library generator.
The software uses the TSG program to generate a symbol when you choose either Design –Create Cellview – From Cellview or Design – Create Cellview – From Pin List.
Automatically Creating a Cellview from Another Cellview
You can automatically create a new cellview from an existing cellview. For example, you canautomatically create a symbol from a schematic. Automatic cellview creation can be veryuseful for both top-down and bottom-up design approaches.
To create a cellview from another cellview, do the following:
1. Choose Design – Create Cellview – From Cellview.
The Cellview From Cellview form appears.
By default, the software initializes the form with information about the cellview currentlyopen (the default cellview).
2. If you want to use a different cellview as the source of the port/pin information, changethe Library Name, Cell Name, and From View Namefields.
3. Change the To View Name or Tool / Data Type field to change the cellview to be created.
Note: If either the From View Name cyclic field or the Tool / Data Typecyclic field do not
June 2000 254 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
contain the desired view or conversion function, you must modify the schViewToPinListReglist or the schPinListToViewReglist, which are defined in your schConfig.il file.
4. To display the cellview in a new window, turn on the Display Cellview button.
5. To edit various cellview creation options, turn on the Edit Options button.
6. Click OK.
When generating a symbol, the Symbol Generation Options form appears if you turnedon the Edit Options button and the cellview is being newly created or replaced.
If a cellview already exists with the same name, a dialog box prompts you to eitherreplace the cellview, modify it (symbol cellview only), or cancel the command.
From this point, the exact behavior of the command depends on the type of data beingcreated.
Replacing an Existing Symbol Cellview
You can replace or modify existing symbol cellviews. You can only replace (not modify) allother types of existing cellviews.
1. In the schematic editor, choose Design – Create Cellview – From Cellview.
2. In the To View Name field, type symbol .
3. Click OK.
If the symbol cellview to be created already exists, the Create Cellview dialog boxappears.
June 2000 255 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Caution
Replacing the symbol cellview does the following:
❑ Discards any modifications you may have made to that cellview
❑ Creates only the pins, properties, selection box, labels, and other graphics; allschematic instances, schematic wires, and HDL body text are lost
❑ May alter the position of pins in the new symbol cellview
4. Click Replace.
The Symbol Generation Options form appears.
5. Click OK.
June 2000 256 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Overwrite Base Cell CDF dialog box appears.
The system deletes the existing cellview and creates a new one.
See Figure 6-2 on page 260.
6. Click Yes.
Modifying an Existing Symbol Cellview
You can replace or modify existing symbol cellviews. You can only replace (not modify) allother types of existing cellviews.
1. In the schematic editor, choose either Design – Create Cellview – From Cellviewor Design– Create Cellview – From Pin List.
2. Click OK.
If the symbol cellview to be created already exists, the Create Cellview dialog boxappears.
June 2000 257 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Caution
Modifying a symbol cellview does the following:
❑ Automatically edits the cellview with a minimal amount of changes to the current pinlocations, graphics, and properties within the symbol cellview
❑ Deletes pins that are no longer needed
❑ Adds pins that do not yet exist in the new cellview
Pins are added near the bottom of the cellview. Use the symbol editor to repositionthese new pins and to adjust any symbol graphics. The system determinesattributes of the new pins by the currently active TSG template file.
❑ Adds or updates cellview properties and terminal properties
❑ Annotates the changes that were made in note format at the bottom of the cellviewand in the Command Interpreter Window (CIW)
❑ Does not delete cellview or terminal properties
3. Click Modify.
The symbol cellview is automatically edited and saved.
The Overwrite Base Cell CDF dialog box appears.
4. Click Yes to update the base cell CDF with new simInfo port information.
See Figure 6-3 on page 261.
June 2000 258 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Examples of Replacing and Modifying Pins on a Symbol
The following three figures show the difference between choosing Replace and Modify.
■ Figure 6-1. The symbol
■ Figure 6-2. The symbol after choosing Replace
■ Figure 6-3. The symbol after choosing Modify
Figure 6-1 illustrates an original symbol that was created using Design – Create Cellview – FromCellviewfrom a schematic that had the pins { a bb ccc dddd eeeee f gg hhh iii kll mmm } .
The following changes were then made to the schematic:
■ Deleted input pin bb
■ Deleted inputOutput pin iii
■ Added input pins wwwwww and zz
■ Added inputOutput pin ii
All three figures show pin a at the exact same location, (X,Y) = (0,0) which is thesymbol’s origin point. By default, TSG puts the top-most left pin at the origin of the symbol.
Figure 6-1 The Symbol
June 2000 259 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Figure 6-2 The Symbol after Choosing Replace
After a Replace, only pin a is in the exact same position as the original pins. All otherunaffected pins are in new locations for the following reasons:
■ Pins ccc , dddd , and eeeee have moved up by one grid space, which was freed up bythe deletion of pin bb.
■ Although the ordering and number of pins along the top is similar to the original (with newpin ii replacing pin iii ), all four top pins have moved down by one-half a grid (due tothe shorter label).
■ Due to the length of new or deleted pin names, the graphic has been recalculated in sizeaccordingly.
June 2000 260 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Figure 6-3 The Symbol after Choosing Modify
The modified cellview has all of the unaffected pins {a ccc dddd eeeee f gg hhh k llmmm} at their original locations. The new pins {wwwwww, zz, ii} have been placed atthe bottom of the cellview, outside of the bounding box of the original symbol. The pin and pinnames {bb, iii} have been deleted, but the graphic pin line (pin stub) remains to showthe position of the pins that were deleted. If necessary, you can delete these graphic pin linesusing the symbol editor. Also shown is the note used to describe the changes that were madeto the symbol.
Automatically Creating a Cellview from a Pin List
A pin list can be any list of input, output, I/O, or switch pins. You can create a cellview fromexisting pins, such as those from the basicpin library, or you can create the cellview from newpin names.
June 2000 261 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
To create a symbol cellview from a pin list, do the following:
1. Choose Design – Create Cellview – From Pin List.
The Cellview From Pin List form appears.
2. Type the names of the pins that you want to appear in the automatically created cellview.Separate each pin name with a space.
By default, the software initializes the form with information about the cellview currentlyopen (the default cellview).
3. If you want to use a different cellview as the source of the port/pin information, changethe Library Name, Cell Name, and View Namefields.
Note: If either theView Namefield or the Tool / Data Typecyclic field does not contain thedesired view or conversion function, you must modify the schViewToPinListReglist or theschPinListToViewReglist, both of which are defined in your schConfig.il file.
June 2000 262 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
4. If you want the system to display the cellview in a new window, turn on the DisplayCellview button.
5. If you want to edit various cellview creation options, turn on Edit Options.
6. Click OK.
When generating a symbol, the Symbol Generation Options form appears if you turnedon Edit Options and the cellview is being newly created or replaced.
If the cellview already exists, a dialog box prompts you to either replace the cellview,modify it (symbol cellview only), or cancel the command.
The system generates the specified cellview from the pin information you enter on theform.
June 2000 263 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Automatically Creating a Cellview from an Instance
To create a cellview from an instance, do the following:
1. Choose Design – Create Cellview – From Instance.
2. Click on an instance in your design window.
The Cellview From Instance form appears.
3. Change the options on the form, if needed.
4. Click OK.
The system generates the specified cellview from the instance you selected. When youturn on Display Cellview, the system displays the cellview in a new window.
Editing Symbol Generation Options
The Symbol Generation Options form displays the property and attribute settings that thetext-to-symbol generator (TSG) uses to generate symbols. The software loads the defaultform settings from a template file, which you specify using the tsgTemplateTypeenvironment variable.
This section discusses the following tasks:
■ Adding, Changing, and Reordering Pin Names on page 265
■ Editing Pin Attributes on page 267
■ Loading and Saving a TSG Template File on page 271
June 2000 264 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
■ Editing Symbol Attributes on page 274
■ Editing Symbol Labels on page 275
■ Creating a New Label on page 278
■ Deleting Labels on page 280
■ Modifying Label Attributes on page 282
■ Editing Properties on page 285
■ Creating a New Property on page 286
■ Deleting Properties on page 288
■ Modifying Property Attributes on page 290
Adding, Changing, and Reordering Pin Names
To add, change, or reorder pin names, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
The Cellview From Cellview form appears.
2. Turn on Edit Options.
June 2000 265 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
June 2000 266 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
4. To space pins further apart, add one or more asterisk ( * ) in theLeft Pins, Right Pins, Top Pins, and Bottom Pins fields..
5. Click OK.
This setting results in the following:
Editing Pin Attributes
To edit the attributes of a pin, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
INPUTA
INPUTB
INPUTC
OUTPUTA
OUTPUTB
June 2000 267 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 268 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Select List from one of the Attributes cyclic fields.
The pin attributes form appears.
The banner title on the form indicates left, right, top, or bottom pin attributes.
5. Use the Direction cyclic fields to change the direction of the pins.
left pin attributes
June 2000 269 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
6. Use the Pin Graphic cyclic fields to change the graphic of the pin.
7. Click OK.
June 2000 270 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Loading and Saving a TSG Template File
The TSG template file contains the default property and attribute settings that appear on theSymbol Generation Options form. The software loads the TSG template file the first time youuse one of the Create Cellviewcommands to automatically generate a symbol. You use thetsgTemplateTypeenvironment variable to specify the TSG template file.
Use the Symbol Generation Options form to load a different TSG template file.
To load or save a TSG template file, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 271 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Load/Save.
June 2000 272 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Symbol Generation form expands to display the template data fields.
5. In the Load / Save Symbol Template Configurationsection, type the path to the TSG templatefile.
6. Click Load or Save.
The system initializes the Load / Save Symbol Template Configuration section of the formwith the values from the specified TSG file.
The software builds all subsequent symbols using the new values.
your_install_dir/tools/dfII/samples/symbolGen/
June 2000 273 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Editing Symbol Attributes
To edit symbol attributes, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 274 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Attributes.
The Symbol Generation Options form expands to display the symbol attributes options.
5. Edit the attributes.
6. Click OK.
Editing Symbol Labels
To edit symbol labels, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 275 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 276 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Labels.
June 2000 277 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Symbol Generation Options form expands to display the label options.
5. Edit the symbol labels.
6. Click OK.
Creating a New Label
To create a new label, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 278 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 279 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Labels.
The form expands to show data that can be edited.
5. In the Label cyclic field, choose new.
6. Choose the desired Label Choice and other options.
7. In the Name field, type the name of the new label.
8. In the Apply To field, specify which objects the label attaches to.
9. Click Add.
The new label name is added to the list of labels that will automatically be created duringsymbol generation.
Deleting Labels
To delete a symbol label from the Label cyclic field, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 280 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 281 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Labels.
The form expands.
5. In the Label cyclic field, choose the name of the label you want to delete.
6. Click Delete.
The label name no longer appears in the Label cyclic field.
Modifying Label Attributes
To modify label attributes, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 282 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 283 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Labels.
The form expands.
5. In the Label cyclic field, choose the name of the label you want to modify.
6. Make any desired changes to the various label display attributes or label location fields.
7. Click Modify.
The label is modified.
June 2000 284 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
Editing Properties
To modify edit properties, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 285 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Properties.
The form expands.
5. Edit any property.
6. Click OK.
Creating a New Property
To create a new property, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 286 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 287 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Properties.
The form expands to show data that can be edited.
5. In the Property cyclic field, choose new.
6. In the Name field, type the name of the new label.
7. In the Apply To field, specify which objects the label attaches to.
8. Click Add.
The new property name is added to the list of properties that are automatically createdduring symbol generation.
Deleting Properties
To delete properties, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 288 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 289 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Properties.
The form expands.
5. In the Properties cyclic field, choose the name of the property you want to delete.
6. Click Delete.
The property no longer appears in the Properties cyclic field.
Modifying Property Attributes
To modify property attributes, do the following:
1. Choose either Design – Create Cellview – From Cellviewor Design – Create Cellview – FromPin List.
June 2000 290 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
The Cellview From Cellview form appears.
2. Turn on Edit Options.
3. Click OK.
If the symbol you are creating already exists, you must replace it to get the SymbolGeneration Options form.
The Symbol Generation Options form appears.
June 2000 291 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
By default, the software initializes the form with information from the current cellview andthe Cellview From Cellview form.
4. Turn on Edit Properties.
The form expands.
5. In the Properties cyclic field, choose the property name you want to modify.
6. Make any desired changes to the various property display attributes or property locationfields.
7. Click Modify.
Specifying Symbol Generator Pin Sorting
Note: Pin sorting is valid only when you create a symbol from a schematic.
When the system creates symbols automatically, TSG sorts the pins either alphanumericallyby pin name (default) or geometrically according to the pin’s relative position in the sourceschematic view.
To specify how TSG sorts the pins, do the following:
1. Choose Design – Options – Editor.
The Editor Options form appears.
June 2000 292 Product Version 4.4.6
Virtuoso Schematic Composer User GuideAutomatically Creating Cellviews
2. In the Command Controls section of the form, set the Symbol Generator Pin Sorting optionto alphanumeric or geometric.
3. Click OK.
Automatic symbol generation now uses the specified pin sorting method.
You can change the default (alphanumeric to geometric) by editing the ssgSortPinsenvironment variable. The system uses this variable when you choose Design – Options– Save Defaults. It is also available as arguments to the schGetEnv and schSetEnvprocedural interface functions.
June 2000 293 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
7Editing Objects
This chapter discusses commands such as Copy, Move, Stretch, and Delete. The nextchapter discusses Edit Properties commands.
■ Using Direct Manipulation on page 295
❑ Direct Manipulation Operations on page 296
❑ Turning Off Direct Manipulation on page 297
■ Undoing and Redoing an Edit on page 297
❑ Changing the Undo Limit on page 297
■ Stretching on page 298
❑ Stretching with the Schematic Editor on page 299
❑ Stretching with the Symbol Editor on page 302
❑ Stretching with Direct Manipulation on page 304
❑ Stretching with Bindkeys on page 305
■ Copying on page 305
❑ Copying Single Objects on page 307
❑ Copying Arrays of Objects on page 308
❑ Copying Across Cellviews on page 309
❑ Copying with Direct Manipulation on page 310
❑ Copying with Bindkeys on page 311
■ Moving on page 311
❑ Moving Objects on page 311
❑ Moving with Direct Manipulation on page 312
June 2000 294 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
❑ Moving with Bindkeys on page 313
■ Deleting on page 313
❑ Deleting Preselected Objects on page 314
❑ Deleting Postselected Objects on page 314
❑ Deleting Sheet Borders on page 315
■ Rotating on page 315
❑ Rotating Preselected Objects on page 315
❑ Rotating Postselected Objects on page 316
❑ Rotating with Direct Manipulation on page 318
❑ Rotating with Bindkeys on page 318
■ Discarding Edits on page 318
■ Alternating Symbol Views on page 319
❑ Changing the View of a Preselected Object on page 319
❑ Changing the View of a Postselected Object on page 319
■ Toggling Objects on page 319
❑ Toggling Pin Direction Options on page 319
❑ Toggling Wire Draw Mode Options on page 320
❑ Toggling Instance Symbol View Options on page 320
Using Direct Manipulation
Direction manipulation is one of the quickest ways to edit an object. You use the mouse, ratherthan commands, to edit.
Note: When you use direct manipulation, you must place the pointer over an object or shape.
To directly manipulate an object, do the following:
1. Place the pointer over an object or shape.
2. Hold down the mouse button and the appropriate key to copy, move, stretch, or createan object.
June 2000 295 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
3. Drag the mouse.
You can use direct manipulation to
■ Copy an object or shape
■ Move an object or shape
■ Stretch an object or shape
■ Create a wire
Direct Manipulation Operations
The following table lists operations you can perform using direct manipulation.
Object Type Drag Shift-Drag Control-Drag
wires stretch copy move
wire vertex partial stretch add wire
instances stretch copy move
schematic pins stretch add wire move
schematic labels move copy move
note figures move copy move
edge of note figure stretch edge stretch edge
vertex of note figure stretch vertex stretch vertex
instance pins add wire add wire
instance labels move move
symbol pins move add line
symbol/note shapes move copy
symbol shape edge stretch edge stretch edge
symbol shape vertex stretch vertex stretch vertex
symbol/note labels move copy
June 2000 296 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Turning Off Direct Manipulation
To turn off direct manipulation, do the following:
1. Open the schBindKeys.il file located in theyour_install_dir /tools/dfII/samples/local directory.
2. Comment out schDirectEdit(1) , schDirectEdit(2) , andschDirectEdit(3) .
These three bindkeys are keyed to the three mouse buttons for direct manipulation.
3. Load the current session or add the Load command to the .cdsinit file for futuresessions.
Undoing and Redoing an Edit
To undo an edit, do the following:
➤ Choose Edit – Undo.
This command reverses the action of the previous edit command. You can undo, one ata time, the last 10 edit commands.
You can set the undo limit between 0 and 10 using theOptions – User Preferences command from the Command Interpreter Window (CIW).
Note: Commands that cause data to be saved to disk cannot be undone.
To cancel the previous undo commands, do the following:
➤ Choose Edit – Redo.
Changing the Undo Limit
To change the default undo limit of 1, do the following:
1. From the CIW, choose Options – User Preferences.
June 2000 297 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
The User Preferences form appears.
2. Move the Undo Limit slider to the limit you want.
3. Click OK.
Stretching
Use the Stretchcommand to reposition the placement of objects in your design without losingconnectivity between wires and pins.
■ Stretching works most easily when infix mode is turned on.
■ Direct manipulation is the easiest and fastest way to stretch objects or shapes.
■ The Stretch command does not stretch objects from one cellview to another.
■ Use extended selection to select an object (such as an instance, pin, or block) andassociated wires so you can stretch them all at once.
The Stretch command operates differently in the schematic editor and the symbol editor.
In the schematic editor, Stretch
■ Stretches selected objects and maintains connectivity by rerouting wires whennecessary
The Stretch command supports partially selected wire vertexes. The remainingnonselected vertexes are anchored in place.
June 2000 298 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
■ Moves wires while maintaining connectivity with the object attached to the wire
■ Moves a pin while maintaining connectivity with the wire that is attached to the pin
In the symbol editor, Stretch
■ Stretches an entire shape
Shapes move independently of one another. They do not need to maintain connectivity.
■ Stretches a partial shape (an edge or a vertex of a shape or an endpoint of a line)
Stretching with the Schematic Editor
To stretch an object using the schematic editor, do the following:
1. Choose Edit – Stretch.
2. Select the object you want to stretch.
The point used to select the object becomes the reference point.
3. Point at a reference point.
4. Move the mouse, then click a destination for the stretch.
5. To change Stretch command options, press F3.
The Stretch form appears.
June 2000 299 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Note: If you select objects other than instances, wires, or schematic pins, they move insteadof stretch.
The following sections describe using the Stretch command on various objects.
Stretching an Instance
The following diagram shows how to stretch an instance using the schematic editor defaultsettings.
To reroute wire segments, do the following:
➤ On the Stretch form, turn on Reroute Wire Segments Connected To Instance.
A Y
IO
inv
INPUTA OUTPUTABefore the stretch,showing a selectedinstance
A YIO
inv
INPUTA OUTPUTA
During the stretch process
A YIO
inv
INPUTA OUTPUTA
After stretching aninstance
June 2000 300 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
The following diagram illustrates stretching an instance named I1 .
When you set Reroute Wire Segments Connected To Instanceto off, the rubberband linesbegin at the wire (a).
When you set Reroute Wire Segments Connected To Instanceto on, the rubberband linesbegin at the pin (b).
I1
(b)
(a)
June 2000 301 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Stretching a Wire
The following diagram shows how to stretch a wire using the schematic editor default settings.
You can stretch a wire in any direction. The editor reroutes the wire and maintainsconnectivity. When you stretch a wire, all wire segments that are connected to another object(such as a pin) stretch.
Stretching with the Symbol Editor
To stretch an edge or a vertex of a shape or an endpoint of a line in the symbol editor, do thefollowing:
1. Choose Edit – Stretch.
2. Click once on an edge or a vertex of a shape or an endpoint of a line.
A Y
IO
inv
INPUTB
A Y
IO
inv
INPUTA OUTPUTA
A Y
IO
inv
A Y
IO
inv
INPUTA OUTPUTA
After the stretch process
During the stretch process
June 2000 302 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
3. Move the pointer to stretch the part you selected and point to a destination for the stretch.
4. To change Stretch command options, press F3.
The Stretch form in the symbol editor opens.
Note: If you select shapes other than lines, rectangles, polygons, circles, ellipses, or arcs,they move instead of stretch. Stretching is the equivalent of moving for pins, labels, and notes.Partially selected shapes stretch instead of move.
The following sections describe using the Stretch command on various objects.
Stretch
June 2000 303 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Stretching Edges, Vertexes, or Endpoints
The following diagram shows how to stretch partially selected objects in the symbol editor.
Stretching with Direct Manipulation
Direct manipulation is one of the quickest ways to edit an object.
To stretch an object using direct manipulation, do the following:
1. Click and hold the left mouse button over an object.
✘
✘
✘
AfterBefore
The edge of a shape
The vertex of a shape
The endpoint of a line
June 2000 304 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
2. Drag and release the mouse button to complete the stretch.
Stretching with Bindkeys
To stretch an object using bindkeys, do the following:
1. Select the object to stretch.
2. Press m.
3. Click a destination for the stretch.
Copying
Use the Copy command to clone an object in your design.
The Copy command
■ Copies objects in the same cellview or another cellview
■ Copies arrays of objects
A YIO
inv
INPUT OUTPUT
A YIO
inv
INPUT OUTPUT
Before stretching aninstance
During the stretch process
After stretching an instanceA Y
IO
inv
INPUT OUTPUT
June 2000 305 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
■ Rotates an object or turns it upside down or sideways
■ Works best when infix mode is turned on
■ Works differently when pre- and postselecting an object before copying it
■ Works easiest and fastest using direct manipulation
June 2000 306 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Copying Single Objects
To copy an object, do the following:
1. Choose Edit – Copy.
2. Select the object you want to copy.
3. Click a destination for the copy.
4. To change Copy command options, press F3.
The Copy form appears.
June 2000 307 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Copying Arrays of Objects
To copy an array, do the following:
1. Choose Edit – Copy.
2. Select the object you want to copy as an array.
3. Press F3.
The Copy form appears.
4. Fill in the number of rows and columns for your array.
5. Click on multiple points to create the array.
June 2000 308 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Copying Across Cellviews
You can copy objects from one cellview to another. Copied objects remain attached to thecursor when you move the cursor into another window containing a schematic or symbolcellview. You can copy data from a read-only schematic to a schematic opened for edit.
To copy an object from one cellview to another, do the following:
1. Select the object to copy.
If Infix is off, you are prompted to first click a reference point for the copy.
2. Choose Edit – Copy.
3. Move the cursor to the destination cellview.
4. Click a location in the cellview for the copy.
June 2000 309 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Copying with Direct Manipulation
Direct manipulation is one of the quickest ways to copy an object.
To copy an object using direct manipulation, do the following:
1. Place the pointer over an object.
2. Press the Shift key, and click and drag the mouse.
When you release the mouse button, the original object is copied and placed.
A Y
IO
inv
INPUT OUTPUT
Before copying
A Y
I4
inv
INPUT OUTPUTA Y
IO
inv
INPUT OUTPUT
After copying
June 2000 310 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Copying with Bindkeys
To copy an object using bindkeys, do the following:
1. Select the object to copy.
2. Press c .
3. Click a destination for the copy.
Moving
Use the Movecommand to reposition objects in your design. Unlike the Stretchcommand, theMove command does not maintain connectivity of the selected objects. The Move command
■ Moves an object without maintaining connectivity
■ Rotates an object or turns it upside down or sideways
■ Works best when infix mode is turned on
■ Works differently when pre- and postselecting an object before moving it
■ Works easiest and fastest using direct manipulation
■ Moves selected objects between different schematic cellviews
You cannot move partially selected objects to a different cellview.
■ When you work with wires, note shapes, or device shapes (rectangles, polygons, circles,ellipses, and arcs), you can select a vertex, set of vertexes, or edges; when you workwith partially selected objects, only the selected vertexes move while the other vertexesor edges are anchored in place.
Moving Objects
To move an object, do the following:
1. Choose Edit – Move.
2. Select an object you want to move.
June 2000 311 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
3. Click a destination for the object.
4. To change Move command options, press F3.
The Move form appears.
After a move, all connectivity breaks between the selected object and the objects to which itwas connected.
If you want to maintain connectivity, use the Stretch command.
Moving with Direct Manipulation
Direct manipulation is one of the quickest ways to move an object.
To move an object using direct manipulation, do the following:
A Y
IO
inv
INPUT OUTPUTBefore moving
A Y
IO
inv
INPUT OUTPUT
After moving
June 2000 312 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
1. Place the pointer over an object.
2. Press the Control key, and click and drag the mouse.
You are now in the Movecommand. When you release the mouse button, the object is placed.
Moving with Bindkeys
To move an object using bindkeys, do the following:
1. Select the object to move.
2. Press Shift-m .
3. Click a destination for the move.
Deleting
When you use the Delete command, keep in mind the following:
■ You can select an object before you use the Delete command(preselection). When you preselect objects, the Deletecommand ends after the selectedobjects are deleted.
■ You can select an object after you use the Delete command (postselection). When youpostselect objects, press the Esc key to end the Delete command unless you want todelete another object. To be sure the Delete command is no longer active, check theprompt line at the bottom of the window in which the cellview is displayed.
A Y
IO
inv
INPUT OUTPUTBefore moving
A Y
IO
inv
INPUT OUTPUT
After moving
June 2000 313 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
■ You can recover an object that you deleted by mistake by choosing Edit – Undo.
■ You can delete an instance and the wires that connect to it by using extended selectionwith the Delete command.
You cannot use the Delete command to delete
■ Sheet borders
To remove sheet borders, use the Sheet – Edit Sizecommand.
■ Selected visible properties
To delete properties, use the Edit – Properties command.
Deleting Preselected Objects
If you prefer to select an object before you delete it, do the following:
1. Click on objects you want to delete.
2. Choose Edit – Delete.
The system removes the objects from your design.
Note: The Delete command always ends after it operates onpreselected objects.
You can also delete objects by pressing the Delete key.
Deleting Postselected Objects
If you prefer to use the Deletecommand first and then select the object you want to delete, dothe following:
1. Choose Edit – Delete.
2. Click on objects you want to delete.
Note: The Delete command remains active until you explicitly cancel it by pressing theEsc key or by starting another command.
You can also delete objects by pressing the Delete key.
June 2000 314 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Deleting Sheet Borders
To delete the sheet border from a schematic sheet, do the following:
1. Choose Sheet – Edit Size.
The Change Sheet Border Size form appears.
2. Set the Border Type to none.
3. Click OK.
Rotating
The Edit – Rotate command rotates objects counterclockwise, sideways, or upside down.
Rotating Preselected Objects
To rotate a preselected object, do the following:
1. Click on the object you want to rotate.
Change Sheet Border Size
Rotate turns objects 90 degrees.
Sideways flips objects from side toside.
Upside Down flips objects from topto bottom.
AB
A
A
A
B
B
B
AB
BA
AB B
A
June 2000 315 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
2. Choose Edit – Rotate.
3. Point at a reference point in the design and click.
The selected object rotates and the command terminates.
If you want to change how the software rotates objects, do the following:
1. Choose Edit – Rotate.
2. Press F3.
The Rotate form appears.
3. Change the option setting.
Rotating Postselected Objects
To rotate a postselected object, do the following:
1. Choose Edit – Rotate.
2. Click on an object.
If you want to change how the software rotates objects, do the following:
1. Choose Edit – Rotate.
2. Press the F3 key.
June 2000 316 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
The Rotate form appears.
3. Change the option setting.
June 2000 317 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Rotating with Direct Manipulation
To rotate objects while in the Move, Copy, Stretch, Add – Instance, Add – Pin, Add – Wire, Add –Note Text, or Add – Labelcommand, do the following:
➤ Click the right mouse button.
Rotating with Bindkeys
To rotate or mirror (turn upside down or sideways) an object while in the Move, Copy, Stretch,Add – Instance, Add – Pin, Add – Wire, Add – Note Text, or Add – Labelcommand, do the following:
1. Select an object.
2. Press one of the following:
r , to rotate 90 degrees counterclockwise
Shift-r , to rotate sideways
Control-r , to flip upside down
Discarding Edits
To discard edits you made since the last save, do the following:
1. Choose Design – Discard Edits.
The following dialog box appears.
2. Click Yesor No.
Discard Edits
June 2000 318 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
If you click Yes, the edits are discarded and the last version saved appears. If you clickNo, the edits are retained.
Alternating Symbol Views
When you create a schematic, you might find it convenient for a particular library cell to havemore than one symbol representation. These different symbols might represent deMorganequivalents or adhere to different drafting standards.
Use the Edit – Alternate View command to switch between the different symbolrepresentations.
Changing the View of a Preselected Object
To change symbol views for a preselected object, do the following:
➤ Choose Edit – Alternate View.
Changing the View of a Postselected Object
To view symbol views for a postselected object, do the following:
1. Choose Edit – Alternate View.
2. Click an object in the schematic.
Continue clicking on the object to view all the alternative views. After displaying the lastview, the command redisplays the first view.
Toggling Objects
Use bindkeys to toggle an object while in the Add – Pinor Add – Wire command.
Toggling Pin Direction Options
To toggle the direction of a pin (for example, from input to inputOutput ), do the following:
1. Choose Add – Pin.
June 2000 319 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
2. Press the Shift key and click right to cycle through the options.
Toggling Wire Draw Mode Options
When you add a wire to your design, the editor draws the wire segment using a draw modethat you specify on the Add Wire form. Use your mouse to cycle through the possible drawmodes (shown below) to specify another mode.
To toggle the draw mode, do the following:
1. Choose Add – Wire.
2. Use the right-mouse button to toggle through the draw modes.
The wire will change form as you change the draw mode.
3. Click to indicate the first data point of the wire.
4. Move the cursor to the second point of the wire and click right.
Toggling Instance Symbol View Options
To toggle instance symbol views (for example, from a nand2 symbol view to a nand2symbolNeg view), do the following:
1. Choose Add – Instance.
2. Press the Shift key and click right to cycle through the options.
June 2000 320 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Editing the Display Configuration of a Component
This section describes the following topics:
■ Changing the Display Configuration of Instance IL Labels on page 321
■ Saving the Current Label Display File on page 323
■ Loading the Current Label Display File on page 323
■ Attaching the Label Display File to the Library on page 325
■ Detaching the Label Display File from the Library on page 325
■ Setting the Simulation Data Directory on page 327
Changing the Display Configuration of Instance IL Labels
You can edit the display configuration of instance IL labels (cdsName, cdsTerm , andcdsParam ) that you created using the Add – Label command from the symbol editor or fromthe instances supplied with the Affirma™ analog circuit designer.
IL labels are evaluated when an instance of a symbol containing the IL label is instantiated ina schematic.
To change the display configuration of instance IL labels (cdsName, cdsTerm , andcdsParam ), do the following:
1. Choose Edit – Component Display.
2. Point to an instance label in your design.
June 2000 321 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
The system checks the design for errors. The Edit Component Display form appears andexpands giving you options for the label you selected.
3. In the Select Label field, click the type of label you want to edit.
The Edit Component Display form expands, giving you options for the label you selected.
4. In the Apply Tofield, click library, cell, and/or instance, to which to apply the label displayconfiguration.
5. Click OK.
June 2000 322 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
For more details about annotating the schematic with label information, refer to the sectionon annotating schematics in the Affirma Analog Circuit Design Environment User Guide.
Saving the Current Label Display File
To save the current label display, do the following:
1. From the Edit Component Display form, click Save.
The Save Label Display form appears.
2. If applicable, change the name of the file in which to save your label display configuration.
3. Click OK.
Loading the Current Label Display File
To load the current state of the label display, do the following:
June 2000 323 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
1. From the Edit Component Display form, click Load.
The Load Label Display form appears.
2. If applicable, change the name of the file from which to load your previously saved labeldisplay configuration.
3. Click OK.
June 2000 324 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Attaching the Label Display File to the Library
You can save the current label display configuration to a temporary file and attach the file tothe library. You can then load the file automatically when you open the library.
To save the current label display configuration, do the following:
1. From the Edit Component Display form, click Attach.
2. Click OK.
The system saves the current label display configuration to a temporary file and attachesthe file to the library so that it loads automatically when you open the library.
The CIW displays a message saying that the system attached the current label displayto the library.
Detaching the Label Display File from the Library
To remove the attached label display configuration from the library, do the following:
June 2000 325 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
1. From the Edit Component Display form, click Detach.
2. Click OK.
The system removes the attached label display configuration from the library.
The CIW displays a message saying that the system detached the current label displayfile from the library or that there was no label display file to remove from the library.
June 2000 326 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Objects
Setting the Simulation Data Directory
To set the simulation data directory, do the following:
1. From the Edit Component Display form, click Set Simulation Data Directory.
The Set Label Display Simulation Data Directory form appears.
2. Type the name of the simulation data directory.
3. Click OK.
June 2000 327 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
8Editing Properties
This chapter describes how to find and edit object properties.
■ Searching for Objects That Have a Specific Property on page 330
❑ Search String Wildcards on page 332
■ Replacing Properties on page 332
❑ Replacing String-Tagged Characters on page 334
❑ Selecting Objects Automatically by Type on page 339
❑ Selecting Objects by Property on page 341
❑ Adding a Property Name to the Search List on page 343
■ Selecting Objects by Filtering on page 344
■ Object and Cellview Property Types and Values on page 345
■ Editing Object Properties on page 347
❑ Applying Edits to Objects and Displaying Object Types on page 348
❑ Adding Object Properties on page 349
❑ Deleting Object Properties on page 350
❑ Modifying Object Properties on page 350
■ Editing Specific Object Properties on page 352
❑ Editing Instance and Block Properties on page 353
❑ Editing Pin Properties on page 355
❑ Designating the Order of Pins on page 355
❑ Copying a Pin Order from Another Cellview on page 356
❑ Resolving Pin Order Mismatch on page 357
June 2000 328 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
❑ Verifying Pin Order on page 357
❑ Editing Pin Name Properties on page 358
❑ Editing Wire Properties on page 359
❑ Editing Wire Name Properties on page 360
❑ Editing Instance Pin Properties on an Instance of a Block on page 361
❑ Editing Label Properties on page 362
❑ Resetting Invisible Labels on page 363
❑ Editing netSet Properties on page 364
❑ Editing Note Text Properties on page 364
❑ Editing Note Shape Properties on page 367
❑ Editing Symbol Shape Properties on page 369
❑ Editing Symbol Pin Properties on page 370
❑ Editing Symbol Label Properties on page 371
❑ Editing Symbol Selection Box Properties on page 372
❑ Editing User-Defined Object Properties on page 373
■ Editing Cellview Properties on page 374
❑ Adding Cellview Properties on page 375
❑ Deleting Cellview Properties on page 377
❑ Modifying Cellview Properties on page 377
❑ Editing VHDL Properties on page 378
❑ Adding VHDL Properties on page 380
❑ Deleting VHDL Properties on page 381
❑ Modifying VHDL Properties on page 382
■ Setting the Parameter Filter on page 382
June 2000 329 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Searching for Objects That Have a Specific Property
Use the Edit – Search – Findcommand to find objects that have a property that matches yourspecific search criteria.
To find objects that have a specific property, do the following:
1. Choose Edit – Search – Find.
The Find form appears. The title bar reflects the editor name.
2. In the Search For cyclic field, choose the specific property to search for.
When you set the Search Forcyclic field to other, the Add New Property to Find/Replaceform appears. When you click OK, the new name appears in the cyclic field on the Findform.
3. Specify the value of the property in the text entry field on the Find form.
June 2000 330 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The asterisk ( * ) matches zero or more occurrences of any characters.
4. Click Apply.
Whena match exists,
❑ A message reports the number of matching properties.
❑ All the properties that match the criteria specified on the Find form are added to alist. To display the list of matches, click the List All button.
❑ The software highlights the first matching object
If no match exists, a dialog box confirms no objects were found.
5. Click Next.
In the editor window, the software highlights the next matching object.
6. To end the command, click Cancel or close the form window.
June 2000 331 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Search String Wildcards
Wildcards help you replace properties easily using partial string substitution. You can use oneor more wildcards or tagged fields in the search and replace fields on the Replace form.
The system counts each occurrence of an “ * ”, “ . ” or “[c..] ” as one single wildcard, exceptwhen the “ . ” and “ * ” appear together, in that order. In this case, the system counts the twotogether as one wildcard only.
Replacing Properties
Use the Edit – Search – Replacecommand to find objects that have a property that matches thesearch criteria you specify on the Replace form. You can then replace the property or thevalue with another property or value, which you also specify on the Replace form.
Note: You must have write access to the cellview that contains the property you search forand the cellview that contains the replacement property.
To find and replace properties, do the following:
1. Choose Edit – Search – Replace.
Search StringWildcards Description
* (asterisk) Matches zero or more occurrences of any characters
. (period) Matches any character
[c..] Matches one of the characters in the set
\ (backslash) Causes the character following it to be treated normally, if it is { or* or \ . Use \\ for a normal \ .Referred to as the escape character.
June 2000 332 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Replace form appears. The title bar reflects the editor name.
2. In the Search For cyclic field, chose the specific property to search for.
When you set the Search Forcyclic field to other, the Add New Property to Find/Replaceform appears. When you click OK, the new name appears in the cyclic field on the Findform.
3. Check the object filter to make sure the property is selectable.
4. Click Apply.
If a match exists, a message reports the number of matching properties. If no matchexists, a dialog box confirms no objects were found.
5. On the Replace form, do one of the following:
❑ Click ReplaceAllto replace all property names and values in the list with the newproperty names and property values.
June 2000 333 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
❑ Use the Replaceand Skip buttons to view individual matches and apply thereplacement property name and value as desired.
Replacing String-Tagged Characters
In the Virtuoso® schematic composer, you can use partial strings and wildcards in search-and-replace statements. The table below and the following examples describe the process.
Example 1
If you have instances I0 , I1 , I2 , . . . . I10 , and you want to replace them with M1, M2, . . . .M10, enter the following:
Search: I*
Replace: M* or M{1}
Example 2
You can specify the tagged fields in any order in the replace string. If you want to swap thestart and end values for all buses with prefix ABC, enter the following:
Search: ABC<*:*>
ReplaceString-TaggedCharacters
Description
{n} Interprets n as an integer from 1 to 9. Tagged fields correspond to “ * ”or “ . ” or “[c..] ” or “ .* ” in the search string. The first ninewildcards in the search pattern are tagged. If a tagged field that is usedin the replace string does not exist, it is replaced by a NULL string.
*nth “*” Interpreted as {n} , n ranging from 1 to 9. If more than nine wildcardsexist in the search string and more than nine * ’s in the replace string,the system substitutes the first nine * ’s in the replace string with thecorresponding nine tagged fields from the search string. The remaining* ’s in the replace string are substituted with a NULL string.
\ (backslash) Causes the character following it to be treated normally, if it is { or * or\ . Use \\ for a normal \ . Referred to as the escape character.
June 2000 334 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Replace: ABC<{2}:{1}>
The {2} tag in the replace string corresponds to the characters represented by the secondasterisk in the search string, while {1} corresponds to the characters represented by the firstasterisk in the search string.
Example 3
In all buses with prefix ABC, keep the start value the same but change the end value to 20.
Search: ABC<*:*>
Replace: ABC<{1}:20> or ABC<*:20>
The {1} tag or * in the replace string corresponds to the characters represented by the firstasterisk in the search string.
Example 4
Search for CLK, CLK_, CLK_IN and replace with CLOCK, CLOCK_, CLOCK_IN.
Search: CLK*
Replace: CLOCK{1} or CLOCK*
The {1} tag or * in the replace string corresponds to the characters represented by theasterisk in the search string.
Example 5
You can use any combination of wildcards in the search string. To search for net namesA1B1C1, A2B2C2, and so forth, and replace them with P1Q1R1, P2Q2R2, and so forth, youcan enter any one of the following:
Search: A[0-9]B[0-9]C[0-9] orA.B.C. orA*B*C* orA[0-9]B.C. orA.B[0-9]C[0-9] orA*B.C. orA.B*C*
Replace: P{1}Q{2}R{3} orP*Q*R*
June 2000 335 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Example 6
A tagged field can appear any number of times in the replace string. If you want to replaceAfooB and AblahB by PfoofooQ and blahblahQ respectively, enter the following:
Search: A*B
Replace: P{1}{1}Q
Example 7
If the wildcards appear together in a sequence in the search string, each corresponds to adifferent tag except when a “ . ” and “ * ” appear together, in that order. In this case, thewildcards are treated together as one tag.
If you want to search for a string AxyzB and replace it with CxyzD, enter the following:
Search: A.[x-z]*B
Replace: C*D
The result is CxDand not CxyzD because the “ * ” in the replace string is interpreted as thefirst tagged field, which is the wildcard “ . ”. To achieve the desired result, you can use C***Dor C{1}{2}{3} as the replace string, or use A*B as the search string.
However, suppose you enter the following:
Search: A.*[x-z]B
Replace: C*D
The result is CxyD, because the “ * ” in the replace string is interpreted as the first taggedfield in the search string, which is the sequence “ .* ”.
To achieve the desired result, enter the following:
Search: A*B
Replace: C**D or C{1}{2}
Example 8
The character \ can be used to escape wildcard characters in the search-and-replace strings.If you want to replace A.B by A*B, enter the following:
Search: A*B or A.B
June 2000 336 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Replace: A\*B
The \ before “ * ” in the replace string indicates that the asterisk be treated as a literal andnot as a wildcard.
If you had an array A[1] , A[2] , A[3] … A[n] and you wanted to replace all square bracketsby curly braces, enter the following:
Search: A\[*] or A\[[0-9]]
Replace: A\{{1}} or A\{*}
The \ before the first { in the replace string means treat the { as a literal and not as a taggedfield.
If you want to replace ABC by A\B\C , enter the following:
Search: A[A-Z][A-Z]
Replace: A\\*\\* or A\\{1}\\{2}
Use \\ for each \ that you want to be treated as a normal character. The asterisk followingthe second backslash in the replace pattern is treated as a wildcard. If the replace string isA\\\*\\\* instead, then the result is A\*\* .
Example 9
If the search string does not have a wildcard character and the replace string does, asubstitution is not achieved. Suppose you had
Search: A1
Replace: P* or P{1}
In this case, the “ * ” and {1} in the replace string are treated as normal characters and notas wildcards.
Example 10
If you had more than nine wildcards in the search-and-replace strings, only the first nine inthe replace string can be substituted correctly. The rest are substituted with empty strings.Suppose you want to search for a string A1B2C3D4E5F6G7H8I9JKL byP1Q2R3S4T5U6V7W8X9YKZ:
Search: A*B*C*D*E*F*G*H*I*J*L
June 2000 337 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Replace: P*Q*R*S*T*U*V*W*X*Y*Z
The result is P1Q2R3S4T5U6V7W8X9YZ. The last “ * ” in the replace string gets substitutedby an empty string and not the substring corresponding to the last“ * ” in the search string.
June 2000 338 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Selecting Objects Automatically by Type
You can set the software to select all the objects of one or more object types automatically.For example, you might want to select all the pins in your design.
To select all the objects of one or more object types, do the following:
1. Choose Edit – Select – All.
If you are in the schematic editor, the Schematic Select All form appears.
June 2000 339 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
If you are in the symbol editor, the Symbol Select All form appears.
2. On the form, specify the object types you want to select.
The option none turns off all object types.
3. Click OK.
The software highlights the specified objects in the design window.
Note: This command does not modify the selection filter settings that you set using Options– Select – Filter.
Symbol Select All
June 2000 340 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Selecting Objects by Property
You can limit the selection set by specifying that the software select only those objects withcertain property values.
To limit a selection set to object types with certain property values, do the following:
1. Choose Edit – Select – By Property.
If you are in the schematic editor, the Schematic Select By Property form appears.
If you are in the symbol editor, the Symbol Select By Property form appears.
2. In the Find fields, specify the property name, relational operator, and property value.
You usually look for objects that have a particular property value. You can also use therelational operator cyclic field to control which objects are selected.
3. Click Show Object Filter to make sure the object type is selectable.
June 2000 341 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
4. Click OK.
The software highlights the specified objects in the design window.
June 2000 342 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Adding a Property Name to the Search List
In either the schematic or the symbol editor, you can add a property name to the search listusing the following procedure.
1. Choose Edit – Select – By Property.
The Schematic or Symbol Select By Property form appears.
2. In the Find cyclic field, choose other.
The Add New Property for Search form appears.
3. In the Property Namefield, type the property name that you want to add to the search list.
4. Click OK.
The new property name appears in the Find cyclic field on the Schematic or SymbolSelect By Property form.
Add New Property for Search
June 2000 343 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Selecting Objects by Filtering
The Selection Filter form lets you specify which object types you can select manually forediting. This is especially useful when you have many object types, or overlapping objecttypes, in a small area of your design.
For example, if you want to work exclusively with pins, you can turn on selection capabilitiesfor pins only. As a result, if you click on another type of object that is near a pin, the otherobject is not selected.
To specify the objects you want to filter for selection, do the following:
1. Choose Options – Select Filter.
If you are in the symbol editor, the Symbol Selection Filter form appears.
June 2000 344 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
If you are in the schematic editor, the Schematic Selection Filter form appears.
2. In the Symbol (or Schematic) Objects section, specify the object types you want to selectfor editing.
The option none turns off all object types.
3. Click OK.
Object and Cellview Property Types and Values
The following table lists and describes each property type that appears in the Type cyclic fieldon the Add Property, Delete Property, or Modify Property subform.
Property Type Description
int Integer
float Floating-point number, such as 5.32e3
string Character string
boolean TRUE, true, t, yes, FALSE, false, nil, or no
ILExpr SKILL expression
June 2000 345 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Object and cellview property values must correspond to the property type shown in the Typecyclic field; for example,
■ If you use an integer type for a rise time property, you can type 10 for 10 nanoseconds.
■ If you select int or float for the property type, you can type a minimum and maximumvalue to define a range.
■ The minimum and maximum values must be valid for the int or float type. The value canbe 0 or any positive or negative number. You can also specify infinity (no limit over 0), -infinity (no limit under 0), or leave the value blank to reflect no limit on the value.
■ If you select string for the property type, you can specify a list of valid strings separatedby spaces.
■ The individual word specified represents the only possible values for this property. If theChoice field is left blank, any string is valid.
■ If you select time for the property type, use the following format:
mmm dd hh:mm:ss yyyy
where
mmm is the month, such as Jan
dd is the day of the month, from 01 to 31
hh is the hour from 00 to 23
mm is the number of minutes from 00 to 59
ss is the number of seconds from 00 to 59
yyyy is the year, such as 2000
For example, to set the valid time for July 26, 2000, 7:23 a.m., type
Jul 26 07:23:00 2000
ILList SKILL list
NLPExpr Expression evaluated by the netlister substitution language
fileName Name of a file
time Time and date
hierProp No value
Property Type Description
June 2000 346 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Object Properties
Properties describe specific characteristics of a design object, such as values of wires andpins. You can add, delete, or modify properties.
This section provides information about the following:
■ Applying Edits to Objects and Displaying Object Types on page 348
■ Adding Object Properties on page 349
■ Deleting Object Properties on page 350
■ Modifying Object Properties on page 350
June 2000 347 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Applying Edits to Objects and Displaying Object Types
To change properties of specific objects, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Set the Apply To options.
The Apply Tooption consists of up to three cyclic fields that you use to specify the groupof objects whose properties you want to edit.
A current object exists when you select multiple objects in a selected set. The currentobject is highlighted in a color different from the selection highlight.
When you configure the Apply To cyclic fields to apply changes to multiple objects, thesystem highlights all affected objects (other than the current object) in a different color.
3. To display the types of properties and attributes that you can edit, set the Show options.
The Show options let you view and edit properties:
❑ Select system to display the Cadence® properties
❑ Select user to display the properties that you create
❑ Select CDF to display predefined properties in Component Description Format(CDF)
4. Select the object in your design to view its properties.
The Edit Object Properties form expands.
June 2000 348 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Adding Object Properties
To add properties to an object, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an object in your design to which you want to add a property.
3. In the Edit Object Properties form, click Add.
The Add Property form appears.
4. Type the name of the property you want to add and the value of the property.
5. Click OK to add the properties to the Edit Object Properties form.
6. On the Edit Object Properties form, click OK to add the properties to the database object.
June 2000 349 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Deleting Object Properties
To delete object properties, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an object in your design that has a property you want to delete.
3. In the Edit Object Properties form, click Delete.
The Delete Property form appears.
4. From the list box, select the property that you want to delete.
You can press Shift and click to select multiple properties.
5. Click OK to delete the properties from the Edit Object Properties form.
6. Click OK on the Edit Object Properties form to delete the properties from the databaseobject.
Modifying Object Properties
To modify object properties, do the following:
June 2000 350 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an object in your design that has a property you want to modify.
3. In the Edit Object Properties form, click Modify.
The Modify Property form appears.
4. From the list box, select the property that you want to modify.
5. On the Modify Property form, click OK to modify the properties on the Edit ObjectProperties form.
6. On the Edit Object Properties form, click OK to modify the properties on the databaseobject.
June 2000 351 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Specific Object Properties
Before you can edit object properties, you must be in edit mode. You can edit objectproperties that describe the following objects:
You can also edit
Caution
To avoid confusion when text, labels, or names actually containunderscore characters, Cadence does not recommend that you enablethe Overbar display option. It is provided only for backward compatibilitywith prior releases.
Instances and blocks Note text
Pins Note shapes
Pin names Symbol shapes
Wires Symbol pins
Wire names Symbol labels
Instance pins Symbol selection box
Labels Net expressions
System properties Cellview properties
User-defined properties VHDL properties
CDF properties Analog Artist Simulator properties
June 2000 352 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Instance and Block Properties
To edit instance and block properties and their parameters and values, do the following:
1. Click an instance or block in your design that has a property you want to edit.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
If you clicked on an instance in your design,
❑ The Magnification and Origin fields appear when you enable the Show system field
❑ The Display cyclic field controls whether the value of a property appears in yourschematic
If you clicked on a block in your design,
❑ The Magnification, Origin, and FreezePinCreate fields appear when you enable theShow system field
Edit Object Properties
June 2000 353 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
To automatically add a pin when you add a wire to a block, turn onFreezePinCreate.
You can change the direction and name of a block pin when you enable the Showsystem button.
3. Click OK.
June 2000 354 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Pin Properties
To edit pin properties and their parameters and values, do the following:
1. Click a pin in your design that has a property you want to edit.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the Direction or Usage cyclic values of the pin.
4. Click OK.
Designating the Order of Pins
A pin order property is often required for netlisting. You can update or swap the pin ordereither manually or by copying.
Note: CDLOUT, Verilog-XL Integration, and VHDL Integration support the portOrderproperty.
To manually redefine the logical pin ordering for netlisting, do the following:
1. Choose Edit – Properties – Pin Order.
Edit Object Properties
June 2000 355 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Edit Pin Order form appears.
2. Select a pin name by clicking on it in the list box.
3. Click one of the move buttons to move the selected pin name up or down in the list
4. Click OK.
Copying a Pin Order from Another Cellview
To copy a pin order from another cellview, do the following:
1. Choose Edit – Properties – Pin Order.
The Edit Pin Order form appears.
2. Select a pin name by clicking on it in the list box.
June 2000 356 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
3. Choose a view name from which to copy the pin order from the available choices on theform.
4. Click Copy From.
5. Click OK.
The pin order in the view list window changes to match the selected view.
Resolving Pin Order Mismatch
If the pin ordering you want to copy is out of order with the existing pin ordering, the Port (Pin)Order Mismatch form appears.
The following figure shows an Order Mismatch form for a pin ordering in a functional cellviewthat is out of order with the current pin order.
Verifying Pin Order
To verify pin order validity of your most recently defined pin ordering, do the following:
➤ Choose Design – Check and Save.
If you added, deleted, or renamed pins since you last defined the logical pin ordering, thiscommand opens the Edit Pin Order form so you can verify or redefine the new pin ordering.
The following views of "test1/sheet001" are out of syncwith "test1/sheet001" schematic port order.
Port Order Mismatch
View State Action
functional Ports are out of order Requires Manual Update
The view name that isout of order
The reason the view isout of order
The action you can take toresolve the mismatch
June 2000 357 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Pin Name Properties
To edit pin name properties and pin name parameters and values, do the following:
1. Click a pin in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the Height, Font, or Justification fields.
4. Click OK.
Edit Object Properties
June 2000 358 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Wire Properties
To edit the width of a wire, do the following:
1. Click a wire in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Edit the width value of the wire.
4. Click OK.
Edit Object Properties
June 2000 359 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Wire Name Properties
To edit wire name properties and wire name parameters and values, do the following:
1. Click a wire name in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the Height, Font, or Justification fields.
4. Click OK.
Edit Object Properties
June 2000 360 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Instance Pin Properties on an Instance of a Block
To edit instance pin properties on an instance of a block, do the following:
1. Click an instance pin in your design.
You can edit only instance pin properties on an instance of a block.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Click Add, Delete, or Modify.
4. Edit the form that appears.
5. Click OK on both forms.
Edit Object Properties
June 2000 361 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Label Properties
To edit label properties and label parameters and values, do the following:
1. Click a label in your design whose properties you want to edit.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the Height, Font, or Justification fields.
4. Click OK.
Edit Object Properties
June 2000 362 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Resetting Invisible Labels
If you turned off label display on the Edit Object Properties form while editing a label, you cando the following:
■ Manually reset (make visible) individual labels
■ Automatically reset all invisible labels
To manually reset individual labels, do the following:
1. Choose Edit – Select – Filter.
Make sure the labels are selectable.
2. Choose Edit – Reset Invisible Labels.
All the invisible labels appear as blinking highlighted objects.
All the visible labels appear as nonblinking highlighted objects.
3. Click each of the blinking highlighted labels that you want to make visible.
When you select a label, it remains highlighted but stops blinking, indicating it will remainvisible when you quit the command.
When you click again on a label to deselect it, it starts blinking again, indicating it willremain invisible when you quit the command.
4. Press the Esc key to end the command.
The selected labels remain visible in your design.
To automatically reset all invisible labels, do the following:
1. Choose Edit – Reset Invisible Labels.
All invisible labels appear as blinking highlighted objects.
2. Press the F3 key.
June 2000 363 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Reset Invisible Labels form appears.
3. Turn on visible.
All the invisible labels remain highlighted but stop blinking.
4. Click Hide to close the Reset Invisible Labels form.
5. Press the Esc key to end the command.
The selected labels remain visible in your design, regardless of the Selection Filtersettings.
Editing netSet Properties
Refer to Adding and Editing Net Expression Labels on page 164 and Adding and EditingnetSet Properties on page 172 for information about the netSet property.
Editing Note Text Properties
To edit text of a note after you add it to your design, do the following:
1. Select the note text in your design.
2. Choose Edit – Properties – Objects.
Reset Invisible Labels
June 2000 364 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Edit Object Properties form appears and displays text in the Note Text field.
3. Make your changes using the keystrokes on the following table.
4. Click OK.
Keystrokes Used with Note Text
In the multiline text field, you can
■ Add text
■ Select text
■ Cut and paste text
■ Move the cursor to the beginning or end of the line
Edit Object Properties
You can type a note to document your design. You can also readin (or import)an ASCII file from disk.
June 2000 365 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
■ Delete text
Editing Commands Key Sequences
Adding text
Adds a new line Return , Shift-Return ,Control-j , Control-Return , or Control-m
Inserts an ASCII tab character Control-Tab or Control-i
Cancels the Add Note Text form Control-c
Selecting text
Places cursor Left mouse button
Selects by dragging mouse Drag left mouse button
Selects a word Double click
Selects a line Three clicks
Selects all text Four clicks
Deselects all selected text Click in open area
Cutting and pasting text
Pastes selected text at pointer location Middle mouse button
Moves cursor without deselecting text Control- left mouse button
Moving the cursor
Moves forward one character (right arrow)
Moves backward one character (left arrow)
Moves forward one word Control (right arrow)
Moves backward one word Control (left arrow)
Moves up one line (up arrow)
Moves down one line (down arrow)
Moves backward one character Control-b
Moves forward one character Control-f
Moves to end of line Control-e
June 2000 366 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Note Shape Properties
To change the line property of a note shape from a solid line to a dashed line or to repositiona note shape using coordinates, do the following:
1. Click a note shape in your design.
2. Choose Edit – Properties – Objects.
Moves to beginning of line Control-a
Moves the cursor forward to thenext form field
Tab
Deleting text
Deletes selected text Delete
Deletes selected text Backspace
Deletes previous character Control-h
Deletes previous character Backspace
Deletes previous character Delete
Deletes next character Control-d
Deletes previous word Meta-Backspace
Deletes previous character Shift-Backspace
Deletes previous word Meta-h
Deletes next word Meta-Del
Deletes to start of line Control-u
Deletes to end of line Control-k
Editing Commands Key Sequences
June 2000 367 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Edit Object Properties form appears.
3. Change Line Style or the position of the note shape.
4. Click OK.
You can also use the Move or Stretch commands for repositioning.
June 2000 368 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Symbol Shape Properties
To change the width property of a symbol shape from narrow to wide or to reposition a symbolshape using coordinates, do the following:
1. Click a symbol shape in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears. The form appearance changes to show allproperties for the type of object selected.
3. Change Width or the position of the symbol shape.
4. Click OK.
You can also use the Move or Stretch commands for repositioning.
Edit Object Properties
June 2000 369 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Symbol Pin Properties
To edit symbol pin properties and symbol pin parameters and values, do the following:
1. Click a symbol pin in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears. The form appearance changes to show allproperties for the type of object selected.
3. Change the Direction cyclic field of the symbol pin.
4. Click OK.
Edit Object Properties
June 2000 370 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Symbol Label Properties
To edit symbol label properties and symbol label parameters and values, do the following:
1. Click a symbol label in your design.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears. The form appearance changes to show allproperties for the type of object selected.
3. Change the properties of the label and click OK.
Edit Object Properties
June 2000 371 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing Symbol Selection Box Properties
To change the position of the selection box, do the following:
1. Click the selection box using the symbol editor.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Change the position of the selection box by editing the coordinates.
You can also use the Move or Stretch commands for repositioning.
4. Click OK.
Edit Object Properties
June 2000 372 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Editing User-Defined Object Properties
To edit visible user-defined object properties, values, and their display attributes, do thefollowing:
1. Click the object property.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears. The form’s appearance depends on whetheryou click the property master or a property instance.
When you select a user-defined property master, the form displays values for MasterValue and Local Value.
You cannot edit the Master Valuefield.
Edit Object Properties
June 2000 373 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
When you select a user-defined property instance, the Edit Object Properties formdisplays values for Name and Value.
3. Change the property values of Local Value, Height, Font, or Justification.
4. Click OK.
Editing Cellview Properties
While using the Edit – Properties – Cellview command, you can add, delete, and modify theproperties that appear on the form.
To add, modify, or delete properties, open a subform. You use the subform to specify theproperty type and value. When you click OK on the subform, the form reflects the change.
When you click Apply or OK on the form, the change is applied to the specified object in thedesign window.
To display cellview properties that you want to edit, do the following:
1. Choose Edit – Properties – Cellview.
Edit Object Properties
June 2000 374 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Edit Cellview Properties form appears.
2. Set the Show option as follows:
❑ Select system to display attributes that are less frequently used.
❑ Select user to display properties that you create.
3. Click OK.
Adding Cellview Properties
The Add option lets you add cellview properties.
Edit Cellview Properties
June 2000 375 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
To add a cellview property, do the following:
1. Choose Edit – Properties – Cellview.
The Edit Cellview Properties form appears.
2. Set the Show option to user.
3. At the bottom of the Edit Cellview Properties form, click Add.
The Add Property form appears.
4. Type a new property name, and give it a value.
5. Click OK.
6. On the Edit Cellview Properties form, click OK.
Add Property
June 2000 376 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Deleting Cellview Properties
To delete a cellview property, do the following:
1. Choose Edit – Properties – Cellview.
The Edit Cellview Properties form appears.
2. Set the Show option to user.
3. Click Delete.
The Delete Property form appears.
4. Choose the property you want to delete.
You can Shift -click to select multiple properties
5. , Click OK.
6. On the Edit Cellview Properties form, click OK.
Modifying Cellview Properties
The Modify option lets you modify cellview properties.
To modify a cellview property, do the following:
1. Choose Edit – Properties – Cellview.
Delete Property
June 2000 377 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Edit Cellview Properties form appears.
2. Set the Show option to user.
3. Click Modify.
The Modify Property form appears.
4. Choose the property you want to modify.
5. Change the property values for Type, Name, and Value.
6. Click OK.
7. On the Edit Cellview Properties form, click OK.
Editing VHDL Properties
To display VHDL properties in a cellview so you can set specific netlisting options, do thefollowing:
1. Choose Edit – Properties – VHDL.
Modify Property
June 2000 378 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The VHDL Properties form appears.
2. Type editing commands in the User Comment text box.
Note: To set netlister options for each cellview for VHDL, refer to the VHDL Interface UserGuide for the Virtuoso Schematic Composer.
VHDL Properties
June 2000 379 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Adding VHDL Properties
The Add button lets you add properties that represent VHDL generics.
To add a VHDL property, do the following:
1. Choose Edit – Properties – VHDL.
The VHDL Properties form appears.
2. Click Add.
The Add Generic form appears.
3. Type a generic name, a type, and a value.
4. Click OK.
5. On the VHDL Properties form, click OK.
Add Generic
June 2000 380 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Deleting VHDL Properties
The Delete button lets you delete properties that represent VHDL generics.
To delete a VHDL property, do the following:
1. Choose Edit – Properties – VHDL.
The VHDL Properties form appears.
2. Click Delete.
The Delete Generic form appears.
3. Type the generic name you want to delete.
4. Click OK.
5. On the VHDL Properties form, click OK.
Delete Generic
June 2000 381 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
Modifying VHDL Properties
The Modify button lets you modify properties that represent VHDL generics.
To modify a VHDL property, do the following:
1. Choose Edit – Properties – VHDL.
The VHDL Properties form appears.
2. Click Modify.
The Modify Generic form appears.
3. Type a generic name, a type, and a value.
4. Click OK.
5. On the VHDL Properties form, click OK.
Setting the Parameter Filter
This section explains how to edit Affirma™ analog circuit design properties using the ToolFilter.
To display the analog circuit design simulators that are active in your cellview, do the following:
1. Choose Options – Parameter Filter.
Modify Generic
June 2000 382 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEditing Properties
The Tool Filter form appears.
2. Save your cellview.
3. Click the Defaults button.
The system displays the simulators that were active when you last saved your cellview.
4. Select the tools for parameter display.
5. Click OK.
June 2000 383 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
9Traversing the Design Hierarchy andCreating a Design Configuration View
This chapter provides information about the following topics:
■ About the Design Hierarchy on page 384
■ Exploring the Design Hierarchy on page 385
■ About the Configuration View of a Design Hierarchy on page 389
■ About the Hierarchy Editor on page 391
■ Traversing a Design Hierarchy on page 392
■ Displaying the Current Hierarchical Scope on page 401
■ Creating a New Configuration View for the Design Hierarchy on page 401
■ Opening an Existing Design Configuration View on page 403
■ About the Hierarchy Editor within the Schematic Composer on page 404
■ Working with a Design Configuration within the Schematic Composer on page 406
About the Design Hierarchy
A design hierarchy comprises many levels of a single design. Each time you descend into thedesign hierarchy, you view a smaller division of the larger design in greater detail. Working insmaller divisions of a design lets you more effectively distribute work across multiple designengineers or groups.
A single instance in a hierarchical design typically represents multiple types of differentmodels. For example, an ASIC may include an underlying gate-level schematic, a layout, ora number of different behavioral descriptions, or a model.
June 2000 384 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
You have the flexibility to define the relationship between an instance and its variousrepresentations. You can descend into any particular lower-level design representation forexamination or editing.
Exploring the Design Hierarchy
The following diagram shows an ALU and an ADDR symbol view instantiated in a schematicview.
ALUsymbol
VHDLALUtext file
ADDRsymbol
schematic
symbol
symbol schematic behavioral
schematic vhdl
Top-LevelSchematic
Lower-LevelSchematic
Middle-LevelSchematic Verilog
ALUtext file
functional
VerilogADDRtext file
ALU instance
ADDR instance
Top-Level Design
June 2000 385 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
The following diagram shows the path (library, cell, and view name) for each view. You cantraverse into any existing view of the cell that is referenced by an instance and whose viewname has a corresponding view type in a registered tool.
Top-Level Schematic View
The following illustration emulates descending from a top-levelI/O register schematic into a middle-level I/O latch schematic.
Top Level
64-bitmicroprocessor
ALUVHDLALUtext file
ADDR
myLib/top/schematic
myLib/ALU/symbol
myLib/ADDR/symbol myLib/ADDR/schematic myLib/ADDR/behavioral
myLib/ALU/schematic myLib/ALU/vhdl
VerilogALUtext file
myLib/ALU/functional
VerilogADDRtext file
Middle Level
Lower Level
ALU
ADDR
ADDRinstance
ALU instance
June 2000 386 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
If you click the I3 IOlatch instance shown below, you descend into the schematic view (seenext page) of an I/O latch for the instance named I3 .
I0 I1 I2 I3
June 2000 387 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Middle-Level Schematic View
If you click the fflop1 component shown below, you descend from a middle-level I/O latchschematic into the lower-level fflop1 schematic (see next page).
June 2000 388 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Lower-Level Design Hierarchy
The following illustration shows the lowest level schematic of a design in the hierarchy of thisparticular design, the fflop1 schematic. The fflop1 schematic instantiates the primitivelogic devices (or leaf nodes).
About the Configuration View of a Design Hierarchy
Setup and netlisting processes and simulations should be run from the configured view ratherthan the original schematic so that you can access the expansion information.
June 2000 389 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
The Cadence® hierarchy editor creates a configuration view that provides expansioninformation controlling how the design hierarchy can be traversed.
In the above example, the library designLibcontains two configuration definitions with the viewnames mixedConfig and logicConfig . You can use the hierarchy editor to open theseviews.
designLib
logicConfigschematic mixedConfig
pulsegen
View names
Top cell name
layout
Configurationviews
Library name
June 2000 390 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
About the Hierarchy Editor
The hierarchy editor is a tool you use to create and edit a configuration. A configuration is aset of rules that defines which cellviews under a top-level cell are to be considered part of thedesign for netlisting, simulation, design partitioning for mixed signal simulation, and analysis.
The hierarchy editor lets you view the hierarchy of a design using a table or a tree format tomanage multiple components and views.
You use the hierarchy editor to do the following:
■ Change the global bindings
■ Add cell-based bindings and cell-based view lists
■ Add instance-based bindings and instance-based view lists
■ Update your configuration to see the effect of your work
■ Change instance bindings inside a block
■ Save your rules
For more details about using the hierarchy editor, refer to the Hierarchy Editor User Guide.
June 2000 391 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Traversing a Design Hierarchy
You can traverse a design hierarchy to view or edit your design using the Designmenu. Whenyou descend into a schematic, the schematic editor opens. When you descend into a symbol,the symbol editor opens. When you descend into a text view, the text editor specified by the$EDITOR variable in your .cshrc file opens.
When you descend from within a configuration design, you might descend into a view that isnot defined in the configuration expansion definition. The new scope is then out of context,and the window banner indicates you are not in a configuration design.
This section discusses two ways to move down the design hierarchy.
■ Use the Design – Hierarchy – Descend Edit / Read command to descend into any view.
When you choose the View Name List option, you descend directly into the firstavailable view in the list.
■ Use the Design – Hierarchy – Edit In Place command to access the symbol editor fromwithin the schematic editor environment. The schematic, while not editable, shows youthe relationship of your lower-level symbol to the entire schematic.
June 2000 392 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Descending Using the Descend Command
To descend into a lower-level view of an instance, do the following:
1. Choose Design – Hierarchy – Descend Edit / Read.
2. Select an instance in your design to descend into.
When you postselect the instance using the default settings, you descend directly intothe lower-level view, usually the symbol view. There are exceptions, as follows:
The Descend command behaves differently depending on data and options.
Data
■ The Descend form appears if the instance you select has several views available fordescending into. The form asks you to choose the view to descend into.
■ If the instance is a symbol and the symbol represents a multisheet design, a form letsyou choose to go to the index sheet or a specific sheet number.
■ In the case of a preselected instance, the Descend form opens immediately.
■ In case infix mode is enabled or you started the Descend command with a bindkey, theDescend form opens immediately.
■ If the instance is iterated, the Descend form lets you choose the iteration number youwant to descend into.
Options
■ Press the F3 key in the active Descend command to bring up the options form.
Specify the descend target cellview, either query user or use viewNameList.
If the descend target is query user(default), the Descend form opens, asking you whichview you want to descend into.
If the descend target is use viewNameList, type view names in a specific order in the ViewName List field of the Options – Editorcommand.
The following three forms show data for different instances.
June 2000 393 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
❑ Using a single instance representing a single-sheet schematic on the Descend form.
❑ Using an iterated instance representing a single-sheet schematic on the Descendform.
❑ Using a single instance representing a multisheet schematic on the Descend form.
If the Descend form opens, do the following:
1. Complete the form depending on your data and options.
2. Click OK.
Descend
Descend
June 2000 394 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
If you select a graphic view to descend into, either the schematic editor or the symboleditor opens.
If you select a text view, a text editor window opens. Some text editors automaticallycheck your text file for syntax errors. If the editor finds errors, the Parser Error/Warningsform appears and asks if you want to view the error file and reedit it.
Editing an Instance in Place
To edit an instance in place within the context of the higher-level schematic, do the following:
➤ Choose Design – Hierarchy – Edit In Place.
You descend into the symbol view of the instance to use the symbol editor while stillviewing the graphics of the higher-level schematic. The schematic, while not editable,shows you the relationship of your symbol to the entire schematic.
N1
N2
N3
N4
N5
N6
GATE_REP
[@instanceName]
pin1
GATE_REPinstance, symbolview in the symboeditor
Schematic viewin the symboleditor, noteditable
June 2000 395 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Descending Using the View Name List
By default, when you descend into another view, the system prompts you for the destinationview. If you want to bypass this step to descend directly into a view in a certain order, you canuse the View Name List option when you are out of context of a design hierarchy.
To change the default so that you automatically descend into the first available view in theview name list box, do the following:
1. Choose Design – Hierarchy – Descend Edit / Read.
2. Press the F3 key.
The Descend form appears.
3. Turn on use viewNameList.
This options works with the View Name List option on the following page.
4. Select an instance in the schematic.
You automatically descend into the first view listed in the viewNameListfor that instance.To set up the list of views in a specific order, see the View Name List option.
Setting the View Precedence Order
You can arrange the views for descending for data not within a configuration scope.
To rearrange the views in the View Name Listoption to set up the precedence order for the viewto be used as the descend target, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Type the names in the View Name Listfield in the order in which you want to descend. Forexample:
June 2000 396 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
schematic symbol vhdl functional abstract layout synthesis
The arrangement sets up the precedence order of views to use when you descend intoanother view.
3. Click OK.
The hierarchy configuration is more powerful and flexible than the View Name List method forspecifying design comparisons. You edit a hierarchy configuration using the hierarchy editor.The View Name Listoption does not work in configuration mode.
June 2000 397 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Returning Up the Design Hierarchy
After descending, you can return by levels or all at once.
To return to the previous level, do the following:
➤ Choose Design – Hierarchy – Return.
To return to the top level, do the following:
➤ Choose Design – Hierarchy – Return To Top.
June 2000 398 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Using OSMs to Traverse the Design Hierarchy
To use object-sensitive menus (OSM), make sure you turned on the OSM option. The defaultis off.
1. Place the cursor over an instance.
2. Press the middle mouse button.
The OSM pops up.
3. Select a Descend command.
4. With the cursor over an open area in the descended view, use the same process to returnto the previous level.
.
Instance
Stretch
Copy
Delete
Properties ...
Descend Edit ...
Descend Read ...
Edit In Place
Create Cellview
Rotate
Hierarchy commands
June 2000 399 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Using Bindkeys to Traverse the Design Hierarchy
Before you use bindkeys, verify that the bindkey file is installed properly.
To use bindkeys, select one of the following:
Command Bindkey
Descend Edit Shift-e
Descend Read e
Return Control-e
June 2000 400 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Displaying the Current Hierarchical Scope
When you display the hierarchical scope of your design, you can
■ View all the instance names and corresponding cell names of the current window
■ View a list of the instance names you have descended into and in which cell name andview name they are located
To display the current hierarchical scope, do the following:
1. Choose Design – Hierarchy – Show Scope.
A dialog box appears that lists the instance names and the corresponding cell names ofthe current window.
2. Click Close to close the dialog box.
Creating a New Configuration View for the DesignHierarchy
To create a new configuration view of a design and open the hierarchy editor, do the following:
1. From the Command Interpreter Window (CIW), choose File – New – Cellview.
Info
Hierarchical Scope is:
IO Register schematic6 (IOLatch schematic)5 (FFlop1 schematic)
Top-level cell nameTop-level view name
List of the instancenames you havedescended into with theircell name and viewname.
June 2000 401 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
The Create New File form appears.
2. Change View Name to config and Tool to Hierarchy-Editor and click OK.
For details on creating a configuration view, refer to the Hierarchy Editor User Guide.
June 2000 402 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Opening an Existing Design Configuration View
To open an existing design configuration view, do the following:
1. In the CIW, choose File – Open.
The Open File form appears.
2. Set View Name to config for the schematic design you want to open.
3. Click OK.
June 2000 403 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
The Open Configuration or Top CellView form appears.
When you set the configuration to yes, you can open the hierarchy editor.
When you set the top cell view to yes, you can open the top schematic for thisconfiguration.
4. Click OK.
Notice the window banner changes to indicate you opened the schematic view in thecontext of this configuration:
Virtuoso Schematic Editing: mixedVHDL designA schematicConfig: mixedVHDL designA config
For details on opening a configuration view, refer to the Hierarchy Editor User Guide.
About the Hierarchy Editor within the SchematicComposer
The hierarchy editor integration with the Virtuoso® schematic composer provides aconvenient way to synchronize the configuration database with the Cadence designframework II (DFII) database. From the Hierarchy-Editor menu on the schematic composerwindow, you can open the hierarchy editor, synchronize the database, set instance binding,and view the current set of view binding information.
The following products use the hierarchy editor within the schematic composer: Affirma™mixed-signal circuit design environment, Affirma analog circuit design environment, Verilog®-XL simulator, and VHDL integration.
The Hierarchy-Editor menu provides four commands:
config ”
June 2000 404 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
■ Edit Configuration
■ Update
■ Set Instance Binding
■ Show Views Found
June 2000 405 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Working with a Design Configuration within theSchematic Composer
This section covers the commands available from the Hierarchy-Editor menu within theschematic composer.
■ Opening a Hierarchy Editor Menu within the Schematic Composer on page 406
■ Editing a Design Configuration within the Schematic Composer on page 406
■ Setting Instance Bindings on page 406
■ Updating a Design Configuration on page 409
■ Building a New Inherited View List on page 409
■ Showing Views Found on page 412
Opening a Hierarchy Editor Menu within the Schematic Composer
To open the hierarchy editor menu within the schematic composer, do the following:
➤ Choose Tools – Hierarchy Editor.
The Hierarchy-Editor menu appears in the schematic composer menu banner.
Editing a Design Configuration within the Schematic Composer
To edit the configuration when the hierarchy editor is not present, do the following:
1. Open the design configuration.
If the Hierarchy-Editor menu is not visible on the menu banner, you need to install it.
2. Choose Hierarchy-Editor – Edit Configuration.
The hierarchy editor appears with information pertaining to your configured schematic.
For more details about using the hierarchy editor, refer to the Hierarchy Editor User Guide.
Setting Instance Bindings
The Set Instance Binding command lets you define the view to use and lets you choose theinherited view list. You can also set the view to use and the inherited view list from the
June 2000 406 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
hierarchy editor, but the Set Instance Bindingcommand from the schematic composer givesyou more flexibility on the scope of changes.
To define the view to use and to choose the inherited view list, do the following:
1. Choose Hierarchy-Editor – Set Instance Binding.
You are prompted to open the Hierarchy Editor form if it is not already open.
The Set Instance Binding form appears.
2. Select one or more instances in the design that you want changed.
The current instance is highlighted and its name is displayed in the Instance Name field.
3. Change the Apply Tocyclic field to display current instance(the main selection), all selectedinstances (in a group selection, including the main selection), or all instances (in thecellview).
If you choose all selectedor all instances, another cyclic field appears on the form. Choosesame master or any master.
4. Select View To Useto be bound to these instances.
Views common to all of the selected instances are available for selection. If you want torevert to the default bindings for your configuration in the hierarchy editor, set the View ToUse field to <Default>.
June 2000 407 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
5. To keep the inherited view list as is and not build a new inherited view list (default), turnon the As Is field.
You can change the inherited view list. To build a new inherited view list, refer to thefollowing section.
6. Click Apply to make your changes.
Your changes are reflected in the View To Usefield in the hierarchy editor for the instancesyou selected.
7. To propagate your changes to subordinate instances and save your changes, chooseHierarchy-Editor – Update in the schematic window.
All instances that are affected by your View To Useselection are changed in the hierarchyeditor and saved.
June 2000 408 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Updating a Design Configuration
After you edit the configuration, such as defining a new instance binding, you need to updatethe information in the hierarchy editor. To update a configuration from the schematiccomposer, do the following:
➤ Choose Hierarchy-Editor – Update.
If you are using the schematic composer to edit cellviews, you must save them in order tohave the edits you made reflected in your configuration.
The hierarchy editor is updated with the following information:
■ The cellviews you selected are saved
■ Your hierarchy editor display is updated
■ The schematic composer is updated with the new configuration
Building a New Inherited View List
After choosing Hierarchy-Editor– Set Instance Bindingand completing the steps in the previoussection, do the following:
1. Turn the As Is button off in the Inherited View List field.
2. Type in the inherited view list or click Build to construct the view list.
June 2000 409 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
The Build Inherited View List form appears.
The Available Constants/Viewslist box shows the combined views from the selected cells.
3. Select the appropriate views and constants, and click the right arrow to add them to theInherited View List list box.
4. Use the Up and Down buttons to reposition entries for using the appropriate views in aspecific order.
5. To specify a view name that is not listed, type the name in the field below the InheritedView List list box and click Add.
6. Click OK to return to the Set Instance Binding form.
7. Click Apply to add the new view list to the appropriate instances in the hierarchy editor.
8. Choose Hierarchy-Editor– Updatein the schematic window to update the hierarchy editorand save the changes.
June 2000 410 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Your changes are propagated through subordinate instances in the hierarchy editor andare saved in both the configured schematic and in the hierarchy editor configuration view.
June 2000 411 Product Version 4.4.6
Virtuoso Schematic Composer User GuideTraversing the Design Hierarchy and Creating a Design Configuration View
Showing Views Found
In the previous section, you either set the instance binding or built a new inherited view list.This command graphically shows the current view being used for each instance. To showviews used by the instance, do the following:
1. Choose Hierarchy-Editor – Show Views Found.
The Show Views Found form appears.
The View Name(s) option shows all the views bound to all the instances in the currentschematic cellview. The Highlight Layers option shows the colors used to highlight theinstances with the corresponding views. The command graphically shows the currentview being used for each instance.
2. (Optional) Change the highlight layer for each view name.
3. Click Apply.
The schematic display is updated with the appropriate highlight color showing the viewsused by all the instances.
June 2000 412 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
10Checking Designs
This chapter describes the procedures you use for checking your design.
■ Features of the Check Commands on page 414
■ Setting the Check Options on page 416
❑ Setting User Preferences on page 416
❑ Setting Schematic Rules on page 418
■ Checking a Design on page 423
❑ Checking and Saving a Design on page 424
❑ Checking the Current Cellview on page 426
❑ Checking a Design Hierarchy on page 427
❑ Checking a Design Hierarchy in the Configuration Context on page 428
❑ Checking Multisheet Schematics on page 429
❑ Checking a Label Attachment on page 430
❑ Cross-View Checking on page 431
■ Bypassing Checks on page 433
❑ Bypassing Floating Pin Checks on page 433
❑ Bypassing Unconnected Wire Checks on page 434
■ Resolving Check Errors on page 436
❑ Finding Errors and Warnings in a Design on page 438
❑ Mapping an Error Message to a Marker on page 439
❑ Managing the Error Message List on page 439
❑ Assigning an ignoreCheck Property on page 439
June 2000 413 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
❑ Suppressing Message Displays on page 440
❑ Deleting an ignoreCheck Property on page 440
❑ Deleting All ignoreCheck Properties on page 440
❑ Deleting Individual Markers on page 441
❑ Deleting All Markers on page 442
■ Monitoring a Verilog or VHDL Simulation State on page 442
❑ Using Cross Selection on page 444
❑ Opening an SHM Database on page 444
❑ Displaying the Simulation State of Wires and Pins on page 446
❑ Setting a Time Value for Displaying Signal Results on page 448
❑ Setting the Time Scale on page 449
❑ Setting the Display Radius on page 449
❑ Synchronizing with Simulation at Breakpoint on page 450
❑ Closing the SHM Database on page 451
Features of the Check Commands
Before you can pass the design data to any other tools, you must check your design forconnectivity, errors, and rule violations.
The Cadence® netlisters cannot generate the netlist until you check your design and, ifnecessary, correct any errors found during the check process.
You do not need to correct any warnings found during the check process, but you shouldreview them before you attempt to generate a netlist.
The Virtuoso® schematic composer check commands are as follows:
■ Design – Check and Save
■ Check – Current Cellview
■ Check – Hierarchy
■ Check – Label Attachment
June 2000 414 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
■ Check – Cross-View Checker (VIC) (symbols only)
You can check schematics using the following commands.
■ The Design – Check and Save command runs most of the check commandssimultaneously and
❑ Checks either a schematic or a symbol cellview
❑ Extracts connectivity information from the graphics in the schematic
❑ Runs specified options using the schematic rules checker (SRC), such as logicaland physical checks
❑ Runs the cross-view checker (VIC) on views you can specify
❑ Saves the design
■ The Check – Current Cellview command checks all the features that the Design – Checkand Save command does, but it does not save the design.
■ The Check – Hierarchy command is identical to the Check – Current Cellview command,but it checks the entire hierarchy.
■ The Check – Label Attachment command
❑ Shows the association between the labels and objects by drawing highlighted lines
❑ Checks for unattached labels
■ The Check – Cross-View Checker (VIC) command uses a smaller criteria to checkthe interface of specified views.
❑ Checks interface consistency between a list of specified views
❑ Reports signals exported in one view but not in the other
❑ Reports signals whose pins have different directions in the two views
❑ Does not save the design
June 2000 415 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Setting the Check Options
Before you run the checks listed above, you can set options and rules using these commands:
■ Options – Check
Sets options to be run when you choose Design – Check and Save, Check – Current Cellview,or Check – Hierarchy.
■ Options – Check Rules Setup
Sets the severity levels for checking logical, physical, name, and various other rules.
Note: Checkand Check Rules Setupare accessible from both the Optionsmenu and the Checkmenu.
Setting User Preferences
To set user preferences, do the following:
1. Choose Options – Check.
June 2000 416 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
The Schematic Check Options form appears.
2. Specify the options you want to apply to your check.
3. Click OK.
June 2000 417 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Setting Schematic Rules
The Setup Schematic Rules Check form lets you set the rules for running the SRC. You canset the severity levels for the following rules:
■ Logical rules
■ Physical rules
■ Name rules for the Cadence VHDL verification tool or the Verilog®-XL simulator.
■ Inherited connection rules
■ AMS rules
The Affirma™-AMS CDBA-to-Verilog-AMS translator is a mixed-signal translator thatsupports the Verilog-AMS language standard. The purpose of the AMS checks is to giveyou feedback regarding CDBA-to-Verilog-AMS translation without having to actuallygenerate a netlist. The checks must be enabled in order for them to run, but enablingnetlisting is not necessary. By default, this feature is not enabled. For details, see theCadence AMS Simulator User Guide.
Once you set these rules and SRC is enabled on the Schematic Check Options form, you canuse any one of the following Check commands to run SRC checks: Design – Check and Save,Check – Current Cellview, Check – Hierarchy.
To set up the schematic rules, do the following:
1. Choose Options – Check Rules Setup.
The Setup Schematic Rules Checks form appears.
June 2000 418 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
2. Set the Packaged Checks cyclic field to a specified predefined check.
The items listed in the Packaged Checks cyclic field are defined by theschSRCPackagedChecks environment variable. Packaged checks are a means ofsetting a set of severities using a single selection.
3. Click Logical to set the severity levels for the logical checks on the Setup SchematicRules Checks form.
June 2000 419 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
4. Click Physical to set the severity levels for the physical checks on the Setup SchematicRules Checks form.
June 2000 420 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
5. Click Nameto set the severity levels for the name checks on the Setup Schematic RulesChecks form.
In the Instance Name Expression, Pin Name Expression, and Net Name Expressionfields, usethe regular expression syntax as documented in the UNIX man pages for the ed(1)command. If a given instance, pin, or net name matches the specified regularexpression, an appropriate message is reported:
pin name " name" does not match expression " regularexpression "
June 2000 421 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
You can report instance, pin, and net names that do not match a specified regularexpression by preceding the expression with an exclamation point ( ! ). The messagestakes this form:
net name " name" does not match expression " regularexpression "
If an instance, pin, or net name consists of more than one signal or bundle, the namecheck is applied only to the base name portion of the name.
6. Click Inherited Connectionto set the severity levels for the inherited connection checks onthe Setup Schematic Rules Checks form.
June 2000 422 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
7. Click AMS to set the severity levels for the analog mixed signal checks on the SetupSchematic Rules Checks form.
The purpose of the AMS checks is to give feedback regarding CDBA-to-Verilog-AMStranslation without having to actually generate a netlist. The checks must be enabled inorder for them to run, but enabling netlisting is not necessary.
8. Click OK.
For details, see the Cadence AMS Simulator User Guidelisted under Analog Artist in theCadence Documentation.
Checking a Design
You have several options for checking a design:
■ Checking and Saving a Design on page 424
June 2000 423 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
■ Checking the Current Cellview on page 426
■ Checking a Design Hierarchy on page 427
■ Checking a Design Hierarchy in the Configuration Context on page 428
■ Checking Multisheet Schematics on page 429
■ Checking a Label Attachment on page 430
■ Cross-View Checking on page 431
Checking and Saving a Design
The Design – Check and Save command does the following:
■ Checks either a schematic or a symbol cellview
■ Extracts connectivity information from the graphics in the schematic
■ Runs specified options using the schematic rules checker (SRC)
■ Runs the cross-view checker (VIC)
■ Saves the design
To check and save either a schematic or symbol, do the following:
1. Choose Design – Check and Save.
June 2000 424 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
After the check is completed, the Command Interpreter Window (CIW) shows the resultsof the check, and a dialog box appears.
Flashing highlighted markers in your schematic indicate the objects that have errors orwarnings.
2. On the dialog box, click Close.
The Cadence® netlisters cannot generate the netlist until you check the design and, ifnecessary, correct any errors found during the check process.
You do not need to correct any warnings found during the check process, but you shouldreview them before you attempt to generate a netlist.
If no errors exist, the system automatically saves your design.
icds - Log: /usr1/mnt1/mara/CDS.log
Schematic Check
June 2000 425 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
If errors exist, the system prompts you to save your cellview. You can change this defaultbehavior by altering the value of the Check and Save Action on Error option on theSchematic Check Options form.
3. Read the check results and reply to the form.
To find the errors, choose Check – Find Markers.
Checking the Current Cellview
The Check – Current Cellview command does the following:
■ Checks either a schematic or a symbol cellview
■ Extracts connectivity information from the graphics in a schematic
■ Runs specified options using the schematic rules checker (SRC)
■ Runs the cross-view checker (VIC) on views you can specify
Before checking a cellview, review the check options.
To check only the current cellview, do the following:
1. Choose Check – Current Cellview.
The software performs the check. After the check is completed, the CIW displays theresults of the check, and a dialog box appears.
2. Read the check results and reply to the form.
3. Choose Check – Find Marker to view and resolve each error, if applicable.
Check and Save
June 2000 426 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Checking a Design Hierarchy
The Check – Hierarchy command does the following:
■ Checks all schematic and symbol cellviews in a design hierarchy
■ Extracts connectivity information from the graphics in the hierarchy
■ Runs specified options using the schematic rules checker (SRC)
■ Runs the cross-view checker (VIC) on views you can specify
Before checking a hierarchy, review the check options.
To check all schematics in a design hierarchy, do the following:
1. Choose Check – Hierarchy.
The Check Hierarchy form appears.
Note: The appearance of this form is different when the schematic is in the context of adesign configuration or a hierarchy configuration.
2. Set the options for your particular needs.
3. Click OK.
The system runs the SRC, VIC, and any options you specified on the Schematic CheckOptions form or Setup Schematic Rules Checks form.
schematic symbol
sample basic vhdl qalib2 test1 test2
June 2000 427 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
If errors are found, they are listed in the CIW.
If you have errors, the Save Schematics with Errors form appears.
Note: To save time, you can check only those cellviews that have not been checked since thelast time you saved your cellview. To customize the view name list, refer to theschCycleViewNameExclusionList variable.
Checking a Design Hierarchy in the Configuration Context
If you open a schematic in the context of a hierarchy configuration (configured schematic),the Check – Hierarchycommand does not use the view name list. Instead, the command usesthe schematic associated with its configuration data through partitioning. Partitioning is theprocess of separating the cells or blocks of a design into sets that will be simulated in eitherthe digital or analog domain. Refer to “Partitioning Your Design” in the Affirma Mixed-SignalCircuit Design Environment User Guide.
icds - Log: /usr1/mnt1/mara/CDS.log
Save Schematics with Errors?
June 2000 428 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
If you are checking a hierarchy in the design configuration context, the Check ConfigurationHierarchy form appears, and the View Name Listfield is replaced with two fields that displaythe configuration name and the name of the top-level cellview.
Checking Multisheet Schematics
To check the current sheet of a multisheet schematic, do the following:
➤ Choose Check – Current Cellview.
To check all the cellviews of a design hierarchy, do the following:
➤ Choose Check – Hierarchy.
To check all sheets of a multisheet schematic, do the following:
➤ Run the check from the index schematic.
The offsheet connector check used in multisheet schematics performs the followingoperations:
■ Runs only when the cellview being processed is an index of a multisheet schematic
■ Flags and lists each offsheet connector specified in any of the sheet instances on theindex schematic
Check Configuration Hierarchy
June 2000 429 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
■ Flags occur only when the connector imports or exports a signal that does not connectto another offsheet connector or hierarchical pin on another schematic sheet
■ Flags signals that do not connect to other sheets using offsheet connectors
■ Sends an error message if you use an offsheet connector incorrectly instead of using aschematic pin. If you modify some of the sheets in your design so that an offsheetconnector on a specific sheet becomes disconnected, an error message appears. If yoursignals implicitly attach across page boundaries, an error message appears; signalsneed to attach across page boundaries explicitly.
■ Highlights the error pin when you set the severity for the check to either warning or error,and if the offsheet connector in sheet 1 does not connect to any other offsheet connectorwith the same name on another sheet
Note: Whenever you check a multisheet schematic using the Check – Current Cellviewor Checkand Save command, the system creates or updates an msymbol cellview.
Checking a Label Attachment
To highlight the association between a name and its owner (that is, a wire or an instance), dothe following:
1. Choose Check – Label Attachment.
The Show Label form appears.
2. In the Labels ofcyclic field, specify which attached labels the checker looks for.
3. Click Apply.
The system draws a highlighted line between the displayed label text and its associatedobject. A flashing box appears around any labels not attached.
June 2000 430 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Cross-View Checking
You can check symbols using the Check – Cross View Checkcommand. It provides the followingcapabilities:
■ Checks interface consistency between a list of specified views
■ Reports signals exported in one view but not in the other
■ Reports signals whose pins have different directions in the two views
To check only the interconnection consistency between views, do the following:
1. From the symbol editor, choose Check – Cross View Check.
The Cross-View Checker form appears.
2. Specify the options you want to apply to the check operation.
3. Click OK.
4. View your errors or warnings.
When the check operation completes,
❑ A Cross-View Checker dialog box displays the number of errors and warnings foundin the symbol.
❑ The software displays blinking highlighted markers in your symbol to indicate theobjects with errors or warnings.
June 2000 431 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
❑ The CIW displays a one-line explanation of each error and warning.
5. Click Close.
6. Choose Check – Find Marker to view and resolve each object error.
Checking Expanded and Unexpanded Buses Across Views
The cross-view checker flags mismatches of expanded and unexpanded buses in symbol andschematic cellviews. If, for example, you place input pins in the schematic editor for bus A asA<1>, A<2>, and A<3>, but in the symbol cellview you unexpand the bus as A<3:1> , cross-view checker issues the following warning message:
Warning: Pin “A<3>” doesn't have an exact match in “cell1 symbol”
To correct this warning, set up the environment variable as follows:
schSetEnv("vicExactPinMatch" nil)
Cross View Check
icds - Log: /usr1/mnt1/mara/CDS.log
Cross-View Checker
June 2000 432 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Bypassing Checks
Besides changing check options to ignored, you can bypass floating pin checks andunconnected wire checks.
Bypassing Floating Pin Checks
There are two methods you can use to bypass the floating pin check operation:
■ Connect the noConn symbol to terminals that are unconnected
■ Manually change the checks to the ignored state on the SRC setup form
To attach the noConn symbol to unconnected terminals, do the following:
1. Choose Add – Instance.
The Add Instance form appears.
2. In the Library field, type basic .
June 2000 433 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
3. In the Cell field, type noConn .
The noConn symbol is attached to the pointer.
4. Click to place the noConn symbol to an unconnected terminal.
SRC does not highlight the dangling terminal as an error.
Bypassing Unconnected Wire Checks
There are two methods you can use to bypass the unconnected wire check operation:
■ Connect the onPageConn symbol to the wire vertex
■ Manually change the check to ignored state on the SRC setup form
To connect the onPageConn symbol to the wire vertex, do the following:
BC
A A<0:3>Y
nand3noConn symbol
June 2000 434 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
1. Choose Add – Instance.
The Add Instance form appears.
2. Click Browse.
June 2000 435 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
3. Select the onPageConn symbol from the basic library.
The onPageConn symbol is attached to the pointer.
4. Click to place the onPageConn symbol to a wire vertex.
SRC does not highlight the dangling wire as an error.
Resolving Check Errors
When a check command results in errors or warnings, the editor displays a flashinghighlighted marker on each object that generated an error or warning.
If your design has errors or warnings, the Check – Find Markercommand lets you view themeasily by listing the corresponding error and warning messages in the Find Marker form.
onPageConn symbol
June 2000 436 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
You can use the Find Marker form to narrow your search by limiting the list box display to aparticular severity level. You can also use the Find Marker form to expand your search byexpanding the scope.
This section provides information about the following:
■ Finding Errors and Warnings in a Design on page 438
■ Mapping an Error Message to a Marker on page 439
■ Managing the Error Message List on page 439
■ Assigning an ignoreCheck Property on page 439
■ Suppressing Message Displays on page 440
■ Deleting an ignoreCheck Property on page 440
■ Deleting All ignoreCheck Properties on page 440
■ Deleting Individual Markers on page 441
■ Deleting All Markers on page 442
June 2000 437 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Finding Errors and Warnings in a Design
To search for error markers in your design after you run one of the Checkcommands, do thefollowing:
1. Choose Check – Find Marker.
The Find Marker form appears.
The list box displays a list of all the error and warning messages generated by the check.By default, the editor highlights the first message and the associated marker in thedesign window.
2. Click the Nextand Previousbuttons to navigate through the message list.
If you selected the Zoom To Markers button, the editor zooms in on each associatedmarker and highlights the marker in the design window.
June 2000 438 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Mapping an Error Message to a Marker
To find the message that corresponds to a specific marker in the design window, do thefollowing:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Click the flashing marker in the schematic cellview.
The editor highlights the corresponding message in the Find Marker list box.
Managing the Error Message List
After you run a check operation, you can use the Find Marker form to assign an ignoreCheckproperty to a net, an instance, or an instance terminal in your design. The ignoreCheckproperty operates in conjunction with the Show Ignoredoption on the Find Marker form. Whenyou assign the ignoreCheck property to an object and also turn off the Show Ignored option,the software suppresses the display, in the Find Marker form list box, of error and warningmessages associated with the object when the following checks are run:
■ Floating input
■ Floating output
■ Floating net
■ Floating switch
■ Floating I/O
■ Shorted output pin
Assigning an ignoreCheck Property
To assign an ignoreCheck property to a net, an instance, or an instance terminal, do thefollowing:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Click the message in the list box.
3. Click the Ignore button.
June 2000 439 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
The software assigns an ignoreCheck property to the object and displays an asterisknext to the message in the column in the list box.
Suppressing Message Displays
To suppress the display of all messages that have an ignoreCheck property, do the following:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Turn off the Show Ignoredoption.
All the messages that have an ignoreCheck property disappear from the list box.
Deleting an ignoreCheck Property
To delete an ignoreCheck property from an object, do the following:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Turn on the Show Ignored option.
The list box displays all error and warning messages.
3. Click an error or a warning message in the list box.
4. Click the Restore button.
The software removes the ignoreCheck property and deletes the asterisk from themessage in the list box.
Deleting All ignoreCheck Properties
To delete all ignoreCheck properties from all objects, do the following:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Turn on the Show Ignored option.
The list box displays all error and warning messages.
3. Click the Restore button.
June 2000 440 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
The software removes all the ignoreCheck properties and deletes the asterisks from themessages in the list box.
Deleting Individual Markers
To delete individual markers in the design window, do the following:
1. Choose Check – Delete Marker.
2. Click the marker you want to delete.
You can also choose the Find – Markercommand and click the Deletebutton at the top ofthe form to delete the current marker.
June 2000 441 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Deleting All Markers
To find and delete all the markers of a particular severity level, and in a particular cellview orhierarchy, do the following:
1. Choose Check – Delete All Markers.
The Delete All Markers form appears.
2. Set the options for your particular need.
3. Click OK.
Monitoring a Verilog or VHDL Simulation State
To debug a Cadence VHDL design, you can set breakpoints or traces on certain objects. Youcan use the Schematic Monitorscommands only with an ongoing Verilog-XL or VHDL sessionor when accessing a previous simulator run stored with the simulation history manager(SHM). You can monitor or display any signal name as long as the signal name exists in thesimulation data source SHM file.
The Schematic Monitors commands let you observe the simulation state directly on wires orpins that represent signals, giving you a sense that simulation is being performed directly onthe design that you created.
This section describes the procedures for the following:
June 2000 442 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
■ Using Cross Selection on page 444
■ Opening an SHM Database on page 444
■ Displaying the Simulation State of Wires and Pins on page 446
■ Setting a Time Value for Displaying Signal Results on page 448
■ Setting the Time Scale on page 449
■ Setting the Display Radius on page 449
■ Synchronizing with Simulation at Breakpoint on page 450
■ Closing the SHM Database on page 451
June 2000 443 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Using Cross Selection
To enable cross selection to other Cadence applications via interprocess communication andto debug your design, do the following:
1. From the schematic editor, choose Options – Editor.
The Editor Options form appears.
2. Turn on Cross Selection.
3. Click OK.
Opening an SHM Database
You can open only one SHM database in each schematic editor window, but the SHMdatabase can be opened by multiple schematic windows. You can open a new SHM databaseat any time. You must open an SHM database to display feedback from the Verilog-XLsimulator or the Leapfrog® VHDL simulator in your schematic.
To connect a schematic window to an SHM database, do the following:
1. Choose Check – Schematic Monitors – Open Data.
June 2000 444 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
The Open Simulation Data form appears.
2. Choose a database.
3. Click OK.
A message in the CIW reports whether the SHM database was opened. The statusbanner is updated to show the SHM database name, the current simulation time, and thecurrent design scope.
The Open Data command connects the schematic to an SHM database, which exists inone of two forms:
❑ As a file created from a previous simulation
❑ As an in-memory simulation history created by an active simulation
If you are accessing the currently active SHM database opened by the Verilog-XLsimulator, any monitors you add are automatically probed. If monitors exist on yourschematic, they display signal data from the new SHM database.
June 2000 445 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Displaying the Simulation State of Wires and Pins
To display the simulation state of wires and pins, do the following:
1. Choose Check – Schematic Monitors – Add.
The Add Simulation Monitor form appears.
2. If you did not fill in the Signal Name field, the editor prompts you to click on a wire or pin.
Once you open a simulation database, the monitor displays the simulation state of thesignal if it exists in the database. Add net names from wires, pins, or instances selectedin the schematic. Type the signal names, separating each entry with a space.
If the name is not a valid name in the database, the signal is not monitored and a warningis issued.
If the signal name is made up of multiple bits, the state is displayed in bus format. Thedefault bus radix is hexadecimal.
The following list shows each format and an example of how the schematic monitorappears.
<state> ST0 (default)<time>:<state> 2.35:ST0
June 2000 446 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
<name>=<state> clock=ST0<time>:<name>:<state> 2.35:clock:ST0
3. In the Placement field, click single or multiple.
The following example shows schematic monitors.
4. When you have completed placing the monitors, run a simulation.
June 2000 447 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Setting a Time Value for Displaying Signal Results
When you set the time, the time is updated in the status banner of the window and each ofthe monitors in the window. Monitors displaying the time show what time the signaltransitioned to its current state. If you are synchronizing the monitors with your simulation, youcan still set the time manually. You do not have to turn synchronization off to use the Set Timecommand.
Note: You must open a simulation database before you can use the Set Time command.
To set a time value for displaying signal results, do the following:
1. Choose Check – Schematic Monitors – Set Time.
The Set Time form appears.
2. To set the time, use one of the following methods:
❑ In the Time field, type a value measured in the time units displayed in Units.
❑ In the Time Line field, click and drag the slider forward or backward throughsimulation history. The value above the slider changes to reflect simulation timevalues. Release the button when you reach the new time value.
❑ In the Movefield, click the minus to move backward through time by the time intervalyou set in the interval field. Click the plus to move forward through time by the timeinterval you set in the interval field.
❑ In the prev event and next event, select the monitors that display the results of thesignals you are interested in. Click prev eventto move directly to the most recent
June 2000 448 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
transition of the signals monitored by the selected monitors. Click next eventto movedirectly to the next transition of the signals monitored by the selected monitors.
3. Click OK.
Setting the Time Scale
The options you set using the Set Time Scale command also affect the values you set on theSchematic Monitors – Set Time command form.
Note: You must open a simulation database before you can use the Set Time Scalecommand.
To change the units, scale factor, and precision of time values displayed in the status bannerand in the monitors, do the following:
1. Choose Check – Schematic Monitors – Set Time Scale.
The Time Scale form appears.
2. Set the options.
3. Click OK.
Setting the Display Radius
Setting a display radix changes the radix of monitors displaying buses. Buses are displayedin binary by default.
To set the displayed bus values to a new display radix, do the following:
1. Choose Check – Schematic Monitors – Set Display Radix.
June 2000 449 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
The Set Radix form appears.
2. Click the monitors from the schematic cellview to display bus values.
3. Choose a new radix.
4. Click OK.
Synchronizing with Simulation at Breakpoint
Synchronization updates the schematic monitors each time you interrupt your simulation. Theupdated monitors represent the state of the simulation at the point of interruption.Synchronization is turned on automatically at the start of your simulation session.
To update the schematic monitors, do the following:
1. Choose Check – Schematic Monitors – Synchronize.
The Synchronization form appears.
2. Turn on or off the Synchronize with Simulator at Breakpoint field.
3. Click OK.
The system enables synchronization to display simulation results in monitors atsimulation breakpoints.
June 2000 450 Product Version 4.4.6
Virtuoso Schematic Composer User GuideChecking Designs
Closing the SHM Database
To close the SHM database in the current window, do the following:
➤ Choose Check – Schematic Monitors – Close Data.
If the database is connected to other schematic windows, this command closes thedatabase as a source for those windows as well.
After you close a database, all monitor values are cleared. The monitors and their emptyformat fields remain in your schematic window. The simulation time and the SHMdatabase name disappear from the status banner.
June 2000 451 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
11Plotting Designs
You can plot libraries, cellviews, or a portion of your schematic using one command form.Another form sets the plot options.
This chapter provides information about
■ Setting Up Your System to Plot on page 452
■ Plotting a Design on page 453
❑ Plotting a Design on page 453
❑ Plotting a Cellview on page 455
❑ Plotting Part of a Schematic on page 456
❑ Adding Notes to a Plot on page 458
❑ Setting Plot Options on page 458
■ Using a Plot Template File on page 460
❑ Using a Plot Template File on page 460
❑ Loading a Plot Template File on page 461
❑ Creating a Default Plot Template File on page 462
■ Checking the Queue Status on page 463
■ Canceling a Plot Job on page 463
Setting Up Your System to Plot
To set up your system to plot to either a plotter or a laser printer, do the following:
1. Install the hardware.
2. Configure the system.
June 2000 452 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
Refer to your operating system documentation for specifics about your plotter.
For details about configuring your operating system for plotting, refer to the PlotterConfiguration User Guide. It discusses the .cdsplotinit file that the Virtuoso®
schematic composer uses.
3. Set up the software.
Setting up the Cadence® software includes defining the correct plotting device (outputdevice), which you define in your operating system.
4. Create a site-specific version of the plot configuration file as detailed in the PlotterConfiguration User Guide.
Copy the cdsplotinit.sample file from the your_install_dir /tools/plot/samples directory to a new file called .cdsplotinit in either your workingor home directory.
The .cdsplotinit file is used to define the list of available printers and plotters andtheir characteristics.
Plotting a Design
You can plot any of the following:
■ Library
■ Current cellview
■ Entire hierarchy starting from the current cellview or as many levels down as you want
■ All sheets of a multisheet schematic by plotting from an index schematic cellview
Plotting a Library
To plot a library, do the following:
1. Choose Design – Plot – Submit.
June 2000 453 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
The Submit Plot form appears.
2. In the Plot field, turn on library.
3. In the Library Name and View Name Listfields, type the library you want to plot and itsviews.
You can also click Browse to select the library.
4. Change other fields or options as needed.
5. Click OK.
June 2000 454 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
Plotting a Cellview
To plot a cellview, do the following:
1. Choose Design – Plot – Submit.
The Submit Plot form appears.
2. In the Plot field, turn on cellview.
June 2000 455 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
3. In the Library Name, Cell Name, and View Name fields, type the complete path to thecellview you want to plot.
You can also click Browse to select the cellview.
4. Change other fields or options as needed.
5. Click OK.
Plotting Part of a Schematic
To plot only the viewing area of a cellview, do the following:
1. Zoom in on only the object or area you want to plot by choosing Window – Zoom – Zoom In.
2. Choose Design – Plot – Submit.
June 2000 456 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
The Submit Plot form appears.
3. In the Plot field, turn on viewing area.
When you plot using the viewing area, you plot the cellview from which you started thePlot command. Only the area displayed in the graphic window is plotted.
4. Change other fields or options as needed.
5. Click OK.
June 2000 457 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
Adding Notes to a Plot
To add notes to any type of plot, do the following:
1. Choose Design – Plot – Submit.
The Submit Plot form appears.
2. In the Plot With field, click notes.
3. Type in the Notes field.
Specific editing commands apply.
4. Click OK.
Setting Plot Options
You can set several plot options: plotter name, paper size, page orientation, size and positionof plotting, area, number of copies, plot time, and plot to file.
To set plot options, do the following:
1. Choose Design – Plot – Submit.
The Submit Plot form appears.
June 2000 458 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
2. At the bottom of the Submit Plot form, click Plot Options.
June 2000 459 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
The Plot Options form appears.
3. Set the options.
4. Click OK on the Plot Options and Submit Plot forms.
Using a Plot Template File
If you want to use the same plot options for other schematics, you can store the options in aplot template file. The plot template file stores plot options in property list format. You can usea template file to plot schematics in batch mode.
June 2000 460 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
Creating a Plot Template File
To create a plot template file, do the following:
1. Choose Design – Plot – Submit.
The Submit Plot form appears.
2. In the Template File field, type the path to the directory in which you want to store the file.
3. Complete the rest of the form to indicate all settings you want to save for plotting.
4. Click Save.
5. Click OK.
Loading a Plot Template File
When you load a template file, the system reads in plot setup information that you havepreviously saved.
To load a template file, do the following:
1. Choose Design – Plot – Submit.
June 2000 461 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
The Submit Plot form appears.
2. In the Template File field, type the path to the file you want to load.
You can also type the path to one of the sample plot template files:your_in stall_dir /tools/dfII/samples/plot/schPlot.i lyour_install_dir /tools/dfII/samples/plot/schMetPlot.i l
3. Click Load.
4. Click OK.
Creating a Default Plot Template File
To create a default plot template file, do the following:
➤ Add the following line to your .cdsinit file:
schPlotTemplate = " /usr/myPath/myTemplate "
The system loads the default plot template file when you use the Design – Plot – Submitcommand for the first time. Once you change the path in your .cdsinit file, you canuse the Load button on the Submit Plot form to load other template files.
June 2000 462 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
Checking the Queue Status
To check the status of your plot in the queue, do the following:
1. Choose Design – Plot – Queue Status.
The Plot Job Queue Status/Removal form appears.
1. In the Select Plotter cyclic field, choose the plotter to which you sent your schematic.
The system displays the plot job queue in the text box.
Canceling a Plot Job
To cancel a job, do the following:
1. Choose Design – Plot – Queue Status.
no entries1st john 963 standard input 139772 bytes2nd john 001 standard input 1460 bytes
June 2000 463 Product Version 4.4.6
Virtuoso Schematic Composer User GuidePlotting Designs
The Plot Job Queue Status/Removal form appears.
1. Select a job to cancel by clicking on the job in the text box.
2. Click Cancel Selected Plot Jobs.
3. Click OK.
963
no entries1st john 963 standard input 139772 bytes2nd john 001 standard input 1460 bytes
June 2000 464 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
12Setting Schematic Composer Options
You can change the appearance and the behavior of the Virtuoso® schematic composer byusing the Options menu in the schematic editor, symbol editor, or Command InterpreterWindow (CIW). In general, you can choose a preference once you are in a session. Whenyou find a desired behavior, you can make it the default for the product for that session.
This chapter provides information about the following:
■ Overview of Schematic Composer Options on page 466
■ Changing User Preferences on page 467
■ Saving the Current Window Setup on page 469
■ Viewing Bindkey Settings on page 470
■ Changing Browser and CIW Preferences on page 471
■ Customizing Editor Options on page 472
■ Changing Display Options on page 473
■ Selecting Objects Using the Filter Option on page 473
■ Setting Plot Options on page 473
■ Setting Schematic Check Options and Rules on page 474
■ Setting the Parameter Filter on page 474
■ Saving Form Field Default Settings on page 474
■ Loading Form Field Default Settings on page 475
June 2000 465 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Overview of Schematic Composer Options
The following options are available from the CIW.
The following options are available from the schematic composer window.
Command (CIW) Description
User Preferences Options to change window and command preferences
Save Session Save the display of your design window
Bindkey Option to change the set of bindkeys for the application
Browser Options to change the opening preferences
Command(schematic) Description
Editor Options to edit a design which applies to all edit commands
Objects Options to change object preferences
Display Options to display a design
Select Object Filter Options to control selection in a design
Plot Options Options to setup the plotter device
Check Options to do a schematic design connectivity inspection (nooptions available for a symbol cellview)
Rules Setup Options to set up the rules to do a schematic design inspection (nooptions available for a symbol cellview)
Parameter (Tool) Filter Select tools for parameter display (no options available for asymbol cellview)
Component Display Options to display each object’s label in a design
Save Defaults Save the current schematic composer environment variables to afile
Load Defaults Load the schematic composer environment variable from a file toset the current environment
June 2000 466 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Changing User Preferences
You can change window and command preferences from the CIW.
The Options – User Preferencescommand is described in Design Framework II Help.
To make changes permanent, from the CIW choose Options – Save Defaults or edit the.cdsinit file.
Minimizing Mouse Clicks
When Infix is on, the editor no longer prompts you to specify the first data point. Instead, whenyou start a command, the editor uses the current location of your pointer as the first datapoint.
To turn Infix on, do the following:
1. From the CIW, choose Options – User Preferences.
June 2000 467 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
The User Preferences form appears.
2. Turn Infix on.
3. Click OK.
June 2000 468 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Changing the Default Display Setting for Command Option Forms
You can reconfigure your system to display the command options forms automaticallywhenever you select a command that has an associated form. This reconfiguration is helpfulwhen you are unfamiliar with schematic composer commands and how they work.
To set your system to display associated options forms automatically whenever you choosecommands that have an associated form, do the following:
1. From the CIW, choose Options – User Preferences.
The User Preferences form appears.
2. In the Command Controls section of the form, turn on Options Displayed When CommandsStart.
3. Click OK.
The User Preferences form closes. Command option forms appear automatically whenyou next start a command.
Saving the Current Window Setup
To save the display of your design window (including all window positions, customizedsettings, contents, window sizes, zoom levels, and design hierarchies) when you exit thecurrent session, do the following:
1. From the CIW, choose Options – Session Save.
The Save Session form appears.
2. In the File Name field, type a filename in which to save the session data.
3. Click OK.
June 2000 469 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Restoring a Saved Window Setup
To restore a design session from a saved session, do the following:
➤ Type the following command in a UNIX window:
cds -restore sessionFileName
where
cds is the command for initializing the system; for example, icde , icms , or icds .
sessionFileName is the name of the file you want to restore.
The design window appears, showing the same display setup for the windows, contents,size, zoom levels, and design hierarchies.
Viewing Bindkey Settings
After you start a session, you can use the following procedure to view the current bindkey filesettings for various application types.
1. From the CIW, choose Options – Bindkey.
The Key or Mouse Binding form appears.
2. Change the Application Type Prefix cyclic field to Schematics or Symbol.
June 2000 470 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
3. Click Show Bind Keys.
A view window displays the current bindkey file settings. You cannot edit theschBindKeys.il file from the view window, but you can customize theschBindKeys.il file.
Changing Browser and CIW Preferences
You can change browser and CIW preferences by using the Options – Browser Preferencescommand from the CIW.
To set the browser in conjunction with the Add Instance command, do the following:
1. Choose Options – Editor.
2. Choose the appropriate browser from the Add Instance Browser Type field.
You can also change the appropriate editor option by setting the environment variablebrowserType on page 535.
Other options let you change browser preferences:
■ “Opening the Add Instance Form Instead of the Component Browser” on page 82
■ “Changing the Component Browser Display” on page 84
June 2000 471 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Customizing Editor Options
You can change general options for the schematic composer by using the Options – Editorcommand, which opens the Editor Options form.
Canceling the Modal (Repeat) Command Option
To turn off the Modal Commands option, which stops the active command from automaticallyrepeating, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Turn Modal Commandsoff.
3. Click OK.
To set Modal permanently on for future sessions, change the environment variablemodalCommands on page 552.
June 2000 472 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Changing Display Options
You can change the window display and grid controls by using the Options – Displaycommand. The Display Options form appears.
Selecting Objects Using the Filter Option
The Selection Filter form lets you specify which object types you can select manually forediting. This is especially useful when you have many object types, or overlapping objecttypes, in a small area of your design.
The Select Filter command is discussed in Chapter 8, “Editing Properties.”
Setting Plot Options
Setting plot options is discussed in Chapter 11, “Plotting Designs.”
June 2000 473 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Setting Schematic Check Options and Rules
Setting schematic check options and rules are discussed in Chapter 10, “Checking Designs.”
Setting the Parameter Filter
Editing Affirma™ analog circuit design simulator properties using the parameter (tool) filter isdiscussed in Chapter 8, “Editing Properties.”
Saving Form Field Default Settings
To save the current environment variables and form defaults to a file, do the following:
1. Choose Options – Save Defaults.
2. If you want to change the default filename, type a new name in the form.
Note: If you have an existing .cdsenv file, you might not want to overwrite it. Instead,you can write it to a different file and then copy the lines you want to the .cdsenv file.
The Save Schematic Defaults form appears.
3. Click OK.
The filename specifies the name of the file where the variables and form defaults aresaved. The default is a file named .cdsenv in your home directory. If you use thisfilename, the saved variables are automatically loaded the next time you start the editor.
Note: This form saves environment variables only within the schematic composerenvironment. The same command in the CIW saves all environment variables.
/ your_directory /.cdsenv
June 2000 474 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSetting Schematic Composer Options
Loading Form Field Default Settings
To load editor variables and form defaults from a specified file, do the following:
1. Choose Options – Load Defaults.
The Load Schematic Defaults form appears.
2. Type a new filename in the File Name field, if appropriate.
3. Click OK.
You can use a text editor to edit the variables in the defaults file. You can store the displayof your design window (including all window positions, customized settings, contents,window sizes, zoom levels, and design hierarchies) when you exit the current session.You can store the current session by selecting a command from the CIW. You can alsopreset session defaults and variables by editing the . cds env file.
Note: This form loads environment variables only within the schematic composerenvironment. The same command in the CIW loads all environment variables.
/ your_directory /.cdsenv
June 2000 475 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
13Customizing the Schematic Composer
The Virtuoso® schematic composer is an open application that you can customize. You canchange its appearance and behavior. In general, you can choose a preference orcustomization once you are in a session. When you find a desired behavior or customization,you can make it the default for the product.
This chapter provides information about the following:
■ Customizing Pull-Down and Pop-Up Menus on page 476
■ Customizing Object-Sensitive Menus on page 478
■ Customizing the Icon Bar on page 479
■ Understanding Initialization and Setup Files on page 480
■ Customizing Bindkeys on page 481
■ Customizing the Configuration File on page 483
■ Customizing Global Editor Variables for Form Fields on page 485
■ Customizing Text-to-Symbol Generator (TSG) Variables for Form Fields on page 510
■ Customizing HDL Variables for Form Fields on page 513
■ Customizing the Plot Configuration on page 516
Customizing Pull-Down and Pop-Up Menus
You interact with the schematic composer through pull-down menus, pop-up menus, the iconbar, and bindkeys. You can customize all schematic composer menus. In general, you copyfiles and edit them using a text editor.
For general information about customizing menus, see the file
your_install_dir /tools/dfII/etc/tools/menus/README
June 2000 476 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
For an example of how to customize schematic composer menus, see the file
your_install_dir /tools/dfII/etc/tools/schematic/README_menus.txt
The menu files make it easy for you to define each menu item (for example, the menuitemSymbol, its menu text, and the callBack function) and to organize these definitions intothe respective pull-down and pop-up menus. You can easily change menu definitions withouthaving to rebuild the Cadence® SKILL language context to see the change.
You or your technical administrator can customize the menus. The menu file definitions areeasier to maintain from one release to the next because they are independent of the codethat implements the menus. You do not need to know the SKILL symbol name of a menu itemto change its text. Instead, you modify the definition in the menu file.
Default Menu Definitions
The default menu definitions for the schematic and symbol editors are in
your_install_dir /tools/dfII/etc/tools/menus/schematic.menus
For information regarding the customization of these menu items, refer to the file
your_install_dir /tools/dfII/etc/tools/schematic/menus.sample
Sample Menu File
You can use the sample customization file as a starting point for the schematic editor. Itredefines the banner menu’s order and labels.
For site customization, make your changes and copy the file or files into
your_install_dir /local/menus/{schView,schematic}.menus
It is more likely that you will customize only the schematic.menus file mentioned aboveshowing default menu definitions, but schView.menus is listed for completeness.
You can also customize menus for different projects or work areas. Copy the customizationfiles to
your_install_dir /local/ workOrProjectDir /menus/{schView,schematic}.menus
For personal customization, copy the files to
~/menus/{schView,schematic}.menus
June 2000 477 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
The definitions in the menus files are prefixed with schc ; for example, schcSaveItem .Change the contents of the definitions rather than change the variables holding the definitionsbecause some of the schematics menu code processes specific definitions.
Customizing Object-Sensitive Menus
You can customize object-sensitive menus (OSM) in the following ways:
■ Reassigning the OSM to a different mouse button
The default bindkey file assigns OSMs to the middle mouse button.
■ Registering a custom menu with the pop-up manager
■ Issuing a Cadence SKILL command to register a menuHandle for a specificcategory
This procedure customizes which menu pops up when you place the cursor over specificobjects.
You can type the SKILL functions in the Command Interpreter Window (CIW), in which casethey remain active for the session only. Or you can type the SKILL functions in your.cdsinit file, in which case they become active whenever you start the schematiccomposer. Refer to the Virtuoso Composer Schematic SKILL Functions Reference Manual.
June 2000 478 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Customizing the Icon Bar
You can use the following procedures to customize the icon bar:
■ Positioning Icons and Turning Off Icon Names
■ Changing the Contents of the Icon Bar
■ Changing the Display of the Icon Bar
Positioning Icons and Turning Off Icon Names
1. From the CIW, choose Options – User Preferences.
The User Preferences form appears.
2. In the User Preferences form, set the icon bar window controls.
3. Click OK.
To view the results of the change, choose Window – New to open a new window.
Changing the Contents of the Icon Bar
You can change the contents of the icon bar by editing the schFixMenu.il file.
To change the contents of the icon bar, do the following:
1. Open the schFixMenu.il file using a text editor.
The default installation path for the file is
your_install_dir /tools/dfII/samples/local/schFixMenu.il
2. Edit the file as needed.
❑ Change the order of the menu items by moving the lines in the file
❑ Change the order of the icons on the menu
❑ Change the icon label
❑ Change the icon bitmap
❑ Personalize the commands
❑ Delete the icons you do not want to use
June 2000 479 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
❑ Change any of the following parameters:
name = SKILL symbolitemText = pop-up menu nameitemIcon = icon as created by hiStringToIconcallback = SKILL function
Changing the Display of the Icon Bar
To specify how the system displays icon bar commands, such as icons or text, use SKILLfunctions. Refer to the schRegisterFixedMenu and schUnRegisterFixedMenufunctions in the Virtuoso Composer Schematic SKILL Functions Reference Manual.
You can type the SKILL functions in the Command Interpreter Window (CIW), in which casethey remain active for the session only. Or you can type the SKILL functions in your.cdsinit file, in which case they become active whenever you start the schematiccomposer.
Understanding Initialization and Setup Files
You can customize elements of the user interface by modifying these files.
Filename Customizing Ability
schConfig.il The configuration file specifies various schematic composerconfigurations
schBindKeys.il The bindkey file sets the bindkeys for the schematic composer
schFixMenu.il The fixed menu file sets the icon bars
.cdsinit The Cadence initiation file sets environment variables thatcontain user or site SKILL code definitions
You can set these variables by calling schSetEnv orenvSetVal in the .cdsinit file.
.cdsenv The Cadence environment file sets default values forenvironment variables in Cadence design framework II.
You can create the .cdsenv file by using the Options – SaveDefaults command.
June 2000 480 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Customizing Bindkeys
You can use the following procedure to customize the bindkeys.
Locating the schBindKeys.il Bindkey File
Bindkeys for the schematic and symbol editors are defined in the schBindKeys.il file,located in your installation directory.
The example shows how the file contents typically appear.
bk("Schematics" "<Key>F6" "hiRedraw()")bk("Symbol" "<Key>z" "hiZoomIn()")
The full path to the schBindKeys.il file is
your_install_dir /tools/dfII/samples/local/schBindKeys.il
where your_install_dir is the path to your installation directory.
Locating Your Installation Directory
To find the path to your installation directory, do the following:
➤ In the CIW, type
getInstallPath
The software returns the path to your installation directory.
Note: This procedure assumes you or your system administrator has installed the Cadence-supplied schBindKeys.il file. If you are using a locally supplied file, substitute theappropriate path.
1. In a UNIX window, copy the schBindKeys.il file to your home directory:
cp your_install_dir/ tools/dfII/samples/local/schBindKeys.il ~/.
2. Use your editor to open and edit the file contents.
The example shows how the file contents typically appear.
bk("Schematics" "<Key>F6" "hiRedraw()")bk("Symbol" "<Key>z" "hiZoomIn()")
June 2000 481 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
You can edit the following four elements for each bindkey setting:
3. When you are finished editing the file, save and close it.
Loading Your Customized Bindkey File
After you create your custom schBindKeys.il file, you can
■ Load the file for the current session only
■ Configure your system to automatically load the file whenever you start a new session
To load the new file for the current session, do the following:
➤ In the CIW, type
load " path_to_file /schBindKeys.il"
where path_to_file is the path to your custom schBindKeys.il file.
To configure your system to load your custom schBindKeys.il file automatically wheneveryou open a new session, do the following:
➤ Add a line to your .cdsinit file that loads the new bindkey file.
For example:
load " path_to_file /schBindKeys.il"
where path_to_file is the full path to your custom schBindKeys.il file.
You can customize bindkeys for the current session and for permanent use.
bk("Schematics" "<Key>F6" "hiRedraw()")
Sets F6 to redraw the screen.
bk is the alias for the hiSetBindKey() function, whichsets bindkeys.
The application name in the syntax specifieswhen the bindkey applies; for example, whenyou run the schematic editor.
You can set a bindkey to perform anySKILL function.
June 2000 482 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Loading the Cadence-Supplied Bindkey File
To load the Cadence-supplied bindkey file automatically, do the following:
1. In a UNIX window, open your .cdsinit file; for example,
vi ~/.cdsinit
2. Add the following line to the file:
load( prependInstallPath ("samples/local/schBindKeys.il"))
where prependInstallPath is a function.
3. Save and close the file.
The next time you start the Cadence software, the .cdsinit file loads theschBindkeys.il file automatically.
If you have already started the Cadence software, you can load the bindkeys manually, for thecurrent session, by using the following procedure.
➤ In the CIW, type
load( prependInstallPath ("samples/local/schBindKeys.il"))
where prependInstallPath is a function.
Customizing the Configuration File
The configuration file, schConfig.il , contains the definitions of the public global SKILLvariables that you can customize. The contents are organized into four groups: SchematicEditor, Symbol Editor, Symbol Generator, and HDL.
Using SKILL variables, you customize certain command form fields to change the list ofchoices.
You might want to customize the configuration file to limit or expand the options the editordisplays on certain forms or fields. These options include choices such as sheet sizes, pintypes, view names, and block sizes.
The configuration file is located in your installation directory:
your_install_dir /tools/dfII/samples/local/schConfig.il
To find your installation directory, do the following:
In the CIW, type
June 2000 483 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
getInstallPath
You can add or delete choices to the schConfig.il file anytime before you complete anyschematic functionality in an interactive session. You can load the schConfig.il file atany time during the session to make new changes effective.
Opening the Configuration File
To create a custom schConfig.il file, you edit the sections of the file that define thebehavior you want to modify.
To create a custom configuration file, do the following:
1. Copy the schConfig.il file from your installation directory to your current directoryby typing the following:
cp your_install_dir /tools/dfII/samples/local .
To find your installation directory, in the CIW type
getInstallPath
2. Use a text editor to open the schConfig.il file.
Editing the Configuration File
Caution
Do not change the IL structure in this file. The structure is necessary sothat the choices on the schematic and symbol forms read properly.
To edit the configuration file, do the following:
1. Search for a variable name.
2. Use the text editor to edit the file.
The file is organized into four groups: Schematic Editor, Symbol Editor, SymbolGenerator, and HDL. The variable names are sorted alphabetically within each category.
3. Save the file.
June 2000 484 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Loading the Configuration File
To load the local configuration file for your current session, do the following:
➤ In the CIW, type
load(" local_dir/ schConfig.il")
To load the configuration file for every session, do the following:
➤ Add the following command to your .cdsinit file:
load(" local_dir/ schConfig.il")
Loading the local configuration file takes precedence over loading the default configurationfile that resides in your installation directory.
Customizing Global Editor Variables for Form Fields
These IL variables describe the “indirection map” used by the schematic editor and symboleditor. You can customize these public global SKILL variables, which relate directly to the formfield settings. These variables are stored in the schConfig.il file.
To edit these variables, you need to open the configuration file.
The following table describes variables for customizing form fields for the
■ Schematic Editor Variables on page 486
■ Symbol Editor Variables on page 486
■ Symbol Generation (tsg) Variables on page 487
■ HDL (Verilog, SpectreHDL, and VerilogA) Variables on page 488
June 2000 485 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Schematic Editor Variables
Symbol Editor Variables
Schematic Form Field Description Variable Name
block edge to pin type and direction schBlockPinAttrs
block sizes and samples schBlockTemplate
schematicSymbol views exclusion schCycleViewNameExclusionList
schematic pin type schPinMasters
default schematic plot template file schPlotTemplate
severity and value check schSRCPackagedChecks
property name list selection schSelPropertyNameList
sheet border sizes and types schSheetMasters
simulation display format schSimProbeMasters
view translation to and from schViewMasters
view translation options function schViewMastersOptionFunc
pin cross reference format schZoneFormatString
pin cross reference format schZoneFormatValue
Symbol Form Field Description Variable Name
symbol label attributes schSymbolLabelChoices
symbol pin direction and type schSymbolPinMasters
June 2000 486 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Symbol Generation (tsg) Variables
Symbol Form Field Description Variable Name
pin connection type tsgConnectorMasters
symbol pin graphic characteristics tsgPinGraphicMasters
default tsgTemplateType tsgTemplateMasters
June 2000 487 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
HDL (Verilog, SpectreHDL, and VerilogA) Variables
Symbol Form Field Description Variable Name
enables/disables cross-view checking orchecks views against edited view
schHdlCrossViewCheck
specified set of views to check schHdlCrossViewString
controls editing and processing schHdlEditAfterError
port output type schHdlNetToInoutPort
port input type schHdlNetToInputPort
turns the mixed text-graphics feature on andoff
schHdlNoHierarchy
controls HDL printing schHdlPrintCommand
configures the characteristics of symbolsbuilt by the text-to-symbol generator (TSG)
schHdlUpdateSymbolAfterEdit
prints out diagnostic messages while theVerilog® text is parsed and processed
schHdlVerbose
June 2000 488 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
AMS Netlisting Variables
You can set severities for the following AMS checks:
Block Pin Direction Rule Variable
schBlockPinAttrs
Sets the pin direction implied by connecting to a specific edge of a block. This IL structuredescribes the mapping of the block edge to pin type and direction. This map is used by theschematic user interface to provide a simplified approach for selecting the pin directionimplied by connecting a wire to a specific edge of a block.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Syntax
list( PIN_TYPE list( EDGE_DIRECTION TERMINAL_DIRECTION ) list( EDGE_DIRECTION TERMINAL_DIRECTION ) ... ))
Arguments
Form Field Description Variable Name
illegal identifiers allowLegalIdentifiers
name collisions allowNameCollisions
conflicting bus ranges allowDeviantBuses
sparse buses allowSparseBuses
PIN_TYPE The name of the pin “type”
EDGE_DIRECTION left , right , bottom , top
June 2000 489 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
PIN_TYPE and TERMINAL_DIRECTION uniquely identify a pin master in theschSymbolPinMasters map.
Example
schBlockPinAttrs = list("block"
list("left" "input")list("right" "output")list("bottom" "inputOutput")list("top" "inputOutput")
)
TERMINAL_DIRECTION The CDBA terminal direction
June 2000 490 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Block Sample Sizes Variable
schBlockTemplate
Sets the block sample sizes during top-down block creation.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Put choices here for the block sample names, sizes, and labels that are used during blockcreation.
Standard Structure
list(list(
BLOCK_NAMEBLOCK_SIZElist(
LABELLABEL...
))
Add Block
June 2000 491 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
...)
Body Definition
Example
schBlockTemplate = list(list("freeform"
list(0:0 0:0)list(
list("[@instanceName]" "instance label" .08125"stick" "NLPLabel")
list("[@cellName]" "logical label" .08125"stick" "NLPLabel")))
list("small"list(0.0:0.0 1.0:1.0)list(
list("[@instanceName]" "instance label" .075"stick" "NLPLabel")
list("[@cellName]" "logical label" .075"stick" "NLPLabel")))
...)
BLOCK_NAME A string identifying blockSample .
BLOCK_SIZE list( pt1 pt2 pt3 pt4 ... )A list of points forming a block’s border.
LABEL list( text choice height font type )A list of label attributes.
text The label string.
choice One of “instance label” , “logical label” , “physicallabel” , “pin label” , “device annotate” , “pinannotate” .
height Label height in user units.
font A dbFontStyle; for example, “stick” .
type A dbLabelType: “normalLabel” , “NLPlabel” , “ILLabel” .
June 2000 492 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
View Name Exclusion Variable
schCycleViewNameExclusionList
Sets the exclusion for schematicSymbol views from being cycled through on the AddInstance form.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Standard Structure
schCycleViewNameExclusionList = list("ta" "tv" "silos" "hspice" "shilo" "package" ".moduleInfo""pcb" "verilog" "lai_verilog" "lmsi_verilog" "spice""synthesis"
)
Schematic Pin Types Variable
schPinMasters
Add Instance
June 2000 493 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Sets the pin usage, pin masters, and pin direction on the Add Pin form for creating aschematic pin. Sample pin masters are in the basic library.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
You can list as many choices as you want; for example, schematic, input, offsheet, and iopin.
Use offsheet only when you are going to connect the added pins to another sheet in amultisheet schematic.
Standard Structure
list(list(
PIN_USAGE...
)list( PIN_DIRECTION TERMINAL_DIRECTION
PIN_MASTER...
)...
)
Add Pin
June 2000 494 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Arguments
Example
schPinMasters = list(list(list("schematic" nil) list("offSheet" t))list("input" "input"
list("basic" "ipin" "symbol")list("basic" "ipin" "symbolrOff"))
list("output" "output"list("basic" "opin" "symbol")list("basic" "opin" "symbollOff"))
list("inputOutput" "inputOutput"list("basic" "iopin" "symbolr")list("basic" "iopin" "symbolrOff"))
list("switch" "switch"list("basic" "iopin" "symbolr")list("basic" "iopin" "symbolrOff"))
)
Plot Template File Variable
schPlotTemplate
This IL variable describes the default schematic plot template file that is loaded when the Plotcommand is started for the very first time.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
PIN_USAGE Each PIN_USAGE value is a list of two elements. The firstelement is a member of pin usage as it appears on the AddPin form. The second element indicates the pin is used asan offsheet connector when its value is ’t.
PIN_DIRECTION Pin direction as it appears on the Add Pin form.
TERMINAL_DIRECTION The CDBA terminal direction.
PIN_MASTER Each PIN_MASTER value is a list of three elements thatdefine the library, cell, and view names of a pin master.There must a matching PIN_MASTER entry to eachPIN_USAGE entry.
June 2000 495 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Example
schPlotTemplate = "~/plot.tf"
Schematic Rule Checker Variable
schSRCPackagedChecks
Sets the severities and values for the various SRC checks. Added “offsheetConnCheck”to “Normal” , “Logical Only” , and “Physical Only” package groups.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Example
schSRCPackagedChecks = list(list("Normal"
list("floatingNets" "warning")list("floatingInput" "warning")list("floatingOutput" "warning")list("floatingIO" "warning")list("floatingSwitch" "warning")list("shortedOutputs" "warning")list("offsheetConnCheck" "ignored")list("unconnectedWires" "ignored")...
))
Properties for Find Variable
schSelPropertyNameList
Sets the property names for the Select By Property and the Replace and Find commands.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Standard Structure
list(list( VIEW_NAME
list(list( ALIAS_NAME REAL_NAME [ATTR_LIST] )
June 2000 496 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
...)...
)...
)
Arguments
Example
schSelPropertyNameList = list(list("schematic"
list(list("instName" "name"
list(’("objType" "inst") ’("purpose" "cell")))list("netName" "name" list(’("objType" "net")))
list("pinName" "name" list(’("objType" "term")))list("master" "master")list("libName" "libName")list("cellName" "cellName")list("fontStyle" "font")list("fontHeight" "height")list("orient" "orient")list("partName" "partName")list("phyPartName" "phyPartName")list("power" "power")list("refDes" "refDes")list("technology" "technology")list("simMonitor" "schSimSignalName" list(’("objType"
"inst"))))
)list("schematicSymbol"
list(
VIEW_NAME Valid values are schematic and schematicSymbol .
ALIAS_NAME The name as it appears in the cyclic field on the form.
REAL_NAME The actual property name to be searched for in the database.
ATTR_LIST An optional attribute list defining the database attribute names andthe expected values.
June 2000 497 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
list("pinName" "name" list(’("objType" "net")))list("fontStyle" "font")list("fontHeight" "height")list("orient" "orient")list("layer" "layerName"))
))
June 2000 498 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Multisheet Masters Variable
schSheetMasters
Sets the choices for sheet border sizes and types on the Create Schematic Sheet form thatthe editor uses for a new sheet.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Standard Structure
list(list( SHEET_CHOICE ... )list( SIZE_NAME
SHEET_MASTER...
)...
Create Schematic Sheet
June 2000 499 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Arguments
Examples
schSheetMasters = list(list("basic" "continue")list("A"
list("US_8ths" "Asize" "symbol")list("US_8ths" "Asize_c" "symbol"))
list("B"list("US_8ths" "Bsize" "symbol")list("US_8ths" "Bsize_c" "symbol"))
)
Simulation Probe Masters Variable
schSimProbeMasters
Sets the simulation probe (schematic monitors) to be used for a specified format.
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Standard Structure
list(list( PROBE_FORMAT PROBE_MASTER)list( PROBE_FORMAT PROBE_MASTER)...
)
SHEET_CHOICE A sheet type that appears as an element in a cyclic field. You canlist multiple choices.
SIZE_NAME The first element of the sheet reference. Also, the name thatappears on the user interface form.
SHEET_MASTER Each SHEET_MASTER value is a list of three elements that definethe library, cell, and view names of a sheet. There must be amatching SHEET_MASTERentry for each SHEET_CHOICEentry. Tospecify a choice that is valid but does not create a sheet border, usea list of null strings, such as list("" "" "") .
June 2000 500 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Arguments
Example
schSimProbeMasters = list(list("<state>" list("basic" "simState" "symbol"))list("<time>:<state>" list("basic" "simState" "symbol"))list("<name>=<state>" list("basic" "simState" "symbol"))list("<name>=<time>:<state>" list("basic" "simState"
"symbol")))
View Name Masters Variable
schViewMasters
Sets the default view used for translation on all Create Cellview forms.
PROBE_FORMAT The format string that appears in the cyclic field of the createdisplay box form. It has three special format variables: name,state , and time .
PROBE_MASTER Each PROBE_MASTER value is a list of three elements that definethe library, cell, and view names of a probe symbol.
Cellview From Cellview
June 2000 501 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
To edit this variable, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
Standard Structure
list(list( VIEW_NAME TRANSLTE_TO TRANSLATE_FROM )list( VIEW_NAME TRANSLTE_TO TRANSLATE_FROM )...
)
Arguments
If a translation routine is nil , translation in that direction is undefined.
Synopsis of Translation Function
View to pinlist: funcName(t_libName t_cellName t_viewName) => l_pinList
Pinlist to view: funcName(t_libName t_cellName t_viewName l_pinList) => t/nil
t_libName, t_cellName, t_viewName: Defining the library, cell, and viewnames.
l_pinList : A DPL list describing the cellview ports, cellview properties, andport properties in the following format:
<l_pinList> := ( nil ports <portList> [props <propList>] )<portList> := ( <port> [ <portList> ] )<port> := ( nil name "termName" direction "termDir"
[prop <propList>] [pins <pinList>] )
<propList> := ( <prop> [ <propList> ] )<prop> := ( nil s_propName t_propValue s_propName
t_propValue )
VIEW_NAME The view name to be translated from or to.
TRANSLATE_TO The name of the SKILL function for translating from this view toa pin list.
TRANSLATE_FROM The name of the SKILL function for translating from a pin list tothis view.
June 2000 502 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
<pinList> := ( <pin> [ <pinList> ] )<pin> := ( nil name "pinName" accessDir "pinAccessDir"
[prop <propList>] )
Example
pinList =list(nil
’ports list(list(nil ’name "clock" ’direction "input")list(nil ’name "a0" ’direction "output"
’prop list(nil ’delay 55.0)))
‘prop list(nil ’partName "count" ’myProp 5))
Note: veriloga view name entry was new for the 4.4.1 release.
if( schExistsEditCap(nil) thenschViewMasters = list(
list("schematic" "schSchemToPinList" "schPinListToSchemGen")list("symbol" "schSymbolToPinList"
"schPinListToSymbolGen")list("functional" "schVerilogToPinList" "schPinListToVerilog")list("behavioral" "schVerilogToPinList" "schPinListToVerilog")list("system" "schVerilogToPinList" "schPinListToVerilog")list("veriloga" "schVerilogAToPinList"
"schPinListToVerilogA");list("layout" "schLayoutToPinList" nil))
elseschViewMasters = list(
list("schematic" "schSchemToPinList" "schPinListToSchem")list("symbol" "schSymbolToPinList" "schPinListToSymbolGen"))
)
June 2000 503 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
View Master Options Variable
schViewMastersOptionFunc
The text-to-symbol generator (TSG) uses this variable to determine whether the creationfunction of a particular destination cellview (in this case, symbol) has an options form.
For example, when you choose Edit Optionson the Cellview From Cellview form and you wantto create a symbol cellview, the Symbol Generation Options form appears.
To edit the schViewMastersOptionFunc variable, you need to open the configuration file.
Standard Structure
list(list( VIEW_NAME OPTIONS_FUNC )...
)
Note: veriloga view name entry was new for the 4.4.1 release.
if( isCallable(‘schPinListToVerilog) thenschViewMastersOptionFunc = list(
list("schematic" nil)list("symbol" "schDisplaySymbolTemplateForm")list("functional" nil)list("behavioral" nil)
Cellview From Cellview
myLib
decoder
June 2000 504 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
list("system" nil)list("veriloga" nil)list("abel" nil)
)else
schViewMastersOptionFunc = list(list("schematic" nil)list("symbol" "schDisplaySymbolTemplateForm")list("abel" nil))
)
Zone Formats Variable
schZoneFormatString
schZoneFormatValue
To edit these variables, you need to open the configuration file. You can add or delete choicesany time before you execute any schematic functionality in an interactive session.
These global variables specify the format of the pin cross-reference information, whichspecifies pin locations by sheet numbers, X and Y zones. The schZoneFormatStringand schZoneFormatValue variables are used when creating pin cross-references by theSheet – Cross Reference command and when parsing pin cross-references by the Sheet –Go To Pin command.
The schZoneFormatString variable specifies the formatting information for the sheetnumber, Y zone, and X zone. The schZoneFormatValue variable specifies the order ofthe sheet number, Y zone, and X zone in the schZoneFormatString formatting string.For example, the 3B2 pin cross-reference specifies a reference to a pin located in zone B2in sheet 3.
schZoneFormatString = "%d%[?ABCDEFGHIJKLMNOPQRSTUVWXYZ]%d"schZoneFormatValue = list(nil ’sheet 1 ’yZone 2 ’xZone 3)
Symbol Label Variables
schSymbolLabelChoices
June 2000 505 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Sets the symbol label attributes on the Add Symbol Label form.
Each label consists of
label = list(choice text type layer purpose)
Arguments
Standard Structure
list(list( CHOICE list( TEXT TYPE LAYER_NAME PURPOSE))list( CHOICE list( TEXT TYPE LAYER_NAME PURPOSE))list( CHOICE list( TEXT TYPE LAYER_NAME PURPOSE))
choice An identifier used in forms to access this list to elect the label attributes.
text The label string.
layer The layer name used for the label.
purpose The purpose of the label.
type A dbLabelType: normalLabel , NLPLabel , ILLabel
Add Symbol Label
INV
logical label
June 2000 506 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
...)
Default File
list("instance label"list("[@instanceName]" "NLPLabel" "instance" "label"))list("device annotate"list("[@refDes]" "NLPLabel" "device" "annotate"))list("logical label"list("[@partName]" "NLPLabel" "device" "label"))list("physical label"list("[@userPartName:%:[@phyPartName]]" "NLPLabel"
"annotate" "drawing2"))list("pin name"list("{pinName}" "normalLabel" "pin" "label"))list("pin annotate"list("[@p_{pinName}]" "NLPLabel" "pin" "annotate"))list( "art instance label"list( "cdsName()" "ILLabel" "annotate" "drawing7" ))list( "art pin annotate"list( "cdsTerm(\"{pinName}\")" "ILLabel" "annotate"
"drawing8" ))list( "art device annotate"list( "cdsParam(1)" "ILLabel" "annotate" "drawing" ))
)
Symbol Pin Masters Variable
schSymbolPinMasters
June 2000 507 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Sets the direction and type of pin masters on the Add Pin form for creating a symbol pin.
The first element in the schConfig.il file lists only one entry for the number of incrementsand size.
To set the default Type to square, refer to the schSymbolPinUsage environment variable.
Standard Structure
list(list( OFFSET_INCREMENT MAX_INCREMENT_COUNT )
list( PIN_TYPElist( TERMINAL_DIRECTION PIN_MASTER )list( TERMINAL_DIRECTION PIN_MASTER )...
)...
)
Add Pin
A Y
June 2000 508 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Arguments
Example
The next code in the schConfig.il file is the type name for the pin (square, round, actHi,commActLo, ieeeActLo, block) that appears as Type on the form, plus the pin direction asdescribed by CDBA.
schSymbolPinMasters = list(list(0.03125 32)list("square"
list("input" list("basic" "sympin" "symbolNN"))list("output" list("basic" "sympin" "symbolNN"))list("inputOutput" list("basic" "sympin" "symbolNN"))list("switch" list("basic" "sympin" "symbolNN")))
list("round"list("input" list("basic" "circle" "symbol"))list("output" list("basic" "circle" "symbol"))list("inputOutput" list("basic" "circle" "symbol"))list("switch" list("basic" "circle" "symbol")))...
)
OFFSET_INCREMENT Defines the basis unit of the label offset increment.
MAX_INCREMENT_COUNT Defines the maximum basis units a label can be offsetby the user. Controls the maximum value of amaximum increment slider on the user interface form.
PIN_TYPE The pin type as appeared on the user interface form.Each pin type can have pins of different directions.
TERMINAL_DIRECTION The CDBA terminal direction
PIN_MASTER Each PIN_MASTER value is a list of three elementsthat define the library, cell, and view names of a pinmaster.
June 2000 509 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Customizing Text-to-Symbol Generator (TSG) Variablesfor Form Fields
The following IL variables describe the “indirection map” used by the schematic composeruser interface. You can customize these public global SKILL variables used on commandforms. These variables are stored in the schConfig.il file.
To edit these variables, you need to open the configuration file.
Pin Master Connections Variable
tsgConnectorMasters
This IL structure describes the “indirection map” used by tsg to provide a simplifiedapproach for selecting the pin connectors to be used during symbol generation.
Put choices for the symbol generator “pin connector” here. Each entry contains a pinconnector name followed by a cellview specification for each direction. The pin connectorname is used on the user interface form. The cellview should contain the graphics for just thepin connector, not the pin stub or the clock and negative indicators.
Standard Structure
list(list(PIN_TYPE
list( TERMINAL_DIRECTION PIN_MASTER )list( TERMINAL_DIRECTION PIN_MASTER )...
)...
)
Symbol Form Field Description Variable Name
pin connection type tsgConnectorMasters
symbol pin graphic characteristics tsgPinGraphicMasters
default tsgTemplateType tsgTemplateMasters
June 2000 510 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Arguments
Standard Structure
tsgConnectorMasters = list(list("square"
list("input" list("basic" "sympin" "symbolNN"))list("output" list("basic" "sympin" "symbolNN"))list("inputOutput" list("basic" "sympin" "symbolNN"))list("switch" list("basic" "sympin" "symbolNN")))
list("circle"list("input" list("basic" "circle" "symbol"))list("output" list("basic" "circle" "symbol"))list("inputOutput" list("basic" "circle" "symbol"))list("switch" list("basic" "circle" "symbol")))
list("block"list("input" list("basic" "blockipin" "symbol"))list("output" list("basic" "blockopin" "symbol"))list("inputOutput" list("basic" "blockiopin" "symbol"))list("switch" list("basic" "blockiopin" "symbol")))
)
Symbol Pin Characteristics Variable
tsgPinGraphicMasters
This IL structure describes the “indirection map” used by TSG to provide a simplifiedapproach for selecting the pin graphics to be used during symbol generation.
Standard Structure
list(list( PIN_TYPE
list( TERMINAL_DIRECTION PIN_GRAPHIC )
PIN_TYPE The pin type as it appeared on the user interface form.Each pin type can have pins of different directions asdefined by the lists that follow it.
TERMINAL_DIRECTION The CDBA terminal direction.
PIN_MASTER A list of three elements that define the library, cell, andview names of a pin master.
June 2000 511 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
list( TERMINAL_DIRECTION PIN_GRAPHIC )...
)...
)
Arguments
Example
tsgPinGraphicMasters = list(list("actHi"
list("input" nil)list("output" nil)list("inputOutput" nil)list("switch" nil))
list("actLo"list("input" list("basic" "tsgActLo" "symbol"))list("output" list("basic" "tsgActLo" "symbol")). . .
Template Masters Variables
tsgTemplateMasters
This IL structure contains a list of tsgType/tsgTemplateFile pairs. EachtsgTemplateFile contains a different set of defaults for use by TSG when creatingsymbols. The environment variable tsgTemplateType is associated with the initializationof the default tsgType .
tsgTemplateMasters = list(list("digital" (prependInstallPath "samples/symbolGen/
PIN_TYPE The pin graphic types as they appeared on the userinterface form. Each pin type can have pin graphics ofdifferent directions.
TERMINAL_DIRECTION The CDBA terminal direction.
PIN_GRAPHIC A list of three elements that define the library, cell, andview names of a pin graphic master such as a clock ornegative indicator. A nil entry indicates there are nographics for this type.
June 2000 512 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
default.tsg"))list("analog” (prependInstallPath "samples/symbolGen/
analog.tag"))list("artist" (prependInstallPath "samples/symbolGen/
artist.tsg"))list("PCB" (prependInstallPath "samples/symbolGen/
package.tsg"))list("metric" (prependInstallPath "samples/symbolGen/
metric.tsg")))
You can customize the four default TSG template masters in the schConfig.il file, or youcan create a new TSG template file that contains the current settings within the SymbolGeneration options form.
To customize template master variables, do the following:
1. Open the schConfig.il file and search for the tsgTemplateMasters section.
2. Edit the template masters or copy one of the four template masters to use as a newtemplate master.
The system uses the tsgTemplateType environment variable to determine whichtemplate file to use.
Customizing HDL Variables for Form Fields
Use the following variables for customizing form fields for HDL.
Edit After Error Variable
schHdlEditAfterError
Edits Affirma™ Verilog®-A or Verilog simulator descriptions again if a syntax error is found.
Examples
schHdlEditAfterError = nilschHdlEditAfterError = t
Update Symbol After Edit Variable
schHdlUpdateSymbolAfterEdit
June 2000 513 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
After you edit Verilog or Affirma Verilog-A text, the symbol associated with the cell isconditionally updated to match the pinout of the Verilog module. A flag that controls theupdating of the symbol can be set to one of three values:
t : If required, update symbol after editingnil : Don’t update symbol after editing"query" : Display dialog box, asking if you want symbol
Example
updatedschHdlUpdateSymbolAfterEdit = "query"
Cross View Check Variable
schHdlCrossViewCheck
Enables or disables cross-view checking after editing Verilog or Affirma Spectre® HDL. Ifturned on, cross-view checks are performed after editing Verilog or Spectre HDL.
Examples
schHdlCrossViewCheck = nil ; disable xview checksschHdlCrossViewCheck = t
Cross View String Variable
schHdlCrossViewString
If cross-view checking is turned on, all views are checked against the edited view. UseschHdlCrossViewString to specify a particular set of views to check. A nil value or“” checks all views.
Examples
schHdlCrossViewString = "schematic symbol"schHdlCrossViewString = ""
Printing Variable
schHdlPrintCommand
The UNIX command used by the Design – Printmenu item in the Verilog or Spectre HDL viewwindow.
June 2000 514 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Examples
schHdlPrintCommand = "lw -Plw1"schHdlPrintCommand = "lpr"
Verbose Variable
schHdlVerbose
Prints out diagnostic messages while the Verilog text is parsed and processed. This is atristate flag:
t | nil | "all"
If hdlVerbose is set to all , a detailed description of the pseudoschematic isdisplayed in the CIW. The output can be quite lengthy.
Examples
schHdlVerbose = tschHdlVerbose = nil
June 2000 515 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
No Hierarchy Variable
schHdlNoHierarchy
This flag turns the mixed text-graphics feature on and off. If the flag is set, instanceinformation is ignored when the Verilog text is postprocessed. Verilog descriptions editedwhen this flag is set can be used only as leaf cells in a netlist.
Examples
schHdlNoHierarchy = tschHdlNoHierarchy = nil
Net to Port Variable
schHdlNetToInputPort
schHdlNetToInoutPort
Port direction for instantiated Verilog modules is inferred by their connection to primary I/O orinternal registers. The following variables map the inferred port type (input or inout) to theconnecting net type. All other nets are assumed to be connected to instance output ports. Thevalid values in the list are reg , time , integer , real , expression , net , and unknown .
Examples
schHdlNetToInoutPort = ‘("net")
Default File
schHdlNetToInputPort = list(reg time integer real expression)schHdlNetToInoutPort = nil
Customizing the Plot Configuration
Most of the choices for the cyclic fields on the Plot Options form are set in the display resourcefile, called the cdsplotinit file, which you can edit. This file is the foundation plotter modeldata base for Cadence Design Systems plot software. This file builds site specific.cdsplotinit files.
June 2000 516 Product Version 4.4.6
Virtuoso Schematic Composer User GuideCustomizing the Schematic Composer
Caution
You must create a site-specific version of the cdsplotinit file and locate itin your_install_dir/tools/plot, your working directory, or your homedirectory.
A read-only version of the cdsplotinit file is located in your_install_dir /tools/plot/etc/cdsplotinit . You can copy this file to your working directory or your homedirectory and then edit it. You can edit the following specifications:
■ Type and name of plotter
■ Paper size
■ Page orientation
■ Page size
■ Resolution
June 2000 517 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
AEnvironment Variables
Appendix A describes the following environment variables:
■ Window Environment Variables on page 524
❑ schDisplayDepth on page 524
❑ schDrawAxesOn on page 525
❑ schDynamicHilightOn on page 525
❑ schGridMultiple on page 525
❑ schGridSpacing on page 526
❑ schGridType on page 526
❑ schMaxDragFig on page 527
❑ schPathType on page 527
❑ schShowDirectConnects on page 527
❑ schShowLabelOrigin on page 528
❑ schSnapSpacing on page 528
❑ schWindowBBox on page 529
❑ symDisplayDepth on page 529
❑ symDrawAxesOn on page 529
❑ symDynamicHilightOn on page 530
❑ symGridMultiple on page 530
❑ symGridSpacing on page 531
❑ symGridType on page 531
❑ symMaxDragFig on page 531
June 2000 518 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
❑ symPathType on page 532
❑ symShowDirectConnects on page 532
❑ symShowLabelOrigin on page 532
❑ symSnapSpacing on page 533
❑ symWindowBBox on page 533
❑ viewNameList on page 534
■ Schematic Environment Variables on page 534
❑ autoDot on page 534
❑ blockDirRules on page 535
❑ broadcast on page 535
❑ browserType on page 535
❑ checkAlways on page 536
❑ checkBeepOn on page 536
❑ checkHierSave on page 537
❑ checkSymTime on page 537
❑ compBackTrace on page 538
❑ condOp on page 538
❑ createCvOptions on page 539
❑ createInstResetCDF on page 539
❑ createInstShowCDF on page 540
❑ createLabelFontHeight on page 540
❑ createLabelFontStyle on page 540
❑ createLabelHorzOffset on page 541
❑ createLabelHorzPosition on page 541
❑ createLabelHorzRotation on page 541
❑ createLabelJustify on page 542
❑ createLabelOffsetMode on page 542
June 2000 519 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
❑ createLabelVertOffset on page 543
❑ createLabelVertPosition on page 543
❑ createLabelVertRotation on page 543
❑ cvDisplay on page 544
❑ defaultsFile on page 544
❑ defWideWireWidth on page 545
❑ descendSheet on page 545
❑ descendTarget on page 545
❑ dotOverlap on page 546
❑ drawMode on page 546
❑ drawModeRoute on page 547
❑ echoToCIW on page 547
❑ editPropShowCDF on page 547
❑ editPropShowSystem on page 548
❑ editPropShowUser on page 548
❑ findZoomButton on page 549
❑ gravityOn on page 549
❑ libList on page 549
❑ markerSeverity on page 550
❑ markerShowIgnore on page 550
❑ markerZoom on page 551
❑ maxLabelOffsetUU on page 551
❑ minMarkerSize on page 551
❑ modalCommands on page 552
❑ netExprDisplay on page 552
❑ netNameMethod on page 553
❑ netNamePrefix on page 553
June 2000 520 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
❑ netNameRangeDescend on page 553
❑ netNameSeparator on page 554
❑ noteFontHeight on page 554
❑ noteFontStyle on page 555
❑ noteJustify on page 555
❑ noteShape on page 555
❑ noteShapeLineStyle on page 556
❑ pinBackTrace on page 556
❑ pinNameSeed on page 557
❑ pinRefDuplicates on page 557
❑ pinRefFormat on page 557
❑ pinRefSorting on page 558
❑ replSaveChanges on page 558
❑ runSRC on page 559
❑ runVIC on page 559
❑ saveAction on page 559
❑ schematicAreaPartialSelect on page 560
❑ schematicSelectFilter on page 560
❑ sensitiveMenu on page 561
❑ shapeLineType on page 561
❑ shapeLineWidth on page 561
❑ simProbeFormat on page 562
❑ simProbeType on page 562
❑ snapEnabled on page 563
❑ spanLib on page 563
❑ srcConnByName on page 563
❑ srcFloatingBIDIR on page 564
June 2000 521 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
❑ srcFloatingInput on page 564
❑ srcFloatingIO on page 565
❑ srcFloatingNets on page 565
❑ srcFloatingOutput on page 565
❑ srcInheritedConnCheck on page 566
❑ srcInstNameExpr on page 566
❑ srcInstNameSyntax on page 567
❑ srcInstOverlap on page 567
❑ srcInstOverlapValue on page 567
❑ srcMaxLabelOffset on page 568
❑ srcNameCollision on page 568
❑ srcNetNameExpr on page 569
❑ srcNetNameSyntax on page 569
❑ srcNoOverrideNet on page 569
❑ srcOffsheetConnCheck on page 570
❑ srcPinNetCollision on page 570
❑ srcShortedOutputs on page 571
❑ srcSolderOnCrossover on page 571
❑ srcTermNameExpr on page 571
❑ srcTermNameSyntax on page 572
❑ srcUnconnectedWires on page 572
❑ srcVerilogSyntax on page 573
❑ srcVHDLSyntax on page 573
❑ ssgSortPins on page 573
❑ statusBanner on page 574
❑ statusBannerXY on page 574
❑ stickyWireLabelRange on page 575
June 2000 522 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
❑ symbolAreaPartialSelect on page 575
❑ symbolLabelChoiceText on page 575
❑ symbolLabelFontHeight on page 576
❑ symbolLabelFontStyle on page 576
❑ symbolLabelJustify on page 577
❑ symbolLabelType on page 577
❑ symbolPinFlatten on page 577
❑ symbolPinIncrCount on page 578
❑ symbolPinLocate on page 578
❑ symbolPinUsage on page 579
❑ symbolSelectFilter on page 579
❑ symbolShape on page 579
❑ symbolShapeFillStyle on page 580
❑ transToSheetType on page 580
❑ tsgTemplateType on page 580
❑ updateConn on page 581
❑ vicExactPinMatch on page 582
❑ vicInheritedPins on page 582
❑ vicInheritedPinsMatch on page 582
❑ vicSeverity on page 583
❑ vicViewList on page 583
❑ wireBackTrace on page 584
❑ zoomOutButton on page 584
June 2000 523 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
Window Environment Variables
This section describes the schematic environment variables that control properties forschematic and symbol editor windows, including the properties that control the grid displayand snap spacing.
In earlier releases, the properties associated with a schematic or symbol editor window hadto be defined as part of the data in a library. Although the process lets you define propertyvalues that were data specific, the setup was complex and could not be customized.
You can use the schematic window environment variables described in this section tocustomize the window displays, grid controls, and sizes for both the schematic and symboleditors. You can control the behavior of the editor windows by
■ Specifying the option on either the display and grid options form
■ Specifying the corresponding environment variable as an argument for the schGetEnvand schSetEnv procedural interface functions
■ Specifying the corresponding environment variable value in your startup .cdsenv file
Note: The system writes to the .cdsenv file automatically whenever you use theOptions – Save Defaults command; if the file already exists, the system prompts you tooverwrite the file.
schDisplayDepth
Specifies the display depth for the graphics editor. A value of 0 specifies that none of thegraphics are to be rendered. Instead, a bounding box is drawn with the name of the symbol.
Type integer
Value(s) 0 - 20
Default 3
Command(s) n/a
Form(s) n/a
Form Field n/a
June 2000 524 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schDrawAxesOn
Specifies whether the schematic editor displays the X and Y axes when you view or edit aschematic view.
schDynamicHilightOn
Specifies whether the schematic editor dynamically highlights the items that it will selectwhen you click on them. When t , the editor highlights the items with a dashed outline as youmove the cursor over objects in your design.
schGridMultiple
When the grid type is either dotted or line, this value specifies the number of grids betweenmajor grids.
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
Form(s) Display Options
Form Field Axes On
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Display
Form(s) Display Options
Form Field Dynamic Highlighting
Type integer
Value(s) any positive number
Default 8
June 2000 525 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schGridSpacing
Specifies the distance between grids.
schGridType
Specifies the type of grid to display when you view or edit schematics.
Command(s) Options – Display
Form(s) Display Options
Form Field Grid Multiple
Type float
Value(s) n/a
Default 0.125 (assumes inches)
Command(s) Options – Display
Form(s) Display Options
Form Field Snap Spacing
Type cyclic
Value(s) “none” “dotted” “line”
Default “dotted”
Command(s) Options – Display
Form(s) Display Options
Form Field Grid Type
June 2000 526 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schMaxDragFig
Specifies the maximum number of figures that will be rendered during dragging. If draggingobjects would result in rendering more than this number of objects, a bounding box is draggedinstead.
schPathType
Specifies how the schematic editor renders wide wires. For example, you might want to seeonly the centerline.
schShowDirectConnects
When enabled, the editor highlights the direct connections from pin to pin.
Type integer
Value(s) n/a
Default 100
Command(s) Options – Display
Form(s) Display Options
Form Field Drag Limit
Type cyclic
Value(s) “full” “outline” “centerline”
Default “full”
Command(s) n/a
Form(s) n/a
Form Field n/a
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
June 2000 527 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schShowLabelOrigin
Specifies whether the origin of text in the schematic editor (wire names, pin names, note text,and so forth) is highlighted by a small crosshair. This is useful for precise locating of names.
schSnapSpacing
Specifies the minimum distance that the cursor moves. The default distance (0.0625) is equalto half the default grid spacing distance (0.125).
Form(s) Display Options
Form Field Show Direct Connection
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
Form(s) Display Options
Form Field Show Text Justification
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Options – Display
Form(s) Display Options
Form Field Snap Spacing
June 2000 528 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schWindowBBox
Specifies the window coordinates that the schematic editor uses when creating a window.The lower left and upper right coordinates are specified in screen pixels.
symDisplayDepth
Specifies the display depth for the graphics editor. A value of 0 specifies that none of thegraphics are to be rendered. Instead, a bounding box is drawn with the name of the symbol.
symDrawAxesOn
Specifies whether the symbol editor displays the X and Y axes when you view or edit a symbolview.
Type string
Value(s) “((120 185) (1020 875))”
Default n/a
Command(s) n/a
Form(s) n/a
Form Field n/a
Type integer
Value(s) n/a
Default 3
Command(s) n/a
Form(s) n/a
Form Field n/a
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
June 2000 529 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symDynamicHilightOn
Specifies whether the symbol editor dynamically highlights the items that it will select whenyou click the left mouse button. When t , the editor highlights the items with a dashed outlineas you move the cursor over objects in your design.
symGridMultiple
When the grid type is either dotted or line, this value specifies the number of grids betweenmajor grids.
Form(s) Display Options
Form Field Axes On
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Display
Form(s) Display Options
Form Field Dynamic Highlighting
Type integer
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Options – Display
Form(s) Display Options
Form Field Grid Multiple
June 2000 530 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symGridSpacing
Specifies the distance between minor grids.
symGridType
Specifies the type of grid to display when you view or edit symbols.
symMaxDragFig
Specifies the maximum number of figures that will be rendered during dragging. If draggingobjects would result in rendering more than this number of objects, a bounding box is draggedinstead.
Type float
Value(s) n/a
Default 0.125 (assumes inches)
Command(s) Display – Options – Display
Form(s) Display Options
Form Field Snap Spacing
Type cyclic
Value(s) “none” “dotted” “line”
Default “dotted”
Command(s) Display – Options – Display
Form(s) Display Options
Form Field Grid Type
Type integer
Value(s) n/a
Default 100
Command(s) Display – Options – Display
June 2000 531 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symPathType
Specifies how the schematic editor renders wide wires. For example, you might want to seeonly the centerline.
symShowDirectConnects
When enabled, the editor highlights the direct connections from pin to pin.
symShowLabelOrigin
Specifies whether the origin of text in the schematic editor (wire names, pin names, note text,and so forth) is highlighted by a small crosshair. This is useful for precise locating of names.
Form(s) Display Options
Form Field Drag Limit
Type cyclic
Value(s) “full” “outline” “centerline”
Default “full”
Command(s) n/a
Form(s) n/a
Form Field n/a
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
Form(s) Display Options
Form Field Show Direct Connection
Type Boolean
June 2000 532 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symSnapSpacing
Specifies the minimum distance that the cursor moves. The default distance (0.0625) is equalto half the default grid spacing distance (0.125).
symWindowBBox
Specifies the window coordinates that the schematic editor uses when creating a window.The lower left and upper right coordinates are specified in screen pixels.
Value(s) t, nil
Default nil
Command(s) Options – Display
Form(s) Display Options
Form Field Show Text Justification
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Options – Display
Form(s) Display Options
Form Field Snap Spacing
Type string
Value(s) “((120 185) (1020 875))”
Default n/a
Command(s) n/a
Form(s) n/a
Form Field n/a
June 2000 533 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
viewNameList
Specifies the default view name list to place on schematic and symbol editor windows. Theview name list controls how hierarchy traversal should expand the design except in the casewhere a schematic is in the context of a hierarchy configuration.
Schematic Environment Variables
This section describes the schematic environment variables. You can use these variables tocontrol the behavior of many schematic and symbol editor commands. You can control thebehavior of an editor command by
■ Specifying an option on the corresponding options form
■ Specifying the corresponding environment variable as an argument for the schGetEnvand schSetEnv procedural interface functions
■ Specifying the corresponding environment variable value in your startup .cdsenv file
Note: The system writes to the .cdsenv file automatically whenever you use theOptions – Save Defaults command; if the file already exists, the system prompts you tooverwrite the file.
autoDot
Specifies whether the editor automatically generates a solder dot for three-wireT-intersections or intersections that include either angled wires or flight lines.
Type string
Value(s) n/a
Default “schematic symbol”
Command(s) n/a
Form(s) n/a
Form Field n/a
Type Boolean
Value(s) t, nil
Default t
June 2000 534 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
blockDirRules
Specifies the rule for setting the direction of the new pins that the system createsautomatically when you edit a block.
broadcast
Specifies whether cross-selection is broadcast.
browserType
Specifies which browser you access when the Add Instance command is active.
Command(s) Options – Editor
Form(s) Editor Options
Form Field Solder Dots Created Automatically
Type cyclic
Value(s) “edge” “order of entry”
Default “edge”
Command(s) Options – Editor
Form(s) Editor Options
Form Field Block Pin Direction Rule
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Editor
Form(s) Editor Options
Form Field Enable Cross Section
Type string
June 2000 535 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
checkAlways
Specifies whether the editor checks all schematics encountered during traversal or only thosethat have been modified.
checkBeepOn
Specifies whether the system beeps after every save and check-in. If set to t , the systembeeps even if there is no error or warning message. The benefit of turning this option on is tolet you know when the check is complete. If set to nil , the system restores the behavior torelease 4.3.x (the system beeps only when an error or warning is found).
Value(s) “library” “component”
Default “library”
Command(s) Options – Editor
Form(s) Editor Options
Form Field Browser Type
Type Boolean
Value(s) t, nil
Default nil
Command(s) Check – Hierarchy
Check – Options
Form(s) Check Hierarchy
Schematic Check Options
Form Field(s) Process
From a Multisheet Index, Check
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Options
June 2000 536 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
checkHierSave
Specifies whether the system saves schematics as they are processed during a hierarchicalcheck. When nil , schematics are not saved during processing, which allows you to save ordiscard the edits manually. When t , schematics containing zero errors are automaticallysaved. For those schematics that do contain errors, whether they are saved is based on thevalue of the saveAction variable.
checkSymTime
Specifies whether the system runs a consistency check of the symbol masters and specifiesthe level of the check. When you specify a level of 0, the system does not run a consistencycheck. When you specify a level of 1 to 3, the system attempts to run the specified checkduring loading. A level 2 check attempts to run the level 1 check first. A level 3 check attemptsto run both the level 1 and level 2 checks first.
When you set the value of this variable to 1, the system generates a warning when the valueof a symbol’s instancesLastChanged property is newer than the schematic’sinstancesLastChanged property.
When you set the value of this variable to 2, the system generates a warning when the valueof the symbol’s UNIX file modification time stamp is newer than the schematic’s. The systemdoes not run this check if the level 1 check fails.
When you set the value of this variable to 3, the system generates a warning when the valueof the symbol’s check-in time stamp is newer than the value of the schematic’s
Form(s) Schematic Check Options
Form Field Beep When 0 Errors/Warnings
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Hierarchy
Form(s) Check Hierarchy
Form Field Save Schematics
June 2000 537 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
instancesLastChanged property. The system does not run this check if either the level 1 orlevel 2 check fails.
compBackTrace
Specifies whether routing should backtrace to components when you stretch an object.
condOp
Specifies the conditional operator for the Find and Replace commands.
Type integer
Value(s) 0, 1, 2, 3
Default 1
Command(s) n/a
Form(s) n/a
Form Field n/a
Type Boolean
Value(s) t, nil
Default t
Command(s) Edit – Stretch
Form(s) Stretch
Form Field Back Trace Wire From
Type cyclic
Value(s) “==” “!=” “<“ “>” “<=” “>=”
Default “==”
Command(s) Edit – Search – Find
Edit – Search – Replace
Form(s) Schematic Find
June 2000 538 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
createCvOptions
Specifies whether the Create Cellviewcommands display an options form that is specific to thedestination cellview.
createInstResetCDF
Specifies whether the Add Instance command retains the current effective CDF values for acomponent when the same component is placed at a later time. If set to t , the editor CDFresets the CDF values to their default settings when you start the Add Instance command.
Schematic Replace
Symbol Find
Symbol Replace
Form Field Search For/Replace With
Type Boolean
Value(s) t, nil
Default t
Command(s) Design – Create Cellview – From Cellview
Design – Create Cellview – From Pin List
Form(s) Cellview From Cellview
Cellview From Pin List
Form Field Edit Options
Type Boolean
Value(s) t, nil
Default t
Command(s) Add – Component
Form(s) n/a
Form Field n/a
June 2000 539 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
createInstShowCDF
Specifies whether the Add Instance form appears when the component you want to addcontains CDF parameters.
createLabelFontHeight
Specifies a value (in user units) for the font height for the wire names that you add with theAdd Wire Name command.
createLabelFontStyle
Specifies a font for the wire names that you add with the Add Wire Name command.
Type Boolean
Value(s) t, nil
Default t
Command(s) Add – Component
Form(s) n/a
Form Field n/a
Type float
Value(s) n/a
Default 0.625 (assumes inches)
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Font Height
Type cyclic
Value(s) “euroStyle” “gothic” “math” “roman” “script” “stick” “fixed”“swedish” “milSpec”
Default “stick”
Command(s) Add – Wire Name
June 2000 540 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
createLabelHorzOffset
Specifies the offset distance of the wire name text in relation to a horizontal wire.
createLabelHorzPosition
Specifies the position of the wire name text in relation to a horizontal wire.
createLabelHorzRotation
Specifies the orientation of the wire name text in relation to a horizontal wire.
Form(s) Add Wire Name
Form Field Font Style
Type float
Value(s) n/a
Default 0.045 (assumes inches)
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Horizontal/Text Offset
Type cyclic
Value(s) “above” “below”
Default “above”
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Horizontal/Text Position
Type cyclic
Value(s) “R0” “R90”
June 2000 541 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
createLabelJustify
Specifies the justification for the wire name text.
createLabelOffsetMode
Specifies the wire name Entry Stylemode. When set to t , the mode is fixed offset. When set tonil , the mode is manual.
Default “R0”
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Horizontal/Text Rotation
Type cyclic
Value(s) “unknown” “upperLeft” “centerLeft” “lowerLeft” “upperCenter”“centerCenter” “lowerCenter” “upperRight” “centerRight”“lowerRight”
Default “lowerCenter”
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Justification
Type Boolean
Value(s) t, nil
Default t
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Entry Style
June 2000 542 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
createLabelVertOffset
Specifies the location of the wire name text in relation to a vertical wire.
createLabelVertPosition
Specifies the position of the wire name text in relation to a vertical wire.
createLabelVertRotation
Specifies the orientation of the wire name text in relation to a vertical wire.
Type float
Value(s) n/a
Default 0.045 (assumes inches)
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Vertical/Text Offset
Type cyclic
Value(s) “left” “right”
Default “left”
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Vertical/Text Position
Type cyclic
Value(s) “R0” “R90”
Default “R90”
Command(s) Add – Wire Name
Form(s) Add Wire Name
Form Field Vertical/Text Rotation
June 2000 543 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
cvDisplay
Specifies whether the system displays a new cellview in a window when you complete theCreate – Cellview command.
defaultsFile
Specifies which file the editor accesses when loading or dumping the schematic environmentvariables.
Type Boolean
Value(s) t, nil
Default t
Command(s) Design – Create Cellview – From Cellview
Design – Create Cellview – Pin List
Form(s) Cellview From Cellview
Cellview From Pin List
Form Field Display Cellview
Type string
Value(s) n/a
Default “.cdsenv”
Command(s) Options – Load Defaults
Options – Save Defaults
Form(s) Load Schematic Defaults
Save Schematic Defaults
Form Field File Name
June 2000 544 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
defWideWireWidth
Specifies a value for the width of wires and flight lines that you create with the Add Wirecommand. The value must be greater than 0.0 and specified in user units.
descendSheet
Specifies the type of sheet to descend into when descending into a level that expands to amultisheet schematic.
descendTarget
Specifies whether the editor descends automatically when you start a Descend command.
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Add – Wire {narrow, wide}
Form(s) Add Wire
Form Field Width
Type string
Value(s) “index” “sheet”
Default “sheet”
Command(s) Design – Hierarchy – Descend Edit
Form(s) Descend
Form Field schDescendSheetNum
Type string
Value(s) “query user” “use viewNameList”
Default “query user”
Command(s) Design – Hierarchy – Descend
June 2000 545 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
dotOverlap
Specifies the value for automatically generated solder dots that overlap wires at a wireintersection. The value must be specified in user units.
drawMode
Specifies the drawing mode for the Shapecommands.
Design – Hierarchy – Descend Edit
Design – Hierarchy – Descend Read
Form(s) Descend
Form Field Target Cellview
Type float
Value(s) n/a
Default 0.03125 (assumes inches)
Command(s) Options – Editor
Form(s) Editor Options
Form Field Amount Solder Dot Overlap Wires
Type string
Value(s) “anyAngle” “l90X” “l90Y” “l45Long” “l45Angle” (where “l” is alowercase letter “L”)
Default “anyAngle”
Command(s) Add – Note – Shape – {Line, Polygon}
Add – Shape – {Line, Polygon}
Form(s) Add Note Shape
Add Symbol Shape
Form Field Draw Mode
June 2000 546 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
drawModeRoute
Specifies the drawing mode for the Add Wire command. The difference between this anddrawMode is the route choice, which invokes the wire router when adding wires to aschematic.
echoToCIW
Causes the system to print a summary of error and warning messages to the CIW when youcheck your design. This is the same summary the system displays in the dialog box when theeditor encounters warning and error conditions during a check of your design.
editPropShowCDF
Specifies whether the CDF options field appears in the Show region of the Edit ObjectProperties form.
Type string
Value(s) “route” “anyAngle” “l90X” “l90Y” “l45Long” “l45Angle” (where “l”is a lowercase letter “L”)
Default “route”
Command(s) Add − Wire {narrow, wide}
Form(s) Add Wire
Form Field Draw Mode
Type Boolean
Value(s) t, nil
Default t
Command(s) Check
Form(s) n/a
Form Field n/a
Type toggle
Value(s) t, nil
June 2000 547 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
editPropShowSystem
Specifies whether the System options field appears in the Show region of the Edit ObjectProperties form.
editPropShowUser
Specifies whether the User options field appears in the Show region of the Edit ObjectProperties form.
Default t
Command(s) Edit – Properties – Object
Form(s) Edit Object Properties
Form Field Show CDF
Type toggle
Value(s) t, nil
Default nil
Command(s) Edit – Properties – Object
Edit – Properties – Cellview
Form(s) Edit Object Properties
Edit CellView Properties
Form Field Show System
Type toggle
Value(s) t, nil
Default t
Command(s) Edit – Properties – Object
Edit – Properties – Cellview
Form(s) Edit Object Properties
Edit CellView Properties
June 2000 548 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
findZoomButton
Specifies whether the editor zooms into an object that matches the pattern specified in theFind command.
gravityOn
Specifies whether the cursor snaps to instance pins when you use the Add Wire command.
libList
Specifies a list of libraries the editor processes during hierarchical checking when theenvironment variable spanLib is set to check.
Form Field Show User
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit – Search – Find
Form(s) Schematic Find
Symbol Find
Form Field Zoom To Figure
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Editor
Form(s) Editor Options
Form Field Gravity
Type string
June 2000 549 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
markerSeverity
Specifies a search based on marker severity level.
markerShowIgnore
Specifies whether the Find Marker form displays markers that have the ignoreproperty set.
Value(s) n/a
Default “ ”
Command(s) Check – Hierarchy
Form(s) Check Hierarchy
Form Field Reference Libraries
Type string
Value(s) “all” “error” “warning”
Default “all”
Command(s) Check – Find Marker
Form(s) Find Marker
Form Field Severity
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Find Marker
Form(s) Find Marker
Form Field Show Ignore
June 2000 550 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
markerZoom
Specifies whether the Find Marker command zooms to the current marker.
maxLabelOffsetUU
Specifies the maximum distance between a label and a wire. During schematic loading andconnectivity extraction, any unglued wire names whose control point is within this distance ofa wire is automatically glued to the wire. During SRC, this value is used in the maxLabelOffsetcheck to flag any wire name that is farther than this distance from any wire whether or not thename is glued to the wire.
minMarkerSize
Specifies a value for the minimum marker size. The value is specified in user units.
Type Boolean
Value(s) t, nil
Default nil
Command(s) Check – Find Marker
Form(s) Find Marker
Form Field Zoom to Markers
Type float
Value(s) n/a
Default 0.045 (assumes inches)
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Check
Form Field Maximum Label Distance From Wire
Type float
Value(s) n/a
Default 0.05 (assumes inches)
June 2000 551 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
modalCommands
Specifies whether commands stay active until explicitly cancelled by pressing the Esc key orby starting another command.
netExprDisplay
Specifies how to display inherited connection values. The value is what the connectionresolves to; if it is overridden at a higher level in the hierarchy, the full path to a local signalmight be displayed.
Command(s) Options – Editor
Form(s) Editor Options
Form Field Minimum Marker Size
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Editor
Form(s) Editor Options
Form Field Modal Commands
Type cyclic
Value(s) “value only” “value (default)” “value (property)” “value(expression)” “expression only”
Default “value only”
Command(s) Options – Display
Form(s) Display Options
Form Field Net Expression Display
June 2000 552 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
netNameMethod
Specifies which naming mechanism the editor uses for system-generated net names duringconnectivity extraction.
netNamePrefix
Specifies the prefix string for the net names that the editor generates during connectivityextraction.
netNameRangeDescend
Specifies whether the range specification in system-generated buses is descending. Whenthe value is nil (default), system generated buses are ascending.
Type cyclic
Value(s) “prefix” “derived”
Default “prefix”
Command(s) Options – Editor
Form(s) Editor Options
Form Field Net Name Method
Type string
Value(s) n/a
Default “net”
Command(s) Options – Editor
Form(s) Editor Options
Form Field Net Name Prefix
Type Boolean
Value(s) t, nil
Default nil
Command(s) Option – Editor
June 2000 553 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
netNameSeparator
Specifies the name separator for net names that the editor generates during connectivityextraction if the value of netNameMethod is derived.
noteFontHeight
Specifies a font height for the text you add to your design using theAdd – Note – Textcommand.
Form(s) Editor Options
Form Field Bus Range Order
Type string
Value(s) n/a
Default “_”
Command(s) Options – Editor
Form(s) Editor Options
Form Field Net Name Separator
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Add – Note – Text
Form(s) Add Note Text
Form Field Font Height
June 2000 554 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
noteFontStyle
Specifies a font for the text you add to your design using theAdd – Note – Textcommand.
noteJustify
Specifies the justification for the text you add to your design using theAdd – Note – Textcommand.
noteShape
Specifies the shape for a note that you add to your design using theAdd – Note – Shapecommand.
Type cyclic
Value(s) “euroStyle” “gothic” “math” “roman” “script” “stick” “fixed”“swedish” “milSpec”
Default “stick”
Command(s) Add – Note – Text
Form(s) Add Note Text
Form Field Font Style
Type cyclic
Value(s) “upperLeft” “centerLeft” “lowerLeft” “upperCenter”“centerCenter” “lowerCenter” “upperRight”“centerRight” “lowerRight”
Default “lowerCenter”
Command(s) Add – Note – Text
Form(s) Add Note Text
Form Field Justification
Type cyclic
Value(s) “line” “rectangle” “polygon” “circle” “ellipse” “arc”
June 2000 555 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
noteShapeLineStyle
Specifies the line style that the editor uses to draw a note shape.
pinBackTrace
Specifies whether the editor stretches the wires connected to a pin when you stretch a pin.
Default “line”
Command(s) Add – Note – Shape
Form(s) Add Note Shape
Form Field Shape
Type cyclic
Value(s) “solid” “dashed”
Default “solid”
Command(s) Add – Note – Shape
Form(s) Add Note Shape
Form Field Line Style
Type Boolean
Value(s) t, nil
Default t
Command(s) Edit – Stretch
Form(s) Stretch
Form Field Back Trace Wire From
June 2000 556 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
pinNameSeed
Specifies the pin name prefix the editor uses when automatically creating new pins for blocksyou add to your design.
pinRefDuplicates
Specifies whether the editor reports duplicate pin references found within one zone of amultisheet schematic.
pinRefFormat
Specifies the format for displaying the pin reference information that appears next to each pinwhen you use the Cross Reference command.
Type string
Value(s) n/a
Default “pin”
Command(s) Add – Block
Form(s) Add Block
Form Field Pin Name Seed
Type Boolean
Value(s) t, nil
Default t
Command(s) Sheet – Cross Reference
Form(s) Cross Reference Options
Form Field Show Duplicate Zones
Type string
Value(s) n/a
Default “<sheetnumber><zone><referenceName>”
Command(s) Sheet – Cross Reference
June 2000 557 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
pinRefSorting
Specifies how the editor sorts pin references when you use the Cross Reference command.
replSaveChanges
Specifies whether the editor saves changes when you complete the Replace command andyour design is in multiple-cellview mode (for example, hierarchy or library).
Form(s) Cross Reference Options
Form Field Format String
Type string
Value(s) “Direction” “Sheet Number”
Default “Sheet Number”
Command(s) Sheet – Cross Reference
Form(s) Cross Reference Options
Form Field Sort References By
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit – Search – Replace
Form(s) Schematic Replace
Symbol Replace
Form Field Save Changes
June 2000 558 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
runSRC
Specifies whether or not to run the schematic rules checker during schematic checking.Normally, during a check, connectivity is extracted, SRC is run, and VIC is run. A value of nildisables the SRC.
runVIC
Specifies whether to run the cross-view checker during schematic checking. Normally, duringa check, connectivity is extracted, SRC is run, and VIC is run. A value of nil disables the VIC.
saveAction
Specifies what to do during hierarchical checking when checkHierSaveis t and schematicscontaining errors are encountered.
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Run the Schematic Rule Checker
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Cross View Checker Severity
Type cyclic
Value(s) “Save” “No Save” “Ask Me”
Default “Ask Me”
June 2000 559 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
schematicAreaPartialSelect
Specifies whether the system selects partial objects during area selection.
schematicSelectFilter
Specifies the selection filter setting for schematic objects.
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Check And Save Action
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit – Select – Filter
Form(s) Schematic Selection Filter
Form Field Area Partial Selection
Type string
Value(s) “wire” “pin” “instance” “noteShape” “wireName” “marker”“pinName” “noteText” “flight” “label” “allSchObj” “instanceName”“instancePin” “instancePinName” “instanceLabel” “allInstObj”
Default “allSchObj instancePin”
Command(s) Edit – Select – Filter
Form(s) Schematic Selection Filter
Form Field Schematic Objects/Instance Objects
June 2000 560 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
sensitiveMenu
Specifies whether the middle mouse button uses the object-sensitive menus or the standardpop-up menu.
shapeLineType
Specifies the line style that the editor uses to draw a note shape.
shapeLineWidth
Specifies a width for the line that the editor uses to draw a note shape.
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Display
Form(s) Display Options
Form Field Object-Sensitive Pop-Up Menus
Type string
Value(s) “solid” “dashed”
Default “solid”
Command(s) Add – Note – Shape
Add – Shape – Line
Form(s) Add Note Shape
Add Symbol Shape
Form Field Line Style
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
June 2000 561 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
simProbeFormat
Specifies how the editor displays the monitor and which simulation information the monitordisplays.
simProbeType
Specifies the simulation monitor type.
Command(s) Add – Note – Shape
Add – Shape – Line
Form(s) Add Note Shape
Add Symbol Shape
Form Field Line Width
Type string
Value(s) “<state>” “<time>:<state>” “<name>=<state>”“<name>=<time>:<state>”
Default “<state>”
Command(s) Check – Schematic Monitors – Add
Form(s) Add Simulation Monitor
Form Field Format
Type string
Value(s) “monitor” “display”
Default “monitor”
Command(s) Check – Schematic Monitors – Add
Form(s) Add Simulation Monitor
Form Field Type
June 2000 562 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
snapEnabled
Specifies whether the Add Wire command uses snap mode to complete a wire.
spanLib
Specifies whether the editor spans reference libraries when you use the Check – Hierarchycommand. You use the libList environment variable to specify the list of reference libraries.
srcConnByName
Specifies a check for naming conventions between wires and pins connected by name. Thischeck verifies identical names that exist in more than one physically disjoint group of wires orpins. A user might have inadvertently connected objects when using a name that was alreadyused elsewhere in the schematic.
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Editor
Form(s) Editor Options
Form Field Wire Snapping
Type string
Value(s) “do not check” “check”
Default “do not check”
Command(s) Check – Hierarchy
Form(s) Check Hierarchy
Form Field Reference Libraries
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
June 2000 563 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcFloatingBIDIR
Specifies the severity of the SRC signal check for floating bidirectional pins. Controls thecheck for component or schematic bidirectional pins whose signals are not driven bycomponent output pins, schematic input pins, or any other schematic I/O pins.
srcFloatingInput
Specifies the severity of the SRC signal check for floating inputs. Controls the check forcomponent input pins and schematic output pins with signals that are not driven bycomponent output pins, schematic input pins, or any schematicI/O pins.
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Connection By Name
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Floating Switch Pins
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Floating Input Pins
June 2000 564 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcFloatingIO
Specifies the severity of the SRC signal check for floating I/Os. Controls the check forcomponent or schematic input/output pins with signals that are not driven by componentoutput pins, schematic input pins, or any other schematicI/O pins.
srcFloatingNets
Specifies the severity of the SRC signal check for floating nets. Controls the check for wiresthat are not physically connected to schematic or component pins. It does not check for wiresconnected by name to schematic or instance pins.
srcFloatingOutput
Specifies the severity of the SRC signal check for floating outputs. Controls the check forcomponent output pins and schematic input pins with signals that are not driving any
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Floating I/O Pins
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Floating Nets
June 2000 565 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
component input pins, schematic output pins, or any schematicI/O pins.
srcInheritedConnCheck
Specifies the severity of the SRC inherited connection check. Controls the check for inheritedconnections.
srcInstNameExpr
Specifies the regular expression to use when the SRC instance name check is enabled.Specifies the regular expression used in the instance name check.
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Floating Output Pins
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Inherited Pin/Net Connections
Type string
Value(s) n/a
Default “ ”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
June 2000 566 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcInstNameSyntax
Specifies the severity of the SRC instance name check. Controls name-syntax checking forinstance names.
srcInstOverlap
Specifies the severity of the SRC instance overlap check. Controls the check for instancesthat overlap other instances.
srcInstOverlapValue
Specifies the overlap percentage to use when the SRC instance overlap check is enabled.When enabled, the variable specifies the amount (as a percentage of the smaller instancebounding box) that two instances can overlap.
Form Field Instance Name Expression
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Instance Name Syntax
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Overlapping Instances
Type integer
June 2000 567 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcMaxLabelOffset
Specifies the severity of the SRC maximum label offset check. Controls the check for thoselabels that are beyond a given distance from a wire.
srcNameCollision
Specifies the severity of the SRC instance and net name collision check. Controls the checkfor instance and net name collisions within the schematic.
Value(s) n/a
Default 10%
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Percent Overlap Allowed
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Maximum Label Offset
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Instance/Net Name Collision
June 2000 568 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcNetNameExpr
Specifies the regular expression to use when the SRC net name check is enabled.
srcNetNameSyntax
Specifies the severity of the SRC net name check. Controls name-syntax checking for netnames.
srcNoOverrideNet
Specifies the severity of the SRC check for missing override nets. Controls the check foroverride nets when a schematic contains override properties. If the override property is a netexpression, the SRC will try to validate the property by ensuring the default name specifies ascalar, global name. If the override property is a literal string, the SRC will first validate theproperty by ensuring it is a legal, scalar name. In both cases, the SRC will then check if a netby that name exists in the cellview.
Type string
Value(s) n/a
Default “ ”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Net Name Expression
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Net Name Syntax
Type cyclic
Value(s) “ignored” “warning” “error”
June 2000 569 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcOffsheetConnCheck
Specifies the severity of the SRC check for offsheet connectors. Controls the check foroffsheet connectors used on only one sheet in a multisheet design. It also checks for netsused locally in more than one sheet that are not connected across the sheets by an offsheetconnector.
srcPinNetCollision
Specifies the severity of the SRC check for pin/net name collisions. Controls the check forpins that are connected to nets whose wire names do not match the pin.
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Missing Override Nets
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Offsheet Connector Check
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Pin/Net Name Collision
June 2000 570 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcShortedOutputs
Specifies the severity of the SRC shorted outputs check. Controls the check for componentoutput or schematic input pins that are connected to any other component output orschematic input pins.
srcSolderOnCrossover
Specifies the severity of the SRC check for solder dots on crossovers (four or more wires atan intersection).
srcTermNameExpr
Specifies the regular expression to use when the SRC terminal name check is enabled.Specifies the regular expression used in the terminal name check.
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Shorted Output Pins
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Solder on CrossOver
Type string
Value(s) n/a
Default “ ”
June 2000 571 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcTermNameSyntax
Specifies the severity of the SRC terminal name check. Controls name-syntax checking fornet names.
srcUnconnectedWires
Specifies the severity of the SRC unconnected wires check. Controls the check for wiresegments whose endpoints do not physically connect to schematic or component pins,labels, or other wire segments.
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Pin Name Expression
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Pin Name Syntax
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Unconnected Wires
June 2000 572 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
srcVerilogSyntax
Specifies the severity of the SRC Verilog syntax name check. Controls the check for VerilogHDL syntax across all instance and signal names. This check verifies that names are validVerilog HDL identifiers and are not Verilog HDL reserved words.
srcVHDLSyntax
Specifies the severity of the SRC VHDL syntax name check. Controls the check for VHDLsyntax across all instance and signal names. This check verifies that names are valid VHDLidentifiers and are not VHDL reserved words.
ssgSortPins
Specifies how the text-to-symbol generator sorts the symbol pins for the new symbol.
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field Verilog HDL Syntax
Type cyclic
Value(s) “ignored” “warning” “error”
Default “ignored”
Command(s) Check – Rules Setup
Form(s) Setup Schematic Rules Checks
Form Field VHDL Syntax
Type cyclic
Value(s) “unknown” “alphanumeric” “geometric”
Default “alphanumeric”
June 2000 573 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
statusBanner
Specifies whether the status banner appears on all windows that contain schematic or symboldata.
statusBannerXY
Specifies whether the editor displays the X and Y coordinates in the status banner when thestatus banner is displayed.
Command(s) Options – Editor
Form(s) Editor Options
Form Field Symbol Generator Pin Sorting
Type Boolean
Value(s) t, nil
Default t
Command(s) Options – Display
Form(s) Display Options
Form Field Display Status Banner
Type Boolean
Value(s) t, nil
Default nil
Command(s) Options – Display
Form(s) Display Options
Form Field Coordinates on Status Banner
June 2000 574 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
stickyWireLabelRange
Specifies the range between the origin of a wire name and a wire segment vertex. When youreroute the wire segment using the Stretch command, the wire name remains in a relativeposition to the vertex if the wire name is within the specified range.
symbolAreaPartialSelect
Specifies whether the editor includes partially selected objects in an area selection action.
symbolLabelChoiceText
Specifies the purpose of a symbol label.
Type float
Value(s) n/a
Default 0.3125 (assumes inches)
Command(s) Edit – Stretch
Form(s) Stretch
Form Field n/a
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit – Select – Filter
Form(s) Symbol Selection Filter
Form Field Area Partial Selection
Type string
Value(s) “component label” “device annotate” “logicallabel” “physicallabel” “pin label” “pin” “annotate”
Default “ ”
Command(s) Add – Label
June 2000 575 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symbolLabelFontHeight
Specifies a value (in user units) for the font height for a label that you add with the Add – Labelcommand.
symbolLabelFontStyle
Specifies a font for a label that you add with the Add – Labelcommand.
Form(s) Add Symbol label
Form Field Label Choice
Type float
Value(s) n/a
Default 0.0625 (assumes inches)
Command(s) Add – Label
Form(s) Add Symbol Label
Form Field Font Height
Type cyclic
Value(s) “euroStyle” “gothic” “math” “roman” “script” “stick” “fixed”“swedish” “milSpec”
Default “stick”
Command(s) Add – Label
Form(s) Add Symbol Label
Form Field Font Style
June 2000 576 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symbolLabelJustify
Specifies the position of the cursor with respect to the label that you add with the Add – Labelcommand.
symbolLabelType
Specifies how the editor displays a symbol label.
symbolPinFlatten
Specifies whether the symbol editor flattens pins that you add to your design. When the valuefor this variable is nil , the editor flattens the pins that you add to your design. A value of nilcorresponds to the on option in the user interface form. A value of t corresponds to the offoption in the user interface form.
Type cyclic
Value(s) “upperLeft” “centerLeft” “lowerLeft” “upperCenter”“centerCenter” “lowerCenter” “upperRight”“centerRight” “lowerRight”
Default “lowerCenter”
Command(s) Add – Label
Form(s) Add Symbol Label
Form Field Justification
Type cyclic
Value(s) “normalLabel” “NLPLabel” “ILLabel”
Default “NLPLabel”
Command(s) Add – Label
Form(s) Add Symbol Label
Form Field Label Type
Type cyclic
Value(s) t, nil
June 2000 577 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symbolPinIncrCount
Specifies the distance between a pin and the pin label.
symbolPinLocate
Specifies the location of the pin label with respect to the pin.
Default t
Command(s) Option – Editor
Form(s) Editor Options
Form Field Add Symbol Pins As Instances
Type integer
Value(s) n/a
Default 1
Command(s) Add – Pin
Form(s) Add Pin
Form Field Label Offset
Type cyclic
Value(s) “none” “left” “right”
Default “left”
Command(s) Add – Pin
Form(s) Add Pin
Form Field Label Location
June 2000 578 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symbolPinUsage
Specifies whether the symbol editor sets up the Add Pin form to use square as the initialvalue for pin type when it is defined in the schSymbolPinMaster list.
symbolSelectFilter
Specifies the selection filter setting for symbol objects.
symbolShape
Specifies the symbol shape you want to add.
Type cyclic
Value(s) “square” “round” “actHi” “commActLo” “ieeeActLo” “block”
Default “square”
Command(s) Add – Pin
Form(s) Add Pin
Form Field Type
Type string
Value(s) “pin” “deviceShape” “instanceBox” “noteShape” “pinName”“label” “marker” “noteText”
Default “allSymObj”
Command(s) Edit – Select – Filter
Form(s) Symbol Selection Filter
Form Field Symbol Objects
Type cyclic
Value(s) “line” “rectangle” “polygon” “arc” “ellipse” “circle”
Default “line”
Command(s) Add – Shape
June 2000 579 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
symbolShapeFillStyle
Specifies whether a shape is filled. Filled maps to solid.
transToSheetType
Specifies the type of sheet that the editor creates when you complete the Create Cellview –From Cellview command and the destination view type is schematic.
tsgTemplateType
Specifies which tsg template file the system loads the first time you use one of the CreateCellview commands to automatically generate a symbol.
Form(s) Add Symbol Shape
Form Field Shape
Type cyclic
Value(s) “outline” “solid”
Default “outline”
Command(s) Add – Shape
Form(s) Add Symbol Shape
Form Field Fill Style
Type string
Value(s) “single” “multi-sheet”
Default “single”
Command(s) Design – Create Cellview – From Cellview
Design – Create Cellview – Pin List
Design – Create Cellview – Instance
Form(s) Create Schematic
Form Field Schematic Type
June 2000 580 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
The system uses the value of this variable to look up the full file path in thetsgTemplateMasters list, which is defined in the schConfig.il file.
Important
Once you have loaded a template file, you cannot switch to another template file byjust changing the value of the environment variable. To switch to another templatefile, you must use either the Load button on the Symbol Generation Options form orthe schSetAndLoadTsgTemplateType() procedural interface (PI) function.
updateConn
Specifies whether the editor extracts connectivity during schematic checking.
Type string
Value(s) “digital” “artist” “PCB” “metric” “other”
Default “digital”
Command(s) Design – Create Cellview – From Cellview
Design – Create Cellview – From Instance
Design – Create Cellview – From Pin List
Form(s) Symbol Generation Options
Form Field Load
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Update Connectivity
June 2000 581 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
vicExactPinMatch
Specifies whether the cross-view checker generates a port mismatch warning when one viewhas a single pin (for example, pin[0:7] and another view has multiple pins (for example, pin[0],pin[1], pin[2], ... pin[7])
vicInheritedPins
Specifies whether the cross-view checker generates a warning if a terminal is inherited in oneview but is not inherited in another view.
vicInheritedPinsMatch
Specifies whether the cross-view checker generates a warning if an inherited terminal in oneview has a different net expression than the matching terminal in another view.
Type Boolean
Value(s) t, nil
Default nil
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Match Pin Names Exactly
Type Boolean
Value(s) t, nil
Default t
Command(s) Check – Options
Form(s) Schematic Check Options
Form Field Match Inherited Terminals
Type Boolean
Value(s) t, nil
Default t
June 2000 582 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
vicSeverity
Specifies the severity of the cross-view check. When the severity level is ignored, the checkersimply returns.
vicViewList
Specifies the list of view names that the cross-view checker checks.
Command(s) Check – Options
Form(s) Match Terminal Net Expressions
Form Field n/a
Type cyclic
Value(s) “ignored” “warning” “error”
Default “warning”
Command(s) Check – Options
Check – Cross View Check
Form(s) Schematic Check Options
Cross-View Checker
Cross View Check Severity
Form Field Severity
Type string
Value(s) n/a
Default “symbol schematic functional behavioral system opt_schopt_netl”
Command(s) Check – Options
Form(s) Check-Cross View Check
Schematic Check Options
Form Field Cross-View Checker
June 2000 583 Product Version 4.4.6
Virtuoso Schematic Composer User GuideEnvironment Variables
wireBackTrace
Specifies how unselected wires that are connected to selected instances, wires, and pinsbehave.
zoomOutButton
Automatically sizes the window display to show all objects that match a specified searchcriterionfs.
View Names
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit – Stretch
Form(s) Stretch
Form Field Back Trace Wire From
Type Boolean
Value(s) t, nil
Default nil
Command(s) Edit−Select – By Property
Form(s) Schematic Select By Property
Symbol Select By Property
Form Field Zoom Out To Fit All Figures
June 2000 584 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
BText-to-Symbol Generator
The text-to-symbol generator (TSG) is a Cadence® application program that automaticallygenerates symbol cellviews for schematic composer and subsequent simulation processes.TSG provides a quick way to generate a symbol from a list of pins in a TSG file.
This appendix describes the TSG file syntax and illustrates the use of various TSGconstructs.
■ Symbol Shape Generated by TSG on page 586
■ TSG Symbol Description File on page 587
■ TSG Template File on page 587
■ Clock and Negation Indicators on page 588
■ Backannotation on page 588
■ Simple File Example on page 588
■ Complex File Example on page 589
■ Extended File Example on page 591
■ TSG Symbol Description File Structure on page 592
❑ Basic File Structure on page 592
❑ Data Types on page 595
■ Using TSG Constructs on page 596
❑ Cell Definition on page 597
❑ Input Pin on page 598
❑ Output Pin on page 598
❑ I/O Pin on page 598
❑ Symbol Definition on page 599
June 2000 585 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
■ Executing TSG on page 611
❑ TSG Processing Order on page 612
❑ Creating Symbols Automatically from a Schematic on page 612
Symbol Shape Generated by TSG
All symbols generated by TSG are rectangular in shape. The default origin of a symbol islocated at the upper left pin terminal. The following symbol was created by TSG.
Negative logic typeswith negationindicator (bubble)
A Symbol Master
Clock pin with inputclock indicator(arrow)
[@refDes:%]
[@partName:%]
[@slotId:%]
June 2000 586 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
TSG Symbol Description File
The TSG symbol description file is the primary input file that controls the symbol to begenerated by TSG. This ASCII file is built using the constructs detailed in this appendix. Youcan create a very simple file containing only the cell name and the pin names, or you can addconstructs to enhance the symbol description.
Defaults and error checking are built-in features of TSG. TSG has extensive error checkingand error handling capabilities. It checks for syntax, variable-type, and logical errors in theTSG symbol description file. Depending on the severity of a detected error, TSG either exitsthe generation of the current symbol or displays an error message and continues processing.
TSG Template File
The TSG template file is a secondary input file that specifies default controls for symbols tobe generated by TSG. The TSG template file uses the same format as the TSG symboldescription file. Within this file, you can configure symbol labels, properties, andcharacteristics such as pin spacing, stub length, and origin placement.
An Instance
An instance of the symbol shownabove when placed in a schematic
U2
TSGFIG
June 2000 587 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
A template file helps avoid unnecessarily large TSG description files. You can specify TSGconstructs shared by a large group of symbols within a single template file. This allows youto create TSG symbol description files that contain only constructs specific to a particularsymbol.
The first time you use TSG during a Virtuoso® schematic composer session, a defaulttemplate file is automatically loaded. This default template file is always used unless youspecify an optional template file argument in the call to execute TSG, as described later.
Settings specified within the currently active template file will apply to all symbols generatedby TSG unless overridden by constructs specified within the TSG symbol description file. Youcan find available template filenames within the tsgTemplateMasters list, which is defined inthe schConfig.il file. The default template file that is chosen depends on the initial settingof the tsgTemplateType environment variable.
Clock and Negation Indicators
To alter the appearance of certain pins, you can specify special pin graphics; for example:
■ To identify a clock pin, you can draw a clock indicator (a small triangle) at the beginningof the pin wire
■ For a negative logic pin, you can draw a negation indicator (a bubble) at the beginning ofthe pin wire
The example TSG files and associated figures illustrate some of these capabilities. Refer tothe PinGraphicSpec construct and the wireLength and pinConnector symbolparameters.
Backannotation
After laying out parts for printed circuit boards (PCB), you often need to backannotate toschematics or PCB maps parameters, such as pin numbers and reference designators ofsymbol instances.
You can include constructs in the TSG symbol description file that specify the properties andparameters required to support the backannotation operation.
Simple File Example
The simplest TSG symbol description for an SN74LS181 symbol has the following format:
June 2000 588 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
defcell("tsgfig1"
input(A0 A1 A2 A3 B0 B1 B2 B3 Cn Set Reset)
output(F0 F1 F2 F3 C)
defsymbol(symbolProps( partName = "TSGFIG1"))
)
The following example shows a symbol generated from the TSG symbol description fileshown above.
Complex File Example
A more elaborate version of a TSG symbol description file for an SN74LS181 symbol has thefollowing format. This symbol was generated using the PCB package.tsg template file asan argument to the tsg command:
tsg( "exampleLib" "~/tsgFiles/fig2.tsg"prependInstallPath("samples/symbolGen/package.tsg") )
defcell("tsgfig2"
input( A0 A1 A2 A3 B0 B1 B2 B3 Cn Set Reset)output( F0 F1 F2 F3 C)defsymbol(
symbolProps(
June 2000 589 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
vendorName = DEMOpartName = "TSGFIG2"refDes = U2 )
pinNumSpec(
A0:1 A1:2 A2:3 A3:4B0:18 B1:17 B2:16 F0:7F1:8 F2:9 F3:10 C:11 )
pinLocSpec(
topPins( Set)bottomPins( Reset) )
pinGraphicSpec(
A0:actLo A1:actLo A2:actLo A3:actLoB0:actLo B1:actLo B2:actLo B3:actLoCn:clock Set:actLo Reset:actLo F0:actLoF1:actLo F2:actLo F3:actLo C:actHi )
)
)
The following example shows a symbol generated from the TSG symbol description fileshown above.
June 2000 590 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Extended File Example
The following example demonstrates many of the available TSG constructs.
defcell("count4"input("clock" "reset")output("a0" "a1" "a2" "a3")defsymbol(
symbolProps(partName = "count4" ; cellview prop with valueType=stringpinNum = (4 (0 24))timeVal = time("Jan 1 12:00:00 1993")color = ("red" ("red" "green" "blue"))defTermProp(
input Iih = 1.24 ) ; all pins get property “a”.defTermProp(
all b=6 ) ; all pins get property "b".symbolParam(
wireSpacing = 0.125000wireLength = 0.250000vSideLength = 0.000000hSideLength = 0.000000origin = topLeftPinpinConnector = "block"
)symbolLabels(
defLabel( name("[@partName]")location( "(xleft + xright)/2:(ytop + ybottom)*3/4")labelType(NLPLabel)layer(device)purpose(label)
)defLabel( name("[@instanceName]")
location( "xleft:(ytop + ybottom)/2")labelType(NLPLabel)justification(upperLeft)layer(instance)purpose(label)apply(cellview)fontHeight(0.1)
)defLabel( name("{pinName}")
location( "1.15*stubLength:0")justification(centerLeft)apply(left)
)defLabel( name("[@p_{pinName}]")
June 2000 591 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
location( "-stubLength/2:0.03125")labelType(NLPLabel)layer(pin)purpose(annotate)apply(right)
))pinNumSpec( "a0":16 "a1":17 "a2":18 )pinGraphicSpec( "reset":ieeeActLo "clock":clock )
))
The following example shows a symbol generated from the TSG symbol description fileshown above.
TSG Symbol Description File Structure
Basic File Structure
A TSG file is an ASCII file used as input to TSG for generating symbol cellviews. To createthe file, you must use a special format that includes several constructs and keywords. Allconstructs have one of the following forms (CF = construct format):
CF1: =keyword( [variable] ... [variable] [construct] ... [construct] )
CF2: =keyword( [keyword = value] ... [keyword = value] [construct] [construct] )
CF3: =keyword( [variable : value] ... [variable : value] )
June 2000 592 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Some constructs can appear only inside certain other constructs. Some keywords canappear only once within a construct.
To define more than one symbol in a TSG file, you can use multiple defcell constructs.Unless otherwise specified, draw input pins on the left side, output pins on the right side, andI/O pins along the top.
To add comments to a TSG file, use the Cadence® SKILL language comment characters ;or /* */ .
An illustration of the structure of the defcell construct, which is the only top-level constructallowed in a TSG file, follows.
Following the defcell example are further syntax descriptions for properties and labels.
Text in bold = keywordsText in italics = data typesText in angle brackets = < names of variables >
cellName must be a character stringpinName must be a pin name string
Words in square brackets = [optional]. Can be placed anywhere inside their own constructs
defcell( <cellName>[ input ( <pinName1> <pinName2> ... <pinNameN> )][ output ( <pinName1> <pinName2> ... <pinNameN> )][ io ( <pinName1> <pinName2> ... <pinNameN> )][ defsymbol ( [viewName]
[ symbolProps (<property pair><property pair>..[ defTermProp ( <terminal list>
<property list>)]..[ defVisibleProp ( <property pair>
<label attributes>)]..
)][ symbolParam (
[ wireSpacing = float ][ wireLength = float ]
June 2000 593 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
[ vSideLength = float ][ hSideLength = float ][ pinConnector = string ][ origin = topLeftPin | bottomLeftPin | centerLeft]
)][ symbolLabels (
defLabel (<label specification>)defLabel (<label specification>)..
)][ controlParam (
[ queryMode = t | nil] )]
[ pinNumSpec ([<pinName1> : integer ].[<pinNameK> : integer ] )]
[ pinLocSpec ([ leftPins ( <pinName1> <pinName2> ... <pinNameN> )][ rightPins ( <pinName1> <pinName2> ... <pinNameN> )][ topPins ( <pinName1> <pinName2> ... <pinNameN> )][ bottomPins ( <pinName1> <pinName2> ... <pinNameN> )])]
[ pinGraphicSpec ([<pinName1> : string ]...[<pinNameN> : string ] )]
[ pinLogicSpec ([ positive ( <pinName1> <pinName2> ... <pinNameN> )][ negative ( <pinName1> <pinName2> ... <pinNameN> )] )]
[ clockPins ( <pinName1> <pinName2> ... <pinNameN> )])]
)
<property list>:= <property pair> <property list> | <propertypair>
<property pair>:= <property name> = <property value><property name>:= < string ><property value>:=
<simple value> |( <simple value> [(<range>)]) |time ( <time value> ) |filename ( <filename value> ) |ilExpr ( < string > ) |
June 2000 594 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
nlpExpr ( < string > )<simple value>:= < string > | <numeric value> | <boolean value><numeric value>:= < integer > | < float ><boolean value>:= yes | no | true | false | TRUE | FALSE | t | nil<time value>:= < string ><filename value>:= < string ><range>:= <enumeration> | <lower bound> <upper bound><enumeration>:= < string > <enumeration> | < string ><lower bound>:= <numeric value> | nil<upper bound>:= <numeric value> | nil<terminal list>:= all | input | output | inputOutput | topPins |
bottomPins | leftPins | rightPins<label specification>:=
name( string <label attributes>)<label attributes>:=
location ("<expression>:<expression>")apply ( string )[ labelType (normalLabel | NLPLabel | ILLabel)][ format ("value" | "name=value" | "off") ][ layer ( string ) ][ purpose ( string ) ][ justification ( float ) ][ orientation ( R0 | R90 | R180 | R270 ) ][ isOverbar (t/nil) ][ fontStyle ( string ) ][ fontHeight ( float ) ]
Data Types
Some data types used in a TSG symbol description file are defined in the following sections.
Character String
A character string can contain one or more alphanumeric characters (a–z, A–Z, 0–9), theunderscore (_), and the question mark (?). The first character cannot be a number. Anycharacter other than these must be enclosed in quotation marks (" "). Blank characters mustbe replaced by an underscore. Examples of character strings are as follows:
SN74LS169AAm2901_MPR006FFTchip_2MC_V1"RAM_1M-6/86"
June 2000 595 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Pin Name String
A pinName string is similar to a character string except that any slash ( / ) is replaced by avertical bar ( | ). For example, X/Y is transformed to X|Y. Examples of pinName strings areas follows:
OutputEnableinputA"Read|Write_""Up_|Down"
Terminal List
A terminal list consists of one of the following values:
Using TSG Constructs
The following constructs can be included in a TSG symbol description file.
all Specifies all terminals of the cell.
input Specifies all input terminals.
output Specifies all output terminals.
inputOutput Specifies all input/output terminals.
topPins Specifies all top pin terminals.
bottomPins Specifies all bottom pin terminals.
leftPins Specifies all left pin terminals.
rightPins Specifies all right pin terminals.
TSG Construct Definition
defcell cell definition
input input pin
output output pin
io I/O pin
June 2000 596 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Cell Definition
The defcell construct is the highest level construct in a TSG symbol description file. It hasthe form CF1 and contains the variable cell name and four constructs: input , output , io ,and defsymbol .
These four constructs, specific to defcell , are the only ones that you can include indefcell . Any other construct is ignored by TSG but can be processed by other Cadencetools, such as the symbol and simulation library generator (S/SLG). Refer to Appendix C,“Symbol and Simulation Library Generator.”
The variable cellName represents the cell name portion of a symbol cellview into which thegenerated symbol is stored. You must specify this cell name as a string.
Example:
defcell ( <cellName> )
defsymbol symbol definition
viewName symbol view name
symbolProps symbol properties
symbolParam symbol parameter
symbolLabels symbol labels
controlParam control parameters
pinNumSpec pin number specification
pinGraphicSpec pin graphic specification
pinLocSpec pin location specification
pinLogicSpec pin logic type specification
TSG Construct Definition
June 2000 597 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Input Pin
The input construct has the form CF1, and you can include it in the defcell construct. Itcontains a list of the symbol input pins. By default, all input pins are drawn on the left side ofthe symbol from top to bottom.
To move an input pin to any other side, you specify the pin in the pinLocSpec construct.Refer to “Pin Location Specification” on page 608 for details. If a pin specified in this constructis also specified in the output or io constructs, an error message is generated.
Example:
defcell ( <cellName>[ input ( <pinName1> <pinName2> ... <pinNameK> )] )
Output Pin
The output construct has the form CF1, and you can include it in the defcell construct.The output construct contains a list of the symbol’s output pins. By default, all output pinsare drawn on the right side of the symbol from top to bottom.
To move an output pin to any other side, you specify the pin in pinLocSpec . Refer to “PinLocation Specification” on page 608 for details. If a pin specified in this construct is alsospecified in the input or io constructs, an error message is generated.
Example:
defcell ( <cellName>[ output ( <pinName1> <pinName2> ... <pinNameK> )] )
I/O Pin
The io construct has the form CF1, and you can include it in the defcell construct. Itcontains a list of all I/O symbol pins. By default, all I/O pins are drawn on top of the symbolfrom left to right.
To move an I/O pin to any other side, you specify the pin in the pinLocSpec construct. Referto “Pin Location Specification” on page 608 for details. If a pin specified in this construct isalso specified in the input or output constructs, an error message is generated.
June 2000 598 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Example:
defcell ( <cellName>[ io ( <pinName1> <pinName2> ... <pinNameK> )] )
Symbol Definition
The defsymbol construct specifies symbol properties and parameters, control parameters,labels, and pin information. These values override applicable defaults. This construct has theform CF1, and you can include it in the defcell construct.
defsymbol can contain one or more of the constructs symbolProps , symbolParam ,symbolLabels , controlParam , pinNumSpec , pinLocSpec , pinGraphicSpec ,pinLogicSpec , and clockPins . These constructs, specific to defsymbol , are the onlyones that you can include in defsymbol .
Example:
defsymbol ( [<viewName>][ symbolProps ( ...)][ symbolParam ( ...)][ symbolLabels ( ...)][ controlParam ( ...)][ pinNumSpec ( ...)][ pinLocSpec ( ...)][ pinGraphicSpec ( ...)][ pinLogicSpec ( ...)][ clockPins ( ...)]
)
Symbol View Name
viewName is an optional parameter that specifies the view name of the cellview to becreated. The default value is symbol. If you specify the viewName parameter, it must be astring and must be the first parameter in the defSymbol construct.
Symbol Properties
The symbolProps construct has the form CF2, and you can include it in the defsymbolconstruct. This construct can accept any number of property pairs and any number ofdefTermProp and defVisibleProp subconstructs. The symbolProps construct is usedto create properties on the symbol cellview or properties on sets of terminal pins.
symbolProps (
June 2000 599 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
<property pair><property pair>..[ defTermProp ( <terminal list>
<property list>)]..[ defVisibleProp ( <property pair>
<label attributes>)]..
)
defTermProp
defTermProp defines properties on the terminals represented by any of the followingchoices: all , input , output , inputOutput , topPins , bottomPins , leftPins , orrightPins .
Example:
defTermProp ( input Iih = 1.24 a = 3)
defVisibleProp
defVisibleProp defines a property and the label attributes information fordisplaying that property.
Within defVisibleProp , you can specify one or more of the following label attributes:location , apply , format , layer , purpose , justification , orientation ,isOverbar , fontStyle , and fontHeight .
Example:
defVisibleProp ( dName = maraformat( "value")location( "xleft : ytop + 0.0625")justification( centerLeft )
)
June 2000 600 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
property pair
A property pair specification consists of a property name and property value pair. Aproperty pair uses the format
property_name = property_value
property_name can be any identifier or string. property_value can be a simple valueplus an optional range, a time, a filename, a SKILL expression, or an NLP expression.
Property values other than simple values require a keyword and an argument enclosed inparentheses. Do not leave a space between the keyword and the left parenthesis immediatelyfollowing it.
When the property pair is specified directly within the symbolProps construct, a symbolcellview property is created.
simple value
A simple property value can be an integer, a floating-point number (float ), or a string(characters enclosed in quotation marks). The special string values {yes | no | true |false | TRUE | FALS E | t | nil} create Boolean properties. Simple values can alsobe combined with a range value. When a range is included, enclose the value/range pair inparentheses. For example, the following are valid property pair expressions:
partName = "ALU" )month = (3 (1 12)) )color = ("red" ("red" "green" "blue")
time
The time keyword indicates the property type is time . Properties of type time areexpressed as a time value and an optional range. The time value contains the date, time, andyear, enclosed in parentheses. For example, the propertylastChanged = time("Jan 01 8:17:56 2000") is a valid expression. Only the firstthree characters are needed to specify the month.
filename
The filename keyword indicates the property type is a filename. Follow filename with astring indicating the filename. Enclose the filename string in parentheses. For example, theproperty myFile = filename("magic.c") is a valid expression.
June 2000 601 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
ilExpr
The ilExpr keyword indicates the property type is a SKILL expression. This type of propertyrequires a valid SKILL expression enclosed in parentheses. For example, pval =ilExpr("if(rc print(\"rc=0"))") is a valid expression.
nlpExpr
The nlpExpr keyword indicates the property type is an NLP expression. This type ofproperty requires a valid NLP expression enclosed in parentheses.
range
Range values are optional arguments when specifying a property. A range value can beeither an enumeration type or a pair of values specifying the upper and lower bounds of therange. The values of range must be enclosed in parentheses. If a range is an enumerationtype, each value in the range should be a string (a name in quotation marks).
Upper and lower bounding values can be simple numeric values or the argument nil . If nilis specified for a lower or upper bound in a range, the range is unbounded. For example:
p1 = (4 (1 10))color = ("red" ("red" "green" "blue"))
Symbol Parameter
The symbolParam construct has the form CF2, and you can include it in the defsymbolconstruct. The following symbol parameters, specific to this construct, are the only ones thatcan be included in any order without replication. They are not stored in the symbol masterproperty list.
wireSpacing
The minimum spacing between any pair of adjacent pin wires on a side. The default is twicethe snap spacing. The value you supply is rounded to the nearest multiple of snap spacing.For more information on snap spacing, refer to the environment variable symSnapSpacing.
wireLength
The length of each pin wire; in other words, a pin stub. The default is twice the value of thewireSpacing field. The value you supply is rounded to the nearest multiple of snap spacing.
June 2000 602 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
vSideLength
The minimum length of the vertical sides. The default ensures enough vertical span toaccommodate the pins on both sides. If the value you supply is less than the computeddefault, the computed default is used. The vSideLength value is rounded to the nearestsnap spacing.
hSideLength
The minimum width of the horizontal sides. The default ensures enough horizontal span toaccommodate the pins on both the top and bottom sides of the symbol, the part name, andpin name labels. If the value you supply is less than the computed default, the computeddefault is used instead. The hSideLength value is rounded to the nearest snap spacing.
pinConnector
The default pin connector graphic. Each entry is mapped into a cellview that contains theactual graphics for the connector. The choices are square , block , and circle . You canadd new types by creating a new pin connector cellview and updating thetsgConnectorMasters list in the schConfig.il file.
origin
The default placement of the symbol origin. The choices are topLeftPin ,bottomLeftPin , or centerLeft .
Example:
symbolParam (wireSpacing = 0.125wireLength = 0.0vSideLength = 0.0hSideLength = 0.0pinConnector = "block"origin = topLeftPin )
Symbol Labels
The symbolLabels construct has the form CF1, and you can include it in the defsymbolconstruct. The symbolLabels construct allows you to define symbol labels. If this constructis not specified, a set of default labels is generated on the symbol.
June 2000 603 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
defLabel
Defines a label with the specified text string and the label attributes for its display.
symbolLabels (defLabel ( name( string <label attributes> ) )
)
Example:
defLabel ( name("[@instanceName]")location ( "xleft:(ytop + ybottom)/2")labelType (NLPLabel)justification (upperLeft)layer (instance)purpose (label)apply (cellview)fontHeight (0.1)
)
A label specification consists of a name and one or more of the following labelattributes: location , apply , labelType , layer , purpose , justification ,orientation , isOverbar , fontStyle , and fontHeight .
name
The required name keyword is followed by a name string that specifies the text for the label.Enclose the label text in quotation marks. If the isOverbar specification is set, place anunderscore before and after any text you want an overbar above. For example, the labelread|_write_ converts to read|write with an overbar above write .
Label Attributes
The following label attributes are shared by the ldefVisibleProp and defLabelconstructs.
location
Location specifies where to place the label. The location keyword is followed by anexpression that positions the label on the symbol. The expression can be any SKILLexpression that evaluates to a point. The location expression is a function of the variablesxleft , xright , ytop , ybottom , and fontHeight for labels applied to a cellview, and ofthe variables pinSpacing , stubLength , and fontHeight for labels applied to pins. Top,bottom, left, and right pin label positions must be specified separately.
June 2000 604 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
The following specifications are valid location expressions.
location ( "xleft : ytop")
Places a label in the upper left corner of a symbol.
location ( "(xleft + xright)/2 : ytop + .0625")
Places a label just above the top center of a symbol.
location ( "(stubLength)/2 : 0")
Places a pin label halfway down the pin stub for left pins.
location ( "0 : -(stubLength)/2")
Places a pin label halfway down the pin stub for top pins.
apply
Apply specifies whether the label is applied to either the cellview or to specific pins. Thechoices are cellview , top , bottom , left , right , input , output , and inputOutput .
labelType
The optional labelType field (used only in the defLabel construct) specifies the label typeas either normalLabel (default), NLPLabel , or ILLabel .
format
The optional format field (used only in the defVisibleProp construct) specifies whichparts of the property name/value pair are to be displayed. The choices are value (default),name=value , and off .
layer
The optional layer field contains a string that defines the color of the label. The default isdevice .
purpose
The optional purpose field contains a string that defines the purpose of the label. The defaultis annotate .
June 2000 605 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
orientation
The optional orientation field determines the rotation of the label in degrees. The choicesare R0, R90, R180, and R270.
isOverbar
The optional isOverbar field determines whether a bar or overline is placed over the labeltext that is placed between underscore characters. Assigning a value of t to isOverbarplaces the bar on the text. Use nil when no bar is required. The default is nil .
fontStyle
The optional fontStyle field specifies the default font style for a label. fontStyle requiresa string value specifying the new font style. The default is stick .
fontHeight
The optional fontHeight field specifies the default font height for a label. fontHeightrequires a float value specifying the new height.
Control Parameter
The controlParam construct has the form CF2, and you can include it in the defsymbolconstruct. The controlParam construct contains control parameters you can specify todefine execution behavior.
queryMode
Use queryMode only when the specified symbol master already exists in the library. Whenset to t , TSG runs in query mode in which several questions are asked interactively.
If set to nil (default), TSG runs in the autonomous mode and assumes an existing symbolshould be overwritten. It does not prompt you for permission to overwrite an existing symbolcellview. Refer to “Executing TSG” on page 611 for details about the built-in questions whenqueryMode is set to t .
This control parameter is the only one that can be included in this construct and is not storedin the property list of the symbol master.
June 2000 606 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Example:
controlParam ( queryMode = t )
Pin Number Specification
The pinNumSpec construct has the form CF3, and you can include it in defsymbol . Itcontains a list of pinName:pinNumber pairs. A colon (: ) separates the pin name and pinnumber. Any pin specified in this construct must also be declared in input , output , or ioor TSG ignores it and its pin number. This construct is most often used for printed circuit boarddesign libraries.
A pin number must be a positive integer. For each pinName:pinNumber pair specified, thep_pinName property, along with the specified pin number, is stored in the symbol masterproperty list for annotation and backannotation into instances.
Example:
pinNumSpec ( [<pinName1> : integer] [<pinName2> : integer] )
Pin Graphic Specification
The pinGraphicSpec construct has the form CF3, and you can include it in defsymbol . Itcontains a list of pinName:string pairs. A colon (: ) separates the pin name and string. Theconstruct identifies special pin graphics, such as negation bubbles and clock indicators, to bedrawn with the specified pins. The length of the pin stub and the shape of the pin connectorare controlled separately with the wireLength and pinConnector symbol parameters.The default is actHi . The predefined values for pinGraphicSpec are actHi , actLo ,ieeeActLo , clock , and actLoClock . Each of these values matches an entry in theschConfig.il file, which maps to a corresponding cellview containing the pin graphics. Tocreate a new type of pin graphic, create a new cellview with the pin graphic and add an entryto the tsgPinGraphicMasters list in the schConfig.il file.
Example:
pinGraphicSpec ([<pinName1> : string][<pinName2> : string] )
June 2000 607 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Pin Location Specification
The pinLocSpec construct has the form CF1, and you can include it in defsymbol . ThepinLocSpec construct contains up to four subconstructs with which you can specify the pinlocation in any order without replication. All four of these subconstructs have the CF1 form,and you can include them in the pinLocSpec . Pin names in any of these subconstructs mustalso be specified in the input , output , or io constructs or TSG ignores them. Thisconstruct allows you to override default pin placement locations.
leftPins
The names of pins to draw on the left of the symbol.
Other pins can be drawn on the left of the symbol. Pins specified in input are also drawn onthe left of the symbol. A pin specified in input but not specified in pinLocSpec is drawn onthe left before those in leftPins . A pin name in leftPins cannot be specified again in theother three subconstructs.
rightPins
The names of pins to draw on the right of the symbol.
Other pins can be drawn on the right of the symbol. Pins specified in output are also drawnon the right of the symbol. A pin specified in output but not specified in pinLocSpec isdrawn on the right before those in rightPins . A pin name in rightPins cannot bespecified again in the other three subconstructs.
topPins
The names of pins to draw on the top of the symbol.
Other pins can be drawn on the top of the symbol. Pins specified in io are also drawn on thetop of the symbol. A pin specified in io but not in pinLocSpec is drawn on the top beforethose in topPins . A pin name in topPins cannot be specified again in the other threesubconstructs.
bottomPins
The names of pins to draw on the bottom of the symbol.
A pin name in bottomPins cannot be specified again in the other three subconstructs.
June 2000 608 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Example:
pinLocSpec ([ leftPins ( <pinName1> <pinName2> ... <pinNameN> )][ rightPins ( <pinName1> <pinName2> ...<pinNameN> )][ topPins ( <pinName1> <pinName2> ... <pinNameN> )][ bottomPins ( <pinName1> <pinName2> ...<pinNameN> )]
)
Pin Logic Type Specification
Using this construct is not recommended, but it remains supported for backward compatibility.The pinGraphicSpec construct is the preferred method for specifying special pin graphics.The pinLogicSpec construct specifies negation indicators. It has the form CF1, and youcan include it in defsymbol . It contains one or more of the following subconstructs to specifythe logic types of symbol pins. Both subconstructs have the form CF1, and you can includethem in the pinLogicSpec in any order without replication. Any pins specified in eithersubconstruct must also be specified in the input , output , or io constructs; otherwise, TSGignores this subconstruct.
positive
A list of pin names that indicate the positive logic type of the pins.
negative
A list of pin names that indicate the negative logic pin type. Negative pins appear in thesymbol as a bubble.
Clock Pins Specification
Using this construct is not recommended, but it emains supported for backward compatibility.The pinGraphicSpec construct is the preferred method for specifying special pin graphics.The clockPins construct specifies the display of clock indicators. It has the form CF1, andyou can include it in defsymbol . Any pins specified must also be specified in input ,output , or io or TSG ignores the construct. This construct takes a list of pin names to bedrawn as clock pins. Clock pins are designated by a small triangle (a clock indicator) next tothe pin.
June 2000 609 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Configuration Variables
tsgFilterGlobalNames
When this SKILL global variable is set to t , global names ending with an exclamation pointare filtered out and do not appear in the symbol; for example, VDD! or GND!. The default is t .
tsgHSymbolBoxFactor, tsgVSymbolBoxFactor
These SKILL global variables represent horizontal and vertical symbol box factors,respectively. They are applied to the horizontal and vertical length of the symbol box to let youhave control over the symbol size. The defaults are tsgHSymbolBoxFactor = 1 ,tsgVSymbolBoxFactor = 1 . For example, tsgHSymbolBoxFactor = .7 would makesymbols narrower.
tsgKeepPinPlacement
Left and right symbol pins are placed starting near the top of the symbol. Therefore, theuppermost left pin is at the same Y dimension as the uppermost right pin. In other words, thepins are not centered but instead are moved up near the top of the symbol. When additionalpins are added, the original pins are not moved and do not need to be rewired. If you want tohave the symbol pins centered with respect to the symbol box, set this SKILL global variableto nil . The default is t .
tsgResolution
You can use this SKILL global variable to override the default tsg resolution. The resolutiondefines the granularity for the location of pins, labels, and symbol graphics. The default isundefined , in which case the system uses the snap spacing of the symbol view.
tsgTemplateType
You can use this schematic environment variable to map to a filename with thetsgTemplateMasters variable. TSG uses this environment variable to identify whichtemplate file will be loaded during the first run of TSG. For further information, refer to thetsgTemplateType environment variable.
June 2000 610 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
Executing TSG
TSG runs as a separate SKILL program in the Cadence environment to generate symbolsthat you can place as instances in schematics.
Running TSG from SKILL requires a library name, an input filename, and optionally atemplate filename. TSG first reads the input parameters from the TSG file, then uses anysymbol parameters contained in the template file that are not specified in the input file. Thisallows you to have one large template file that specifies most of the symbol parameters andsmaller TSG files that contain only pin specifications. The resulting cellview is saved to thelibrary identified in the command.
To run TSG in TSG mode, do the following:
1. Start the Cadence design environment.
2. In the CIW, type the SKILL function call
tsg ( <libName> < tsgFil e> [< tsgTemplateFile >]))
libName is the name of a preexisting library.
tsgFile is the name of the TSG symbol description text file. If the TSG file is not in thecurrent directory, include the full path to the file.
tsgTemplateFile is the name of an optional TSG template file. If the template file isnot in the current directory, include the full path to the file.
June 2000 611 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
TSG Processing Order
When you run TSG, the following sequence of steps is performed.
1. TSG fetches the first unprocessed defcell from the tsgFileName file and parses itto extract the symbol information.
Any syntax error messages are displayed in the CIW and the program continues.
2. If the symbol does not exist in the specified library, TSG goes to step 6.
3. If you set the queryMode parameter to t (true), TSG warns you of the existence of thesymbol view and asks whether to overwrite the existing symbol with one that it is goingto generate.
If you respond yes , TSG goes to step 6. If you respond no, TSG goes to step 4. If youset queryMode to nil (not true), TSG goes to step 6.
4. TSG asks whether you want to save the symbol under a different cell name.
If you respond yes , TSG continues. If you respond no, the symbol is not saved and TSGgoes to step 7.
5. TSG asks you to specify a new cell name for the symbol.
6. TSG generates and saves the symbol in the specified library.
7. TSG checks for an unprocessed defcell in the tsgFileName file.
8. If such constructs exist, TSG returns to step 1. If not, it stops execution and passescontrol to the Cadence design system.
After program execution, you can find any error messages printed by TSG in the CommandInterpreter Window (CIW).
Creating Symbols Automatically from a Schematic
A convenient feature available from the schematic editor environment allows you to create asymbol with the same pins that are found within an existing schematic, Verilog, or othercellview.
The TSG symbol generator is automatically invoked whenever you create symbols using theCreate Cellview – From Cellview command or the Create Cellview – From Pin Listcommand, which are available from the schematic and symbol editor windows. You can usethe Symbol Generation Options form to override defaults or to help create new TSG templatefiles.
June 2000 612 Product Version 4.4.6
Virtuoso Schematic Composer User GuideText-to-Symbol Generator
The Symbol Generation Options form can be accessed by turning on the Edit Optionsbuttonon the Create Cellview – From Cellview command or the Create Cellview – From PinList command.
June 2000 613 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
CSymbol and Simulation LibraryGenerator
The Cadence® SKILL-based symbol and simulation library generator (S/SLG) is a librarymanagement program that generates symbol and simulation views. S/SLG generates asymbol in the library and defines the complete characterization of a symbol for use incomputer-aided engineering applications.
This appendix describes the S/SLG commands and program and the library managementSKILL functions used with S/SLG.
■ Terms and Conventions on page 616
■ Library Command File on page 618
■ Running the Symbol and Simulation Library Generator on page 619
❑ Running the Symbol and Simulation Library Generator in the Cadence GraphicEnvironment on page 619
❑ Running the Symbol and Simulation Library Generator in the Cadence NongraphicEnvironment on page 620
■ Library Management Commands on page 622
❑ lmCheckTerm on page 624
❑ lmCheckView on page 625
❑ lmCloseLib on page 627
❑ lmDefCell on page 628
❑ lmDefTermProp on page 631
❑ lmDefViewProp on page 633
❑ lmDeleteTermProp on page 637
❑ lmDeleteViewProp on page 638
June 2000 614 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
❑ lmGetValue on page 639
❑ lmLoadData on page 640
❑ lmOpenLib on page 641
❑ lmPrintLibTermProp on page 642
❑ lmPrintLibViewProp on page 643
❑ lmPrintTerm on page 644
❑ lmPrintTermProp on page 645
❑ lmPrintViewProp on page 646
❑ lmReset on page 647
❑ lmSimView on page 648
■ Variables That Control Command Execution on page 649
■ Properties That Modify Values on page 650
■ Sample Library Command File on page 650
June 2000 615 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Terms and Conventions
The following table shows the format for library management commands, which is differentfrom the rest of this user guide.
You can use the alias mechanism to give a command a shorter name. For example, thecommand alias p lmPrintViewProp makes p an alias name for lmPrintViewProp .Thus, the command p( and2 symbol ) is equivalent to the command
Format Description
< > A user-supplied argument.
[ ] An optional item.
| (vertical bar) The logical operator OR. Example: in the expression “length :=[<integer> | <floating point number>]” , length iseither an integer or a floating-point number.
names A cell name, view name, property name, or filename can containalphanumeric characters (a-z , A-Z , 0-9 ), the underscore ( _ ),and question mark (?). However, the first character of a namecannot be a number.
" " Enclose a name that contains a blank, asterisk (* ), period (. ),slash (/ ), or hyphen (- ).
If a terminal has the same name as a keyword, enclose theterminal name in quotation marks. For example, enclose theterminal names input , output , io , or switch in doublequotation marks.
Enclose property names in double quotation marks.
spaces No space is allowed between a command name and the leftparenthesis that follows it.
\ (backslash) If a character such as backslash (\ ) or double quote ("" ) is usedin a string, one additional backslash must precede it as an escapecharacter.
lm + commandname
All S/SLG commands use the lm (library management) prefix.
… Continue using the same format with more of the same argument,if necessary.
t_ Datatype which stands for text. The t_ is not typed.
June 2000 616 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintViewProp( and2 symbol ) . Then you can use p whenever you would have usedlmPrintViewProp .
June 2000 617 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Library Command File
The library command file is one master text file that contains all text information in the libraryprogramming environment needed for S/SLG. Because this file is the only input to S/SLG,library editing becomes essentially text editing. You can generate symbol and simulationviews after you create the library command file and run S/SLG.
S/SLG can do the following:
■ Add or delete properties in the symbol or simulation view
■ Check for library consistency
■ Backannotate objects in a schematic
■ Specify timing parameters
Note: All Cadence SKILL capabilities are available in S/SLG. Refer to the Virtuoso SchematicComposer SKILL Functions Reference for details about programming in SKILL.
June 2000 618 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Running the Symbol and Simulation Library Generator
You can run S/SLG in one of two environments:
■ Graphic
■ Nongraphic
Running the Symbol and Simulation Library Generator in the CadenceGraphic Environment
S/SLG is integrated into the Cadence graphic environment. If you want to do symbolgeneration or backannotation, you must run S/SLG in the Cadence graphic environment.Refer to Figure 3-1 on page 620 for an overview.
You can run S/SLG either by typing a function or a sequence of functions in the CommandInterpreter Window (CIW) or by creating a library command file.
When you create a library command file that contains S/SLG commands or SKILL functions,each command or function runs sequentially. You can load the file where you plan to saveyour generated symbol into S/SLG.
To load your file while you run S/SLG, do the following:
➤ Type the following function in the CIW:
lmLoadData( myFile.lm myLib )
where
lmLoadData opens your working library, loads your library command file, then closesyour working library when you complete running S/SLG.
myFile.lm is your library command file.
myLib is your working library.
Output and Error Messages
An error ends execution. Output and error messages are displayed in the CIW duringexecution. An exit status of t indicates there are no output or error messages; nil indicatesan error occurred. Error messages can be the result of syntax errors, insufficient arguments,or undefined parameters.
June 2000 619 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Figure 3-1 Diagram of Running S/SLG in the Cadence Graphic Environment
Running the Symbol and Simulation Library Generator in the CadenceNongraphic Environment
You can run S/SLG in the Cadence nongraphic environment in a UNIX window. For runningfunctions other than lmDefCell , run S/SLG in a UNIX window to display the output quickly.
Run the Cadence nongraphic program in a UNIX window to start interactive library editing;then type an S/SLG command or SKILL function.
To load a library command file and run all functions sequentially, do the following:
➤ In a UNIX window, type the following:
lmLoadData( "myFile.lm" "myLib" )
where
Method 2:lmLoadData closes your
working library
Method 2:Create a library command file using
S/SLG or SKILL commands
Load the library command file into S/SLG; start S/SLG by typing
lmLoadData in the CIW
Symbol generation/modification Timing specification Consistency
checking Backannotation
Method 1:Enter lmOpenLib to open yourworking library, then enter one
command or a sequence ofcommands in the CIW
Start S/SLG by typing anyS/SLG command in the CIW
S/SLG opens yourworking library
Method 1:Enter lmCloseLib to close your
working library in the CIW
June 2000 620 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmLoadData opens your working library, loads your library command file, then closesyour working library when you complete running S/SLG.
myFile.lm is your library command file.
myLib is your working library.
Refer to Figure 3-2 on page 621 for an overview of the above processes.
Figure 3-2 Diagram of Running S/SLG in the Cadence Nongraphic Environment
Method 2: Create a library command filethat contains S/SLG or SKILL commands
in the UNIX window
Start Cadence nongraphic program in aUNIX window. Type lmLoadData in a UNIX
window within Cadence nongraphicenvironment to load the library command
file
Timingspecifications
Propertyaddition
Consistencychecking
Method 2:S/SLG closes your working
library
Method 1: Execute Cadencenongraphic program in a UNIX
window
S/SLG opensyour working
library
Method 1:Enter lmCloseLib toclose your workinglibrary in a UNIX
window
Enter the command to open yourworking library, then enter one
command or a sequence ofcommands in aUNIX window
Method 2: Create a library command file thatcontains S/SLG commands or SKILL functions in
the UNIX window
June 2000 621 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Output and Error Messages
Each function returns a running status. Output and error messages are displayed on thescreen during execution. An exit status of t means that there are no output or errormessages, and nil means an error occurred during execution. Error messages can be theresult of syntax errors, insufficient arguments, or undefined parameters.
You can direct the output to a file and check it with a text editor, or you can check the outputon the screen.
To direct output and error messages to a file, add the following to your library command file:
poport = outfile( filename )errport = outfile( filename )
You can specify different files for storing the output or error messages, or you can specify thesame file. If you want to store them in the same file, use the following command:
poport = errport = outfile( filename )
Library Management Commands
The following table lists the library management (lm ) commands in the order described in thissection.
Command Name Description
lmCheckTerm Checks the consistency of terminal name, type, andwidth for views of a specified cell
lmCheckView Evaluates a sequence of expressions for specifiedcellviews
lmCloseLib Closes a library previously opened by lmOpenLib
lmDefCell Defines a cell, generates a symbol, and backannotatesobjects
lmDefTermProp Adds properties to terminals of the specified cellview
lmDefViewProp Adds properties to the specified cellview
lmDeleteTermProp Deletes properties from the terminals of specified views
lmDeleteViewProp Deletes properties from the specified view
June 2000 622 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmGetValue Returns the value of a specified property in thereferenced view
lmLoadData Loads a library command file
lmOpenLib Opens a library
lmPrintLibTermProp Prints terminal properties of a view for each cell in thecurrent library
lmPrintLibViewProp Prints properties of the specified view for each cell inthe current library
lmPrintTerm Prints names, types, and widths of all terminals of thespecified cellviews
lmPrintTermProp Prints properties of all terminals of a cellview
lmPrintViewProp Prints properties of all specified cellviews
lmReset Resets all global variables to their default values
lmSimView Creates a view with specified properties for a cell
Command Name Description
June 2000 623 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmCheckTerm
lmCheckTerm( <cell list > [<filename>] )
Description
Checks the consistency of terminal name, type, and width for all views of each specified cell.
If there is a schematic view, terminals in the schematic view are used as the basis ofcomparison for each cell. Otherwise, terminals in the symbol view are used as the basis ofcomparison. When neither schematic nor symbol view exists, no terminal checking isperformed. After checking, inconsistent terminal names/widths and input/output types areidentified and printed.
Arguments
cell list <cell list> := <cell name > | t | (<cell name> …<cell name>)
If cell list is t , all views of the specified cell are implied.
filename Name of a file where the printout is stored. If not specified, outputis displayed on the screen.
Examples
lmCheckTerm( (and2 and3) "check.out" )
Checks the terminal consistency of all views for the cells and2 and and3 and puts output inthe file check.out .
lmCheckTerm( t )
Checks the terminal consistency of all views for each cell in the current library.
June 2000 624 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmCheckView
lmCheckView( <cell list> <view name> [<filename>] <expression> …<expression>)
Description
Evaluates a sequence of expressions for each specified cellview. Checks the property valuefor consistency.
Property values can be included in an expression. The expressions should conform to SKILLsyntax. After evaluation, the result is printed for each expression.
Arguments
cell list <cell list> := <cell name > | t | (<cell name> …<cell name>)
view name Default: symbol
filename Name of a file where the printout is stored. If not specified, outputis displayed on the screen.
expression A property used in an expression refers to the property in <viewname>.
Examples
fast_process = tmargin = 1nslmCheckView( (and2 and3) symbol
if( fast_process thensum = 5nstrmax = 4nstfmax = 3ns
elsesum = 9nstrmax = 6nstfmax = 5ns
)lmGetValue(tr) < trmaxlmGetValue(tf) < tfmax
June 2000 625 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmGetValue(tr) + lmGetValue(tf) <- sum + margin)
Checks some conditions for the rise and fall time in the symbol view of and2 and and3 . Theproperty names tr and tf contain the rise and fall times. The predefined functionlmGetValue gets the value of the specified property.
lmCheckView( t spicegammaValue = lmGetValue(gamma)lambdaValue = lmGetValue(lambda)gammaValue < 0.4lamdaValue < 0.04
)
Checks the values of the properties gamma and lambda in the spice view for each cell inthe current library.
June 2000 626 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmCloseLib
lmCloseLib=> t/nil
Description
Closes the previously opened working library.
Note: Call lmOpenLib before starting any S/SLG command or SKILL function and calllmCloseLib when you are done if you are not using lmLoadData to load the librarycommand file.
Example
lmCloseLib
Closes a working library previously opened by lmOpenLib .
June 2000 627 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmDefCell
lmDefCell( <cell name> … <parameters> ); input and output declaration, and various parameters; for symbol generation[input( <term name> <term name> … <term name> )][output( <term name> <term name> … <term name> )][io( <term name> <term name> … <term name> )][switch( <term name> <term name> … <term name> )][defsymbol( <symbol arguments> )]; delay parameters and model/element initialization for; a timing analyzer[delayTable( <delay arguments> )[taModelInit( <model initialization arguments> )][taElmInit( <element initialization arguments> )][timingViolationTable( <timing violation arguments> )][ <any S/SLG command or SKILL function> ];; symbol generation takes place (default)symbolGen = t;; timing view generation takes place (default)taGen = t;; append properties to symbol[lmDefViewProp( <view property arguments> )]; append properties to terminals of symbol[lmDefTermProp( <terminal property arguments> )]
)
Description
Defines a cell, generates a symbol, and backannotates objects.
You can use any S/SLG command or SKILL function as an argument. If you specify requiredparameters, the symbol view of the cell can be automatically generated. You can specifytime delay information for a timing analyzer view. In addition, you can specify properties of thesymbol view for simulation and other purposes.
June 2000 628 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Properties
Each argument specified in lmDefCell is sequentially run in addition to default symbolgeneration and timing view generation. You can add commands (such as lmDefViewPropand lmDefTermProp ) to manipulate symbol properties. You can specify a completecharacterization of the symbol in the argument.
Variables
You can set the values of several global Boolean variables to change default values. ThesymbolGen variable controls symbol generation. The default value, t , triggers symbolgeneration as the first action of lmDefCell . If you set symbolGen to nil , no symbolgeneration takes place.
The taGen variable controls timing view generation. The default value, t , enables timing viewgeneration if delayTable parameters are specified. If you set taGen to nil , no timing viewgeneration takes place.
Arguments
input Input terminals.
output Output terminals.
io Input/output terminals.
switch Switch terminals.
defsymbol Symbol generation parameters. Refer to Appendix B, “Text-to-Symbol Generator”, for the format of defsymbol arguments.
delayTable Timing delay for the input/output pairs of the cell.
taModelInit Model for a timing analyzer to initialize.
taElmInit Element for a timing analyzer to initialize.
timingViolationTableIllegal timing.
June 2000 629 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Example
lmDefCell( aoi32input(A1 A2 A3 B1 B2)output(Y)lmDefViewProp(; add some properties to the symbol )
)
Generates a symbol view for the cell aoi32 .
June 2000 630 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmDefTermProp
lmDefTermProp([<cell name>][<view name>]( <terminal list> <property name> <property value> … <propertyname> = <property value> )( <terminal list> <property name> = <property value> … <propertyname> <property value> ))
Description
Adds properties to the terminals of the specified cellview. To add terminal properties, addspecified properties to the original property list and save the new file.
Variables
The replaceTermProp global variable controls the property-adding mode. The defaultvalue is nil , which means the mode is appending. If you set replaceTermProp to t , themode is replacement. replaceTermProp is automatically set to nil when you runlmDefCell and reset to the original value when finished.
Arguments
cell name Optional only when lmDefTermProp is used in lmDefCell .The first name (not a terminal name) in the argument list istreated as the cell name.
view name Default: symbol
terminal listHas the following format:
<terminal list> := <terminal name> | t | input | output | io |switch | ( <terminal name> <terminal name> … <terminal name> )
t Implies all terminals of the cell.input Implies all input terminals.output Implies all output terminals.io Implies all input/output terminals.switch Implies all switch terminals.
June 2000 631 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Note: If a terminal name is t , input , output , io , or switch , enclose it in quotationmarks to distinguish it from the keyword.
property nameAny SKILL symbol (identifier) or string.
property valueAny SKILL expression that returns proper values.
Example
lmDefTermProp( and2 symbol( A name = "A" )( B name = "B" )( Y name = "Y" )
)lmDefTermProp( and2
( t create = time("Apr 15 9:00:00 2000") ); refer to all terminals
)lmDefTermProp( and2 symbol
( input a = 1 ); refer to all input terminals( Y b = 1.1)
)lmDefTermProp( and2
( (A B) type = "input"))
Cell and2 has input terminals A and B and output terminal Y. Puts a list of properties intothese terminals.
June 2000 632 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmDefViewProp
lmDefViewProp( [<cell name>] [<view name>] <property name> <propertyvalue> … <property name> <property value> )
Description
Adds properties to the specified cellview. To add properties, add the specified properties tothe original property list and save the new file.
Variables
The replaceViewProp global variable controls the property adding mode. The defaultvalue, nil , means the mode is appending. If you set replaceViewProp to t , the mode isreplacement. replaceViewProp is automatically set to nil when running lmDefCell andis reset to the original value when finished.
Arguments
cell name Optional only when lmDefViewProp is used in lmDefCell .The first name (not a property name) in the argument list istreated as the cell name.
view name Default: symbol
property nameAny SKILL symbol (identifier) or string.
property valueAny SKILL expression that returns proper values. The syntax isas follows:
<property value> := <simple value>( <simpleValue> [(<range>)]) |time( <time value> [(<range>)]) |<filename>( <filename value> ) |ilExpr( <string> ) |nlpExpr( <string> ) |proplist( <property list> )
<property list> := <property pair> <property list> |<property pair> <property pair> := <property name> =<property value>
range := <enumeration> | <lower bound> <upper bound>
June 2000 633 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
<enumeration> := <string enumeration> | <string><lower bound> := <simple value> | <time value> | nil<upper bound> := <simple value> | <time value> | nil<simple value> := <integer> | <floating point number> | <string><Boolean value> := yes | true | t | no | false | nil<time value> := <string><filename value> := <string>
time Indicates the property type is time. If the type of a property istime , <time value> should contain the date, time, and year.For example, the propertylastChanged = time(“Jan 20 8:17:56 2000”)is a valid expression. Only the first three characters are neededto specify the month.
filename Indicates the property type is a filename. If the property type isfilename , <filename value> should be a string indicatingthe filename. For example, the propertymyFile = filename(“magic.c”) is a valid expression.
ilExpr Indicates the property type is a SKILL expression. This type ofproperty should have a valid SKILL expression.
nlpExpr Indicates the property type is a Netlist Processor (NLP)expression. This type of property is used mainly by the NLP ingenerating a netlist. Refer to the Open Simulation System (OSS)Reference Manual for details about NLP.
proplist Indicates the property type is a property list. In the database, aproperty list can be specified as the value of a property. That is,a property list can contain other property lists to form ahierarchical property list.
range The values of range must be enclosed in parentheses. If nil isspecified for a lower or upper bound in a range, it is unbounded.If a range is an enumeration type, each value in the range shouldbe a string (a name in quotation marks).
Examples
lmDefViewProp( and2 symbol"instance#" = 1snapSpacing = 4screenGridSpacing = 20
June 2000 634 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
screenGridMultiple = 5drawGrid? = yesdrawAxes? = nouserUnits = "userUnits""graphicsEditorUnits per userUnit" = 1newFont2 = time("Mar 19 14:38:57 2000")instancesLastChanged = time("Jun 20 10:16:19 2000")lastChecked = time("Nov 27 14:30:57 1999")tr = 2.0 * basic_process_timetf = 0.5 * lmGetValue(tr); properties for SILOS simulation (a hierarchical property listsilos = proplist(
Input_Pin_List = nlpExpr("[|A] [|B]")Pin_Net_Map = nlpExpr("\\n$ 1 [|Y]=Y [|A]=A [|B]=B")
; the value of Pin_Net_map is nlpExpr("\n$ 1 ; [|Y]=Y [|A]=A [|B]=b")
; the first "\" is used to quote the second for parsingNLPElementPostamble = nlpExpr("[@SILOS_AND_Image]")
); property with name="speed", value=10, type=integer,; lower-bound=8 and upper-bound=12speed = (10 (8 12)); property with name="file", value="property.c", type=filenamefile = filename("property.c")
)
Puts a list of properties into the symbol view of the cell and2 . Before you run this function,you should define the variable basic_process_time . The lmGetValue function is apredefined function for getting the value of a named property.
ten = 10 ; define variable tenunit = 1n ; define variable unitlmDefViewProp( and2 "cmos_sch" ; cmos_sch is double quoted because
; the non-alphanumeric character; "." is in the name
a = 10b = (ten (8 12))c = (10)d = (ten (8 nil))e = 2*unitf = (2n (1n 4n))g = (2n)h = (2*unit (nil 4*unit))i = yes ; yes, true, and t are identicalj = truek = tl = no ; no, false, and nil are identical
June 2000 635 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
m = falsen = nilo = yesp = "test"q = ("test" ("try" "test" "experiment"))r = ("test")s = ("test" ("test" "try" "debug"))"t" = filename("print.c") ; name t is double quoted
; to distinguish it from; SKILL keyword t
u = filename("print.c") ; do not specify a range; for filename
v = time("Apr 1 12:00:00 2000")w = time("Apr 1 12:00:00 2000" ("Mar 1 12:00:00 2000"
"May 1 12:00:00 2000"))x = time("Apr 1 12:00:00 2000")y = time("Apr 1 12:00:00 2000" (nil "May 1 12:00:00 2000")z = proplist( ; hierarchical property listaa = 1bb = 1.1cc = proplist(
aaa = 2bbb = 2.2)
))
Property specification for the cmos_sch view of the cell and2 .
June 2000 636 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmDeleteTermProp
lmDeleteTermProp( <cell list> <view name> ( <terminal list> …<property name> <terminal list> … <property name> ))
Description
Deletes specified properties from the terminals of specified views.
Arguments
cell list <cell list> := <cell name> | t | (<cell name><cell name> … <cell name>)
If cell list is t , all cells in the current library are implied.
view name Default: symbol
terminal listHas the following format:
<terminal list> := <terminal name> | t | input | output | io |switch | ( <terminal name> <terminal name> … <terminal name> )
t Implies all terminals of the cell.input Implies all input terminals.output Implies all output terminals.io Implies all input/output terminals.switch Implies all switch terminals.
Note: If a terminal name is t , input , output , io , or switch , enclose it in quotationmarks to distinguish it from the keyword.
Example
lmDeleteTermProp( SN74181 symbol(input Iih)(output Iol Ioh)
)
Deletes the property Iih from all input terminals and the properties Iol and Ioh from alloutput terminals for the symbol view of cell SN74181.
June 2000 637 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmDeleteViewProp
lmDeleteViewProp( <cell list> <view name> <property name> … <propertyname> )
Description
Deletes specified properties from the specified view.
Arguments
cell list <cell list> := <cell name> | t | (<cell name><cell name> … <cell name>)
view name Default: symbol
property nameAny SKILL symbol (identifier) or string.
Examples
lmDeleteViewProp( (and2 and3) symbol partName slotId )
Deletes the properties partName and slotId from and2 and and3 cells symbol view.
lmDeleteViewProp( t spice gamma lambda )
Deletes the gamma and lambda properties from the spice view for each cell in the currentlibrary.
June 2000 638 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmGetValue
lmGetValue( <property name> )
Description
Returns the value of a specified view property in the current referenced view.
If the specified property does not exist, nil is returned. The returned value can be an integer,a floating-point number, a Boolean value, or a string.
Use lmGetValue only in expressions in lmDefViewProp , lmDefTermProp , orlmCheckView to remove any ambiguity about the referenced cellview.
Arguments
property nameAny SKILL symbol (identifier) or string.
June 2000 639 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmLoadData
lmLoadData( t_file t_lib [t_path | nil [t_config | nil [t_mode |nil] ] ] )=> t/nil
Description
Opens a working library, loads the library command file, and closes the library when you arefinished.
Arguments
t_file S/SLG library command filename.
t_lib Working library name.
t_path Search path of the working library. If you specify a null string ornil , the program searches paths previously set up bydbSetPath for the named library.
t_config Configuration name, which lets you to set up the working contextof the library. If you specify a null string or nil , the program usesthe default configuration.
t_mode Valid Values: r (read only), a (append), w (write only)Default: r
Example
lmLoadData( "myFile.lm" "myLib" "" "" "a" )
Loads a command file, where myFile.lm is the library command file, and myLib is yourworking library.
June 2000 640 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmOpenLib
lmOpenLib( t_lib [t_path | nil [t_config | nil [t_mode | nil]]] )=> t/nil
Description
Opens a library.
Note: Call lmOpenLib before starting any S/SLG command and call lmCloseLib when youare done if you are not using lmLoadData to load the library command file.
Arguments
t_lib Working library name.
t_path Search path of the working library. If you specify a null string ornil , the program searches paths previously set up bydbSetPath for the named library.
t_config Configuration name, which lets you set up the working context ofthe library. If you specify a null string or nil , the program usesthe default configuration.
t_mode Valid Values: r (read only), a (append), w (write only) Default: r
Example
lmOpenLib( "myLib" )
Opens a library in read mode, where myLib is your working library.
June 2000 641 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintLibTermProp
lmPrintLibTermProp( <view name> [<filename>] )
Description
Prints terminal properties of the specified view for each cell in the current library.
Arguments
view name <view list> := <view name > | t | (<view name> …<view name>)
filename Name of a file where the printout is stored. If not specified, outputis displayed on the screen.
Example
lmPrintLibTermProp( symbol )
Prints all terminal properties of the symbol view for each cell in the current library.
June 2000 642 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintLibViewProp
lmPrintLibViewProp( <view name> [<filename>] )
Description
Prints properties of the specified view for each cell in the current library.
Arguments
view name Default: symbol
filename Name of a file where the printout is stored. If not specified, outputis displayed on the screen.
Examples
lmPrintLibViewProp( symbol )
Prints properties of the symbol view for each cell in the current library.
lmPrintLibViewProp( symbol "symbol.lil" )
Stores output in the file symbol.lil .
June 2000 643 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintTerm
lmPrintTerm( <cell name> <view list> [<filename>] )
Description
Prints names, types, and widths of all terminals of the specified cellviews.
Arguments
cell name Optional only when lmPrintTerm is used in lmDefCell .
view list <view list> := <view name > | t | (<view name> …<view name>)
filename If specified, the output is put into the named file; otherwise, theoutput is displayed on the screen.
June 2000 644 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintTermProp
lmPrintTermProp( <cell name> <view list> [<filename>])
Description
Prints properties of all terminals of the specified views of a cell.
Arguments
cell name Optional only when lmPrintTermProp is used in lmDefCell .
view list <view list> := <view name > | t | (<view name> …<view name>)
filename Name of a file where the printout is stored. If not specified, outputis displayed on the screen.
Output from lmPrintTermProp has the same format as that of lmDefTermProp , so youcan edit the output file, and then put the properties back into the terminals.
Example
lmPrintTermProp( nfet t )
Prints the terminal properties of all views of the cell nfet .
June 2000 645 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmPrintViewProp
lmPrintViewProp( <cell name> <view list> [<filename>] )
Description
Prints properties of all specified views of a cell.
Arguments
cell name Optional only when lmPrintViewProp is used in lmDefCell .The first name (not a property name) in the argument list istreated as the cell name.
view list <view list> := <view name > | t | (<view name> …<view name>)
filename Name of a file where the printout is stored. If not specified, theoutput is displayed on the screen.
Output from lmPrintViewProp has the same format as that of lmDefViewProp , so youcan edit the output file and then put the properties back into the view.
Examples
lmPrintViewProp( and2 symbol "and2.out" )
Prints properties of the symbol view of the cell and2 in the file and2.out .
lmPrintViewProp( and2 t "and2prop" )
Prints properties of all views of the cell and2 in the file and2prop .
lmPrintViewProp( and2 (symbol silos ta) "and2.sim" )
Prints properties of views symbol , silos , and ta of the cell and2 in the file and2.sim .
June 2000 646 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmReset
lmReset( )
Description
Resets all global variables to their default values.
June 2000 647 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmSimView
lmSimView( <cell name> <template view name> target<view name><property name> = <property value> … <property name> <propertyvalue> )
Description
Creates a view with specified properties for the specified cell.
Arguments
cell name Optional only when lmSimView is used in lmDefCell .
template view nameName of a template view, normally symbol , in which theterminal information is stored.
target view nameName of the view to be created.
property nameAny SKILL symbol (identifier) or string.
property valueAny SKILL expression, as long as the expression returns propervalues.
All specified properties are added into the target view. <cell name> and <template viewname> must exist in the current library.
Example
lmSimView( and2 symbol silosCreationTime = time("May 1 10:00:00 2000")Input _Pin_List = nlpExpr("[|A] [|B]")NLPElementPostamble = nlpExpr("[|Y] .AND[@Input_Pin_List][@NLPElementId]")
)
Creates the view silos with a list of properties for the cell and2 .
June 2000 648 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Variables That Control Command Execution
Predefined global variables control command execution that affect the modification of thedatabase. The following table shows variables and how they control lm functions.
Variable Default Value Use
symbolGen t Controls lmDefCell execution fordefining a cell
taGen t Controls lmDefCell execution for timingview generation
replaceViewProp nil Controls lmDefViewProp execution bycontrolling the property-adding mode
replaceTermProp nil ControlslmDefTermProp execution bycontrolling the property-adding mode
June 2000 649 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
Properties That Modify Values
To modify the value of a view or terminal property in the Cadence environment, use theproperty list editor.
To delete a property, use lmDeleteViewProp or lmDeleteTermProp . Then uselmDefViewProp or lmDefTermProp in append mode to put the property with the desiredvalue back into the database.
You can also use S/SLG commands and text editing. First, print all properties into a file. Then,edit the file by modifying the values of the target property and load the file into S/SLG toreplace all original properties. Remember to set replaceViewProp to t orreplaceTermProp to t . You can add parameters to the property values.
Sample Library Command File
The following example shows a text file containing several commands and variable settings.These commands and variables generate symbols, specify timing parameters, definecellview and terminal properties, and print cellview and terminal properties. A semicolon ( ;) defines comments.
lmOpenLib( "myLib" "" "" "a" ); library must be opened in append mode in order to execute; subsequent commands, such as lmDefCell, lmDefViewProp. This; command is redundant if you use lmLoadData to load this library; command file.;symbolGen = t; global variable setting;; cell description for SN74181;lmDefCell( "74181"
; input and output terminal namesinput( A0 A1 A2 A3 B0 B1 B2 B3 S0 S1 S2 S3 CIN_ M )output( F0 F1 F2 F3 AEQB COUT_ Y X )defsymbol(
symbolProps(vendorName = "TI"partName = "SN74181"refDes = "U100"
)
June 2000 650 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
); specify time delay for generating a timing view delayTable(
( CIN_ COUT_ 12:13 nonInvert )( (A0 A1 A2 A3) COUT_ 35ns:33ns invert )( (B0 B1 B2 B3) COUT_ 35ns:33ns nonInvert )( CIN_ (F0 F1 F2 F3) 13ns:12ns )( (A0 A1 A2 A3) Y 17ns:17ns nonInvert )( (B0 B1 B2 B3) Y 17ns:17ns invert )( (A0 A1 A2 A3) X 17ns:17ns nonInvert )( (B0 B1 B2 B3) X 17ns:17ns invert )( (A0 B0) F0 32ns:23ns )( (A1 B1) F1 32ns:23ns )( (A2 B2) F2 32ns:23ns )( (A3 B3) F3 32ns:23ns )( (A0 A1 A2 A3 B0 B1 B2 B3) AEQB 35ns:32ns )
); add properties into the symbol viewlmDefViewProp(
timeAdded = time("Apr 1 10:00:00 2000")author = "John Smith"; define properties for SILOS logic/fault simulation if; used as function modelsilos = proplist(
NLPElementPostamble =nlpExpr("[@SILOS_FNx_Image]")Input_Pin_List = nlpExpr("[|A0] [|A1] [|A2]\
[|A3] [|B0] [|B1] [|B2] [|B3] [|S0] [|S1] [|S2] \[|S3] [|CIN_] [|M]")
Output_Pin_List = nlpExpr("[|F0] [|F1] [|F2] [|F3] \[|AEQB] [|COUT_] [|Y] [|X]")
Pin_Net_Map = nlpExpr("\\n$ 8 [|F0]=F0 [|F1]=F1 \[|F2]=F2 [|F3]=F3 [|AEQB]=AEQB [|COUT_]=COUT_ \[|Y]=Y [|X]=X \[|A0]=A0 [|A1]=A1 [|A2]=A2 [|A3]=A3N[|B0]=B0 \[|B1]=B1 [|B2]=B2 [|B3]=B3 [|S0]=S0 [|S1]=S1 \[|S2]=S2 [|S3]=S3 [|CIN_]=CIN_ [|M]=M") \
; The value of Input_Pin_List Output_Pin_List and; Pin_Net_Map should be put into one line of a text; file. Here it is split into several lines for a more; readable format.)
); define the characteristics of input/output current for; terminals
June 2000 651 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
; iol : low-level output current; ioh : high-level output current; iil : low-level input current; iih : high-level input current;
lmDefTermProp(( output iol = 16mA )( (F0 F1 F2 F3 COUT_ Y X) ioh = -800uA )( AEQB ioh = 250uA )( (A0 A1 A2 A3 B0 B1 B2 B3) iil = -4.8mA iih = 120uA )( (S0 S1 S2 S3) iil = -6.4mA iih = 160uA )( M iil = -1.6mA iih = 40uA )( COUT_ iil = -8mA iih = 200uA ))
); cell description for TC4531BP - 12bit parity tree; ignore symbol generationsymbolGen = nillmDefCell( "4531"
; input and output terminal namesinput( D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11\"ODD|EVEN" )output( Q )defsymbol(
symbolProps(vendorName = "TOSHIBA"partName = "TC4531BP"refDes = "U200"
))
; specify time delaydelayTable(
( (D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11) 320ns:320ns )( "ODD|EVEN" 210ns:210ns )
); add properties into the symbol viewlmDefViewProp(
timeAdded = time("Apr 1 10:00:00 2000")author = "John Smith"; define properties for SILOS logic/fault simulation; if used as a function modelsilos = proplist(
NLPElementPostamble =
June 2000 652 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
nlpExpr("[@SILOS_FNx_Image]")Input_Pin_List = nlpExpr("[|D0] [|D1] [|D2] \[|D3] [|D4] [|D5] [|D6] [|D7] [|D8] [|D9] \[|D10] [|D11] [|ODD|EVEN]") \
Output_Pin_List = nlpExpr("[|Q]") \Pin_Net_Map = nlpExpr("\\n$ 1 [|Q]=Q [|D0]=D0 \
[|D1]=D1 [|D2]=D2 [|D3]=D3 [|D4]=D4 [|D5]=D5 \[|D6]=D6 [|D7]=D7 [|D8]=D8 [|D9]=D9 \[|D10]=D10 [|D11]=D11 [|ODD|EVEN]=ODD|EVEN")
; The value of Input_Pin_List and Pin_Net_Map; should be put into one line of a text file. Here it; is split into several lines for a more readable format)
);; define the characteristics of input/output current for; terminals; iol : low-level output current; ioh : high-level output current; iil : low-level input current; iih : high-level input current; VDD = 5V, VSS = 0V, 25ClmDefTermProp(
( outputiol = 1.5 ; 1.5Aioh = -1.0 ; –1.0A
)( input
iil = -0.01nAiih = 0.01nA
))
); append properties to the symbol of SN74181replaceViewProp = nillmDefViewProp( "74181"
vdd = 5date = time("Apr 1 12:00:00 2000")
); append properties to some terminals of the symbol of TC4531replaceTermProp = nillmDefTermProp( "4531"
("ODD|EVEN"
June 2000 653 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
check = "odd or even parity")(Q is = "only output")
); print all properties of the symbol of SN74181 in the file; prop.74181lmPrintViewProp( "74181" symbol "prop.74181" ); print all terminal properties of the symbol of TC4531BP in; the file term.4531lmPrintTermProp( "4531" symbol "term.4531" ); replace the properties in the symbol of SN74169replaceViewProp = tlmDefViewProp( "74169" symbol
instancesLastChanged = time("Jun 28 18:37:50 2000")userUnits = "userUnits""DBUPerUU" = 1.0snapSpacing = 5screenGridSpacing = 10screenGridMultiple = 4displayExpanded? = yestype = "TTL"manufacturerID = "TI"partName = "1000"
); replace the terminal properties in the symbol of SN74169replaceTermProp = tlmDefTermProp( "74169" symbol
(inputiil = -2mAiih = 50uA
)(output
iol = 20mAioh = -1mA
)); print the properties of symbol view for each cell in the current; working library in the file sym.proplmPrintLibViewProp( symbol "sym.prop" ); print the terminal properties of symbol view for each cell; in the current working library in the term.prop filelmPrintLibTermProp( symbol "term.prop" )
June 2000 654 Product Version 4.4.6
Virtuoso Schematic Composer User GuideSymbol and Simulation Library Generator
lmCloseLib; this command is redundant if you use lmLoadData to load this; command file.
June 2000 655 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
DConfiguring and Using Kanji Notes
You can configure your system to access Add – Note – Kanji Note for instantiating kanji notesymbols in your schematic design. The following topics are covered in this chapter.
■ Overview on page 657
■ Configuring Your System on page 657
❑ Installing the Required Files on page 657
❑ Uncompressing the Files on page 657
❑ Modifying the Schematic Editor Menu File on page 658
❑ Setting the Environment Variable on page 659
❑ Modifying the Data Registry File on page 659
■ Using Kanji Notes on page 660
❑ Formats, Files, and Views on page 660
❑ Adding a New Note on page 661
❑ Generating a Symbol from an Existing File on page 661
❑ Generating a Symbol from a New File on page 662
❑ Editing an Existing Note on page 664
■ Limitations on page 666
■ Known Problems on page 666
■ Using the schHiCreateKanjiSymbol Function on page 668
June 2000 656 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
Overview
The Virtuoso® schematic composer provides a user interface that lets you create or modifyEUC packed format kanji files. Based on the information in a kanji file, the software generatesa symbol cellview that contains kanji character graphics. You can then add documentation toyour schematics by placing an instance of the symbol.
Configuring Your System
To enable the user interface, you need to perform the following tasks:
■ Install (obtain and uncompress) the required vector files
■ Modify the schematic editor menu file
■ Set an environment variable
■ Modify the data registry file (as required)
The following sections describe the configuration tasks you must complete before you canaccess Add – Note – Kanji Note.
Installing the Required Files
The software uses two vector files to convert EUC-formatted files into schematic composercompatible graphics. The vector files describe the shapes of approximately 5,000 kanjicharacters.
The two compressed kanji vector files are
■ kanjiVectors1.Z
■ kanjiVectors2.Z
The vector files are normally stored in the following location:
your_install_dir /tools/dfII/etc/tools/schematic/
Note: If you do not find the files in the specified location, you can request copies from eitherCKK or the Cadence Customer Response Center (CRC).
Uncompressing the Files
To uncompress the vector files, type the following commands at the UNIX prompt:
June 2000 657 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
uncompress kanjiVectors1.Z
uncompress kanjiVectors2.Z
The software creates the following uncompressed vector files:
./tools/dfII/etc/tools/schematic/kanjiVectors1
./tools/dfII/etc/tools/schematic/kanjiVectors2
Note: The software looks for these uncompressed kanji vector files in the three followinglocations in the specified order:
■ your_install_dir /tools/dfII/etc/tools/schematic
■ . (the current working directory)
■ /tmp
Modifying the Schematic Editor Menu File
You need to modify the schematic menu file so that the users can access the Add – Note –Kanji Note command from the user interface.
To modify the file, do the following:
1. Use your text editor to open
your_install_dir /etc/tools/menus/schematic.menus
2. Search for the following text:
(NText "Note Text ..." "schHiCreateNoteLabel()" editOnly)
3. Open a line below it, and add the following:
(NKanji "Note Kanji ..." "schHiCreateKanjiSymbol()" editOnly)
4. Search for the following text:
(NoteText "Note Text ..." "schHiCreateNoteLabel()" editonly)
5. Open a line below it, and add the following:
(NoteKanji "Note Kanji ..." "schHiCreateKanjiSymbol()"editOnly)
6. Save the file and quit the editor.
June 2000 658 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
Setting the Environment Variable
The value of the invokeKanjiEditor environment variable determines which kanji EUC texteditor you access from the user interface.
The default value is set to
kterm -km euc -e vi
If the default value does not work for your system, you need to change the default setting inyour .cdsenv or .cdsinit file.
Testing the Default Setting
You can test whether the default value works for your system.
At a UNIX prompt, type the default value and append a filename as shown in the example:
unix> kterm -km euc -e vi /tmp/kanji_test
If a kanji editor opens, the default value works for your system.
Modifying the Data Registry File
Unless you register a special view type, as shown below, the software generates the followingwarning message when users in a TDM workarea save the original EUC file in the same cellas the new kanji symbol:
Warning: Unknown master tool file 'kanjitxt.euc' in view directory ...
To register the special view type, do the following:
1. Change directories to the directory that contains your data registry file, which should beone of the following:
.../4.4/share/cdssetup/registry/data/composer.reg
./data.reg
~/data.reg
2. Add the following to the data registry file:
DataFormat kanjiEUCText { // Define kanjiEUCText, non-asciisource text
Pattern = kanjitxt.euc;
Default_Editor = NONE;
June 2000 659 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
dfII_ViewType = kanjiEUCText;
Co_Managed = kanjitxt.euc master.tag;
}
The online help file appears.
3. Click one of the help topics.
The help file displays information about the topic you selected.
Using Kanji Notes
The Add – Note – Kanji Note command lets you create symbol cellviews containing kanjicharacters that you can instantiate in your schematic design.
The general procedure for creating and placing a kanji note follows:
■ Use a kanji text editor to create or edit a Kanji EUC-formatted file.
■ Generate a symbol cellview based on the information in the Japanese EUC-formattedfile.
■ Add an instance of the symbol cellview to your design.
Formats, Files, and Views
You use Add – Note – Kanji Note to open a kanji text editor, which you use to create aJapanese EUC packed (multiple-width) formatted file.
After you quit the kanji text editor, you click on the OK or Apply button on the Add Kanji Noteform. The software then
■ Generates a symbol cellview
■ Creates a kanj i cellview
The symbol cellview contains the graphics that represent the characters described in theEUC file. The software draws each character in the symbol by referencing the X and Ycoordinates, which are stored in the two kanji vector files.
The kanji cellview, which the software stores in your library, contains an exact copy of theinformation in the source Japanese EUC packed (multiple-width) formatted file.Because this copy resides in your library, you can use the schematic editor, whenever youwish, to change the file and regenerate the associated symbol and any instances.
June 2000 660 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
Note: The software stores the symbol and the kanji cellviews in the same cell.
Adding a New Note
The basic procedure for adding a new kanji note to your schematic is to generate a newsymbol and place an instance in your design. There are two ways to generate a new kanjinote symbol:
■ Generate a kanji note symbol based on an existing Japanese EUC packed (multiwidth)formatted file
■ Generate a kanji note symbol based on a new Japanese EUC packed (multiwidth)formatted file
Generating a Symbol from an Existing File
To generate a new kanji note symbol based on an existing Japanese EUC packed (multiple-width) formatted file, do the following:
1. Choose Add – Note – Kanji Notefrom the schematic editor menu banner.
The Add Kanji Note form appears.
June 2000 661 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
2. In the Kanji EUC File field, type the name of the existing EUC file.
3. (Optional) Change the default kanji note display parameters.
4. Click OK.
The software
❑ Generates a symbol cellview
❑ Creates a kanji cellview
❑ Opens the Add Instance form and makes the Add Instance command active
5. Move your cursor into the schematic.
A box that represents the instance of the kanji note symbol is bound to your cursor.
6. Place the symbol instance by clicking in the schematic.
The kanji note appears where you click your mouse. The Add Instancecommand remainsactive.
7. Press the Esc key to end the Add Instance command.
The Add Instance form closes.
Generating a Symbol from a New File
To generate a new kanji note symbol based on a new Japanese EUC packed (multiple-width)formatted file, do the following:
1. Choose Add – Note – Kanji Notefrom the schematic editor menu banner.
June 2000 662 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
The Add Kanji Note form appears.
2. In the File Editor field, click Open.
The software initializes the form with a filename and your kanji text editor opens the newfile.
3. In the kanji text editor, enter your kanji text, save the file, and quit the kanji text editor.
4. (Optional) Change the default kanji note display parameters.
5. Click OK.
The software
❑ Generates a symbol cellview
❑ Creates a kanji cellview
❑ Opens the Add Instance form and makes the Add Instance command active
6. Move your cursor into the schematic.
A box that represents the instance of the kanji note symbol is bound to your cursor.
7. Place the symbol instance by clicking in the schematic.
The kanji note appears where you click your mouse. The Add Instancecommand remainsactive.
June 2000 663 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
8. Press the Esc key to end the Add Instance command.
The Add Instance form closes.
Editing an Existing Note
To change an existing kanji note symbol and all instances of the note, do the following:
1. Select the instance object in your schematic.
The software highlights the object.
2. Choose Edit – Properties – Objects from the schematic editor menu banner.
The Edit Object Properties form appears.
June 2000 664 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
The form displays the current display parameter settings as CDF values and providesaccess to the kanji text editor.
3. (Optional) Open the kanji text editor, change the kanji note text, and close the editor.
4. The software updates the kanji cellview.
You will not see any change on the Edit Object Properties form.
You will not see any change in the schematic editor window until you click OK or Applyonthe Edit Object Properties form.
5. (Optional) On the Edit Object Properties form, change the parameter values.
June 2000 665 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
You will not see any change in the schematic editor window until you click OK or Applyonthe Edit Object Properties form.
6. Click OK or Apply on the Edit Object Properties form.
Caution
The software regenerates the symbol cellview, which changes allinstances of the symbol cellview.
Limitations
You should consider the following limitations when working with kanji notes.
■ You can use scale factor values of less than 1.0 to create smaller characters. Due toroundoff errors, however, scale factor values of less than 0.25 might make manycharacters unreadable.
■ Each kanji character is converted into many lines in a symbol cellview. Therefore, verylarge EUC files result in symbols that require huge amounts of memory, which can slowredraw speeds significantly.
■ The following character sets are not used often. They are not supported in either thesoftware or the vector files:
❑ EUC half-width katakana (code set 2)
❑ JIS X 0212-1990 (code set 3)
■ The conversion program reads only the first 5,000 characters in an EUC file.
■ If there are errors in the EUC file, the conversion program generates error messages foronly the first 20 errors. The conversion process continues, however, until the programreaches the end of the EUC file or the 5,000-character limit.
Known Problems
Consider the following known problems when working with kanji notes.
■ False warning messages
Sometimes, regenerating a kanji symbol results in a warning message similar to thefollowing:
*WARNING* Ignoring instance "I14" with zero area
June 2000 666 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
You can ignore the warning message. The warning seems to appear when both of thefollowing conditions are true:
❑ A recently created kanji symbol cellview is overwritten
❑ An instance of the overwritten symbol was recently placed on a schematic
■ Japanese EUC packed (multiple-width) formatted files are not deleted automatically.
After you generate the symbol and kanji cellviews, the files you create with the kanji texteditor are no longer needed. Although they do not take up much disk space, you shouldperiodically remove them to maintain a clean file system.
June 2000 667 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
Using the schHiCreateKanjiSymbol Function
schHiCreateKanjiSymbol([ t_text ][ t_justify ][ t_fontStyle ][ n_fontHeight ][ t_type ] )
Description
Creates a note label to annotate the design for documentation purposes. These shapes donot affect connectivity.
Usage
Usable when editing schematics or symbols.
Arguments
t_text Text for your note. The text can include spaces, tabs, and newlines.
t_justify Justification of the label text with respect to its placement.Valid Values: upperLeft , upperCenter , upperRight ,centerLeft , centerCenter , centerRight ,lowerLeft , lowerCenter , lowerRight
t_fontStyle Label font style.Valid Values: euroStyle , fixed , gothic , math , roman ,script , stick , milSpec
n_fontHeight Label height in user units: an integer or a floating-point number.Default: 0.0625
t_type Label type.Valid Values: normalLabel , NLPLabel , ILLabel Default:normalLabel
June 2000 668 Product Version 4.4.6
Virtuoso Schematic Composer User GuideConfiguring and Using Kanji Notes
Using schHiCreateKanjiSymbol
If you do not specify t_text or you specify it as nil , the options form appears and promptsyou for the note label text.
The editor drags the label described by arguments and prompts you to select a location toplace the label.
Example
schHiCreateKanjiSymbol( "Low Pass Filter Section" )
Creates the single string label Low Pass Filter Section using the current settings of allother arguments.
June 2000 669 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
EForm Descriptions
Appendix E describes the schematic composer forms.
■ Add Block Form on page 675
■ Add Custom Pin Form on page 676
■ Add Generic Form – VHDL Properties on page 677
■ Add Instance Form on page 678
■ Add Kanji Note Form on page 679
■ Add Net Expression Form on page 680
■ Add New Property to Find Form on page 681
■ Add New Property to Replace Form on page 682
■ Add New Property for Search Form on page 683
■ Add Note Shape Form – Arc on page 684
■ Add Note Shape Form – Circle on page 685
■ Add Note Shape Form – Ellipse on page 686
■ Add Note Shape Form – Line on page 687
■ Add Note Shape Form – Polygon on page 688
■ Add Note Shape Form – Rectangle on page 689
■ Add Note Text Form on page 690
■ Add Pin Form – Schematic on page 692
■ Add Pin Form – Symbol on page 693
■ Add Property Form – Edit Object Properties on page 694
■ Add Selection Box Form on page 695
June 2000 670 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
■ Add Simulation Monitor Form on page 696
■ Add Symbol Label Form on page 698
■ Add Symbol Shape Form – Arc on page 699
■ Add Symbol Shape Form – Circle on page 700
■ Add Symbol Shape Form – Ellipse on page 701
■ Add Symbol Shape Form – Line on page 702
■ Add Symbol Shape Form – Polygon on page 703
■ Add Symbol Shape Form – Rectangle on page 704
■ Add Wire Form on page 705
■ Add Wire Name Form on page 706
■ Build Inherited View List Form on page 708
■ Cellview From Cellview Form on page 709
■ Cellview From Instance Form on page 710
■ Cellview From Pin List Form on page 711
■ Change Sheet Border Size Form on page 712
■ Check Hierarchy Form on page 713
■ Component Browser Form on page 714
■ Component Browser Preferences Form on page 715
■ Copy Form on page 716
■ Create Cellview Dialog Box – Replace or Modify on page 717
■ Create Schematic Form on page 718
■ Create Schematic Sheet Form on page 719
■ Cross Reference Options Form on page 720
■ Cross-View Checker Form on page 721
■ Delete All Markers Form on page 722
■ Delete Generic Form – VHDL Properties on page 723
■ Delete Property Form – Edit Object Properties on page 724
June 2000 671 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
■ Delete Schematic Sheet Form on page 725
■ Descend Form – Descend Options on page 726
■ Descend Form – Iterated Instance on page 727
■ Descend Form – Multisheet on page 728
■ Descend Form – Noniterated Instance on page 729
■ Display Options Form on page 730
■ Edit Cellview Properties Form on page 733
■ Edit Component Display Form on page 735
■ Edit Object Properties Form – Basic on page 737
■ Edit Object Properties Form – Instance and Block on page 738
■ Edit Object Properties Form – Instance Pin on page 741
■ Edit Object Properties Form – Label on page 743
■ Edit Object Properties Form – Master Property on page 745
■ Edit Object Properties Form – Net Expression on page 747
■ Edit Object Properties Form – Note Shapes on page 749
■ Edit Object Properties Form – Note Text on page 751
■ Edit Object Properties Form – Other Object on page 753
■ Edit Object Properties Form – Pin on page 755
■ Edit Object Properties Form – Pin Name on page 757
■ Edit Object Properties Form – Selection Box on page 759
■ Edit Object Properties Form – Symbol Label on page 760
■ Edit Object Properties Form – Symbol Pin on page 762
■ Edit Object Properties Form – Symbol Shape on page 764
■ Edit Object Properties Form – Wire Name on page 766
■ Edit Object Properties Form – Wire Segment on page 768
■ Edit Pin Order Form on page 770
■ Edit Schematic Sheet Number Form on page 771
June 2000 672 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
■ Editor Options Form on page 772
■ Find Marker Form on page 775
■ Go To Pin Form on page 777
■ Go To Sheet Form on page 778
■ Import Symbol Form on page 779
■ Left, Right, Top, Bottom Pin Attributes Form on page 780
■ Load Label Display Form on page 781
■ Load Schematic Defaults Form on page 782
■ Modify Generic Form – VHDL Properties on page 783
■ Modify Property Form – Edit Object Properties on page 784
■ Move Form on page 785
■ Open Simulation Data Form on page 786
■ Plot Options Form on page 787
■ Renumber Instances Form on page 789
■ Reset Invisible Labels Form on page 790
■ Rotate Form on page 791
■ Route Flight Line Form on page 792
■ Save Label Display Form on page 793
■ Save Schematic Defaults Form on page 794
■ Save Schematics with Errors Form on page 795
■ Schematic Check Options Form on page 796
■ Schematic Find and Symbol Find Forms on page 798
■ Schematic Replace and Symbol Replace Forms on page 800
■ Schematic Select All Form on page 802
■ Schematic Select By Property Form on page 803
■ Schematic Selection Filter Form on page 804
■ Schematic Title Block Properties Form on page 805
June 2000 673 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
■ Set Instance Binding Form on page 806
■ Set Label Display Simulation Data Directory Form on page 807
■ Set Radix Form on page 808
■ Set Time Form on page 809
■ Setup Schematic Rules Checks Form on page 810
■ Show Label Form on page 814
■ Show Views Found Form on page 815
■ Stretch Form – Schematic Editor on page 816
■ Stretch Form – Symbol Editor on page 818
■ Submit Plot Form on page 819
■ Symbol Generation Options Form on page 823
■ Symbol Select All Form on page 827
■ Symbol Select By Property Form on page 828
■ Symbol Selection Filter Form on page 829
■ Synchronization Form on page 830
■ Time Scale Form on page 831
■ VHDL Properties Form on page 832
June 2000 674 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Block Form
Library specifies the library in which you want to add a new block. The default is the libraryfor the current design.
Cells specifies the cell name of the block you want to create. You can specify multiple cellnames by using a space to separate each name. The Cells and Names fields must match innumber. If there are more entries in Cellsthan in Names, the system assigns a name for each.If there are more entries in Names than in Cells, the system ignores the extra names.
View specifies the view you want to create. The default is symbol .
Names specifies the name of the cell. Only one name (instance) can be entered for each cell.There is a one-to-one correspondence between the entries in the Cellsand the Namesfields.You can specify multiple cell names by using a space to separate each name. The CellsandNames fields must match in number. If there are more entries in Cells than in Names, thesystem assigns a name for each. If there are more entries in Namesthan in Cells, the systemignores the extra names.
Pin Name Prefix specifies a name that the system uses to name all the pins that the systemcreates automatically when you connect wires to this block. The default is pin .
Block Shape lists a drawing option and a predefined set of presized blocks that you can addto the design.
freeform prompts you to drag your cursor between two points to specify the oppositecorners of a rectangle. The system draws the rectangle as you drag the cursor.
The default set of presized blocks includes small, medium, large, 2 by1,1 by 2, alu, mux4, and mux8.
June 2000 675 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Custom Pin Form
Pin Names specifies the names for the pins you want to add to your design and the order inwhich you want to add them. To add more than one pin name, use a space to separate thepin names. You can also use a bus expression to name an array of pins.
Direction contains a list of pin directions you can specify for the pins you want to add.
Bus Expansion specifies how the system interprets bus names.
off (default) interprets a bus name as one name and generates only one pin name thatincludes all the bits in the bus range. For example, for the name A<0:1> , the systemgenerates only the pin A<0:1> .
on interprets a bus name as multiple names and generates a pin for each bit of a busrange that you specify in the Pin Names field. For example, for the name A<0:1> , thesystem generates labels A<0> and A<1>.
Draw Mode specifies the line entry method.
draws a straight line in any angle between two points.
begins an L90 shape with a horizontal line segment and alternates betweenhorizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between verticaland horizontal.
draws either a horizontal or vertical line segment first, then a 45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Lock Angle appears only when Draw Mode is set to .
any draws a line using any angle.
45 restricts cursor movement to 45-degree angles from the starting point.
June 2000 676 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Generic Form – VHDL Properties
Name specifies the generic name.
Type specifies the generic type.
Value (Optional) specifies a value for the generic.
June 2000 677 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Instance Form
Library specifies the library that contains the instance.
Cell specifies the instance cell name.
View specifies the instance view name.
Names specifies the names of the components you want to add to the design.
Browse opens a browser. Use the Editor Options form (Options – Editorcommand) to specifywhich browser, the Library Browser or Component Browser, the system opens.
Array lets you create multiple copies of the specified instance in a single operation.
Rows specifies the number of rows.
Columns specifies the number of columns.
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point.
June 2000 678 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Kanji Note Form
Kanji EUC File specifies the path for an existing EUC packed formatted file. Leave this fieldblank if you are creating a new file.
File Editor Open starts the kanji text editor and creates a new EUC packed formatted file.The software automatically names the file by adding a string( _kanji_ ) and a unique number to the current schematic name and by adding the .docsuffix. The software displays the new filename in the Kanji EUC File field.
Library Name specifies the library where you want the software to create the new kanjisymbol. When you start the kanji text editor, the software automatically places the name ofthe current library in this field.
Cell Name specifies the cell where you want the software to create the new kanji symbol.When you start the kanji text editor, the software automatically generates a default cellnameby appending the current schematic cellname with a string ( _kanji_ ) and a uniquenumber.
The software stores the following display parameter settings as cell-level CDF parameters.
Scale Factor specifies a floating-point number for the character size. A value of 1.0represents a character that is 50 database units high and 50 database units wide, which isthe resolution used in the vector files. The default is 0.5 .
Note: Because of roundoff errors, a scale factor of .25 or less can make many charactersunreadable.
Horizontal Spacing specifies the prescaled X distance between adjacent characters. Thedefault value is 20 database units.
Text Direction specifies how the kanji text editor writes the text in the schematic.
horizontal causes the editor to write the text from left to right.
vertical causes the editor to write the text from top to bottom.
Vertical Spacing specifies the prescaled Ydistance between adjacent characters. Thedefault value is 20 database units.
June 2000 679 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Net Expression Form
Property Name specifies the name of the property that can be used to override the defaultglobal signal; in other words, the name of the property whose value redefines the name of thenet. The system evaluating the expression searches for the property that has this name to getthe value to inherit for the net.
Default Net Name specifies the global signal name to be used for the net associated with thisnet expression label. The system uses the default net name —for example vdd! , gnd! , orvss! –—when a netSet property has not been found on an instance of the currenthierarchical path. The name must specify a global scalar value.
Font Height specifies the height of the net expression label text in user units.
Font Style specifies the font used to display the net expression label.
Justification specifies the position of the cursor with respect to the text.
Entry Style specifies the mechanism for placing the net expression label on a wire or pin.
fixed offset automatically positions the net expression label at a specified distance fromthe wire or pin. The offset can be changed on the Add Wire Name form.
manual requires you to place the net expression label at a grid location on or near thewire or pin.
Rotate turns the label text counterclockwise in 90-degree increments around the referencepoint.
June 2000 680 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add New Property to Find Form
Property Name specifies a name of the property you want to add to the property namesearch list on the Schematic Find or Symbol Find form.
June 2000 681 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add New Property to Replace Form
Property Name specifies a name of the property you want to add to the property namesearch list on the Schematic Replace or Symbol Replace form.
June 2000 682 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add New Property for Search Form
Property Name specifies a name for the property you want to add to the list of propertynames on the Schematic Select By Property form.
June 2000 683 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Arc
Shape specifies a shape you can add to your design to outline the note text. The Add NoteShape form expands and contracts depending on which Shape option you select.
Line Style specifies the type of line you want to use to draw the arc shape.
June 2000 684 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Circle
Shape specifies a shape you can add to your design to outline the note text. The Add NoteShape form expands and contracts depending on which Shape option you select.
Line Style specifies the type of line you want to use to draw the circle shape.
solid specifies a solid line.
dashed specifies a dashed line.
June 2000 685 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Ellipse
Shape specifies a shape you can add to your design to outline the note text. The Add NoteShape form expands and contracts depending on which Shape option you select.
Line Style specifies the type of line you want to use to draw the ellipse shape.
solid specifies a solid line.
dashed specifies a dashed line.
June 2000 686 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Line
Shape specifies a shape you can add to your design. The Add Note Shape form expands andcontracts depending on which Shape option you select.
Line Style specifies the type of line you want to add.
solid specifies a solid line.
dashed specifies a dashed line.
Draw Mode specifies the line entry method.
draws a straight line in any angle between two points.
draws two line shapes. The first is horizontal; the second is vertical.
draws two line shapes. The first is vertical; the second is horizontal.
draws either a horizontal or vertical line segment first, then a 45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Lock Angle appears only when Draw Mode is set to .
any draws a wire using any angle.
45 restricts cursor movement to 45-degree angles from the starting point.
Line Width specifies the line width in user units.
narrow draws a line using the default setting of 0.0625 user units.
wide draws a wide-width line. When you select this option, you can edit the text field tochange the default width of 0.0625 user units.
June 2000 687 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Polygon
Shape specifies a shape you can add to your design to outline the note text. The Add NoteShape form expands and contracts depending on which Shape option you select.
Line Style specifies the type of line you want to use to draw the polygon shape.
narrow draws a line using the default setting of 0.0625 user units.
wide when enabled, lets you edit the default width of 0.0625 user units.
Draw Mode specifies the line entry method.
draws a straight line in any angle between two points.
begins an L90 shape with a horizontal line segment and alternates betweenhorizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between verticaland horizontal.
draws either a horizontal or vertical line segment first, then a 45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Lock Angle appears only when Draw Mode is set to .
any draws a line using any angle.
45 restricts cursor movement to 45-degree angles from the starting point.
June 2000 688 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Shape Form – Rectangle
Shape specifies a shape you can add to your design to outline the note text. The Add NoteShape form expands and contracts depending on which Shape option you select.
Line Style specifies the type of line you want to use to draw the rectangle shape.
solid specifies a solid line.
dashed specifies a dashed line.
June 2000 689 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Note Text Form
Note Text specifies the text for the note you want to add to your design.
Entering text
Click in the text box. The pointer becomes an I-beam and you can begin typing.
Adding new lines
Press Return to move the cursor to a new line.
Selecting text
Click once at the location where you want to start selecting text.Click twice to select the word to the right of the cursor.Click three times to select the entire line.Click four times to select all the text in the text box.
Hold the left mouse button down and drag the cursor to select an area of text.
Pasting text
Select some text, point to the location in the text box, hold down the Control key,and click where you want to copy the selection, then click the middle mouse buttonto paste the text.
Deleting selected text
Control-h , Del , and Backspace delete selected text.
Deleting unselected text
Control-h or Backspace deletes one character to the left.
Del deletes one character to the right.
Meta-Backspace deletes one word to the left.
Meta-Del deletes one word to the right.
Deleting entire lines
Press Control-a to move the cursor to the beginning of the line,then press Control-k .
Press Control-e to move the cursor to the end of the line, thenpress Control-u .
June 2000 690 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Read File copies in a file and displays the file contents in the Note Text field. This actionoverwrites any text you entered in the text box.
To read in the file, specify the path to the text file, then click on Read File. When the filecontains characters that cannot be displayed, the system issues a warning and removes thecharacters before copying in the file.
The following options affect the appearance of the note text in the design but not in the NoteText field.
Font Height specifies the height of the note text in user units.
Font Style specifies the font the system uses to display text.
Justification specifies the position of the cursor with respect to the text.
Rotate turns the note text counterclockwise in 90-degree increments around the referencepoint.
June 2000 691 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Pin Form – Schematic
Pin Names specifies the names for the pins you want to add to the design and the order inwhich you want to place them. To add more than one pin name, use a space to separate eachname. When you enable the Bus Expansionoption, you can use a bus expression to name anarray of pins.
Direction contains a list of the directions you can specify for the pins you want to add.
Usage contains a list of the pin types you can specify for the pins you want to add. The defaultis schematic. Use offsheetonly when you are going to connect the added pins to another sheetin a multisheet schematic.
Bus Expansion specifies how the system interprets bus names.
off (default) causes the system to interpret a bus name as a single name and generatea single pin that includes all the bits in the bus range. For example, for the name A<0:1> ,the system generates only the pin A<0:1> .
on causes the system to interpret a bus name as multiple names and generate a pin foreach bit of a bus range that you specify in the Pin Names field. For example, for the pinA<0:1> , the system generates pins A<0> and A<1>.
Placement controls whether you can place multiple pins automatically in one operation.
single (default) requires you to point and click to identify the location for each pin.
multiple prompts you to point and click to specify the first and second pin locations. Thesystem uses the distance between these two points as a basis for automatically placingany remaining pins.
Rotate turns the pin in 90-degree increments counterclockwise around the reference point.
Sideways mirrors the pin across an imaginary vertical line passing through the referencepoint.
Upside Down mirrors the pin across an imaginary horizontal line passing through thereference point.
June 2000 692 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Pin Form – Symbol
Pin Names specifies the names for the pins you want to add to the design and the order inwhich you want to place them. To add more than one pin name, use a space to separate eachname. If you enable the Bus Expansionoption, you can use a bus expression to name an arrayof pins.
Direction contains a list of pin directions you can specify for the pins you want to add.
Bus Expansion specifies how the system interprets bus names.
off (default) interprets a bus name as one name and generates only one pin that includesall the bits in the bus range. For example, for the name A<0:1> , the system generatesonly the pin A<0:1> .
on interprets a bus name as multiple names and generates a pin for each bit of a busrange that you specify in the Pin Namesfield. For example, for the pin A<0:1> , the systemgenerates pins A<0> and A<1>.
Type contains a list of the valid pin types.
Placement controls whether you can place multiple pins automatically in one operation.
single (default) requires you to point and click to identify the location for each pin.
multiple prompts you to point and click to specify the first and second pin locations. Thesystem uses the distance between these two points as a basis for automatically placingany remaining pins.
Label Offset specifies how far, in user units, the pin name (pin label) is from the pin.
Label Location specifies where the pin name (pin label) appears in respect to the pin.
Rotate turns the pin in 90-degree increments counterclockwise around the reference point.
Sideways mirrors the pin across an imaginary vertical line passing through the referencepoint.
Upside Down mirrors the pin across an imaginary horizontal line passing through thereference point.
June 2000 693 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Property Form – Edit Object Properties
Name specifies a name for the new property.
Type specifies a property type.
Value specifies a value for the property.
Note: To define most properties, you need to specify only the name, type, and value.However, when you specify string, int, or float as the type, one of the following fields appearson the form.
Choices appears when Typeis set to string. If the string can have more than one value, typethe possible values. Entries in this field must match an entry in the Value field.
Min and Max appear when Type is set to int or float. Specify a range for the minimum andmaximum range for the integer or floating-point value.
June 2000 694 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Selection Box Form
Use your mouse to indicate two opposite vertices of a rectangle that contains the objects youwant to select, or click Automatic.
Automatic adds a selection box that contains all the objects that make up the symbol.
June 2000 695 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Simulation Monitor Form
Signal Name specifies the names of the nets you want to monitor. You can add net namesby selecting a wire, pin, or instance in the schematic or by typing the signal names. Use aspace to separate multiple signal names. The following rules apply:
■ If the name is not a valid name in the database, the signal is not monitored and a warningis issued.
■ The system concatenates relative signal names to the scope of the design, which resultsin a fully scoped name being passed to the simulation database connection. Forexample, specifying clock results in the name current_scopeclock .
■ You can specify signal names from child scopes by typing the partial scope. For example,specifying I3/clock results in the name + current_scopeI3/clock .
■ Signal names preceded by a slash ( / ) do not have the scope attached. This lets youprobe signals outside of the current scope. For example,/top/I3/I4/reset results in /top/I3/I4/reset .
■ The system displays in bus format the state of any signal name made up of multiple bits.The default bus radix is hexadecimal.
Format specifies how the monitor appears and which simulation information the monitordisplays. The possible choices are
<state><time>:< state><name>=<state><name>=<time>:< state>
Type specifies the type of simulation monitor.
monitor continuously displays the state of the signal and updates the display every timethe current simulation time of the window changes.
display shows the state of the signal only until the command ends. When the commandends, all simulation monitors are deleted.
Bus Expansion specifies how Signal Nameis interpreted.
off (default) places a monitor for each terminal name that you specify in the Signal Namefield. When selected, the system resets the signal name of the pin to the full text of thename that generates the current member name.
June 2000 696 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
on generates the terminal name for each bus name (specified as individual vectors) inthe order specified in the Signal Name field. For example, for the name A<0:1> , thesystem generates the labels A<0> and A<1>.
Placement specifies the mode you use to place monitors.
single (default) requires you to point and click to identify a monitor location.
multiple prompts you to point and click to specify the first and second monitor locations.The system uses the distance between these two points to automatically place anyremaining monitors.
Auto Placement automatically places the specified signal monitors near a pin figure thatconnects to a matching net name.
June 2000 697 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Label Form
Label specifies the label name. The system fills in this field automatically, depending on theoption you select from the Label Choice cyclic field.
Font Height specifies the height of the text in user units.
Label Choice contains a list of valid label types.
Font Style specifies the font the system uses to display the label.
Label Type specifies how the system displays the label in the design.
normalLabel displays the label as a text string.
NLPLabel interprets the label according to netlisting rules and displays the result.
ILLabel interprets the label as a SKILL expression and displays the result.
Justification specifies the position of the cursor with respect to the text.
Rotate turns the note text counterclockwise in 90-degree increments around the referencepoint.
June 2000 698 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Arc
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
June 2000 699 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Circle
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
Fill Style determines whether the circle is filled or not.
outline draws just the border.
filled fills in the specified shape.
June 2000 700 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Ellipse
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
Fill Style determines whether the ellipse is filled or not.
outline draws just the border.
filled fills in the specified shape.
June 2000 701 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Line
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
Line Width specifies the width of the line you want to add.
narrow draws a line using the default setting of 0.0625 user units.
wide lets you edit the default width.
Draw Mode specifies the line entry method.
draws a straight line in any angle between two points.
begins an L90 shape with a horizontal line segment and alternates betweenhorizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between verticaland horizontal.
draws either a horizontal or vertical line segment first, then a 45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Lock Angle appears only when Draw Mode is set to .
any draws a line using any angle.
45 restricts cursor movement to 45-degree angles from the starting point.
June 2000 702 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Polygon
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
Fill Style determines whether the polygon is filled or not.
outline draws just the border.
filled fills in the specified shape.
Draw Mode lists the possible line entry methods.
draws a straight line in any angle between two points.
begins an L90 shape with a horizontal line segment and alternates betweenhorizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between verticaland horizontal.
draws either a horizontal or vertical line segment first, then a45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Lock Angle appears only when Draw Mode is set to .
any draws a line using any angle.
45 restricts cursor movement to 45-degree angles from the starting point.
June 2000 703 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Symbol Shape Form – Rectangle
Shape specifies a shape you can add to your design. The Add Symbol Shape form expandsand contracts depending on which Shape option you select.
Fill Style determines whether the rectangle is filled or not.
outline draws just the border.
filled fills in the specified shape.
June 2000 704 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Wire Form
Draw Mode specifies the wire entry method.
route (default) creates a route between two points.
draws a straight line in any angle between two points.
begins an L90 shape with a horizontal line segment and alternates betweenhorizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between verticaland horizontal.
draws either a horizontal or vertical line segment first, then a 45-degree angle.
draws a 45-degree angle first, then either a horizontal or vertical line segment.
Route Method specifies how the system routes wires. This option appears when you setDraw Mode to route.
full draws complex lines consisting of right angles and up to three segments to completethe connection wire.
direct draws a straight line between two points.
flight draws a dashed, straight line between two points.
Lock Angle appears when Draw Mode is set to . Use this option to control the cursormovement.
any (default) lets you drag your cursor along any angle.
45 limits cursor movement to 45-degree angles.
Width specifies the wire width in user units. The default values are 0 (zero) for a narrow wireand 0.0625 for a wide wire.
June 2000 705 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Add Wire Name Form
Names specifies one or more names for wires. You can specify multiple names by separatingeach name with a space. You can also use a bus expression to name an array of wire names.
Font Height specifies the size of your wire name text as a floating-point value, in user units.The default is 0.625 .
Font Style specifies the typeface the system uses to display the wire name.
Justification specifies the position of the cursor with respect to the wire name.
Entry Style specifies the mechanism for placing the name with the wire.
fixed offset automatically positions the wire name at a specified distance from the wire.
manual requires you to place the wire name at a grid location on or near the wire.
Bus Expansion specifies how the system interprets bus names.
off (default) interprets the bus name as a single name and generates a single name thatincludes all the bits in the bus range. For example, for the name A<0:1> , the systemgenerates only the name A<0:1> .
on interprets the bus name as multiple names and generates a name for each bit of abus range that you specify in the Names field. For example, for the name A<0:1> , thesystem generates names A<0> and A<1>.
Placement controls whether you can place multiple wire names automatically in oneoperation.
single (default) requires you to point and click to identify each wire name location.
multiple lets you drag your mouse between two points to designate the wires that youwant the system to name automatically.
Purpose defines the purpose of the wire name.
label assigns the wire name to the corresponding wire.
alias defines the wire name as an alternative name (usually shorter or more descriptive)for the wire.
Show Offset Defaults expands the form so you can change the fixed offsetvalues that thesystem uses for placing wire names on horizontal or vertical wires.
Text Offset specifies the distance between a wire name and a wire.
June 2000 706 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Text Position specifies the location of a wire name in relation to the wire.
Text Rotation specifies the orientation of a wire name in relation to the wire.
Hide Offset Defaults collapses the form to hide the offset defaults.
Rotate turns the wire name in 90-degree increments counterclockwise around the referencepoint when Entry Style is set to manual.
June 2000 707 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Build Inherited View List Form
Available Constants/Views provides a selection list of available constants and views. Thelist is made up of constants that have been defined for this design and the union of all viewsof the selected instances.
Arrow keys move the selected elements into and out of the Inherited View list box.
Inherited View List specifies the contents of the new Inherited View list box that you arecreating.
Add lets you type in other views to add.
Up moves the selected view in the Inherited View list box up one position in the list.
Down moves the selected view in the Inherited View list box down one position in the list.
June 2000 708 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Cellview From Cellview Form
Library Name specifies the library that contains the source cellview.
Cell Name specifies the cell name.
Browse opens the Library Browser. You can use the browser to select the library, cell, andview names. The system automatically fills in the form with the information you specify in thebrowser.
From View Name contains a list of the existing views for the source cellview.
To View Name specifies the view name of the cellview the software generates when you clickon OK or Apply. The Tool/Data Type setting initializes this field. You can edit this field.
Tool / Data Type specifies the type of cellview to be created.
Display Cellview , when enabled, causes the software to open the newly created cellview inan editor window when you complete the cellview generation process.
Edit Options, when enabled, displays a subform when you complete the Cellview FromCellview form. Use the subform to specify other options.
June 2000 709 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Cellview From Instance Form
View Name specifies the type of cellview the software generates when you click OK. The Tool/ Data Type setting initializes this field.
Tool / Data Type specifies the type of cellview to be created.
Display Cellview , when enabled (default), causes the system to open the newly createdcellview in an editor window when you complete the cellview generation process.
June 2000 710 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Cellview From Pin List Form
Input Pins specifies an input pin list either from any library or expressed as a new pin name.
Output Pins specifies an output pin list either from any library or expressed as a new pinname.
IO Pins specifies an input/output pin list from any library or expressed as a new pin name.
Switch Pins specifies a switch level pin list from any library or expressed as a new pin name.
Library Name specifies the library name for the generated cellview.
Cell Name specifies the cell name for the generated cellview.
View Name specifies the type of cellview the software generates. The Tool /Data Type settinginitializes this field.
Tool / Data Type specifies the type of cellview to be created; for example, Composer – Symbol.
Browse opens a Library Browser. Use the browser to select the library name, cell name, andview name. The system automatically fills in the form with the information you select in thebrowser.
Display Cellview , when enabled, causes the software to open the newly created cellview inan editor window when you complete the cellview generation process.
Edit Options , when enabled, displays a subform when you complete the Cellview From PinList form. Use the subform to specify other options.
June 2000 711 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Change Sheet Border Size Form
Border Size specifies the new sheet size to use in the schematic.
A changes the sheet to an A-size sheet with a vertical orientation, as it would appear ina book.
none deletes an existing sheet border; otherwise, this option does not affect the sheet.When you select this option, the system ignores the Border Type field.
Border Type specifies the sheet border type.
basic (default) changes the sheet to include global and sheet-specific border titles in thetitle block.
continue changes the sheet to include sheet-specific border titles in the title block.
June 2000 712 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Check Hierarchy Form
Process specifies which schematics the system checks.
every schematic checks all schematics in the hierarchy.
only those that need it (default) checks only those schematics that have been updatedsince the last time you saved your design.
Referenced libraries specifies whether the hierarchy check continues outside of the currentlibrary.
check activates the text field so you can edit the list. When you click Apply or OK, thesystem checks the libraries displayed in the field.
do not check (default) checks only the current library; the libraries that appear in the textfield are not checked.
Save schematics specifies whether the system saves schematics when the check operationis complete.
yes (default) saves the checked schematics.
no does not save the checked schematics.
those with errors appears only when you select yes. This option specifies how thesystem handles schematics that contain errors.
Ask Me (default) prompts you to confirm which of the displayed schematics youwant to save.
No Save does not save any schematics that contain errors.
Save saves all schematics even when they contain errors.
View Name List displays a scrollable list of views that is used to traverse the hierarchy.
When the schematic is in the context of a design configuration or a hierarchy configuration,the following two fields appear:
Using configuration displays the configuration name using the format lib cell view .
Starting from displays the name of the top level cellview using the format lib cellview.
June 2000 713 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Component Browser Form
Library specifies the library that contains the component you want to add.
Flatten controls whether the list box displays cell categories (default; turned off) or cells(turned on) contained in the specified library. The display changes when you toggle thisoption.
Filter specifies a text string that limits the list box display to categories or cells that containthe text string. The display changes when you click on the Library option.
Remove appears only when you use the Commands – Add Library command to expand theform. This option lets you remove the associated library from the form.
The list box displays the categories or cells contained in the library (see Flatten).
June 2000 714 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Component Browser Preferences Form
Browser Opens with the Invocation of when turned on (default), the system opens theComponent Browser when you click on the Browse button on the Add Instance form.
Status of Browser After Closing defines what happens to the Component Browser whenyou close the Add Instance form.
icon (default) collapses the window into an icon.
open leaves the Component Browser window open.
closed closes the Component Browser window.
June 2000 715 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Copy Form
Snap Mode specifies the angles along which you can move copied objects within thecellview.
anyAngle (default) lets you move the copied objects along any angle.
diagonal restricts the movement of copied objects to points along 45-degree, 90-degree,and 180-degree angles from the current location.
orthogonal restricts the movement of copied objects to points along the X and Y axesfrom the current location.
Array lets you create multiple copies of a selected object in a single operation and specifythe dimensions of the array.
Rows specifies the number of rows.
Columns specifies the number of columns.
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point.
June 2000 716 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Create Cellview Dialog Box – Replace or Modify
Replace does the following to a cellview:
■ Discards any modifications you may have made to that cellview
■ Creates only the pins, properties, selection box, labels, and other graphics; all schematicinstances, schematic wires, and HDL body text are lost
■ May alter the position of pins in the new symbol cellview
Modify does the following to a symbol cellview:
■ Automatically edits the cellview with a minimal amount of changes to the current pinlocations, graphics, and properties within the symbol cellview
■ Deletes pins that are no longer needed
■ Adds pins that do not yet exist in the new cellview
Pins are added near the bottom of the cellview. Use the symbol editor to reposition thesenew pins and to adjust any symbol graphics. The system determines attributes of thenew pins by the currently active TSG template file.
■ Adds or updates cellview properties and terminal properties
■ Annotates the changes that were made in note format at the bottom of the cellview andin the Command Interpreter Window (CIW)
■ Does not delete cellview or terminal properties
June 2000 717 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Create Schematic Form
Schematic Type determines which type of schematic you create.
single creates a single sheet schematic.
multi-sheet creates a multisheet schematic and opens the first page so you can beginediting.
Size specifies the size of the sheet border for the new schematic. The possible values are Athrough F, A Book, and none.
Type specifies the type of sheet border.
basic specifies global and sheet-specific border titles. This option creates a templateonly. To fill in the fields in the title box, use the Sheet – Edit Title command.
continue specifies a continuation border, which contains only specific border titles suchas the sheet size and number.
June 2000 718 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Create Schematic Sheet Form
Number specifies the sheet number that the editor creates when you click Applyor OK. Thedefault sheet number is the next sheet number in the multisheet sequence. Valid choices areintegers greater than zero (0).
Size specifies which sheet border size the editor uses for the new sheet. The valid choicesare A through F, A Book, and none.
A Book creates an A-size sheet with a vertical orientation, as it would appear in a book.
none creates a new sheet without a sheet border. The system ignores the Type optionwhen you select this option.
Type specifies the sheet border type.
basic (default) specifies a template that contains global and sheet-specific border titles.You use the Schematic Title Block Properties form to fill in the fields in the title box.
continue specifies the same sheet size and border titles as those used for the schematicin the current design window.
June 2000 719 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Cross Reference Options Form
Generate Cross Reference Report File specifies whether the system generates a cross-reference report file.
off (default) does not generate a cross-reference report file.
on generates a cross-reference report file.
View Report opens a view window that displays the report file you specify in the Report Filefield.
Report File specifies a name for the file where you want to store the cross-reference report.
Display Cross References in Schematic specifies whether the editor displays cross-reference strings in the design window.
off does not display cross-reference strings.
on displays cross-references next to the pin in the schematic.
Cross Reference Format specifies how the system displays cross-references in the designwindow and report file.
Format String specifies the format of the text strings that the system displays in thedesign window. The default is
sheetNumber zone referenceName
Show Duplicate Zones determines whether the system displays duplicate pinreferences found within one zone.
off does not display duplicate references.
on displays all duplicate references.
Sort References By determines how the system sorts the elements within cross-reference lists.
Direction sorts the pins into groups by pin direction, then sorts the groups by sheetnumber and zone. The valid pin direction groups are input pins, output pins, andI/O pins.
Sheet Number sorts the reference list by sheet number and zone.
June 2000 720 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Cross-View Checker Form
Cross View Check Severity specifies which action the system performs when pin namesand pin directions do not match.
ignored results in no action.
warning generates warnings.
error generates error messages.
Views To Check displays a list of the views the cross-view checker checks when you click onOK or Apply.
Match Pin Names Exactly , when enabled, checks whether pin names match exactly. Forexample, pins A<0> and A<1> in view1 and pin A<0:1> in view2 would not match.
Match Inherited Terminals , when enabled (default), checks whether inherited terminalsmatch.
Match Terminal Net Expressions , when enabled (default), checks whether terminal netexpressions match.
June 2000 721 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Delete All Markers Form
Severity defines which level of markers the system deletes in the list box and in your design.
all deletes all markers.
error deletes all markers with error messages.
warning deletes all markers with warning messages.
Search Scope defines the scope of the deletion.
cellview deletes markers from the current cellview only.
hierarchy starting from top cellview deletes markers throughout the entire hierarchy.
hierarchy starting from current cellview deletes markers throughout the hierarchystarting from the current cellview.
Source specifies the category of markers that are to be deleted in terms of the program thatgenerated them.
SRC deletes schematic rules checker markers.
VIC deletes cross-view checker markers.
conn deletes connectivity markers.
none appears when there are no messages in the list box.
Note: The SRC, VIC, and conn buttons appear when you are checking a schematic design;only the VIC button appears when you are checking a symbol design.
June 2000 722 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Delete Generic Form – VHDL Properties
Name specifies the generic name.
Note: When you select a generic in the list box before you select the command, the systemfills in the form with the generic information.
June 2000 723 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Delete Property Form – Edit Object Properties
Note: In general, you use the Delete Property form only to delete properties from the EditObject Properties form or the Edit Cellview Properties form. Therefore, to delete propertiesfrom your cellview, you normally click OK or Applyon the form that calls the Delete Propertyform. However, the software deletes hierarchical properties from the database when you clickOK or Apply on the Delete Property form.
The list box displays a list of all the user-defined properties.
Delete All , when enabled, deletes all the displayed properties.
June 2000 724 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Delete Schematic Sheet Form
Starting Number specifies the first number of a range to delete. The default is 0.
Ending Number specifies the last number of a range to delete. If you specify same or do notspecify the last sheet number in the range, only the current sheet is deleted. The default issame.
June 2000 725 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Descend Form – Descend Options
Target Cellview specifies how the system identifies the destination cellview.
query user prompts you to select a view name from a cyclic field list on the Descend Editform. The list contains the existing view names for the instance.
use viewNameList uses the view name list to automatically descend into the firstexisting view for the specified instance. Enter the view name list on the Editor Optionsform.
June 2000 726 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Descend Form – Iterated Instance
Iteration Number lets you type the iteration you want to descend into.
View Name lists the existing views for the selected instance.
June 2000 727 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Descend Form – Multisheet
View Name contains a list of the existing views for the selected instance.
Display specifies the type of sheet you want to descend into.
index descends into the index sheet.
sheet (default) descends into the sheet number you specify.
June 2000 728 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Descend Form – Noniterated Instance
View Name contains a list of the existing view names for the selected instance.
June 2000 729 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Display Options Form
Net Expression Display allows you to choose how a net expression label will be displayed.The net name can vary depending on the sequence of instances through which you havedescended. If you have descended down through an instance that has a netSet overrideproperty, the overriding signal name is displayed in the schematic editor window.
Display preferences for net expressions and evaluation for a particular descended branch ofthe hierarchy are as follows:
Drag Limit lets you specify the maximum number of shapes whose movement is shown inthe design window during a move or copy operation. When the total number of shapesexceeds the specified maximum, the system substitutes a bounding box for the set of shapes.
Axes specifies whether the schematic editor displays the X and Y axes when you view or edita schematic view.
Object-Sensitive Pop-Up Menus lets you use the middle mouse button to open a menu ofcommands. The menu varies depending on the object currently under the cursor.
off disables this option. When you turn this option off, the default pop-up menu appearswhenever you press the middle mouse button while an object is selected.
on (default) enables this option.
Dynamic Highlighting highlights the objects in the design that are affected when certainactive commands are implemented.
off disables this option.
Property gnd notfound
Property gnd foundand specifiesmygnd!
Property gnd found andspecifies a local signal“ A” two levels downfrom the top
value only gnd!* mygnd!* /I1/I2/A*
value (default) gnd! (gnd!)* mygnd! (gnd!)* /I1/I2/A (gnd!)*
value [propertyname]
gnd! [gnd]* mygnd! [gnd]* /I1/I2/A [gnd]*
value[expression]
gnd![@gnd:%:gnd!]*
mygnd![@gnd:%:gnd!]*
/I1/I2/A[@gnd:%:gnd!]*
expression only [@gnd:%:gnd!]* [@gnd:%:gnd!]* [@gnd:%:gnd!]*
June 2000 730 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
on (default) enables this option.
Show Direct Connections shows the connection between pins.
off (default) disables this option.
on enables this option.
Show Text Justification displays a plus sign (+) in the design wherever a text string begins.
off (default) disables this option.
on enables this option.
Gravity affects how the Add – Wire command is completed. When you add a wire to a blockinstance, the system terminates the wire on the edge of the block. When you add a wire toanother type of instance, the system terminates the wire on the instance pin.
off disables this option.
on (default) enables this option.
Display Status Banner displays an extra line of status information in the status banner of thedesign window. The status line displays the coordinates for the pointer or the selection count.When disabled, the Coordinates on Status Banner option disappears from the form.
off disables this option.
on (default) enables this option.
Coordinates on Status Banner displays the coordinates of the current mouse position in thestatus banner. This option appears only when Display Status Banner is on.
off (default) disables this option.
on enables this option.
Grid Controls
Type controls the display and the appearance of the grid.
none turns off the grid display.
dotted (default) displays a grid of dots.
line displays a grid of lines.
June 2000 731 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Spacing specifies the number of user units between minor grid points on the visible grid. Thedefault is 0.125 .
Multiple specifies the number of minor grid points. The default is 8.
Snap Spacing specifies the minimum distance the cursor moves, in user units. The defaultdistance (0.0625 ) is equal to half the default grid spacing distance.
June 2000 732 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Cellview Properties Form
Show options specify which properties the system displays on the form.
system displays the system-defined properties for a selected object.
user (default) displays the user-defined properties for a selected object.
Property displays the property names for the selected object. This section of the formexpands and contracts depending on which of the Showoptions you select and whether youselect an object in the design.
The default display shows only the following system-defined properties:
Library specifies the library that contains the current design.
Cell specifies the cell name of the current design.
View specifies the view of the current design.
Note: You cannot add, delete, or modify grayed-out properties.
When you select system, the following system-generated properties appear on the form:
CellView Type specifies the cellview type of the current design.
Mode identifies which mode you are in: edit or read only.
Modified displays TRUE if the cellview has been modified during the current editingsession.
schType identifies the type of schematic data.
instNamePrefix (appears only when the cellview is a symbol) defines a new prefix forinstances of the symbol cellview.
DBUPerUU displays the number of database units per user unit.
User Unit displays the current user unit.
Last Changed displays the date the cellview was last modified.
Last Checked displays the date the cellview was last checked.
Upper Right and Lower Left display the X and Y coordinates for the upper right cornerand lower left corner of the cellview.
Note: Except for the instNamePrefix symbol property, you cannot add, delete, or modifysystem-generated properties.
June 2000 733 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Value displays the value for a property. Use Modify to edit values.
Display determines whether a property value is displayed in the design. When you enableone of the display options (value, name, or both), the information appears on the schematicnear the selected object.
value displays only the value of the property.
name displays only the name of the property.
both displays both the name and the value of the property, separated by an equal sign.
off (default) displays neither the name nor the value of the property.
The Add, Delete, and Modifybuttons appear on the form only when you enable the Show – useroption at the top of the form. Use these options to add, delete, and modify user-definedproperties.
Add displays the Add Property form, which you use to add new user properties to the EditCellview Properties form. To add the new properties to your cellview, click on OK or Applyonthe Edit Cellview Properties form.
Delete displays the Delete Property form, which lets you delete user properties. To deleteproperties from your cellview, click OK or Apply on the Edit Cellview Properties form.
Caution
The software deletes hierarchical properties from the database when youclick OK or Apply on the Delete Property form.
Modify displays the Modify Property form, which lets you change the names and values forselected user properties. To apply the changes to your cellview, click on OK or Apply on theEdit Cellview Properties form.
June 2000 734 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Component Display Form
Select Label specifies the type of label you want to edit.
terminal expands the form to let you edit the display information for the selectedterminals.
parameter expands the form to let you edit the display information for the selectedparameters.
instance expands the form to let you edit the display information for the selectedinstances.
Auto Redraw specifies whether the editor redraws the schematic automatically when youclick OK.
yes (default) redraws the schematic automatically.
no does not redraw the schematic automatically.
Save opens the Save Label Display form, which lets you specify the file in which you want thesystem to save the current label display configuration.
Load opens the Load Label Display form, which lets you specify a previously saved labeldisplay configuration file that you want to use.
Attach saves the current label display configuration to a temporary file and attaches the fileto the library so that it loads automatically when you open the library.
Detach removes an attached label display configuration from the library.
Set Simulation Data Directory opens the Set Label Display Simulation Data Directory form.
Apply To
library applies the label display configuration to the entire library.
cell applies the label display configuration only to the cell.
instance applies the label display configuration only to the instance.
none applies the label display configuration to no objects.
You can apply parameter , model parameter , instance name , cell name , pin name ,net name , voltage , current , and operating point options to the label displayconfiguration.
June 2000 735 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
You can apply literal , suffixes , globals , related , and full options to the label displayconfiguration of parameters .
You can apply schematic or simulation options to the label display configuration ofa net name .
You can apply DC or transient voltage or current to the label display configuration.You must select results to annotate currents or voltages. You can designate a Timewhen to apply transient voltage or current .
June 2000 736 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Basic
You use the Previous and Next buttons along with the Apply To options below to locateobjects in your design window. When there are multiple objects in the selected set, you usethe Next and Previous buttons to locate objects in the set. You use the Apply To optionsto specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Show specifies which properties the system displays on the form.
system displays the system-defined properties for a selected object.
user (default) displays the user-defined properties for a selected object.
CDF (default) displays predefined properties defined by the Component DescriptionFormat (CDF).
June 2000 737 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Instance and Block
You use the Previous and Next buttons along with the Apply To options below to locateobjects in your design window. When there are multiple objects in the selected set, you usethe Next and Previous buttons to locate objects in the set. You use the Apply To optionsto specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type. The possible choices for the instance object typeare same masterand any master.
Show specifies which properties the system displays on the form.
system displays the system-defined properties for a selected object.
user (default) displays the user-defined properties for a selected object.
CDF (default) displays predefined properties defined by the Component DescriptionFormat (CDF).
Browse opens the Library Browser, which you can use to fill in the form automatically.
Reset Instance Labels Display resets the display and placement of all instance labels totheir default specifications as defined in the symbol view.
June 2000 738 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Property lists the properties that the system automatically extracts from the design database.
Value displays the values for the corresponding properties.
Display determines whether the system displays the property name and property value in theschematic.
off (default) displays neither the name nor the value.
value displays only the value.
name displays only the name.
both displays both the name and the value, separated by an equal sign.
The two options described below appear when you enable the Show – system option.
Magnification controls the scaling factor applied to the selected instance. A value of 1 (one)specifies the true size.
Origin displays the location of the instance in the cellview.
The Add, Delete, and Modify buttons affect only the display of properties on the Edit ObjectsProperties form. You must click OK or Apply to apply the changes to objects in your design.
Add displays the Add Property form, which lets you add a new property to the Edit ObjectProperties form.
Delete displays the Delete Property form, which lets you delete selected properties from theEdit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currentlydisplayed on the Edit Object Properties form.
The following fields appear for block editing in addition to the ones described for editing aninstance on the previous pages.
FreezePinCreate appears only if you have selected a block. It controls whether the systemadds a pin to a block when you connect a new wire to the edge of a block. When this optionis disabled (default), the system automatically creates a pin when you click on the edge of ablock to terminate the wire. When this option is enabled, the system does not create a pin.Instead, the system automatically draws the wire to the nearest existing pin, when one exists.When no pin exists, the system does not let you connect a wire to the block. Use the EditorOptions form (Options – Editor command) to specify the pin directions.
The following options appear on the form only when you enable the Show – system option.
June 2000 739 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Pin Direction specifies a direction for the pin.
Pin Name specifies the pin name.
Net Name displays the net name.
Inherit , in general when this option is enabled, derives the pin name from the net name.However, if you delete the wire segment for a pin, the system automatically enables thisoption and derives the net name from the pin name.
June 2000 740 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Instance Pin
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Show specifies which properties the system displays on the form.
user (default) displays the user-defined properties for a selected object.
CDF (default) displays predefined properties defined by the Component DescriptionFormat (CDF).
Name displays the name of the instance pin.
Direction specifies the direction of the instance pin.
Net Name displays the name of the net that is connected to the instance pin.
June 2000 741 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
The cyclic field to the right of the Name field determines whether the system displays theproperty value in the schematic.
The Add, Delete, and Modify buttons affect only the display of properties on the Edit ObjectsProperties form. You must click OK or Apply to apply the changes to objects in your design.
Add displays the Add Property form, which lets you add a new property to the Edit ObjectProperties form.
Delete displays the Delete Property form, which lets you delete selected properties from theEdit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currentlydisplayed on the Edit Object Properties form.
June 2000 742 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Label
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Attachment Label specifies which object the label belongs to.
Display determines whether the system displays the property value in the design window.You can toggle this option to off to suppress the display.
Height lets you specify the height of the label.
Font lets you select a font for the label.
Justification lets you specify where the label appears in relation its origin (placementlocation).
June 2000 743 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Drafting , when enabled (default), maintains the normal orientation of the text as you rotate alabel 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a label. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the label as part of the label text string. When this option isenabled, the software interprets underscore characters ( _ ) in the label as toggle switchesthat control where overbars begin and end. Overbars appear above the label, as shown in theexamples.
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 744 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Master Property
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Attachment Label specifies which object the property belongs to.
Property lists the properties that the system automatically extracts from the design database.
<property name> appears only when the selected property is on an instance. This optiondoes not appear when the property is on a net, a terminal, or a cellview.
Master Value specifies the master symbol property value. You cannot edit this field.
Local Value specifies the local instance property value.
Display specifies whether the system displays the property name and property value in theschematic.
off displays neither the name nor the value.
value (default) displays only the value.
June 2000 745 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
name displays only the name of the property.
both displays both the name and the value, separated by an equal sign.
Height specifies the height of the property label.
Font specifies a font for the property label.
Justification specifies where the label appears in relation to its origin (placement location).
Drafting , when enabled (default), maintains the normal orientation of the text as you rotate alabel 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a property label. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the property label as part of the property label text string. Whenthis option is enabled, the software interprets underscore characters ( _ ) in the property labelas toggle switches that control where overbars begin and end. Overbars appear above theproperty label, as shown in the examples.
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 746 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Net Expression
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Attachment reattaches the net expression label to a wire or pin.
Property Name specifies the name of the property that can be used to override the defaultglobal signal. In other words, the name of the property whose value redefines the name ofthe net. The system evaluating the expression searches for the property that has this nameto get the value to inherit for the net.
Default Net Name specifies the default property name of the global signal or net name. Thesystem uses the default net name—for example vdd! , gnd! , or vss! —when an inheritedconnection has not been established. The name must specify a global scalar value.
Evaluated Name contains the result of evaluating the net expression for the current descendpath of the window.
Height specifies the height of the net expression label text in user units.
Font specifies the font the system uses to display the net expression label.
June 2000 747 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Justification specifies where the label appears in relation to its origin (placement location).
June 2000 748 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Note Shapes
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Property lists the properties that the system automatically extracts from the design database.
Value displays the values for the corresponding properties.
Line Style specifies whether the system uses a solid or dashed line to draw the note shape.
The form displays various options depending on the shape type you select.
The following options appear when you select a line shape.
Width specifies whether the line shape is narrow (default) or wide. You can edit the textfield when you enable the wide option.
Points List specifies the coordinates for the points that make up the shape.
The following option appears when you select a polygon shape.
Point List specifies the coordinates for the points that make up the shape.
June 2000 749 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
The following options appear when you select a rectangle shape.
Upper Right specifies coordinates that define the upper right-hand corner of the shape.
Lower Left specifies coordinates that define the lower left-hand corner of the shape.
The following options appear when you select either a circle shape or an ellipse shape. Notethat the Shape text field displays ellipse for both circle and ellipse shapes.
Center specifies the coordinates that define the center of the shape.
X Radius specifies the coordinate that defines the Xradius of the shape.
Y Radius specifies the coordinate that defines the Yradius of the shape.
The following options appear when you select an arc shape.
Center specifies the coordinates that define the center of the shape.
X Radius specifies the coordinate that defines the Xradius of the shape.
Y Radius specifies the coordinate that defines the Yradius of the shape.
Start Angle specifies the first point of the arc.
Stop Angle specifies the second point of the arc.
June 2000 750 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Note Text
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Attachment performs two functions.
■ When the text is already associated with an object, the software highlights the associatedobject in the cellview.
■ Lets you associate the note text with an object in the cellview by automatically drawing aline from the text to the object when you move the cursor into the design window.
Note Text specifies the text for your note. You can either type in the text or use Read File toload the text from a file. You can edit any text you load into the this edit window.
Read File loads text from the specified file into the Note Text edit window.
Height lets you specify the height of the note text.
Font lets you select a font for the note text.
June 2000 751 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Justification lets you specify where the note text appears in relation to its origin (placementlocation).
Drafting , when enabled (default), maintains the normal orientation of the note text as yourotate a label 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over the note text. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the note text as part of the note text string. When this option isenabled, the software interprets underscore characters ( _ ) in the note text as toggle switchesthat control where overbars begin and end. Overbars appear above the note text, as shownin the examples.
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 752 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Other Object
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Owner specifies which object the property belongs to.
Property lists the properties that the system automatically extracts from the design database.
Name specifies the property name.
Value specifies the property value.
Display specifies whether the system displays the property name and property value in theschematic.
off displays neither the name nor the value.
value (default) displays only the value.
name displays only the name of the property.
both displays both the name and the value, separated by an equal sign.
June 2000 753 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Height specifies the height of the property label.
Font specifies a font for the property label.
Justification specifies where the label appears in relation to its origin (placement location).
Drafting , when enabled (default), maintains the normal orientation of the text as you rotate alabel 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a property name. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the property name as part of the property name text string.When this option is enabled, the software interprets underscore characters ( _ ) in theproperty name as toggle switches that control where overbars begin and end. Overbarsappear above the property name, as shown in the examples.
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 754 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Pin
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Show specifies which properties the system displays on the form.
system displays the system-defined properties for a selected object.
When you enable the Show – systemoption, the form expands to display information aboutthe pin master to show the Magnification and Origin fields.
Magnification controls the scaling factor applied to the selected instance. A value of 1(one) specifies the true size.
Origin specifies the location of the instance in the design.
user (default) displays the user-defined properties for a selected object.
June 2000 755 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
CDF (default) displays predefined properties defined by the Component DescriptionFormat (CDF).
Property lists the properties that the system automatically extracts from the design database.
Value displays the values for the corresponding properties.
Display determines whether the system displays the property value in the schematic.
Direction specifies a direction for the pin.
Usage specifies whether the pin is an offsheet connector.
Add displays the Add Property form, which lets you add a new property to the Edit ObjectProperties form.
Delete displays the Delete Property form, which lets you delete selected properties from theEdit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currentlydisplayed on the Edit Object Properties form.
June 2000 756 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Pin Name
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Attachment lets you reattach the pin name to the pin.
Label specifies the text for the pin name.
Value specifies whether the system displays the property value in the schematic. You canchoose off to suppress the display.
Height specifies the height of the pin label in user units.
Font specifies a font for the pin label.
Justification specifies where the label appears in relation to the pin.
June 2000 757 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Drafting when enabled (default) maintains the normal orientation of the text when you rotatea label 180 degrees around a reference point. When disabled, rotated text appears upsidedown.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a pin name. When disabled (default), the software displays underscorecharacters ( _ ) in the pin name as part of the pin name text string. When enabled, thesoftware interprets underscore characters ( _ ) in the pin name as toggle switches that controlwhere overbars begin and end. Overbars appear above the pin name, as shown in theexamples.
Caution
To avoid confusion when pin names actually contain underscorecharacters, Cadence recommends that you disable this display option. Itis provided only for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 758 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Selection Box
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Property lists the properties that the system automatically extracts from the design database.
Shape specifies the shape of the selection box.
Upper Right specifies the coordinates for the upper right corner of the selection box.
Lower Left specifies the coordinates for the lower left corner of the selection box.
Value specifies the values for the properties. You can edit the coordinate values when theselection scope is set to only current.
June 2000 759 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Symbol Label
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Attachment lets you reattach the label to another component in the design.
Label specifies the label name.
Value determines whether the system displays the property value in the schematic. You canset this option to off to suppress the display.
Choice contains a list of valid label types.
Height specifies the height of the symbol label.
Font specifies a font for the symbol label.
Justification specifies where the label appears in relation to its origin (placement location).
Type specifies a label type.
normalLabel displays the label as a text string.
June 2000 760 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
NLPLabel evaluates the label according to netlisting rules and displays the result.
ILLabel evaluates the label as a SKILL expression and displays the result.
Drafting , when enabled (default), maintains the normal orientation of the text as you rotate alabel 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a label. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the label as part of the label text string. When this option isenabled, the software interprets underscore characters ( _ ) in the label as toggle switchesthat control where overbars begin and end. Overbars appear above the label, as shown in theexamples.
Caution
To avoid confusion when labels actually contain underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Label Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 761 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Symbol Pin
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Show specifies which properties the system displays on the form.
system displays the system-defined properties for a selected object.
user (default) displays the user-defined properties for a selected object.
Property lists the properties that the system automatically extracts from the design database.
Value displays the values for the corresponding properties.
Display determines whether the system displays the property value in the schematic. Youcan toggle this option to off to suppress the display.
Direction specifies a direction for the pin.
June 2000 762 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
When you enable the Show system option, the following options appear.
accessDir options let you specify a property that defines the valid direction from which a wiresegment can be attached to a pin. You can specify combinations of these options. Theseoptions are not referenced in the Virtuoso® schematic composer environment; they arereferenced in the place-and-route environment.
left specifies that the wire segment must be routed from the left.
right specifies that the wire segment must be routed from the right.
top specifies that the wire segment must be routed from the top.
bottom specifies that the wire segment must be routed from the bottom.
none specifies that a wire segment cannot be routed to the pin.
unknown specifies that any wire segment route is unknown.
The Add, Delete, and Modify options affect only the display of properties on the Edit ObjectsProperties form. You must click OK or Apply to apply the changes to objects in your design.
Add displays the Add Property form, which lets you add a new property to the Edit ObjectProperties form.
Delete displays the Delete Property form, which lets you delete selected properties from theEdit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currentlydisplayed on the Edit Object Properties form.
June 2000 763 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Symbol Shape
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Property lists the properties that the system automatically extracts from the design database.
Value specifies the type of symbol shape.
The form displays various options depending on the shape type you select.
The following options appear when you select a line shape.
Width specifies whether the line shape is narrow (default) or wide. You can edit the textfield when you enable the wide option.
Point List specifies the coordinates for the points that make up the shape.
The following option appears when you select a polygon shape.
Point List specifies the coordinates for the points that make up the shape.
The following options appear when you select a rectangle shape.
June 2000 764 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Upper Right specifies coordinates that define the upper right-hand corner of the shape.
Lower Left specifies coordinates that define the lower left-hand corner of the shape.
The following options appear when you select either a circle shape or an ellipse shape. Notethat the Shape text field displays ellipse for both circle and ellipse shapes.
Center specifies the coordinates that define the center of the shape.
X Radius specifies the coordinate that defines the Xradius of the shape.
Y Radius specifies the coordinate that defines the Yradius of the shape.
The following options appear when you select an arc shape.
Center specifies the coordinates that define the center of the shape.
X Radius specifies the coordinate that defines the Xradius of the shape.
Y Radius specifies the coordinate that defines the Yradius of the shape.
Start Angle specifies the first point of the arc.
Stop Angle specifies the second point of the arc.
June 2000 765 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Wire Name
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Attachment performs two functions.
❑ When the Label entry is already associated with an object, the software highlightsthe associated object in the cellview.
❑ It lets you associate the Label entry with a wire segment in the cellview byautomatically drawing a line from the wire name to the object when you move thecursor into the design window.
Label specifies the net name.
Value determines whether the system displays the property value in the schematic. You cantoggle this option to off to suppress the display.
June 2000 766 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Height specifies the height of the name.
Font specifies a font for the name.
Justification specifies where the wire name appears in relation to its origin (placementlocation).
Alias , when enabled, specifies that the Label entry is an alias for the net name.
Drafting , when enabled (default), maintains the normal orientation of the text as you rotate alabel 180 degrees around a reference point. When this option is disabled, rotated textappears upside down.
Overbar is only a display option. You use this option to specify whether the software displaysan overbar over a wire name. When this option is disabled (default), the software displaysunderscore characters ( _ ) in the wire name as part of the wire name text string. When thisoption is enabled, the software interprets underscore characters ( _ ) in the label as toggleswitches that control where overbars begin and end. Overbars appear above the wire name,as shown in the examples.
Caution
To avoid confusion when names actually contain underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 767 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Object Properties Form – Wire Segment
You use the Previousand Nextbuttons along with the Apply Tooptions below to locate objectsin your design window. When there are multiple objects in the selected set, you use the Nextand Previous buttons to locate objects in the set. You use the Apply To options to specify theobjects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reachthe first object in the selected set, this button has no effect.
Next cycles forward to view the next object in the selected set. When you reach the lastobject in the selected set, this button has no effect.
Apply To consists of up to three cyclic fields that you use to specify the object, or group ofobjects in a selected set, whose properties you want to change. The software uses one colorto highlight selected objects. But when there are multiple objects in the selected set, thesoftware uses a second color to highlight the current object. And when you configure thecyclic fields to apply changes to multiple objects, the software uses a third color to highlightall the affected objects.
Selection scope specifies whether you want to edit only the current object, only theselected objects in the specified object type group, or all the objects in the specifiedobject type group (which includes both selected and unselected objects of the specifiedobject type).
Object group lists the object types in the selected set. Use this option to locate the firstobject of a particular object type.
Object filter appears only when the selection scope is set to all selectedor all. This optionacts as a secondary filter for further limiting the selection scope. The options varydepending on the selected object type.
Show specifies which properties the system displays on the form.
system displays the system-defined properties for a selected object.
user (default) displays the user-defined properties for a selected object.
The following option appears when you turn on the system option.
Point List displays the coordinates for the first and second point.
Property lists the properties that the system automatically extracts from the design database.
Value displays the values for the corresponding properties.
June 2000 768 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Display determines whether the system displays the property value in the schematic. Youcan toggle this option to off to suppress the display.
Width specifies whether the wire segment is narrow or wide. You can edit this field when youenable the wide option.
The Add, Delete, and Modify options affect only the display of properties on the Edit ObjectsProperties form.
Add displays the Add Property form, which lets you add a new property to the Edit ObjectProperties form.
Delete displays the Delete Property form, which lets you delete selected properties from theEdit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currentlydisplayed on the Edit Object Properties form.
June 2000 769 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Pin Order Form
Move Up moves the selected pin up one position.
Move Down moves the selected pin down one position.
Move To Top moves the selected pin to the top of the list.
Move To Bottom moves the selected pin to the bottom of the list.
Reset Order resets the pin order to the default order. The default port order is outputinput inputOutput , and the pins in each type are sorted alphanumerically.
Copy From copies a pin order property from a list of available views.
June 2000 770 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Edit Schematic Sheet Number Form
From Number specifies the current sheet number.
To Number specifies the new sheet number.
June 2000 771 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Editor Options Form
Add Instance Browser Type specifies which browser the system opens when you click onthe Browse button on the Add Instance form.
library (default) specifies the Library Browser.
component specifies the Component Browser.
Block Pin Direction Rule specifies which pin direction rule the system uses to create pinsautomatically when you connect a wire to a block.
edge (default) specifies the pin direction based on the edge where the system createsthe pin. When you add a wire to the left edge of a block, the system creates an input pin.When you add a wire to the right edge of a block, the system creates an output pin. Whenyou add a wire to the top or bottom of a block, the system creates an I/O pin.
order of entry assigns the pin direction based on how you implement the Add Wirecommand. When you start a wire from the edge of a block, the system creates an outputpin. When you terminate a pin on the edge of a block, the system creates an input pin.
Wire Snapping lets you use the s key to quickly complete a wire drawing action. When wiresnapping is enabled, the system highlights an unconnected pin in the design when you movethe cursor near the pin.
Automatic Solder Dots when enabled (default), automatically creates a solder dot when youcreate wire intersections. The system does not create solder dots when you draw a wire overanother wire.
Solder Dot Wire Overlap specifies the amount that a solder dot extends outward from thethickest wire segment the dot connects.
Symbol Generator Pin Sorting specifies how the text-to-symbol generator sorts the symbolpins onto the edge of the new symbol.
alphanumeric sorts pins by pin name.
geometric sorts pins by their relative positions in the schematic and is valid only whena schematic exists for the specified cellview.
Add Symbol Pins as Instances specifies how the symbol editor creates pins when you addpins to a symbol using the Add – Pincommand or creates a symbol using the Create Cellview– From Cellview command.
June 2000 772 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
off (default) creates a graphical symbol pin shape based on a symbol pin master. Afteryou place symbol pin shapes, any changes you make to the original symbol pin masterdo not affect the symbol pin shapes based on the symbol pin master.
on creates an instance of a symbol pin master. After you place symbol pin instances, anychanges you make to the symbol pin master also affect the appearance of all the existinginstances created from the symbol pin master.
Modal Commands specifies whether repeatable commands remain active after youcomplete an action.
off specifies that repeatable commands cannot be repeated.
on (default) specifies that repeatable commands remain active until you press theEscape key. However, some repeatable commands do not remain active when youenable this option if you have preselected an object. The Copy, Move, and Edit commandsare examples of such commands.
Cross Selection controls whether object selection is exported to other tools.
off (default) does not export the selection to other tools.
on exports the selection to tools that are open and which can support the selection.
Minimum Marker Size specifies the minimum size of any error or warning markers that thesystem generates when you check your design.
View Name List displays a series of view names listed in the order you want the editor todisplay them, if they exist. You use View Name Listin conjunction with the Hierarchy – DescendEdit and Hierarchy – Descend Read commands.
Bus Range Order specifies which order the system uses to generate buses. The default isascending.
Net Name Method specifies a net naming mechanism for schematic extraction.
prefix (default) generates a unique name for nets that you do not explicitly label orconnect to a pin. The unique name consists of the prefix that you specify in the Net NamePrefix field followed by a number.
derived generates a net name from the driving instance name and the driving terminalname. The derived net name is of the form instName_pinName .
Net Name Separator specifies the field separator for derived names. The underscorecharacter ( _ ) is the default separator. You can edit the separator when you select the derivedoption in the Net Name Method field.
June 2000 773 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Net Name Prefix specifies the prefix for all new net names generated by the editor. Thedefault is net. You can edit this field when you select the prefix option.
June 2000 774 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Find Marker Form
To Ignore appears only when the Show Ignored option is on (default).This option ignoresviolations indicated by markers in future rule extractions. The schematic composer opens acolumn in the list box. It then displays an asterisk in the column when you apply anignoreCheck property to a corresponding marker.
Reason displays marker severity levels, associated messages, and the cellview name wherethe errors and warnings occurred.
Zoom To Markers displays a magnified view of the specified marker in the design window ifit is turned on.
Scale appears only when you turn on Zoom To Markers. This option lets you specify the zoomscale. The smaller the scale setting, the greater the degree of magnification.
The following four options let you control which markers the system displays in the list box.
Show Ignored displays markers for objects that have an ignoreCheck property. When ShowIgnoredis on (default), the software displays the To Ignorelabel above the list box and opensa column under the label. The software displays an asterisk in the column when you apply anignoreCheck property to a corresponding marker.
Ignore automatically assigns an ignoreCheckproperty to the object highlighted in the list box.
Restore deletes an ignoreCheck property from an object highlighted in the list box.
Restore All deletes the ignoreCheck property from all objects.
Severity specifies which messages the system displays in the list box.
all displays both error and warning messages.
error displays only error messages.
warning displays only warning messages.
Search Scope lets you specify the scope of a search for schematic objects.
cellview (default) searches only the current cellview.
hierarchy starting from top cellview searches the design hierarchy, starting with thetop cellview in the window.
hierarchy starting from current cellview searches the design hierarchy, starting withthe currentcellview in the window.
June 2000 775 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Source displays a button and label for the sources of the error and warning messages. Whenthere is more than one source for the error and warning messages, you can toggle the sourcebuttons to control which messages the system displays in the list box.
SRC specifies the schematic rules checker as the source.
VIC specifies the cross-view checker as the source.
conn specifies connectivity as the source.
none appears when there are no messages in the list box.
Note: The SRC, VIC, and conn buttons appear when you are checking a schematic design;only the VIC button appears when you are checking a symbol design.
June 2000 776 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Go To Pin Form
Order specifies, in a multisheet schematic, the relative location of other pins that referencethe same net. The choices are next, previous, first, and last.
The reference list for a pin or offsheet connector is a list of zones identifying where other pinson other sheets reference the same net. The reference lists for the pins in the multisheetschematic are generated by the Create Pin Reference command.
June 2000 777 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Go To Sheet Form
index displays the index sheet for the multisheet schematic in the current design window.
first displays the first sheet of the multisheet schematic in the current design window.
last displays the last sheet of the multisheet schematic in the current design window.
next displays the next sheet in sequence of the multisheet schematic in the current designwindow.
previous displays the previous sheet in sequence of the multisheet schematic in the currentdesign window.
number enables the text field so you can specify which sheet of the multisheet schematic youwant the editor to display in the current design window.
June 2000 778 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Import Symbol Form
Library Name specifies the library that contains the symbol.
Cell Name specifies the symbol cell name.
View Name specifies the symbol view name.
Browse opens the Library Browser. You can use the browser to fill in the form with the symbolinformation.
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point.
June 2000 779 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Left, Right, Top, Bottom Pin Attributes Form
Name lists the pins by name.
Direction contains the direction attributes you can apply to the pins.
Pin Graphic contains the graphic attributes you can apply to the pins.
June 2000 780 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Load Label Display Form
Filename specifies a previously saved label display configuration file that you want to use.
June 2000 781 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Load Schematic Defaults Form
File Name specifies the name of the file that contains the variables and form defaults youwant to load. The default is a file named .cdsenv in your home directory.
June 2000 782 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Modify Generic Form – VHDL Properties
Name specifies the generic name.
Type specifies the generic type.
Value (Optional) specifies a value for the generic.
June 2000 783 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Modify Property Form – Edit Object Properties
Type specifies a property type.
Name specifies the name of the property you want to modify.
Value specifies a value for the property.
Note: To define most properties, you need to specify only the name, type, and value.However, when you specify string, int, or float as the type, one of the following fields appearson the form.
Choices appears when Typeis set to string. If the string can have more than one value, typethe possible values. Entries in this field must match an entry in the Value field.
Min and Max appear when Typeis set to int or float. Specify a minimum and maximum rangefor the integer or floating-point value.
June 2000 784 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Move Form
Snap Mode specifies the angles along which you can move objects within the cellview.
anyAngle lets you move the objects along any angle.
diagonal restricts the movement of objects to points along 45-degree, 90-degree, and180-degree angles from the current location.
orthogonal restricts the movement of objects to points that are along the X and Y axesfrom the current location.
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point.
June 2000 785 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Open Simulation Data Form
File Name specifies the name of the SHM database that contains the simulation data youwant to monitor.
Shm Host specifies the host system where the SHM database resides. This option defaultsto your local host name.
June 2000 786 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Plot Options Form
Display Type specifies the plotter display type. The default is display, which represents acolor monitor. Each plotter display type defines the colors, line styles, and stipple patterns forany layers.
Plotter Name contains a list of the available plotters. The system creates the list of availableplotters and default settings from the .cdsplotinit file.
Paper Size contains a list of the available paper sizes. The system creates the list of availableplotters and default settings from the .cdsplotinit file.
Orientation specifies the plot orientation of the paper.
portrait plots the drawing vertically.
landscape plots the drawing horizontally.
automatic (default) lets the software select the best orientation.
Scale displays the ratio of the drawing area of the paper to the plot data area.
Center Plot , when enabled, automatically adjusts the offset settings to print the plot in thecenter of the paper.
Fit to Page sets the Plot Size and Offset values to fit the plot area specified in Paper Size.
Plot Size specifies the length and width of the plot. The cyclic field lists the available units.The default is the width and height of the plot area of the paper specified in Paper Size, inuser units.
Offset lets you specify the offset of the plot relative to the lower left corner of the paper usingX and Y coordinates. The default is 0, which is the lower left corner.
Total Plot Size displays the sum of the Plot Size and Offset values.
Image Position shows the image position window and how the design will be plotted on oneor multiple sheets.
Total Pages displays the number of pages needed.
Number Of Copies specifies the number of copies the plotter generates.
Local Tmp Directory specifies the location of the intermediate plot file. The default locationis /usr/tmp . This option lets you change the default directory when the /usr/tmpdirectory is not large enough to contain all the data.
June 2000 787 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Queue Plot Data At specifies the time and day when you want the system to generate theoutput plot. The cyclic fields contain lists of the available times and days.
Send Plot Only To File lets you specify the base filename where you want the system tostore the output plot. The system appends lib/cell/view to the end of the base namethat you specify. For example, when you specify a base name, such as myPlot , the systemdesignates the output files as myPlot@libName,cellName,viewName .
Mail Log To collects log information in a file and sends the file to you through e-mail.
June 2000 788 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Renumber Instances Form
Verbose when enabled (default), displays in the Command Interpreter Window (CIW) the oldand new numbering for each renumbered instance.
Scope specifies which instances in the hierarchy the system renumbers.
cellview (default) renumbers the instances only in the current cellview.
hierarchy renumbers all instances within the hierarchy. When you select hierarchy, twoother options appear on the form.
top (default) specifies that the system renumber instances from the top-levelcellview.
current cellview specifies that the system renumber instances in all cellviewsbelow and including the current cellview.
library renumbers all instances within the library. When you select library, a text fieldappears. Type the name of the library containing the instances you want to renumber.
June 2000 789 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Reset Invisible Labels Form
visible causes the highlighted labels to remain visible in the design after you click the Hidebutton.
invisible causes the highlighted labels to revert to the invisible state after you click on theHide button.
June 2000 790 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Rotate Form
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point.
June 2000 791 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Route Flight Line Form
Route Method indicates how the schematic editor routes wires.
full draws complex lines to complete the connection. Can generate more than threesegments to complete the connection. Usually used as a bus.
direct draws a direct line between two given points.
Note: In some cases, full and direct cannot complete the connection wire. In these cases, aflight line remains in the schematic to indicate the intended connectivity.
June 2000 792 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Save Label Display Form
Filename specifies the file in which you want the system to save the current label displayconfiguration.
June 2000 793 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Save Schematic Defaults Form
File Name specifies the name of the file to store the variables and form defaults. The defaultis a file named .cdsenv in your home directory.
June 2000 794 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Save Schematics with Errors Form
all (default) saves all the schematics listed on the form. When you turn on this option, thesystem automatically enables all the selection buttons for all the schematics listed on theform.
none disables all the selection buttons for all the schematics listed on the form. When youselect this option, you can turn on the selection buttons for individual schematics listed on theform.
Save “< Library ><cell ><view >” with < number > errors? specifies a design and the numberof errors in that design. The system displays this field for each schematic that contains errors.
June 2000 795 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Check Options Form
The Schematic Check Options form sets up options to be run when you choose the followingcommands: Design – Check and Save, Check – Current Cellview, Check – Hierarchy, Check – CrossView Check.
Connectivity Options
Update Connectivity specifies whether the system updates the connectivity of a cellviewwhen you use the Check – Current Cellviewcommand. When enabled (default), the systemextracts connectivity from the design.
Beep When 0 Errors/Warnings when enabled (default), causes the system to beep afterevery save and check in even if there is no error or warning message. The benefit of turningon this option is to let you know when the check is complete. Disabling this option restoresthe behavior to release 4.3.x so that the system beeps only when an error or warning is found.
Check and Save Action on Error specifies whether the system saves schematics thatcontain errors.
Save saves all schematics including those that contain errors.
No Save saves all schematics except those that contain errors.
Ask Me (default) prompts you to confirm that you want to save a schematic that containserrors. When you choose this option and click OK, a dialog box appears. The dialogbox lists all the schematics that contain errors and then prompts you to confirm whichof the displayed schematics you want to save.
From a Multisheet Index, Check specifies which sheets in a multisheet schematic thesystem checks.
all checks all multisheets.
only if needed (default) checks only the multisheets that you have edited since the lastcheck.
Wire Name Glue Distance specifies a distance, in user units, between wire names and theirassociated wires. During the check operation, the system looks for unglued wire names.When the checker finds an unglued wire name within the specified distance from a wire, thesystem glues the wire name to the wire. When the unglued wire name is beyond the specifieddistance, the checker marks the unglued label.
Schematic Rules Check Options
June 2000 796 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Run Schematic Rules Check when enabled (default), specifies whether the system runs theschematic rule checks when you use the Check – Current Cellview command.
Rules Setup opens the Setup Schematic Rules Checks form.
Cross View Check Options
Cross View Check Severity specifies which action the system performs when pin namesand directions do not match.
ignored results in no action.
warning generates warnings.
error generates error messages.
Views To Check displays a list of the views to be checked when you click OK on a Checkcommand form.
Match Pin Names Exactly , when enabled, checks whether pin names matchexactly when you click OK on a Check command form. For example, pinsA<0> and A<1> in view1 and pin A<0:1> in view2 would not match.
Match Inherited Terminals , when enabled (default), checks whetherinherited terminals match when you click OK on a Check command form.
Match Terminal Net Expressions , when enabled (default), checks whetherterminal net expressions match when you click OK on a Check commandform.
June 2000 797 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Find and Symbol Find Forms
Previous highlights the previous object that matched the search criteria and displaysinformation about the object in the form. When you reach the first object that matches thesearch criteria, this button has no effect.
Next highlights the next object that matches the search criteria and displays informationabout the object in the form. When you reach the last object that matches the search criteria,this button has no effect.
Search For lets you specify the search criteria.
The cyclic field contains a list of frequently used properties.
When you select otherfrom the cyclic field, the Add New Property for Find form appears.
When you select master from the cyclic field, you must specify a property value. Youcannot use wildcards for masterproperty values.
The relational operator cyclic field lets you limit the search to objects that have a valuethat either exactly matches or differs from the value specified in the text entry field.
The text entry field specifies a value of the property.
Search Scope specifies the scope of the search.
selected set searches only for objects in the selected set.
cellview searches only for objects in the cellview currently displayed in the designwindow.
hierarchy expands the form to display two more option fields: top and current cellview.Specify the cellview from which you want the system to start the search. The systemsearches all cellviews specified in the design hierarchy.
library expands the form to display a text field. Specify the library that you want thesystem to search. The system searches all cellviews in the library. The library must existin the current library search path.
Zoom To Object specifies how the editor displays a matching object. When this option isselected, the editor zooms in on the search object and centers the object in the designwindow.
Zoom Scale appears only when you turn on Zoom To Object. Specifies the scale used toenlarge the object.
Select adds the currently highlighted object to the selected set.
June 2000 798 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
List All lists all the matching objects in the Command Interpreter Window (CIW).
Show Object Filter expands the form to show the Search Filter. You can use the filter to limitthe search scope to only the objects you specify.
Schematic Objects lists the schematic object types. You can specify any combinationof object types, or you can use one of the following options:
all enables the selection button for all the object types.
none disables the selection button for all the object types. You can use this optionto quickly clear any existing selections before you begin to create a new selectionset.
Instance Objects lists the instance object types. You can specify any combination of theobject types, or you can use one of the following options.
all enables the selection buttons for all the object types.
none disables the selection button for all the object types. You can use this optionto quickly clear any existing selections before you begin to create a new selectionset.
June 2000 799 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Replace and Symbol Replace Forms
Replace assigns the new property name to the currently highlighted matching object.
Skip highlights the next object that matches the Search For criteria and displays informationabout the object in the form.
ReplaceAll assigns the new property name to all the matching objects.
Search For lets you specify the search criteria.
The cyclic field contains a list of frequently used properties.
When you select other from the cyclic field, the Add New Property for Replace formappears.
When you select master from the cyclic field, you must specify a property value. Youcannot use wildcards for master property values.
The relational operator cyclic field lets you limit the search to objects that have a valuethat either exactly matches or differs from the value specified in the text entry field.
The text entry field specifies a value of the property.
Replace With lets you specify values for the replace action.
The cyclic field contains a list of frequently used properties.
When you select other, the Add New Property for Replace form appears. Type aproperty name in the text entry field. When you click Apply, the property is added to theProperty Name list.
The text entry field specifies a value of the property.
When you select master from the cyclic field, you must specify a property value. Youcannot use wildcards for master property values. You must type the exact value.
You can use the following wildcards in the text entry field:
* matches zero or more occurrences of any characters
. matches any character
[c..] matches one of the characters in the set
Search Scope specifies the scope of the search.
selected set searches only for objects in the selected set.
June 2000 800 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
cellview searches only for objects in the cellview currently displayed in the designwindow.
hierarchy expands the form to display two more option fields: top and current cellview.Specify the cellview from which you want the system to start the search. The systemsearches all cellviews specified in the design hierarchy.
library expands the form to display a text field. Specify the library that you want thesystem to search. The system searches all cellviews in the library. The library must existin the current library search path.
Zoom To Object specifies how the editor displays a matching object. When this option isselected, the editor zooms in on the search object and centers the object in the designwindow.
Zoom Scale appears only when you turn on Zoom To Object. Specifies the scale used toenlarge the object.
Preview Changes (No Edits) , when enabled, writes messages to the Command InterpreterWindow detailing what would happen when you click Apply, Replace, Skip, or ReplaceAll.
Save Changes , when enabled, writes changes to disk without prompting you to confirm thechanges. Only cellviews in the hierarchy or library are affected; the cellview currentlydisplayed in the design window is not affected. When disabled, prompts you to confirm thechanges when you attempt to start the File – Close Data command or exit the software.
Show Object Filter expands the form to show the Search Filter. You can use the filter to limitthe search scope to only the objects you select.
Schematic Objects lists the schematic object types. You can specify any combinationof object types, or you can use one of the following options:
all enables the selection button for all the object types.
none disables the selection button for all the object types. You can use this optionto quickly clear any existing selections before you begin to create a new selectionset.
Instance Objects lists the instance object types. You can specify any combination of theobject types, or you can use one of the following options.
all enables the selection buttons for all the object types.
none disables the selection button for all the object types. You can use this optionto quickly clear any existing selections before you begin to create a new selectionset.
June 2000 801 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Select All Form
Form Action controls whether the system selects or deselects all the specified object typeswhen you click OK or Apply.
select selects all the specified object types.
deselect selects everything but the specified object types.
Schematic Objects lists the schematic object types.
all turns on object types.
none turns off object types.
Instance Objects lists the instance object types.
all turns on instance object types.
none turns off instance object types.
June 2000 802 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Select By Property Form
Find lets you specify values for the search.
The cyclic field lists frequently used properties.
When you select other from the cyclic field, the Add New Property for Search formappears.
The relational operators let you limit the search to objects that have a property value thateither exactly matches or differs from the value specified in the field showing the propertyvalue.
The text entry field specifies a value of the property.
When you select master from the list of property names, you must specify a propertyvalue of the form
“libname cellname viewname”
Form Action controls whether the system selects or deselects the specified object typeswhen you click OK or Apply.
select selects all the specified object types.
deselect selects everything but the specified object types.
Zoom Out To Fit All Figures zooms the editor out to display all the objects that match theselection criteria.
Show Object Filter expands the form to show the Selection Filter.
Schematic Objects lists the schematic object types.
all turns on schematic object types.
none turns off schematic object types.
Instance Objects lists the instance object types.
all turns on instance object types.
none turns off instance object types.
June 2000 803 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Selection Filter Form
Area Partial Selection specifies whether the schematic editor includes partial objects in theselection set. Partial objects can be wire endpoints and vertices or note shape objectendpoints, vertices, and edges.
When this option is turned off (default), the editor does not include partial objects when youdrag your cursor through the design to select several objects at once (area selection).
When this option is turned on, the editor includes partial objects when you drag your cursorthrough the design to select several objects at once (area selection).
Schematic Objects lists the schematic object types you can select with your cursor.
all turns on all the object types.
none turns off all the object types.
Instance Objects (for point selection only) lists the instance subobject types that you canselect only by pointing and clicking in the design. You cannot select instance objects bydragging your cursor through the design (area selection). The selectability of most instancesubobjects is disabled by default, which allows for easier selection of the whole instance.
all turns on all the object types.
none turns off all the object types.
June 2000 804 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Schematic Title Block Properties Form
Global Border Titles defines properties shared by all sheets.
company specifies the name of the company.
dwg_no specifies the drawing number for the current sheet.
CAGE specifies the Commercial and Government Entities supply code. CAGE replacesthe Federal Supply Code for Manufacturers (FSCM) number.
Sheet Specific Border Titles specifies the properties specific to the current sheet.
rev specifies the revision level for the current sheet.
title specifies the title for the current sheet.
title1 specifies the subtitle for the current sheet.
June 2000 805 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Set Instance Binding Form
OK makes changes to the selected instances in the hierarchy editor and closes the form.
Cancel closes the form.
Apply makes changes to the selected instances in the hierarchy editor and leaves the formdisplayed.
Defaults reverts to the default bindings and inherited view list.
Previous selects the previously selected instance in the selection list (in the schematicwindow).
Next selects the next instance in the selection list (in the schematic window).
Apply To
current instance applies settings to only the current instance in the selected set (orselection list).
all selected instances applies settings to all instances in the selection list.
all instances applies settings to all instances in the schematic.
Of
same master applies settings to only instances that have the same master as thecurrent instance in the selection list.
any master applies settings to instances regardless of their masters.
Instance Name is the name of the current instance. You cannot edit this field.
View To Use identifies the view to be used when expanding down the design hierarchy. Youcan choose from the names of all available views for this instance.
Inherited View List specifies the view list that is inherited by all subordinate instances.
As Is retains the current setting without change.
Build displays the Build Inherited View List form that lets you create the view list by selectingviews and constants or by typing in your own selections.
June 2000 806 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Set Label Display Simulation Data Directory Form
Simulation Data Directory specifies the name of the directory in which you want to store thesimulation data.
June 2000 807 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Set Radix Form
Radix sets the radix for all selected monitors displaying buses.
June 2000 808 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Set Time Form
Time specifies a time value for displaying signal results. You can automatically fill in this formby sliding the Time Line indicator located in the middle of the form.
Units displays the time units for the value you enter in the Timefield. You cannot edit the timeunits. Use the Set Time Scalecommand to set the time units.
Time Line lets you automatically fill in the Time field. As you slide the indicator, a valueappears above the indicator and also in the Timefield. The value range varies depending onthe simulation history data.
Range fields display the start and end values of the simulation history represented by TimeLine. The system displays the start value of simulation history at the left end of the time lineand the end of the simulation history at the right end of the Time Line. You cannot edit theRange fields.
Move ( - ) ( + ) defines a time value by which you move through the simulation history. Youcan move backward by selecting the minus or forward by selecting the plus.
prev event sets the time to the most recent transition of the specified signals.
next event sets the time to the next transition of the specified signals.
June 2000 809 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Setup Schematic Rules Checks Form
Packaged Checks automatically sets the severity levels for the following predefined checks.
None sets the logical, physical, and name check severity levels to the default values.
Normal sets the logical, physical, and name check severity levels to either ignored orwarning.
Logical Only sets all logical check severity levels to warning. Physical and name checkseverity levels are set to ignored.
Physical Only sets all physical check severity levels to warning. Logical and namechecks are set to ignored.
VHDL sets logical, physical, and name check severity levels to preassigned values.VHDL syntax checks are set to error.
Verilog sets logical, physical, and name check severity levels to preassigned values.Verilog syntax checks are set to error.
Logical checks the high-level connectivity data.
Floating Nets checks for wires that are neither physically nor logically connected to aschematic or instance pin. Ignores wires that are connected by name to a schematic orinstance pin.
To minimize the number of messages when you set the severity levels for this check towarningor error, you should set the Unconnected Wirescheck in the Physical Checkssectionof the form to ignored.
Floating Input Pins checks for component input pins and schematic output pins that arenot connected to component output pins, schematic input pins, or schematic I/O pins.
Floating Output Pins checks for component output pins and schematic input pins thatare not connected to component input pins, schematic output pins, or schematic I/O pins.
Floating I/O Pins checks for component or schematic input/output pins whose signalsare not connected to component output pins, schematic input pins, or any otherschematic I/O pins.
Floating Switch Pins checks for component or schematic bidirectional pins whosesignals are not connected to component output pins, schematic input pins, or any otherschematic I/O pins.
Shorted Output Pins checks for component output or schematic input pins that areconnected to any other component output or schematic input pins.
June 2000 810 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Offsheet Connectors checks for offsheet connectors that appear on only one sheet ina multisheet design. Also checks whether a net is used locally in more than one sheetbut is not connected across the sheets with an offsheet connector.
Physical checks for unconnected wires, offset labels, and overlapping instances.
Unconnected Wires checks for wire segments whose end points do not physicallyconnect to
❑ A schematic pin
❑ A component pin
❑ A label
❑ Another wire segment
This check is a physical check, not a logical or connectivity check.
To minimize the number of messages when you set the severity levels for this check towarning or error, you should set the Floating Netscheck in the Logical Checks section ofthe form to ignored.
Solder On CrossOver checks for solder connections placed on wire crossovers.
Overlapping Instances checks for instances that overlap other instances.
Percent Overlap Allowed specifies a value that defines the degree to which twoinstances can overlap each other. The value represents a percentage of the boundingbox for the larger instance.
Maximum Label Offset checks for unglued labels beyond a specified distance from awire (see Maximum Offset From Wireoption). When the checker finds unglued labels withinthis specified distance, the checker automatically glues the labels to the appropriatewires if the severity level is set to warning or error.
Maximum Offset From Wire specifies the distance that an unglued label can be locatedfrom a wire. When the checker finds unglued labels beyond the specified distance, thechecker marks the unglued label (see Maximum Label Offsetoption).
Name checks for syntax and collisions.
Connection By Name checks whether a signal exists in more than one physicallydisjointed group of wires or pins. You might have inadvertently connected objects whenusing a name that was already used elsewhere in the schematic. For example, if aschematic contains a pin name “A” and you name a wire in the schematic “A”, the pin andthe objects connected to the wire are logically connected.
June 2000 811 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Instance/Net Name Collision checks whether a signal name collides with an instancename. For example, the schematic rules checker will flag an instance named “x ” and anet named “x ” because the names are identical. This option is especially useful forensuring Verilog HDL and VHDL consistency.
Pin/Net Name Collision checks whether a pin name differs from a net name. Forexample, the schematic rules checker will flag a pin named “x ” and a net named “y ”because the names differ. It flags the condition of a pin name connected to a wire with adifferent net name; it does not flag connection by name.
Verilog HDL Syntax checks Verilog HDL syntax for instance and signal names in aschematic cellview. The checker flags signal names or instance names when they collidewith Verilog HDL reserved words or when they are not valid Verilog HDL identifiers.
VHDL Syntax performs VHDL syntax checking on instance and signal names in aschematic cellview. The schematic rules checker flags signal names or instance nameswhen they collide with VHDL reserved words or when they are not valid VHDL identifiers.
Instance Name Syntax controls name syntax checking for instances.
Instance Name Expression specifies the regular expression the checker uses ininstance name syntax checks. This field is enabled only when the Instance Name Syntaxcheck is set to warning or error.
Pin Name Syntax controls name syntax checking for pins.
Pin Name Expression specifies the regular expression the checker uses in pin namesyntax checks. This field is enabled only when the Pin Name Syntaxfield is set to warningor error.
Net Name Syntax controls name syntax checking for nets.
Net Name Expression specifies the regular expression the checker uses in net namesyntax checks. This field is enabled only when the Net Name Syntaxfield is set to warningor error.
Inherited Connection
Inherited Pin/Net Connections checks whether any inherited pin or net connectionsexist in the schematic.
Missing Override Nets checks for net names that have been specified by inheritedconnection override properties. If the net name is not found, the appropriate severitymarker will be placed on the instance where the netSet property is defined.
AMS (Analog/Mixed-Signal) checks for AMS netlisting checks.
Run AMS Checks
June 2000 812 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
yes runs AMS checks.
no (default) does not run AMS checks.
Verilog AMS Checks supports the Verilog-AMS language and runs netlisting checks.
Illegal Identifiers checks all identifiers in the cellview for adherence to Verilog-AMSnaming restrictions (which allows mixed-case identifiers). This includes syntaxchecking and checks for reserved words. Verilog-AMS allows mixed-case identifiers.
Name Collisions checks all identifiers in the cellview for adherence to Verilog-AMSscoping rules.
Conflicting Bus Ranges checks all buses in the cellview for consistent bus rangedirection.
Sparse Buses checks all buses in the cellview for use of each bit within the busrange.
June 2000 813 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Show Label Form
Labels of specifies which attached labels the checker looks for and highlights in the designwindow when you click on Apply.
When you click on Apply, the system draws highlighted lines between the specified labels andtheir associated objects. The system displays a flashing box around any wire labels that arenot attached to a wire segment. The form stays open so you can perform other checkoperations.
June 2000 814 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Show Views Found Form
View Name(s) shows all the views bound to all the instances in the current schematiccellview.
Highlight Layers shows the colors used to highlight the instances with the correspondingviews. The command graphically shows the current view being used for each instance.
June 2000 815 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Stretch Form – Schematic Editor
Snap Mode specifies the angles along which you can stretch objects in the cellview.
anyAngle (default) lets you stretch along any angle from the current location.
diagonal restricts the movement of stretched objects to points that are along 45-degree,90-degree, and 180-degree angles from the current location.
orthogonal restricts the stretching of objects to points along the X and Y axes from thecurrent location.
Route Method controls how the schematic editor routes wires when you stretch an object.
full (default) draws complex lines and generates additional segments, when necessary,to complete the connection. When the editor cannot complete the connection,rubberband lines remain in the schematic to indicate the intended connectivity.
direct draws a direct line between two given points.
flight draws a dashed line between two given points.
simple restricts the movement of objects and the drawing of associated lines to pointsalong the X and Y axes from the current location.
Route Wire Segments Connected To specifies whether the editor stretches and reroutesthe unselected wires that are connected to a specified object type. When you do not enableback tracing for an object type, the editor stretches and reroutes only the first wire segmentthat is connected to the object you want to stretch. You can reroute wire segments connectedto the following object types:
■ Instance
■ Pin
■ Wire
When you turn on an option for an object type, the schematic editor stretches and reroutesall the connected wire segments from the selected object only back to the point where
■ The wire reaches a solder dot
■ The wire reaches a pin
■ The wire reaches a wire of a different width
■ The wire reaches another selected wire
June 2000 816 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Rotate turns an object in 90-degree increments counterclockwise around the currentreference point.
Sideways mirrors the object across an imaginary vertical line passing through the currentreference point.
Upside Down mirrors the object across an imaginary horizontal line passing through thecurrent reference point
June 2000 817 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Stretch Form – Symbol Editor
Snap Mode specifies the angles along which you can stretch objects in the cellview.
anyAngle (default) lets you stretch along any angle from the current location.
diagonal restricts the movement of stretched objects to points along the X and Y axesand to points that are along 45-degree angles from the current location.
orthogonal restricts the stretching of objects to points along the X and Y axes from thecurrent location.
June 2000 818 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Submit Plot Form
Plot – cellview (default)
Library Name specifies the library that contains the cellview you want to plot.
Cell Name specifies the name of the cellview you want to plot.
View Name specifies the view name of the cellview you want to plot.
Area to Plot specifies the boundaries for the plot. The text field displays the coordinatesfor the lower right-hand and upper left-hand corners of a bounding box that representsthe plot area.
Full Size (default) specifies the entire cellview and gives the coordinates in Area toPlot.
Select lets you type coordinates or drag your mouse across the design to specifythe plot area.
Browse opens the Library Browser. Use the browser to select a cellview. The systemautomatically fills in the form with the information you specify in the browser.
Plot Scope
Sheet Range (appears only when plotting from an index sheet) lets you choose the numberof sheets of a multisheet schematic.
none prints only the current cellview.
all prints the entire hierarchy starting from the current cellview.
from lets you specify a start and end page to plot.
Hierarchy options control hierarchical plotting.
current level plots only the specified cellview.
hierarchy plots portions of the design hierarchy.
levels down plots a specified number of design levels.
The following fields are editable when you select hierarchy or levels down.
View Name List specifies a prioritized list of view names that the system looks for duringhierarchical plotting.
Skip Libraries specifies a list of libraries that the system ignores during hierarchicalplotting.
June 2000 819 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Skip Cells Below specifies the last level of hierarchy that the system plots duringhierarchical plotting. Specify a cell name or list of cell names to identify the final level toplot. The system ignores all cells below the specified cell or list of cells.
Plot With options let you specify the information you want the system to include on the outputplot. You can specify more than one option.
header plots the header information.
notes enables the text box. Use the text box to create the note text.
grid/axes plots both the grid and axes lines.
Template File specifies a plot setup file. A plot setup file contains plot setup information forthe Submit Plot form and the Plot Options form. The Template File options let you read in, orwrite to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains plotsetup options or a sample file. Two sample plot template files are available in theyour_install_dir /tools/dfII/samples/plot directory. The sample filesare schPlot.i l and schMetPlot.i l .
The system loads the default plot template file when you first use the Design – Submit –Plot command. Once the default plot template file is set, you must use the Load buttonto load another template file.
Save writes the current plot setup information to a setup file. Plot setup options arestored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotteroptions.
Plot – library
Library Name specifies the library that contains the cells you want to plot.
View Name List lists the view names of the cells you want to plot.
Browse opens the Library Browser. Use the browser to select a library. The systemautomatically fills in the form with the information you specify in the browser.
Plot With options let you specify the information you want the system to include on the outputplot. You can specify more than one option.
header plots the header information.
notes enables the text box. Use the text box to create the note text.
June 2000 820 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
grid/axes plots both the grid and axes lines.
Template File specifies a plot setup file. A plot setup file contains plot setup information forthe Submit Plot form and the Plot Options form. The Template Fileoptions let you read in, orwrite to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains plotsetup options or a sample file. Two sample plot template files are available in theyour_install_dir /tools/dfII/samples/plot directory. The sample filesare schPlot.i l and schMetPlot.i l .
The system loads the default plot template file when you first use the Design – Submit –Plot command. Once the default plot template file is set, you must use the Load buttonto load another template file.
Save writes the current plot setup information to a setup file. Plot setup options arestored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotteroptions.
Plot – viewing area
Plot With options let you specify the information you want the system to include on the outputplot. You can specify more than one option.
header plots the header information.
notes enables the text box. Use the text box to create the note text.
index sheets plots the index sheets for the current plot job.
grid/axes plots both the grid and axes lines.
Template File specifies a plot setup file. A plot setup file contains plot setup information forthe Submit Plot form and the Plot Options form. The Template File options let you read in, orwrite to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains plotsetup options or a sample file. Two sample plot template files are available in theyour_install_dir /tools/dfII/samples/plot directory. The sample filesare schPlot.i l and schMetPlot.i l .
The system loads the default plot template file when you first use the Design – Submit –Plot command. Once the default plot template file is set, you must use the Load buttonto load another template file.
June 2000 821 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Save writes the current plot setup information to a setup file. Plot setup options arestored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotteroptions.
June 2000 822 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Symbol Generation Options Form
Library Name specifies the library for the generated cellview.
Cell Name specifies the cell name for the generated cellview.
View Name specifies the view name for the generated cellview.
Pin Specifications lets you change pin order or move pins to different sides of the symbol.
Left Pins creates pins for the left side of the symbol.
Right Pins creates pins for the right side of the symbol.
Top Pins creates pins for the top of the symbol.
Bottom Pins creates pins for the bottom of the symbol.
Attributes
List opens a corresponding attributes form that you can use to change the pin directionand the pin graphic attributes.
Load/Save displays options you can use to specify which TSG template file the systemreferences when creating a symbol automatically.
Load consists of a Load button, a cyclic field, and a text field. The cyclic field lists theTSG template file keywords. The text field changes when you select a keyword. Whenyou click the Load button, the system loads the file displayed in the text field.
Save (TSG File) specifies a path for the file you want to save.
Load Template Data From Symbol specifies a file that contains the TSG templateinformation.
Library Name specifies the library name of the cellview that contains the TSG templateinformation.
Cell Name specifies the cell name of the cellview that contains the TSG templateinformation.
View Name specifies the view name of the cellview that contains the TSG templateinformation.
Edit Attributes expands the form to display the symbol attributes options.
Pin Spacing specifies the spacing between pins.
June 2000 823 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Stub Length specifies a length for the line that represents the pin wire.
Height increases the minimum height value for the generated symbol. When set to 0(default), TSG uses pin and label data to determine the minimum height value for thesymbol.
Width increases the minimum width value for the generated symbol. When set to 0(default), TSG uses pin and label data to determine the minimum width value for thesymbol.
Pin Connector contains a list of pin connector shapes.
Origin contains a list of possible origin locations for the generated symbol.
Reverse Pin Order creates a symbol with the pins in reverse order.
Edit Labels expands the form to display the label options.
Label contains a list of the current labels.
Name specifies a label that you want to add to the Labelcyclic field.
Label Choice contains a list of label types.
Apply To contains a list of the pin types to which you can apply the label.
Label Type contains a list of the types you can assign to the label.
Orientation specifies the orientation of the label.
Font Height specifies the height of the label text.
Justification specifies the location of the label.
Font Style contains a list of the fonts you can apply to the label.
isOverbar is only a display option. You use this option to specify whether the softwaredisplays an overbar over a label in the design window. When disabled (default), thesoftware displays underscore characters ( _ ) in the label as part of the label text string.When enabled, the software interprets underscore characters ( _ ) in the label as toggleswitches that control where overbars begin and end.
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
_abc_de abcde
June 2000 824 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Location specifies where on the symbol to place the label.
Add adds the pin name you specify in the Namefield to the list under the Labelcyclic field.
Delete removes the pin name you specify in the Namefield from the list under the Labelcyclic field.
Modify applies the changes you specify in the form to the specified label.
Edit Properties expands the form to display the property options.
Property contains a list of the current properties.
Name specifies a property that you want to add to the Property Listcyclic field.
Value specifies a value for the property you specify in the Name field.
Apply To contains a list of the pin types to which you can apply the property.
Property Type contains a list of the types you can assign to the property.
Orientation specifies the orientation of the property in respect to the instance.
Font Height specifies the height of the property text.
Justification specifies the location of the property.
Font Style contains a list of the fonts you can apply to the property.
isOverbar is only a display option. Use this option to specify whether the softwaredisplays an overbar over a label in the design window. When disabled (default), thesoftware displays underscore characters ( _ ) in the label as part of the label text string.When enabled, the software interprets underscore characters ( _ ) in the label as toggleswitches that control where overbars begin and end.
ab_cd_ef_gh_ij ab cdef ghij
Property Name Appears in Design Window As
_abcde abcde
ab_cde ab cde
June 2000 825 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Caution
To avoid confusion when text actually contains underscore characters,Cadence recommends that you disable this display option. It is providedonly for backward compatibility.
Location specifies where on the symbol to place the property.
Add adds the property name you specify in the Name field to the list under the Propertycyclic field.
Delete removes the property name you specify in the Name field from the list under theProperty cyclic field.
Modify applies the property name you specify in the Name field to the list under theProperty cyclic field.
_abc_de abcde
ab_cd_ef_gh_ij ab cdef ghij
June 2000 826 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Symbol Select All Form
Form Action controls whether the system selects or deselects all the specified object typeswhen you click OK or Apply.
select selects all the specified object types.
deselect selects everything but the specified object types.
Symbol Objects lists the symbol object types.
all turns on symbol object types.
none turns off symbol object types.
June 2000 827 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Symbol Select By Property Form
Find lets you specify values for the search.
The cyclic field lists frequently used properties.
When you select other from the cyclic field, the Add New Property for Search formappears.
The relational operators let you limit the search to objects that have a property value thateither exactly matches or differs from the value specified in the field showing the propertyvalue.
The text entry field specifies a value of the property.
When you select master from the list of property names, you must specify a propertyvalue of the form
“libname cellname viewname”
Form Action controls whether the system selects or deselects the specified object typeswhen you click OK or Apply.
select selects all the specified object types.
deselect selects everything but the specified object types.
Zoom Out To Fit All Figures zooms the editor out to display all the objects that match theselection criteria.
Show Object Filter expands the form to show the Selection Filter.
Symbol Objects lists the symbol object types.
all turns on symbol object types.
none turns off symbol object types.
June 2000 828 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Symbol Selection Filter Form
Area Partial Selection specifies whether the symbol editor includes partial objects in theselection set. Partial objects can be wire endpoints and vertices or note shape objectendpoints, vertices, and edges.
When this option is turned off (default), the editor does not include partial objects when youdrag your cursor through the design to select several objects at once (area selection).
When this option is turned on, the editor includes partial objects when you drag your cursorthrough the design to select several objects at once (area selection).
Symbol Objects lists the symbol object types you can select with your cursor.
all turns on all the object types.
none turns off all object types.
June 2000 829 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Synchronization Form
Synchronize with Simulator at Breakpoint enables synchronization to display simulationresults in monitors at simulation breakpoints.
June 2000 830 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
Time Scale Form
Units specifies the time units for time values.
Scale Factor specifies a value to scale all displayed time values.
Precision specifies the number of digits to display to the right of the decimal point for alldisplayed time values.
June 2000 831 Product Version 4.4.6
Virtuoso Schematic Composer User GuideForm Descriptions
VHDL Properties Form
Generics specifies the property names and the corresponding VHDL types, organized asSKILL lists, for the netlister to use when generating the entity.
The Add, Modify, and Delete buttons affect only the display of properties on the VHDLProperties form. You must click OK or Apply to apply the changes to objects in your design.
Add displays the Add Generic form, which lets you add a new generic to the list box.
Modify displays the Modify Generic form, which lets you redefine the type and value for ageneric displayed in the list box. When you select a generic in the list box before you selectthe command, the system fills in the form with generic information.
Delete displays the Delete Generic form, which lets you delete a specified generic from thelist box. When you select a generic in the list box before you select the command, the systemfills in the form with generic information.
Scalar Data Type specifies the default data type for the netlister to use when generating theentity.
Vector Data Type specifies the default data type for the netlister to use when generatingvector ports and signals if no data type is specified on the pin or signal itself.
Use Clause specifies a list of packages to be inserted by default in the context clause of theVHDL entity generated by the netlister.
User Comment shows a string to be inserted as the first line of each VHDL entity andarchitecture generated by the netlister.
June 2000 832 Product Version 4.4.6
Virtuoso Schematic Composer User Guide
that. For
nce
, or
nd
orm
Glossary
A
arrayAn ordered arrangement of instances in rows and columns with uniform spacing.
attributeA mandatory characteristic of a design object or cellview, such as the wire width attribute,you can change but cannot delete. It is a permanent and predefined part of the databaseexample, a wire requires a beginning coordinate and an ending coordinate, and an instarequires an instance name.
In contrast, properties are optional; attributes are not. Properties can be added, changeddeleted. Attributes can be added or changed, but they cannot be deleted.See alsoproperty.
B
backannotationThe process of passing information generated outside Virtuoso® schematic composer astoring the information in Virtuoso® schematic composer.
blockA generic instance that represents lower-level design data.
browserA window used for displaying the names of libraries, cellviews, views, or components for a ffield. Examples of browsers are the Component Browser and the Library Browser.
pin1
GATE_REP
N7
pin2
Input pin Outputpin
June 2000 833 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
nentsist; to
d in
by a
name
of theare
atten.
You can use the Component Browser to display multiple libraries and their available compoat the same time; to display a hierarchical list of components instead of an alphabetical lgo directly to a specific component without scrolling.
You can use the Library Browser to view information about the libraries you have specifieyourcds.l ib file.
bundleA collection of signals with different names. A bundle is represented by names separatedcomma; for example,A,B,Data<0:15> . See alsowire.
busA collection of signals sharing a common base name. A bus is represented by this base followed with a vector expression; for example,A<0:7> . See alsowire.
bus tappingTapping bits of a bus or bundle gives the tapping wire segments names that are membersbase bus or bundle. For example, in the following illustration, all names on the right columntaps from the bundleS,R,Q<0:15> .
C
CDBAThe database mechanism or application programming interface (API) used by Virtuoso®schematic composer for accessing design databases. It is traversed by netlisters like prflCDBA stands for C-level Database Access.
Q<5:3>
Q<0:7>
S
Q<0>
S,R
S,R,Q<0:15>
June 2000 834 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
tg of a
unit
ent,
your
The
ection
bjectew to
n or
jects.
cellA component of a design; a collection of different aspects (representations) of componenimplementations, such as schematic or symbol representations. A design object consistinset of views that can be stored and referenced independently.
An inverter and a buffer are examples of a small cell. A decoder register, arithmetic logic(ALU), memories, complete chips, and printed circuit boards are examples of large cells.
cellviewA specific representation (view) of a cell. A particular representation of a particular componsuch as a schematic symbol of a NAND gate.
Cellviews are classified by their view type. Each cellview has a view name.
Command Interpreter Window (CIW)The window that launches any Cadence Design Framework II application. The CIW logsdesign session and reports messages.
connectivityThe way in which components and pins are linked together in an unambiguous manner. connectivity in a schematic is represented by wires linking the component pins to othercomponent pins. Connectivity can also be represented by pins of the common name (connby name). The connectivity of a cellview is created by either theDesign – Check and Savecommand or theCheck – Current Cellview command.
cross selectionThe process of selecting an object in one view to automatically select the corresponding oin another Cadence application. For example, selecting an instance in a schematic cellvicross highlight the corresponding instance in the Hierarchy Editor.
D
delayThe time interval between the manifestation of a signal at one point and the manifestatiodetection of the same signal at another point.
delay pathAn ordered series of instance-pin pairs that forms a connected signal path.
direct manipulationClicking on an object and then dragging the mouse to quickly stretch, move, and copy ob
June 2000 835 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
esenttween
bels,
enterse.
s are
Gatestom
r andnd
s. In
E
editor, schematicThe interactive editor in which you can create schematic cellviews and edit objects that reprparts of the design, such as components and pins, and wires that establish connectivity bethem.
editor, symbolThe interactive editor in which you can create and edit schematic symbol cellviews using lapins, shapes, notes, and a selection box.
Enter FunctionA class of functions that gather data from the user interactively. Schematic composer usesfunctions to build the interactive commands that require performing actions with the mou
F
fontThe style and size of type, in Virtuoso® schematic composer, of the label text. The choiceeuroStyle, gothic, math, roman, script, stick, swedish, andmilSpec. Themath fontdisplays mathematical and Greek symbols. Theswedish font displays Swedish languagecharacters.
G
gateSymbol object for combinational logic; for example, AND gates and OR gates.
gate arrayGates placed in a prefabricated matrix where you provide the design for the interconnect.array designs are cheaper to manufacture because only the interconnects have to be cumade.
geThe graphics editor component of DFII that supports both Virtuoso® schematic composeVirtuoso® layout editor. It supplies a variety of functionality including display, selection, ahierarchical signal probing.
global signal or global netA signal that is connected by name across all levels of a design hierarchy without using pinCadence Database Access (CDBA), a global signal is a signal that has theisGlobal attribute
June 2000 836 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
withrename See
ntedgate.
oftf an
is,
ith
Whend
eamehe
set totrue . In schematics, a global signal is determined by name; if the signal name endsan exclamation point (! ), it is considered global. A signal that is explicitly passed everywhein a design is not considered global. A global signal connects to other signals with the sameelsewhere in the hierarchy without requiring an explicit connection through the hierarchy.inherited connections.
H
hierarchical designDivision of portions of large designs into manageable views that can be created, represesymbolically, edited, and called by or connected to other such views in a design, optimizingproduction through tool speed and distribution of work load across a design organization
I
ilInstThe ilInst SKILL variable provides self-reference to an instance during graphic displaythe cellview containing the instance. The typical usage is for IL labels, such as labels thaevaluate a SKILL expression and display the results. For example, to display the value oinstance property, you create an IL label with the valueilInst~>propertyName . TheexpressionilInst~>propertyName is evaluated for all instances of the cell and theresulting values are displayed in the graphic editor.
TheilInst SKILL variable is only evaluated for the instances in the top display level. Thatonly the instances in the schematic can have theilInst SKILL variable value defined. If, forexample, you are instantiating schematics in schematics in schematics,ilInst can only bedetermined for the instances in the top schematics, and all subinstances are evaluated wreference to the subschematic in which they are instantiated.
lLLabelIL labels are expressions that are evaluated by the SKILL language to determine the value.you place an instance in your schematic, the system evaluates the SKILL expression andisplays the resulting value. For example, the system displays the IL labelilInst~>name inthe symbol editor, but displays a value – for example,I3 – in the schematic editor. Other typesof labels arenormal andNLPLabel.
inherited connectionsA facility for specifying global signals that may be overridden for a particular branch of thhierarchy. Net expression labels are used to specify the default signal and the property nwhich the global signal looks for.netSet properties can be placed on instances to override tdefault signal for a branch of the hierarchy.
June 2000 837 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
. You
ularlybit on
rigin
s
ls ofr plot
not
inherited net expressionA use of the NLP expression to support declaring an inherited connection.
instanceAn instantiation of a lib cell symbol. It is a database object that represents a master cellviewcan have several instances of the same cellview in a design.
instance iterationA compact way of representing repeated instances of a symbol in your schematic. Particuseful in bus-type or data-flow architectures that have identical structures to handle eachthe bus.
interpreted labelRepresents the group ofILLabel andNLPLabel because their values are always derived.
J
justificationPosition of the label’s origin with respect to the label. The cursor is always attached to the opoint. The choices areupperLeft, upperCenter, upperRight, centerLeft, centerCenter,centerRight, lowerLeft, lowerCenter, andlowerRight. For example, if you specifylowerCenter, the cursor is centered below the label.
M
member netA bit of anet. For example, if a net had the nameX,vdd!,Z , then the net has three membernamedX, vdd! , andZ.
member terminalA bit of a terminal. For example, if a terminal had the nameX,vdd!,Z , then the terminal hasthree members namedX, vdd! , andZ.
multisheetThe use of several pages to represent a schematic, connected by pins. You use two levehierarchy, the index and sheet levels. This partition improves readability and produces betteoutput.
multisheet, indexA schematic representation that is given the instance of all the sheets. This schematic isintended to be edited manually.
June 2000 838 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
nal or
sheets
signalllview
y an
playted net
multisheet, pinConnects nets between sheets in a multisheet schematic. A pin can connect a single sigmultiple signals (buses) of a terminal.
multisheet, sheetA schematic containing the logical description of a sheet that can be connected to other with offsheet pins.
N
netA database object that describes one or more signals. Logical implementation of a singleor a group of signals that implements the connections to instance pins and pins of the cecontaining the net.
net expressionA use of theNLP expression to support declaring aninherited connection.
net expression labelThe object for displaying the value of net expressions to the user.
net, globalUsed to establish connectivity between nets in different levels of the hierarchy. Indicated bexclamation mark added to the end of the name; for example,vdd!
NLPNetlist property. NLP expressions, besides being used for netlisting, are also used to disevaluated property values. The syntax of NLP expressions can be used to support inheriexpressions.
NLPLabel
A CDBA label type. Other types of labels are Normal and ILLabel . Labels that are ofNLPLabel type undergo special NLP evaluation. In general, NLP expressions define aproperty name to look for, where to look for the property, a format string used to substitute afound property value, and a default value to use if the property is not found. The at sign ( @)in the net expression label specifies the beginning of a property substitution expression, as[@instanceName] . It specifies how NLP label expressions are interpreted.
June 2000 839 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
t nets.
ne netother
nal or
iew.
leted.
ber
s.
f the
O
OSSOpen Simulation System. The functionality provided within OSS is utilized by manyapplications and customers for writing netlist interfaces to a variety of tools.
P
patchcordA special connection symbol used to establish aliases between the signals of two differen
Unlike tap names, where you extract bits of a single net, you can use patchcords to copy oto another. You can also use the patchcord to map bits from one net to different bits of annet.
pinRepresents the connection point for a single signal or multiple signals of the terminal.
pin, offsheetConnects nets between sheets in a multisheet schematic. A pin can connect a single sigmultiple signals (buses) of a terminal.
placed masterThe master cellview of the instance placed in a schematic. Usually, this is the symbol cellvThe instance in a schematic references the symbol.
propertyA characteristic of a design object or cellview that affects the object and can be edited or deProperties can be mandatory or optional.See alsoattribute.
S
signalA database object that represents a scalar, logical entity that connects one or more meminstance terminals. A scalar net is equivalent to a signal.
Ties together all the nets that implement the signal. Can belong to a number of different netSeealso wire.
solder dotSmall filled-in circle used to identify connections between intersecting wires that are part osame net.
June 2000 840 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
do notsamefines
uch
the
iew.
elow
switched masterWhen a design hierarchy is traversed, the symbol views instantiated as the placed masterdefine the next level of the design. The placed view must be switched to another view of thecell that contains more detail, for example, the layout or schematic views. The view that dethe result of hiearchical descend is the switched master.
T
technology fileA file that defines all the physical information required for a design. It defines information sas layers, physical design rules for compaction, and devices.
terminalLogical counterpart of the pin that lets you connect from the next higher level of hierarchy tonet associated with the pin.
A database object that makes a net available for connection on instances of a given cellv
V
view, schematicContains connectivity data and graphics that describe the logical views of a design.
view, symbolGraphic representation of the interface between the current level of hierarchy to the level bthe symbol that is instantiated.
Mask layoutview
Schematicview
Symbol view
June 2000 841 Product Version 4.4.6
Virtuoso Schematic Composer User GuideGlossary
raw a
W
wireA line that connects a pin and an instance to represent a net in a schematic. When you dwire between a pin and an instance, you create a net.
wire nameDesignates the name of a net and signals represented by the wire.
June 2000 842 Product Version 4.4.6