Virtuoso® Schematic Composer User Guide

Virtuoso® Schematic Composer User
Guide
Product Version 5.0
October 2002
 1990-2002 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
this document are attributed to Cadence with the appropriate symbol. For queries regarding Cadence’s
trademarks, contact the corporate legal department at the address shown above or call 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 this
publication 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, or distributed in any way, without prior written permission from Cadence. This statement grants
you permission to print one (1) hard copy of this publication subject to the following conditions:
1. The publication may be used solely for personal, informational, and noncommercial purposes;
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 use shall be
discontinued immediately upon written notice from Cadence.
Disclaimer: Information in this publication is subject to change without notice and does not represent a
commitment on the part of Cadence. The information contained herein is the proprietary and confidential
information of Cadence or its licensors, and is supplied subject to, and may be used only by Cadence’s
customer in accordance with, a written agreement between Cadence and its customer. Except as may be
explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any
representations or warranties as to the completeness, accuracy or usefulness of the information contained
in this document. Cadence does not warrant that use of such information will not infringe any third party
rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of
such information.
Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth
in FAR52.227-14 and DFAR252.227-7013 et seq. or its successor.
Virtuoso Schematic Composer User Guide
Contents
Preface .......................................................................................................................... 31
Related Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Typographic and Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1
Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Starting the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Command Interpreter Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Opening a New Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Opening an Existing Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Making Designs Editable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Making Designs Read Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Saving Your Edits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Closing Editor Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quitting the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Database Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Design Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reference Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Menus and the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Pull-Down Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Pop-Up Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Object-Sensitive Menus (OSMs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Command Prompts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Canceling a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
3
36
37
37
38
39
40
41
42
42
43
44
45
46
47
47
48
48
48
49
50
50
52
53
54
54
Product Version 5.0
Virtuoso Schematic Composer User Guide
Undoing a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Redoing a Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying a Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Form Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quick Reference Bindkey Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quick 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic Highlighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Mouse to Select Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Extending the Selection Area of a Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting One Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Multiple Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Parts of Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Panning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Redrawing a Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing the Same Cell in Two Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Saving View Area Settings in Memory
...................................
Restoring View Area Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing and Using the Library Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Browser Type Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Library Browser to Initialize Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing and Using the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Browser Type Option to the Component Browser . . . . . . . . . . . . . . . .
October 2002
4
54
55
55
55
56
57
57
58
59
60
60
61
61
62
63
63
65
65
66
67
67
68
69
70
72
73
73
73
74
75
75
75
76
78
78
78
Product Version 5.0
Virtuoso Schematic Composer User Guide
Opening the Component Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Opening the Add Instance Form Instead of the Component Browser . . . . . . . . . . . .
Listing Components from Several Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Component Browser Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
80
81
82
2
Understanding Connectivity and Naming Conventions . . . . . . 85
Connectivity with Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Instance Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
System-Generated Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
User-Defined Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Iterated Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Wire Connections and Wire Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Wire-to-Wire Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Wire-to-Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Wire-by-Name Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Wire-to-Iterated Instance Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Global Net Name Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Multiple-Bit Wire Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Tapping Multiple Bits of a Bundle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Tapping Multiple Bits of a Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Tapping Wire Intersections by Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Designating Tap Size and Bit Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
System-Generated Net Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Multiple-Bit Wire Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Using Vector Expressions in Multiple Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Evaluating Vector Expressions in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . 106
Using Prefix Repeat Operators in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . 106
Using Suffix Repeat Operators in Multiple-Bit Wire Names . . . . . . . . . . . . . . . . . . . 107
Pin Connections and Pin Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Hierarchical Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Offsheet Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Bus Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Pin-to-Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Tapping Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
October 2002
5
Product Version 5.0
Virtuoso Schematic Composer User Guide
Patchcord Connections and Patchcord Naming Conventions . . . . . . . . . . . . . . . . . . . .
Naming Single and Multiple Bits Using Patchcords . . . . . . . . . . . . . . . . . . . . . . . . .
Naming Multiple Nets Using Patchcords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inherited Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inherited Connections in a Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Inherited Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Syntax of an Inherited Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
How Net Expressions Evaluate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sample Net Expression Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inherited Connections Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analyzing Net Expression Property Names and Evaluated Names . . . . . . . . . . . . .
Summary of Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
111
112
113
114
116
117
118
118
121
121
122
122
3
Creating Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Getting Started with Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
What Is an Instance? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Methods of Adding an Instance to Your Design . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Instances One by One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Instances by Rows and Columns (an Array) . . . . . . . . . . . . . . . . . . . . . . . .
Adding Instances Using an Iterative Expression . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Default Instance Name Prefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Instance Masters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying the View to Use While Placing the Instance . . . . . . . . . . . . . . . . . . . . . .
Changing the View after an Instance Is Already Placed . . . . . . . . . . . . . . . . . . . . . .
Renumbering Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Wires and Pins to Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Disabling Automatic Block Pin Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
6
128
128
130
130
131
133
136
138
138
139
139
139
141
143
145
145
147
148
150
150
Product Version 5.0
Virtuoso Schematic Composer User Guide
Adding Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Schematic and Offsheet Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Showing Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Narrow or Wide Wires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Wire Snap and Gravity Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Wire Draw, Width, and Route Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Wire Flight Lines Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Routing Flight Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Manipulating Wires with Only the Mouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Wires to Schematic Instance Pins using SKILL . . . . . . . . . . . . . . . . . . . . . .
Adding Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Naming a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Multiple Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying Invisible Wire Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Net Name Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Net Expression Labels to Create an Inherited Connection . . . . . . . . . . . . . . . .
Adding a Net Expression Label to a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding an Inherited Supply Symbol to a Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Net Expression Label Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding netSet Properties to Create an Inherited Connection . . . . . . . . . . . . . . . . . . . .
Adding a netSet Property to an Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying a netSet Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting a netSet Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analyzing Net Expression Property Names and Evaluated Names . . . . . . . . . . . . . . .
Finding a Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Finding and Replacing a Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Finding Available Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing the Evaluated Net Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing the Full List of all Hierarchical Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking the Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
7
151
152
153
154
155
155
155
156
157
158
158
159
160
160
163
165
165
167
168
169
169
170
172
172
173
176
176
177
178
178
179
180
182
183
184
185
Product Version 5.0
Virtuoso Schematic Composer User Guide
Deleting Solder Dots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Disabling Automatic Solder Dot Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing Solder Dot Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Importing an ASCII File for Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Patchcords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Probes to a Net, Pin, or Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Showing Probe Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing Probes from a Net, Pin, or Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing All Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Saving Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
185
185
186
187
189
189
190
191
194
195
196
196
197
198
198
4
Creating a Multisheet Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Browsing a List of Multisheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Converting a Single-Sheet Schematic to a Multisheet Schematic . . . . . . . . . . . . . . . . .
Adding New Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Sheet Border Size and Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Offsheet Pins and Their Naming Conventions . . . . . . . . . . . . . . . . . . .
Adding Offsheet Pins to Multisheet Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding the Index Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Going to and from the Index Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Repositioning a Schematic within the Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reordering Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Renumbering Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Working with Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Cross-Reference Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Pin Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Cross-Reference Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
8
202
202
203
203
205
206
208
209
210
210
212
213
214
214
215
216
217
Product Version 5.0
Virtuoso Schematic Composer User Guide
Preparing to Cross-Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zooming In to View All Cross-Referenced Pins One by One . . . . . . . . . . . . . . . . . .
Going to a Specific Hierarchical Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing Cross-Reference Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing a Cross-Reference Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Controlling the Format String Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Format String Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Multisheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Basic Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Types and Sizes of Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Cross Reference Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing a Customized Sheet Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing a Sheet Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Sheet Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Zone Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding the Sheet Zone Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Title Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Title Block Values with Normal Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Title Block Values with NLP and IL Labels . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying the Label Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Title Block Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Pin Cross-References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Presetting the Title Block Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
217
218
220
221
221
223
224
225
225
226
226
228
228
229
229
230
231
232
232
233
234
234
236
236
5
Creating Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Setting Grid Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Importing Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating New Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Rectangles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Circles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Drawing Ellipses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
9
241
242
243
244
245
246
247
248
Product Version 5.0
Virtuoso Schematic Composer User Guide
Drawing Arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Pins as Graphic Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Pins as Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Custom Pins as Graphic Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Duplicating Pin Figures in the Symbol Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Making the Custom Pin Name Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Selection Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Normal Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding an NLP Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding an IL Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Note Text and Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Net Expression Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Symbol Origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Symbol Cellviews Using Generators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
248
250
251
252
253
254
255
255
256
258
261
262
262
263
264
6
Automatically Creating Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Features of Creating Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Automatically 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding, Changing, and Reordering Pin Names . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Pin Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading and Saving a TSG Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a New Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying Label Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
10
266
266
268
270
271
274
275
277
278
280
282
285
286
289
291
293
296
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a New Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying Property Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Symbol Generator Pin Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
297
299
301
303
7
Editing Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Using Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Direct Manipulation Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Turning Off Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Undoing and Redoing an Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Undo Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretching with the Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretching with the Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretching with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretching with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Single Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Arrays of Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Across Cellviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Preselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Postselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Sheet Borders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotating Preselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotating Postselected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotating with Direct Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
11
306
307
308
308
308
309
310
313
315
316
316
317
317
318
318
319
319
320
321
322
322
323
323
324
324
324
325
326
Product Version 5.0
Virtuoso Schematic Composer User Guide
Rotating with Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Discarding Edits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alternating Symbol Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the View of a Preselected Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the View of a Postselected Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Toggling Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Toggling Pin Direction Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Toggling 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
326
327
327
327
328
328
328
328
329
329
330
332
332
333
334
335
8
Editing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Using Command Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Searching for Objects That Have a Specific Property . . . . . . . . . . . . . . . . . . . . . . . . . .
Search String Wildcards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Replacing Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Replacing String-Tagged Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects to Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Modal (Repeating) Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects by Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects Automatically by Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects by Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Property Name to the Search List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects by Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Object and Cellview Property Types and Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Applying Edits to Objects and Displaying Object Types . . . . . . . . . . . . . . . . . . . . . .
Adding Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
12
339
339
341
341
343
347
347
348
349
351
352
353
354
356
356
357
Product Version 5.0
Virtuoso Schematic Composer User Guide
Deleting Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Specific Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Instance and Block Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Pin Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Designating the Order of Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying a Pin Order from Another Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resolving Pin Order Mismatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying Pin Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Pin Name Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Wire Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Wire Name Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Instance Pin Properties on an Instance of a Block . . . . . . . . . . . . . . . . . . . .
Editing Label Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resetting Invisible Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing netSet Properties
............................................
Editing Note Text Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Note Shape Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Shape Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Pin Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Label Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Symbol Selection Box Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing User-Defined Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Passing Parameters in a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying Cellview Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
13
358
359
360
360
362
362
363
364
364
365
365
366
367
368
369
371
371
373
374
375
376
377
378
380
381
382
383
384
385
386
387
388
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting the Tool Filter
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
9
Traversing the Design Hierarchy and Creating a Design
Configuration View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
About the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exploring the Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Top-Level Schematic View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Middle-Level Schematic View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lower-Level Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
About the Configuration View of a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . .
About the Hierarchy Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Traversing a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descending Using the Descend Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing an Instance in Place . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descending 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a New Configuration View for the Design Hierarchy . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Updating a Design Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Building a New Inherited View List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Showing Views Found . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
14
392
393
394
395
396
396
397
398
398
400
401
402
403
403
404
405
405
406
408
408
409
409
409
411
411
413
Product Version 5.0
Virtuoso Schematic Composer User Guide
10
Checking Designs
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Features of the Check Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Check Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting User Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Schematic Rule Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking and Saving a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking the Current Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking a Design Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking a Design Hierarchy in the Configuration Context . . . . . . . . . . . . . . . . . . .
Checking Multisheet Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking a Label Attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross-View Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bypassing Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bypassing Floating Pin Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bypassing Unconnected Wire Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resolving Check Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Finding Errors and Warnings in a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mapping an Error Message to a Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Managing the Error Message List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Assigning an ignoreCheck Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Suppressing Message Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting an ignoreCheck Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting All ignoreCheck Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Individual Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting All Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Monitoring a Verilog or VHDL Simulation State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Cross Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Opening an SHM Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying the Simulation State of Wires and Pins . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting a Time Value for Displaying Signal Results . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Time Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Display Radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Synchronizing with Simulation at Breakpoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
15
416
418
418
420
425
426
428
429
430
431
432
433
435
435
436
438
440
441
441
441
442
442
442
443
443
444
445
445
447
448
449
450
451
Product Version 5.0
Virtuoso Schematic Composer User Guide
Closing the SHM Database
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
11
Plotting Designs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Setting Up System Options to Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Up Printer Options to Use Various Paper Sizes . . . . . . . . . . . . . . . . . . . . . . . .
Plotting a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plotting a Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plotting a Cellview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plotting Part of a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plotting Without a Header Page for Every Session . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Notes to a Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Plot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plotting a Color Schematic in Black and White . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Background Color of a Schematic Window . . . . . . . . . . . . . . . . . . . .
Using a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading a Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Default Plot Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checking the Queue Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Canceling a Plot Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
454
454
455
456
457
459
460
460
461
463
464
465
465
468
469
470
470
12
Setting Schematic Composer Options . . . . . . . . . . . . . . . . . . . . . . . . 473
Overview of Schematic Composer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing User Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Minimizing Mouse Clicks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Default Display Setting for Command Option Forms . . . . . . . . . . . . .
Saving the Current Window Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restoring a Saved Window Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Viewing Bindkey Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing Browser and CIW Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Editor Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Canceling the Modal (Repeat) Command Option . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
16
474
475
475
477
477
478
478
479
480
480
Product Version 5.0
Virtuoso Schematic Composer User Guide
Changing Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Objects Using the Filter Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Plot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Schematic Check Options and Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Tool Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Saving Form Field Default Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading Form Field Default Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
481
481
481
482
482
482
483
13
Customizing the Schematic Composer . . . . . . . . . . . . . . . . . . . . . . . 485
Customizing Pull-Down and Pop-Up Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Default Menu Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sample Menu File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Object-Sensitive Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Example of Customizing the Instance OSM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Icon Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Converting a Schematic from a 0.125 Grid to a 0.1 Grid . . . . . . . . . . . . . . . . . . . . .
Customizing Bindkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Locating the schBindKeys.il Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Locating Your Installation Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.................................................................
Loading Your Customized Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading the Cadence-Supplied Bindkey File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Opening the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading the Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Global Editor Variables for Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Editor Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Editor Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Generation (tsg) Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
17
486
486
486
487
487
489
490
490
491
491
491
492
492
492
493
493
494
494
495
495
495
496
496
497
497
Product Version 5.0
Virtuoso Schematic Composer User Guide
HDL (Verilog, SpectreHDL, and VerilogA) Variables . . . . . . . . . . . . . . . . . . . . . . . .
AMS Netlisting Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Block Pin Direction Rule Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Block Sample Sizes Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
View Name Exclusion Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Pin Types Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plot Template File Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Property Filter Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Rule Checker Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Properties for Find Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multisheet Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simulation Probe Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
View Name Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
View Master Options Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zone Formats Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Label Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Pin Masters Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing Text-to-Symbol Generator (TSG) Variables for Form Fields . . . . . . . . . . .
Pin Master Connections Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Pin Characteristics Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Template Masters Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing HDL Variables for Form Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit After Error Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Update Symbol After Edit Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross View Check Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross View String Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Printing Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verbose Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
No Hierarchy Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Net to Port Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
18
497
498
498
499
501
503
504
505
505
506
507
508
509
511
512
513
515
516
517
518
519
519
519
520
520
520
520
521
521
521
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Plot Configuration
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
A
Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523
Overview of Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Editor Environment Variables File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Window Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schDisplayDepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schDrawAxesOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schDynamicHilightOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schGridMultiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schGridSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schGridType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schMaxDragFig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schPathType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schShowDirectConnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schShowLabelOrigin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schSnapSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schWindowBBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symDisplayDepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symDrawAxesOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symDynamicHilightOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symGridMultiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symGridSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symGridType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symMaxDragFig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symPathType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symShowDirectConnects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symShowLabelOrigin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symSnapSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symWindowBBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
viewNameList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
autoDot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
blockDirRules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
19
529
530
534
534
534
535
535
535
536
536
536
537
537
538
538
538
539
539
540
540
540
541
541
542
542
542
543
543
544
544
544
Product Version 5.0
Virtuoso Schematic Composer User Guide
broadcast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
browserType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
checkAlways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
checkBeepOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
checkHierSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
checkSymTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
compBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
condOp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createCvOptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createInstResetCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createInstShowCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelHorzOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelHorzPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelHorzRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelOffsetMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelVertOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelVertPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
createLabelVertRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cvDisplay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
defaultsFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
defWideWireWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
descendSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
descendTarget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
dotOverlap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
drawMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
drawModeRoute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
echoToCIW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
editPropShowCDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
editPropShowSystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
editPropShowUser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
findZoomButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gravityOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
libList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
20
545
545
545
546
546
547
547
548
548
549
549
549
550
550
551
551
551
552
552
552
553
553
554
554
554
555
555
556
556
557
557
557
558
558
559
559
Product Version 5.0
Virtuoso Schematic Composer User Guide
markerSeverity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
markerShowIgnore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
markerZoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
maxLabelOffsetUU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
minMarkerSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
modalCommands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
netExprDisplay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
netNameMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
netNamePrefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
netNameRangeDescend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
netNameSeparator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
noteFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
noteFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
noteJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
noteShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
noteShapeLineStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
pinBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
pinNameSeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
pinRefDuplicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
pinRefFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
pinRefSorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
replSaveChanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
runSRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
runVIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
saveAction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schematicAreaPartialSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
schematicSelectFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
sensitiveMenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
shapeLineType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
shapeLineWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
simProbeFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
simProbeType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
snapEnabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
spanLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcConnByName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcFloatingBIDIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
21
559
560
560
560
561
561
562
562
562
563
563
564
564
564
565
565
565
566
566
567
567
567
568
568
569
569
569
570
570
571
571
571
572
572
572
573
Product Version 5.0
Virtuoso Schematic Composer User Guide
srcFloatingInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcFloatingIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcFloatingNets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcFloatingOutput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcInheritedConnCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcInstNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcInstNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcInstOverlap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcInstOverlapValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcMaxLabelOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcNameCollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcNetNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcNetNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcNoOverrideNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcOffsheetConnCheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcPinNetCollision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcShortedOutputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcSolderOnCrossover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcTermNameExpr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcTermNameSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcUnconnectedWires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcVerilogSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
srcVHDLSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ssgSortPins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
statusBanner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
statusBannerXY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
stickyWireLabelRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolAreaPartialSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolLabelChoiceText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolLabelFontHeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolLabelFontStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolLabelJustify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolLabelType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolPinFlatten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolPinIncrCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolPinLocate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
22
573
574
574
575
575
575
576
576
577
577
577
578
578
579
579
580
580
580
581
581
582
582
582
583
583
584
584
584
585
585
585
586
586
587
587
587
Product Version 5.0
Virtuoso Schematic Composer User Guide
symbolPinUsage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolSelectFilter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
symbolShapeFillStyle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
transToSheetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
tsgTemplateType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
updateConn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vicExactPinMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vicInheritedPins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vicInheritedPinsMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vicSeverity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vicViewList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
wireBackTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zoomOutButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
588
588
588
589
589
590
590
591
591
591
592
592
593
593
B
Text-to-Symbol Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595
Symbol Shape Generated by TSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TSG Symbol Description File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TSG Template File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clock and Negation Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Backannotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simple File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Complex File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Extended File Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TSG Symbol Description File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic File Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using TSG Constructs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cell Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
23
597
598
598
599
599
599
600
601
603
603
605
607
607
608
608
608
609
Product Version 5.0
Virtuoso Schematic Composer User Guide
Executing TSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
TSG Processing Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
Creating Symbols Automatically from a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . 621
C
Symbol and Simulation Library Generator. . . . . . . . . . . . . . . . . . . . 623
Terms and Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Library Command File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running the Symbol and Simulation Library Generator . . . . . . . . . . . . . . . . . . . . . . . .
Running the Symbol and Simulation Library Generator in the Cadence Graphic
Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Running the Symbol and Simulation Library Generator in the Cadence Nongraphic
Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Library Management Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmCheckTerm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmCheckView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmCloseLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmDefCell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmDefTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmDefViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmDeleteTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmDeleteViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmGetValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmLoadData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmOpenLib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmPrintLibTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmPrintLibViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmPrintTerm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmPrintTermProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmPrintViewProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lmSimView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
simRep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
24
625
626
626
626
628
630
632
633
635
636
638
640
644
645
646
647
648
649
650
651
652
653
654
655
656
Product Version 5.0
Virtuoso Schematic Composer User Guide
Variables That Control Command Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
Properties That Modify Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
Sample Library Command File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
D
Configuring and Using Kanji Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring Your System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing the Required Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Uncompressing the Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying the Schematic Editor Menu File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Environment Variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying the Data Registry File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Kanji Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Formats, Files, and Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a New Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating a Symbol from an Existing File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Generating a Symbol from a New File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing an Existing Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
25
664
664
664
664
665
665
666
667
667
667
668
669
670
Product Version 5.0
Virtuoso Schematic Composer User Guide
Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
Known Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
schHiCreateKanjiSymbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
E
Form Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677
Add Block Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Custom Pin Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Instance Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Kanji Note Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Net Expression Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add New Property to Find Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add New Property to Replace Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add New Property for Search Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Arc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Shape Form – Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Note Text Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Pin Form – Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Pin Form – Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Selection Box Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Simulation Monitor Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Label Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Arc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Symbol Shape Form – Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add Wire Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
26
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
699
700
701
702
703
705
706
707
708
709
710
711
712
Product Version 5.0
Virtuoso Schematic Composer User Guide
Add Wire Name Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Build Inherited View List Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cellview From Cellview Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cellview From Instance Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cellview From Pin List Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cellviews with Evaluated Net Expression Name Form . . . . . . . . . . . . . . . . . . . . . . . . .
Change Sheet Border Size Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Check Hierarchy Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Component Browser Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Component Browser Preferences Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copy Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Create Cellview Dialog Box – Replace or Modify . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Create Schematic Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Create Schematic Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross Reference Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross-View Checker Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Delete All Markers Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Delete Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Delete Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Delete Schematic Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descend Form – Descend Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descend Form – Iterated Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descend Form – Multisheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descend Form – Noniterated Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Display Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Cellview Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Component Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Instance and Block . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Instance Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Master Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Net Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Note Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Note Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Other Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
27
713
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
741
743
745
746
749
751
753
755
757
759
761
Product Version 5.0
Virtuoso Schematic Composer User Guide
Edit Object Properties Form – Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Pin Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Selection Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Symbol Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Symbol Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Symbol Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Wire Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Object Properties Form – Wire Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Pin Order Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Edit Schematic Sheet Number Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editor Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Find Marker Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Go To Pin Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Go To Sheet Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Import Symbol Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Left, Right, Top, Bottom Pin Attributes Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Load Label Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Load Schematic Defaults Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modify Generic Form – VHDL Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modify Property Form – Edit Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Move Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Net Expression Available Property Names Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Net Expression Evaluated Names Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Occurrence Paths to Evaluated Name Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Open Simulation Data Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plot Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Renumber Instances Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset Invisible Labels Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotate Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Route Flight Line Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Save Label Display Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Save Schematic Defaults Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Save Schematics with Errors Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Check Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Find and Symbol Find Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Replace and Symbol Replace Forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
October 2002
28
763
765
767
768
770
772
774
776
778
779
780
783
785
786
787
788
789
790
791
792
793
794
795
796
797
798
800
801
802
803
804
805
806
807
809
811
Product Version 5.0
Virtuoso Schematic Composer User Guide
Schematic Select All Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Select By Property Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Selection Filter Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Schematic Title Block Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Instance Binding Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Label Display Simulation Data Directory Form . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Radix Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Time Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setup Schematic Rules Checks Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Show Label Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Show Views Found Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretch Form – Schematic Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stretch Form – Symbol Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Submit Plot Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Generation Options Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Select All Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Select By Property Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Symbol Selection Filter Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Synchronization Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Time Scale Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VHDL Properties Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
813
814
815
816
817
818
819
820
821
825
826
827
829
830
834
838
839
840
841
842
843
Glossary ..................................................................................................................... 845
October 2002
29
Product Version 5.0
Virtuoso Schematic Composer User Guide
October 2002
30
Product Version 5.0
Virtuoso Schematic Composer User Guide
Preface
The Virtuoso® Schematic Composer is a design entry tool that supports the work of logic and
circuit design engineers, including drafters. Physical layout designers and printed circuit
board designers can use the information as background material to support their work.
The preface discusses the following topics:
■
Related Documents on page 32
■
Typographic and Syntax Conventions on page 32
October 2002
31
Product Version 5.0
Virtuoso Schematic Composer User Guide
Preface
Related Documents
You can use the schematic composer with other Cadence® products. It requires knowledge
of special languages such as the Cadence SKILL language. The following documents give
you more information about these tools and languages.
■
The Design Framework II User Guide provides information if you are not familiar with
Cadence terms and starting your system.
■
The Cadence Application Infrastructure User Guide provides additional information
about the architecture.
■
The Virtuoso Schematic Composer Tutorial assumes that you know how to design
schematics but are new to the schematic composer software.
■
The Inherited Connections Flow Guide describes how to use inherited connections
and net expressions with various Cadence tools in the design flow.
■
The Virtuoso Schematic Composer SKILL Functions Reference Manual is for
users who customize the standard product.
■
The Library Manager User Guide explains how to open or create cellviews from the
library manager.
■
The Verilog-XL Integration Reference Manual describes how to use design entry
with Verilog® HDL. Integrated circuit designers who use the Verilog-XL simulator to verify
the logic of their designs can benefit from this manual.
■
The Virtuoso Schematic Composer VHDL Interface User Guide describes how to
use design entry with VHDL.
■
The Text-to-Symbol Generator (TSG) is a Cadence application program that
automatically generates circuit symbols for the schematic composer and subsequent
simulation 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
destination is 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 section describes typographic and syntax conventions used in this manual.
October 2002
32
Product Version 5.0
Virtuoso Schematic Composer User Guide
Preface
text
Indicates text you must type exactly as it is presented.
z_argument
Indicates text that you must replace with an appropriate
argument. The prefix (in this case, z_) indicates the data type
the argument can accept. Do not type the data type or
underscore.
[ ]
Denotes optional arguments. When used with vertical bars, they
enclose a list of choices from which you can choose one.
{ }
Used with vertical bars and encloses a list of choices from which
you must choose one.
|
Separates a choice of options. The Boolean logical operator OR.
…
Indicates that you can repeat the previous argument.
=>
Precedes the values returned by a Cadence® SKILL language
function.
/
Separates the possible values that can be returned by a
Cadence SKILL language function.
text
Indicates names of manuals, menu commands, form buttons,
and form fields.
n
Represents a positive integer less than 16,375. This is also the
bus width limitation and the limitation for inherited connections.
< n:n >
Indicates a number range of an instance.
Important
The language requires many characters not included in the preceding list. You must
type these characters exactly as they are shown in the syntax.
October 2002
33
Product Version 5.0
Virtuoso Schematic Composer User Guide
Preface
October 2002
34
Product Version 5.0
Virtuoso Schematic Composer User Guide
1
Getting Started
The Virtuoso® Schematic Composer is a design entry tool that supports the work of logic and
circuit design engineers, including drafters. Physical layout designers and printed circuit
board designers can use the information as background material to support their work. This
chapter discusses the following topics:
■
Starting the Schematic Composer on page 36
■
Working with Designs on page 37
■
Working with Libraries on page 46
■
Using Menus and the Icon Bar on page 48
■
Working with Commands on page 53
■
Quick Reference Bindkey Charts on page 57
■
Selecting Objects on page 60
■
Working with Windows on page 69
■
Using the Library Browser on page 75
■
Using the Component Browser on page 78
October 2002
35
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
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
■
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 xterm
window for other tasks while the software is running.
2. Press the Return key.
The Command Interpreter Window (CIW) appears.
October 2002
36
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using the Command Interpreter Window
The Command Interpreter Window (CIW) is the first window that appears after you start one
of the executables.
The menu banner displays
the Cadence® Design
Framework II menus.
The message area displays messages from the
software as you use the schematic composer.
You can resize the CIW to see more messages in
this area.
The input line is where you can type
Cadence SKILL commands and
functions or indicate coordinates.
The mouse settings line shows the current
settings for the mouse buttons (left, middle,
right). The settings change as you move the
mouse in and out of cellviews or start and stop
commands. Press Shift to see Shift mouse
bindings; press Control to see Control
mouse bindings.
The prompt line shows messages
from the current command.
For details, refer to Design Framework II User Guide.
Working with Designs
The following section describes the basics about the schematic editor and the symbol editor.
■
Opening a New Cellview on page 38
■
Opening an Existing Cellview on page 39
■
Using the Schematic Editor on page 40
October 2002
37
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
■
Using the Symbol Editor on page 41
■
Making Designs Editable on page 42
■
Making Designs Read Only on page 42
■
Saving Your Edits on page 43
■
Closing Editor Windows on page 44
■
Quitting the Schematic Composer on page 45
Opening a New Cellview
To open a new cellview from the CIW, do the following:
1. Choose either Design – New from an editor window or File – New – Cellview from the
CIW.
The Create New File 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 to
create; for example, schematic or symbol.
schematic opens the schematic editor.
October 2002
38
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
symbol opens the symbol editor.
5. Set the Tool cyclic field to either Composer – Schematic or Composer – Symbol.
6. Click OK.
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
October 2002
39
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
4. Click OK.
Using the Schematic Editor
A schematic design is a graphical representation of a logic circuit design. The connectivity
information is derived from the placement of pins, wires, and instances. To create a schematic
design, you use the schematic editor, which is shown in the following graphic.
Window banner
Virtuoso® Schematic Editing: mixedVHDL designA 1 schematic
Status banner
Tools Design Window Edit Add Check Sheet Options
Menu banner
Icon bar
Cursor
Pointer
Design area
Mouse settings
Prompt line
October 2002
40
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Use the schematic editor to add the following objects.
■
Instances
■
Schematic pins
■
Wires and
wire names
A
B
C
I1
Y
nand3
TERM1
■
Solder dots
■
Notes for
documentation
purposes
Schematic for Group B
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.
Using the Symbol Editor
When a schematic design requires a symbol that does not have a corresponding symbol in a
Cadence 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 your design using the
schematic editor.
If you later change a master symbol, the schematic editor automatically applies the changes
to all the existing instances of that symbol, as well as to any new instances you might add.
The only differences visually between the schematic editor and the symbol editor are the
commands.
October 2002
41
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
You use the symbol editor to add the following graphics.
■
The basic shape, such as a
polygon, circle, or rectangle
■
Symbol pins
[@instanceName]
A
■
Lines to connect the shapes
to the pins
■
Symbol labels
■
A selection box around
your symbol
■
Notes for documentation purposes
Y
inv
ABC Inverter
Making Designs Editable
If you opened your schematic or symbol in read-only mode, you can change the mode to
make it editable.
➤
Choose Design – Make Editable.
This command toggles with Design – Make Read Only.
Note: Some libraries might have read-only file permissions, which you cannot override with
this command.
Making Designs Read Only
To make a design open in read-only mode, do the following:
➤
Choose Design – Make Read Only.
October 2002
42
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
If you have made any changes to the current cellview but have not saved them, the
Change Edit Mode dialog box appears and prompts you to either save the changes or
discard them.
Change Edit Mode
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.
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.
October 2002
43
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
The Save As form appears.
Save As
2. Change the form fields to a filename of your choice.
3. Click OK.
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 Save
Changes dialog box appears and prompts you to save the changes, discard them, or
cancel the Close operation.
Save Changes
October 2002
44
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
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 to
the cellview you were editing.
Quitting the Schematic Composer
To quit the schematic composer, do the following:
1. From the CIW, choose File – Exit.
The system prompts you before exiting.
exit icds?
If you have not saved your edits, the Save Changes form appears.
Save Changes
2. Specify one of the save options by clicking on the corresponding button.
❑
Click All to reselect all cellviews and save all your changes.
October 2002
45
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
❑
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 quit
operations, 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 User Guide.
Working with Libraries
This section describes the following topics:
■
Database Structure on page 47
■
Design Libraries on page 47
■
Reference Libraries on page 48
■
Library Browser on page 48
October 2002
46
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Database Structure
Design Entry
database
Cellviews
Libraries
sample
basic
testA
Views
Cells
aoi
inverter
design1
IOreg
IOreg/sheet001
IOreg/sheet002
IOreg/sheet003
IOreg/sheet004
symbol
layout
verilog
schematic
The database holds all design data as follows:
■
Libraries hold your design hierarchy. A library has associated files, such as the
technology file, catalog file, foreign database files, and an audit trail. The catalog file
keeps track of the logical names of design objects and their physical location.
■
Cells are components of a design. If a schematic spans more than one page, as the IO
reg does, the page shows up as a cell denoted by the sheet number. The first cell name
without the 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.
The Cadence Application Infrastructure User Guide provides additional information
about the library structure.
Design Libraries
A design library is a storage area where you create a new design. Design libraries have readwrite 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 a
design in it.
October 2002
47
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Reference Libraries
Reference libraries store Cadence-supplied cells. In the design entry system, several
collections of master symbols, such as various pins and gates, are stored in the following
reference 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 contents
of those libraries that you specify in your cds.lib file. Also, several forms, such as the Open
Design form, let you use the Library Browser to initialize library and cellview form fields.
Using Menus and the Icon Bar
The following section describes using the various schematic editor and symbol editor menus
and the icon bar.
■
Using Pull-Down Menus on page 49
■
Using Pop-Up Menus on page 50
■
Using Object-Sensitive Menus (OSMs) on page 50
■
Using the Icon Bar on page 52
October 2002
48
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using Pull-Down Menus
Menu titles
Design
Window
Check and Save
Save
Save As
Hierarchy
Create Cellview
New ...
Open ...
Discard Edits ...
Command
names
Edit
Add
X
Letters indicate bindkeys.
S
^s
Triangles bring up slider commands.
Three dots bring up options forms.
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 the
window (prompts can appear in the editor window and the CIW)
❑
Displays an options form to assist you in completing the command
One of the quickest ways to start a command for an application type, such as the schematic
editor or the symbol editor, is to press a bindkey (a letter key or function key on your keyboard
that is mapped to a pull-down menu command) for that command. The following example
shows some of the Edit pull-down menu commands and their corresponding bindkeys.
Note: For all uppercase letters, use the Shift key and not the Caps Lock key. For example,
the bindkey for Save is an uppercase S.
October 2002
49
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using Pop-Up Menus
Schematic
Zoom In
Zoom Out By 2
Fit
Add Component ...
Add Pin...
Create Cellview ...
Wire (narrow)
Return
Commands for the
schematic editor
Symbol
Zoom In
Zoom Out By 2
Fit
Undo
Select Filter ...
Add Pin ...
Return
Commands for the
symbol editor
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 pop-up menus) contains the most commonly
used 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).
6. From the editor window, choose Options – Select Filter and set Schematic Objects to
all (default).
October 2002
50
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
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.
2. Press and hold the middle mouse button.
A menu pops up at the pointer location.
Instance
Instance
Stretch
Stretch
Copy
Copy
Delete
Delete
Properties...
Properties ...
Descend
Edit
... ...
Descend
Edit
Descend
Read
... ...
Descend Read
Edit
In
Place
Edit In Place
Create
Cellview
... ...
Create
Cellview
Rotate
Rotate
3. Slide the pointer to the command you want and release the middle mouse button.
October 2002
51
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using the Icon Bar
The icon bar appears on the left side of the design window. This bar allows for quick access
to frequently used commands.
Check and Save
checks and saves
the cellview.
Property lets you
edit features of
objects.
Save saves the
cellview.
Zoom In By 2
enlarges the
image in the
window.
Instance lets you
create an
instance.
Wire (narrow)
lets you create a
narrow wire.
Zoom Out By 2
reduces the image
in the window.
Wire (wide) lets
you create a wide
or bus wire.
Stretch
stretches object
edges or corners.
Wire Name lets
you name a wire.
Copy duplicates
objects in this
cellview.
Delete removes
objects from this
cellview.
Undo cancels the
last edit.
Pin lets you create
a pin.
Command Options
lets you display (or
hide) an options form
of an active
command.
Repeat lets you
repeat a
command.
To start a command from the icon bar, do the following:
1. Click on an icon.
2. Complete the form that appears (you may need to press the F3 key to bring up the
corresponding form).
The commands displayed on the icon bar vary depending on which editor you are using and
on whether you are in edit or read mode. You can
■
Turn off the icon name.
■
Customize the icon bar.
October 2002
52
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Working with Commands
The following sections provide information about working with commands.
■
Using Command Prompts on page 54
■
Canceling a Command on page 54
■
Undoing a Command on page 54
■
Redoing a Command on page 55
October 2002
53
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using Command Prompts
After you start a command, the CIW and the editor window tell you what to do next.
The prompt line shows
messages from the
current command.
Left
mouse
button
Right
mouse
button
Middlem
ouse
button
The mouse settings line shows the current settings for the mouse buttons. The settings
change as you move the mouse in and out of design windows or start and stop commands.
For example:
mouseSingleSelectPt = enter a point
mousePopUp = popup menu
schHiCopy = Copy command
The window banner at the top of the schematic window or symbol window shows the active
command.
Canceling a Command
To cancel a command, do one of the following:
■
Press the Escape key.
■
Click Cancel on a form.
■
Select another command.
Undoing a Command
To undo a command, do one of the following:
October 2002
54
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
■
Press the u key.
■
Choose Edit – Undo.
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.
Displaying a Form
In general, when a menu command is followed by three dots, a form automatically appears
when you choose the command. Some commands that are not followed by three dots have
an optional form associated with them. To display the associated options form, press the F3
key after you choose the command.
Using Form Buttons
The buttons at the top of standard forms have the following functions:
Completes the
command and closes
the form
Resets default values
for options on the
form
Closes the form without
completing the
command
Completes the command and
continues to display the form on
the screen
Resets default values, if
any, for options on the
form
Closes the form and lets
you go on with the
command
October 2002
Closes the form without
completing the
command
55
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Note: Some forms do not have a Defaults button.
Using Form Fields
In addition to the buttons at the top of a form, there are several types of fields and buttons
inside a form.
Text fields
The text cursor shows where
you can start typing. You can
jump from one text field to
another by pressing the Tab
key. Scroll back and forth using
the left and right arrow keys.
system
user
Press and hold the left mouse button on
a cyclic field and a list appears. To
select a value, slide the cursor to one
item in the list and release the mouse
button.
Click on a button to
choose an action that
takes place
immediately.
Click on a radio button
to turn a form setting
on (filled in or
checked) or off
(empty).
Click on a radio button to choose one
setting from several options.
October 2002
56
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Quick Reference Bindkey Charts
You may print these charts and place them by your computer as a handy reference.
Quick Reference Bindkey Chart — Schematic Editor
^e
9
/
i
w
W
l
p
b
L
n
ADD
Instance
Wire (narrow)
Wire (wide)
Wire Name
Pin
Block
Net Expression
Solder Dot
Note–Text
Note–Shape
October 2002
z
]
[
↑
X
S
^s
E
e
DESIGN
Check and Save
Save (not needed)
Save As
Hierarchy–Descend Edit
Hierarchy–Descend Read
Hierarchy–Edit In Place
Hierarchy–Show Scope
Hierarchy–Return
Hierarchy–Return To Top
Create Cellview
New
Open
Discard Edits
Make Read Only
Make Editable
Probe–Add Net
Plot
Renumber Instances
←
→
↑
f
F6
WINDOW
Zoom In
Zoom In By 2
Zoom Out By 2
Pan Down
Pan Left
Pan Right
Pan Up
Fit
Redraw
Utilities
Close
u
U
m
c
M
Del
r
q
Q
^f
5
x
g
^g
CHECK
Current Cellview
Hierarchy
Options
Rules Setup
Label Attachment
Find Marker
Delete Marker
Delete All Markers
Simulation Monitors
57
O
o
^f
EDIT
Undo
Redo
Stretch
Copy
Move
Delete
Rotate
Properties–Objects
Properties–Cellviews
Reset Invisible Labels
Component Display
Alternate View
Select–Filter
Search
Route Flight
OPTIONS
Editor
Display
Select Filter
Check
Check Rules Setup
Tool Filter
Save Defaults
Load Defaults
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Quick Reference Bindkey Chart — Symbol Editor
^e
9
p
l
L
n
ADD
Pin
Shape
Label
Selection Box
Note ⇒ Text
Note ⇒ Shape
Net Expression
Custom Pin
Import Symbol
October 2002
WINDOW
Zoom In
Zoom In By 2
Zoom Out By 2
Pan Down
←
Pan Left
→
Pan Right
↑
Pan Up
f
Fit
F6
Redraw
Utilities
Close
u
U
m
c
M
Del
r
q
Q
CHECK
Cross View Check
Find Marker
Delete Marker
Delete All Markers
O
o
^f
z
]
[
↑
X
S
^s
E
e
DESIGN
Check and Save
Save (not needed)
Save As
Hierarchy–Descend Edit
Hierarchy–Descend Read
Hierarchy–Edit In Place
Hierarchy–Show Scope
Hierarchy–Return
Hierarchy–Return To Top
Create Cellview
New
Open
Discard Edits
Make Read Only
Make Editable
Probe–Add Net
Plot
x
g
^g
58
^f
EDIT
Undo
Redo
Stretch
Copy
Move
Delete
Rotate
Properties–Objects
Properties–Cellviews
Reset Invisible Labels
Select–Filter
Search
Origin
OPTIONS
Editor
Display
Select Filter
Save Defaults
Load Defaults
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Quick Reference Bindkey Chart — Mouse Buttons
Left Mouse Button – Select and Deselect
Click
Select Point
Double Click
Extend Select
Shift 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
EF (Enter Function) bindkeys used
within an active command.
*Direct Edit applies only when over object.
Middle Mouse Button – Pop-Up Menus
Click
Pop-Up Menus
Click (EF)
Pop-Up Menus
Double Click (EF)
Toggle Options Form
Right Mouse Button – Repeat, Zoom, Options
Click
Repeat Last Command
Drawthrough
Zoom In
Shift Drawthrough Zoom Out
(EF)
Command Options
*Command-specific bindings
October 2002
59
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Quick Reference Bindkey Chart — General Bindkeys
Z
^v
←
→
↑
Previous View
Go To CIW
Pan Down
Pan Left
Pan Right
Pan Up
F3
F4
Toggle Options
Form
Toggle Partial Selection
r
R
^r
Rotate (EF)
Sideways (EF)
Upside Down (EF)
Del
Esc
F1
Help
Undo Point (EF), Delete
Stop Command Iteration
Help
Help
VERILOG HDL or VHDL
Check and Save
^s
Save As
Search
Open
Print
^e
Return
Return To Top
Close Window
↑
You can customize bindkey settings.
Selecting Objects
This section describes the following topics:
■
Dynamic Highlighting on page 61
■
Using the Mouse to Select Objects on page 61
■
Extending the Selection Area of a Net on page 62
■
Selecting One Object on page 63
■
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 67
■
Selecting an Instance and Its Associated Wire Segments on page 67
■
Deselecting Objects on page 68
October 2002
60
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Dynamic Highlighting
By default, the software highlights objects automatically when you move your cursor over the
object. 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. Also, when a Cadence® SKILL language
enterfunction is executed, the dynamic highlighting of the objects in the schematic window is
turned off.
Using the Mouse to Select Objects
Left Mouse Button
To select or deselect a command from a menu
To select options on a form
To select objects in a cellview
To draw objects
October 2002
61
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
To move, stretch, and shrink a schematic window
To bring a schematic window to the foreground
To select a windowing system command
Middle Mouse Button
To pop up the object-sensitive pop-up menus
To pop up options forms (double-click)
Right Mouse Button
To repeat the last command
To use command-specific bindings, such as rotate
The following table summarizes how you can use your mouse to manipulate objects in a
design window:
Action
Result
Click once on an object
Selects the object under the pointer and deselects all other
objects.
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 selects its
wire segments.
Click, hold, and drag
Selects objects in the box. These objects become the selected
set. Deselects objects outside the box.
Shift-click
Adds an object to the selected set.
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 extend
the 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
October 2002
62
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
■
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 mouse
button.
Dynamic highlighting
2. Click the mouse button.
The selected object is highlighted.
Highlighted object
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 to
the 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 to
add to the selected set
October 2002
63
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Example 1
■
Hold down the Shift key and click on each object you want to add to the set.
Click on an object.
The object becomes highlighted.
✘
Shift–click on a second object.
✘
The object also becomes highlighted.
Both objects are now highlighted.
Example 2
■
Hold down the left mouse button while you drag a box completely around all the objects
you want to select.
Click and
hold while
dragging.
✘
Release.
All the objects are now highlighted
October 2002
64
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Example 3
■
Click on the first object and then hold down the Shift key and the left mouse button and
drag a box completely around the objects you want to add to a selected set.
Shift, click, and
drawthrough.
Release.
The first and subsequent objects are now highlighted
Selecting Parts of Objects
Selecting a part of an object is important when you want to stretch only that part.
Edge of an object
Vertex of an object
Wire or line segment endpoint
You can select parts of schematic wires, note shapes, symbol lines, and symbol devices.
Selecting Wires
Wire 4
Wire 2
Wire 3
Wire 1
October 2002
65
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
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.
Selecting a Wire Name and Its Associated Wire Segments
Click on wire name.
WireName
Double-click on the highlighted
wire name to select its
corresponding wire.
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.
October 2002
66
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Selecting a Pin and Its Associated Wire Segments
First click selects pin.
First double-click adds a wire
segment to the selection.
Second double-click adds the entire connected network to the
selection.
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.
This extends the selection area to all physically connected wire segments.
Selecting an Instance and Its Associated Wire Segments
First click selects instance.
First double-click selects all wire
segments up to the first branch.
Second double-click selects all
wire segments.
To select an instance and its associated wire segments, do the following:
1. Click on an instance to select it.
October 2002
67
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
2. Double-click on the selected instance.
This adds all single wire segments that are connected to the instance up to the first
branch to the selection.
3. Double-click again on the instance.
This extends the selection area to all physically connected wire segments.
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 design
window:
Action
Result
Click once in an open
area
Deselects all objects if not within a command. If in a modal
(repeating) command, use Control-d.
Control-click
Deselects the object under the pointer.
To deselect all objects, click in an open area of your design.
✘
Click.
Before
After
To deselect one object and select another, click on the second object.
Click.
✘
Before
October 2002
After
68
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
To deselect only one object from a selected set, hold down the Control key and click on the
object you want to deselect.
Hold Control and
click.
✘
✘
Before
After
To deselect more than one object from the selected set, hold down both the Control key
and the left mouse button while dragging a box around the objects you want to deselect.
Hold Control, click, and
drawthrough.
Release.
Working with Windows
A variety of window commands is available to help you work quickly.
■
Zooming on page 70
■
Panning on page 72
■
Redrawing a Window on page 73
■
Viewing the Same Cell in Two Windows on page 73
■
Saving View Area Settings in Memory on page 73
■
Restoring View Area Settings on page 74
October 2002
69
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Zooming
Zooming is helpful as you add and edit objects. For example, you can view objects in two
windows 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.
Before Zoom In
After Zoom In
Selecting Zoom In area
2nd click
✘
A
B
C
✘
I2
Y
nand3
1st click
Zooming In Automatically
To zoom in automatically by 2 (decrease the display area by a factor of 2), do the following:
➤
Choose Window – Zoom – Zoom In By 2.
I2
A
B
C
Before Zoom In By 2
October 2002
Y
nand3
After Zoom In By 2
70
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
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.
A
B
C
I2
Y
nand3
Before Zoom Out By 2
After 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 the
following:
➤
Choose Window – Fit.
I2
A
B
Before Fit
October 2002
Y
nand
After Fit
71
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Panning
Panning lets you reposition your design within the editor window, which is helpful when you
add 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, (the
reference point).
A
B
C
I2
A
B
C
Y
nand3
Reference
point
I
n
Center of
screen
Before Pan
After Pan
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:
October 2002
72
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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 pan
settings simultaneously. This feature lets you work in one area of the cellview and still have a
reference 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 window
affects 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.
Saving View Area Settings in Memory
You can temporarily store your current viewing area. This procedure is useful when you want
to 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.
October 2002
73
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
The Save Window form appears.
Save Window
saveView2
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.
The Restore View form appears, listing the names you assigned with the Window –
Utilities – Save View command.
Restore View
2. Click once on the name.
3. Click OK.
The previously saved viewing area appears.
October 2002
74
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
Using the Library Browser
You can use the Library Browser to view and select the contents of the libraries you specify
in your cds.lib file. As an alternative, you can use the Component Browser.
Accessing and Using the Library Browser
You can use the Library Browser
■
To view the contents of the libraries specified in your cds.lib file
■
To initialize the Library, Cell, and View fields on certain forms (these forms have a
Browse button)
You can access the Library Browser by clicking on the Browse button when it appears on a
form, such as the Open File form or the Add Instance form. The browser type option must be
set to Library Browser (the default).
Changing the Browser Type Option
To set the browser type option, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
October 2002
75
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
2. In the Add Instance Browser Type option, click library or component.
3. Click OK.
Using the Library Browser to Initialize Form Fields
To automatically fill in the fields of a form after you click on the Browse button, 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 toggle
button.
3. Click on a cell name in the Cell list box.
4. Click on a view name in the View list box.
October 2002
76
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
As you click on the names in the Library Browser, the corresponding form fields are
initialized 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.
October 2002
77
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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 you
specify 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 – Instance
command, and only after you change the default setting on the Editor Options form. By
default, the browser 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:
October 2002
78
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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.
October 2002
79
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
The Component Browser form appears.
The form on the left shows the top-level categories for the sample library. The form on the
right 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 the
Add Instance form first when you choose Add – Instance, do the following:
1. From the Component Browser, choose Commands – Preferences.
October 2002
80
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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.
October 2002
81
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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 list
of 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 all
library components.
October 2002
82
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting 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 first
character in the set is ^, it matches a character not in the set. Specify an
inclusive 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 in
the pattern, is treated as an ordinary character.
*
When used alone, lists all components. When used as the last character in
a pattern, matches zero or more occurrences of a pattern. For example, to
list all components beginning with the letter c, use the filter c*.
+
When used as the last character in a pattern, matches one or more
occurrences 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 regular
expression.
\<...\>
Restricts the pattern matching to the beginning and/or end of a word.
rs
A composite regular expression. Matches the longest match of r followed
by a match for s.
^
At the beginning of a filter string, matches the beginning of a pattern. Used
elsewhere in the pattern, is treated as an ordinary character.
October 2002
83
Product Version 5.0
Virtuoso Schematic Composer User Guide
Getting Started
October 2002
84
Product Version 5.0
Virtuoso Schematic Composer User Guide
2
Understanding Connectivity and Naming
Conventions
Connectivity is the way in which components and pins are linked together in a nonambiguous
manner. The connectivity in a schematic is represented by wires linking the component pins
to other component pins. Connectivity can also be represented by pins of the common name
(connection by name). The connectivity of a cellview is created by either the Design – Check
and Save command or the Check – 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 105
■
Pin Connections and Pin Naming Conventions on page 107
■
Patchcord Connections and Patchcord Naming Conventions on page 111
■
Inherited Connections on page 114
■
Summary of Naming Conventions on page 122
October 2002
85
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
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 implement
physical connections. Terminals and signals implement logical connections. Pins and
terminals indicate which signals in a cellview are imported from or exported to other levels of
a design hierarchy.
A complete schematic design provides input data for a variety of design tools, such as
simulation and layout. It is essential, therefore, that you establish connectivity in your
schematic designs.
The following diagram shows connectivity and naming conventions.
H
A
B
reset
_
Q
RESET
C
3
clk
INPUT
wire1
CLK
I
out<3:0>
J
out<2>
BUFF
K
a0,a1,a2,a3
DATA
Q
ADDER
A<0:3>
D
L
E
OUTPUT
[@ground:%:gnd!]
F
gnd!
M
G
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
October 2002
86
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Key
Connectivity / Name
Key
Connectivity / Name
E
Wire-to-wire connection
L
Wire-to-iterated instance connection
F
Pin-to-pin connection
M
Net expression label
G
Global net name
Instance Naming Conventions
You can name instances using any one of the following naming conventions:
■
System-Generated Names on page 88
■
User-Defined Names on page 88
■
Iterated Names on page 89
October 2002
87
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
System-Generated Names
If you do not name the instance explicitly, the system assigns default instance names by using
I plus a number. The editor increases incrementally the instance number starting from 0.
I0
I1
The advantage of system-generated instance names is that you never have to type a name
on 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 your
design. 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 name
an instance when you create it using the Add Instance form. If you do not name the instance
explicitly, the system generates a name for you.
October 2002
88
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
On the Add Instance form, separate each instance name by a space; for example, ABC BCD.
ABC
BCD
Iterated Names
Use the iterative naming method to name many instances created from only one visual
instance in your design.
This method is particularly useful in bus-type or dataflow architectures that have identical
structures 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 of
the colon indicate the numbered range (0 through 3), which names instances A<0>, A<1>,
A<2>, and A<3>.
A
B
C
A<0:3>
Y
nand3
Iterated instances save space. The instances in the following two figures represent identical
circuitry, but the second figure is easier and faster to create.
October 2002
89
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
The first schematic shows four IOlatch instances in a design: I0, I1, I2, I3. Compare
this with the next schematic.
I3
October 2002
I4
I5
90
I6
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
This schematic shows one IOlatch iterated four times: I<0:3>. Compare this with the
previous schematic.
I<0:3>
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 93
■
Wire-by-Name Connections on page 95
■
Wire-to-Iterated Instance Connections on page 95
■
Global Net Name Connections on page 98
October 2002
91
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Wire-to-Wire Connections
If you draw two intersecting manhattan wires in a T configuration, the editor automatically
connects the wires.
Wire 1
Wire 2
If you draw two manhattan wires that cross, you must explicitly add a solder dot to make the
connection at the crossover.
Wire 2
Wire 2
Wire 1
Wire 1
Before
You must add a solder
dot if you want the
wires to connect.
After
If you draw two manhattan wires in an L configuration, or if you draw an angled wire and a
manhattan wire that intersect at their end points, the wires are connected, but the editor does
not add a solder dot.
Wire 1
Wire 2
Wire 1
Wire 2
If you connect a narrow wire to a wide wire—for example, as in a bus—you must intersect the
centerline of the wide wire.
Unconnected wire at the edge of
the wire
Wide wire
Connected wire at the center of
the wire
October 2002
92
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
If you want to connect to an angled wire, you must connect to one of its endpoints. The editor
automatically adds a solder dot after you add the last wire in each of these examples.
Wire 3
Wire 1
Wire 1
Wire 2
Wire 2
Note: Make connections for all angled wide wires, narrow wires, and flight lines at their
endpoints.
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.
■
Pin
Pin
Wire
Angled
wire
Draw the wire so it ends on the border or perimeter of a pin.
Pin
Pin
Wire
Wire
■
Draw the wire so it passes through a pin.
Pin
Wire
October 2002
93
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
■
You cannot make a wire-to-pin connection by drawing an angled wire that passes
through a pin.
Floating pin
Angled
wire
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 appears
over the pin to show you the nearest object with which you can establish electrical
connectivity.
■
You can zoom in on your design to see if you are making an accurate connection.
October 2002
94
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding 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 group
of wires exist that carry the signal.
Instance pin
connections
net_name
Instance pin
connections
net_name
net_name
To connect instance pins, assign the same name to each wire. The wires do not have to be
physically connected. If you use a local net name, you can connect by name on the same
page. If you use a global net name, you can connect by name across all levels of the
hierarchy.
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
Before the editor lets you connect a wire to an iterated instance, it checks to see that the net
width equals one of the following:
■
Connection Width on page 96
October 2002
95
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
■
Pin Width on page 96
■
1 on page 97
If the connection cannot be made, the editor generates an error message when you check
your design.
Note: The net width has no limit.
Connection Width
If the connection width is equal to the net width, the editor allows the connection without
modifying the design. To determine whether net width equals connection width, the editor
compares the net width to a computed connection width. The connection width is computed
as follows:
instanceIterationWidth * instancePinWidth
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.
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>
Pin Width
If the net width is equal to the pin width, the editor adds a net prefix repeat operator to the net
width before it allows the connection. If the net width equals the pin width but does not equal
October 2002
96
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
the connection width, the editor computes a net prefix repeat operator that equals the
instance iterations.
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, and
instance I<0:2> is 3 bits wide. The computed connection
width is 9.
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 the
connection.
<*3>(N<0:2>)
P<0:2>
N<0> is
N<1> is
N<2> is
N<0> is
. . .
connected
connected
connected
connected
to
to
to
to
P<0>
P<1>
P<2>
P<0>
of
of
of
of
I<0>
I<0>
I<0>
I<1>
I<0:2>
1
If the net width is equal to 1, the editor adds a net prefix repeat operator to the net width before
it allows the connection. If the connection width is 1, the editor computes a net prefix repeat
operator that equals the computed connection width.
N
P<0:2>
I<0:2>
October 2002
The net width equals 1, the pin width equals 3, and the instance
width equals 3. The computed width is 9.
97
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
The net width does not equal either the connection width (9) or the pin width (3), but it does
equal 1.
<*9>N
P<0:2>
The editor generates a net prefix repeat operator, <*9>, for the net
in order to allow the connection.
I<0:2>
Global Net Name Connections
Global nets make connections across the design hierarchy without using pins and wires to
explicitly pass the signal throughout the hierarchy. Global nets are used primarily for power
and ground connections.
To create a global net, add an exclamation mark to the net name.
gnd!
To make a bus global, add an exclamation mark to the base name of the bus.
A!<0:3>
Another way to make a net global is to connect it to a pin or instance pin that is global. The
net inherits the name of the global pin or instance pin. The basic library has various global
symbols you can use to indicate global nets.
gnd!
vdd!
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
October 2002
98
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding 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 100
■
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
October 2002
99
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
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 that
contains the signals. You can use one of the many different configurations of wire-to-wire or
pin-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 on
whether you tap from a bus or from a bundle.
You tap bits of a bus or bundle when you connect multiple-bit wires to a bus or bundle and
name the wires accordingly. For example, in the following illustration, all multiple-bit wires use
signal S, signal R, or bus Q.
Bundle
S,R,Q<0:15>
Collinear taps contain a
common wire.
Q<5:3>
S,R
Q<0:7>
S
Q<0>
A bundle is a wire or pin name consisting of simple names separated by a comma; for
example, 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 the
same base name), you must specify the name of the signals in the wire name to indicate
numbered bits.
In the following example, bus Q<0:7> taps eight bits from bus Q<0:15>, which is part of a
bundle. In this case, the tap name contains a base name with a vector expression. Wire S,R
October 2002
100
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
taps two signals with different names from the bundle. In this case, the wire name is a list of
names separated by commas.
S,R,Q<0:15>
Q<0:7>
S,R
Q<0>
The following example shows the same multiple bits of a bundle with a pin and a collinear
intersection or tap.
Bundle
S,R,Q<0:15>
Collinear intersection or tap
Q<5:3>
S,R
Q<0:7>
Five subsets of the
bundle
S
Q<0>
Tapping Multiple Bits of a Bus
A wire named with a vector expression can intersect another wire named with a vector
expression, 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 of
instances connected to tap wires inherit the name of the tapped signal. This process is called
October 2002
101
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
“cascading” bus taps. If a tap wire carries more than one bit from the bus, the editor can tap
the wire.
For example, to tap signal DATA<0> from bus DATA<0:3>, specify <0> or 0.
DATA<0:3>
<0>
This is
DATA<0>.
<1>
This is
DATA<1>.
You can create a geometric configuration when a tap wire carries more than one bit from the
bus. 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.
Wire named using a vector expression
DATA<0:3>
2-bit taps carry two signals, <2>
and <3>
Wire named using a
2-bit tap
<0:1>
<2:3>
Wire named with tap
signal DATA<0>
Wire named with tap signal
DATA<2>
<0>
<2>
Wire named with tap signal
DATA<3>
Wire named with tap
signal DATA<1>
<1>
<3>
As shown in the above example, if you intersect a bus wire named DATA<0:7> with a tap wire
named <0:3>, you can intersect the tap wire with a second tap wire named <0:1>. The
name of the first tap wire becomes DATA<0:3>. The name of the second tap wire becomes
DATA<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 is
a tap of a larger bus. Taps can cascade down any number of steps.
October 2002
102
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Tapping Wire Intersections by Name
The following illustration summarizes how to specify bus tap intersections.
<1>
The <1> wire
represents a
T-tap
intersection.
Wire (wide) is
the bus wire for
all intersections.
Wire (narrow) taps the
single bit called
DATA<3> from the bus.
DATA<0:3>
<3>
<0>
Collinear intersections occur where
wide and narrow
419wires meet.
<2>
The <0> wire
represents an L-tap
intersection and taps
the single bit called
DATA<0> from the
bus.
The <2> wire
represents a Ttap intersection.
Any other wires or pins of instances connected to tap wires inherit the name of the tapped
signal. This process is called “cascading” bus taps. Any narrow or wide wire connected to the
wire named <3> is connected to the DATA<3> bit of the bus. Any wire connected to the wire
named <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 tap
wire can exceed the total number of bits in the bus. To make this happen, use one of the
repeat operators in the tap expression. For example, you can intersect a 4-bit bus wire named
A<0:3> with an 8-bit tap wire named <0:1*2,(0:1)*2>. The resulting name of the tap wire
is 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 orders
bits in a tap as they appear in the tap name.
October 2002
103
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
For example, you can tap the four bits of a bus named DATA<0:3> in order from DATA<0> to
DATA<3>. However, a tap wire named DATA<3:0> that intersects with bus DATA<0:3> taps
the bits in reverse order, as shown in the following figure.
DATA<0:3>
0:3
This is
DATA<0:3>.
3:0
This is
DATA<3:0>.
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 the
named nets that intersect with the unnamed net. Named nets are those nets whose
names 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 unique
members. For example, a net named A,B,C has three unique members, but a net
named A,A has only one unique member.
■
At all wire-wire and wire-pin intersections, the editor verifies that all names present at the
intersection 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 segments
are intersecting and unnamed
■
This unnamed net is then named A,B,C because it takes the names of all the
intersecting named nets. The name A,B,C is the one with the most unique member
names; that is, three.
October 2002
104
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
■
The editor then verifies that all intersecting named nets (B,C,C,B and A,A,B,B) are
taps of A,B,C.
A,B,C
A,A,B,B
1
2
3
C,B
B,C
4
5
6
7
Multiple-Bit Wire Naming Conventions
You can connect multiple-bit wires in your design using any one of the following naming
conventions:
■
Using Vector Expressions in Multiple-Bit Wire Names on page 105
■
Using Vector Expressions in Multiple Signals on page 106
■
Evaluating Vector Expressions in Multiple-Bit Wire Names on page 106
■
Using Prefix Repeat Operators in Multiple-Bit Wire Names on page 106
■
Using Suffix Repeat Operators in Multiple-Bit Wire Names on page 107
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 improve
readability 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 base
name. 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 individual
suffixes (<0>, <1>, <2>, and <3>), assign the following names: DATA<0>, DATA<1>,
DATA<2>, and DATA<3>.
October 2002
105
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Using Vector Expressions in Multiple Signals
To name a wire that contains multiple signals with the same base name, specify the base
name followed by a vector expression. The vector expression can be
■
A list of the individual bit numbers separated by commas and enclosed with angle
brackets.
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 increment
value. 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
editor uses 1.
The ordering of the bits in a bus is important when you are connecting the bus to a pin that
has 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> and
DATA<2>.
■
The vector expression DATA<1:3:2> names a 2-bit bus containing DATA<1> and
DATA<3>.
■
The vector expressions DATA<0:3> and DATA<0:3:1> are equivalent names that
generate 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 in
descending 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 improve
readability in your designs by shortening multiple-bit wire names.
October 2002
106
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
You can repeat a single signal name, a group of signal names, or a vector term any number
of times in the wire name by placing a prefix repeat operator <*n> in front of the name, where
n 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 following
equivalent wire names both name the same four-bit wire:
<*2>A,B,C
A,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),C
A,B,A,B,C
■
Use combinations of the prefix repeat operator <*n> and parentheses to nest
parenthetical expressions to any required depth. The editor expands nested expressions
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 improve
readability 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 integer
that 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 before
expanding the vector term. For example, the following three names all describe the same
six-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 bit
names. In this case, the vector term is expanded before the bits are repeated. The
following 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 for
reserved characters.
October 2002
107
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
You can name pins in a design
■
To declare which nets in the schematic are connected to a higher level of the design
hierarchy
■
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 109
■
Offsheet Pin Names on page 109
■
Bus Pin Names on page 109
■
Pin-to-Pin Connections on page 110
■
Tapping Pins on page 110
October 2002
108
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Hierarchical Pin Names
If you are designing a multisheet schematic, your sheets contain hierarchical pins and
offsheet pins.
Hierarchical pins are pins that also appear on the symbol of the design. The hierarchical pins
from each sheet become the hierarchical pins of the multisheet.
IO<0:7>
A<0:7>
OUT2<0:7>
Hierarchical pin
Offsheet pin
Offsheet Pin Names
Offsheet pins connect signals across the sheets of a multisheet schematic only. Use the same
name 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 more
than one hierarchical pin with the same name in a multisheet design.
IO<0:7>
A<0:7>
OUT2<0:7>
Hierarchical pin
Offsheet pin
Bus Pin Names
Use a base name with a vector expression. For example, IN<16:10:2> expands to these
four pins: IN<16>, IN<14>, IN<12>, and IN<10>.
October 2002
109
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Pin-to-Pin Connections
A direct connection between two instance pins without an intermediate wire is called a pin-topin connection. There are four ways to make pin-to-pin connections:
Pin 1
Pins overlap partially.
Pin 2
Pins overlap entirely.
Pin 1
Pin 2
Pin is contained within
a pin.
Pin 1
Pin 2
Pins touch each other.
Pin 1
Pin 2
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 name
to 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 vector
expression to name a wire that intersects with the pin.
October 2002
110
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
The following figure shows how to tap pins in a design.
Symbol pins
I1<0:3>
<7:4>
A
Y
I4<0:3>
INPUT
<7:0>
A
inv
Y
OUTPUT
<0:3>
B
nand2
<3:0>
Hierarchical pin
Wire named
OUTPUT<0:3>
Hierarchical pin
In the example above, the wire named <7:4> is a tap of the schematic pin named
INPUT<7:0> and connects a four-bit bus called INPUT<7:4> to the input of the inverter (an
iterated instance).
The wire named <3:0> is also a tap of the INPUT<7:0> pin and connects a four-bit bus
called 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 same
name as the pin. For example, the wire that connects the output of the NAND2 gate to the
OUTPUT<0:3> pin is called OUTPUT<0:3>.
Patchcord Connections and Patchcord Naming
Conventions
The schPatchExpr connection expression (value) for patchcords has the following form:
srcVectorExpression = dstVectorExpression
0=0
A
October 2002
B
111
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
where srcVectorExpression is the source and dstVectorExpression is the
destination.
Naming Single and Multiple Bits Using Patchcords
Naming conventions for patchcords using vector expressions have exactly the same syntax
as the vector expressions for wires with multiple bits. The number of bits in
srcVectorExpression must equal the number of bits in dstVectorExpression.
In the following example, nets A and B are aliased together. Logically, each object that A is
connected to is also connected to B, and the patchcord connects the first bit named in
srcVectorExpression to the first bit named in dstVectorExpression.
0=0
A
B
A
B
In the following example, signal A is aliased to CNTR<2>, signal B is aliased to CNTR<1>, and
signal C is aliased to CNTR<0>.
0:2 = 0:2
CNTR<2:0>
A,B,C
A
CNTR<2>
B
CNTR<1>
C
CNTR<0>
October 2002
112
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding 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 aliased
to B<1>, and A<3> is aliased to B<0>.
0:3 = 3:0
B<0:3>
A<0:3>
B<0>
B<1>
A<0>
A<1>
A<2>
A<3>
B<2>
B<3>
Naming Multiple Nets Using Patchcords
The following figure shows how to use patchcords to merge two buses.
0:7 = 0:7
src
dst
DATA<7:0>
( SYSBUS<15:8> )
SYSBUS<15:0>
8:15 = 0:7
src
dst
ADDR<7:0>
( SYSBUS<7:0> )
The upper patchcord connects the eight-bit bus SYSBUS<15:8> to the eight-bit bus
DATA<7:0>. The lower patchcord connects the eight-bit bus SYSBUS<7:0> to the eight-bit
bus 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 pin of the patchcord. Therefore, according to the connection expression, bits 8 through
15 of bus SYSBUS<15:0> (corresponding to the bits named SYSBUS<7:0>) are connected
to bit 0 through 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 pin
in the order they are attached to the src pin, omit the src vector expression and the equal
sign ( = ) from the connection expression.
October 2002
113
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
For example, to connect two single-bit nets called NET1 and NET2 with a patchcord, a
connection expression of 0 is sufficient.
Note: Only one of the nets can be connected to a schematic pin (I/O pin). Also, in the
schematic editor, you cannot connect an input pin to an output pin even though you use a
patchcord in the middle.
Inherited Connections
If you have a need to change the value of a global signal in your design, you can do so without
recreating a complete hierarchical branch. You can build one library containing components
potentially requiring different power and ground connections in different parts of a design.
This is referred to as an inherited connection.
Inherited connections let you selectively override global signals in designs originated in the
Virtuoso® Schematic Composer. To have this override information available to other
Cadence® tools across the design flow, the override information is communicated to the
software by means of net expressions and a class of properties called netSet properties.
Inherited connections is an extension to the connectivity model that allows you to create
special 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 many tools throughout the IC design flow.
To learn about using inherited connections and net expressions with various Cadence tools
in the 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 117
■
The Syntax of an Inherited Net Expression on page 118
■
How Net Expressions Evaluate on page 118
■
Sample Net Expression Library on page 121
■
Inherited Connections Restrictions on page 121
October 2002
114
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
■
Analyzing Net Expression Property Names and Evaluated Names on page 122
October 2002
115
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding 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 explanation:
High-Level Schematic
vdd!
3V!
analogVdd
power=3V!
power=analogVdd
I1
I2
I3
cellA
cellB
cellB
Wire segments
and wire names
Property names
Instances
I4
I5
cellA
cellB
Lower-Level Schematic
Inverter Symbol
Inverter Schematic
p
vdd_inherit
[@instanceName]
A
Y
A
a
vdd_inherit ->
[@power:%:vdd!]
Y
inv
gnd_inherit
gnd_inherit ->
[@gnd:%:gnd!]
The high-level schematic shows five instances: I1, I2, I3, I4, and I5. Each instance
represents a portion of the design, each of which eventually references the inverter shown in
the lower-level schematic.
October 2002
116
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding 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 pmos
transistors 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 are
to use 3V! as the power supply, and the inverters in instance I3 of cellC are to use
analogVdd.
To selectively override the default global signal vdd!, create a netSet property on instance
I2 named power with the value 3V! and a netSet property on instance I3 named power
with the value analogVdd. Notice that the inverter pmos transistors below instances I1, I4,
and I5 are still connected to vdd!.
In other words, you place a netSet property on an instance representing the branch of
hierarchy where it is to be applied. You can create the netSet property on any instances at
any level above the cellviews with net expressions. For example, if a large hierarchical design
has seven levels of hierarchy, you can place a netSet property power = 3V! on an I2
instance in the top-level schematic. This affects all the logic below instance I2 all the way to
the bottom in all cellviews that contain a net expression, such as [@power:%:vdd!]. All
cellviews that contain this net expression would use 3V! instead of vdd! for that branch of
the 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.
Defining Inherited Connections
In the schematic composer, you define an inherited connection by adding a net expression
label to either a wire or a pin. A net expression defines the default global signal name for the
connection and the name of a property that can be used to override that default global signal
name.
October 2002
117
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
The Syntax of an Inherited Net Expression
The syntax of an inherited net expression is a subset of that of an NLP expression. The four
components are the search scope, search property name, format instruction, and default
global signal name.
Example Net Expression
[@power:%:vdd!]*
Search scope
Default global signal name
Search property name
Format instruction
Example Net Expression Labels
[@gnd:%:gnd!]*
[@vdd:%:vdd!]*
Schematic wire with a net
expression label
Ground supply symbol containing a
symbol pin with a net expression
label
The asterisk ( * ) after a global name shows that this is not a regular wire name but a name
that is an overridable net expression. The default global signal name specifies what the wire
or pin is connected to by default.
Note: The display of the net expression label has several options.
How Net Expressions Evaluate
The search scope is limited to the @ search, which requires an instance lineage. The search
travels up the instance hierarchy looking for an instance property of the given search property
name until either an override is found or the instance lineage is exhausted. The default signal
name must be global in nature and serves two important purposes: it names the net locally
October 2002
118
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
and is the inherited signal when no override is found during the search. The format instruction
is retained here in compliance with the syntax of an NLP expression.
The lookup property is a netSet type and is used only for an inherited connection. The
netSet property value can be one of the two possibilities: an override signal name or an
overriding, redirecting net expression. The former is the inherited signal name while the latter
case redirects the search to a new property name and may introduce a new default signal
name to replace the one in the original net expression in the hierarchy below it. The search
for the new lookup property starts with the current instance where the netSet property with
the override inherited net expression is found.
Net expressions are evaluated for each hierarchical path. The system uses the property
name specified in the net expression label to search upward from the cellview containing the
net expression label (one instance at a time) to the top of the design. The first instance that
is found that has a matching property name terminates the search. If the property is of type
netSet and is a legal net name, its value is used as the connecting net rather than the default
net name specified in the expression.
Start at cellview
containing net
expression
Is there a
cellview
above?
No
Use default net name
specified in the net
expression
Yes
No
Is there a
netSet property on
the instance of this path?
Yes
Use value of the
netSet property
The netSet property can be placed on any instance and it will affect all net expression labels
with matching property names at all levels below that instance unless overridden by another
netSet property on a lower-level instance.
You can create an inherited connection in a schematic by placing an instance of a symbol
where one of the symbol pins has a net expression label. When you run the checker program
October 2002
119
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
on the schematic, the net expression label from the symbol pin is propagated onto the net
within the schematic.
Inverter Schematic
p
gnd_inherit Symbol
vdd_inherit
[@gnd:%:gnd!]
A
Y
a
gnd_inherit
Inverter Schematic
[@vdd:%vdd!]
p
A
Net expression labels can also be placed on
wires to achieve the same effect.
a
Y
[@gnd:%:gnd!]
The basic library contains sample parameterized power and ground supply symbols called
vcc_inherit, vdd_inherit, gnd_inherit, and vss_inherit.
Inherited Supply Symbol
Net Expression Label
vcc_inherit
[@vcc:%:vcc!]
vdd_inherit
[@vdd:%:vdd!]
gnd_inherit
[@gnd:%:gnd!]
vss_inherit
[@vss:%:vss!]
October 2002
120
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
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
The following design shows the top-level schematic cellview.
inhConnFlow / top_easy / schematic
3.3V!
a_gnd!
Inherited Connections Restrictions
You should be aware of some restrictions when using net expression labels and netSet
properties:
■
The default name in a net expression label must denote a scalar, global name. For
example, 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.
Note: The signal name used in a netSet property must be the name of an existing net
in that cellview.
■
Within one cellview, you cannot use two different net expression labels for the same
default global signal. Therefore, using both [@power:%:vdd!] and [@vdd:%:vdd!]
in the same cellview is not allowed.
October 2002
121
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Analyzing Net Expression Property Names and Evaluated Names
A designer who uses inherited connections during the many phases of the design process
can take advantage of the analyzing commands. You can find the net expression property
names that are available for setting on the selected instances as well as investigate the
evaluated names produced by all net expressions below the selected instances.
The analysis commands might be useful for the following tasks:
■
Block authoring
■
Module instantiation
■
Chip assembly
■
Debugging
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 125
■
Expanded Names for Instances on page 126
October 2002
122
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Table 2-1 Reserved Characters for Wire, Net, and Pin Names
Character
Symbol
comma
,
angle brackets
< >
parentheses
( )
Description
Example
Separates the elements of a wire name A,B<0:1>,C
Enclose expressions for multiple-bit
wires; used for iterators (prefix repeat
operator) and bus taps
A<0:3>,
<*2>B,<12>
Enclose related multiple-bit wires within A<(0:2)*2>
an expression
asterisk
*
Is used in the graphic screen to
highlight net expression labels is not
part of the net expression
A<(0:2)*2>
colon
:
Separates a range of numbers within
an 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 numbers
expressed by a starting and ending
number
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
*
October 2002
123
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Table 2-4 Illegal Characters in Instance Names
colon
:
forward slash
/
Table 2-5 Syntax Conventions for Wire, Net, and Pin Names
Name
Description
baseName
A string of printable ASCII characters that does not include reserved
characters.
NET, R, C
nameTerm
A baseName optionally followed by a vector expression enclosed in angle
brackets.
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 repeat
operator, 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 }
vectTerm
A single number or a range of numbers. The range can be expressed by a
starting, ending, and increment number, separated by colons.
A vectTerm can also be a vector expression enclosed in parentheses. In
this case, the innermost term is expanded first, and then the repeat
operator 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 vectTerm
is called a suffix repeat operator and indicates n repetitions of each bit of
the 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 }
October 2002
124
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
Table 2-6 Syntax Conventions for Instances
Name
Description
baseName
A string of printable ASCII characters that does not include reserved
characters.
I0, R, C
instName
Scalar and iterated instance names must be unique. A scalar name cannot
imply more than one member. An iterated instance name must imply the
same number of members as iterations.
instName ::= baseName [ < n [ : n ] > ]
where n is a positive integer less than 16,375.
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>
Note: You can use up to 1,024 characters for a name, but the editor ignores any blank or tab
characters found before or after a name.
October 2002
125
Product Version 5.0
Virtuoso Schematic Composer User Guide
Understanding Connectivity and Naming Conventions
To determine the nth member name, use a zero-based counting method to find the nth
element 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>
■
Member two in this case is called b<2>
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>
Note: You can use up to 1,024 characters for a name, but the editor ignores any blank or tab
characters found before or after a name.
October 2002
126
Product Version 5.0
Virtuoso Schematic Composer User Guide
3
Creating Schematics
This chapter provides information about creating a schematic.
■
Getting Started with Schematics on page 128
■
Adding Instances on page 128
■
Adding Blocks on page 141
■
Adding Pins on page 151
■
Adding Wires on page 154
■
Adding Wire Names on page 159
■
Adding Net Expression Labels to Create an Inherited Connection on page 167
■
Adding netSet Properties to Create an Inherited Connection on page 172
■
Analyzing Net Expression Property Names and Evaluated Names on page 177
■
Adding Solder Dots on page 184
■
Adding Notes on page 187
■
Adding Patchcords on page 191
■
Adding Probes on page 194
October 2002
127
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Getting Started with Schematics
One of the best ways to begin a schematic in an empty window is by adding objects in a
certain order, as indicated below:
1. Add instances from your
library, such as this nand3
gate.
2. Add blocks to hold the place
of an undetermined instance,
such as this GATE_REP.
N1
3. Add
schematic pins,
such as this
input pin.
4. Add wires and
wire names to
connect
schematic pins
to instances.
GATE_REP
pin1
N7
N2
N5
N3
N6
N4
wireName
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
October 2002
128
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
■
Adding Instances Using an Iterative Expression on page 136
■
Changing the Default Instance Name Prefix on page 138
■
Editing Instance Masters on page 138
■
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 139
October 2002
129
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
What Is an Instance?
An instance is a database object that represents a master symbol cellview. When you add an
instance to your design, you actually create a reference of the master symbol from a
reference library.
Instance name
A
B
C
I4
nand2
nand3
nand4
nand5
nand6
nor2
Y
nand3
Cell names for other
instance symbol masters
stored in the Cadence
sample library
You can have several instances of the same master symbol cellview in a design, but the
instance name must be different. For example, the nand3 gate is a master symbol stored in
the Cadence® sample library. Each time you add a nand3 gate to your design, you add an
instance 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)
October 2002
130
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
■
By using iterative expressions
One by one. Use this method to place
instances singly.
A
B
C
A<1:8>
Y
nand3
A
B
C
I1
Y
Using an iterative expression. To save
space in your design window when you need
to add several instances of the same type,
you can express multiple unique names with
an iterative expression.
nand3
A
B
C
I2
Y
nand3
By rows and columns (an
array). Use this method to
place instances in an
array.
A
B
C
I1
A
B
C
I3
A
B
C
I5
Y
nand3
Y
nand3
Y
nand3
A
B
C
I2
A
B
C
I4
A
B
C
I6
Y
nand3
Y
nand3
Y
nand3
Adding Instances One by One
The Add – Instance command lets you place multiple copies of a single instance in a
schematic, based on a single lib/cell/view name.
To add instances singly in your design window, do the following:
1. Choose Add – Instance.
October 2002
131
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 to
add.
You can designate the Browse button to open either the Component Browser or the
Library Browser. If the cell you want does not exist, you need to create it using the symbol
editor.
If you do not add instance names in the Names field, the system generates default
instance 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 to
prompt you to add another instance. To stop generating instances, press the Esc key,
press Control-c, or choose another command.
October 2002
132
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 to
add.
If you do not add instance names in the Names field, the system generates default
instance 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.
October 2002
133
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
5. Place the first instance by clicking the mouse.
First click
A
B
C
I1
Y
nand3
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.
A
B
C
I1
A
B
C
I4
A
B
C
I7
A
B
C
I10
Y
nand3
Y
nand3
Y
nand3
Y
nand3
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 second
column.
October 2002
134
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The rest of the instances follow the cursor.
First instance of the second
column
A
B
C
I1
A
B
C
I4
A
B
C
I7
A
B
C
A
B
C
I2
A
B
C
I5
A
B
C
I8
Y
nand3
I10
Y
nand3
A
B
C
Y
nand3
Y
nand3
A
B
C
I3
A
B
C
I6
A
B
C
I9
Y
nand3
I11
Y
nand3
A
B
C
I12
Y
nand3
Y
nand3
Y
nand3
Y
nand3
Y
nand3
Y
nand3
The Add – Instance is modal and continues to prompt you to add another instance. To
stop generating instances, press the Esc key, press Control-c, or choose another
command.
October 2002
135
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Instances Using an Iterative Expression
Instance iteration is a compact way of displaying repeated instances of a symbol in your
schematic. It is particularly useful in bus-type or data-flow architectures that have identical
structures to handle each bit on the bus.
To save space in your design window when you need to add several instances of the same
type, 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.
A
B
C
A<0:3>
Y
nand3
Using iterated instances not only saves space in your design, it makes your design easier to
read.
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.
October 2002
136
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The following schematic shows four instances: I0, I1, I2, and I3. Compare this schematic
with the following schematic showing iterated instances:
I0
I1
I2
I3
The following schematic shows one latch iterated four times: I<0:3>. Compare this
schematic with the previous schematic showing four individual instances.
I<0:3>
October 2002
137
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Changing the Default Instance Name Prefix
Each instance requires a unique name. If you do not specify instance names on the Add
Instance form, the schematic editor generates unique names automatically. The prefix is a
symbol cellview property, not an instance object property.
To change the default instance name prefix from I to a prefix that you designate, do the
following:
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 instNamePrefix property.
You can use more than one character.
5. Click OK.
When you place new instances of this same symbol in the same cellview, 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 Objects Properties Form appears.
To edit a single instance, you edit object properties, not cellview properties. The system
changes all cellviews containing instances of this master.
October 2002
138
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Specifying the View to Use While Placing the Instance
To change instance views (for example, from a nand2 symbol view to a nand2 symbolNeg
view) 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 to
toggle through the symbol views.
The following diagram shows an instance changing views from nand2 symbol to
nand2 symbolNeg.
3. Place the instance.
Changing the View after an Instance Is Already Placed
To change instance views (for example, from a nand2 symbol view to a nand2 symbolNeg
view) after you have added an instance, do the following:
1. Select the instance you want to change.
2. Choose Edit – Alternate View.
Renumbering Instances
If you deleted several instances in your cellview, you might want to renumber the instances
to make the numbers consecutive.
To renumber all the instances in your hierarchy consecutively, do the following:
1. Choose Design – Renumber Instances.
October 2002
139
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Renumber Instances form appears.
Renumber Instances
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 Interpreter
Window (CIW).
2. Do one of the following:
❑
If you want to renumber instances in the your entire hierarchy, change the Scope
cyclic field to hierarchy.
Renumber Instances
October 2002
140
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
❑
If you want to renumber instances in the your entire library, change the Scope cyclic
field to library.
Renumber Instances
3. Click OK.
Adding Blocks
You can use blocks when you design with a top-down methodology. Blocks let you create a
symbol from the context of a higher-level schematic.
Input pin
Output pin
GATE_REP
pin1
pin2
N7
You create a block to represent a lower-level cell. As you develop the logic of your higher-level
schematic, you can add wires to the block, which automatically creates block pins. After you
name 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 Verilog®
representation) for the lower-level block cell.
■
Adding Blocks on page 143
■
Adding Wires and Pins to Blocks on page 145
■
Changing the Block Pin Direction Rule on page 145
■
Changing the Direction or Name of a Single Block Pin on page 147
October 2002
141
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
■
Changing the Names and Directions of Multiple Block Pins on page 148
■
Deleting Block Pins on page 150
■
Disabling Automatic Block Pin Creation on page 150
October 2002
142
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Blocks
Unlike adding multiple copies of a single instance in a schematic based on a single lib/cell/
view name, the Add – Block command lets you create multiple blocks, each with a different
lib/cell/view name.
To add a block, do the following:
1. Choose Add – Block
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) can
be entered for each cell. There is a one-to-one correspondence between the entries in
the Cells and the Names fields. You can specify multiple cell names by using a space
to separate each name. The Cells and Names fields must match in number. If there are
more entries in Cells than 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.
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.
October 2002
143
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
4. In the Pin Name Prefix field, 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 prefix
name; for example, pin1, pin2, pin3, and so forth.
5. Choose a block from the Block Shape cyclic field.
The freeform option lets you create a rectangular block of any size by entering opposite
corners of the rectangle.
mux4
small
medium
mux8
large
alu
freeform
1 by 2
2 by 1
6. Move the pointer into your design.
The block symbol is attached to the pointer unless you chose freeform. You can toggle
the block shape before you place it by pressing the right mouse button until you reach
the 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 of
that block appears in your schematic.
October 2002
144
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Wires and Pins to Blocks
Caution
Do not create a block pin using the Add – Pin command in either the
symbol editor or schematic editor.
For general information, see Adding Narrow or Wide Wires.
When you add a wire that touches the edge of a block, the editor automatically creates a block
pin attached to the wire.
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 creates
a pin where the wire touches the block edge. The pin name is constructed from the pin
name prefix and a unique sequence number. The pin direction depends on the block pin
direction rule.
pinName
blockName
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
October 2002
145
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
■
Any pin created on the top or bottom side of the block becomes an inputOutput pin
InputOutput pin
Input pin
Output pin
GATE_REP
pin1
pin2
N7
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
■
Starting the wire on the edge of the block creates an output pin
Ending the wire on the edge of the block
creates an input pin.
GATE_REP
pin1
N7
pin2
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 edge or order of entry, do the
following:
1. Choose Options – Editor.
October 2002
146
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Editor Options form appears.
2. Select the Block Pin Direction Rule option you want.
3. Click OK.
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.
October 2002
147
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Edit Object Properties form appears.
Edit Object Properties
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.
October 2002
148
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Edit Object Properties form appears.
Edit Object Properties
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.
October 2002
149
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
October 2002
150
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Edit Object Properties
3. In the Show field, turn on the system button.
4. Turn on the FreezePinCreate button.
5. Click OK.
Adding Pins
This section describes the following procedures:
■
Adding Schematic and Offsheet Pins on page 152
■
Showing Pin Connections on page 153
Pins represent the schematic input, output, and inputOutput terminals to which a net
connects in a schematic.
October 2002
151
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
You add pins to establish connectivity between different levels of hierarchy and to connect
different sheets of a multisheet schematic.
Offsheet pin
N6
Pin name
NAND3
Schematic pin
Hierarchical pins (schematic pins) connect signals that span different levels of a hierarchical
design. 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 basic reference
library. 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.
opin
(output pin)
ipin
(input pin)
iopin (inputOutput
pin)
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.
October 2002
152
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 to
name bus pins.
3. Set the Usage cyclic field to schematic for a schematic pin or offsheet to connect the
pin to another sheet in 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.
October 2002
153
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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. When
you draw a wire between a pin and an instance, you create a net.
■
Adding Narrow or Wide Wires on page 155
■
Using Wire Snap and Gravity Options on page 155
■
Using Wire Draw, Width, and Route Options on page 155
■
Using Wire Flight Lines Option on page 156
■
Routing Flight Lines on page 157
■
Manipulating Wires with Only the Mouse on page 158
■
Adding Wires to Schematic Instance Pins using SKILL on page 158
October 2002
154
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Narrow or Wide 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 object
closest to the pointer. The diamond jumps from one connection object to another as you
move 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 wire
endpoint.
❑
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 be
in 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.
October 2002
155
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Wire form appears.
Add Wire
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 or
direct wire connection cannot be made. In this case, move the instances apart to
make 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 a
schematic so that you will have more space to add instances. You use a flight line to show an
intended logic connection. After all the instances are in place, you can let the system route
the 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.
October 2002
156
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
5. Draw a direct line between two objects.
A
B
C
Flight line
I1
Y
nand3
TERM1
Routing Flight Lines
To convert wires to normal wires after adding them using the flight route method on the Add
Wire 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.
Route Flight Line
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.
October 2002
157
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 Wires to Schematic Instance Pins using SKILL
To find the coordinates of the instTerms of each instance, query the following dbObject:
➤
With the schematic view open, enter the following commands in the CIW:
list_of_points=nil
cv=geGetEditCellView()
foreach( inst cv~>instances
when( inst~>purpose == "cell"
printf( "
%L\n" inst~>name )
foreach( instTerm inst~>instTerms
printf( "
%L\n" instTerm~>name )
foreach( pin instTerm~>term~>pins
printf( "
%L" pin~>name )
if( pin~>fig then
bBox = dbTransformBBox( pin~>fig~>bBox inst~>transform )
a=xCoord(car(bBox)) + (xCoord(cadr(bBox)) xCoord(car(bBox)))/2
b=yCoord(car(bBox)) + (yCoord(cadr(bBox)) yCoord(car(bBox)))/2
list_of_points=cons(a:b list_of_points)
);if
);foreach
);foreach
);when
);foreach
The above code is a sample. Modify it to suit your requirements.
October 2002
158
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Wire Names
Naming a wire affects the connectivity of your design. You must follow specific naming rules.
■
Naming a Wire on page 160
■
Adding Wire Names on page 160
■
Adding Multiple Wire Names on page 163
■
Verifying Invisible Wire Names on page 165
■
Using Net Name Prefixes on page 165
October 2002
159
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
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 Name command. The
wire name becomes the net name. For VHDL designs, the net name must match the pin
name; if not, the schematic rules checker (SRC) flags it as a VHDL violation.
TERM1
■
net_name
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.
TERM1
■
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 and
subscripts.
BUS<15:8>
■
Name a wire that consists of a collection of signals with different names. A bundle is
represented by names separated by a comma.
DATA,BUS<0:7>
Adding Wire Names
To add wire names, do the following:
October 2002
160
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
1. Choose Add – Wire Name.
The Add Wire Name form appears.
Add Wire Name
2. In the Names field, type the names of the wires.
To establish connectivity, use specific wire naming conventions. To name a bus, use
vector 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.
WireA
Rotated wire name
A
InputA
October 2002
161
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The text justification option displays a plus sign (+) in your cellview at the location of the
justification.
+WireA
+A
InputA
If you place the wire name at a greater distance from the wire than the default offset, click
on the wire that the label names.
When a wire name is associated with a wire, any action you perform with the wire affects the
wire name. For example, if you stretch the wire, the wire name remains with the wire. If you
delete the wire, the wire name is deleted.
If you select the entry style of fixed offset, the system uses predefined default settings to
automatically calculate the position of the wire name. To change the fixed offset defaults, do
the following:
1. Click Show Offset Defaults.
October 2002
162
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Wire Name form expands.
Add Wire Name
2. Edit the Text Offset fields.
Adding Multiple Wire Names
To add multiple wire names, do the following:
1. Choose Add – Wire Name.
October 2002
163
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Wire Name form appears.
Add Wire Name
2. In the Names field, type the names you want to create; for example, addr<0:3> or
addr1 addr2 addr3.
3. Set the following options as needed:
❑
If you want bus expansion of multiple wire names, turn the Bus Expansion field to
on.
This option places multibit bus names as multiple names, one for each bit of the bus
range, instead of one name. For example, for the name A<0:1>, the label A<0> is
placed 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 bring
the 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 on
the wire that the label names.
5. Place the remaining names by moving the pointer above each wire to be named and
clicking once to place the remaining wire names.
October 2002
164
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
October 2002
165
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
October 2002
166
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Net Expression Labels to Create an Inherited
Connection
A net expression defines the default global signal name for the connection and the name of
the property that can be used to override that global signal name.
To create an inherited connection, do the following:
■
Add a net expression label to a power supply (or wire) in a lower-level schematic, which
is described in “Adding a Net Expression Label to a Wire” on page 168.
■
Add a netSet property to an instance in a higher-level schematic, which is described in
“Adding netSet Properties to Create an Inherited Connection” on page 172.
[@power:%:vdd!]*
Search scope
Default global signal name
Search property name
Format instruction
You place the net expression on a wire segment that represents the signal. The net
expression names the signal in the same way that a wire name names a signal. The default
name in the net expression serves to name the underlying signal.
Refer to “Inherited Connections” on page 114 for a description of inherited connections.
This section describes the following:
■
Adding a Net Expression Label to a Wire on page 168
■
Adding an Inherited Supply Symbol to a Wire on page 169
■
Editing a Net Expression Label on page 169
■
Changing the Net Expression Label Display on page 170
■
Deleting a Net Expression Label on page 172
October 2002
167
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding a Net Expression Label to a Wire
To add a net expression label to a wire in a lower-level schematic, do the following:
1. Choose Add – Net Expression.
The Add Net Expression form appears.
2. In the Property Name field, type a property name.
3. In the Default Net Name field, type the name of a global signal.
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 expression
display is vdd!*. The asterisk ( * ) after the net expression label distinguishes it from a
regular wire name. 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.
4. Drag the cursor into your design and place the label on a wire (or symbol pin in the
symbol editor).
October 2002
168
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
5. If the label does not automatically attach to the wire, click on the wire you want to want
to add the net expression to.
6. Choose Check – Current Cellview or Design – Check and Save to ensure that the
signal is updated with the information from the net expression label.
When a net expression label is attached to a wire, the default net name in the expression
names the net.
The schematic extractor processes expressions associated with symbol pins only when the
extractor encounters an instance of the inherited symbol in a schematic.
You can change the net expression label display using the Options – Editor command.
When initially becoming familiar with net expressions, the value [expression] option can be
very useful.
Adding an Inherited Supply Symbol to a Wire
Add an inherited supply symbol by placing an instance of an inherited power supply on a wire
in a schematic (which is done only once).
Creating a library with inherited power and ground supplies is done only once. In a similar
way, regular power supplies can be used instead of wire names to give a global signal name
to a net. Inherited power supplies can be used, instead of net expression labels, to assign 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 on a wire.
[@prop:%:vdd!]*
3. Choose Check – Current Cellview or Design – Check and Save to ensure that the
signal is updated with the information from the inherited supply symbol.
Editing a Net Expression Label
To edit a net expression label, do the following:
October 2002
169
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
1. In the lower-level schematic, select the net expression label.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
The Evaluated Name field contains the result of evaluating the net expression for the
current descend path of the window.
3. Change the Property Name, Default Net, Height, Font, or Justification value of the
net expression label.
4. Click Attachment to reattach the label to the new wire or pin, if required.
5. Click OK.
Changing the Net Expression Label Display
To change the net expression label display so that you can see the value, property, or
expression, do the following:
1. Choose Options – Display.
October 2002
170
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Display Options form appears.
2. From the Net Expression Display cyclic field, choose one of the following:
Option
Display
value only
vdd!*
value (default)
vdd! (vdd!)*
value (property)
vdd! [power]*
value [expression]
vdd! [@power:%:vdd!]*
expression only
[@power:%:vdd!]*
The value option implies the resulting signal name from the evaluated net expression for
the current hierarchical path. The hierarchical path is the instance path that was
descended to get to this level.
October 2002
171
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
3. Click OK.
To display the hierarchical path, choose Design – Hierarchy – Show Scope.
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.
4. Choose Check – Current Cellview or Design – Check and Save to update the
connectivity of the cellview.
Adding netSet Properties to Create an Inherited
Connection
Adding a netSet property to an instance in a higher-level schematic lets you override the
default signal name specified in a net expression of a lower-level schematic.
■
Adding a netSet Property to an Instance on page 173
■
Modifying a netSet Property on page 176
■
Deleting a netSet Property on page 176
Refer to “Inherited Connections” on page 114 for a description of netSet properties used as
inherited connections.
October 2002
172
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding a netSet Property to an Instance
To add a netSet property to an instance, do the following:
1. At the desired level of hierarchy, select an instance that represents the branch of the
design hierarchy to be affected.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
3. Click Add.
October 2002
173
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Property form appears.
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 default
signal name.
This will be the new net name. It may be a global or a local signal name, or it may be a
net expression. The value must be 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 added netSet property.
October 2002
174
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
8. (optional) For clarity, you should change the Display cyclic field from the default off to
both to display both the name and value of the netSet property on the instance. This
more clearly shows that power = 3V! will be used in this branch of your design.
9. Click OK.
10. Choose Check – Current Cellview or Design – Check and Save.
If the current cellview does not have a signal with the signal name used within the
netSet property value, the Check command automatically creates a small wire with this
name.
October 2002
175
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Modifying a netSet Property
To modify the netSet property in your design, do the following:
1. Choose Edit – Properties – Objects.
The Edit Object Properties form appears.
2. Select an instance in the schematic window you want to modify.
You can also change the Display cyclic field from the default off to both to display both
the value and name of the netSet property on the instance.
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 design
hierarchy below this instance.
5. Click OK.
For more details, see “Modifying Object Properties” on page 359.
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 delete.
3. Click Delete in the User Property section of the Edit Object Properties form.
For more details, see “Deleting Object Properties” on page 358.
October 2002
176
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Analyzing Net Expression Property Names and Evaluated
Names
The Virtuoso® Schematic Composer now displays all evaluated net expressions in a design
hierarchy. This enables you to verify that devices connect to the right nets at each level in the
hierarchy.
The most helpful task in analyzing net expression property names and evaluated names is
searching for net expressions and related names and properties. The Virtuoso schematic
composer has various ways to search for a net expression. You can also find net expression
and netSet overrides in the instance hierarchy and find the actual evaluated results, which
can be the default signal when there is no netSet override.
■
Finding a Net Expression on page 178
■
Finding and Replacing a Net Expression on page 178
■
Finding Available Properties on page 179
■
Viewing the Evaluated Net Names on page 180
■
Viewing the Full List of all Hierarchical Paths on page 182
■
Checking the Net Expression
October 2002
177
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Finding a Net Expression
You can search for a net expression, netSet name, or netSet value. Wildcard searches
are also permitted. For more than one match, you can cycle through the match list.
To search for a net expression, do the following:
1. Choose Edit – Search – Find.
The Schematic Find form appears.
2. In the Search For cyclic field, choose net expression, netSet name, or netSet value.
3. Click Apply.
For more information on this command, see “Searching for Objects That Have a Specific
Property” on page 339.
Finding and Replacing a Net Expression
You can also use the Edit – Replace – Find command to preview the changes and save the
changes if you are satisfied with the operation. As with the Find command, you can search
for a net expression, netSet name, or netSet values. Wildcard searches are also
permitted. For more than one match, you can cycle through the match list.
1. Choose Edit – Search – Replace.
October 2002
178
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Schematic Replace form appears.
2. In the Search For cyclic field, choose net expression, netSet name, or netSet value.
3. Use any of the fields depending on your need, then click Apply.
For more information on this command, see “Replacing Properties” on page 341.
Finding Available Properties
To find the net expression property names that are available for setting on the selected
instance, do the following:
1. Choose Edit – Net Expression – Available Properties.
October 2002
179
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Net Expression Available Property Names form appears.
All net expression properties available to
instance: I1
in the top level cellview: inhConnFlow top_easy schematic
2. Choose an instance in the schematic.
For the form shown above, the I1 instance was selected. The form displays all the active
net expression property names available to the I1 instance in the hierarchy. The active
property name is the name of the lookup property in a net expression (associated with
an inherited signal or an inherited terminal) or in a redirecting net expression (the value
of a netSet property) for which no override is found in the hierarchy below the selected
instance.
3. Click OK.
Viewing the Evaluated Net Names
To view the net names that result from the evaluation of all net expressions that are found in
the hierarchy below the selected instances, do the following:
1. Choose Edit – Net Expression – Evaluated Names.
October 2002
180
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Net Expression Evaluated Names form appears.
The form displays all the different evaluated names that result from evaluations of all net
expressions in the hierarchy below the selected instance; in this case, the I1 instance.
All evaluated names from net expressions
below instance I1
in the top level cellview: inhConnFlow top_easy schematic
vdd!
1
1
2. Choose one of the evaluated names.
3. Click List Cellviews with Selected Evaluated Name to obtain a comprehensive
picture of the inherited connection usage in the design.
The Cellviews with Evaluated Net Expression Name form appears.
October 2002
181
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
This secondary form contains the full list of cellviews that contain net expressions that
evaluate to the selected evaluated name. It shows the lookup property name and the
default signal for each of these net expressions.
Cellviews with net expressions that evaluate to: vdd!
below instance I1
in the top level cellview: inhConnFlow top_easy schematic
Viewing the Full List of all Hierarchical Paths
To view the full list of all hierarchical paths, do the following:
1. Choose Edit – Net Expression – Evaluated Names.
2. Choose an evaluated name.
3. Click List Occurrences for Selected Evaluated Name.
The Occurrence Paths to Evaluated Name form appears.
October 2002
182
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
This form contains the full list of all hierarchical paths (for example, all lineages) that can
be followed down to all net expressions that evaluate to the selected evaluated name.
All occurrence paths to net expressions that evaluate to: vdd!
below instance I1
in the top level cellview: inhConnFlow top_easy schematic
4. Set the Display occurrence paths with cyclic field to instance names, cell names,
or instance and cell names, depending on the occurrence path display you want.
5. Review the results for gathering information to debug your design, then click OK to close
the form.
Checking the Net Expression
To check the net expression for accuracy, do the following:
1. Choose Check – Current Cellview or Design – Check and Save after adding or
changing a net expression label or netSet property.
After the check is completed, the Command Interpreter Window (CIW) shows the results
of the check, and a dialog box appears.
Flashing highlighted markers in your schematic indicate the objects that have errors or
warnings.
2. On the dialog box, click Close.
For more information, see “Checking a Design” on page 425.
October 2002
183
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
Adding Solder Dots
Place a solder dot where more than two wire segments intersect. Do not confuse four-wire
intersections, which are always connected logically, with two-wire overpasses.
wire_2
wire_2
wire_4
wire_1
Two overpass wires
Four connected wires
■
Adding Solder Dots on page 185
■
Deleting Solder Dots on page 185
■
Disabling Automatic Solder Dot Creation on page 185
■
Changing Solder Dot Size on page 186
October 2002
wire_3
wire_2
184
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 dots
automatically.
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. The
system 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 wire
segments.
To stop the system from adding solder dots automatically, do the following:
1. Choose Options – Editor.
October 2002
185
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Editor Options form appears.
Editor Options
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.
October 2002
186
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Editor Options form appears.
Editor Options
2. In the Solder Dot Wire Overlap field, specify a value in user units to define the distance
that solder dots overlap wires.
3. Click OK.
Adding Notes
To document a schematic, you can use
■
Note shapes
■
Note text
October 2002
187
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The following diagram shows an inverter with documentation notes to the left of the inverter.
[@instanceName]
ABC Inverter
A
Note text
Y
inv
Note shape
(rectangle)
■
Adding Note Shapes on page 189
■
Adding Note Text on page 189
■
Importing an ASCII File for Note Text on page 190
October 2002
188
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
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.
Add Note Shape
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 on
the shape you are drawing.
Adding Note Text
To add text to annotate your design for documentation purposes, do the following:
1. Choose Add – Note – Note Text.
October 2002
189
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Note Text form appears.
Add Note Text
You can type a note to document your design. You can
also read in (or import) an ASCII file from disk.
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.
October 2002
190
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Add Note Text form appears.
Add Note Text
You can type a note to document your design. You can
also read in (or import) an ASCII file from disk.
~/fileName
my_directory/fileName
2. In the Read File field, type the path to the file.
3. Click the Read File button.
Adding Patchcords
A patchcord is a special connection symbol. You use a patchcord to establish aliases between
the signals of two different nets.
Unlike tap names, where you extract bits of a single net, you can use patchcords to copy one
net to another. You can also use the patchcord to map bits from one net to different bits of
another net.
The value (connection expression) of the NLP label describes how to map the bits of the net
attached to the src (source) pin to the bits of the net attached to the dst (destination) pin.
October 2002
191
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The syntax you use for naming the vector expression is the same as the syntax for wires and
multiple bits.
The number of bits in the src vector expression must equal the number of bits in the dst
vector 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 or
greater than 1 bit wide.
October 2002
192
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
If the nets are more than 1 bit wide, you can update the connection expression value on
the Edit Object Properties form.
4. Move the cursor into your design and click to add the patchcord.
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 ignores
patchcord 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 Expression field, which indicates that the nets
are equal to or greater than 1 bit wide.
If the nets are more than 1 bit wide, you can update the connection expression value on
the Add Instance form.
0=0
src pin
dst pin
4. Click OK.
Note: The basic library contains the component cds_thru, which creates a pseudo-short
for the situations where a patch does not suffice; for example, if you need a short between
two terminals or a terminal and a global signal. The component is arranged to netlist in
sensible ways for the following tools:
■
lvs/auLvs: the cds_thru component can be shorted using the Diva removeDevice
function in your LVS rules
■
cdl/auCdl: a small value resistor which can be ignored with *.RESI
October 2002
193
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
■
spectre: an iprobe (effectively a zero-voltage source)
■
spectreS: an iprobe (effectively a zero-voltage source)
■
hspiceS: a zero-voltage source
■
verilog: a module describing the short (terminal-terminal assigns are legal in verilog)
Adding Probes
The Probe – Add command lets you select the data you want to display in another cellview
and select the data for the net for which you want to show a cross-reference.
■
Adding Probes to a Net, Pin, or Instance on page 195
■
Showing Probe Information on page 196
■
Removing Probes from a Net, Pin, or Instance on page 196
■
Removing All Probes on page 197
■
Saving Probes on page 198
■
Loading Probes on page 198
October 2002
194
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
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.
Applications to Cross Probe
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.
The color of the net, pin, or instance changes to show that your probes are added.
October 2002
195
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
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 the
object. If you clicked near two or more objects with probes, the window lists each object
and its probe type.
Removing Probes from a Net, Pin, or Instance
The Design – Probe Remove command removes the data you displayed in another cellview
or removes 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.
October 2002
196
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
The Delete Cross Probes form appears.
Delete Cross Probes
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. The
color 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. The
color 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 the
current window, do the following:
➤
Choose Design – Probe – Remove All.
October 2002
197
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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, then
choose 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.
Save Probes
2. In the Probe File Name field, 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 – Load
to 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.
Load Probes
October 2002
198
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
2. In the Probe File Name field, type the name of the file containing the probes you want
to load.
3. Click OK.
October 2002
199
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Schematics
October 2002
200
Product Version 5.0
Virtuoso Schematic Composer User Guide
4
Creating a Multisheet Schematic
You can use multisheet schematics to partition your design among several sheets, thus
creating a hierarchy.
This chapter provides information about the following topics:
■
Browsing a List of Multisheets on page 202
■
Converting a Single-Sheet Schematic to a Multisheet Schematic on page 202
■
Adding New Sheets on page 203
■
Editing the Title Block on page 203
■
Editing the Sheet Border Size and Type on page 205
■
Understanding Offsheet Pins and Their Naming Conventions on page 206
■
Adding Offsheet Pins to Multisheet Schematics on page 208
■
Understanding the Index Schematic on page 209
■
Going to and from the Index Schematic on page 210
■
Repositioning a Schematic within the Sheet Borders on page 210
■
Deleting Sheets on page 212
■
Reordering Sheets on page 213
■
Renumbering Sheets on page 214
■
Working with Cross-References on page 214
■
Customizing Multisheets on page 225
■
Drawing a Customized Sheet Border on page 228
■
Customizing Pin Cross-References on page 236
■
Presetting the Title Block Values on page 236
October 2002
201
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Browsing a List of Multisheets
The system uses a base name to group sheets of a multisheet schematic in a library. By
default, the base name is the cell name of the original single-sheet schematic. Each sheet of
a multisheet schematic has a unique sheet number.
myDesign
myDesign@sheet001
myDesign@sheet002
myDesign@sheet003
myDesign@sheet004
Index sheet
Individual sheets
Converting a Single-Sheet Schematic to a Multisheet
Schematic
When you extend your design over several sheets, you improve readability, maintain drafting
standards, 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.
Create Schematic Sheet
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 change
the size of the border, reposition your schematic within the border, or edit the sheet title.
October 2002
202
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
Create Schematic Sheet
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 lower
right-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 the
creation of the new sheet. The schematic editor creates the new sheet with the number
you chose and renumbers the remaining sheets. The schematic editor also updates all
properties 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.
October 2002
203
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The Schematic Title Block Properties form appears.
Schematic Title Block Properties
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.
October 2002
204
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The following sheet title block shows the information from the form on the previous page.
1999
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.
Change Sheet Border Size
October 2002
205
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 Naming
Conventions
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 hierarchical
design. When you place a hierarchical pin or offsheet pin in a sheet schematic, the schematic
editor creates an equivalent pin in the index schematic.
The following examples show how to use hierarchical and offsheet pins in a multisheet
schematic. See the pin naming conventions 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 1
or a matching hierarchical pin named out2<0:7> in sheet 1.
Sheet 2
Sheet 1
IO<0:7>
A<0:7>
IO<0:7>
A<0:7>
OUT1<0:7>
OUT2<0:7>
KEY:
Schematic pins
Offsheet pins
Example 2
In this example, the following hierarchical pins represent the partitioned bit width of a bus
signal, 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)
October 2002
206
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The example shows the usage of offsheet pin S<0:3> connecting sheet 1 to sheet 2 and vice
versa.
Sheet 2
Sheet 1
IO<0:3>
IO<0:3>
A<0:3>
A<4:7>
OUT<0:3>
OUT<4:7>
S<0:3>
I1<0:3>
B<0:3>
S<0:3>
KEY:
Schematic pins
Offsheet pins
Example 3
Pin A is hierarchical in sheet 1.
To access pin A from sheet 2, you use an offsheet pin.
Sheet 1
Sheet 2
IO
IO
A
OUT1
A
OUT2
KEY:
Schematic pins
Offsheet pins
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>.
October 2002
207
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Sheet 3 uses another two bits, which you access with offsheet pin B<6:7>.
Sheet 2
Sheet 1
I1<0:7>
B<0:7>
I2<0:1>
B<0:1>
Sheet 3
KEY:
Schematic pins
Offsheet pins
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.
October 2002
208
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 index
schematic to organize the sheets. The index schematic provides a graphical overview of all
the sheets in the schematic.
When you run a check on your design, the schematic editor displays all hierarchical pins and
their names at the top of the index schematic.
The following diagram is an example of an index schematic.
Hierarchical pins
Output offsheet pins (top right corner)
Project A
Asize
Rev: 4
Project A
Asize
Rev: 3
Sheet title
Input offsheet pins (top left corner)
Sheet number
Note: When renaming the cell name of a multisheet schematic’s index cell with the library
manager Edit – Rename command, only the index cell is renamed. The cell names for all
the sheet cells are not renamed as expected. To correct this situation, use the Edit –
Rename command to rename all the cells of a multisheet schematic individually.
October 2002
209
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Going to and from the Index Schematic
To go to the index schematic, do the following:
1. Choose Sheet – Go To.
The Go To Sheet form appears.
Go To Sheet
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 destination
sheet.
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 must reposition it.
To reposition a schematic within the sheet borders, do the following:
October 2002
210
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
1. Draw a selection box around all the objects in your schematic.
The selected
objects are
highlighted.
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 the
highlighted schematic.
5. Click in an open area to deselect the highlighted schematic.
October 2002
211
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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. You
can 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.
October 2002
212
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The Delete Schematic Sheet form appears.
Delete Schematic Sheet
2. Type the page range you want to delete.
The schematic editor prompts you to confirm or cancel the deletion.
Delete Schematic Sheet
This action is not undoable, continue?
Reordering Sheets
To change the order in which sheets are numbered, do the following:
1. From an index schematic, choose Sheet – Renumber.
The Edit Schematic Sheet Number form appears.
Edit Schematic Sheet Number
2. Specify the sheet to be renumbered and the new sheet number.
3. Click OK.
October 2002
213
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
If there is already a sheet with the new sheet number, the sheet whose number you want
to change is inserted before the existing sheet and gets the specified sheet number. The
sheets following it are automatically renumbered. On the example form above, sheet 1
becomes 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 sheet
numbers.
Renumbering Sheets
To sequentially renumber all sheets in a multisheet schematic beginning with 1, do the
following:
➤
From an index schematic, choose Sheet – Resequence.
The schematic editor renumbers all sheets sequentially beginning with sheet 1. For
example, if you previously deleted sheets 4 and 5 so that your sheets are numbered 1 2
3 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 other
locations 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 crossreferenced
This section discusses the following topics:
■
Understanding Cross-Reference Zones on page 215
■
Understanding Pin Cross-References on page 216
■
Understanding Cross-Reference Reports on page 217
■
Preparing to Cross-Reference on page 217
■
Displaying Cross-References on page 218
October 2002
214
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
■
Zooming In to View All Cross-Referenced Pins One by One on page 220
■
Going to a Specific Hierarchical Pin on page 221
■
Viewing Cross-Reference Reports on page 221
■
Editing a Cross-Reference Display on page 223
■
Controlling the Format String Syntax on page 224
■
Customizing the Format String Syntax on page 225
Understanding Cross-Reference Zones
Multisheet schematics with borders show numbers and letters that reference different zones,
similar to the squares on a map.
Aug 10 21:57
Letter zones
Number zones
October 2002
215
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Understanding Pin Cross-References
Pin cross-references are displayed on the schematic next to the pin name.
Pin names i1 and a<0:3>,b
a<0:3>,b
1B3, 3B2(a<0>), 4C1(b)
i1
2A4, 3B1
Zone numbers B3 and B2(a<0>)
Sheet numbers 2 and 3
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 A1
by pin name PP<7:0>; and at sheet 3, zone B4 by pin name PP<7:0>. The reference names
are not listed for the last two locations because the reference name matches the pin name.
PP<7:0>
October 2002
1A2(PP<0:3>),2A1,3B4
216
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Understanding Cross-Reference Reports
The following cross-reference report shows pin names and lists locations where the pins are
referenced.
--------------------------------Composer Cross Reference Report
Library name:
myLib
Module Name:
test2
--------------------------------Sheet Number: 1
sheet001
Pin Name
-------B<0:7>
CLEAR
CLEAR
CLEAR
PRESET
PRESET
Duplicate zones are shown if you turn the option
on.
Sheet 1 shows where the signal is referenced.
Zone C3 specifies the area where the pin is
referenced, using alphanumeric grids on the
sheet borders.
Cellname: test2/
References
---------1C4(B<0:7>)
Sheet Number: 3
sheet003
Pin Name
-------B<6:7>
A comma separates location references
References
---------2A1(B<0:1>),3A1(B<6:7>)
1C3
1C3
1B3
1A1
1C3
Sheet Number: 2
sheet002
Pin Name
-------B<0:1>
Cellname: test2/
Cellname: test2/
References
---------1C4(B<0:7>)
The reference name lists the name of the pin
that made the reference, B<0:7>.
Preparing to Cross-Reference
You must make sure your schematic is error free before you cross-reference pins, but you do
not have to correct warnings.
To check a multisheet schematic for errors before displaying cross-references, do the
following:
1. From the index schematic, choose Design – Check and Save.
October 2002
217
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
Schematic Check
There were 0 errors and 7 warnings found.
Close
2. Correct all errors, if applicable.
Displaying Cross-References
You can display cross-reference annotations to schematic and offsheet pins to indicate other
locations 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.
October 2002
218
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The Cross Reference Options form appears.
Cross Reference Options
report.file
<sheetNumber><zone><referenceName>
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 where
you use each pin or a subset of a bus or bundle pin. The reference pin must have at least
one shared member name with the pin name.
October 2002
219
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Pin cross-references are displayed on the schematic next to the pin name.
Pin names i1 and a<0:3>,b
a<0:3>,b
1B3, 3B2(a<0>), 4C1(b)
i1
2A4, 3B1
Sheet numbers 2 and 3
Zone numbers B3 and B2(a<0>)
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, do
the following:
1. From the index schematic, choose Check – Current Cellview to make sure the cellview
is 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.
Go To Pin
4. Select the pin or offsheet connector in your design to follow throughout the multisheets.
October 2002
220
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The schematic editor zooms in to the area that contains the specified pin or offsheet
connector. For example, if you selected first, the schematic editor shows the cellview
that contains 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. From the index schematic, choose Check – Current Cellview to make sure the cellview
is 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 the
hierarchical 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 locations
where each pin is referenced in a multisheet schematic. The report lists the cross-references
in 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.
October 2002
221
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The Cross Reference Options form appears.
Cross Reference Options
report.file
<sheetNumber><zone><referenceName>
2. Click View Report.
A window listing the pin references appears, as follows:
October 2002
222
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Example
In this sample design, a hierarchial pin for the bus B<0:7> is declared in
sheet 1. Sheets 2 and 3 use two bits of the bus declared in sheet 1. These two bits are
represented by offsheet pins.
Sheet 1
B<0:7>
Composer Cross Reference Report
Library name:
myLib
Module Name:
test2
------------------------------Sheet Number: 1
Cellname:
test2/sheet001
Pin Name References
B<0:7>
2A1(B<0:1>),3A1(B<6:7>)
CLEAR
1C3
CLEAR
1C3
CLEAR
1B3
PRESET
1C3
PRESET
1C3
Sheet 2
B<0:1>
Sheet Number: 2
Cellname: test2/
sheet002
Pin Name
References
B<0:1>
1C4(B<0:7>)
Sheet 3
B<6:7>
Sheet Number: 3
Cellname: test2/
sheet003
Pin Name
References
B<6:7>
1C4(B<0:7>)
Editing a Cross-Reference Display
You can edit the cross-reference display using standard editing commands and control the
visibility of the strings. You can
■
Make text invisible
■
Change fonts and sizes to make text easier to read
October 2002
223
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
■
Move the text independent of the pin or pin label (when you move the pin, crossreference 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 to
pins) by using your own cross-reference format string. You construct a string using the
following parameters in any order:
[sheetNumber]
Sheet number that contains the pin
[zone]
The alphanumeric grids that contain the pin
[direction]
The direction of the pin
[referenceName]
The name of the pin.
The referenced pin name is only printed when it does not exactly
match the original pin name. For example, the following string lets
you see which bits of a bus are used on which sheets
"1A1(bus<0:7>),2B2(bus<0:3>), 3C3(bus<4:7>)"
Syntax
pinName location,location,…
location:=[sheetNumber][zone][direction]
[referenceName]
direction:=’i’|’o’|’io’
for input, output, or input/output respectively
referenceName:= B<0:7>
pin name that has at least one shared bus component
October 2002
224
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Example
Using the default format of sheetNumber zone referenceName
Pin Name
PP<7:0>
References
1A2(PP<0:3>), 2A1, 3B4
The reference name (PP<0:3>) is enclosed in parentheses only if it is different from the pin
name. 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 to
each 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 choose
Sheet – 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
The following sections describe in detail the process of customizing multisheets:
■
The Basic Procedure on page 226
■
Customizing the Types and Sizes of Sheet Borders on page 226
■
Customizing the Cross Reference Options Form on page 228
■
Drawing a Customized Sheet Border on page 228
■
Drawing Sheet Zones on page 229
October 2002
225
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
■
Drawing Zone Labels on page 230
■
Adding the Sheet Zone Property on page 231
■
Adding a Title Block on page 232
■
Adding Title Block Values with Normal Labels on page 232
■
Verifying the Label Type on page 234
■
Adding Title Block Properties on page 234
■
Customizing Pin Cross-References on page 236
■
Presetting the Title Block Values on page 236
The Basic Procedure
In general, to use customized sheets in your schematic, do the following:
1. Create your own sheet as a symbol or use one from Cadence-supplied US_10ths
library.
2. Open the schematic view in Virtuoso® Schematic Composer.
3. Instantiate the desired sheet symbol in your schematic.
4. Fit the sheet symbol into the page.
5. Move, align, and resize the schematic within the sheet border.
6. Check and save your schematic.
Customizing the Types and Sizes of Sheet Borders
You can use your own customized sheet border symbols when you create new sheet
schematics. You can customize the display of pin cross-references.
October 2002
226
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
The fields on the Create Schematic Sheet form appear as follows:
Create Schematic Sheet
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"
list("myLib" "myCsize.c"
"symbol")
"symbol"))
where
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.
October 2002
227
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Customizing the Cross Reference Options Form
The fields on the Cross Reference Options form appear as follows:
Cross Reference Options
You can customize default settings on the Cross Reference Options form.
The cross-reference format string variable, PinRefFormat, can contain any text and the
following 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"
Drawing a Customized Sheet Border
A sheet border symbol contains several cellview properties that you can customize:
■
Drawing a Sheet Border on page 229
October 2002
228
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
■
Drawing Sheet Zones on page 229
■
Drawing Zone Labels on page 230
■
Adding the Sheet Zone Property on page 231
■
Adding a Title Block on page 232
■
Adding Title Block Values with Normal Labels on page 232
■
Adding Title Block Values with NLP and IL Labels on page 233
■
Verifying the Label Type on page 234
■
Adding Title Block Properties on page 234
Drawing a Sheet Border
The border symbol needs to contain two other cellview properties, both with the property type
string.
■
"nlAction" = "ignore"
Choose Edit – Properties – Cellview to add this property.
■
geQuerySelSet()
Type this function 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, and continue with the
following section.
Drawing Sheet Zones
To add sheet zones, do the following:
1. In the symbol editor, choose Add – Shape – Line.
October 2002
229
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
2. Press F3.
The Add Symbol Shape form appears.
3. Draw the equally spaced short lines (tick marks) around the sheet border.
To draw equally spaced tick marks, draw the first
segment, and then use the Edit – Copy command
array option.
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.
October 2002
230
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
3. Select the normalLabel option.
3
2
1
C
C
B
B
A
A
3
2
Sheet zones describe a coordinate system that
helps you identify exactly where an object is
located in a cellview. You can divide your sheet
into a 3 x 3 matrix with sheet zones 1, 2, 3, A, B,
and C.
1
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 the
second describes the Y coordinates (C,B,A). The order of the coordinates determines
how they are displayed in the sheet border zones. The X coordinate list is displayed left
to right, and the Y coordinate list is displayed top to bottom.
5. Click OK.
6. Click OK on the Edit Cellview Properties form.
October 2002
231
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 schematic
design.
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
editor window 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 block
and the block fields.
Lines
Adding Title Block Values with Normal Labels
To name the sheet title block fields for a normal label, do the following:
October 2002
232
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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.
Company
Title
Date
Sheet No.
4. Repeat steps 2 and 3 to place all the labels you plan to use.
Adding Title Block Values with NLP and IL Labels
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:
Company
[@COMPANY]
Label 1
Title
[@TITLE]
Label 2
Date
ilInst~>cellView~>instancesLastChanged
Label 3
Sheet No.
October 2002
[@SHEET]
233
Label 4
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
2. On the first line, type [@COMPANY].
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 graphic
display 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. The
schSheetTitles property is added to the titleblock cellview, which is a symbol. The
October 2002
234
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
schSheetTitles property contains the list of properties that can be edited with the Sheet
– Edit Title command.
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 all
sheets. 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 the index schematic (on the instances of the msymbols). Properties for global
titles are placed on all msymbol instances. Properties for local titles are placed only on
the instance of the corresponding msymbol. When you display a sheet schematic, the
NLPLabels in the title block are evaluated; these labels use the property values stored in
the index schematic.
6. Verify the creation of the schSheetTitles property by selecting an instance of an
msymbol.
7. In the CIW, type
geQuerySelSet( )
8. Click OK.
9. Click OK to add the property to the cellview.
October 2002
235
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
Customizing Pin Cross-References
You can customize environment variables for pin cross-references as follows:
■
Pin reference format
The pinRefFormat environment variable specifies the format for displaying the pin
reference information that appears next to each pin when you use Sheet – Cross
Reference.
■
Pin reference duplicates
The pinRefDuplicates environment variable specifies whether the editor reports
duplicate pin 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
references when you use Sheet – Cross Reference.
Presetting the Title Block Values
The Schematic Title Block Properties form, available when you choose Sheet – Edit from a
schematic design having a title block, can be preset with values if the properties already exist
on the title instance. The title form is dynamic and created every time you want to see the title
information. The values in the form are taken from the properties of the title instance.
You can preset the values by adding CDF properties to the title cell and saving the defaults.
The properties exist on the instance and will be presented on the form.
To add CDF properties, do the following:
1. From the CIW, choose Tools – CDF – Edit.
The Edit Component CDF form appears.
2. Set CDF Selection to Cell.
3. Set CDF Type to Base.
4. Set Library Name to US_8ths.
Note: You need to have write permission to edit this library.
5. Set Cell Name to Title.
October 2002
236
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
6. Press the Tab key on your keyboard to get the CDF properties in the form.
7. Click Add in the Component Parameters section.
The Add CDF Parameter form appears.
8. Set paramType to string.
9. In the name field, type company.
10. In the prompt field, type company.
11. In the defValue field, type the company name you want to see.
12. Click Apply.
13. Set paramType to string.
14. In the name field, type title.
15. In the prompt field, type title.
16. In the defValue field, type the title name you want to see.
17. Click Apply.
18. Set paramType to string.
19. In the name field, type title1.
20. In the prompt field, type title1.
21. In the defValue field, type another title name you want to see.
22. Click OK on both the Add CDF Parameter and Edit Component CDF forms to save the
added CDF properties.
You now see your default values when you instantiate the title cell.
If you have write permission to the US_8ths library, you can also modify the NLPlabels for
company and title from the symbol view of the title cell in the US_8ths library to customize
the title blocks. You can have default values by adding the variables on the symbol view.
October 2002
237
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating a Multisheet Schematic
October 2002
238
Product Version 5.0
Virtuoso Schematic Composer User Guide
5
Creating Symbols
You can quickly create a new symbol by importing (copying) an existing symbol into the
symbol editor window and then modifying the imported symbol. If you cannot use an existing
symbol—for example, if your schematic requires an electrical or logical function that does not
have a corresponding symbol in a Cadence® software library—you need to create your own
symbol using the symbol editor.
This chapter describes the following topics:
■
Setting Grid Options on page 241
■
Importing Symbols on page 242
■
Creating New Symbols on page 243
❑
Drawing Lines on page 244
❑
Drawing Rectangles on page 245
❑
Drawing Polygons on page 246
❑
Drawing Circles on page 247
❑
Drawing Ellipses on page 248
❑
Drawing Arcs on page 248
❑
Adding Pins as Graphic Images on page 250
❑
Adding Pins as Instances on page 251
❑
Creating Custom Pins as Graphic Images on page 252
❑
Duplicating Pin Figures in the Symbol Master on page 253
❑
Making the Custom Pin Name Visible on page 254
❑
Adding a Selection Box on page 255
❑
Adding Labels on page 255
October 2002
239
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
■
❑
Adding a Normal Label on page 256
❑
Adding an NLP Label on page 258
❑
Adding an IL Label on page 261
❑
Adding Note Text and Note Shapes on page 262
❑
Adding a Net Expression Label on page 262
❑
Setting the Symbol Origin on page 263
Creating Symbol Cellviews Using Generators on page 264
October 2002
240
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Setting Grid Options
Before you create a symbol, you might want to set the grids in the symbol editor to assist you
in drawing. If you want to create shapes that are smaller than what the current snap spacing
allows, 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.
October 2002
241
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Importing Symbols
You can import (copy) an existing symbol into the symbol editor. You can then modify the
imported 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.
October 2002
242
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Creating New Symbols
On occasion, your design might require an electrical function that does not have a
corresponding symbol in an existing library. In such situations, you need to create your own
symbol. 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 in the
schematic editor
■
Notes that consist of text and shapes to annotate the symbol.
Input pin
Inverter symbol polygon
(device shape)
NLP label
[@instanceName]
A
Y
Output pin
INV
ABC Inverter
Selection box
Note text
October 2002
Note shape
(rectangle)
Line
(shape)
Normal label
243
Circle (shape)
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 to
start a line.
✘
✘
You can enter many
points to create a
multisegmented line.
You can also press the
Esc key to terminate
lines.
Double-click the last point to
end the line.
October 2002
244
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 the
rectangle.
5. Click the opposite corner.
1st point
✘
✘ 2nd point
October 2002
245
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 polygon
symbol by clicking on each point.
4th point
✘ 1st point
✘ 2nd point
✘ 3rd point, or double-click to close the polygon
October 2002
246
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 radius
and complete the circle.
1st point
✘
October 2002
✘ 2nd point
247
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 the
ellipse.
5. Stretch the ellipse to your specifications and click the second point to complete the
ellipse.
1st point
✘
✘
2nd point
Drawing Arcs
To draw an arc, using the symbol editor, do the following:
1. Choose Add – Shape – Arc.
2. Press F3.
October 2002
248
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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
October 2002
3rd point
✘
✘
✘
2nd point
1st point
249
2nd point
✘
3rd point
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Adding Pins as Graphic Images
By default, the symbol pin that you create using the Add – Pin command in the symbol editor
is a graphic image of a symbol master. When you add pins as graphic images of a symbol
master, any changes you make to the symbol pin master are not reflected in the graphic
images 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.
October 2002
250
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
The following example shows how an input pin with a pin name of A appears after you
click your mouse in the design.
Input pin
A
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.
Input pin
A
Y
Output pin
Adding Pins as Instances
When you add symbol pins as instances, any changes you make to the graphics of the
symbol pin master are reflected in all the pin instances that were previously added from the
symbol pin master.
To turn on the option for adding symbol pins as instances, do the following:
1. Choose Options – Editor.
October 2002
251
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
The Editor Options form appears.
2. In the Command Controls section of the form, turn on the Add Symbol Pins as
Instances option.
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 Pin command to create your own graphic images (polygons)
for the 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.
October 2002
252
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating 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 polygon
shape 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 to
display the pin name. By default, the pin names are not visible.
6. Press the Esc key.
Duplicating Pin Figures in the Symbol Master
Duplicate or overlapping pin figures in the symbol master are difficult to identify because they
are the same size and shape. They can cause errors in the logic of the design. Cadence
Design Framework II (DFII) does not crash with duplicated/overlapping pin figures.
To correct this situation, do the following:
➤
Run the following SKILL routine on the symbol master cellview to test if duplicate or
overlapping pin figures exist:
procedure( checkDupPinBBox( cv )
let((shape inst pinFigs otherFigs dup)
shape = setof(s cv~>shapes s~>lpp == '("pin"
October 2002
253
"drawing"))
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
inst = setof(s cv~>instances s~>purpose == "pin")
pinFigs = nconc(shape inst)
otherFigs = copy( pinFigs )
foreach( fig pinFigs
otherFigs = cdr(otherFigs)
dup = nconc(dup setof( f otherFigs f~>bBox == fig~>bBox))
)
when( dup
info("\"%s\" contains duplicated pin figures\n"
cv~>cellName)
foreach( d dup info("... terminal \"%s\" at %L\n"
d~>pin~>term~>name d~>bBox)
)
)
) ; let
)
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 Value field displays the name you gave to
your custom pin.
3. Set the Display cyclic field to value.
4. Click OK.
October 2002
254
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Adding a Selection Box
A symbol selection box defines the area of the symbol that you can use when selecting an
instance 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 dialog box appears.
2. Draw a selection box manually, or click Automatic.
❑
To draw the selection box manually, click the first corner of the rectangle, then move
the cursor to the opposite corner and click.
1st point
✘
A
[@instanceName]
Y
inv
✘ 2nd point
❑
To draw the box automatically, click Automatic. The software generates a selection
box that encloses all symbol pins and symbol shapes.
Note: You can use the Stretch command to adjust the box shape.
Adding Labels
Symbol labels display assorted textual information. You can add one of three types of labels
to your symbol:
October 2002
255
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
■
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 NLP
expression and displays the resulting value. For example, the system displays the NLP
label [@instanceName] in the symbol editor but displays a value—for example, I3—
in the schematic editor.
Symbol editor
Schematic editor
[@instanceName]
A
I3
Y
Y
A
inv
■
inv
IL labels, which have expressions that are evaluated by the SKILL language to determine
the value
When you place an instance in your schematic, the system evaluates the SKILL
expression and displays the resulting value. For example, the system displays the IL
label ilInst~>name in the symbol editor, but displays a value—for example, I3—in the
schematic editor.
Symbol editor
A
Schematic editor
I3
ilInst~>name
Y
A
INV
Y
INV
Adding a Normal Label
To add a normal label, using the symbol editor, do the following:
1. Choose Add – Label.
October 2002
256
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
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.
A
Y
INV
Example of a normal label
6. Click to place the label.
When you place an instance of the symbol in your design, the schematic editor displays
the label text. To force an evaluation of the SKILL expression or function and display the
results, use the Window – Redraw command.
October 2002
257
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
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. In 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.
The NLPLabel expression is attached to the pointer.
[@instanceName]
A
October 2002
Example of an NLP label
Y
258
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
5. Click to place the label next to the symbol.
When you place an instance of a symbol in a schematic cellview, the schematic editor
interprets 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, use
the 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, and
displayFormat2 (optional) is used when a specified property cannot be located.
If displayFormat2 is not defined and the property does not exist, the editor does not
display the NLP label.
The rules table below and the examples that follow the table show how NLP label expressions
are interpreted.
Syntax Expression
Definition
[ ]
Delimits the property substitution expression. Text outside
square brackets remains unevaluated.
@
Specifies the beginning of a property substitution
expression, as [@instanceName].
propertyName
Specifies the property name.
:
Separates the property name from the display format string.
For example, in [@w:w=%], the colon separates the
property name (w) from the expression (w=%).
%
A placeholder in the format string for the current value of
propertyName.
\ plus a reserved character Lets you include one of the above reserved characters as a
text character in your label.
\n
Generates a carriage return.
\t
Generates a tab.
\nnn
Substitutes an ASCII character defined by octal nnn.
October 2002
259
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Examples – Evaluating NLP Label Expressions
If the current value of a named property is defined, the schematic editor substitutes the
defined value for the percent character (%) in the NLPLabel expression when you place the
instance in the design.
If the schematic editor does not find a value for a property when you place an instance of a
symbol, 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 NLPLabel expression, you specify only the
name of 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=%]
The editor considers any nonreserved characters after the separator (:) to be a text
string. When evaluated, the schematic editor returns the string. If there is a special
character in the expression, the editor evaluates it also. In Example 2, when w has a
value 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 generates the
following label:
l=8;
In Example 3, if w has a value of 4 and l has a value of 8, the editor generates the
following label:
w=4;l=8;
If you specify a value for w and l after you place the instance, or if you change the value
after you place the instance, the schematic editor updates the label to display the current
value.
■
Example 4 – Combined label expressions
October 2002
260
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
[@w:w=%:w is not defined;]
In Example 4, if w is not defined, the editor goes on to the next label expression, w is not
defined, which is a text string. The editor evaluates the string as a value and displays 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 the
following 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® SKILL
language expression that can be evaluated by the SKILL language.
Using the symbol editor, do the following:
1. Choose Add – Label.
The default [@instanceName] label is attached to the cursor. The Add Symbol Label
form appears.
October 2002
261
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
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 graphic
display of the cellview containing the instance.
3. Set the Label Choice cyclic field to instance label.
4. In the Label Type field, click ILLabel.
5. Move the pointer into your cellview and click to place the IL label.
ilInst~>master~>libName
A
Y
GaCells
A
■
IL label
library name
Y
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 the
schematic editor. Refer to “Adding Notes” on page 187.
Adding a Net Expression Label
You add a net expression label in the symbol editor in the same way you add a net expression
label in the schematic editor. Refer to “Adding Net Expression Labels to Create an Inherited
Connection” on page 167.
October 2002
262
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
Setting the Symbol Origin
The origin of a symbol is the (0,0) location within a symbol. When you place instances in a
schematic, the symbol origin affects the position of the symbol graphics and pins relative to
the instance placement point.
Caution
Changing the origin of a symbol moves instance pins within all
schematics that use that symbol. This might affect the connectivity of the
schematic because schematic wires do not automatically move to the
new 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.
Point to a location.
[@instanceName]
A
Y
✘
INV
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.
[@instanceName]
A
Y
INV
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
October 2002
263
Product Version 5.0
Virtuoso Schematic Composer User Guide
Creating Symbols
3. Choose Window – Fit to 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 Cellview command mentioned in Chapter 6,
“Automatically Creating Cellviews,” you can create symbol cellviews using generators.
■
Text-to-Symbol Generator on page 595
The text-to-symbol generator (TSG) is a Cadence application program that automatically
generates symbol cellviews for schematic capture and subsequent simulation
processes. TSG provides a quick way to generate a symbol from a list of pins in a TSG
file.
■
Symbol and Simulation Library Generator on page 623
The Cadence SKILL-based symbol and simulation library generator
(S/SLG) is a library management program that generates symbol and simulation views.
October 2002
264
Product Version 5.0
Virtuoso Schematic Composer User Guide
6
Automatically Creating Cellviews
This chapter discusses the following topics:
■
Features of Creating Cellviews on page 266
■
Automatically Creating a Cellview from Another Cellview on page 266
■
Automatically Creating a Cellview from a Pin List on page 274
■
Automatically Creating a Cellview from an Instance on page 275
■
Editing Symbol Generation Options on page 277
■
Specifying Symbol Generator Pin Sorting on page 303
October 2002
265
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
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
Refer to the Cadence® SKILL-based library management program Symbol and
Simulation 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 can
automatically create a symbol from a schematic. Automatic cellview creation can be very
useful 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.
October 2002
266
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
The Cellview From Cellview form appears.
By default, the software initializes the form with information about the cellview currently
open (the default cellview).
2. Use a different cellview as the source of the port/pin information by changing the Library
Name, Cell Name, and From View Name fields.
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 Type cyclic field do
not contain the desired view or conversion function, you must modify the
schViewToPinListReg list or the schPinListToViewReg list, which are defined in your
schConfig.il file.
4. Display the cellview in a new window by turning on the Display Cellview button.
5. Edit various cellview creation options by turning on the Edit Options button.
6. Click OK.
When generating a symbol, the Symbol Generation Options form appears if you turned
on 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 either
replace the cellview, modify it (symbol cellview only), or cancel the command.
October 2002
267
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
From this point, the exact behavior of the command depends on the type of data being
created.
Replacing an Existing Symbol Cellview
You can replace or modify existing symbol cellviews. You can only replace (not modify) all
other 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 box
appears.
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; all
schematic instances, schematic wires, and HDL body text are lost
❑
May alter the position of pins in the new symbol cellview
4. Click Replace.
October 2002
268
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
The Symbol Generation Options form appears.
5. Click OK.
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 272.
October 2002
269
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
6. Click Yes.
Modifying an Existing Symbol Cellview
You can replace or modify existing symbol cellviews. You can only replace (not modify) all
other types of existing cellviews.
1. In the schematic editor, choose either Design – Create Cellview – From Cellview or
Design – Create Cellview – From Pin List.
2. Click OK.
If the symbol cellview to be created already exists, the Create Cellview dialog box
appears.
Caution
Modifying a symbol cellview does the following:
❑
Automatically edits the cellview with a minimal amount of changes to the current pin
locations, 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
these new pins and to adjust any symbol graphics. The system determines
attributes 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 cellview
and in the Command Interpreter Window (CIW)
October 2002
270
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
❑
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 273.
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
– From Cellview from a schematic that had the pins { a bb ccc dddd eeeee f gg hhh
iii k ll mmm }.
The following changes were then made to the schematic:
■
Deleted input pin bb
■
Deleted inputOutput pin iii
■
Added input pins wwwwww and zz
October 2002
271
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
■
Added inputOutput pin ii
All three figures show pin a at the exact same location, (X,Y) = (0,0) which is the
symbol’s origin point. By default, TSG puts the top-most left pin at the origin of the symbol.
Figure 6-1 The Symbol
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 other
unaffected 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 by
the deletion of pin bb.
October 2002
272
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
■
Although the ordering and number of pins along the top is similar to the original (with new
pin ii replacing pin iii), all four top pins have moved down by one-half a grid (due to
the shorter label).
■
Due to the length of new or deleted pin names, the graphic has been recalculated in size
accordingly.
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 ll
mmm} at their original locations. The new pins {wwwwww, zz, ii} have been placed at the
bottom of the cellview, outside of the bounding box of the original symbol. The pin and pin
names {bb, iii} have been deleted, but the graphic pin line (pin stub) remains to show
the position of the pins that were deleted. If necessary, you can delete these graphic pin lines
using the symbol editor. Also shown is the note used to describe the changes that were made
to the symbol.
October 2002
273
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
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 from
existing pins, such as those from the basic pin library, or you can create the cellview from
new pin names.
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 currently
open (the default cellview).
October 2002
274
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
3. If you want to use a different cellview as the source of the port/pin information, change
the Library Name, Cell Name, and View Name fields.
Note: If either theView Name field or the Tool / Data Type cyclic field does not contain
the desired view or conversion function, you must modify the schViewToPinListReg list
or the schPinListToViewReg list, both of which are defined in your schConfig.il
file.
4. If you want the system to display the cellview in a new window, turn on the Display
Cellview 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 turned
on 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 the
form.
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.
October 2002
275
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
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 you
turn on Display Cellview, the system displays the cellview in a new window.
October 2002
276
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
Editing Symbol Generation Options
The Symbol Generation Options form displays the property and attribute settings that the
text-to-symbol generator (TSG) uses to generate symbols. The software loads the default
form settings from a template file, which you specify using the tsgTemplateType
environment variable.
This section discusses the following tasks:
■
Adding, Changing, and Reordering Pin Names on page 278
■
Editing Pin Attributes on page 280
■
Loading and Saving a TSG Template File on page 282
■
Editing Symbol Attributes on page 285
■
Editing Symbol Labels on page 286
■
Creating a New Label on page 289
■
Deleting Labels on page 291
■
Modifying Label Attributes on page 293
■
Editing Properties on page 296
■
Creating a New Property on page 297
■
Deleting Properties on page 299
■
Modifying Property Attributes on page 301
October 2002
277
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
Adding, Changing, and Reordering Pin Names
To add, change, or reorder pin names, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
278
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the Cellview From Cellview form.
4. To space pins further apart, add one or more asterisk ( * ) in the Left Pins, Right Pins,
Top Pins, and Bottom Pins fields.
5. Click OK.
October 2002
279
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
This setting results in the following:
INPUTA
OUTPUTA
INPUTB
INPUTC
OUTPUTB
Editing Pin Attributes
To edit the attributes of a pin, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin 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 Symbol
Generation Options form.
October 2002
280
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
The Symbol Generation Options form appears.
By default, the software initializes the form with information from the current cellview and
the Cellview From Cellview form.
4. Select List from one of the Attributes cyclic fields.
The pin attributes form appears.
left pin attributes
The banner title on the form indicates left, right, top, or bottom pin attributes.
October 2002
281
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
5. Use the Direction cyclic fields to change the direction of the pins.
6. Use the Pin Graphic cyclic fields to change the graphic of the pin.
7. Click OK.
Loading and Saving a TSG Template File
The TSG template file contains the default property and attribute settings that appear on the
Symbol Generation Options form. The software loads the TSG template file the first time you
use one of the Create Cellview commands to automatically generate a symbol. You use the
tsgTemplateType environment 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 Cellview or Design – Create
Cellview – From Pin 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 Symbol
Generation Options form.
October 2002
282
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
The Symbol Generation Options form appears.
By default, the software initializes the form with information from the current cellview and
the Cellview From Cellview form.
4. Turn on Load/Save.
October 2002
283
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
The Symbol Generation form expands to display the template data fields.
your_install_dir/tools/dfII/samples/symbolGen/
5. In the Load / Save Symbol Template Configuration section, type the path to the TSG
template file.
6. Click Load or Save.
The system initializes the Load / Save Symbol Template Configuration section of the
form with the values from the specified TSG file.
The software builds all subsequent symbols using the new values.
October 2002
284
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
Editing Symbol Attributes
To edit symbol attributes, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
285
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 Cellview or Design – Create
Cellview – From Pin List.
October 2002
286
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
287
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the Cellview From Cellview form.
4. Turn on Edit Labels.
October 2002
288
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Cellview or Design – Create
Cellview – From Pin List.
October 2002
289
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
290
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 during
symbol generation.
Deleting Labels
To delete a symbol label from the Label cyclic field, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin List.
October 2002
291
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
292
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 Cellview or Design – Create
Cellview – From Pin List.
October 2002
293
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
294
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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.
October 2002
295
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
Editing Properties
To modify edit properties, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
296
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 Cellview or Design – Create
Cellview – From Pin List.
October 2002
297
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
298
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 created
during symbol generation.
Deleting Properties
To delete properties, do the following:
1. Choose either Design – Create Cellview – From Cellview or Design – Create
Cellview – From Pin List.
October 2002
299
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
300
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 Cellview or Design – Create
Cellview – From Pin List.
October 2002
301
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically 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 Symbol
Generation Options form.
The Symbol Generation Options form appears.
October 2002
302
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
By default, the software initializes the form with information from the current cellview and
the 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 location
fields.
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 alphanumerically
by pin name (default) or geometrically according to the pin’s relative position in the source
schematic view.
To specify how TSG sorts the pins, do the following:
1. Choose Design – Options – Editor.
The Editor Options form appears.
October 2002
303
Product Version 5.0
Virtuoso Schematic Composer User Guide
Automatically Creating Cellviews
2. In the Command Controls section of the form, set the Symbol Generator Pin Sorting
option to 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
ssgSortPins environment variable. The system uses this variable when you choose
Design – Options – Save Defaults. It is also available as arguments to the
schGetEnv and schSetEnv procedural interface SKILL functions.
October 2002
304
Product Version 5.0
Virtuoso Schematic Composer User Guide
7
Editing Objects
This chapter discusses commands such as Copy, Move, Stretch, and Delete. The next
chapter discusses Edit Properties commands.
■
■
Using Direct Manipulation on page 306
❑
Direct Manipulation Operations on page 307
❑
Turning Off Direct Manipulation on page 308
Undoing and Redoing an Edit on page 308
❑
■
■
■
Changing the Undo Limit on page 308
Stretching on page 309
❑
Stretching with the Schematic Editor on page 310
❑
Stretching with the Symbol Editor on page 313
❑
Stretching with Direct Manipulation on page 315
❑
Stretching with Bindkeys on page 316
Copying on page 316
❑
Copying Single Objects on page 317
❑
Copying Arrays of Objects on page 317
❑
Copying Across Cellviews on page 318
❑
Copying with Direct Manipulation on page 318
❑
Copying with Bindkeys on page 319
Moving on page 319
❑
Moving Objects on page 320
❑
Moving with Direct Manipulation on page 321
October 2002
305
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
❑
■
■
Moving with Bindkeys on page 322
Deleting on page 322
❑
Deleting Preselected Objects on page 323
❑
Deleting Postselected Objects on page 323
❑
Deleting Sheet Borders on page 324
Rotating on page 324
❑
Rotating Preselected Objects on page 324
❑
Rotating Postselected Objects on page 325
❑
Rotating with Direct Manipulation on page 326
❑
Rotating with Bindkeys on page 326
■
Discarding Edits on page 327
■
Alternating Symbol Views on page 327
■
❑
Changing the View of a Preselected Object on page 327
❑
Changing the View of a Postselected Object on page 328
Toggling Objects on page 328
❑
Toggling Pin Direction Options on page 328
❑
Toggling Wire Draw Mode Options on page 328
❑
Toggling Instance Symbol View Options on page 329
Using Direct Manipulation
Direction manipulation is one of the quickest ways to edit an object. You use the mouse, rather
than 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 create
an object.
October 2002
306
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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
October 2002
307
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Turning Off Direct Manipulation
To turn off direct manipulation, do the following:
1. Open the schBindKeys.il file located in the
your_install_dir/tools/dfII/samples/local directory.
2. Comment out schDirectEdit(1), schDirectEdit(2), and
schDirectEdit(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 future
sessions.
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 at
a time, the last 10 levels of edit commands.
You can set the undo limit between 0 and 10 using the Options – 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.
October 2002
308
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The User Preferences form appears.
2. Move the Undo Limit slider to the limit you want.
3. Click OK.
Stretching
Use the Stretch command to reposition the placement of objects in your design without
losing connectivity 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) and
associated 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 when
necessary
The Stretch command supports partially selected wire vertexes. The remaining
nonselected vertexes are anchored in place.
October 2002
309
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
October 2002
310
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Note: If you select objects other than instances, wires, or schematic pins, they move instead
of 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 default
settings.
Before the stretch,
showing a selected
instance
INPUTA
IO
Y
A
OUTPUTA
inv
INPUTA
OUTPUTA
During the stretch process
IO
Y
A
inv
INPUTA
After stretching an
instance
OUTPUTA
IO
Y
A
inv
To reroute wire segments, do the following:
➤
On the Stretch form, turn on Reroute Wire Segments Connected To Instance.
October 2002
311
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The following diagram illustrates stretching an instance named I1.
I1
(a)
(b)
When you set Reroute Wire Segments Connected To Instance to off, the
rubberband lines begin at the wire (a).
When you set Reroute Wire Segments Connected To Instance to on, the
rubberband lines begin at the pin (b).
October 2002
312
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Stretching a Wire
The following diagram shows how to stretch a wire using the schematic editor default settings.
INPUTA
IO
Y
A
OUTPUTA
During the stretch process
inv
INPUTB
IO
Y
A
inv
After the stretch process
INPUTA
IO
Y
A
OUTPUTA
inv
IO
Y
A
inv
You can stretch a wire in any direction. The editor reroutes the wire and maintains
connectivity. 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 the
following:
1. Choose Edit – Stretch.
2. Click once on an edge or a vertex of a shape or an endpoint of a line.
October 2002
313
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
Stretch
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.
October 2002
314
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Stretching Edges, Vertexes, or Endpoints
The following diagram shows how to stretch partially selected objects in the symbol editor.
Before
After
The edge of a shape
✘
The vertex of a shape
✘
The endpoint of a line
✘
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.
October 2002
315
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
2. Drag and release the mouse button to complete the stretch.
Before stretching an
instance
INPUT
IO
Y
A
OUTPUT
inv
INPUT
OUTPUT
During the stretch process
IO
Y
A
inv
INPUT
OUTPUT
IO
Y
After stretching an instance
A
inv
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
October 2002
316
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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
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.
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.
October 2002
317
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
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.
Copying Across Cellviews
You can copy objects from one cellview to another. Copied objects remain attached to the
cursor when you move the cursor into another window containing a schematic or symbol
cellview. 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.
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.
October 2002
318
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
2. Press the Shift key, and click and drag the mouse.
When you release the mouse button, the original object is copied and placed.
Before copying
INPUT
A
IO
Y
OUTPUT
inv
After copying
INPUT
A
IO
Y
OUTPUT
INPUT
A
I4
Y
OUTPUT
inv
inv
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 Move command to reposition objects in your design. Unlike the Stretch command,
the Move 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
October 2002
319
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
■
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 work
with partially selected objects, only the selected vertexes move while the other vertexes
or 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.
3. Click a destination for the object.
Before moving
INPUT
IO
Y
A
OUTPUT
inv
INPUT
OUTPUT
IO
After moving
A
Y
inv
4. To change Move command options, press F3.
October 2002
320
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The Move form appears.
After a move, all connectivity breaks between the selected object and the objects to which it
was 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:
1. Place the pointer over an object.
2. Press the Control key, and click and drag the mouse.
October 2002
321
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
You are now in the Move command. When you release the mouse button, the object is
placed.
Before moving
INPUT
IO
Y
A
OUTPUT
inv
INPUT
OUTPUT
IO
After moving
A
Y
inv
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 Delete command ends after the
selected objects are deleted.
■
You can select an object after you use the Delete command (postselection). When you
postselect objects, press the Esc key to end the Delete command unless you want to
delete another object. To be sure the Delete command is no longer active, check the
prompt line at the bottom of the window in which the cellview is displayed.
■
You can recover an object that you deleted by mistake by choosing Edit – Undo.
October 2002
322
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
■
You can delete an instance and the wires that connect to it by using extended selection
with the Delete command.
You cannot use the Delete command to delete
■
Sheet borders
To remove sheet borders, use the Sheet – Edit Size command.
■
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 on
preselected objects.
You can also delete objects by pressing the Delete key.
Deleting Postselected Objects
If you prefer to use the Delete command first and then select the object you want to delete,
do the 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 the
Esc key or by starting another command.
You can also delete objects by pressing the Delete key.
October 2002
323
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
Change Sheet Border Size
2. Set the Border Type to none.
3. Click OK.
Rotating
The Edit – Rotate command rotates objects counterclockwise, sideways, or upside down.
A
B
B
A
A
B
A
B
Rotate turns objects 90 degrees.
Sideways flips objects from side to
side.
A
B
A
B
Upside Down flips objects from top
to bottom.
A
B
B
A
Rotating Preselected Objects
To rotate a preselected object, do the following:
1. Click on the object you want to rotate.
October 2002
324
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
October 2002
325
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The Rotate form appears.
3. Change the option setting.
Rotating with Direct Manipulation
To rotate objects while in the Move, Copy, Stretch, Add – Instance, Add – Pin, Add –
Wire, Add – Note Text, or Add – Label command, 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 – Label
command, 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
October 2002
326
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Discarding Edits
To discard edits you made since the last save, do the following:
1. Choose Design – Discard Edits.
The following dialog box appears.
Discard Edits
2. Click Yes or No.
If you click Yes, the edits are discarded and the last version saved appears. If you click
No, the edits are retained.
Alternating Symbol Views
When you create a schematic, you might find it convenient for a particular library cell to have
more than one symbol representation. These different symbols might represent deMorgan
equivalents or adhere to different drafting standards.
Use the Edit – Alternate View command to switch between the different symbol
representations.
Changing the View of a Preselected Object
To change symbol views for a preselected object, do the following:
➤
Choose Edit – Alternate View.
October 2002
327
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
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 last
view, the command redisplays the first view.
Toggling Objects
Use bindkeys to toggle an object while in the Add – Pin or 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.
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 mode
that you specify on the Add Wire form. Use your mouse to cycle through the possible draw
modes (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.
October 2002
328
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
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 nand2
symbolNeg view), do the following:
1. Choose Add – Instance.
2. Press the Shift key and click right to cycle through the options.
Editing the Display Configuration of a Component
This section describes the following topics:
■
Changing the Display Configuration of Instance IL Labels on page 330
■
Saving the Current Label Display File on page 332
■
Loading the Current Label Display File on page 332
■
Attaching the Label Display File to the Library on page 333
■
Detaching the Label Display File from the Library on page 334
■
Setting the Simulation Data Directory on page 335
October 2002
329
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
Changing the Display Configuration of Instance IL Labels
You can edit the display configuration of instance IL labels (cdsName, cdsTerm, and
cdsParam) that you created using the Add – Label command from the symbol editor or from
the instances supplied with the analog circuit designer.
IL labels (labels generated automatically during automatic symbol generation) are evaluated
when an instance of a symbol containing the IL label is instantiated in a schematic.
To change the display configuration of instance IL labels (cdsName, cdsTerm, and
cdsParam), do the following:
1. Choose Edit – Component Display.
2. Point to an instance label in your design.
October 2002
330
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The system checks the design for errors. The Edit Component Display form appears and
expands 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 To field, click library, cell, and/or instance, to which to apply the label
display configuration.
5. Click OK.
October 2002
331
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
For more details about annotating the schematic with label information, refer to the section
on annotating schematics in the Analog Circuit Design Environment User Guide.
For details on the Edit Component CDF form, see the label information chapter in the
Component Description Format (CDF) 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:
October 2002
332
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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 label
display configuration.
3. Click OK.
Attaching the Label Display File to the Library
You can save the current label display configuration to a temporary file and attach the file to
the library. You can then load the file automatically when you open the library.
To save the current label display configuration, do the following:
October 2002
333
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
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 attaches
the 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 display
to the library.
Detaching the Label Display File from the Library
To remove the attached label display configuration from the library, do the following:
1. From the Edit Component Display form, click Detach.
2. Click OK.
The system removes the attached label display configuration from the library.
October 2002
334
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
The CIW displays a message saying that the system detached the current label display
file from the library or that there was no label display file to remove from the library.
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.
October 2002
335
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Objects
October 2002
336
Product Version 5.0
Virtuoso Schematic Composer User Guide
8
Editing Properties
This chapter describes how to find and edit object properties.
■
Searching for Objects That Have a Specific Property on page 339
❑
■
Search String Wildcards on page 341
Replacing Properties on page 341
❑
Replacing String-Tagged Characters on page 343
❑
Selecting Objects Automatically by Type on page 349
❑
Selecting Objects by Property on page 351
❑
Adding a Property Name to the Search List on page 352
■
Selecting Objects by Filtering on page 353
■
Object and Cellview Property Types and Values on page 354
■
Editing Object Properties on page 356
■
❑
Applying Edits to Objects and Displaying Object Types on page 356
❑
Adding Object Properties on page 357
❑
Deleting Object Properties on page 358
❑
Modifying Object Properties on page 359
Editing Specific Object Properties on page 360
❑
Editing Instance and Block Properties on page 360
❑
Editing Pin Properties on page 362
❑
Designating the Order of Pins on page 362
❑
Copying a Pin Order from Another Cellview on page 363
❑
Resolving Pin Order Mismatch on page 364
October 2002
337
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
■
■
❑
Verifying Pin Order on page 364
❑
Editing Pin Name Properties on page 365
❑
Editing Wire Properties on page 365
❑
Editing Wire Name Properties on page 366
❑
Editing Instance Pin Properties on an Instance of a Block on page 367
❑
Editing Label Properties on page 368
❑
Resetting Invisible Labels on page 369
❑
Editing netSet Properties on page 371
❑
Editing Note Text Properties on page 371
❑
Editing Note Shape Properties on page 373
❑
Editing Symbol Shape Properties on page 374
❑
Editing Symbol Pin Properties on page 375
❑
Editing Symbol Label Properties on page 376
❑
Editing Symbol Selection Box Properties on page 377
❑
Editing User-Defined Object Properties on page 378
❑
Passing Parameters in a Design on page 380
Editing Cellview Properties on page 381
❑
Adding Cellview Properties on page 382
❑
Deleting Cellview Properties on page 383
❑
Modifying Cellview Properties on page 384
❑
Editing VHDL Properties on page 385
❑
Adding VHDL Properties on page 386
❑
Deleting VHDL Properties on page 387
❑
Modifying VHDL Properties on page 388
Setting the Tool Filter on page 388
October 2002
338
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Using Command Shortcuts
Direct editing (or direct manipulation) is the quickest way to edit or create an object. You can
use your mouse to start the following command operations, rather than selecting a menu
command 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
Searching for Objects That Have a Specific Property
Use the Edit – Search – Find command to find objects that have a property that matches
your specific search criteria.
To find objects that have a specific property, do the following:
1. Choose Edit – Search – Find.
October 2002
339
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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 For cyclic field to other, the Add New Property to Find/
Replace form appears. When you click OK, the new name appears in the cyclic field on
the Find form.
3. Specify the value of the property in the text entry field on the Find form.
The asterisk ( * ) matches zero or more occurrences of any characters.
4. Click Apply.
When a 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 a
list. To display the list of matches, click the List All button.
October 2002
340
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
❑
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.
Search String Wildcards
Wildcards help you replace properties easily using partial string substitution. You can use one
or more wildcards or tagged fields in the search and replace fields on the Replace form.
Search String
Wildcards
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.
The system counts each occurrence of an “ * ”, “ . ” or “[c..]” as one single wildcard, except
when the “ . ” and “ * ” appear together, in that order. In this case, the system counts the two
together as one wildcard only.
Replacing Properties
Use the Edit – Search – Replace command to find objects that have a property that
matches the search criteria you specify on the Replace form. You can then replace the
property or the value 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 for
and the cellview that contains the replacement property.
To find and replace properties, do the following:
October 2002
341
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
1. Choose Edit – Search – Replace.
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 For cyclic field to other, the Add New Property to Find/
Replace form appears. When you click OK, the new name appears in the cyclic field on
the Find form.
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 match
exists, a dialog box confirms no objects were found.
October 2002
342
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
5. On the Replace form, do one of the following:
❑
Click ReplaceAll to replace all property names and values in the list with the new
property names and property values.
❑
Use the Replace and Skip buttons to view individual matches and apply the
replacement property name and value as desired.
Replacing String-Tagged Characters
In the Virtuoso® schematic composer, you can use partial strings and wildcards in searchand-replace statements. The table below and the following examples describe the process.
Replace
String-Tagged
Characters
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 nine
wildcards in the search pattern are tagged. If a tagged field that is used
in 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 wildcards
exist 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 the
corresponding 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.
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}
October 2002
343
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Example 2
You can specify the tagged fields in any order in the replace string. If you want to swap the
start and end values for all buses with prefix ABC, enter the following:
Search: ABC<*:*>
Replace: ABC<{2}:{1}>
The {2} tag in the replace string corresponds to the characters represented by the second
asterisk in the search string, while {1} corresponds to the characters represented by the first
asterisk 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 first
asterisk 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 the
asterisk in the search string.
Example 5
You can use any combination of wildcards in the search string. To search for net names
A1B1C1, A2B2C2, and so forth, and replace them with P1Q1R1, P2Q2R2, and so forth, you
can enter any one of the following:
Search: A[0-9]B[0-9]C[0-9] or
A.B.C. or
A*B*C* or
A[0-9]B.C. or
October 2002
344
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
A.B[0-9]C[0-9] or
A*B.C. or
A.B*C*
Replace: P{1}Q{2}R{3} or
P*Q*R*
Example 6
A tagged field can appear any number of times in the replace string. If you want to replace
AfooB 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 a
different tag except when a “ . ” and “ * ” appear together, in that order. In this case, the
wildcards 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 CxD and not CxyzD because the “ * ” in the replace string is interpreted as the
first tagged field, which is the wildcard “ . ”. To achieve the desired result, you can use C***D
or 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 tagged
field 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}
October 2002
345
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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
Replace: A\*B
The \ before “ * ” in the replace string indicates that the asterisk be treated as a literal and
not as a wildcard.
If you had an array A[1], A[2], A[3] … A[n] and you wanted to replace all square brackets
by 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 tagged
field.
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 following
the second backslash in the replace pattern is treated as a wildcard. If the replace string is
A\\\*\\\* instead, then the result is A\*\*.
Example 9
If the search string does not have a wildcard character and the replace string does, a
substitution 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 not
as wildcards.
October 2002
346
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Example 10
If you had more than nine wildcards in the search-and-replace strings, only the first nine in
the replace string can be substituted correctly. The rest are substituted with empty strings.
Suppose you want to search for a string A1B2C3D4E5F6G7H8I9JKL by
P1Q2R3S4T5U6V7W8X9YKZ:
Search: A*B*C*D*E*F*G*H*I*J*L
Replace: P*Q*R*S*T*U*V*W*X*Y*Z
The result is P1Q2R3S4T5U6V7W8X9YZ. The last “ * ” in the replace string gets substituted
by an empty string and not the substring corresponding to the last
“ * ” in the search string.
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 a
starting point called the reference point for the edit. The reference point is usually in the
middle 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 by
pressing the Escape key. To change the default to nonrepeating, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Turn Modal Commands off.
3. Click OK.
Using Modal (Repeating) Commands
You do not have to repeatedly select a command if you plan to perform the same task several
consecutive times. For example, editing commands automatically repeat when the modal
commands option is set to on (the default).
October 2002
347
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Selecting Objects by Filtering
The Symbol Selection Filter form and the Schematic Selection Filter form let you specify
which object types you can select manually for editing. This is especially useful when you
have 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 capabilities
for 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.
If you are in the symbol editor, the Symbol Selection Filter form appears.
October 2002
348
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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
select for editing.
The option none turns off all object types.
3. Click OK.
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.
October 2002
349
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
If you are in the schematic editor, the Schematic Select All form appears.
If you are in the symbol editor, the Symbol Select All form appears.
Symbol Select All
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.
October 2002
350
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Note: This command does not modify the selection filter settings that you set using Options
– Select – Filter.
Selecting Objects by Property
You can limit the selection set by specifying that the software select only those objects with
certain 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.
October 2002
351
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
You usually look for objects that have a particular property value. You can also use the
relational operator cyclic field to control which objects are selected.
3. Click Show Object Filter to make sure the object type is selectable.
4. Click OK.
The software highlights the specified objects in the design window.
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 list
using 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.
Add New Property for Search
October 2002
352
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
3. In the Property Name field, 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 Symbol
Select By Property form.
Selecting Objects by Filtering
The Selection Filter form lets you specify which object types you can select manually for
editing. This is especially useful when you have 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 capabilities
for pins only. As a result, if you 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.
If you are in the symbol editor, the Symbol Selection Filter form appears.
October 2002
353
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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
select for 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 field
on 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
October 2002
354
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Property Type
Description
ILList
SKILL list
NLPExpr
Expression evaluated by the netlister substitution language
fileName
Name of a file
time
Time and date
hierProp
No value
Object and cellview property values must correspond to the property type shown in the Type
cyclic 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 maximum
value to define a range.
■
The minimum and maximum values must be valid for the int or float type. The value can
be 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 separated
by spaces.
■
The individual word specified represents the only possible values for this property. If the
Choice 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
October 2002
355
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Editing Object Properties
Properties describe specific characteristics of a design object, such as values of wires and
pins. You can add, delete, or modify properties.
This section provides information about the following:
■
Applying Edits to Objects and Displaying Object Types on page 356
■
Adding Object Properties on page 357
■
Deleting Object Properties on page 358
■
Modifying Object Properties on page 359
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 To option consists of up to three cyclic fields that you use to specify the group
of objects whose properties you want to edit.
A current object exists when you select multiple objects in a selected set. The current
object is highlighted in a color different from the selection highlight.
When you configure the Apply To cyclic fields to apply changes to multiple objects, the
system highlights all affected objects (other than the current object) in a different color.
October 2002
356
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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.
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.
October 2002
357
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
6. On the Edit Object Properties form, click OK to add the properties to the database object.
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 database
object.
October 2002
358
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Modifying Object Properties
To modify 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 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 Object
Properties form.
6. On the Edit Object Properties form, click OK to modify the properties on the database
object.
October 2002
359
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Editing Specific Object Properties
Before you can edit object properties, you must be in edit mode. You can edit object
properties that describe the following objects:
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
You can also edit
System properties
Cellview properties
User-defined properties
VHDL properties
CDF properties
Analog Design Environment properties
Caution
To avoid confusion when text, labels, or names actually contain
underscore characters, Cadence does not recommend that you enable
the Overbar display option. It is provided only for backward compatibility
with prior releases.
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.
October 2002
360
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
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 your
schematic
If you clicked on a block in your design,
❑
The Magnification, Origin, and FreezePinCreate fields appear when you enable
the Show system field
To automatically add a pin when you add a wire to a block, turn on
FreezePinCreate.
You can change the direction and name of a block pin when you enable the Show
system button.
To change the Instance Name default field, see Changing the Default Instance
Name Prefix.
October 2002
361
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
3. Click OK.
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.
Edit Object Properties
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 order
either manually or by copying.
Note: CDLOUT, Verilog-XL Integration, and VHDL Integration support the portOrder
property.
To manually redefine the logical pin ordering for netlisting, do the following:
October 2002
362
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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.
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.
October 2002
363
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
3. Choose a view name from which to copy the pin order from the available choices on the
form.
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 cellview
that is out of order with the current pin order.
Port Order Mismatch
The following views of "test1/sheet001" are out of sync
with "test1/sheet001" schematic port order.
View
functional
State
Ports are out of order
The view name that is
out of order
Action
Requires Manual Update
The reason the view is
out of order
The action you can take to
resolve the mismatch
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, this
command opens the Edit Pin Order form so you can verify or redefine the new pin ordering.
October 2002
364
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
Edit Object Properties
3. Change the Height, Font, or Justification fields.
4. Click OK.
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.
October 2002
365
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
3. Edit the width value of the wire.
4. Click OK.
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.
October 2002
366
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
3. Change the Height, Font, or Justification fields.
4. Click OK.
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.
October 2002
367
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
3. Click Add, Delete, or Modify.
4. Edit the form that appears.
5. Click OK on both forms.
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.
October 2002
368
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
3. Change the Height, Font, or Justification fields.
4. Click OK.
Resetting Invisible Labels
If you turned off label display on the Edit Object Properties form while editing a label, you can
do 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.
October 2002
369
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
All the visible labels appear as nonbinding 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 remain
visible when you quit the command.
When you click again on a label to deselect it, it starts blinking again, indicating it will
remain 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.
The Reset Invisible Labels form appears.
Reset Invisible Labels
1. Turn on visible.
All the invisible labels remain highlighted but stop blinking.
2. Click Hide to close the Reset Invisible Labels form.
3. Press the Esc key to end the command.
The selected labels remain visible in your design, regardless of the Selection Filter
settings.
October 2002
370
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Editing netSet Properties
Refer to Adding Net Expression Labels to Create an Inherited Connection on page 167 and
Adding netSet Properties to Create an Inherited Connection 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.
The Edit Object Properties form appears and displays text in the Note Text field.
Edit Object Properties
You can type a note to document your design. You can also read
in (or import)
an ASCII file from disk.
3. Make your changes using the keystrokes on the following table.
4. Click OK.
October 2002
371
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
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
■
Delete text
Editing Commands
Key Sequences
Adding text
Adds a new line
Return, Shift-Return,
Control-j, ControlReturn, 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)
October 2002
372
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
Editing Commands
Key Sequences
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
Moves to beginning of line
Control-a
Moves the cursor forward to the
next 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 Note Shape Properties
To change the line property of a note shape from a solid line to a dashed line or to reposition
a note shape using coordinates, do the following:
1. Click a note shape in your design.
October 2002
373
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
2. Choose Edit – Properties – Objects.
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.
Editing Symbol Shape Properties
To change the width property of a symbol shape from narrow to wide or to reposition a symbol
shape using coordinates, do the following:
1. Click a symbol shape in your design.
2. Choose Edit – Properties – Objects.
October 2002
374
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears. The form appearance changes to show all
properties for the type of object selected.
Edit Object Properties
3. Change Width or the position of the symbol shape.
4. Click OK.
You can also use the Move or Stretch commands for repositioning.
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.
October 2002
375
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears. The form appearance changes to show all
properties for the type of object selected.
Edit Object Properties
3. Change the Direction cyclic field of the symbol pin.
4. Click OK.
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.
October 2002
376
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears. The form appearance changes to show all
properties for the type of object selected.
Edit Object Properties
3. Change the properties of the label and click OK.
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.
October 2002
377
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Object Properties form appears.
Edit Object Properties
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.
Editing User-Defined Object Properties
To edit visible user-defined object properties, values, and their display attributes, do the
following:
1. Click the object property.
2. Choose Edit – Properties – Objects.
The Edit Object Properties form appears. The form’s appearance depends on whether
you click the property master or a property instance.
October 2002
378
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
When you select a user-defined property master, the form displays values for Master
Value and Local Value.
Edit Object Properties
You cannot edit the Master Value field.
October 2002
379
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
When you select a user-defined property instance, the Edit Object Properties form
displays values for Name and Value.
Edit Object Properties
3. Change the property values of Local Value, Height, Font, or Justification.
4. Click OK.
Passing Parameters in a Design
To pass a parameter from the symbol view to the schematic, set up a CDF parameter for the
parameter under consideration. Do the following:
1. In the schematic, choose Edit Properties – Object on the instance and change the
value of the instance parameter from a fixed value to, for example, pPar("rb").
2. Create the symbol view by choosing Create Cellview – From cellview and make
appropriate drawing shape changes to the symbol.
3. Save the symbol view.
4. Edit the CDF for this component (CIW – Tools – CDF – Edit).
The Edit Component CDF form appears.
October 2002
380
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
5. Make sure the CDF type is BASE, and click Add in the Component Parameters section
to add the component parameter rb (from the example above).
The Add CDF Parameter form appears.
6. In the Add CDF Parameter form,
a. Set paramType to string.
b. Set parseAsNumber to yes.
c. Set the units cyclic field to an appropriate value.
d. Set parseAsCEL to yes.
e. Set name to rb.
f. Set prompt to the value you want the system to display as the prompt.
g. Set defValue to an appropriate value.
Leave all other fields as they are.
Note: Do not use artParamInToolDisplay('rb) in the display field. Leave the display
field blank if you always want this parameter to show up in the Add Component, Edit
Property, and Create Instance forms. The default is to always display the parameter.
7. Click OK on both the Add CDF Parameter and Edit Component CDF forms.
When placing an instance, specify a value for rb and it will get passed to the schematic view.
Editing Cellview Properties
While using the Edit – Properties – Cellview command, you can add, delete, and modify
the properties that appear on the form.
To add, modify, or delete properties, open a subform. You use the subform to specify the
property 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 the
design window.
To display cellview properties that you want to edit, do the following:
1. Choose Edit – Properties – Cellview.
October 2002
381
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Edit Cellview Properties form appears.
Edit Cellview Properties
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.
October 2002
382
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
Add Property
4. Type a new property name, and give it a value.
5. Click OK.
6. On the Edit Cellview Properties form, click OK.
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.
October 2002
383
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Delete Property form appears.
Delete Property
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.
The Edit Cellview Properties form appears.
2. Set the Show option to user.
3. Click Modify.
October 2002
384
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Modify Property form appears.
Modify Property
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 the
following:
1. Choose Edit – Properties – VHDL.
October 2002
385
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The VHDL Properties form appears.
VHDL Properties
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 User
Guide for the Virtuoso Schematic Composer.
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.
October 2002
386
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
The Add Generic form appears.
Add Generic
3. Type a generic name, a type, and a value.
4. Click OK.
5. On the VHDL Properties form, click OK.
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.
Delete Generic
3. Type the generic name you want to delete.
October 2002
387
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
4. Click OK.
5. On the VHDL Properties form, click OK.
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.
Modify Generic
3. Type a generic name, a type, and a value.
4. Click OK.
5. On the VHDL Properties form, click OK.
Setting the Tool Filter
This section explains how to edit analog circuit design properties using the Tool Filter.
To display the analog circuit design simulators that are active in your cellview, do the following:
1. Choose Edit – Properties – Tool Filter.
October 2002
388
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing 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.
By default, spectre, spectreS, auCdl, and auLvs are selected on the Tool Filter
form. You can override this default by setting auCore.toolFilter defaultTools in
your $HOME/.cdsenv file. You can also change the default within your entire site by
changing the dfII/etc/tools/auCore/.cdsenv file. For example, if you want to
specify only spectre as the active default, add the following to your .cdsenv file:
auCore.toolFilter defaultTools string "spectre" nil
4. Select the tools for the Tool Filter display.
5. Click OK.
October 2002
389
Product Version 5.0
Virtuoso Schematic Composer User Guide
Editing Properties
October 2002
390
Product Version 5.0
Virtuoso Schematic Composer User Guide
9
Traversing the Design Hierarchy and
Creating a Design Configuration View
This chapter provides information about the following topics:
■
About the Design Hierarchy on page 392
■
Exploring the Design Hierarchy on page 393
■
About the Configuration View of a Design Hierarchy on page 396
■
About the Hierarchy Editor on page 397
■
Traversing a Design Hierarchy on page 398
■
Displaying the Current Hierarchical Scope on page 405
■
Creating a New Configuration View for the Design Hierarchy on page 405
■
Opening an Existing Design Configuration View on page 406
■
About the Hierarchy Editor within the Schematic Composer on page 408
■
Working with a Design Configuration within the Schematic Composer on page 408
October 2002
391
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
About the Design Hierarchy
A design hierarchy comprises many levels of a single design. Each time you descend into the
design hierarchy, you view a smaller division of the larger design in greater detail. Working in
smaller divisions of a design lets you more effectively distribute work across multiple design
engineers or groups.
A single instance in a hierarchical design typically represents multiple types of different
models. For example, an ASIC may include an underlying gate-level schematic, a layout, or
a number of different behavioral descriptions, or a model. A model card is a collection of
default parameters for a device. A model file is a collection of model cards. The specification
of model cards is different based on the tool and the interface you use.
You have the flexibility to define the relationship between an instance and its various
representations. You can descend into any particular lower-level design representation for
examination or editing.
October 2002
392
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
Exploring the Design Hierarchy
The following diagram shows an ALU and an ADDR symbol view instantiated in a schematic
view.
schematic
Top-Level Design
ALU instance
symbol
Top-Level
Schematic
schematic
Middle-Level
Schematic
ALU
symbol
ADDR instance
symbol
ADDR
symbol
October 2002
vhdl
functional
VHDL
ALU
text file
Verilog
ALU
text file
schematic
Lower-Level
Schematic
393
behavioral
Verilog
ADDR
text file
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
The following diagram shows the path (library, cell, and view name) for each view. You can
traverse into any existing view of the cell that is referenced by an instance and whose view
name has a corresponding view type in a registered tool.
myLib/top/schematic
Top Level
64-bit
microprocessor
ALU instance
Middle Level
myLib/ALU/symbol
myLib/ALU/schematic
VHDL
ALU
text file
ALU
ALU
myLib/ALU/vhdl
ADDR
instance
myLib/ALU/functional
Verilog
ALU
text file
Lower Level
myLib/ADDR/symbol
myLib/ADDR/schematic
ADDR
ADDR
myLib/ADDR/behavioral
Verilog
ADDR
text file
Top-Level Schematic View
The following illustration emulates descending from a top-level
I/O register schematic into a middle-level I/O latch schematic.
October 2002
394
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
If you click the I3 IOlatch instance shown below, you descend into the schematic view (see
next page) of an I/O latch for the instance named I3.
I0
I1
I2
I3
Middle-Level Schematic View
If you click the fflop1 component shown below, you descend from a middle-level I/O latch
schematic into the lower-level fflop1 schematic (see next page).
October 2002
395
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing 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 this
particular design, the fflop1 schematic. The fflop1 schematic instantiates the primitive
logic 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 rather
than the original schematic so that you can access the expansion information.
October 2002
396
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
The Cadence® hierarchy editor creates a configuration view that provides expansion
information controlling how the design hierarchy can be traversed.
designLib
Library name
pulsegen
Top cell name
Configuration
views
schematic
layout
mixedConfig
logicConfig
View names
In the above example, the library designLib contains two configuration definitions with the
view names mixedConfig and logicConfig. You can use the hierarchy editor to open
these views.
About the Hierarchy Editor
The hierarchy editor is a tool you use to create and edit a configuration. A configuration is a
set of rules that defines which cellviews under a top-level cell are to be considered part of the
design 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 to
manage 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.
October 2002
397
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing 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 Design menu. When
you 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 is
not 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 first
available view in the list.
■
Use the Design – Hierarchy – Edit In Place command to access the symbol editor
from within the schematic editor environment. The schematic, while not editable, shows
you the relationship of your lower-level symbol to the entire schematic.
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.
If you do not have edit permission to descend, you are prompted to use read mode.
2. Select an instance in your design to descend into.
When you postselect the instance using the default settings, you descend directly into
the 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 for
descending 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 lets
you choose to go to the index sheet or a specific sheet number.
October 2002
398
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
■
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, the
Descend form opens immediately.
■
If the instance is iterated, the Descend form lets you choose the iteration number you
want 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 which
view you want to descend into.
If the descend target is use viewNameList, type view names in a specific order in the
View Name List field of the Options – Editor command.
The following three forms show data for different instances.
❑
Using a single instance representing a single-sheet schematic on the Descend form.
❑
Using an iterated instance representing a single-sheet schematic on the Descend
form.
Descend
October 2002
399
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
❑
Using a single instance representing a multisheet schematic on the Descend form.
Descend
If the Descend form opens, do the following:
1. Complete the form depending on your data and options.
2. Click OK.
If you select a graphic view to descend into, either the schematic editor or the symbol
editor opens.
If you select a text view, a text editor window opens. Some text editors automatically
check your text file for syntax errors. If the editor finds errors, the Parser Error/Warnings
form 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.
October 2002
400
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
You descend into the symbol view of the instance to use the symbol editor while still
viewing the graphics of the higher-level schematic. The schematic, while not editable,
shows you the relationship of your symbol to the entire schematic.
GATE_REP
N1
GATE_REP
instance, symbol
view in the symbo
editor
pin1
[@instanceName]
N2
N5
N3
N6
Schematic view
in the symbol
editor, not
editable
N4
Descending Using the View Name List
By default, when you descend into another view, the system prompts you for the destination
view. If you want to bypass this step to descend directly into a view in a certain order, you can
use 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 the
view name list box, do the following:
1. Choose Design – Hierarchy – Descend Edit / Read.
2. Press the F3 key.
October 2002
401
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
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 viewNameList for 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 List option to set up the precedence order for the
view to 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 List field in the order in which you want to descend.
For example:
schematic symbol vhdl functional abstract layout synthesis
The arrangement sets up the precedence order of views to use when you descend into
another view.
3. Click OK.
The hierarchy configuration is more powerful and flexible than the View Name List method for
specifying design comparisons. You edit a hierarchy configuration using the hierarchy editor.
The View Name List option does not work in configuration mode.
October 2002
402
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing 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.
Using OSMs to Traverse the Design Hierarchy
To use object-sensitive menus (OSM), make sure you turned on the OSM option. The default
is off.
1. Place the cursor over an instance.
2. Press the middle mouse button.
The OSM pops up.
3. Select a Descend command.
October 2002
403
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
4. With the cursor over an open area in the descended view, use the same process to return
to the previous level.
Instance
Stretch
Copy
Delete
Properties ...
Descend Edit ...
Descend Read ...
Hierarchy commands
Edit In Place
Create Cellview
Rotate
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
October 2002
404
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
Command
Bindkey
Return
Control-e
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 and
view 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 of
the current window.
Info
Hierarchical
IO Register
6
5
Scope is:
schematic
(IOLatch
(FFlop1
Top-level cell name
Top-level view name
schematic)
schematic)
List of the instance
names you have
descended into with their
cell name and view
name.
2. Click Close to close the dialog box.
Creating a New Configuration View for the Design
Hierarchy
To create a new configuration view of a design and open the hierarchy editor, do the following:
October 2002
405
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
1. From the Command Interpreter Window (CIW), choose File – New – Cellview.
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.
Opening an Existing Design Configuration View
To open an existing design configuration view, do the following:
1. In the CIW, choose File – Open.
October 2002
406
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
The Open File form appears.
2. Set View Name to config for the schematic design you want to open.
3. Click OK.
The Open Configuration or Top CellView form appears.
config”
October 2002
407
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
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 this
configuration.
4. Click OK.
Notice the window banner changes to indicate you opened the schematic view in the
context of this configuration:
Virtuoso Schematic Editing: mixedVHDL designA
designA config
schematic
Config: mixedVHDL
For details on opening a configuration view, refer to the Hierarchy Editor User Guide.
About the Hierarchy Editor within the Schematic
Composer
The hierarchy editor integration with the Virtuoso® schematic composer provides a
convenient way to synchronize the configuration database with the Cadence design
framework II (DFII) database. From the Hierarchy-Editor menu on the schematic composer
window, 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: mixed-signal
circuit design environment, analog circuit design environment, Verilog®-XL simulator, and
VHDL integration.
The Hierarchy-Editor menu provides four commands:
■
Edit Configuration
■
Update
■
Set Instance Binding
■
Show Views Found
Working with a Design Configuration within the
Schematic Composer
This section covers the commands available from the Hierarchy-Editor menu within the
schematic composer.
October 2002
408
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
■
Opening a Hierarchy Editor Menu within the Schematic Composer on page 409
■
Editing a Design Configuration within the Schematic Composer on page 409
■
Setting Instance Bindings on page 409
■
Updating a Design Configuration on page 411
■
Building a New Inherited View List on page 411
■
Showing Views Found on page 413
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 the
inherited view list. You can also set the view to use and the inherited view list from the
hierarchy editor, but the Set Instance Binding command from the schematic composer
gives you 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.
October 2002
409
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
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 To cyclic field to display current instance (the main selection), all
selected instances (in a group selection, including the main selection), or all
instances (in the cellview).
If you choose all selected or all instances, another cyclic field appears on the form.
Choose same master or any master.
4. Select View To Use to be bound to these instances.
Views common to all of the selected instances are available for selection. If you want to
revert to the default bindings for your configuration in the hierarchy editor, set the View
To Use field to <Default>.
5. To keep the inherited view list as is and not build a new inherited view list (default), turn
on the As Is field.
You can change the inherited view list. To build a new inherited view list, refer to the
following section.
6. Click Apply to make your changes.
Your changes are reflected in the View To Use field in the hierarchy editor for the
instances you selected.
October 2002
410
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
7. To propagate your changes to subordinate instances and save your changes, choose
Hierarchy-Editor – Update in the schematic window.
All instances that are affected by your View To Use selection are changed in the
hierarchy editor and saved.
Updating a Design Configuration
After you edit the configuration, such as defining a new instance binding, you need to update
the information in the hierarchy editor. To update a configuration from the schematic
composer, do the following:
➤
Choose Hierarchy-Editor – Update.
If you are using the schematic composer to edit cellviews, you must save them in order to
have 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 Binding and completing the steps in the
previous section, 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.
October 2002
411
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
The Build Inherited View List form appears.
The Available Constants/Views list 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 the
Inherited View List list box.
4. Use the Up and Down buttons to reposition entries for using the appropriate views in a
specific order.
5. To specify a view name that is not listed, type the name in the field below the Inherited
View 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 – Update in the schematic window to update the hierarchy
editor and save the changes.
October 2002
412
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
Your changes are propagated through subordinate instances in the hierarchy editor and
are saved in both the configured schematic and in the hierarchy editor 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 show
views 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 current
schematic cellview. The Highlight Layers option shows the colors used to highlight the
instances with the corresponding views. The command graphically shows the current
view 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 views
used by all the instances.
October 2002
413
Product Version 5.0
Virtuoso Schematic Composer User Guide
Traversing the Design Hierarchy and Creating a Design Configuration View
October 2002
414
Product Version 5.0
Virtuoso Schematic Composer User Guide
10
Checking Designs
This chapter describes the procedures you use for checking your design.
■
Features of the Check Commands on page 416
■
Setting the Check Options on page 418
■
■
■
❑
Setting User Preferences on page 418
❑
Setting Schematic Rule Checks on page 420
Checking a Design on page 425
❑
Checking and Saving a Design on page 426
❑
Checking the Current Cellview on page 428
❑
Checking a Design Hierarchy on page 429
❑
Checking a Design Hierarchy in the Configuration Context on page 430
❑
Checking Multisheet Schematics on page 431
❑
Checking a Label Attachment on page 432
❑
Cross-View Checking on page 433
Bypassing Checks on page 435
❑
Bypassing Floating Pin Checks on page 435
❑
Bypassing Unconnected Wire Checks on page 436
Resolving Check Errors on page 438
❑
Finding Errors and Warnings in a Design on page 440
❑
Mapping an Error Message to a Marker on page 441
❑
Managing the Error Message List on page 441
❑
Assigning an ignoreCheck Property on page 441
October 2002
415
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
■
❑
Suppressing Message Displays on page 442
❑
Deleting an ignoreCheck Property on page 442
❑
Deleting All ignoreCheck Properties on page 442
❑
Deleting Individual Markers on page 443
❑
Deleting All Markers on page 443
Monitoring a Verilog or VHDL Simulation State on page 444
❑
Using Cross Selection on page 445
❑
Opening an SHM Database on page 445
❑
Displaying the Simulation State of Wires and Pins on page 447
❑
Setting a Time Value for Displaying Signal Results on page 448
❑
Setting the Time Scale on page 449
❑
Setting the Display Radius on page 450
❑
Synchronizing with Simulation at Breakpoint on page 451
❑
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 for
connectivity, errors, and rule violations.
The Cadence® netlisters cannot generate the netlist until you check your design and, if
necessary, correct any errors found during the check process.
You do not need to correct any warnings found during the check process, but you should
review 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
October 2002
416
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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 commands
simultaneously 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 logical
and 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 –
Check and 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 check
the 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
October 2002
417
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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: Check and Check Rules Setup are accessible from both the Options menu and the
Check menu.
Setting User Preferences
To set user preferences, do the following:
1. Choose Options – Check.
October 2002
418
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
The Schematic Check Options form appears.
2. Specify the options you want to apply to your check.
3. Click OK.
October 2002
419
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Setting Schematic Rule Checks
The Setup Schematic Rules Checks form lets you set the rules for running the SRC. Once
you set these rules and SRC is enabled on the Schematic Check Options form, you can use
any one of the following Check commands to run SRC checks: Design – Check and Save,
Check – Current Cellview, and Check – Hierarchy.
To set the rules for running the SRC, do the following:
1. Choose Options – Check Rules Setup.
The Setup Schematic Rules Checks form appears.
2. Set the Packaged Checks cyclic field to a specified predefined check.
The items listed in the Packaged Checks cyclic field are defined by the
schSRCPackagedChecks environment variable. Packaged checks are a means of
setting a set of severities using a single selection.
3. Set the severity levels for the following rules:
❑
Logical checks the high-level connectivity data.
❑
Physical checks for unconnected wires, offset labels, and overlapping instances.
❑
Name checks for syntax and collisions for the Cadence VHDL verification tool or the
Verilog®-XL simulator.
❑
Inherited Connections checks existing or missing inherited connections.
❑
AMS checks analog mixed signal netlisting checks.
4. Click OK.
October 2002
420
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Logical Checks
Description of Logical checks
October 2002
421
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Physical Checks
Description of Physical checks
October 2002
422
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Name Checks
Description of Name checks
The following specifics apply to this form:
■
Connection By Name field. To run this check on a net marked as being connected by
name, set the severity level to error. If your design has errors after checking it, you can
highlight all wire segments for that net by choosing Edit – Search – Find and searching
October 2002
423
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
on that net name. Your design will show you which net is disjointed and where you need
to add wire segments.
■
Text fields Instance Name Expression, Pin Name Expression, and Net Name
Expression. To use these fields, set the corresponding syntax severity level to either
warning or error. In the text fields, use the 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 regular expression, an appropriate message is reported:
pin name "name" does not match expression "regular expression"
You can precede the expression in these text fields with an exclamation point ( ! ) to
report names that do not match a specified regular expression. The message takes this
form:
net name "name" does not match expression "regular expression"
If these text fields consist of more than one signal or bundle, the name check is applied
only to the base name portion of the name.
Inherited Connections Checks
Description of Inherited Connections checks
October 2002
424
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
AMS Checks
Description of AMS checks
The AMS CDBA-to-Verilog-AMS translator is a mixed-signal translator that supports the
Verilog-AMS language standard. The purpose of the AMS checks is to give you feedback
regarding CDBA-to-Verilog-AMS translation without having to actually generate a netlist. The
checks must be enabled in order for them to run, but enabling netlisting is not necessary. By
default, this feature is not enabled. For details, see the Cadence AMS Simulator User
Guide.
Checking a Design
You have several options for checking a design:
■
Checking and Saving a Design on page 426
October 2002
425
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
■
Checking the Current Cellview on page 428
■
Checking a Design Hierarchy on page 429
■
Checking a Design Hierarchy in the Configuration Context on page 430
■
Checking Multisheet Schematics on page 431
■
Checking a Label Attachment on page 432
■
Cross-View Checking on page 433
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.
October 2002
426
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
After the check is completed, the Command Interpreter Window (CIW) shows the results
of the check, and a dialog box appears.
icds - Log: /usr1/mnt1/mara/CDS.log
Schematic Check
Flashing highlighted markers in your schematic indicate the objects that have errors or
warnings.
2. On the dialog box, click Close.
The Cadence® netlisters cannot generate the netlist until you check the design and, if
necessary, correct any errors found during the check process.
You do not need to correct any warnings found during the check process, but you should
review them before you attempt to generate a netlist.
If no errors exist, the system automatically saves your design.
October 2002
427
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
If errors exist, the system prompts you to save your cellview. You can change this default
behavior by altering the value of the Check and Save Action on Error option on the
Schematic Check Options form.
Check and Save
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 the
results 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.
October 2002
428
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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.
sample basic vhdl qalib2 test1 test2
schematic symbol
Note: The appearance of this form is different when the schematic is in the context of a
design 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 Check
Options form or Setup Schematic Rules Checks form.
October 2002
429
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
If errors are found, they are listed in the CIW.
icds - Log: /usr1/mnt1/mara/CDS.log
If you have errors, the Save Schematics with Errors form appears.
Save Schematics with Errors?
Note: To save time, you can check only those cellviews that have not been checked since the
last time you saved your cellview. To customize the view name list, refer to the
schCycleViewNameExclusionList 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 – Hierarchy command does not use the view name list. Instead, the command
uses the schematic associated with its configuration data through partitioning. Partitioning is
the process of separating the cells or blocks of a design into sets that will be simulated in
either the digital or analog domain. Refer to “Partitioning Your Design” in the Mixed-Signal
Circuit Design Environment User Guide.
October 2002
430
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
If you are checking a hierarchy in the design configuration context, the Check Configuration
Hierarchy form appears, and the View Name List field is replaced with two fields that display
the configuration name and the name of the top-level cellview.
Check Configuration Hierarchy
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 following
operations:
■
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 the
index schematic
October 2002
431
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
■
Flags occur only when the connector imports or exports a signal that does not connect
to 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 a
schematic pin. If you modify some of the sheets in your design so that an offsheet
connector on a specific sheet becomes disconnected, an error message appears. If your
signals implicitly attach across page boundaries, an error message appears; signals
need 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
connector with the same name on another sheet
Note: Whenever you check a multisheet schematic using the Check – Current Cellview or
Check and 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), do
the following:
1. Choose Check – Label Attachment.
The Show Label form appears.
2. In the Labels of cyclic 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 associated
object. A flashing box appears around any labels not attached.
October 2002
432
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Cross-View Checking
You can check symbols using the Check – Cross View Check command. It provides the
following capabilities:
■
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 found
in the symbol.
❑
The software displays blinking highlighted markers in your symbol to indicate the
objects with errors or warnings.
October 2002
433
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
❑
The CIW displays a one-line explanation of each error and warning.
icds - Log: /usr1/mnt1/mara/CDS.log
Cross-View Checker
Cross View Check
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 and
schematic cellviews. If, for example, you place input pins in the schematic editor for bus A as
A<1>, A<2>, and A<3>, but in the symbol cellview you unexpand the bus as A<3:1>, crossview 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)
October 2002
434
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Bypassing Checks
Besides changing check options to ignored, you can bypass floating pin checks and
unconnected 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.
October 2002
435
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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.
A
B
C
A<0:3>
Y
nand3
noConn symbol
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:
October 2002
436
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
1. Choose Add – Instance.
The Add Instance form appears.
2. Click Browse.
October 2002
437
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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.
onPageConn symbol
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 flashing
highlighted marker on each object that generated an error or warning.
If your design has errors or warnings, the Check – Find Marker command lets you view
them easily by listing the corresponding error and warning messages in the Find Marker form.
October 2002
438
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
You can use the Find Marker form to narrow your search by limiting the list box display to a
particular severity level. You can also use the Find Marker form to expand your search by
expanding the scope.
This section provides information about the following:
■
Finding Errors and Warnings in a Design on page 440
■
Mapping an Error Message to a Marker on page 441
■
Managing the Error Message List on page 441
■
Assigning an ignoreCheck Property on page 441
■
Suppressing Message Displays on page 442
■
Deleting an ignoreCheck Property on page 442
■
Deleting All ignoreCheck Properties on page 442
■
Deleting Individual Markers on page 443
■
Deleting All Markers on page 443
October 2002
439
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Finding Errors and Warnings in a Design
To search for error markers in your design after you run one of the Check commands, do the
following:
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 the
design window.
2. Click the Next and Previous buttons to navigate through the message list.
If you selected the Zoom To Markers button, the editor zooms in on each associated
marker and highlights the marker in the design window.
October 2002
440
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Mapping an Error Message to a Marker
To find the message that corresponds to a specific marker in the design window, do the
following:
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 ignoreCheck
property to a net, an instance, or an instance terminal in your design. The ignoreCheck
property operates in conjunction with the Show Ignored option on the Find Marker form.
When you 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
warning messages 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 the
following:
1. Choose Check – Find Marker.
The Find Marker form appears.
2. Click the message in the list box.
3. Click the Ignore button.
October 2002
441
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
The software assigns an ignoreCheck property to the object and displays an asterisk
next 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 Ignored option.
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 the
message 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.
October 2002
442
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
The software removes all the ignoreCheck properties and deletes the asterisks from the
messages 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 – Marker command and click the Delete button at the
top of the form to delete the current marker.
Deleting All Markers
To find and delete all the markers of a particular severity level, and in a particular cellview or
hierarchy, 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.
October 2002
443
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Monitoring a Verilog or VHDL Simulation State
To debug a Cadence VHDL design, you can set breakpoints or traces on certain objects. You
can use the Schematic Monitors commands only with an ongoing Verilog-XL or VHDL
session or 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 the simulation data source SHM file.
The Schematic Monitors commands let you observe the simulation state directly on wires
or pins that represent signals, giving you a sense that simulation is being performed directly
on the design that you created.
This section describes the procedures for the following:
■
Using Cross Selection on page 445
■
Opening an SHM Database on page 445
■
Displaying the Simulation State of Wires and Pins on page 447
■
Setting a Time Value for Displaying Signal Results on page 448
■
Setting the Time Scale on page 449
■
Setting the Display Radius on page 450
■
Synchronizing with Simulation at Breakpoint on page 451
■
Closing the SHM Database on page 451
October 2002
444
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
Using Cross Selection
To enable cross selection to other Cadence applications via interprocess communication and
to 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 SHM
database can be opened by multiple schematic windows. You can open a new SHM database
at any time. You must open an SHM database to display feedback from the Verilog-XL
simulator 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.
October 2002
445
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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 status
banner is updated to show the SHM database name, the current simulation time, and the
current design scope.
The Open Data command connects the schematic to an SHM database, which exists
in one 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-XL
simulator, any monitors you add are automatically probed. If monitors exist on your
schematic, they display signal data from the new SHM database.
October 2002
446
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking 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 the
signal if it exists in the database. Add net names from wires, pins, or instances selected
in 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 warning
is issued.
If the signal name is made up of multiple bits, the state is displayed in bus format. The
default bus radix is hexadecimal.
The following list shows each format and an example of how the schematic monitor
appears.
ST0 (default)
<state>
<time>:<state>
2.35:ST0
<name>=<state>
clock=ST0
<time>:<name>:<state>
2.35:clock:ST0
October 2002
447
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
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.
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 of
the monitors in the window. Monitors displaying the time show what time the signal
transitioned to its current state. If you are synchronizing the monitors with your simulation, you
can still set the time manually. You do not have to turn synchronization off to use the Set Time
command.
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.
October 2002
448
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
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 through
simulation history. The value above the slider changes to reflect simulation time
values. Release the button when you reach the new time value.
❑
In the Move field, click the minus to move backward through time by the time interval
you set in the interval field. Click the plus to move forward through time by the time
interval you set in the interval field.
❑
In the prev event and next event, select the monitors that display the results of the
signals you are interested in. Click prev event to move directly to the most recent
transition of the signals monitored by the selected monitors. Click next event to
move directly 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
the Schematic Monitors – Set Time command form.
Note: You must open a simulation database before you can use the Set Time Scale
command.
October 2002
449
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
To change the units, scale factor, and precision of time values displayed in the status banner
and 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 displayed
in 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.
The Set Radix form appears.
2. Click the monitors from the schematic cellview to display bus values.
October 2002
450
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
3. Choose a new radix.
4. Click OK.
Synchronizing with Simulation at Breakpoint
Synchronization updates the schematic monitors each time you interrupt your simulation. The
updated 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 at
simulation breakpoints.
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 the
database as a source for those windows as well.
After you close a database, all monitor values are cleared. The monitors and their empty
format fields remain in your schematic window. The simulation time and the SHM
database name disappear from the status banner.
October 2002
451
Product Version 5.0
Virtuoso Schematic Composer User Guide
Checking Designs
October 2002
452
Product Version 5.0
Virtuoso Schematic Composer User Guide
11
Plotting 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 System Options to Plot on page 454
■
Setting Up Printer Options to Use Various Paper Sizes on page 454
■
Plotting a Design on page 455
■
❑
Plotting a Library on page 456
❑
Plotting a Cellview on page 457
❑
Plotting Part of a Schematic on page 459
❑
Plotting Without a Header Page for Every Session on page 460
❑
Adding Notes to a Plot on page 460
❑
Setting Plot Options on page 461
❑
Plotting a Color Schematic in Black and White on page 463
❑
Changing the Background Color of a Schematic Window on page 464
Using a Plot Template File on page 465
❑
Creating a Plot Template File on page 465
❑
Loading a Plot Template File on page 468
❑
Creating a Default Plot Template File on page 469
■
Checking the Queue Status on page 470
■
Canceling a Plot Job on page 470
October 2002
453
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
Setting Up System Options 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.
Refer to your operating system documentation for specifics about your plotter.
For details about configuring your operating system for plotting, refer to the Plotter
Configuration 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 (output
device), which you define in your operating system.
4. Create a site-specific version of the plot configuration file as detailed in the Plotter
Configuration 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 working
or home directory.
The .cdsplotinit file is used to define the list of available printers and plotters and
their characteristics.
Setting Up Printer Options to Use Various Paper Sizes
Cadence Plotting Services software does not specify paper trays because there is no
standard method that plotters use to select paper trays. However, if you are using a PostScript
plotter, you can use PostScript printer definition (PPD) files to set up various paper sizes and
paper trays.
PPD files are available at
www.adobe.com/supportservice/custsupport/LIBRARY/pdrvwin.htm
Click on the manufacturer name of your plotter to go to the download page for the PPD file for
your plotter. PPD files are not operating-system specific. You can download the Windows/
DOS versions of PPD files and use them with Cadence tools.
Include the PPD file information in your .cdsplotinit file. Notice the addition of the lines
beginning with PPD, which have been included in the following sample .cdsplotinit file
October 2002
454
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
for an HP LaserJet 5si MX PostScript plotter. These PPD lines are used to tell the printer
which paper tray to use for a given paper size.
bos13b|bos13b: \
:manufacturer=Hewlett-Packard: \
:type=postscript1: \
:spool=lp -dbos12s13: \
:query=lpstat -obos12s13: \
:remove=cancel $1 bos12s13: \
:PPDFile=./hplj5si1.ppd: \
:resolution#600: \
:maximumPages#10: \
:PPD="(A) *PageSize Letter": \
:PPD="(B) *PageSize Tabloid": \
:PPD="*Resolution 600dpi": \
:paperSize="A" 4902 6402 99 99: \
:paperSize="B" 6402 10002 99 99:
For further details on setting up PPD files, do the following:
1. Go to the SourceLink web site at
sourcelink.cadence.com
2. Click on Installation, Licensing & System Configuration Information under the
Installation heading on the left side of the SourceLink page.
You might be prompted for your SourceLink login name and password.
The Cadence Installation, Licensing & System Information page appears.
3. Click on Cadence Plotting Services.
4. Click on What’s New.
5. Click on PostScript PPD.
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
October 2002
455
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
Plotting a Library
To plot a library, do the following:
1. Choose Design – Plot – Submit.
The Submit Plot form appears.
2. In the Plot field, turn on library.
3. In the Library Name and View Name List fields, type the library you want to plot and
its views.
You can also click Browse to select the library.
October 2002
456
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
4. Change other fields or options as needed.
5. Click OK.
Plotting a Cellview
To plot a cellview, do the following:
1. Choose Design – Plot – Submit.
October 2002
457
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
The Submit Plot form appears.
2. In the Plot field, turn on cellview.
3. In the Library Name, Cell Name, and View Name fields, type the complete path to the
cellview you want to plot.
You can also click Browse to select the cellview.
4. Change other fields or options as needed.
October 2002
458
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
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.
The Submit Plot form appears.
October 2002
459
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
3. In the Plot field, turn on viewing area.
When you plot using the viewing area, you plot the cellview from which you started the
Plot command. Only the area displayed in the graphic window is plotted.
4. Change other fields or options as needed.
5. Click OK.
Plotting Without a Header Page for Every Session
To plot without a header page from a layout or a schematic, do the following:
1. Choose Design – Plot – Submit.
2. Turn off Plot With header.
3. In the Template File field, type a fully-qualified template file name.
4. Click Save.
5. Click Cancel.
6. Add the following commands in the .cdsinit file to point to the saved template file:
For layout:
lePlotTemplate = path_to_the_template_file/name_of_the_template_file
For schematic:
schPlotTemplate = path_to_the_template_file/name_of_the_template_file
Every Cadence session will now load the plot template files from the .cdsinit file and set
the header off by default in the Submit Plot form.
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.
October 2002
460
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
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 position
of 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.
October 2002
461
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
2. At the bottom of the Submit Plot form, click Plot Options.
October 2002
462
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
The Plot Options form appears.
3. Set the options.
4. Click OK on the Plot Options and Submit Plot forms.
Plotting a Color Schematic in Black and White
To plot designs in black and white instead of in grayscale, do the following:
October 2002
463
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
For postscript color plotters
In the .cdsplotinit file, set the type entry to
type=postscript1:\
Note: To change plotting back to grayscale, set the type entry to :type=postscript2:\ .
For inkjet pen plotters
The standard entry in the.cdsplotinit file denotes each color pen and its position as
follows:
white#x:black#x:red#x:yellow#x:green#x:cyan#x:blue#x:magenta#x:\
In the above example, x denotes the index number of the pen holder.
A pen plotter maps colors to six or eight pens in its pen carousel and selects colors by an
index number of the pen holder. The Cadence Plotting Services software supports eight
colors for lines and stipple patterns. The index number is the location of the pen in the
carousel.
To plot in black and white, determine the position of the black pen and specify that position
for all the other pens, except white, in the .cdsplotinit file. The software then sends all
the non-white color requests to the black pen for black-and-white plotting.
For example, if the position of the black pen is 5, specify the following in the .cdsplotinit
file:
white#0:black#5:red#5:yellow#5:green#5:cyan#5:blue#5:magenta#5:\
Changing the Background Color of a Schematic Window
To change the background color of the schematic window, do the following:
1. Open the .Xdefaults file in edit mode.
2. Change or add the option Opus.editorBackground from black to the color you
desire. For example:
Opus.editorBackground: green
3. At the UNIX prompt, type
xrdb -load ~/.Xdefaults
4. Restart your Cadence software.
October 2002
464
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
If you do not know where your .Xdefaults file is located, you can change the background
color of the schematic and layout windows by doing the following:
1. At the UNIX prompt, type
xrdb -query > xyz
This stores all the current system .Xdefaults variable settings in the file xyz.
2. In the xyz file, change or add the option Opus.editorBackground from black to the
color you desire. For example:
Opus.editorBackground: green
3. At the UNIX prompt, type
xrdb -load xyz
4. Restart your Cadence software.
Using a Plot Template File
If you want to use the same plot options for other schematics, you can store the options in a
plot template file. The plot template file stores plot options in property list format. You can use
a template file to plot schematics in batch mode.
Creating a Plot Template File
To create a plot template file, do the following:
1. Choose Design – Plot – Submit.
October 2002
465
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
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.
You can also create a plot template file using a text editor. The following list shows plot options
that you can set. All of them map to a field on the Submit Plot form.
library
cell
view
version
scope
bBox
multisheet
startsheet
endsheet
indexsheet
header
hierarchy
hierleveldown
viewlist
ignorelibs
stopcells
time
October 2002
;
;
;
;
;
;
;
text field
text field
text field
text field
text field, "/" should be the default.
not set when "Area Fit" is selected.
set when "All Sheets" or "Start Sheet" is set.
; set when "Plot Index Sheets" is set.
; set when "Plot Header" is set.
; set when "Herarchy" or "Levels Down" is set.
; set when hierarchy is set.
; set when hierarchy is set.
; set when hierarchy is set.
466
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
copy
outputfile
; plotter options form
plotter
papersize
plotsize
offset
unit
orientation
display
tmpdir
mail
; new options
plot
area
notes
noteText
;
;
;
;
current
current
current
current
value
value
value
value
of
of
of
of
plotAreaRadio
plotAreaCyclic
plot notes
user header
You can put the following sample information in the .cdsinit file and use it as a single
cellview plot template file:
schPlotOptions = ’(nil
library
"mylib"
cell
"mydesign"
view
"schematic"
version
"0.0"
multisheet
nil
indexsheet
nil
hierarchy
nil
copy
1
outputfile
""
plotter
"MP Imagen"
papersize
"A"
plotsize
(200.0 165.0)
offset
(0.0 0.0)
unit
"mm"
orientation
"Automatic"
display
"display"
tmpdir
"/usr/tmp"
mail
t
)
The following two files are samples for a hierarchical plot template file:
schPlotOptions = ’(nil
library
"mylib"
cell
"mydesign"
view
"schematic"
version
"0.0"
multisheet
nil
indexsheet
t
hierarchy
t
hierleveldown
2
viewlist
"schematic"
ignorelibs
"basic sample"
stopcells
""
October 2002
467
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
copy
outputfile
plotter
papersize
plotsize
offset
unit
orientation
display
tmpdir
mail
)
1
""
"MP Imagen"
"A"
(8.0 6.5)
(0.0 0.0)
"inches"
"Landscape"
"display"
"/usr/tmp"
nil
schPlotOptions = ’(nil
hierleveldown
0
area
"whole"
version
"0.0"
multisheet
nil
indexsheet
nil
hierarchy
nil
copy
1
outputfile
""
plotter
""
papersize
"A"
plotsize
(10.5 8.0)
offset
(0.0 0.0)
unit
"inches"
orientation
"Automatic"
display
“display”
tmpdir
"/usr/tmp"
mail
nil
header
nil
notes
nil
grid
nil
noteText
""
scope
"/"
)
Loading a Plot Template File
When you load a template file, the system reads in plot setup information that you have
previously saved.
To load a template file, do the following:
1. Choose Design – Plot – Submit.
October 2002
468
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting 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_install_dir/tools/dfII/samples/plot/schPlot.il
your_install_dir/tools/dfII/samples/plot/schMetPlot.il
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 –
Submit command for the first time. Once you change the path in your .cdsinit file,
you can use the Load button on the Submit Plot form to load other template files.
October 2002
469
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting 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.
no entries
1st
john
2nd
john
963
001
standard input
standard input
139772 bytes
1460 bytes
2. 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.
October 2002
470
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
The Plot Job Queue Status/Removal form appears.
963
no entries
1st
john
2nd
john
963
001
standard input
standard input
139772 bytes
1460 bytes
2. Select a job to cancel by clicking on the job in the text box.
3. Click Cancel Selected Plot Jobs.
4. Click OK.
October 2002
471
Product Version 5.0
Virtuoso Schematic Composer User Guide
Plotting Designs
October 2002
472
Product Version 5.0
Virtuoso Schematic Composer User Guide
12
Setting Schematic Composer Options
You can change the appearance and the behavior of the Virtuoso® schematic composer by
using the Options menu in the schematic editor, symbol editor, or Command Interpreter
Window (CIW). In general, you can choose a preference once you are in a session. When
you 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 474
■
Changing User Preferences on page 475
■
Saving the Current Window Setup on page 477
■
Viewing Bindkey Settings on page 478
■
Changing Browser and CIW Preferences on page 479
■
Changing Display Options on page 481
■
Selecting Objects Using the Filter Option on page 481
■
Setting Plot Options on page 481
■
Setting Schematic Check Options and Rules on page 482
■
Setting the Tool Filter on page 482
■
Saving Form Field Default Settings on page 482
■
Loading Form Field Default Settings on page 483
October 2002
473
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Overview of Schematic Composer Options
The following options are available from the CIW:
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
The following options are available from the schematic composer window:
.
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 (no
options available for a symbol cellview)
Rules Setup
Options to set up the rules to do a schematic design inspection (no
options available for a symbol cellview)
Tool Filter
Select tools for parameter display (no options available for a
symbol cellview)
Component Display
Options to display each object’s label in a design
Save Defaults
Save the current schematic composer environment variables to a
file
Load Defaults
Load the schematic composer environment variable from a file to
set the current environment
October 2002
474
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Changing User Preferences
You can change window and command preferences from the CIW.
The Options – User Preferences command is described in Design Framework II User
Guide.
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,
when you start a command, the editor uses the current location of your pointer as the first
data point.
To turn Infix on, do the following:
1. From the CIW, choose Options – User Preferences.
October 2002
475
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
The User Preferences form appears.
2. Turn Infix on.
3. Click OK.
October 2002
476
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Changing the Default Display Setting for Command Option Forms
You can reconfigure your system to display the command options forms automatically
whenever you select a command that has an associated form. This reconfiguration is helpful
when you are unfamiliar with schematic composer commands and how they work.
To set your system to display associated options forms automatically whenever you choose
commands 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
Commands Start.
3. Click OK.
The User Preferences form closes. Command option forms appear automatically when
you next start a command.
Saving the Current Window Setup
To save the display of your design window (including all window positions, customized
settings, contents, window sizes, zoom levels, and design hierarchies) when you exit the
current 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.
October 2002
477
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting 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 file
settings 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.
October 2002
478
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
3. Click Show Bind Keys.
A view window displays the current bindkey file settings. You cannot edit the
schBindKeys.il file from the view window, but you can customize the
schBindKeys.il file.
Changing Browser and CIW Preferences
You can change browser and CIW preferences by using the Options – Browser
Preferences command 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 variable
browserType on page 545.
Other options let you change browser preferences:
■
“Using the Component Browser” on page 78
■
“Changing the Component Browser Display” on page 82
October 2002
479
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Customizing Editor Options
You can change general options for the schematic composer by using the Options – Editor
command, 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
automatically repeating, do the following:
1. Choose Options – Editor.
The Editor Options form appears.
2. Turn Modal Commands off.
3. Click OK.
To set Modal permanently on for future sessions, change the environment variable
modalCommands on page 561.
October 2002
480
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Changing Display Options
You can change the window display and grid controls by using the Options – Display
command. 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 for
editing. This is especially useful when you have many object types, or overlapping object
types, 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.”
October 2002
481
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
Setting Schematic Check Options and Rules
Setting schematic check options and rules are discussed in Chapter 10, “Checking Designs.”
Setting the Tool Filter
Editing analog circuit design simulator properties using the parameter (tool) filter is discussed
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.
/your_directory/.cdsenv
3. Click OK.
The filename specifies the name of the file where the variables and form defaults are
saved. The default is a file named .cdsenv in your home directory. If you use this
filename, the saved variables are automatically loaded the next time you start the editor.
Note: This form saves environment variables only within the schematic composer
environment. The same command in the CIW saves all environment variables.
October 2002
482
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting 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.
/your_directory/.cdsenv
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 display
of 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 also
preset session defaults and variables by editing the .cdsenv file.
Note: This form loads environment variables only within the schematic composer
environment. The same command in the CIW loads all environment variables.
October 2002
483
Product Version 5.0
Virtuoso Schematic Composer User Guide
Setting Schematic Composer Options
October 2002
484
Product Version 5.0
Virtuoso Schematic Composer User Guide
13
Customizing the Schematic Composer
The Virtuoso® schematic composer is an open application that you can customize. You can
change its appearance and behavior. In general, you can choose a preference or
customization once you are in a session. When you find a desired behavior or customization,
you can make it the default for the product. For further details on file setup, see the Cadence
Application Infrastructure User Guide.
This chapter provides information about the following:
■
Customizing Pull-Down and Pop-Up Menus on page 486
■
Customizing Object-Sensitive Menus on page 487
■
Customizing the Icon Bar on page 489
■
Understanding Initialization and Setup Files on page 491
■
Customizing Bindkeys on page 492
■
Customizing the Configuration File on page 494
■
Customizing Global Editor Variables for Form Fields on page 496
■
Customizing Text-to-Symbol Generator (TSG) Variables for Form Fields on page 516
■
Customizing HDL Variables for Form Fields on page 519
■
Customizing the Plot Configuration on page 522
October 2002
485
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Customizing Pull-Down and Pop-Up Menus
You interact with the schematic composer through pull-down menus, pop-up menus, the icon
bar, and bindkeys. You can customize all schematic composer menus. In general, you copy
files 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
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 menu
itemSymbol, its menu text, and the callBack function) and to organize these definitions into
the respective pull-down and pop-up menus. You can easily change menu definitions without
having to rebuild the Cadence® SKILL language context to see the change.
You or your technical administrator can customize the menus. The menu file definitions are
easier to maintain from one release to the next because they are independent of the code
that implements the menus. You do not need to know the SKILL symbol name of a menu item
to 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. It
redefines 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 above
showing default menu definitions, but schView.menus is listed for completeness.
October 2002
486
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
You can also customize menus for different projects or work areas. Copy the customization
files to
your_install_dir/local/workOrProjectDir/menus/{schView,schematic}.menus
For personal customization, copy the files to
~/menus/{schView,schematic}.menus
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 definitions
because 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 specific
category
This procedure customizes which menu pops up when you place the cursor over specific
objects.
You can type the SKILL functions in the Command Interpreter Window (CIW), in which case
they 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 schematic
composer.
Example of Customizing the Instance OSM
Use the following procedure to customize an Instance OSM to display these commands:
Stretch, Copy, Edit Properties, Descend Read, and Fit.
1. Define each command in the new menu.
; newMenuItem = hiCreateMenuItem(
; define new variable
;
?name ’newMenuItem
; use same variable name
;
?itemText "Menu String"
October 2002
487
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
; text displayed on menu
;
?callback "MenuCommand()"
; skill command to be executed
; )
newPopUpStretch = hiCreateMenuItem(
?name
’newPopUpStretch
?itemText
"Stretch"
?callback
"schHiStretch()"
)
newPopUpCopy = hiCreateMenuItem(
?name
’newPopUpCopy
?itemText
"Copy"
?callback
"schHiCopy()"
)
newPopUpEditInstance = hiCreateMenuItem(
?name
’newPopUpEditInstance
?itemText
"EditInstance"
?callback
"schHiObjectProperty()"
)
newPopUpDescendRead = hiCreateMenuItem(
?name
’newPopUpDescendRead
?itemText
"DescendRead"
?callback
"schHiDescendRead()"
)
newPopUpFitPlus = hiCreateMenuItem(
?name
’newPopUpFitPlus
?itemText
"Fit"
?callback
"hiZoomAbsoluteScale(getCurrentWindow() 0.9)"
)
2. Put the following menu items into a single menu.
;
;
;
;
;
;
;
;
;
;
newMenu = hiCreateMenu(
create new menu ’newMenu
use same variable name "Title String"
text displayed at top edge of menu
list(
menuItem1
: list of menus as
menuItem2
defined by . . .
hiCreateMenuItem
)
October 2002
488
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
; ""
; )
newInstPopUpMenu = hiCreateMenu(
’newInstPopUpMenu
"Instance"
list(
newPopUpStretch
newPopUpCopy
newPopUpEditInstance
newPopUpDescendRead
newPopUpFitPlus
)
""
)
3. Register the new menu with the schematic pop-up manager.
; schRegisterPopUpMenu( "objectType" menuName)
schRegisterPopUpMenu("instance" newInstPopUpMenu)
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
October 2002
489
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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
❑
Change any of the following parameters:
name = SKILL symbol
itemText = pop-up menu name
itemIcon = icon as created by hiStringToIcon
callback = SKILL function
October 2002
490
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Changing the Display of the Icon Bar
To specify how the system displays icon bar commands, such as icons or text, use SKILL
functions. Refer to the schRegisterFixedMenu and schUnRegisterFixedMenu
functions in the Virtuoso Composer Schematic SKILL Functions Reference Manual.
You can type the SKILL functions in the Command Interpreter Window (CIW), in which case
they 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 schematic
composer.
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 composer
configurations
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 that
contain user or site SKILL code definitions
You can set these variables by calling schSetEnv or
envSetVal in the .cdsinit file.
.cdsenv
The Cadence environment file sets default values for
environment variables in Cadence Design Framework II.
You can create the .cdsenv file by using the Options –
Save Defaults command.
Converting a Schematic from a 0.125 Grid to a 0.1 Grid
Setting a new grid spacing can cause some of your existing symbols, pins, and wires to go
off grid. The best way to convert a schematic from a 0.125 grid to a 0.1 grid, is to change the
values in the .cdsenv file by doing the following:
Note: Change the default in your .cdsenv file to set the default for every library. It is not
advisable to set up different grids or different snap spacing for different libraries.
October 2002
491
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
1. In your .cdsenv file, change
schematic symGridSpacing float 0.125000 nil
schematic schGridSpacing float 0.125000 nil
to
schematic symGridSpacing float 0.100000 nil
schematic schGridSpacing float 0.100000 nil
2. To change the snap spacing, set
schematic symSnapSpacing float 0.050000 nil
schematic schSnapSpacing float 0.050000 nil
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 Cadencesupplied schBindKeys.il file. If you are using a locally supplied file, substitute the
appropriate path.
1. In a UNIX window, copy the schBindKeys.il file to your home directory:
October 2002
492
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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()")
You can edit the following four elements for each bindkey setting:
The application name in the syntax specifies
when the bindkey applies; for example, when
you run the schematic editor.
Sets F6 to redraw the screen.
bk("Schematics" "<Key>F6" "hiRedraw()")
bk is the alias for the hiSetBindKey() function, which
sets bindkeys.
You can set a bindkey to perform
any SKILL function.
1. 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 whenever
you 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.
October 2002
493
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing 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 the
schBindkeys.il file automatically.
If you have already started the Cadence software, you can load the bindkeys manually, for the
current 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 SKILL
variables that you can customize. The contents are organized into four groups: Schematic
Editor, Symbol Editor, Symbol Generator, and HDL.
Using SKILL variables, you customize certain command form fields to change the list of
choices.
You might want to customize the configuration file to limit or expand the options the editor
displays on certain forms or fields. These options include choices such as sheet sizes, pin
types, 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
getInstallPath
October 2002
494
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
You can add or delete choices to the schConfig.il file anytime before you complete any
schematic functionality in an interactive session. You can load the schConfig.il file at
any 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 the
behavior 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 directory
by 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 so
that 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, Symbol
Generator, and HDL. The variable names are sorted alphabetically within each category.
3. Save the file.
Loading the Configuration File
To load the local configuration file for your current session, do the following:
➤
In the CIW, type
October 2002
495
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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 configuration
file 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 symbol
editor. You can customize these public global SKILL variables, which relate directly to the form
field settings. These variables are stored in the schConfig.il file.
To edit these variables, you need to open the configuration file.
The following tables describe variables for customizing form fields.
Schematic 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
edit properties user section
schPropertiesFilter
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
October 2002
496
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Schematic Form Field Description
Variable Name
pin cross reference format
schZoneFormatString
pin cross reference format
schZoneFormatValue
Symbol Editor Variables
Symbol Form Field Description
Variable Name
symbol label attributes
schSymbolLabelChoices
symbol pin direction and type
schSymbolPinMasters
Symbol Generation (tsg) Variables
Symbol Form Field Description
Variable Name
pin connection type
tsgConnectorMasters
symbol pin graphic characteristics
tsgPinGraphicMasters
default tsgTemplateType
tsgTemplateMasters
HDL (Verilog, SpectreHDL, and VerilogA) Variables
Symbol Form Field Description
Variable Name
enables/disables cross-view checking or checks
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 and off
schHdlNoHierarchy
controls HDL printing
schHdlPrintCommand
October 2002
497
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
configures the characteristics of symbols built by
the text-to-symbol generator (TSG)
schHdlUpdateSymbolAfterEdit
prints out diagnostic messages while the Verilog®
text is parsed and processed
schHdlVerbose
AMS Netlisting Variables
You can set severities for the following AMS checks:
Form Field Description
Variable Name
illegal identifiers
allowLegalIdentifiers
name collisions
allowNameCollisions
conflicting bus ranges
allowDeviantBuses
sparse buses
allowSparseBuses
Block Pin Direction Rule Variable
schBlockPinAttrs
Sets the pin direction implied by connecting to a specific edge of a block. This IL structure
describes the mapping of the block edge to pin type and direction. This map is used by the
schematic user interface to provide a simplified approach for selecting the pin direction
implied 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 choices
any 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 )
...
)
)
October 2002
498
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Arguments
PIN_TYPE
The name of the pin “type”
EDGE_DIRECTION
left, right, bottom, top
TERMINAL_DIRECTION
The CDBA terminal direction
PIN_TYPE and TERMINAL_DIRECTION uniquely identify a pin master in the
schSymbolPinMasters map.
Example
schBlockPinAttrs =
"block"
list("left"
list("right"
list("bottom"
list("top"
)
list(
"input")
"output")
"inputOutput")
"inputOutput")
Block Sample Sizes Variable
schBlockTemplate
October 2002
499
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Sets the block sample sizes during top-down block creation.
Add Block
To edit this variable, you need to open the configuration file. You can add or delete choices
any 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 block
creation.
Standard Structure
list(
list(
BLOCK_NAME
BLOCK_SIZE
list(
LABEL
LABEL
...
)
)
...
)
October 2002
500
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Body Definition
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”, “physical
label”, “pin label”, “device annotate”, “pin
annotate”.
height
Label height in user units.
font
A dbFontStyle; for example, “stick”.
type
A dbLabelType: “normalLabel”, “NLPlabel”, “ILLabel”.
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")))
...
)
View Name Exclusion Variable
schCycleViewNameExclusionList
October 2002
501
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Sets the exclusion for schematicSymbol views from being cycled through on the Add
Instance form.
Add Instance
To edit this variable, you need to open the configuration file. You can add or delete choices
any 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"
)
October 2002
502
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Schematic Pin Types Variable
schPinMasters
Sets the pin usage, pin masters, and pin direction on the Add Pin form for creating a
schematic pin. Sample pin masters are in the basic library.
Add Pin
To edit this variable, you need to open the configuration file. You can add or delete choices
any 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 a
multisheet schematic.
Standard Structure
list(
list(
PIN_USAGE
...
)
list( PIN_DIRECTION TERMINAL_DIRECTION
PIN_MASTER
...
)
...
)
October 2002
503
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Arguments
PIN_USAGE
Each PIN_USAGE value is a list of two elements. The first
element is a member of pin usage as it appears on the Add
Pin form. The second element indicates the pin is used as
an 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 that
define the library, cell, and view names of a pin master.
There must a matching PIN_MASTER entry to each
PIN_USAGE entry.
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 Plot
command is started for the very first time.
To edit this variable, you need to open the configuration file. You can add or delete choices
any time before you execute any schematic functionality in an interactive session.
Example
schPlotTemplate = "~/plot.tf"
October 2002
504
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Property Filter Variable
schPropertiesFilter
Filters out the parameter property values on the Edit Properties form. Using the following
nested list format, you can list the property names you want the Edit Properties command to
skip over.
Example
schPropertiesFilter = list(
list( object
list( propName ... )
)
list( object
list( propName ... )
)
..
..
)
object can be one of the following:
“cellView” "wire segment" "pin" "instance" "wire name" “wire segment inherited”
“pin inherited”
propName can contain a wildcard character (*) to filter out a group of properties.
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 choices
any time before you execute any schematic functionality in an interactive session.
Example
schSRCPackagedChecks = list(
list("Normal"
list("floatingNets"
list("floatingInput"
list("floatingOutput"
list("floatingIO"
list("floatingSwitch"
list("shortedOutputs"
list("offsheetConnCheck"
list("unconnectedWires"
...
October 2002
"warning")
"warning")
"warning")
"warning")
"warning")
"warning")
"ignored")
"ignored")
505
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
)
)
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 choices
any 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] )
...
)
...
)
...
)
Arguments
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 and
the expected values.
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")
October 2002
506
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
list("partName" "partName")
list("phyPartName" "phyPartName")
list("power" "power")
list("refDes" "refDes")
list("technology" "technology")
list("simMonitor" "schSimSignalName" list(’("objType"
"inst")))
)
)
list("schematicSymbol"
list(
list("pinName" "name" list(’("objType" "net")))
list("fontStyle" "font")
list("fontHeight" "height")
list("orient" "orient")
list("layer" "layerName")
)
)
)
Multisheet Masters Variable
schSheetMasters
Sets the choices for sheet border sizes and types on the Create Schematic Sheet form that
the editor uses for a new sheet.
Create Schematic Sheet
To edit this variable, you need to open the configuration file. You can add or delete choices
any time before you execute any schematic functionality in an interactive session.
Standard Structure
list(
list( SHEET_CHOICE ... )
list( SIZE_NAME
SHEET_MASTER
...
)
...
October 2002
507
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Arguments
SHEET_CHOICE
A sheet type that appears as an element in a cyclic field. You can
list multiple choices.
SIZE_NAME
The first element of the sheet reference. Also, the name that
appears on the user interface form.
SHEET_MASTER
Each SHEET_MASTER value is a list of three elements that define
the library, cell, and view names of a sheet. There must be a
matching SHEET_MASTER entry for each SHEET_CHOICE entry. To
specify a choice that is valid but does not create a sheet border, use
a list of null strings, such as list("" "" "").
Examples
schSheetMasters = list(
list("basic" "continue")
list("A"
list("US_8ths" "Asize"
list("US_8ths" "Asize_c"
list("B"
list("US_8ths" "Bsize"
list("US_8ths" "Bsize_c"
)
"symbol")
"symbol"))
"symbol")
"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 choices
any time before you execute any schematic functionality in an interactive session.
Standard Structure
list(
list( PROBE_FORMAT PROBE_MASTER)
list( PROBE_FORMAT PROBE_MASTER)
...
)
October 2002
508
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Arguments
PROBE_FORMAT
The format string that appears in the cyclic field of the create
display 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 define
the library, cell, and view names of a probe symbol.
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.
Cellview From Cellview
To edit this variable, you need to open the configuration file. You can add or delete choices
any time before you execute any schematic functionality in an interactive session.
October 2002
509
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Standard Structure
list(
list( VIEW_NAME TRANSLTE_TO TRANSLATE_FROM )
list( VIEW_NAME TRANSLTE_TO TRANSLATE_FROM )
...
)
Arguments
VIEW_NAME
The view name to be translated from or to.
TRANSLATE_TO
The name of the SKILL function for translating from this view to
a pin list.
TRANSLATE_FROM
The name of the SKILL function for translating from a pin list to
this view.
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 view names.
l_pinList: A DPL list describing the cellview ports, cellview properties, and
port 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 )
<pinList>
:= ( <pin> [ <pinList> ] )
<pin>
:= ( nil name "pinName" accessDir "pinAccessDir"
[prop <propList>] )
Example
pinList =
list(nil
’ports list(
list(nil ’name "clock" ’direction "input")
October 2002
510
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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) then
schViewMasters = 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)
)
else
schViewMasters = list(
list("schematic" "schSchemToPinList" "schPinListToSchem")
list("symbol" "schSymbolToPinList" "schPinListToSymbolGen")
)
)
View Master Options Variable
schViewMastersOptionFunc
The text-to-symbol generator (TSG) uses this variable to determine whether the creation
function of a particular destination cellview (in this case, symbol) has an options form.
Cellview From Cellview
myLib
decoder
October 2002
511
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
For example, when you choose Edit Options on the Cellview From Cellview form and you
want to 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) then
schViewMastersOptionFunc = list(
list("schematic"
nil)
list("symbol"
"schDisplaySymbolTemplateForm")
list("functional"
nil)
list("behavioral"
nil)
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 choices
any time before you execute any schematic functionality in an interactive session.
These global variables specify the format of the pin cross-reference information, which
specifies pin locations by sheet numbers, X and Y zones. The schZoneFormatString
and schZoneFormatValue variables are used when creating pin cross-references by the
Sheet – 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 sheet
number, Y zone, and X zone. The schZoneFormatValue variable specifies the order of
the 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 B2
in sheet 3.
October 2002
512
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
schZoneFormatString = "%d%[?ABCDEFGHIJKLMNOPQRSTUVWXYZ]%d"
schZoneFormatValue = list(nil ’sheet 1 ’yZone 2 ’xZone 3)
Symbol Label Variables
schSymbolLabelChoices
Sets the symbol label attributes on the Add Symbol Label form.
Add Symbol Label
INV
logical label
Each label consists of
label = list(choice text type layer purpose)
Arguments
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
October 2002
513
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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))
...
)
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" ))
)
October 2002
514
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Symbol Pin Masters Variable
schSymbolPinMasters
Sets the direction and type of pin masters on the Add Pin form for creating a symbol pin.
Add Pin
A Y
The first element in the schConfig.il file lists only one entry for the number of increments
and 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_TYPE
list( TERMINAL_DIRECTION PIN_MASTER )
list( TERMINAL_DIRECTION PIN_MASTER )
...
)
...
)
Arguments
OFFSET_INCREMENT
Defines the basis unit of the label offset increment.
MAX_INCREMENT_COUNT
Defines the maximum basis units a label can be offset
by the user. Controls the maximum value of a
maximum increment slider on the user interface form.
October 2002
515
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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 elements
that define the library, cell, and view names of a pin
master.
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 as described by CDBA.
schSymbolPinMasters = list(
list(0.03125 32)
list("square"
list("input"
list("basic"
list("output"
list("basic"
list("inputOutput" list("basic"
list("switch"
list("basic"
list("round"
list("input"
list("basic"
list("output"
list("basic"
list("inputOutput" list("basic"
list("switch"
list("basic"
...
)
"sympin"
"sympin"
"sympin"
"sympin"
"symbolNN"))
"symbolNN"))
"symbolNN"))
"symbolNN")))
"circle"
"circle"
"circle"
"circle"
"symbol"))
"symbol"))
"symbol"))
"symbol")))
Customizing Text-to-Symbol Generator (TSG) Variables
for Form Fields
The following IL variables describe the “indirection map” used by the schematic composer
user interface. You can customize these public global SKILL variables used on command
forms. These variables are stored in the schConfig.il file.
Symbol Form Field Description
Variable Name
pin connection type
tsgConnectorMasters
symbol pin graphic characteristics
tsgPinGraphicMasters
default tsgTemplateType
tsgTemplateMasters
To edit these variables, you need to open the configuration file.
October 2002
516
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Pin Master Connections Variable
tsgConnectorMasters
This IL structure describes the “indirection map” used by tsg to provide a simplified
approach for selecting the pin connectors to be used during symbol generation.
Put choices for the symbol generator “pin connector” here. Each entry contains a pin
connector name followed by a cellview specification for each direction. The pin connector
name is used on the user interface form. The cellview should contain the graphics for just the
pin 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 )
...
)
...
)
Arguments
PIN_TYPE
The pin type as it appeared on the user interface form.
Each pin type can have pins of different directions as
defined by the lists that follow it.
TERMINAL_DIRECTION
The CDBA terminal direction.
PIN_MASTER
A list of three elements that define the library, cell, and
view names of a pin master.
Standard Structure
tsgConnectorMasters = list(
list("square"
list("input"
list("basic"
list("output"
list("basic"
list("inputOutput" list("basic"
list("switch"
list("basic"
list("circle"
list("input"
list("basic"
list("output"
list("basic"
list("inputOutput" list("basic"
list("switch"
list("basic"
list("block"
list("input"
list("basic"
list("output"
list("basic"
October 2002
"sympin"
"sympin"
"sympin"
"sympin"
"symbolNN"))
"symbolNN"))
"symbolNN"))
"symbolNN")))
"circle"
"circle"
"circle"
"circle"
"symbol"))
"symbol"))
"symbol"))
"symbol")))
"blockipin"
"blockopin"
517
"symbol"))
"symbol"))
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
list("inputOutput"
list("switch"
list("basic" "blockiopin" "symbol"))
list("basic" "blockiopin" "symbol")))
)
Symbol Pin Characteristics Variable
tsgPinGraphicMasters
This IL structure describes the “indirection map” used by TSG to provide a simplified
approach for selecting the pin graphics to be used during symbol generation.
Standard Structure
list(
list( PIN_TYPE
list( TERMINAL_DIRECTION PIN_GRAPHIC )
list( TERMINAL_DIRECTION PIN_GRAPHIC )
...
)
...
)
Arguments
PIN_TYPE
The pin graphic types as they appeared on the user
interface form. Each pin type can have pin graphics of
different directions.
TERMINAL_DIRECTION
The CDBA terminal direction.
PIN_GRAPHIC
A list of three elements that define the library, cell, and
view names of a pin graphic master such as a clock or
negative indicator. A nil entry indicates there are no
graphics for this type.
Example
tsgPinGraphicMasters = list(
list("actHi"
list("input"
nil)
list("output"
nil)
list("inputOutput" nil)
list("switch"
nil))
list("actLo"
list("input"
list("basic" "tsgActLo"
list("output"
list("basic" "tsgActLo"
. . .
October 2002
518
"symbol"))
"symbol"))
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Template Masters Variables
tsgTemplateMasters
This IL structure contains a list of tsgType/tsgTemplateFile pairs. Each
tsgTemplateFile contains a different set of defaults for use by TSG when creating
symbols. The environment variable tsgTemplateType is associated with the initialization
of the default tsgType.
tsgTemplateMasters = list(
list("digital" (prependInstallPath "samples/symbolGen/
default.tsg"))
list("analog” (prependInstallPath "samples/symbolGen/
analog.tag"))
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 you
can create a new TSG template file that contains the current settings within the Symbol
Generation 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 new
template master.
The system uses the tsgTemplateType environment variable to determine which
template 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 Verilog®-A or Verilog simulator descriptions again if a syntax error is found.
Examples
schHdlEditAfterError = nil
schHdlEditAfterError = t
October 2002
519
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
Update Symbol After Edit Variable
schHdlUpdateSymbolAfterEdit
After you edit Verilog or Verilog-A text, the symbol associated with the cell is conditionally
updated to match the pinout of the Verilog module. A flag that controls the updating of the
symbol can be set to one of three values:
t
nil
"query"
: If required, update symbol after editing
: Don’t update symbol after editing
: 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 Spectre® HDL. If turned on,
cross-view checks are performed after editing Verilog or Spectre HDL.
Examples
schHdlCrossViewCheck = nil ; disable xview checks
schHdlCrossViewCheck = t
Cross View String Variable
schHdlCrossViewString
If cross-view checking is turned on, all views are checked against the edited view. Use
schHdlCrossViewString 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 – Print menu item in the Verilog or Spectre HDL
view window.
October 2002
520
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing 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 a
tristate flag:
t | nil | "all"
If hdlVerbose is set to all, a detailed description of the pseudoschematic is
displayed in the CIW. The output can be quite lengthy.
Examples
schHdlVerbose = t
schHdlVerbose = nil
No Hierarchy Variable
schHdlNoHierarchy
This flag turns the mixed text-graphics feature on and off. If the flag is set, instance
information is ignored when the Verilog text is postprocessed. Verilog descriptions edited
when this flag is set can be used only as leaf cells in a netlist.
Examples
schHdlNoHierarchy = t
schHdlNoHierarchy = nil
Net to Port Variable
schHdlNetToInputPort
schHdlNetToInoutPort
Port direction for instantiated Verilog modules is inferred by their connection to primary I/O or
internal registers. The following variables map the inferred port type (input or inout) to the
connecting net type. All other nets are assumed to be connected to instance output ports. The
valid values in the list are reg, time, integer, real, expression, net, and unknown.
October 2002
521
Product Version 5.0
Virtuoso Schematic Composer User Guide
Customizing the Schematic Composer
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 resource
file, called the cdsplotinit file, which you can edit. This file is the foundation plotter model
data base for Cadence Design Systems plot software. This file builds site specific
.cdsplotinit files.
Caution
You must create a site-specific version of the cdsplotinit file and locate it
in your_install_dir/tools/plot, your working directory, or your home
directory.
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 home
directory and then edit it. A sample .cdsplotinit file is available in
your_install_dir/tools/plot/samples/cdsplotinit.sample.
You can edit the following specifications:
■
Type and name of plotter
■
Paper size
■
Page orientation
■
Page size
■
Resolution
October 2002
522
Product Version 5.0
Virtuoso Schematic Composer User Guide
A
Environment Variables
Appendix A describes the following environment variables:
■
Overview of Environment Variables on page 529
■
Schematic Editor Environment Variables File on page 530
■
Window Environment Variables on page 534
❑
schDisplayDepth on page 534
❑
schDrawAxesOn on page 534
❑
schDynamicHilightOn on page 535
❑
schGridMultiple on page 535
❑
schGridSpacing on page 535
❑
schGridType on page 536
❑
schMaxDragFig on page 536
❑
schPathType on page 536
❑
schShowDirectConnects on page 537
❑
schShowLabelOrigin on page 537
❑
schSnapSpacing on page 538
❑
schWindowBBox on page 538
❑
symDisplayDepth on page 538
❑
symDrawAxesOn on page 539
❑
symDynamicHilightOn on page 539
❑
symGridMultiple on page 540
❑
symGridSpacing on page 540
October 2002
523
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
■
❑
symGridType on page 540
❑
symMaxDragFig on page 541
❑
symPathType on page 541
❑
symShowDirectConnects on page 542
❑
symShowLabelOrigin on page 542
❑
symSnapSpacing on page 542
❑
symWindowBBox on page 543
❑
viewNameList on page 543
Schematic Environment Variables on page 544
❑
autoDot on page 544
❑
blockDirRules on page 544
❑
broadcast on page 545
❑
browserType on page 545
❑
checkAlways on page 545
❑
checkBeepOn on page 546
❑
checkHierSave on page 546
❑
checkSymTime on page 547
❑
compBackTrace on page 547
❑
condOp on page 548
❑
createCvOptions on page 548
❑
createInstResetCDF on page 549
❑
createInstShowCDF on page 549
❑
createLabelFontHeight on page 549
❑
createLabelFontStyle on page 550
❑
createLabelHorzOffset on page 550
❑
createLabelHorzPosition on page 551
❑
createLabelHorzRotation on page 551
October 2002
524
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
❑
createLabelJustify on page 551
❑
createLabelOffsetMode on page 552
❑
createLabelVertOffset on page 552
❑
createLabelVertPosition on page 552
❑
createLabelVertRotation on page 553
❑
cvDisplay on page 553
❑
defaultsFile on page 554
❑
defWideWireWidth on page 554
❑
descendSheet on page 554
❑
descendTarget on page 555
❑
dotOverlap on page 555
❑
drawMode on page 556
❑
drawModeRoute on page 556
❑
echoToCIW on page 557
❑
editPropShowCDF on page 557
❑
editPropShowSystem on page 557
❑
editPropShowUser on page 558
❑
findZoomButton on page 558
❑
gravityOn on page 559
❑
libList on page 559
❑
markerSeverity on page 559
❑
markerShowIgnore on page 560
❑
markerZoom on page 560
❑
maxLabelOffsetUU on page 560
❑
minMarkerSize on page 561
❑
modalCommands on page 561
❑
netExprDisplay on page 562
October 2002
525
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
❑
netNameMethod on page 562
❑
netNamePrefix on page 562
❑
netNameRangeDescend on page 563
❑
netNameSeparator on page 563
❑
noteFontHeight on page 564
❑
noteFontStyle on page 564
❑
noteJustify on page 564
❑
noteShape on page 565
❑
noteShapeLineStyle on page 565
❑
pinBackTrace on page 565
❑
pinNameSeed on page 566
❑
pinRefDuplicates on page 566
❑
pinRefFormat on page 567
❑
pinRefSorting on page 567
❑
replSaveChanges on page 567
❑
runSRC on page 568
❑
runVIC on page 568
❑
saveAction on page 569
❑
schematicAreaPartialSelect on page 569
❑
schematicSelectFilter on page 569
❑
sensitiveMenu on page 570
❑
shapeLineType on page 570
❑
shapeLineWidth on page 571
❑
simProbeFormat on page 571
❑
simProbeType on page 571
❑
snapEnabled on page 572
❑
spanLib on page 572
October 2002
526
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
❑
srcConnByName on page 572
❑
srcFloatingBIDIR on page 573
❑
srcFloatingInput on page 573
❑
srcFloatingIO on page 574
❑
srcFloatingNets on page 574
❑
srcFloatingOutput on page 575
❑
srcInheritedConnCheck on page 575
❑
srcInstNameExpr on page 575
❑
srcInstNameSyntax on page 576
❑
srcInstOverlap on page 576
❑
srcInstOverlapValue on page 577
❑
srcMaxLabelOffset on page 577
❑
srcNameCollision on page 577
❑
srcNetNameExpr on page 578
❑
srcNetNameSyntax on page 578
❑
srcNoOverrideNet on page 579
❑
srcOffsheetConnCheck on page 579
❑
srcPinNetCollision on page 580
❑
srcShortedOutputs on page 580
❑
srcSolderOnCrossover on page 580
❑
srcTermNameExpr on page 581
❑
srcTermNameSyntax on page 581
❑
srcUnconnectedWires on page 582
❑
srcVerilogSyntax on page 582
❑
srcVHDLSyntax on page 582
❑
ssgSortPins on page 583
❑
statusBanner on page 583
October 2002
527
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
❑
statusBannerXY on page 584
❑
stickyWireLabelRange on page 584
❑
symbolAreaPartialSelect on page 584
❑
symbolLabelChoiceText on page 585
❑
symbolLabelFontHeight on page 585
❑
symbolLabelFontStyle on page 585
❑
symbolLabelJustify on page 586
❑
symbolLabelType on page 586
❑
symbolPinFlatten on page 587
❑
symbolPinIncrCount on page 587
❑
symbolPinLocate on page 587
❑
symbolPinUsage on page 588
❑
symbolSelectFilter on page 588
❑
symbolShape on page 588
❑
symbolShapeFillStyle on page 589
❑
transToSheetType on page 589
❑
tsgTemplateType on page 590
❑
updateConn on page 590
❑
vicExactPinMatch on page 591
❑
vicInheritedPins on page 591
❑
vicInheritedPinsMatch on page 591
❑
vicSeverity on page 592
❑
vicViewList on page 592
❑
wireBackTrace on page 593
❑
zoomOutButton on page 593
October 2002
528
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Overview of Environment Variables
This appendix describes the schematic environment variables that control the characteristics
of the schematic and symbol editor window display and the behavior of many schematic and
symbol editor commands.
You can customize the behavior of the schematic or symbol editor by changing the value of a
particular environment variable. To do this, perform any one of the following procedures:
■
Choose Options – Display, Options – Editor, or Check – Options to change some
of the default variables or settings. For example, to change the browser type from library
(default) to component, see “Changing the Browser Type Option” on page 75.
Environment Variable defaults can also be changed on various forms detailed in
“Window Environment Variables” on page 534 and “Schematic Environment Variables”
on page 544. The changes are effective for the current session only.
■
Copy the variables you want to change from the default .cdsenv file (search for
Composer Schematic Editor Environment Variables) to the .cdsenv file in your home
directory. You can edit the default values in your home directory. The default file is located
at:
<install_dir>/tools/dfII/samples/.cdsenv
The .cdsenv file in your home directory is loaded last; any values in your home directory
override those previously loaded. See “Schematic Editor Environment Variables File” on
page 530.
■
Set the variable in the Command Interpreter Window (CIW) using the following SKILL
function:
envSetVal("editorName" <"env var name"> <type of value> <value>)
For example:
envSetVal("schematic" "browserType" ’string “component”)
To verify that the change was made, type the following SKILL function in the CIW:
envGetVal("schematic" "browserType")
Using these procedures, you specify the specific environment variable as an argument
for the schGetEnv and schSetEnv SKILL procedural interface functions.
For information on envGetVal and envSetVal, refer to the User Interface SKILL
Functions Reference manual.
Note: The system writes to the .cdsenv file automatically whenever you choose the
Options – Save Defaults command to retain the current settings for future sessions; if the
file already exists, the system prompts you to overwrite the file or save it using another name.
For details, see “Saving Form Field Default Settings” on page 482.
October 2002
529
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Schematic Editor Environment Variables File
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
October 2002
autoDot boolean t
blockDirRules cyclic "edge"
broadcast
boolean nil
browserType string "library"
checkAlways boolean nil
checkBeepOn boolean t
checkHierSave boolean t
checkSupportAMS boolean nil
checkSymTime int 1
compBackTrace boolean t
condOp cyclic "=="
createCvOptions boolean t
createInstResetCDF
boolean t
createInstShowCDF
boolean t
createLabelFontHeight float 0.0625
createLabelFontStyle cyclic "stick"
createLabelHorzOffset float 0.045
createLabelHorzPosition cyclic "above"
createLabelHorzRotation cyclic "R0"
createLabelJustify
cyclic "lowerCenter"
createLabelOffsetMode boolean t
createLabelVertOffset float 0.045
createLabelVertPosition cyclic "left"
createLabelVertRotation cyclic "R90"
cvDisplay
boolean t
defWideWireWidth
float 0.0625
defaultsFile string ""
deleteInstPinsWire
boolean t
descendSheet string "sheet"
descendTarget string "query user"
differential boolean nil
dotOverlap
float 0.03125
drawMode
string "anyAngle"
drawModeRoute string "route"
echoToCIW
boolean t
editPropCDFParamView string "Use Tools Filter"
editPropShowCDF boolean t
editPropShowSystem
boolean nil
editPropShowUser
boolean t
findAccessMode string "edit"
findZoomButton boolean nil
530
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
October 2002
flightWidth float 0.0
gravityOn
boolean t
invokeKanjiEditor
string "kterm -km euc -e vi"
libList string ""
markerSeverity string "all"
markerShowIgnore
boolean t
markerSource toggle (t t t t)
markerType
toggle (t t)
markerZoom
boolean nil
maxLabelOffsetUU
float 0.045
minMarkerSize float 0.05
modalCommands boolean t
netExprDisplay cyclic "value only"
netNameMethod cyclic "prefix"
netNamePrefix string "net"
netNameRangeDescend boolean nil
netNameSeparator
string "_"
noteFontHeight float 0.0625
noteFontStyle cyclic "stick"
noteJustify cyclic "lowerCenter"
noteShape
cyclic "line"
noteShapeLineStyle
cyclic "solid"
noteType
cyclic "normalLabel"
pinBackTrace boolean t
pinNameSeed string "pin"
pinRefDuplicates
boolean nil
pinRefFormat string "<sheetNumber><zone><referenceName>"
pinRefSorting string "Sheet Number"
replSaveChanges boolean nil
runSRC boolean t
runVIC boolean t
saveAction
cyclic "Ask Me"
schCoalesceLimit
int 2
schDisplayDepth int 3
schDrawAxesOn boolean nil
schDynamicHilightOn boolean t
schFilterSize float 0.3
schGridMultiple int 8
schGridSpacing float 0.125
schGridType cyclic "dotted"
schHdlCrossViewCheck boolean t
schHdlCrossViewString string ""
schHdlEditAfterError boolean t
531
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
October 2002
schHdlNetToInoutPort toggle (t t t t t t t)
schHdlNetToInputPort toggle (t t t t t t t)
schHdlNoHierarchy
boolean nil
schHdlPrintCommand
string "lpr"
schHdlVerbose boolean nil
schMaxDragFig int 100
schPathType cyclic "full"
schShowDirectConnects boolean nil
schShowLabelOrigin
boolean nil
schSnapSpacing float 0.0625
schWindowBBox string "((120 185) (1020 875))"
schematicAreaPartialSelect
boolean nil
schematicSelectFilter string "allSchObj instancePin"
sensitiveMenu boolean t
shapeLineType cyclic "narrow"
shapeLineWidth float 0.0625
simProbeAutoPlace
boolean nil
simProbeFormat string "<state>"
simProbeType string "monitor"
snapEnabled boolean t
spanLib string "do not check"
srcConnByName cyclic "ignored"
srcFloatingBIDIR
cyclic "warning"
srcFloatingIO cyclic "warning"
srcFloatingInput
cyclic "warning"
srcFloatingNets cyclic "warning"
srcFloatingOutput
cyclic "warning"
srcInheritedConn
cyclic "ignored"
srcInstNameExpr string ""
srcInstNameSyntax
cyclic "ignored"
srcInstOverlap cyclic "warning"
srcInstOverlapValue int 10
srcMaxLabelOffset
cyclic "ignored"
srcNameCollision
cyclic "warning"
srcNetNameExpr string ""
srcNetNameSyntax
cyclic "ignored"
srcNoOverrideNet
cyclic "warning"
srcOffsheetConnCheck cyclic "ignored"
srcPinNetCollision
cyclic "ignored"
srcShortedOutputs
cyclic "warning"
srcSolderOnCrossover cyclic "warning"
srcTermNameExpr string ""
srcTermNameSyntax
cyclic "ignored"
532
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
schematic
October 2002
srcUnconnectedWires cyclic "ignored"
srcVHDLSyntax cyclic "ignored"
srcVerilogSyntax
cyclic "ignored"
ssgPackageLabels
cyclic "none"
ssgSortPins cyclic "alphanumeric"
statusBanner boolean t
statusBannerXY boolean nil
stickyWireLabelRange float 0.3125
symCoalesceLimit
int 2
symDisplayDepth int 3
symDrawAxesOn boolean nil
symDynamicHilightOn boolean t
symFilterSize float 0.3
symGridMultiple int 8
symGridSpacing float 0.125
symGridType cyclic "dotted"
symMaxDragFig int 100
symPathType cyclic "full"
symShowDirectConnects boolean nil
symShowLabelOrigin
boolean nil
symSnapSpacing float 0.0625
symWindowBBox string "((120 185) (1020 875))"
symbolAreaPartialSelect boolean nil
symbolLabelChoice
cyclic "instance label"
symbolLabelChoiceText string ""
symbolLabelFontHeight float 0.0625
symbolLabelFontStyle cyclic "stick"
symbolLabelJustify
cyclic "lowerCenter"
symbolLabelType cyclic "NLPLabel"
symbolPinFlatten
boolean t
symbolPinIncrCount
int 1
symbolPinLocate cyclic "left"
symbolPinUsage string ""
symbolSelectFilter
string "allSymObj"
symbolShape cyclic "line"
symbolShapeFillStyle cyclic "outline"
transToSheetType
string "single"
tsgTemplateType string "digital"
updateConn
boolean t
updateInstResetCDF
boolean t
vicExactPinMatch
boolean nil
vicInheritedPinMatch boolean t
vicInheritedPins
boolean t
533
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
schematic
schematic
schematic
schematic
schematic
vicSeverity cyclic "warning"
vicViewList string "symbol schematic functional behavioral system
opt_sch opt_net"
viewNameList string "schematic symbol"
wireBackTrace boolean nil
zoomOutButton boolean nil
Window Environment Variables
schDisplayDepth
Specifies the display depth for the graphics editor. A value of 0 specifies that none of the
graphics 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
schDrawAxesOn
Specifies whether the schematic editor displays the X and Y axes when you view or edit a
schematic view. For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Axes On
October 2002
534
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
schDynamicHilightOn
Specifies whether the schematic editor dynamically highlights the items that it will select
when you click on them. When t, the editor highlights the items with a dashed outline as you
move the cursor over objects in your design. For details, see Changing Display Options on
page 481.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Dynamic Highlighting
schGridMultiple
When the grid type is either dotted or line, this value specifies the number of grids between
major grids. For details, see Changing Display Options on page 481.
Type
integer
Value(s)
any positive number
Default
8
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Grid Multiple
schGridSpacing
Specifies the distance between grids. For details, see Changing Display Options on
page 481.
Type
float
Value(s)
n/a
Default
0.125 (assumes inches)
October 2002
535
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Snap Spacing
schGridType
Specifies the type of grid to display when you view or edit schematics. For details, see
Changing Display Options on page 481.
Type
cyclic
Value(s)
“none” “dotted” “line”
Default
“dotted”
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Grid Type
schMaxDragFig
Specifies the maximum number of figures that will be rendered during dragging. If dragging
objects would result in rendering more than this number of objects, a bounding box is dragged
instead. For details, see Changing Display Options on page 481.
Type
integer
Value(s)
n/a
Default
100
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Drag Limit
schPathType
Specifies how the schematic editor renders wide wires. For example, you might want to see
only the centerline. The default “full” shows a solid wide line; “outline” shows the two outer
October 2002
536
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
edges (or lines) of the wide line; and “centerline” shows only an imaginary line in the center
of the wide line.
Type
cyclic
Value(s)
“full” “outline” “centerline”
Default
“full”
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
schShowDirectConnects
When enabled, the editor highlights the direct connections from pin to pin. For details, see
Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Show Direct Connection
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.
For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
October 2002
537
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form Field
Show Text Justification
schSnapSpacing
Specifies the minimum distance that the cursor moves. The default distance (0.0625) is equal
to half the default grid spacing distance (0.125). For details, see Changing Display Options
on page 481.
Type
float
Value(s)
n/a
Default
0.0625 (assumes inches)
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Snap Spacing
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.
Type
string
Value(s)
“((120 185) (1020 875))”
Default
n/a
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
symDisplayDepth
Specifies the display depth for the graphics editor. A value of 0 specifies that none of the
graphics are to be rendered. Instead, a bounding box is drawn with the name of the symbol.
Type
October 2002
integer
538
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Value(s)
n/a
Default
3
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
symDrawAxesOn
Specifies whether the symbol editor displays the X and Y axes when you view or edit a symbol
view. For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Axes On
symDynamicHilightOn
Specifies whether the symbol editor dynamically highlights the items that it will select when
you click the left mouse button. When t, the editor highlights the items with a dashed outline
as you move the cursor over objects in your design. For details, see Changing Display
Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Dynamic Highlighting
October 2002
539
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
symGridMultiple
When the grid type is either dotted or line, this value specifies the number of grids between
major grids. For details, see Changing Display Options on page 481.
Type
integer
Value(s)
n/a
Default
0.0625 (assumes inches)
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Grid Multiple
symGridSpacing
Specifies the distance between minor grids. For details, see Changing Display Options on
page 481.
Type
float
Value(s)
n/a
Default
0.125 (assumes inches)
Command(s)
Display – Options – Display
Form(s)
Display Options
Form Field
Snap Spacing
symGridType
Specifies the type of grid to display when you view or edit symbols. For details, see Changing
Display Options on page 481.
Type
cyclic
Value(s)
“none” “dotted” “line”
Default
“dotted”
Command(s)
Display – Options – Display
October 2002
540
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form(s)
Display Options
Form Field
Grid Type
symMaxDragFig
Specifies the maximum number of figures that will be rendered during dragging. If dragging
objects would result in rendering more than this number of objects, a bounding box is dragged
instead. For details, see Changing Display Options on page 481.
Type
integer
Value(s)
n/a
Default
100
Command(s)
Display – Options – Display
Form(s)
Display Options
Form Field
Drag Limit
symPathType
Specifies how the schematic editor renders wide wires. For example, you might want to see
only the centerline. The default “full” shows a solid wide line; “outline” shows the two outer
edges (or lines) of the wide line; and “centerline” shows only an imaginary line in the center
of the wide line.
Type
cyclic
Value(s)
“full” “outline” “centerline”
Default
“full”
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
October 2002
541
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
symShowDirectConnects
When enabled, the editor highlights the direct connections from pin to pin. For details, see
Changing Display Options on page 481
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Show Direct Connection
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.
For details, see Changing Display Options on page 481
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Show Text Justification
symSnapSpacing
Specifies the minimum distance that the cursor moves. The default distance (0.0625) is equal
to half the default grid spacing distance (0.125). For details, see Changing Display Options
on page 481.
Type
float
Value(s)
n/a
Default
0.0625 (assumes inches)
October 2002
542
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Snap Spacing
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.
Type
string
Value(s)
“((120 185) (1020 875))”
Default
n/a
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
viewNameList
Specifies the default view name list to place on schematic and symbol editor windows. The
view name list controls how hierarchy traversal should expand the design except in the case
where a schematic is in the context of a hierarchy configuration. For details, see Traversing a
Design Hierarchy on page 398.
Type
string
Value(s)
n/a
Default
“schematic symbol”
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
October 2002
543
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Schematic Environment Variables
autoDot
Specifies whether the editor automatically generates a solder dot for three-wire
T-intersections or intersections that include either angled wires or flight lines. For details, see
Disabling Automatic Solder Dot Creation on page 185. See also Editor Options Form on
page 780.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Solder Dots Created Automatically
blockDirRules
Specifies the rule for setting the direction of the new pins that the system creates
automatically when you edit a block. For details, see Editor Options Form on page 780. See
also Changing the Block Pin Direction Rule on page 145.
Type
cyclic
Value(s)
“edge” “order of entry”
Default
“edge”
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Block Pin Direction Rule
October 2002
544
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
broadcast
Specifies whether cross-selection is broadcast. For details, see Editor Options Form on
page 780. See also Using Cross Selection on page 445.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Enable Cross Section
browserType
Specifies which browser you access when the Add Instance command is active. For details,
see Editor Options Form on page 780. See also Using the Library Browser on page 75.
.
Type
string
Value(s)
“library” “component”
Default
“library”
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Browser Type
checkAlways
Specifies whether the editor checks all schematics encountered during traversal or only those
that have been modified. Setting schematic check options and rules are discussed in
Chapter 10, “Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Check – Hierarchy
October 2002
545
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Check – Options
Form(s)
Check Hierarchy
Schematic Check Options
Form Field(s)
Process
From a Multisheet Index, Check
checkBeepOn
Specifies whether the system beeps after every save and check-in. If set to t, the system
beeps even if there is no error or warning message. The benefit of turning this option on is to
let you know when the check is complete. If set to nil, the system restores the behavior to
release 4.3.x (the system beeps only when an error or warning is found). Setting schematic
check options and rules are discussed in Chapter 10, “Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Beep When 0 Errors/Warnings
checkHierSave
Specifies whether the system saves schematics as they are processed during a hierarchical
check. When nil, schematics are not saved during processing, which allows you to save or
discard the edits manually. When t, schematics containing zero errors are automatically
saved. For those schematics that do contain errors, whether they are saved is based on the
value of the saveAction variable.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Hierarchy
Form(s)
Check Hierarchy
October 2002
546
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form Field
Save Schematics
checkSymTime
Specifies whether the system runs a consistency check of the symbol masters and specifies
the level of the check. When you specify a level of 0, the system does not run a consistency
check. When you specify a level of 1 to 3, the system attempts to run the specified check
during loading. A level 2 check attempts to run the level 1 check first. A level 3 check attempts
to 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 value
of a symbol’s instancesLastChanged property is newer than the schematic’s
instancesLastChanged property.
When you set the value of this variable to 2, the system generates a warning when the value
of the symbol’s UNIX file modification time stamp is newer than the schematic’s. The system
does 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 value
of the symbol’s check-in time stamp is newer than the value of the schematic’s
instancesLastChanged property. The system does not run this check if either the level 1 or
level 2 check fails.
Type
integer
Value(s)
0, 1, 2, 3
Default
1
Command(s)
n/a
Form(s)
n/a
Form Field
n/a
compBackTrace
Specifies whether routing should backtrace to components when you stretch an object.
Type
Boolean
Value(s)
t, nil
Default
t
October 2002
547
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Edit – Stretch
Form(s)
Stretch
Form Field
Back Trace Wire From
condOp
Specifies the conditional operator for the Find and Replace commands.
Type
cyclic
Value(s)
“==” “!=” “<“ “>” “<=” “>=”
Default
“==”
Command(s)
Edit – Search – Find
Edit – Search – Replace
Form(s)
Schematic Find
Schematic Replace
Symbol Find
Symbol Replace
Form Field
Search For/Replace With
createCvOptions
Specifies whether the Create Cellview commands display an options form that is specific to
the destination cellview.
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
October 2002
548
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form Field
Edit Options
createInstResetCDF
Specifies whether the Add Instance command retains the current effective CDF values for
a component when the same component is placed at a later time. If set to t, the editor CDF
resets the CDF values to their default settings when you start the Add Instance command.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Add – Instance
Form(s)
n/a
Form Field
n/a
createInstShowCDF
Specifies whether the Add Instance form appears when the component you want to add
contains CDF parameters.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Add – Instance
Form(s)
n/a
Form Field
n/a
createLabelFontHeight
Specifies a value (in user units) for the font height for the wire names that you add with the
Add Wire Name command.
Type
October 2002
float
549
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Value(s)
n/a
Default
0.625 (assumes inches)
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Font Height
createLabelFontStyle
Specifies a font for the wire names that you add with the Add Wire Name command.
Type
cyclic
Value(s)
“euroStyle” “gothic” “math” “roman” “script” “stick” “fixed”
“swedish” “milSpec”
Default
“stick”
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Font Style
createLabelHorzOffset
Specifies the offset distance of the wire name text in relation to a horizontal wire.
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
October 2002
550
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
createLabelHorzPosition
Specifies the position of the wire name text in relation to a horizontal wire.
Type
cyclic
Value(s)
“above” “below”
Default
“above”
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Horizontal/Text Position
createLabelHorzRotation
Specifies the orientation of the wire name text in relation to a horizontal wire.
Type
cyclic
Value(s)
“R0” “R90”
Default
“R0”
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Horizontal/Text Rotation
createLabelJustify
Specifies the justification for the wire name text.
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
October 2002
551
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form Field
Justification
createLabelOffsetMode
Specifies the wire name Entry Style mode. When set to t, the mode is fixed offset. When
set to nil, the mode is manual.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Entry Style
createLabelVertOffset
Specifies the location 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
createLabelVertPosition
Specifies the position of the wire name text in relation to a vertical wire.
Type
cyclic
Value(s)
“left” “right”
Default
“left”
October 2002
552
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Vertical/Text Position
createLabelVertRotation
Specifies the orientation of the wire name text in relation to a vertical wire.
Type
cyclic
Value(s)
“R0” “R90”
Default
“R90”
Command(s)
Add – Wire Name
Form(s)
Add Wire Name
Form Field
Vertical/Text Rotation
cvDisplay
Specifies whether the system displays a new cellview in a window when you complete the
Create – Cellview command.
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
October 2002
Display Cellview
553
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
defaultsFile
Specifies which file the editor accesses when loading or dumping the schematic environment
variables.
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
defWideWireWidth
Specifies a value for the width of wires and flight lines that you create with the Add Wire
command. The value must be greater than 0.0 and specified in user units.
Type
float
Value(s)
n/a
Default
0.0625 (assumes inches)
Command(s)
Add – Wire {narrow, wide}
Form(s)
Add Wire
Form Field
Width
descendSheet
Specifies the type of sheet to descend into when descending into a level that expands to a
multisheet schematic.
Type
string
Value(s)
“index” “sheet”
October 2002
554
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
“sheet”
Command(s)
Design – Hierarchy – Descend Edit
Form(s)
Descend
Form Field
schDescendSheetNum
descendTarget
Specifies whether the editor descends automatically when you start a Descend command.
Type
string
Value(s)
“query user” “use viewNameList”
Default
“query user”
Command(s)
Design – Hierarchy – Descend
Design – Hierarchy – Descend Edit
Design – Hierarchy – Descend Read
Form(s)
Descend
Form Field
Target Cellview
dotOverlap
Specifies the value for automatically generated solder dots that overlap wires at a wire
intersection. The value must be specified in user units. For details, see Editor Options Form
on page 780.
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
October 2002
555
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
drawMode
Specifies the drawing mode for the Shape commands.
Type
string
Value(s)
“anyAngle” “l90X” “l90Y” “l45Long” “l45Angle” (where “l” is a
lowercase 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
drawModeRoute
Specifies the drawing mode for the Add Wire command. The difference between this and
drawMode is the route choice, which invokes the wire router when adding wires to a
schematic. For a sample drawing of the values, see “Add Wire Form” on page 712.
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
October 2002
556
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
echoToCIW
Causes the system to print a summary of error and warning messages to the CIW when you
check your design. This is the same summary the system displays in the dialog box when the
editor encounters warning and error conditions during a check of your design.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check
Form(s)
n/a
Form Field
n/a
editPropShowCDF
Specifies whether the CDF options field appears in the Show region of the Edit Object
Properties form.
Type
toggle
Value(s)
t, nil
Default
t
Command(s)
Edit – Properties – Object
Form(s)
Edit Object Properties
Form Field
Show CDF
editPropShowSystem
Specifies whether the System options field appears in the Show region of the Edit Object
Properties form.
Type
toggle
Value(s)
t, nil
Default
nil
Command(s)
Edit – Properties – Object
October 2002
557
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Edit – Properties – Cellview
Form(s)
Edit Object Properties
Edit CellView Properties
Form Field
Show System
editPropShowUser
Specifies whether the User options field appears in the Show region of the Edit Object
Properties form.
Type
toggle
Value(s)
t, nil
Default
t
Command(s)
Edit – Properties – Object
Edit – Properties – Cellview
Form(s)
Edit Object Properties
Edit CellView Properties
Form Field
Show User
findZoomButton
Specifies whether the editor zooms into an object that matches the pattern specified in the
Find command.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Edit – Search – Find
Form(s)
Schematic Find
Symbol Find
Form Field
October 2002
Zoom To Figure
558
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
gravityOn
Specifies whether the cursor snaps to instance pins when you use the Add Wire command.
For details, see Editor Options Form on page 780.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Gravity
libList
Specifies a list of libraries the editor processes during hierarchical checking when the
environment variable spanLib is set to check.
Type
string
Value(s)
n/a
Default
“”
Command(s)
Check – Hierarchy
Form(s)
Check Hierarchy
Form Field
Reference Libraries
markerSeverity
Specifies a search based on marker severity level.
Type
string
Value(s)
“all” “error” “warning”
Default
“all”
Command(s)
Check – Find Marker
Form(s)
Find Marker
October 2002
559
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form Field
Severity
markerShowIgnore
Specifies whether the Find Marker form displays markers that have the ignore property set.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Find Marker
Form(s)
Find Marker
Form Field
Show Ignore
markerZoom
Specifies whether the Find Marker command zooms to the current marker.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Check – Find Marker
Form(s)
Find Marker
Form Field
Zoom to Markers
maxLabelOffsetUU
Specifies the maximum distance between a label and a wire. During schematic loading and
connectivity extraction, any unglued wire names whose control point is within this distance of
a wire is automatically glued to the wire. During SRC, this value is used in the
maxLabelOffset check to flag any wire name that is farther than this distance from any wire
whether or not the name is glued to the wire. Setting schematic check options and rules are
discussed in Chapter 10, “Checking Designs.”
Type
October 2002
float
560
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
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
minMarkerSize
Specifies a value for the minimum marker size. The value is specified in user units. For details,
see Editor Options Form on page 780.
Type
float
Value(s)
n/a
Default
0.05 (assumes inches)
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Minimum Marker Size
modalCommands
Specifies whether commands stay active until explicitly cancelled by pressing the Esc key or
by starting another command. For details, see Canceling the Modal (Repeat) Command
Option on page 480.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Modal Commands
October 2002
561
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
netExprDisplay
Specifies how to display inherited connections values. The value is what the connection
resolves to; if it is overridden at a higher level in the hierarchy, the full path to a local signal
might be displayed. For details, see Changing Display Options on page 481.
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
netNameMethod
Specifies which naming mechanism the editor uses for system-generated net names during
connectivity extraction. For details, see Editor Options Form on page 780.
Type
cyclic
Value(s)
“prefix” “derived”
Default
“prefix”
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Net Name Method
netNamePrefix
Specifies the prefix string for the net names that the editor generates during connectivity
extraction. For details, see Editor Options Form on page 780.
Type
string
Value(s)
n/a
Default
“net”
October 2002
562
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Net Name Prefix
netNameRangeDescend
Specifies whether the range specification in system-generated buses is descending. When
the value is nil (default), system generated buses are ascending. For details, see Editor
Options Form on page 780.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Option – Editor
Form(s)
Editor Options
Form Field
Bus Range Order
netNameSeparator
Specifies the name separator for net names that the editor generates during connectivity
extraction if the value of netNameMethod is derived. For details, see Editor Options Form on
page 780.
Type
string
Value(s)
n/a
Default
“_”
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Net Name Separator
October 2002
563
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
noteFontHeight
Specifies a font height for the text you add to your design using the
Add – Note – Text command.
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
noteFontStyle
Specifies a font for the text you add to your design using the Add – Note – Text command.
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
noteJustify
Specifies the justification for the text you add to your design using the Add – Note – Text
command.
Type
cyclic
Value(s)
“upperLeft” “centerLeft” “lowerLeft” “upperCenter” “centerCenter”
“lowerCenter” “upperRight” “centerRight” “lowerRight”
Default
“lowerCenter”
Command(s)
Add – Note – Text
October 2002
564
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form(s)
Add Note Text
Form Field
Justification
noteShape
Specifies the shape for a note that you add to your design using the Add – Note – Shape
command.
Type
cyclic
Value(s)
“line” “rectangle” “polygon” “circle” “ellipse” “arc”
Default
“line”
Command(s)
Add – Note – Shape
Form(s)
Add Note Shape
Form Field
Shape
noteShapeLineStyle
Specifies the line style that the editor uses to draw a note shape.
Type
cyclic
Value(s)
“solid” “dashed”
Default
“solid”
Command(s)
Add – Note – Shape
Form(s)
Add Note Shape
Form Field
Line Style
pinBackTrace
Specifies whether the editor stretches the wires connected to a pin when you stretch a pin.
Type
Boolean
Value(s)
t, nil
October 2002
565
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
t
Command(s)
Edit – Stretch
Form(s)
Stretch
Form Field
Back Trace Wire From
pinNameSeed
Specifies the pin name prefix the editor uses when automatically creating new pins for blocks
you add to your design.
Type
string
Value(s)
n/a
Default
“pin”
Command(s)
Add – Block
Form(s)
Add Block
Form Field
Pin Name Seed
pinRefDuplicates
Specifies whether the editor reports duplicate pin references found within one zone of a
multisheet schematic.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Sheet – Cross Reference
Form(s)
Cross Reference Options
Form Field
Show Duplicate Zones
October 2002
566
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
pinRefFormat
Specifies the format for displaying the pin reference information that appears next to each pin
when you use the Cross Reference command.
Type
string
Value(s)
n/a
Default
“<sheetnumber><zone><referenceName>”
Command(s)
Sheet – Cross Reference
Form(s)
Cross Reference Options
Form Field
Format String
pinRefSorting
Specifies how the editor sorts pin references when you use the Cross Reference command.
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
replSaveChanges
Specifies whether the editor saves changes when you complete the Replace command and
your design is in multiple-cellview mode (for example, hierarchy or library).
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Edit – Search – Replace
Form(s)
Schematic Replace
October 2002
567
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Symbol Replace
Form Field
Save Changes
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 nil
disables the SRC. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Run the Schematic Rule Checker
runVIC
Specifies whether to run the cross-view checker during schematic checking. Normally, during
a check, connectivity is extracted, SRC is run, and VIC is run. A value of nil disables the
VIC. Setting schematic check options and rules are discussed in Chapter 10, “Checking
Designs.”
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Cross View Checker Severity
October 2002
568
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
saveAction
Specifies what to do during hierarchical checking when checkHierSave is t and
schematics containing errors are encountered. Setting schematic check options and rules are
discussed in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“Save” “No Save” “Ask Me”
Default
“Ask Me”
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Check And Save Action
schematicAreaPartialSelect
Specifies whether the system selects partial objects during area selection. The Select Filter
command is discussed in Chapter 8, “Editing Properties.”
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Edit – Select – Filter
Form(s)
Schematic Selection Filter
Form Field
Area Partial Selection
schematicSelectFilter
Specifies the selection filter setting for schematic objects. The Select Filter command is
discussed in Chapter 8, “Editing Properties.”
Type
string
Value(s)
“wire” “pin” “instance” “noteShape” “wireName” “marker”
“pinName” “noteText” “flight” “label” “allSchObj” “instanceName”
“instancePin” “instancePinName” “instanceLabel” “allInstObj”
October 2002
569
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
“allSchObj instancePin”
Command(s)
Edit – Select – Filter
Form(s)
Schematic Selection Filter
Form Field
Schematic Objects/Instance Objects
sensitiveMenu
Specifies whether the middle mouse button uses the object-sensitive menus or the standard
pop-up menu. For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Object-Sensitive Pop-Up Menus
shapeLineType
Specifies the line style that the editor uses to draw a note shape.
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
October 2002
Line Style
570
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
shapeLineWidth
Specifies a width for the line that the editor uses to draw a note shape.
Type
float
Value(s)
n/a
Default
0.0625 (assumes inches)
Command(s)
Add – Note – Shape
Add – Shape – Line
Form(s)
Add Note Shape
Add Symbol Shape
Form Field
Line Width
simProbeFormat
Specifies how the editor displays the monitor and which simulation information the monitor
displays.
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
simProbeType
Specifies the simulation monitor type.
Type
string
Value(s)
“monitor” “display”
Default
“monitor”
October 2002
571
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Check – Schematic Monitors – Add
Form(s)
Add Simulation Monitor
Form Field
Type
snapEnabled
Specifies whether the Add Wire command uses snap mode to complete a wire. For details,
see Editor Options Form on page 780.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Wire Snapping
spanLib
Specifies whether the editor spans reference libraries when you use the Check – Hierarchy
command. You use the libList environment variable to specify the list of reference libraries.
Type
string
Value(s)
“do not check” “check”
Default
“do not check”
Command(s)
Check – Hierarchy
Form(s)
Check Hierarchy
Form Field
Reference Libraries
srcConnByName
Specifies a check for naming conventions between wires and pins connected by name. This
check verifies identical names that exist in more than one physically disjoint group of wires or
pins. A user might have inadvertently connected objects when using a name that was already
October 2002
572
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
used elsewhere in the schematic. Setting schematic check options and rules are discussed
in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“ignored”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Connection By Name
srcFloatingBIDIR
Specifies the severity of the SRC signal check for floating bidirectional pins. Controls the
check for component or schematic bidirectional pins whose signals are not driven by
component output pins, schematic input pins, or any other schematic I/O pins. Setting
schematic check options and rules are discussed in Chapter 10, “Checking Designs.”
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
srcFloatingInput
Specifies the severity of the SRC signal check for floating inputs. Controls the check for
component input pins and schematic output pins with signals that are not driven by
component output pins, schematic input pins, or any schematic I/O pins. Setting schematic
check options and rules are discussed in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“warning”
October 2002
573
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Floating Input Pins
srcFloatingIO
Specifies the severity of the SRC signal check for floating I/Os. Controls the check for
component or schematic input/output pins with signals that are not driven by component
output pins, schematic input pins, or any other schematic I/O pins. Setting schematic check
options and rules are discussed in Chapter 10, “Checking Designs.”
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
srcFloatingNets
Specifies the severity of the SRC signal check for floating nets. Controls the check for wires
that are not physically connected to schematic or component pins. It does not check for wires
connected by name to schematic or instance pins. Setting schematic check options and rules
are discussed in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“warning”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Floating Nets
October 2002
574
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
srcFloatingOutput
Specifies the severity of the SRC signal check for floating outputs. Controls the check for
component output pins and schematic input pins with signals that are not driving any
component input pins, schematic output pins, or any schematic 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 Output Pins
srcInheritedConnCheck
Specifies the severity of the SRC inherited connections check. Controls the check for
inherited connections.
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
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. Setting schematic check
options and rules are discussed in Chapter 10, “Checking Designs.”
Type
string
Value(s)
n/a
Default
“”
October 2002
575
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Instance Name Expression
srcInstNameSyntax
Specifies the severity of the SRC instance name check. Controls name-syntax checking for
instance names. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
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
srcInstOverlap
Specifies the severity of the SRC instance overlap check. Controls the check for instances
that overlap other instances. Setting schematic check options and rules are discussed in
Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“warning”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Overlapping Instances
October 2002
576
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
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 instance
bounding box) that two instances can overlap. Setting schematic check options and rules are
discussed in Chapter 10, “Checking Designs.”
Type
integer
Value(s)
n/a
Default
10%
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Percent Overlap Allowed
srcMaxLabelOffset
Specifies the severity of the SRC maximum label offset check. Controls the check for those
labels that are beyond a given distance from a wire. Setting schematic check options and
rules are discussed in Chapter 10, “Checking Designs.”
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
srcNameCollision
Specifies the severity of the SRC instance and net name collision check. Controls the check
for instance and net name collisions within the schematic. Setting schematic check options
and rules are discussed in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
October 2002
577
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
“warning”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Instance/Net Name Collision
srcNetNameExpr
Specifies the regular expression to use when the SRC net name check is enabled. Setting
schematic check options and rules are discussed in Chapter 10, “Checking Designs.”
Type
string
Value(s)
n/a
Default
“”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Net Name Expression
srcNetNameSyntax
Specifies the severity of the SRC net name check. Controls name-syntax checking for net
names. Setting schematic check options and rules are discussed in Chapter 10, “Checking
Designs.”
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
October 2002
578
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
srcNoOverrideNet
Specifies the severity of the SRC check for missing override nets. Controls the check for
override nets when a schematic contains override properties. If the override property is a net
expression, the SRC will try to validate the property by ensuring the default name specifies a
scalar, global name. If the override property is a literal string, the SRC will first validate the
property by ensuring it is a legal, scalar name. In both cases, the SRC will then check if a net
by that name exists in the cellview. Setting schematic check options and rules are discussed
in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“warning”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Missing Override Nets
srcOffsheetConnCheck
Specifies the severity of the SRC check for offsheet connectors. Controls the check for
offsheet connectors used on only one sheet in a multisheet design. It also checks for nets
used locally in more than one sheet that are not connected across the sheets by an offsheet
connector. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
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
October 2002
579
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
srcPinNetCollision
Specifies the severity of the SRC check for pin/net name collisions. Controls the check for
pins that are connected to nets whose wire names do not match the pin. Setting schematic
check options and rules are discussed in Chapter 10, “Checking Designs.”
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
srcShortedOutputs
Specifies the severity of the SRC shorted outputs check. Controls the check for component
output or schematic input pins that are connected to any other component output or
schematic input pins. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
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
srcSolderOnCrossover
Specifies the severity of the SRC check for solder dots on crossovers (four or more wires at
an intersection). Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
October 2002
580
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
“warning”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Solder on CrossOver
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. Setting schematic check
options and rules are discussed in Chapter 10, “Checking Designs.”
.
Type
string
Value(s)
n/a
Default
“”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Pin Name Expression
srcTermNameSyntax
Specifies the severity of the SRC terminal name check. Controls name-syntax checking for
net names. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
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
October 2002
581
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
srcUnconnectedWires
Specifies the severity of the SRC unconnected wires check. Controls the check for wire
segments whose endpoints do not physically connect to schematic or component pins,
labels, or other wire segments. Setting schematic check options and rules are discussed in
Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“ignored”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
Unconnected Wires
srcVerilogSyntax
Specifies the severity of the SRC Verilog syntax name check. Controls the check for Verilog
HDL syntax across all instance and signal names. This check verifies that names are valid
Verilog HDL identifiers and are not Verilog HDL reserved words. Setting schematic check
options and rules are discussed in Chapter 10, “Checking Designs.”
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
srcVHDLSyntax
Specifies the severity of the SRC VHDL syntax name check. Controls the check for VHDL
syntax across all instance and signal names. This check verifies that names are valid VHDL
October 2002
582
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
identifiers and are not VHDL reserved words. Setting schematic check options and rules are
discussed in Chapter 10, “Checking Designs.”
Type
cyclic
Value(s)
“ignored” “warning” “error”
Default
“ignored”
Command(s)
Check – Rules Setup
Form(s)
Setup Schematic Rules Checks
Form Field
VHDL Syntax
ssgSortPins
Specifies how the text-to-symbol generator sorts the symbol pins for the new symbol. For
details, see Editor Options Form on page 780.
Type
cyclic
Value(s)
“unknown” “alphanumeric” “geometric”
Default
“alphanumeric”
Command(s)
Options – Editor
Form(s)
Editor Options
Form Field
Symbol Generator Pin Sorting
statusBanner
Specifies whether the status banner appears on all windows that contain schematic or symbol
data. For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Display Status Banner
October 2002
583
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
statusBannerXY
Specifies whether the editor displays the X and Y coordinates in the status banner when the
status banner is displayed. For details, see Changing Display Options on page 481.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Options – Display
Form(s)
Display Options
Form Field
Coordinates on Status Banner
stickyWireLabelRange
Specifies the range between the origin of a wire name and a wire segment vertex. When you
reroute the wire segment using the Stretch command, the wire name remains in a relative
position to the vertex if the wire name is within the specified range.
Type
float
Value(s)
n/a
Default
0.3125 (assumes inches)
Command(s)
Edit – Stretch
Form(s)
Stretch
Form Field
n/a
symbolAreaPartialSelect
Specifies whether the editor includes partially selected objects in an area selection action.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Edit – Select – Filter
October 2002
584
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form(s)
Symbol Selection Filter
Form Field
Area Partial Selection
symbolLabelChoiceText
Specifies the purpose of a symbol label.
Type
string
Value(s)
“component label” “device annotate” “logicallabel” “physical
label” “pin label” “pin” “annotate”
Default
“”
Command(s)
Add – Label
Form(s)
Add Symbol label
Form Field
Label Choice
symbolLabelFontHeight
Specifies a value (in user units) for the font height for a label that you add with the Add –
Label command.
Type
float
Value(s)
n/a
Default
0.0625 (assumes inches)
Command(s)
Add – Label
Form(s)
Add Symbol Label
Form Field
Font Height
symbolLabelFontStyle
Specifies a font for a label that you add with the Add – Label command.
Type
October 2002
cyclic
585
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
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
symbolLabelJustify
Specifies the position of the cursor with respect to the label that you add with the Add – Label
command.
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
symbolLabelType
Specifies how the editor displays a symbol label.
Type
cyclic
Value(s)
“normalLabel” “NLPLabel” “ILLabel”
Default
“NLPLabel”
Command(s)
Add – Label
Form(s)
Add Symbol Label
Form Field
Label Type
October 2002
586
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
symbolPinFlatten
Specifies whether the symbol editor flattens pins that you add to your design. When the value
for this variable is nil, the editor flattens the pins that you add to your design. A value of nil
corresponds to the on option in the user interface form. A value of t corresponds to the off
option in the user interface form. For details, see Editor Options Form on page 780.
Type
cyclic
Value(s)
t, nil
Default
t
Command(s)
Option – Editor
Form(s)
Editor Options
Form Field
Add Symbol Pins As Instances
symbolPinIncrCount
Specifies the distance between a pin and the pin label.
Type
integer
Value(s)
n/a
Default
1
Command(s)
Add – Pin
Form(s)
Add Pin
Form Field
Label Offset
symbolPinLocate
Specifies the location of the pin label with respect to the pin.
Type
cyclic
Value(s)
“none” “left” “right”
Default
“left”
Command(s)
Add – Pin
October 2002
587
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Form(s)
Add Pin
Form Field
Label Location
symbolPinUsage
Specifies whether the symbol editor sets up the Add Pin form to use square as the initial
value for pin type when it is defined in the schSymbolPinMaster list.
Type
cyclic
Value(s)
“square” “round” “actHi” “commActLo” “ieeeActLo” “block”
Default
“square”
Command(s)
Add – Pin
Form(s)
Add Pin
Form Field
Type
symbolSelectFilter
Specifies the selection filter setting for symbol objects. The Select Filter command is
discussed in Chapter 8, “Editing Properties.”
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
symbolShape
Specifies the symbol shape you want to add.
Type
October 2002
cyclic
588
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Value(s)
“line” “rectangle” “polygon” “arc” “ellipse” “circle”
Default
“line”
Command(s)
Add – Shape
Form(s)
Add Symbol Shape
Form Field
Shape
symbolShapeFillStyle
Specifies whether a shape is filled. Filled maps to solid.
Type
cyclic
Value(s)
“outline” “solid”
Default
“outline”
Command(s)
Add – Shape
Form(s)
Add Symbol Shape
Form Field
Fill Style
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.
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
October 2002
589
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
tsgTemplateType
Specifies which tsg template file the system loads the first time you use one of the Create
Cellview commands to automatically generate a symbol.
The system uses the value of this variable to look up the full file path in the
tsgTemplateMasters list, which is defined in the schConfig.il file.
Important
Once you have loaded a template file, you cannot switch to another template file by
just changing the value of the environment variable. To switch to another template
file, you must use either the Load button on the Symbol Generation Options form or
the schSetAndLoadTsgTemplateType() procedural interface (PI) function.
Type
string
Value(s)
“digital” “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
updateConn
Specifies whether the editor extracts connectivity during schematic checking. Setting
schematic check options and rules are discussed in Chapter 10, “Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Update Connectivity
October 2002
590
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
vicExactPinMatch
Specifies whether the cross-view checker generates a port mismatch warning when one view
has a single pin (for example, pin[0:7] and another view has multiple pins (for example, pin[0],
pin[1], pin[2], ... pin[7]). Setting schematic check options and rules are discussed in
Chapter 10, “Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Match Pin Names Exactly
vicInheritedPins
Specifies whether the cross-view checker generates a warning if a terminal is inherited in one
view but is not inherited in another view. Setting schematic check options and rules are
discussed in Chapter 10, “Checking Designs.”
Type
Boolean
Value(s)
t, nil
Default
t
Command(s)
Check – Options
Form(s)
Schematic Check Options
Form Field
Match Inherited Terminals
vicInheritedPinsMatch
Specifies whether the cross-view checker generates a warning if an inherited terminal in one
view has a different net expression than the matching terminal in another view.
Type
Boolean
Value(s)
t, nil
October 2002
591
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Default
t
Command(s)
Check – Options
Form(s)
Match Terminal Net Expressions
Form Field
n/a
vicSeverity
Specifies the severity of the cross-view check. When the severity level is ignored, the checker
simply returns. Setting schematic check options and rules are discussed in Chapter 10,
“Checking Designs.”
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
vicViewList
Specifies the list of view names that the cross-view checker checks. Setting schematic check
options and rules are discussed in Chapter 10, “Checking Designs.”
Type
string
Value(s)
n/a
Default
“symbol schematic functional behavioral system opt_sch
opt_netl”
Command(s)
Check – Options
Form(s)
Check-Cross View Check
October 2002
592
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
Schematic Check Options
Form Field
Cross-View Checker
View Names
wireBackTrace
Specifies how unselected wires that are connected to selected instances, wires, and pins
behave.
Type
Boolean
Value(s)
t, nil
Default
nil
Command(s)
Edit – Stretch
Form(s)
Stretch
Form Field
Back Trace Wire From
zoomOutButton
Automatically sizes the window display to show all objects that match a specified search
criterions.
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
October 2002
Zoom Out To Fit All Figures
593
Product Version 5.0
Virtuoso Schematic Composer User Guide
Environment Variables
October 2002
594
Product Version 5.0
Virtuoso Schematic Composer User Guide
B
Text-to-Symbol Generator
The text-to-symbol generator (TSG) is a Cadence® application program that automatically
generates 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 TSG
constructs.
■
Symbol Shape Generated by TSG on page 597
■
TSG Symbol Description File on page 598
■
TSG Template File on page 598
■
Clock and Negation Indicators on page 599
■
Backannotation on page 599
■
Simple File Example on page 599
■
Complex File Example on page 600
■
Extended File Example on page 601
■
TSG Symbol Description File Structure on page 603
■
❑
Basic File Structure on page 603
❑
Data Types on page 605
Using TSG Constructs on page 607
❑
Cell Definition on page 607
❑
Input Pin on page 608
❑
Output Pin on page 608
❑
I/O Pin on page 608
❑
Symbol Definition on page 609
October 2002
595
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
■
Executing TSG on page 620
❑
TSG Processing Order on page 621
❑
Creating Symbols Automatically from a Schematic on page 621
October 2002
596
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Symbol Shape Generated by TSG
All symbols generated by TSG are rectangular in shape. The default origin of a symbol is
located at the upper left pin terminal. The following symbol was created by TSG.
A Symbol Master
Clock pin with input
clock indicator
(arrow)
Negative logic
types with
negation indicator
(bubble)
October 2002
[@refDes:%]
[@partName:%]
[@slotId:%]
597
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
An Instance
An instance of the symbol shown
above when placed in a schematic
U2
TSGFIG
TSG Symbol Description File
The TSG symbol description file is the primary input file that controls the symbol to be
generated by TSG. This ASCII file is built using the constructs detailed in this appendix. You
can create a very simple file containing only the cell name and the pin names, or you can add
constructs to enhance the symbol description.
Defaults and error checking are built-in features of TSG. TSG has extensive error checking
and error handling capabilities. It checks for syntax, variable-type, and logical errors in the
TSG symbol description file. Depending on the severity of a detected error, TSG either exits
the 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 to
be generated by TSG. The TSG template file uses the same format as the TSG symbol
description file. Within this file, you can configure symbol labels, properties, and
characteristics such as pin spacing, stub length, and origin placement.
October 2002
598
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
A template file helps avoid unnecessarily large TSG description files. You can specify TSG
constructs shared by a large group of symbols within a single template file. This allows you
to create TSG symbol description files that contain only constructs specific to a particular
symbol.
The first time you use TSG during a Virtuoso® schematic composer session, a default
template file is automatically loaded. This default template file is always used unless you
specify 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 generated
by TSG unless overridden by constructs specified within the TSG symbol description file. You
can find available template filenames within the tsgTemplateMasters list, which is defined in
the schConfig.il file. The default template file that is chosen depends on the initial setting
of 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 beginning
of the pin wire
■
For a negative logic pin, you can draw a negation indicator (a bubble) at the beginning of
the pin wire
The example TSG files and associated figures illustrate some of these capabilities. Refer to
the PinGraphicSpec construct and the wireLength and pinConnector symbol
parameters.
Backannotation
After laying out parts for printed circuit boards (PCB), you often need to backannotate to
schematics or PCB maps parameters, such as pin numbers and reference designators of
symbol instances.
You can include constructs in the TSG symbol description file that specify the properties and
parameters required to support the backannotation operation.
Simple File Example
The simplest TSG symbol description for an SN74LS181 symbol has the following format:
October 2002
599
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-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 file
shown above.
Complex File Example
A more elaborate version of a TSG symbol description file for an SN74LS181 symbol has the
following format. This symbol was generated using the PCB package.tsg template file as
an 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(
vendorName = DEMO
partName = "TSGFIG2"
refDes = U2 )
pinNumSpec(
October 2002
600
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
A0:1
A1:2
A2:3
A3:4
B0:18 B1:17
B2:16
F0:7
F1:8
F2:9
F3:10
C:11 )
pinLocSpec(
topPins( Set)
bottomPins( Reset) )
pinGraphicSpec(
A0:actLo
A1:actLo
A2:actLo
B0:actLo
B1:actLo
B2:actLo
Cn:clock
Set:actLo Reset:actLo
F1:actLo
F2:actLo
F3:actLo
A3:actLo
B3:actLo
F0:actLo
C:actHi
)
)
)
The following example shows a symbol generated from the TSG symbol description file
shown above.
Extended File Example
The following example demonstrates many of the available TSG constructs.
defcell("count4"
input("clock" "reset")
output("a0" "a1" "a2" "a3")
October 2002
601
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
defsymbol(
symbolProps(
partName = "count4" ; cellview prop with valueType=string
pinNum
= (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
wireLength
vSideLength
hSideLength
origin
pinConnector
=
=
=
=
=
=
0.125000
0.250000
0.000000
0.000000
topLeftPin
"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}]")
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 )
)
)
October 2002
602
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
The following example shows a symbol generated from the TSG symbol description file
shown 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 create
the file, you must use a special format that includes several constructs and keywords. All
constructs 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] )
Some constructs can appear only inside certain other constructs. Some keywords can
appear 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, and
I/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 construct
allowed in a TSG file, follows.
October 2002
603
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Following the defcell example are further syntax descriptions for properties and labels.
Text in bold = keywords
Text in italics = data types
Text in angle brackets = < names of variables >
cellName must be a character string
pinName 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]
[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(
October 2002
604
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
[<pinName1> : string]
.
.
.
[<pinNameN> : string] )]
[pinLogicSpec(
[positive( <pinName1> <pinName2> ... <pinNameN> )]
[negative( <pinName1> <pinName2> ... <pinNameN> )] )]
[clockPins( <pinName1> <pinName2> ... <pinNameN> )]
)]
)
<property list>:= <property pair> <property list> | <property pair>
<property pair>:= <property name> = <property value>
<property name>:= <string>
<property value>:=
<simple value> |
( <simple value> [(<range>)]) |
time( <time value> ) |
filename( <filename value> ) |
ilExpr( <string> ) |
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.
October 2002
605
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Character String
A character string can contain one or more alphanumeric characters (a–z, A–Z, 0–9), the
underscore (_), and the question mark (?). The first character cannot be a number. Any
character other than these must be enclosed in quotation marks (" "). Blank characters must
be replaced by an underscore. Examples of character strings are as follows:
SN74LS169A
Am2901_MPR006
FFTchip_2MC_V1
"RAM_1M-6/86"
Pin Name String
A pinName string is similar to a character string except that any slash ( / ) is replaced by a
vertical bar ( | ). For example, X/Y is transformed to X|Y. Examples of pinName strings are
as follows:
OutputEnable
inputA
"Read|Write_"
"Up_|Down"
Terminal List
A terminal list consists of one of the following values:
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.
October 2002
606
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Using TSG Constructs
The following constructs can be included in a TSG symbol description file.
TSG Construct
Definition
defcell
cell definition
input
input pin
output
output pin
io
I/O pin
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
Cell Definition
The defcell construct is the highest level construct in a TSG symbol description file. It has
the 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 in
defcell. Any other construct is ignored by TSG but can be processed by other Cadence
tools, 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 the
generated symbol is stored. You must specify this cell name as a string.
October 2002
607
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Example:
defcell( <cellName> )
Input Pin
The input construct has the form CF1, and you can include it in the defcell construct. It
contains a list of the symbol input pins. By default, all input pins are drawn on the left side of
the 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 617 for details. If a pin specified in this construct
is 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 pins
are 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 “Pin
Location Specification” on page 617 for details. If a pin specified in this construct is also
specified 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. It
contains a list of all I/O symbol pins. By default, all I/O pins are drawn on top of the symbol
from left to right.
To move an I/O pin to any other side, you specify the pin in the pinLocSpec construct. Refer
to “Pin Location Specification” on page 617 for details. If a pin specified in this construct is
also specified in the input or output constructs, an error message is generated.
October 2002
608
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-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 the
form 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 only
ones 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 be
created. The default value is symbol. If you specify the viewName parameter, it must be a
string 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 defsymbol
construct. This construct can accept any number of property pairs and any number of
defTermProp and defVisibleProp subconstructs. The symbolProps construct is used
to create properties on the symbol cellview or properties on sets of terminal pins.
symbolProps(
<property pair>
<property pair>
.
.
October 2002
609
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
[defTermProp( <terminal list>
<property list>
)]
.
.
[defVisibleProp( <property pair>
<label attributes>
)]
.
.
)
defTermProp
defTermProp defines properties on the terminals represented by any of the following
choices: all, input, output, inputOutput, topPins, bottomPins, leftPins, or
rightPins.
Example:
defTermProp( input
Iih = 1.24
a = 3)
defVisibleProp
defVisibleProp defines a property and the label attributes information for
displaying 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 = mara
format( "value")
location( "xleft : ytop + 0.0625")
justification( centerLeft )
)
property pair
A property pair specification consists of a property name and property value pair. A
property pair uses the format
property_name = property_value
property_name can be any identifier or string. property_value can be a simple value
plus an optional range, a time, a filename, a SKILL expression, or an NLP expression.
October 2002
610
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Property values other than simple values require a keyword and an argument enclosed in
parentheses. Do not leave a space between the keyword and the left parenthesis immediately
following it.
When the property pair is specified directly within the symbolProps construct, a symbol
cellview 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 | FALSE | t | nil} create Boolean properties. Simple values can also
be combined with a range value. When a range is included, enclose the value/range pair in
parentheses. 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 are
expressed as a time value and an optional range. The time value contains the date, time, and
year, enclosed in parentheses. For example, the property
lastChanged = time("Jan 01 8:17:56 2000") is a valid expression. Only the first
three characters are needed to specify the month.
filename
The filename keyword indicates the property type is a filename. Follow filename with a
string indicating the filename. Enclose the filename string in parentheses. For example, the
property myFile = filename("magic.c") is a valid expression.
ilExpr
The ilExpr keyword indicates the property type is a SKILL expression. This type of property
requires 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 of
property requires a valid NLP expression enclosed in parentheses.
October 2002
611
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
range
Range values are optional arguments when specifying a property. A range value can be
either an enumeration type or a pair of values specifying the upper and lower bounds of the
range. The values of range must be enclosed in parentheses. If a range is an enumeration
type, 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 nil
is 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 defsymbol
construct. The following symbol parameters, specific to this construct, are the only ones that
can be included in any order without replication. They are not stored in the symbol master
property list.
wireSpacing
The minimum spacing between any pair of adjacent pin wires on a side. The default is twice
the 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 the
wireSpacing field. The value you supply is rounded to the nearest multiple of snap spacing.
vSideLength
The minimum length of the vertical sides. The default ensures enough vertical span to
accommodate the pins on both sides. If the value you supply is less than the computed
default, the computed default is used. The vSideLength value is rounded to the nearest
snap spacing.
hSideLength
The minimum width of the horizontal sides. The default ensures enough horizontal span to
accommodate the pins on both the top and bottom sides of the symbol, the part name, and
October 2002
612
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
pin name labels. If the value you supply is less than the computed default, the computed
default 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 the
actual graphics for the connector. The choices are square, block, and circle. You can
add new types by creating a new pin connector cellview and updating the
tsgConnectorMasters list in the schConfig.il file.
origin
The default placement of the symbol origin. The choices are topLeftPin,
bottomLeftPin, or centerLeft.
Example:
symbolParam(
wireSpacing
wireLength
vSideLength
hSideLength
pinConnector
origin
=
=
=
=
=
0.125
0.0
0.0
0.0
"block"
= topLeftPin
)
Symbol Labels
The symbolLabels construct has the form CF1, and you can include it in the defsymbol
construct. The symbolLabels construct allows you to define symbol labels. If this construct
is not specified, a set of default labels is generated on the symbol.
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)
October 2002
613
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
apply(cellview)
fontHeight(0.1)
)
A label specification consists of a name and one or more of the following label
attributes: 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 an
underscore before and after any text you want an overbar above. For example, the label
read|_write_ converts to read|write with an overbar above write.
Label Attributes
The following label attributes are shared by the ldefVisibleProp and defLabel
constructs.
location
Location specifies where to place the label. The location keyword is followed by an
expression that positions the label on the symbol. The expression can be any SKILL
expression that evaluates to a point. The location expression is a function of the variables
xleft, xright, ytop, ybottom, and fontHeight for labels applied to a cellview, and of
the variables pinSpacing, stubLength, and fontHeight for labels applied to pins. Top,
bottom, left, and right pin label positions must be specified separately.
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.
October 2002
614
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
apply
Apply specifies whether the label is applied to either the cellview or to specific pins. The
choices are cellview, top, bottom, left, right, input, output, and inputOutput.
labelType
The optional labelType field (used only in the defLabel construct) specifies the label type
as either normalLabel (default), NLPLabel, or ILLabel.
format
The optional format field (used only in the defVisibleProp construct) specifies which
parts 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 is
device.
purpose
The optional purpose field contains a string that defines the purpose of the label. The default
is annotate.
orientation
The optional orientation field determines the rotation of the label in degrees. The choices
are R0, R90, R180, and R270.
isOverbar
The optional isOverbar field determines whether a bar or overline is placed over the label
text that is placed between underscore characters. Assigning a value of t to isOverbar
places 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 requires
a string value specifying the new font style. The default is stick.
October 2002
615
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
fontHeight
The optional fontHeight field specifies the default font height for a label. fontHeight
requires a float value specifying the new height.
Control Parameter
The controlParam construct has the form CF2, and you can include it in the defsymbol
construct. The controlParam construct contains control parameters you can specify to
define execution behavior.
queryMode
Use queryMode only when the specified symbol master already exists in the library. When
set 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 symbol
should be overwritten. It does not prompt you for permission to overwrite an existing symbol
cellview. Refer to “Executing TSG” on page 620 for details about the built-in questions when
queryMode is set to t.
This control parameter is the only one that can be included in this construct and is not stored
in the property list of the symbol master.
Example:
controlParam( queryMode = t )
Pin Number Specification
The pinNumSpec construct has the form CF3, and you can include it in defsymbol. It
contains a list of pinName:pinNumber pairs. A colon (:) separates the pin name and pin
number. Any pin specified in this construct must also be declared in input, output, or io
or TSG ignores it and its pin number. This construct is most often used for printed circuit board
design libraries.
A pin number must be a positive integer. For each pinName:pinNumber pair specified, the
p_pinName property, along with the specified pin number, is stored in the symbol master
property list for annotation and backannotation into instances.
October 2002
616
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
Example:
pinNumSpec(
[<pinName1> : integer]
[<pinName2> : integer] )
Pin Graphic Specification
The pinGraphicSpec construct has the form CF3, and you can include it in defsymbol. It
contains a list of pinName:string pairs. A colon (:) separates the pin name and string. The
construct identifies special pin graphics, such as negation bubbles and clock indicators, to be
drawn with the specified pins. The length of the pin stub and the shape of the pin connector
are 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 the
schConfig.il file, which maps to a corresponding cellview containing the pin graphics. To
create a new type of pin graphic, create a new cellview with the pin graphic and add an entry
to the tsgPinGraphicMasters list in the schConfig.il file.
Example:
pinGraphicSpec(
[<pinName1> : string]
[<pinName2> : string] )
Pin Location Specification
The pinLocSpec construct has the form CF1, and you can include it in defsymbol. The
pinLocSpec construct contains up to four subconstructs with which you can specify the pin
location 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 must
also be specified in the input, output, or io constructs or TSG ignores them. This
construct 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 on
the left of the symbol. A pin specified in input but not specified in pinLocSpec is drawn on
the left before those in leftPins. A pin name in leftPins cannot be specified again in the
other three subconstructs.
October 2002
617
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
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 drawn
on the right of the symbol. A pin specified in output but not specified in pinLocSpec is
drawn on the right before those in rightPins. A pin name in rightPins cannot be
specified 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 the
top of the symbol. A pin specified in io but not in pinLocSpec is drawn on the top before
those in topPins. A pin name in topPins cannot be specified again in the other three
subconstructs.
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.
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 you can include it in defsymbol. It contains one or more of the following
subconstructs to specify the logic types of symbol pins. Both subconstructs have the form
CF1, and you can include them in the pinLogicSpec in any order without replication. Any
pins specified in either subconstruct must also be specified in the input, output, or io
constructs; otherwise, TSG ignores this subconstruct.
October 2002
618
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
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 the
symbol 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, and you 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 be drawn as clock pins. Clock pins are designated by a small triangle (a clock indicator)
next to the pin.
Configuration Variables
tsgFilterGlobalNames
When this SKILL global variable is set to t, global names ending with an exclamation point
are 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 you
have control over the symbol size. The defaults are tsgHSymbolBoxFactor = 1,
tsgVSymbolBoxFactor = 1. For example, tsgHSymbolBoxFactor = .7 would make
symbols narrower.
tsgKeepPinPlacement
Left and right symbol pins are placed starting near the top of the symbol. Therefore, the
uppermost left pin is at the same Y dimension as the uppermost right pin. In other words, the
pins are not centered but instead are moved up near the top of the symbol. When additional
pins are added, the original pins are not moved and do not need to be rewired. If you want to
October 2002
619
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
have the symbol pins centered with respect to the symbol box, set this SKILL global variable
to nil. The default is t.
tsgResolution
You can use this SKILL global variable to override the default tsg resolution. The resolution
defines the granularity for the location of pins, labels, and symbol graphics. The default is
undefined, 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 the
tsgTemplateMasters variable. TSG uses this environment variable to identify which
template file will be loaded during the first run of TSG. For further information, refer to the
tsgTemplateType environment variable.
Executing TSG
TSG runs as a separate SKILL program in the Cadence environment to generate symbols
that you can place as instances in schematics.
Running TSG from SKILL requires a library name, an input filename, and optionally a
template filename. TSG first reads the input parameters from the TSG file, then uses any
symbol parameters contained in the template file that are not specified in the input file. This
allows you to have one large template file that specifies most of the symbol parameters and
smaller TSG files that contain only pin specifications. The resulting cellview is saved to the
library 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> <tsgFile> [<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 the
current directory, include the full path to the file.
tsgTemplateFile is the name of an optional TSG template file. If the template file is
not in the current directory, include the full path to the file.
October 2002
620
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-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 it
to 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 the
symbol view and asks whether to overwrite the existing symbol with one that it is going
to generate.
If you respond yes, TSG goes to step 6. If you respond no, TSG goes to step 4. If you
set 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 TSG
goes 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 passes
control to the Cadence design system.
After program execution, you can find any error messages printed by TSG in the Command
Interpreter Window (CIW).
Creating Symbols Automatically from a Schematic
A convenient feature available from the schematic editor environment allows you to create a
symbol with the same pins that are found within an existing schematic, Verilog, or other
cellview.
The TSG symbol generator is automatically invoked whenever you create symbols using the
Create Cellview – From Cellview command or the Create Cellview – From Pin List
command, which are available from the schematic and symbol editor windows. You can use
the Symbol Generation Options form to override defaults or to help create new TSG template
files.
October 2002
621
Product Version 5.0
Virtuoso Schematic Composer User Guide
Text-to-Symbol Generator
The Symbol Generation Options form can be accessed by turning on the Edit Options button
on the Create Cellview – From Cellview command or the Create Cellview – From Pin
List command.
October 2002
622
Product Version 5.0
Virtuoso Schematic Composer User Guide
C
Symbol and Simulation Library
Generator
The Cadence® SKILL-based symbol and simulation library generator (S/SLG) is a library
management program that generates symbol and simulation views. S/SLG generates a
symbol in the library and defines the complete characterization of a symbol for use in
computer-aided engineering applications.
This appendix describes the S/SLG commands and program and the library management
SKILL functions used with S/SLG.
■
Terms and Conventions on page 625
■
Library Command File on page 626
■
Running the Symbol and Simulation Library Generator on page 626
■
❑
Running the Symbol and Simulation Library Generator in the Cadence Graphic
Environment on page 626
❑
Running the Symbol and Simulation Library Generator in the Cadence Nongraphic
Environment on page 628
Library Management Commands on page 630
❑
lmCheckTerm on page 632
❑
lmCheckView on page 633
❑
lmCloseLib on page 635
❑
lmDefCell on page 636
❑
lmDefTermProp on page 638
❑
lmDefViewProp on page 640
❑
lmDeleteTermProp on page 644
❑
lmDeleteViewProp on page 645
October 2002
623
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
❑
lmGetValue on page 646
❑
lmLoadData on page 647
❑
lmOpenLib on page 648
❑
lmPrintLibTermProp on page 649
❑
lmPrintLibViewProp on page 650
❑
lmPrintTerm on page 651
❑
lmPrintTermProp on page 652
❑
lmPrintViewProp on page 653
❑
lmReset on page 654
❑
lmSimView on page 655
■
Variables That Control Command Execution on page 657
■
Properties That Modify Values on page 658
■
Sample Library Command File on page 658
October 2002
624
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Terms and Conventions
The following table shows the format for library management commands, which is different
from the rest of this user guide.
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 is
either an integer or a floating-point number.
names
A cell name, view name, property name, or filename can contain
alphanumeric characters (a-z, A-Z, 0-9), the underscore ( _ ), and
question mark (?). However, the first character of a name cannot 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 the terminal
name in quotation marks. For example, enclose the terminal names
input, output, io, or switch in double quotation marks.
Enclose property names in double quotation marks.
spaces
No space is allowed between a command name and the left
parenthesis that follows it.
\ (backslash)
If a character such as backslash (\) or double quote ("") is used in
a string, one additional backslash must precede it as an escape
character.
lm + command name 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.
You can use the alias mechanism to give a command a shorter name. For example, the
command alias p lmPrintViewProp makes p an alias name for lmPrintViewProp.
Thus, the command p( and2 symbol ) is equivalent to the command
lmPrintViewProp( and2 symbol ). Then you can use p whenever you would have used
lmPrintViewProp.
October 2002
625
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Library Command File
The library command file is one master text file that contains all text information in the library
programming 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 simulation
views 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
Schematic Composer SKILL Functions Reference for details about programming in
SKILL.
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 Cadence
Graphic Environment
S/SLG is integrated into the Cadence graphic environment. If you want to do symbol
generation or backannotation, you must run S/SLG in the Cadence graphic environment.
Refer to Figure C-1 on page 628 for an overview.
You can run S/SLG either by typing a function or a sequence of functions in the Command
Interpreter 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 save
your generated symbol into S/SLG.
To load your file while you run S/SLG, do the following:
October 2002
626
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
➤
Type the following function in the CIW:
lmLoadData( myFile.lm myLib )
where
lmLoadData opens your working library, loads your library command file, then closes
your 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 during
execution. An exit status of t indicates there are no output or error messages; nil indicates
an error occurred. Error messages can be the result of syntax errors, insufficient arguments,
or undefined parameters.
October 2002
627
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Figure C-1 Diagram of Running S/SLG in the Cadence Graphic Environment
Method 1:
Enter lmOpenLib to open your
working library, then enter one
command or a sequence of
commands in the CIW
Start S/SLG by typing any
S/SLG command in the CIW
Symbol generation/
modification
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
Timing specification
Method 1:
Enter lmCloseLib to close your
working library in the CIW
Consistency
checking
S/SLG opens your
working library
Backannotation
Method 2:
lmLoadData closes your
working library
Running the Symbol and Simulation Library Generator in the Cadence
Nongraphic Environment
You can run S/SLG in the Cadence nongraphic environment in a UNIX window. For running
functions 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
October 2002
628
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmLoadData opens your working library, loads your library command file, then closes
your working library when you complete running S/SLG.
myFile.lm is your library command file.
myLib is your working library.
Refer to Figure C-2 on page 629 for an overview of the above processes.
Figure C-2 Diagram of Running S/SLG in the Cadence Nongraphic Environment
Method 1: Execute Cadence
nongraphic program in a UNIX
window
Enter the command to open your
working library, then enter one
command or a sequence of
commands in a
UNIX window
Timing
specifications
Method 1:
Enter lmCloseLib to
close your working
library in a UNIX
window
Method 2: Create a library command file that
contains S/SLG commands or SKILL functions in
the UNIX window
Start Cadence nongraphic program in a
UNIX window. Type lmLoadData in a
UNIX window within Cadence
nongraphic environment to load the
library command file
Property
addition
S/SLG opens
your working
library
Consistency
checking
Method 2:
S/SLG closes your working
library
Output and Error Messages
Each function returns a running status. Output and error messages are displayed on the
screen during execution. An exit status of t means that there are no output or error
October 2002
629
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
messages, and nil means an error occurred during execution. Error messages can be the
result 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 output
on 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 the
same 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 this
section.
Command Name
Description
lmCheckTerm
Checks the consistency of terminal name, type, and
width for views of a specified cell
lmCheckView
Evaluates a sequence of expressions for specified
cellviews
lmCloseLib
Closes a library previously opened by lmOpenLib
lmDefCell
Defines a cell, generates a symbol, and backannotates
objects
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
lmGetValue
Returns the value of a specified property in the
referenced view
lmLoadData
Loads a library command file
lmOpenLib
Opens a library
October 2002
630
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Command Name
Description
lmPrintLibTermProp
Prints terminal properties of a view for each cell in the
current library
lmPrintLibViewProp
Prints properties of the specified view for each cell in the
current library
lmPrintTerm
Prints names, types, and widths of all terminals of the
specified 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
October 2002
631
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 of
comparison for each cell. Otherwise, terminals in the symbol view are used as the basis of
comparison. When neither schematic nor symbol view exists, no terminal checking is
performed. After checking, inconsistent terminal names/widths and input/output types are
identified 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, output
is 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 in
the file check.out.
lmCheckTerm( t )
Checks the terminal consistency of all views for each cell in the current library.
October 2002
632
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 value
for consistency.
Property values can be included in an expression. The expressions should conform to SKILL
syntax. 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, output
is displayed on the screen.
expression
A property used in an expression refers to the property in <view
name>.
Examples
fast_process = t
margin = 1ns
lmCheckView( (and2 and3) symbol
if( fast_process then
sum = 5ns
trmax = 4ns
tfmax = 3ns
else
sum = 9ns
trmax = 6ns
tfmax = 5ns
)
lmGetValue(tr) < trmax
lmGetValue(tf) < tfmax
lmGetValue(tr) + lmGetValue(tf) <- sum + margin
)
October 2002
633
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Checks some conditions for the rise and fall time in the symbol view of and2 and and3. The
property names tr and tf contain the rise and fall times. The predefined function
lmGetValue gets the value of the specified property.
lmCheckView( t spice
gammaValue = lmGetValue(gamma)
lambdaValue = lmGetValue(lambda)
gammaValue < 0.4
lamdaValue < 0.04
)
Checks the values of the properties gamma and lambda in the spice view for each cell in
the current library.
October 2002
634
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 call
lmCloseLib when you are done if you are not using lmLoadData to load the library
command file.
Example
lmCloseLib
Closes a working library previously opened by lmOpenLib.
October 2002
635
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 required
parameters, the symbol view of the cell can be automatically generated. You can specify
time delay information for a timing analyzer view. In addition, you can specify properties of the
symbol view for simulation and other purposes.
Properties
Each argument specified in lmDefCell is sequentially run in addition to default symbol
generation and timing view generation. You can add commands (such as lmDefViewProp
and lmDefTermProp) to manipulate symbol properties. You can specify a complete
characterization of the symbol in the argument.
October 2002
636
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Variables
You can set the values of several global Boolean variables to change default values. The
symbolGen variable controls symbol generation. The default value, t, triggers symbol
generation as the first action of lmDefCell. If you set symbolGen to nil, no symbol
generation takes place.
The taGen variable controls timing view generation. The default value, t, enables timing view
generation if delayTable parameters are specified. If you set taGen to nil, no timing view
generation 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-toSymbol 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.
timingViolationTable Illegal timing.
Example
lmDefCell( aoi32
input(A1 A2 A3 B1 B2)
output(Y)
lmDefViewProp(
; add some properties to the symbol )
)
Generates a symbol view for the cell aoi32.
October 2002
637
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmDefTermProp
lmDefTermProp(
[<cell name>]
[<view name>]
( <terminal list> <property name> <property value> … <property name> =
<property value> )
( <terminal list> <property name> = <property value> … <property name>
<property value> )
)
Description
Adds properties to the terminals of the specified cellview. To add terminal properties, add
specified properties to the original property list and save the new file.
Variables
The replaceTermProp global variable controls the property-adding mode. The default
value is nil, which means the mode is appending. If you set replaceTermProp to t, the
mode is replacement. replaceTermProp is automatically set to nil when you run
lmDefCell 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 is
treated as the cell name.
view name
Default: symbol
terminal list
Has 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 quotation
marks to distinguish it from the keyword.
October 2002
638
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
property name
Any SKILL symbol (identifier) or string.
property value
Any 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 into
these terminals.
October 2002
639
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmDefViewProp
lmDefViewProp(
[<cell name>]
[<view name>]
( <property name> <property value> … <property name> <property value> )
)
Description
Adds properties to the specified cellview. To add properties, add the specified properties to
the original property list and save the new file.
Variables
The replaceViewProp global variable controls the property adding mode. The default
value, nil, means the mode is appending. If you set replaceViewProp to t, the mode is
replacement. replaceViewProp is automatically set to nil when running lmDefCell and
is 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 is
treated as the cell name.
view name
Default: symbol
property name
Any SKILL symbol (identifier) or string.
property value
Any SKILL expression that returns proper values. The syntax is
as 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>
<enumeration> := <string enumeration> | <string>
<lower bound> := <simple value> | <time value> | nil
<upper bound> := <simple value> | <time value> | nil
October 2002
640
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
<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 is
time, <time value> should contain the date, time, and year.
For example, the property
lastChanged = time(“Jan 20 8:17:56 2000”)
is a valid expression. Only the first three characters are needed
to specify the month.
filename
Indicates the property type is a filename. If the property type is
filename, <filename value> should be a string indicating
the filename. For example, the property
myFile = filename(“magic.c”) is a valid expression.
ilExpr
Indicates the property type is a SKILL expression. This type of
property 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 in
generating 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, a
property list can be specified as the value of a property. That is,
a property list can contain other property lists to form a
hierarchical property list.
range
The values of range must be enclosed in parentheses. If nil is
specified for a lower or upper bound in a range, it is unbounded.
If a range is an enumeration type, each value in the range should
be a string (a name in quotation marks).
Examples
lmDefViewProp( and2 symbol
"instance#" = 1
snapSpacing = 4
screenGridSpacing = 20
screenGridMultiple = 5
drawGrid? = yes
drawAxes? = no
userUnits = "userUnits"
"graphicsEditorUnits per userUnit" = 1
newFont2 = time("Mar 19 14:38:57 2000")
October 2002
641
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
instancesLastChanged = time("Jun 20 10:16:19 2000")
lastChecked = time("Nov 27 14:30:57 1999")
tr = 2.0 * basic_process_time
tf = 0.5 * lmGetValue(tr)
; properties for SILOS simulation (a hierarchical property list
silos = 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 parsing
NLPElementPostamble = nlpExpr("[@SILOS_AND_Image]")
)
; property with name="speed", value=10, type=integer,
; lower-bound=8 and upper-bound=12
speed = (10 (8 12))
; property with name="file", value="property.c", type=filename
file = 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 a
predefined function for getting the value of a named property.
ten = 10
unit = 1n
lmDefViewProp( and2 "cmos_sch"
;
;
;
;
;
define variable ten
define variable unit
cmos_sch is double quoted because
the non-alphanumeric character
"." is in the name
a =
b =
c =
d =
e =
f =
g =
h =
i =
j =
k =
l =
m =
n =
o =
p =
q =
r =
s =
"t"
10
(ten (8 12))
(10)
(ten (8 nil))
2*unit
(2n (1n 4n))
(2n)
(2*unit (nil 4*unit))
yes
; yes, true, and t are identical
true
t
no
; no, false, and nil are identical
false
nil
yes
"test"
("test" ("try" "test" "experiment"))
("test")
("test" ("test" "try" "debug"))
= 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 list
aa = 1
October 2002
642
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
bb = 1.1
cc = proplist(
aaa = 2
bbb = 2.2
)
)
)
Property specification for the cmos_sch view of the cell and2.
October 2002
643
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 list
Has 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 quotation
marks 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 all
output terminals for the symbol view of cell SN74181.
October 2002
644
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmDeleteViewProp
lmDeleteViewProp(
<cell list>
<view name>
<property name> … <property name>
)
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 name
Any 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 current
library.
October 2002
645
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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, or
lmCheckView to remove any ambiguity about the referenced cellview.
Arguments
property name
October 2002
Any SKILL symbol (identifier) or string.
646
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 are
finished.
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 or
nil, the program searches paths previously set up by
dbSetPath for the named library.
t_config
Configuration name, which lets you to set up the working context
of the library. If you specify a null string or nil, the program uses
the 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 your
working library.
October 2002
647
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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
you are 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 or
nil, the program searches paths previously set up by
dbSetPath for the named library.
t_config
Configuration name, which lets you set up the working context of
the library. If you specify a null string or nil, the program uses
the 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.
October 2002
648
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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, output
is displayed on the screen.
Example
lmPrintLibTermProp( symbol )
Prints all terminal properties of the symbol view for each cell in the current library.
October 2002
649
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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, output
is 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.
October 2002
650
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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, the
output is displayed on the screen.
Example
lmPrintTerm( list(“nand2” “symbol”) )
Prints names, types and widths of all terminals of the nand2 symbol cellview.
See pcr 311494
October 2002
651
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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, output
is displayed on the screen.
Output from lmPrintTermProp has the same format as that of lmDefTermProp, so you
can 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.
October 2002
652
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol 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 is
treated 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, the
output is displayed on the screen.
Output from lmPrintViewProp has the same format as that of lmDefViewProp, so you
can 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.
October 2002
653
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmReset
lmReset( )
Description
Resets all global variables to their default values.
October 2002
654
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
lmSimView
lmSimView(
<cell name>
<template view name>
<target view name>
[<target view type>]
<property name> = <property value> … <property name> <property value>
)
Description
Creates a view with specified properties for the specified cell.
Arguments
cell name
Optional only when lmSimView is used in lmDefCell.
template view name
Name of a template view, normally symbol, in which the terminal
information is stored.
target view name
Name of the view to be created.
target view type
Type of the view to be created. Use this optional argument if you
do not want to overwrite the current view type. The view type
schematicSymbol is the default.
property name
Any SKILL symbol (identifier) or string.
property value
Any SKILL expression, as long as the expression returns proper
values.
All specified properties are added into the target view. The arguments <cell name> and
<template view name> must exist in the current library.
Example
lmSimView( and2 symbol silos
CreationTime = time("May 1 10:00:00 2000")
Input_Pin_List = nlpExpr("[|A] [|B]")
NLPElementPostamble = nlpExpr("[|Y] .AND
[@Input_Pin_List]
[@NLPElementId]")
)
October 2002
655
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
simRep
simRep(
<cell name>
<template view name>
<target view name>
[<target view type>]
<property name> = <property value> … <property name> <property value>
)
Description
Creates a view with specified properties for the specified cell. Use this function only for
backward compatibility with Edge 2.1; otherwise, use the lmSimView function.
Arguments
cell name
Optional only when lmSimView is used in lmDefCell.
template view name
Name of a template view, normally symbol, in which the terminal
information is stored.
target view name
Name of the view to be created.
target view type
Type of the view to be created. Use this optional argument if you
do not want to overwrite the current view type. The view type
schematicSymbol is the default.
property name
Any SKILL symbol (identifier) or string.
property value
Any SKILL expression, as long as the expression returns proper
values.
All specified properties are added into the target view. The arguments <cell name> and
<template view name> must exist in the current library.
Example
SimRep( and2 symbol silos
CreationTime = time("May 1 10:00:00 2000")
Input_Pin_List = nlpExpr("[|A] [|B]")
NLPElementPostamble = nlpExpr("[|Y] .AND
[@Input_Pin_List]
[@NLPElementId]")
)
October 2002
656
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Variables That Control Command Execution
Predefined global variables control command execution that affect the modification of the
database. The following table shows variables and how they control lm functions.
Variable
Default Value
Use
symbolGen
t
Controls lmDefCell execution for
defining a cell
taGen
t
Controls lmDefCell execution for timing
view generation
replaceViewProp
nil
Controls lmDefViewProp execution by
controlling the property-adding mode
replaceTermProp
nil
ControlslmDefTermProp execution by
controlling the property-adding mode
October 2002
657
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
Properties That Modify Values
To modify the value of a view or terminal property in the Cadence environment, use the
property list editor.
To delete a property, use lmDeleteViewProp or lmDeleteTermProp. Then use
lmDefViewProp or lmDefTermProp in append mode to put the property with the desired
value 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 to
replace all original properties. Remember to set replaceViewProp to t or
replaceTermProp 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, define
cellview 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 names
input( 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"
)
)
; 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 )
October 2002
658
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
(
(
(
(
(
(
(
(A0
(B0
(A0
(A1
(A2
(A3
(A0
A1 A2 A3) X 17ns:17ns nonInvert )
B1 B2 B3) X 17ns:17ns invert )
B0) F0 32ns:23ns )
B1) F1 32ns:23ns )
B2) F2 32ns:23ns )
B3) F3 32ns:23ns )
A1 A2 A3 B0 B1 B2 B3) AEQB 35ns:32ns )
)
; add properties into the symbol view
lmDefViewProp(
timeAdded = time("Apr 1 10:00:00 2000")
author = "John Smith"
; define properties for SILOS logic/fault simulation if
; used as function model
silos = 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
; 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 generation
symbolGen = nil
lmDefCell( "4531"
; input and output terminal names
input( D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11\
"ODD|EVEN" )
output( Q )
defsymbol(
symbolProps(
vendorName = "TOSHIBA"
October 2002
659
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
partName = "TC4531BP"
refDes = "U200"
)
)
; specify time delay
delayTable(
( (D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11) 320ns:320ns )
( "ODD|EVEN" 210ns:210ns )
)
; add properties into the symbol view
lmDefViewProp(
timeAdded = time("Apr 1 10:00:00 2000")
author = "John Smith"
; define properties for SILOS logic/fault simulation
; if used as a function model
silos = proplist(
NLPElementPostamble =
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, 25C
lmDefTermProp(
( output
iol = 1.5 ; 1.5A
ioh = -1.0 ; –1.0A
)
( input
iil = -0.01nA
iih = 0.01nA
)
)
)
; append properties to the symbol of SN74181
replaceViewProp = nil
lmDefViewProp( "74181"
vdd = 5
date = time("Apr 1 12:00:00 2000")
)
; append properties to some terminals of the symbol of TC4531
replaceTermProp = nil
lmDefTermProp( "4531"
("ODD|EVEN"
check = "odd or even parity"
October 2002
660
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
)
(Q is = "only output"
)
)
; print all properties of the symbol of SN74181 in the file
; prop.74181
lmPrintViewProp( "74181" symbol "prop.74181" )
; print all terminal properties of the symbol of TC4531BP in
; the file term.4531
lmPrintTermProp( "4531" symbol "term.4531" )
; replace the properties in the symbol of SN74169
replaceViewProp = t
lmDefViewProp( "74169" symbol
instancesLastChanged = time("Jun 28 18:37:50 2000")
userUnits = "userUnits"
"DBUPerUU" = 1.0
snapSpacing = 5
screenGridSpacing = 10
screenGridMultiple = 4
displayExpanded? = yes
type = "TTL"
manufacturerID = "TI"
partName = "1000"
)
; replace the terminal properties in the symbol of SN74169
replaceTermProp = t
lmDefTermProp( "74169" symbol
(input
iil = -2mA
iih = 50uA
)
(output
iol = 20mA
ioh = -1mA
)
)
; print the properties of symbol view for each cell in the current
; working library in the file sym.prop
lmPrintLibViewProp( symbol "sym.prop" )
; print the terminal properties of symbol view for each cell
; in the current working library in the term.prop file
lmPrintLibTermProp( symbol "term.prop" )
lmCloseLib
; this command is redundant if you use lmLoadData to load this
; command file.
October 2002
661
Product Version 5.0
Virtuoso Schematic Composer User Guide
Symbol and Simulation Library Generator
October 2002
662
Product Version 5.0
Virtuoso Schematic Composer User Guide
D
Configuring and Using Kanji Notes
You can configure your system to access Add – Note – Kanji Note for instantiating kanji
note symbols in your schematic design. The following topics are covered in this chapter.
■
Overview on page 664
■
Configuring Your System on page 664
■
❑
Installing the Required Files on page 664
❑
Uncompressing the Files on page 664
❑
Modifying the Schematic Editor Menu File on page 665
❑
Setting the Environment Variable on page 665
❑
Modifying the Data Registry File on page 666
Using Kanji Notes on page 667
❑
Formats, Files, and Views on page 667
❑
Adding a New Note on page 667
❑
Generating a Symbol from an Existing File on page 668
❑
Generating a Symbol from a New File on page 669
❑
Editing an Existing Note on page 670
■
Limitations on page 672
■
Known Problems on page 672
■
schHiCreateKanjiSymbol on page 674
October 2002
663
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
Overview
The Virtuoso® schematic composer provides a user interface that lets you create or modify
EUC packed format kanji files. Based on the information in a kanji file, the software generates
a symbol cellview that contains kanji character graphics. You can then add documentation to
your 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 can
access Add – Note – Kanji Note.
Installing the Required Files
The software uses two vector files to convert EUC-formatted files into schematic composer
compatible graphics. The vector files describe the shapes of approximately 5,000 kanji
characters.
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 either
CKK or the Cadence Customer Response Center (CRC).
Uncompressing the Files
To uncompress the vector files, type the following commands at the UNIX prompt:
October 2002
664
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring 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 following
locations 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.
Setting the Environment Variable
The value of the invokeKanjiEditor environment variable determines which kanji EUC text
editor you access from the user interface.
October 2002
665
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
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 in
your .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 following
warning message when users in a TDM workarea save the original EUC file in the same cell
as 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 be
one 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-ascii source text
Pattern
= kanjitxt.euc;
Default_Editor
= NONE;
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.
October 2002
666
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
Using Kanji Notes
The Add – Note – Kanji Note command lets you create symbol cellviews containing kanji
characters 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-formatted
file.
■
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 a
Japanese 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 Note
form. The software then
■
Generates a symbol cellview
■
Creates a kanji cellview
The symbol cellview contains the graphics that represent the characters described in the
EUC file. The software draws each character in the symbol by referencing the X and Y
coordinates, which are stored in the two kanji vector files.
The kanji cellview, which the software stores in your library, contains an exact copy of the
information in the source Japanese EUC packed (multiple-width) formatted file. Because
this copy resides in your library, you can use the schematic editor, whenever you wish, to
change the file and regenerate the associated symbol and any instances.
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 new
symbol and place an instance in your design. There are two ways to generate a new kanji
note symbol:
October 2002
667
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
■
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 (multiplewidth) formatted file, do the following:
1. Choose Add – Note – Kanji Note from the schematic editor menu banner.
The Add Kanji Note form appears.
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
October 2002
668
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
❑
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 Instance command
remains active.
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 Note from the schematic editor menu banner.
The Add Kanji Note form appears.
2. In the File Editor field, click Open.
October 2002
669
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
The software initializes the form with a filename and your kanji text editor opens the new
file.
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 Instance command
remains active.
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.
October 2002
670
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
The form displays the current display parameter settings as CDF values and provides
access 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.
October 2002
671
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
You will not see any change in the schematic editor window until you click OK or Apply
on the Edit Object Properties form.
5. (Optional) On the Edit Object Properties form, change the parameter values.
You will not see any change in the schematic editor window until you click OK or Apply
on the Edit Object Properties form.
6. Click OK or Apply on the Edit Object Properties form.
Caution
The software regenerates the symbol cellview, which changes all
instances 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 to
roundoff errors, however, scale factor values of less than 0.25 might make many
characters unreadable.
■
Each kanji character is converted into many lines in a symbol cellview. Therefore, very
large EUC files result in symbols that require huge amounts of memory, which can slow
redraw speeds significantly.
■
The following character sets are not used often. They are not supported in either the
software 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 for
only the first 20 errors. The conversion process continues, however, until the program
reaches 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
October 2002
672
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
Sometimes, regenerating a kanji symbol results in a warning message similar to the
following:
*WARNING* Ignoring instance "I14" with zero area
You can ignore the warning message. The warning seems to appear when both of the
following 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 text
editor are no longer needed. Although they do not take up much disk space, you should
periodically remove them to maintain a clean file system.
October 2002
673
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
schHiCreateKanjiSymbol
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 do
not affect connectivity.
Usage
Usable when editing schematics or symbols.
Arguments
t_text
Text for your note. The text can include spaces, tabs, and new
lines.
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
October 2002
674
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
Using schHiCreateKanjiSymbol
If you do not specify t_text or you specify it as nil, the options form appears and prompts
you for the note label text.
The editor drags the label described by arguments and prompts you to select a location to
place the label.
Example
schHiCreateKanjiSymbol( "Low Pass Filter Section" )
Creates the single string label Low Pass Filter Section using the current settings of all
other arguments.
October 2002
675
Product Version 5.0
Virtuoso Schematic Composer User Guide
Configuring and Using Kanji Notes
October 2002
676
Product Version 5.0
Virtuoso Schematic Composer User Guide
E
Form Descriptions
Appendix E describes the schematic composer forms.
■
Add Block Form on page 682
■
Add Custom Pin Form on page 683
■
Add Generic Form – VHDL Properties on page 684
■
Add Instance Form on page 685
■
Add Kanji Note Form on page 686
■
Add Net Expression Form on page 687
■
Add New Property to Find Form on page 688
■
Add New Property to Replace Form on page 689
■
Add New Property for Search Form on page 690
■
Add Note Shape Form – Arc on page 691
■
Add Note Shape Form – Circle on page 692
■
Add Note Shape Form – Ellipse on page 693
■
Add Note Shape Form – Line on page 694
■
Add Note Shape Form – Polygon on page 695
■
Add Note Shape Form – Rectangle on page 696
■
Add Note Text Form on page 697
■
Add Pin Form – Schematic on page 699
■
Add Pin Form – Symbol on page 700
■
Add Property Form – Edit Object Properties on page 701
■
Add Selection Box Form on page 702
October 2002
677
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
■
Add Simulation Monitor Form on page 703
■
Add Symbol Label Form on page 705
■
Add Symbol Shape Form – Arc on page 706
■
Add Symbol Shape Form – Circle on page 707
■
Add Symbol Shape Form – Ellipse on page 708
■
Add Symbol Shape Form – Line on page 709
■
Add Symbol Shape Form – Polygon on page 710
■
Add Symbol Shape Form – Rectangle on page 711
■
Add Wire Form on page 712
■
Add Wire Name Form on page 713
■
Build Inherited View List Form on page 715
■
Cellview From Cellview Form on page 716
■
Cellview From Instance Form on page 717
■
Cellview From Pin List Form on page 718
■
Cellviews with Evaluated Net Expression Name Form on page 719
■
Change Sheet Border Size Form on page 720
■
Check Hierarchy Form on page 721
■
Component Browser Form on page 722
■
Component Browser Preferences Form on page 723
■
Copy Form on page 724
■
Create Cellview Dialog Box – Replace or Modify on page 725
■
Create Schematic Form on page 726
■
Create Schematic Sheet Form on page 727
■
Cross Reference Options Form on page 728
■
Cross-View Checker Form on page 729
■
Delete All Markers Form on page 730
■
Delete Generic Form – VHDL Properties on page 731
October 2002
678
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
■
Delete Property Form – Edit Object Properties on page 732
■
Delete Schematic Sheet Form on page 733
■
Descend Form – Descend Options on page 734
■
Descend Form – Iterated Instance on page 735
■
Descend Form – Multisheet on page 736
■
Descend Form – Noniterated Instance on page 737
■
Display Options Form on page 738
■
Edit Cellview Properties Form on page 741
■
Edit Component Display Form on page 743
■
Edit Object Properties Form – Basic on page 745
■
Edit Object Properties Form – Instance and Block on page 746
■
Edit Object Properties Form – Instance Pin on page 749
■
Edit Object Properties Form – Label on page 751
■
Edit Object Properties Form – Master Property on page 753
■
Edit Object Properties Form – Net Expression on page 755
■
Edit Object Properties Form – Note Shapes on page 757
■
Edit Object Properties Form – Note Text on page 759
■
Edit Object Properties Form – Other Object on page 761
■
Edit Object Properties Form – Pin on page 763
■
Edit Object Properties Form – Pin Name on page 765
■
Edit Object Properties Form – Selection Box on page 767
■
Edit Object Properties Form – Symbol Label on page 768
■
Edit Object Properties Form – Symbol Pin on page 770
■
Edit Object Properties Form – Symbol Shape on page 772
■
Edit Object Properties Form – Wire Name on page 774
■
Edit Object Properties Form – Wire Segment on page 776
■
Edit Pin Order Form on page 778
October 2002
679
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
■
Edit Schematic Sheet Number Form on page 779
■
Editor Options Form on page 780
■
Find Marker Form on page 783
■
Go To Pin Form on page 785
■
Go To Sheet Form on page 786
■
Import Symbol Form on page 787
■
Left, Right, Top, Bottom Pin Attributes Form on page 788
■
Load Label Display Form on page 789
■
Load Schematic Defaults Form on page 790
■
Modify Generic Form – VHDL Properties on page 791
■
Modify Property Form – Edit Object Properties on page 792
■
Move Form on page 793
■
Net Expression Available Property Names Form on page 794
■
Net Expression Evaluated Names Form on page 795
■
Occurrence Paths to Evaluated Name Form on page 796
■
Open Simulation Data Form on page 797
■
Plot Options Form on page 798
■
Renumber Instances Form on page 800
■
Reset Invisible Labels Form on page 801
■
Rotate Form on page 802
■
Route Flight Line Form on page 803
■
Save Label Display Form on page 804
■
Save Schematic Defaults Form on page 805
■
Save Schematics with Errors Form on page 806
■
Schematic Check Options Form on page 807
■
Schematic Find and Symbol Find Forms on page 809
■
Schematic Replace and Symbol Replace Forms on page 811
October 2002
680
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
■
Schematic Select All Form on page 813
■
Schematic Select By Property Form on page 814
■
Schematic Selection Filter Form on page 815
■
Schematic Title Block Properties Form on page 816
■
Set Instance Binding Form on page 817
■
Set Label Display Simulation Data Directory Form on page 818
■
Set Radix Form on page 819
■
Set Time Form on page 820
■
Setup Schematic Rules Checks Form on page 821
■
Show Label Form on page 825
■
Show Views Found Form on page 826
■
Stretch Form – Schematic Editor on page 827
■
Stretch Form – Symbol Editor on page 829
■
Submit Plot Form on page 830
■
Symbol Generation Options Form on page 834
■
Symbol Select All Form on page 838
■
Symbol Select By Property Form on page 839
■
Symbol Selection Filter Form on page 840
■
Synchronization Form on page 841
■
Time Scale Form on page 842
■
VHDL Properties Form on page 843
October 2002
681
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Block Form
Library specifies the library in which you want to add a new block. The default is the library
for the current design.
Cells specifies the cell name of the block you want to create. You can specify multiple cell
names by using a space to separate each name. The Cells and Names fields must match in
number. If there are more entries in Cells than 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 Cells and the Names
fields. You can specify multiple cell names by using a space to separate each name. The
Cells and Names fields must match in number. If there are more entries in Cells than 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.
Pin Name Prefix specifies a name that the system uses to name all the pins that the system
creates 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 add
to the design.
freeform prompts you to drag your cursor between two points to specify the opposite
corners 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.
October 2002
682
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Custom Pin Form
Pin Names specifies the names for the pins you want to add to your design and the order in
which you want to add them. To add more than one pin name, use a space to separate the
pin 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 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 interprets a bus name as multiple names and generates a pin for each bit of a bus
range that you specify in the Pin Names field. For example, for the name A<0:1>, the
system 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 between
horizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between vertical
and 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.
October 2002
683
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Generic Form – VHDL Properties
Name specifies the generic name.
Type specifies the generic type.
Value (Optional) specifies a value for the generic.
October 2002
684
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 – Editor command) to
specify which 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 current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point.
October 2002
685
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Kanji Note Form
Kanji EUC File specifies the path for an existing EUC packed formatted file. Leave this field
blank 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 .doc
suffix. 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 kanji
symbol. When you start the kanji text editor, the software automatically places the name of
the 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 cellname
by appending the current schematic cellname with a string ( _kanji_ ) and a unique
number.
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.0
represents a character that is 50 database units high and 50 database units wide, which is
the 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 characters
unreadable.
Horizontal Spacing specifies the prescaled X distance between adjacent characters. The
default 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 Y distance between adjacent characters. The
default value is 20 database units.
October 2002
686
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Net Expression Form
Property Name specifies the name of the property that can be used to override the default
global signal; in other words, the name of the property whose value redefines the name of the
net. The system evaluating the expression searches for the property that has this name to get
the value to inherit for the net.
Default Net Name specifies the global signal name to be used for the net associated with
this net expression label. The system uses the default net name —for example vdd!, gnd!,
or vss! –—when a netSet property has not been found on an instance of the current
hierarchical 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 from
the 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 the
wire or pin.
Rotate turns the label text counterclockwise in 90-degree increments around the reference
point.
October 2002
687
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add New Property to Find Form
Property Name specifies a name of the property you want to add to the property name
search list on the Schematic Find or Symbol Find form.
October 2002
688
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add New Property to Replace Form
Property Name specifies a name of the property you want to add to the property name
search list on the Schematic Replace or Symbol Replace form.
October 2002
689
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add New Property for Search Form
Property Name specifies a name for the property you want to add to the list of property
names on the Schematic Select By Property form.
October 2002
690
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Arc
Shape specifies a shape you can add to your design to outline the note text. The Add Note
Shape 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.
October 2002
691
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Circle
Shape specifies a shape you can add to your design to outline the note text. The Add Note
Shape 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.
October 2002
692
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Ellipse
Shape specifies a shape you can add to your design to outline the note text. The Add Note
Shape 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.
October 2002
693
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Line
Shape specifies a shape you can add to your design. The Add Note Shape form expands
and contracts 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 to
change the default width of 0.0625 user units.
October 2002
694
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Polygon
Shape specifies a shape you can add to your design to outline the note text. The Add Note
Shape 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 between
horizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between vertical
and 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.
October 2002
695
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Note Shape Form – Rectangle
Shape specifies a shape you can add to your design to outline the note text. The Add Note
Shape 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.
October 2002
696
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 button
to 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, then
press Control-u.
October 2002
697
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Read File copies in a file and displays the file contents in the Note Text field. This action
overwrites 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 file
contains characters that cannot be displayed, the system issues a warning and removes the
characters before copying in the file.
The following options affect the appearance of the note text in the design but not in the Note
Text 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 reference
point.
October 2002
698
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Pin Form – Schematic
Pin Names specifies the names for the pins you want to add to the design and the order in
which you want to place them. To add more than one pin name, use a space to separate each
name. When you enable the Bus Expansion option, you can use a bus expression to name
an array 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 default
is schematic. Use offsheet only when you are going to connect the added pins to another
sheet in 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 generate
a 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 for
each bit of a bus range that you specify in the Pin Names field. For example, for the pin
A<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. The
system uses the distance between these two points as a basis for automatically placing
any 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 reference
point.
Upside Down mirrors the pin across an imaginary horizontal line passing through the
reference point.
October 2002
699
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Pin Form – Symbol
Pin Names specifies the names for the pins you want to add to the design and the order in
which you want to place them. To add more than one pin name, use a space to separate each
name. If you enable the Bus Expansion option, you can 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 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 interprets a bus name as multiple names and generates a pin for each bit of a bus
range that you specify in the Pin Names field. For example, for the pin A<0:1>, the
system generates 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. The
system uses the distance between these two points as a basis for automatically placing
any 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 reference
point.
Upside Down mirrors the pin across an imaginary horizontal line passing through the
reference point.
October 2002
700
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 appears
on the form.
Choices appears when Type is set to string. If the string can have more than one value,
type the 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 and
maximum range for the integer or floating-point value.
October 2002
701
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Selection Box Form
Use your mouse to indicate two opposite vertices of a rectangle that contains the objects you
want to select, or click Automatic.
Automatic adds a selection box that contains all the objects that make up the symbol.
October 2002
702
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Simulation Monitor Form
Signal Name specifies the names of the nets you want to monitor. You can add net names
by selecting a wire, pin, or instance in the schematic or by typing the signal names. Use a
space 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 warning
is issued.
■
The system concatenates relative signal names to the scope of the design, which results
in a fully scoped name being passed to the simulation database connection. For
example, 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 you
probe 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 monitor
displays. 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 time
the current simulation time of the window changes.
display shows the state of the signal only until the command ends. When the command
ends, all simulation monitors are deleted.
Bus Expansion specifies how Signal Name is interpreted.
off (default) places a monitor for each terminal name that you specify in the Signal
Name field. When selected, the system resets the signal name of the pin to the full text
of the name that generates the current member name.
on generates the terminal name for each bus name (specified as individual vectors) in
the order specified in the Signal Name field. For example, for the name A<0:1>, the
system generates the labels A<0> and A<1>.
October 2002
703
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
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 any
remaining monitors.
Auto Placement automatically places the specified signal monitors near a pin figure that
connects to a matching net name.
October 2002
704
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Label Form
Label specifies the label name. The system fills in this field automatically, depending on the
option 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 reference
point.
October 2002
705
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Arc
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and contracts depending on which Shape option you select.
October 2002
706
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Circle
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and 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.
October 2002
707
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Ellipse
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and 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.
October 2002
708
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Line
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and 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 between
horizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between vertical
and 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.
October 2002
709
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Polygon
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and 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 between
horizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between vertical
and 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.
October 2002
710
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Symbol Shape Form – Rectangle
Shape specifies a shape you can add to your design. The Add Symbol Shape form expands
and 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.
October 2002
711
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 between
horizontal and vertical.
begins an L90 shape with a vertical line segment and alternates between vertical
and 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 set
Draw Mode to route.
full draws complex lines consisting of right angles and up to three segments to complete
the 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
movement.
. Use this option to control the cursor
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 wire
and 0.0625 for a wide wire.
October 2002
712
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Add Wire Name Form
Names specifies one or more names for wires. You can specify multiple names by separating
each 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 that
includes all the bits in the bus range. For example, for the name A<0:1>, the system
generates only the name A<0:1>.
on interprets the bus name as multiple names and generates a name for each bit of a
bus range that you specify in the Names field. For example, for the name A<0:1>, the
system generates names A<0> and A<1>.
Placement controls whether you can place multiple wire names automatically in one
operation.
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 you
want 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 offset values that
the system uses for placing wire names on horizontal or vertical wires.
Text Offset specifies the distance between a wire name and a wire.
October 2002
713
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 reference
point when Entry Style is set to manual.
October 2002
714
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Build Inherited View List Form
Available Constants/Views provides a selection list of available constants and views. The
list is made up of constants that have been defined for this design and the union of all views
of 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 are
creating.
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.
October 2002
715
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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, and
view names. The system automatically fills in the form with the information you specify in the
browser.
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
click on 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 in
an editor window when you complete the cellview generation process.
Edit Options, when enabled, displays a subform when you complete the Cellview From
Cellview form. Use the subform to specify other options.
October 2002
716
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 created
cellview in an editor window when you complete the cellview generation process.
October 2002
717
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 pin
name.
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
setting initializes 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, and
view name. The system automatically fills in the form with the information you select in the
browser.
Display Cellview, when enabled, causes the software to open the newly created cellview in
an editor window when you complete the cellview generation process.
Edit Options, when enabled, displays a subform when you complete the Cellview From Pin
List form. Use the subform to specify other options.
October 2002
718
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Cellviews with Evaluated Net Expression Name Form
Cellview shows the full list of cellviews that contain net expressions that evaluate to the
selected evaluated name.
Property Name shows the property name in the list of cellviews.
Default Value shows the default value (usually a global name) in the list of cellviews.
Number of Occurrences shows the number of occurrence paths down the hierarchy to a
cellview which has a net expression that evaluates to the specified name.
October 2002
719
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 in
a 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 the
title block.
continue changes the sheet to include sheet-specific border titles in the title block.
October 2002
720
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 updated
since the last time you saved your design.
Referenced libraries specifies whether the hierarchy check continues outside of the
current library.
check activates the text field so you can edit the list. When you click Apply or OK, the
system checks the libraries displayed in the field.
do not check (default) checks only the current library; the libraries that appear in the
text field are not checked.
Save schematics specifies whether the system saves schematics when the check
operation is 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 the
system handles schematics that contain errors.
Ask Me (default) prompts you to confirm which of the displayed schematics you
want 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 cell
view.
October 2002
721
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 this
option.
Filter specifies a text string that limits the list box display to categories or cells that contain
the 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
the form. 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).
October 2002
722
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Component Browser Preferences Form
Browser Opens with the Invocation of when turned on (default), the system opens the
Component 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 when
you 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.
October 2002
723
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Copy Form
Snap Mode specifies the angles along which you can move copied objects within the
cellview.
anyAngle (default) lets you move the copied objects along any angle.
diagonal restricts the movement of copied objects to points along 45-degree, 90degree, and 180-degree angles from the current location.
orthogonal restricts the movement of copied objects to points along the X and Y axes
from the current location.
Array lets you create multiple copies of a selected object in a single operation and specify
the 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 current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point.
October 2002
724
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 schematic
instances, 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 pin
locations, 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 these
new pins and to adjust any symbol graphics. The system determines attributes 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 cellview and
in the Command Interpreter Window (CIW)
■
Does not delete cellview or terminal properties
October 2002
725
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 begin
editing.
Size specifies the size of the sheet border for the new schematic. The possible values are A
through F, A Book, and none.
Type specifies the type of sheet border.
basic specifies global and sheet-specific border titles. This option creates a template
only. 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 such
as the sheet size and number.
October 2002
726
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Create Schematic Sheet Form
Number specifies the sheet number that the editor creates when you click Apply or OK. The
default sheet number is the next sheet number in the multisheet sequence. Valid choices are
integers greater than zero (0).
Size specifies which sheet border size the editor uses for the new sheet. The valid choices
are 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 option
when 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
schematic in the current design window.
October 2002
727
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Cross Reference Options Form
Generate Cross Reference Report File specifies whether the system generates a crossreference 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 File
field.
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 crossreference 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 design
window and report file.
Format String specifies the format of the text strings that the system displays in the
design window. The default is
sheetNumber zone referenceName
Show Duplicate Zones determines whether the system displays duplicate pin
references 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 crossreference lists.
Direction sorts the pins into groups by pin direction, then sorts the groups by sheet
number and zone. The valid pin direction groups are input pins, output pins, and
I/O pins.
Sheet Number sorts the reference list by sheet number and zone.
October 2002
728
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Cross-View Checker Form
Cross View Check Severity specifies which action the system performs when pin names
and 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
on OK or Apply.
Match Pin Names Exactly, when enabled, checks whether pin names match exactly. For
example, 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 terminals
match.
Match Terminal Net Expressions, when enabled (default), checks whether terminal net
expressions match.
October 2002
729
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 hierarchy
starting from the current cellview.
Source specifies the category of markers that are to be deleted in terms of the program that
generated 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.
October 2002
730
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 system
fills in the form with the generic information.
October 2002
731
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Delete Property Form – Edit Object Properties
Note: In general, you use the Delete Property form only to delete properties from the Edit
Object Properties form or the Edit Cellview Properties form. Therefore, to delete properties
from your cellview, you normally click OK or Apply on the form that calls the Delete Property
form. However, the software deletes hierarchical properties from the database when you click
OK 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.
October 2002
732
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 not
specify the last sheet number in the range, only the current sheet is deleted. The default is
same.
October 2002
733
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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
Edit form. The list contains the existing view names for the instance.
use viewNameList uses the view name list to automatically descend into the first
existing view for the specified instance. Enter the view name list on the Editor Options
form.
October 2002
734
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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.
October 2002
735
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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.
October 2002
736
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Descend Form – Noniterated Instance
View Name contains a list of the existing view names for the selected instance.
October 2002
737
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 have
descended. If you have descended down through an instance that has a netSet override
property, the overriding signal name is displayed in the schematic editor window.
Display preferences for net expressions and evaluation for a particular descended branch of
the hierarchy are as follows:
Property gnd not
found
Property gnd found
and specifies
mygnd!
Property gnd found and
specifies a local signal
“A” two levels down
from the top
value only
gnd!*
mygnd!*
/I1/I2/A*
value (default)
gnd! (gnd!)*
mygnd! (gnd!)*
/I1/I2/A (gnd!)*
value [property
name]
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!]*
Drag Limit lets you specify the maximum number of shapes whose movement is shown in
the design window during a move or copy operation. When the total number of shapes
exceeds 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 edit
a schematic view.
Object-Sensitive Pop-Up Menus lets you use the middle mouse button to open a menu
of commands. 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 appears
whenever 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 certain
active commands are implemented.
off disables this option.
October 2002
738
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 block
instance, the system terminates the wire on the edge of the block. When you add a wire to
another 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
the design 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
the status 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.
October 2002
739
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Spacing specifies the number of user units between minor grid points on the visible grid. The
default 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 default
distance (0.0625) is equal to half the default grid spacing distance.
October 2002
740
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 form
expands and contracts depending on which of the Show options you select and whether you
select 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 editing
session.
schType identifies the type of schematic data.
instNamePrefix (appears only when the cellview is a symbol) defines a new prefix for
instances of the symbol cellview. The prefix can be more than one character.
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 corner
and lower left corner of the cellview.
Note: Except for the instNamePrefix symbol property, you cannot add, delete, or modify
system-generated properties.
October 2002
741
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 enable
one of the display options (value, name, or both), the information appears on the schematic
near 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 Modify buttons appear on the form only when you enable the Show
– user option at the top of the form. Use these options to add, delete, and modify userdefined properties.
Add displays the Add Property form, which you use to add new user properties to the Edit
Cellview Properties form. To add the new properties to your cellview, click on OK or Apply
on the Edit Cellview Properties form.
Delete displays the Delete Property form, which lets you delete user properties. To delete
properties from your cellview, click OK or Apply on the Edit Cellview Properties form.
Caution
The software deletes hierarchical properties from the database when you
click OK or Apply on the Delete Property form.
Modify displays the Modify Property form, which lets you change the names and values for
selected user properties. To apply the changes to your cellview, click on OK or Apply on the
Edit Cellview Properties form.
October 2002
742
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 selected
terminals.
parameter expands the form to let you edit the display information for the selected
parameters.
instance expands the form to let you edit the display information for the selected
instances.
Auto Redraw specifies whether the editor redraws the schematic automatically when you
click 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
the system to save the current label display configuration.
Load opens the Load Label Display form, which lets you specify a previously saved label
display configuration file that you want to use.
Attach saves the current label display configuration to a temporary file and attaches the file
to 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 display
configuration.
October 2002
743
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
You can apply literal, suffixes, globals, related, and full options to the label
display configuration of parameters.
You can apply schematic or simulation options to the label display configuration
of a 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 Time when to apply transient voltage or current.
October 2002
744
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Basic
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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 Description
Format (CDF).
October 2002
745
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Instance and Block
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending on the selected object type. The possible choices for the instance object type
are same master and 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 Description
Format (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 to
their default specifications as defined in the symbol view.
October 2002
746
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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
the schematic.
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 Objects
Properties 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 Object
Properties form.
Delete displays the Delete Property form, which lets you delete selected properties from the
Edit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currently
displayed on the Edit Object Properties form.
The following fields appear for block editing in addition to the ones described for editing an
instance on the previous pages.
FreezePinCreate appears only if you have selected a block. It controls whether the system
adds a pin to a block when you connect a new wire to the edge of a block. When this option
is disabled (default), the system automatically creates a pin when you click on the edge of a
block 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 Editor
Options form (Options – Editor command) to specify the pin directions.
The following options appear on the form only when you enable the Show – system option.
October 2002
747
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 this
option and derives the net name from the pin name.
October 2002
748
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Instance Pin
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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 Description
Format (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.
October 2002
749
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
The cyclic field to the right of the Name field determines whether the system displays the
property value in the schematic.
The Add, Delete, and Modify buttons affect only the display of properties on the Edit Objects
Properties 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 Object
Properties form.
Delete displays the Delete Property form, which lets you delete selected properties from the
Edit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currently
displayed on the Edit Object Properties form.
October 2002
750
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Label
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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 (placement
location).
October 2002
751
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Drafting, when enabled (default), maintains the normal orientation of the text as you rotate
a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a label. When this option is disabled (default), the software displays
underscore characters ( _ ) in the label as part of the label text string. When this option is
enabled, the software interprets underscore characters ( _ ) in the label as toggle switches
that control where overbars begin and end. Overbars appear above the label, as shown in the
examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
752
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Master Property
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 option
does 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 the
schematic.
off displays neither the name nor the value.
value (default) displays only the value.
October 2002
753
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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
a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a property label. When this option is disabled (default), the software displays
underscore characters ( _ ) in the property label as part of the property label text string. When
this option is enabled, the software interprets underscore characters ( _ ) in the property label
as toggle switches that control where overbars begin and end. Overbars appear above the
property label, as shown in the examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
754
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Net Expression
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 default
global signal. In other words, the name of the property whose value redefines the name of
the net. The system evaluating the expression searches for the property that has this name
to get the value to inherit for the net.
Default Net Name specifies the default property name of the global signal or net name. The
system uses the default net name—for example vdd!, gnd!, or vss!—when an inherited
connection 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 descend
path 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.
October 2002
755
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Justification specifies where the label appears in relation to its origin (placement location).
October 2002
756
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Note Shapes
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 text
field 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.
October 2002
757
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Point List specifies the coordinates for the points that make up the shape.
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. Note
that 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.
October 2002
758
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Note Text
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Attachment performs two functions.
■
When the text is already associated with an object, the software highlights the associated
object in the cellview.
■
Lets you associate the note text with an object in the cellview by automatically drawing a
line 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
to load 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.
October 2002
759
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Justification lets you specify where the note text appears in relation to its origin (placement
location).
Drafting, when enabled (default), maintains the normal orientation of the note text as you
rotate a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over the note text. When this option is disabled (default), the software displays
underscore characters ( _ ) in the note text as part of the note text string. When this option is
enabled, the software interprets underscore characters ( _ ) in the note text as toggle switches
that control where overbars begin and end. Overbars appear above the note text, as shown
in the examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
760
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Other Object
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 the
schematic.
off displays neither the name nor the value.
value (default) displays only the value.
name displays only the name of the property.
October 2002
761
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
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
a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a property name. When this option is disabled (default), the software displays
underscore characters ( _ ) in the property name as part of the property name text string.
When this option is enabled, the software interprets underscore characters ( _ ) in the
property name as toggle switches that control where overbars begin and end. Overbars
appear above the property name, as shown in the examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
762
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Pin
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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 – system option, the form expands to display information
about the 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.
October 2002
763
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
CDF (default) displays predefined properties defined by the Component Description
Format (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 Object
Properties form.
Delete displays the Delete Property form, which lets you delete selected properties from the
Edit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currently
displayed on the Edit Object Properties form.
October 2002
764
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Pin Name
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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 can
choose 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.
October 2002
765
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Drafting when enabled (default) maintains the normal orientation of the text when you rotate
a label 180 degrees around a reference point. When disabled, rotated text appears upside
down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a pin name. When disabled (default), the software displays underscore
characters ( _ ) in the pin name as part of the pin name text string. When enabled, the
software interprets underscore characters ( _ ) in the pin name as toggle switches that control
where overbars begin and end. Overbars appear above the pin name, as shown in the
examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when pin names actually contain underscore
characters, Cadence recommends that you disable this display option. It
is provided only for backward compatibility.
October 2002
766
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Selection Box
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 the
selection scope is set to only current.
October 2002
767
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Symbol Label
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 can
set 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.
October 2002
768
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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
a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a label. When this option is disabled (default), the software displays
underscore characters ( _ ) in the label as part of the label text string. When this option is
enabled, the software interprets underscore characters ( _ ) in the label as toggle switches
that control where overbars begin and end. Overbars appear above the label, as shown in the
examples.
Label Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when labels actually contain underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
769
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Symbol Pin
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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. You
can toggle this option to off to suppress the display.
October 2002
770
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Direction specifies a direction for the pin.
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 wire
segment can be attached to a pin. You can specify combinations of these options. These
options are not referenced in the Virtuoso® schematic composer environment; they are
referenced 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 Objects
Properties 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 Object
Properties form.
Delete displays the Delete Property form, which lets you delete selected properties from the
Edit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currently
displayed on the Edit Object Properties form.
October 2002
771
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Symbol Shape
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object 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 text
field 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.
October 2002
772
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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. Note
that 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.
October 2002
773
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Wire Name
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending on the selected object type.
Attachment performs two functions.
❑
When the Label entry is already associated with an object, the software highlights
the associated object in the cellview.
❑
It lets you associate the Label entry with a wire segment in the cellview by
automatically drawing a line from the wire name to the object when you move the
cursor into the design window.
Label specifies the net name.
Value determines whether the system displays the property value in the schematic. You can
toggle this option to off to suppress the display.
October 2002
774
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 (placement
location).
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
a label 180 degrees around a reference point. When this option is disabled, rotated text
appears upside down.
Overbar is only a display option. You use this option to specify whether the software displays
an overbar over a wire name. When this option is disabled (default), the software displays
underscore characters ( _ ) in the wire name as part of the wire name text string. When this
option is enabled, the software interprets underscore characters ( _ ) in the label as toggle
switches that control where overbars begin and end. Overbars appear above the wire name,
as shown in the examples.
Property Name
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when names actually contain underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
October 2002
775
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Object Properties Form – Wire Segment
You use the Previous and Next buttons along with the Apply To options below to locate
objects in your design window. When there are multiple objects in the selected set, you use
the Next and Previous buttons to locate objects in the set. You use the Apply To options to
specify the objects the software changes.
Previous cycles backward to view the preceding object in the selected set. When you reach
the 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 last
object 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 of
objects in a selected set, whose properties you want to change. The software uses one color
to highlight selected objects. But when there are multiple objects in the selected set, the
software uses a second color to highlight the current object. And when you configure the
cyclic fields to apply changes to multiple objects, the software uses a third color to highlight
all the affected objects.
Selection scope specifies whether you want to edit only the current object, only the
selected objects in the specified object type group, or all the objects in the specified
object type group (which includes both selected and unselected objects of the specified
object type).
Object group lists the object types in the selected set. Use this option to locate the first
object of a particular object type.
Object filter appears only when the selection scope is set to all selected or all. This
option acts as a secondary filter for further limiting the selection scope. The options vary
depending 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.
October 2002
776
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Display determines whether the system displays the property value in the schematic. You
can 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 you
enable the wide option.
The Add, Delete, and Modify options affect only the display of properties on the Edit Objects
Properties form.
Add displays the Add Property form, which lets you add a new property to the Edit Object
Properties form.
Delete displays the Delete Property form, which lets you delete selected properties from the
Edit Object Properties form.
Modify displays the Modify Property form, which lets you redefine properties currently
displayed on the Edit Object Properties form.
October 2002
777
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 output
input inputOutput, and the pins in each type are sorted alphanumerically.
Copy From copies a pin order property from a list of available views.
October 2002
778
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Edit Schematic Sheet Number Form
From Number specifies the current sheet number.
To Number specifies the new sheet number.
October 2002
779
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Editor Options Form
Add Instance Browser Type specifies which browser the system opens when you click on
the 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 pins
automatically when you connect a wire to a block.
edge (default) specifies the pin direction based on the edge where the system creates
the 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. When
you 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 Wire
command. When you start a wire from the edge of a block, the system creates an output
pin. 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 wire
snapping is enabled, the system highlights an unconnected pin in the design when you move
the cursor near the pin.
Automatic Solder Dots when enabled (default), automatically creates a solder dot when
you create wire intersections. The system does not create solder dots when you draw a wire
over another wire.
Solder Dot Wire Overlap specifies the amount that a solder dot extends outward from the
thickest wire segment the dot connects.
Symbol Generator Pin Sorting specifies how the text-to-symbol generator sorts the
symbol pins 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 when
a schematic exists for the specified cellview.
Add Symbol Pins as Instances specifies how the symbol editor creates pins when you
add pins to a symbol using the Add – Pin command or creates a symbol using the Create
Cellview – From Cellview command.
October 2002
780
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
off (default) creates a graphical symbol pin shape based on a symbol pin master. After
you place symbol pin shapes, any changes you make to the original symbol pin master
do 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, any
changes you make to the symbol pin master also affect the appearance of all the existing
instances created from the symbol pin master.
Modal Commands specifies whether repeatable commands remain active after you
complete an action.
off specifies that repeatable commands cannot be repeated.
on (default) specifies that repeatable commands remain active until you press the
Escape key. However, some repeatable commands do not remain active when you
enable this option if you have preselected an object. The Copy, Move, and Edit
commands are 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 the
system generates when you check your design.
View Name List displays a series of view names listed in the order you want the editor to
display them, if they exist. You use View Name List in conjunction with the Hierarchy –
Descend Edit and Hierarchy – Descend Read commands.
Bus Range Order specifies which order the system uses to generate buses. The default is
ascending.
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 or
connect to a pin. The unique name consists of the prefix that you specify in the Net
Name Prefix field followed by a number.
derived generates a net name from the driving instance name and the driving terminal
name. The derived net name is of the form instName_pinName.
Net Name Separator specifies the field separator for derived names. The underscore
character ( _ ) is the default separator. You can edit the separator when you select the
derived option in the Net Name Method field.
October 2002
781
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Net Name Prefix specifies the prefix for all new net names generated by the editor. The
default is net. You can edit this field when you select the prefix option.
October 2002
782
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Find Marker Form
To Ignore appears only when the Show Ignored option is on (default).This option ignores
violations indicated by markers in future rule extractions. The schematic composer opens a
column in the list box. It then displays an asterisk in the column when you apply an
ignoreCheck property to a corresponding marker.
Reason displays marker severity levels, associated messages, and the cellview name where
the errors and warnings occurred.
Zoom To Markers displays a magnified view of the specified marker in the design window
if it is turned on.
Scale appears only when you turn on Zoom To Markers. This option lets you specify the
zoom scale. 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
Show Ignored is on (default), the software displays the To Ignore label above the list box
and opens a column under the label. The software displays an asterisk in the column when
you apply an ignoreCheck property to a corresponding marker.
Ignore automatically assigns an ignoreCheck property 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 the
top cellview in the window.
hierarchy starting from current cellview searches the design hierarchy, starting with
the current cellview in the window.
October 2002
783
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Source displays a button and label for the sources of the error and warning messages. When
there is more than one source for the error and warning messages, you can toggle the source
buttons 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.
October 2002
784
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Go To Pin Form
Order specifies, in a multisheet schematic, the relative location of other pins that reference
the 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 pins
on other sheets reference the same net. The reference lists for the pins in the multisheet
schematic are generated by the Create Pin Reference command.
October 2002
785
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 design
window.
previous displays the previous sheet in sequence of the multisheet schematic in the current
design window.
number enables the text field so you can specify which sheet of the multisheet schematic
you want the editor to display in the current design window.
October 2002
786
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 symbol
information.
Rotate turns an object in 90-degree increments counterclockwise around the current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point.
October 2002
787
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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.
October 2002
788
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Load Label Display Form
Filename specifies a previously saved label display configuration file that you want to use.
October 2002
789
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Load Schematic Defaults Form
File Name specifies the name of the file that contains the variables and form defaults you
want to load. The default is a file named .cdsenv in your home directory.
October 2002
790
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Modify Generic Form – VHDL Properties
Name specifies the generic name.
Type specifies the generic type.
Value (Optional) specifies a value for the generic.
October 2002
791
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 appears
on the form.
Choices appears when Type is set to string. If the string can have more than one value,
type the 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 minimum and maximum
range for the integer or floating-point value.
October 2002
792
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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, and
180-degree angles from the current location.
orthogonal restricts the movement of objects to points that are along the X and Y axes
from the current location.
Rotate turns an object in 90-degree increments counterclockwise around the current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point.
October 2002
793
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Net Expression Available Property Names Form
Property Name shows the active net expression property names available to a specific
instance in the hierarchy. The active property name is the name of the lookup property in a
net expression for which no override is found in the instance hierarchy below it. The lookup
property is associated with an inherited signal or an inherited terminal. The active property
name could also be the name of the lookup property in a redirecting net expression which is
the value of a netSet property.
Evaluated Name shows the evaluated name of the net expression property.
October 2002
794
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Net Expression Evaluated Names Form
Evaluated Name displays all the different evaluated names that result from evaluations of
all net expressions below the selected instances for the current hierarchy.
Number of Cellviews displays the number of cellviews that contain net expressions that
evaluate to a particular connection.
Number of Occurrences displays the number of occurrence paths, for example, unique
lineages to net expressions that evaluate to that particular signal.
List Cellviews with Selected Evaluated Name opens the Cellviews with Evaluated Net
Expression Name form showing the library, cell, and view names of the cellviews within which
net expressions are evaluated to the selected evaluated result.
List Occurrences for Selected Evaluated Name opens the Occurrence Paths to
Evaluated Name form showing the lineages leading to the net expressions that evaluated to
the selected evaluated result.
October 2002
795
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Occurrence Paths to Evaluated Name Form
Occurrence Path shows the full list of all hierarchical paths that can be followed down to a
net expression that evaluates to the selected evaluated name.
Cellview shows the cellview name in which the net expression resides.
Property Name shows the property name of the net expression.
Default Value shows the default value of the net expression.
Display occurrence paths with gives you three choices for displaying the occurrence
paths to evaluated names.
instance names sets the display of the occurrence paths to instance names.
cell names sets the display of the occurrence paths to cell names.
instance and cell names sets the display of the occurrence paths to instance and cell
names.
October 2002
796
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Open Simulation Data Form
File Name specifies the name of the SHM database that contains the simulation data you
want to monitor.
Shm Host specifies the host system where the SHM database resides. This option defaults
to your local host name.
October 2002
797
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Plot Options Form
Display Type specifies the plotter display type. The default is display, which represents a
color monitor. Each plotter display type defines the colors, line styles, and stipple patterns for
any layers.
Plotter Name contains a list of the available plotters. The system creates the list of available
plotters and default settings from the .cdsplotinit file.
Paper Size contains a list of the available paper sizes. The system creates the list of
available plotters 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 the
center 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, in
user units.
Offset lets you specify the offset of the plot relative to the lower left corner of the paper using
X 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 one
or 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 location
is /usr/tmp. This option lets you change the default directory when the /usr/tmp
directory is not large enough to contain all the data.
October 2002
798
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Queue Plot Data At specifies the time and day when you want the system to generate the
output 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 to
store the output plot. The system appends lib/cell/view to the end of the base name
that you specify. For example, when you specify a base name, such as myPlot, the system
designates 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.
October 2002
799
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Renumber Instances Form
Verbose when enabled (default), displays in the Command Interpreter Window (CIW) the old
and 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, two
other options appear on the form.
top (default) specifies that the system renumber instances from the top-level
cellview.
current cellview specifies that the system renumber instances in all cellviews
below and including the current cellview.
library renumbers all instances within the library. When you select library, a text field
appears. Type the name of the library containing the instances you want to renumber.
October 2002
800
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Reset Invisible Labels Form
visible causes the highlighted labels to remain visible in the design after you click the Hide
button.
invisible causes the highlighted labels to revert to the invisible state after you click on the
Hide button.
October 2002
801
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Rotate Form
Rotate turns an object in 90-degree increments counterclockwise around the current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point.
October 2002
802
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 three
segments 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,
a flight line remains in the schematic to indicate the intended connectivity.
October 2002
803
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Save Label Display Form
Filename specifies the file in which you want the system to save the current label display
configuration.
October 2002
804
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Save Schematic Defaults Form
File Name specifies the name of the file to store the variables and form defaults. The default
is a file named .cdsenv in your home directory.
October 2002
805
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Save Schematics with Errors Form
all (default) saves all the schematics listed on the form. When you turn on this option, the
system automatically enables all the selection buttons for all the schematics listed on the
form.
none disables all the selection buttons for all the schematics listed on the form. When you
select this option, you can turn on the selection buttons for individual schematics listed on the
form.
Save “<Library><cell><view>” with <number> errors? specifies a design and the
number of errors in that design. The system displays this field for each schematic that
contains errors.
October 2002
806
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Schematic Check Options Form
The Schematic Check Options form sets up options to be run when you choose the following
commands: Design – Check and Save, Check – Current Cellview, Check – Hierarchy,
Check – Cross View Check.
Connectivity Options
Update Connectivity specifies whether the system updates the connectivity of a cellview
when you use the Check – Current Cellview command. When enabled (default), the
system extracts connectivity from the design.
Beep When 0 Errors/Warnings when enabled (default), causes the system to beep after
every save and check in even if there is no error or warning message. The benefit of turning
on this option is to let you know when the check is complete. Disabling this option restores
the 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 that
contain 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 contains
errors. When you choose this option and click OK, a dialog box appears. The dialog
box lists all the schematics that contain errors and then prompts you to confirm which
of the displayed schematics you want to save.
From a Multisheet Index, Check specifies which sheets in a multisheet schematic the
system checks.
all checks all multisheets.
only if needed (default) checks only the multisheets that you have edited since the last
check.
Wire Name Glue Distance specifies a distance, in user units, between wire names and
their associated 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, the
system glues the wire name to the wire. When the unglued wire name is beyond the specified
distance, the checker marks the unglued label.
Schematic Rules Check Options
October 2002
807
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Run Schematic Rules Check when enabled (default), specifies whether the system runs
the schematic 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 names
and 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 Check
command form.
Match Pin Names Exactly, when enabled, checks whether pin names match
exactly when you click OK on a Check command form. For example, 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 terminals match when you click OK on a Check command form.
Match Terminal Net Expressions, when enabled (default), checks whether
terminal net expressions match when you click OK on a Check command form.
October 2002
808
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Schematic Find and Symbol Find Forms
Previous highlights the previous object that matched the search criteria and displays
information about the object in the form. When you reach the first object that matches the
search criteria, this button has no effect.
Next highlights the next object that matches the search criteria and displays information
about 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 other from 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. You
cannot use wildcards for master property values.
The relational operator cyclic field lets you limit the search to objects that have a value
that 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 design
window.
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 system
searches all cellviews specified in the design hierarchy.
library expands the form to display a text field. Specify the library that you want the
system to search. The system searches all cellviews in the library. The library must exist
in the current library search path.
Zoom To Object specifies how the editor displays a matching object. When this option is
selected, the editor zooms in on the search object and centers the object in the design
window.
Zoom Scale appears only when you turn on Zoom To Object. Specifies the scale used to
enlarge the object.
Select adds the currently highlighted object to the selected set.
October 2002
809
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 limit
the search scope to only the objects you specify.
Schematic Objects lists the schematic object types. You can specify any combination
of 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 option
to quickly clear any existing selections before you begin to create a new selection
set.
Instance Objects lists the instance object types. You can specify any combination of
the object 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 option
to quickly clear any existing selections before you begin to create a new selection
set.
October 2002
810
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 information
about 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 form
appears.
When you select master from the cyclic field, you must specify a property value. You
cannot use wildcards for master property values.
The relational operator cyclic field lets you limit the search to objects that have a value
that 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 a
property name in the text entry field. When you click Apply, the property is added to the
Property 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. You
cannot 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.
October 2002
811
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
cellview searches only for objects in the cellview currently displayed in the design
window.
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 system
searches all cellviews specified in the design hierarchy.
library expands the form to display a text field. Specify the library that you want the
system to search. The system searches all cellviews in the library. The library must exist
in the current library search path.
Zoom To Object specifies how the editor displays a matching object. When this option is
selected, the editor zooms in on the search object and centers the object in the design
window.
Zoom Scale appears only when you turn on Zoom To Object. Specifies the scale used to
enlarge the object.
Preview Changes (No Edits), when enabled, writes messages to the Command
Interpreter Window 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 the
changes. Only cellviews in the hierarchy or library are affected; the cellview currently
displayed in the design window is not affected. When disabled, prompts you to confirm the
changes 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 limit
the search scope to only the objects you select.
Schematic Objects lists the schematic object types. You can specify any combination
of 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 option
to quickly clear any existing selections before you begin to create a new selection
set.
Instance Objects lists the instance object types. You can specify any combination of
the object 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 option
to quickly clear any existing selections before you begin to create a new selection
set.
October 2002
812
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Schematic Select All Form
Form Action controls whether the system selects or deselects all the specified object types
when 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.
October 2002
813
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 form
appears.
The relational operators let you limit the search to objects that have a property value that
either exactly matches or differs from the value specified in the field showing the property
value.
The text entry field specifies a value of the property.
When you select master from the list of property names, you must specify a property
value of the form
“libname cellname viewname”
Form Action controls whether the system selects or deselects the specified object types
when 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 the
selection 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.
October 2002
814
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Schematic Selection Filter Form
Area Partial Selection specifies whether the schematic editor includes partial objects in the
selection set. Partial objects can be wire endpoints and vertices or note shape object
endpoints, vertices, and edges.
When this option is turned off (default), the editor does not include partial objects when you
drag 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 cursor
through 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 can
select only by pointing and clicking in the design. You cannot select instance objects by
dragging your cursor through the design (area selection). The selectability of most instance
subobjects 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.
October 2002
815
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 replaces
the 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.
October 2002
816
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 form
displayed.
Defaults reverts to the default bindings and inherited view list.
Previous selects the previously selected instance in the selection list (in the schematic
window).
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 (or
selection 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 the
current 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. You
can 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 selecting
views and constants or by typing in your own selections.
October 2002
817
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Set Label Display Simulation Data Directory Form
Simulation Data Directory specifies the name of the directory in which you want to store
the simulation data.
October 2002
818
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Set Radix Form
Radix sets the radix for all selected monitors displaying buses.
October 2002
819
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Set Time Form
Time specifies a time value for displaying signal results. You can automatically fill in this form
by sliding the Time Line indicator located in the middle of the form.
Units displays the time units for the value you enter in the Time field. You cannot edit the
time units. Use the Set Time Scale command to set the time units.
Time Line lets you automatically fill in the Time field. As you slide the indicator, a value
appears above the indicator and also in the Time field. The value range varies depending on
the simulation history data.
Range fields display the start and end values of the simulation history represented by Time
Line. The system displays the start value of simulation history at the left end of the time line
and the end of the simulation history at the right end of the Time Line. You cannot edit the
Range fields.
Move ( - ) ( + ) defines a time value by which you move through the simulation history. You
can 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.
October 2002
820
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Setup Schematic Rules Checks Form
Packaged Checks automatically sets the severity levels for the following predefined checks.
These checks are defined by the schSRCPackagedChecks environment variable.
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 or
warning.
Logical Only sets all logical check severity levels to warning. Physical and name check
severity levels are set to ignored.
Physical Only sets all physical check severity levels to warning. Logical and name
checks 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 a
schematic or instance pin. Ignores wires that are connected by name to a schematic or
instance pin.
To minimize the number of messages when you set the severity levels for this check to
warning or error, you should set the Unconnected Wires check in the Physical
Checks section of the form to ignored.
Floating Input Pins checks for component input pins and schematic output pins that
are not 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 that
are 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 signals
are not connected to component output pins, schematic input pins, or any other
schematic I/O pins.
Floating Switch Pins checks for component or schematic bidirectional pins whose
signals are not connected to component output pins, schematic input pins, or any other
schematic I/O pins.
Shorted Output Pins checks for component output or schematic input pins that are
connected to any other component output or schematic input pins.
October 2002
821
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Offsheet Connectors checks for offsheet connectors that appear on only one sheet in
a multisheet design. Also checks whether a net is used locally in more than one sheet
but 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 physically
connect 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 to
warning or error, you should set the Floating Nets check in the Logical Checks
section of the 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 two
instances can overlap each other. The value represents a percentage of the bounding
box for the larger instance.
Maximum Label Offset checks for unglued labels beyond a specified distance from a
wire (see Maximum Offset From Wire option). When the checker finds unglued labels
within this specified distance, the checker automatically glues the labels to the
appropriate wires if the severity level is set to warning or error.
Maximum Offset From Wire specifies the distance that an unglued label can be
located from a wire. When the checker finds unglued labels beyond the specified
distance, the checker marks the unglued label (see Maximum Label Offset option).
Name checks for syntax and collisions.
Connection By Name checks whether a signal exists in more than one physically
disjointed group of wires or pins. You might have inadvertently connected objects when
using a name that was already used elsewhere in the schematic. For example, if a
schematic contains a pin name “A” and you name a wire in the schematic “A”, the pin and
the objects connected to the wire are logically connected.
October 2002
822
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Instance/Net Name Collision checks whether a signal name collides with an instance
name. For example, the schematic rules checker will flag an instance named “x” and a
net named “x” because the names are identical. This option is especially useful for
ensuring Verilog HDL and VHDL consistency.
Pin/Net Name Collision checks whether a pin name differs from a net name. For
example, 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 a
different net name; it does not flag connection by name.
Verilog HDL Syntax checks Verilog HDL syntax for instance and signal names in a
schematic cellview. The checker flags signal names or instance names when they collide
with 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 a
schematic cellview. The schematic rules checker flags signal names or instance names
when 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 in
instance name syntax checks. This field is enabled only when the Instance Name Syntax
check 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 name
syntax checks. This field is enabled only when the Pin Name Syntax field is set to
warning or error.
Net Name Syntax controls name syntax checking for nets.
Net Name Expression specifies the regular expression the checker uses in net name
syntax checks. This field is enabled only when the Net Name Syntax field is set to
warning or error.
Inherited Connection checks existing or missing inherited connections.
Inherited Pin/Net Connections checks whether any inherited pin or net connections
exist in the schematic.
Missing Override Nets checks for net names that have been specified by inherited
connection override properties. If the net name is not found, the appropriate severity
marker will be placed on the instance where the netSet property is defined.
AMS checks Analog Mixed Signal netlisting checks.
Run AMS Checks
October 2002
823
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 VerilogAMS naming restrictions (which allows mixed-case identifiers). This includes syntax
checking and checks for reserved words. Verilog-AMS allows mixed-case identifiers.
Name Collisions checks all identifiers in the cellview for adherence to Verilog-AMS
scoping rules.
Conflicting Bus Ranges checks all buses in the cellview for consistent bus range
direction.
Sparse Buses checks all buses in the cellview for use of each bit within the bus
range.
October 2002
824
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Show Label Form
Labels of specifies which attached labels the checker looks for and highlights in the design
window when you click on Apply.
When you click on Apply, the system draws highlighted lines between the specified labels
and their associated objects. The system displays a flashing box around any wire labels that
are not attached to a wire segment. The form stays open so you can perform other check
operations.
October 2002
825
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Show Views Found Form
View Name(s) shows all the views bound to all the instances in the current schematic
cellview.
Highlight Layers shows the colors used to highlight the instances with the corresponding
views. The command graphically shows the current view being used for each instance.
October 2002
826
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 the
current 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 points
along the X and Y axes from the current location.
Route Wire Segments Connected To specifies whether the editor stretches and reroutes
the unselected wires that are connected to a specified object type. When you do not enable
back tracing for an object type, the editor stretches and reroutes only the first wire segment
that is connected to the object you want to stretch. You can reroute wire segments connected
to the following object types:
■
Instance
■
Pin
■
Wire
When you turn on an option for an object type, the schematic editor stretches and reroutes
all 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
October 2002
827
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Rotate turns an object in 90-degree increments counterclockwise around the current
reference point.
Sideways mirrors the object across an imaginary vertical line passing through the current
reference point.
Upside Down mirrors the object across an imaginary horizontal line passing through the
current reference point
October 2002
828
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 axes
and 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 the
current location.
October 2002
829
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 coordinates
for the lower right-hand and upper left-hand corners of a bounding box that represents
the plot area.
Full Size (default) specifies the entire cellview and gives the coordinates in Area
to Plot.
Select lets you type coordinates or drag your mouse across the design to specify
the plot area.
Browse opens the Library Browser. Use the browser to select a cellview. The system
automatically 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 number
of 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
during hierarchical plotting.
Skip Libraries specifies a list of libraries that the system ignores during hierarchical
plotting.
October 2002
830
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Skip Cells Below specifies the last level of hierarchy that the system plots during
hierarchical plotting. Specify a cell name or list of cell names to identify the final level to
plot. 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 output
plot. 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 for
the Submit Plot form and the Plot Options form. The Template File options let you read in,
or write to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains
plot setup options or a sample file. Two sample plot template files are available in the
your_install_dir/tools/dfII/samples/plot directory. The sample
files are schPlot.il and schMetPlot.il.
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 button
to load another template file.
Save writes the current plot setup information to a setup file. Plot setup options are
stored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotter
options.
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 system
automatically 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 output
plot. 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.
October 2002
831
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 for
the Submit Plot form and the Plot Options form. The Template File options let you read in,
or write to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains
plot setup options or a sample file. Two sample plot template files are available in the
your_install_dir/tools/dfII/samples/plot directory. The sample files
are schPlot.il and schMetPlot.il.
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 button
to load another template file.
Save writes the current plot setup information to a setup file. Plot setup options are
stored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotter
options.
Plot – viewing area
Plot With options let you specify the information you want the system to include on the output
plot. 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 for
the Submit Plot form and the Plot Options form. The Template File options let you read in,
or write to, the file you specify in this field.
Load reads in plot setup information from a plot setup file. Specify a file that contains
plot setup options or a sample file. Two sample plot template files are available in the
your_install_dir/tools/dfII/samples/plot directory. The sample files
are schPlot.il and schMetPlot.il.
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 button
to load another template file.
October 2002
832
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Save writes the current plot setup information to a setup file. Plot setup options are
stored in a property list format.
Plot Options opens the Plot Options form. You use the Plot Options form to set the plotter
options.
October 2002
833
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 direction
and the pin graphic attributes.
Load/Save displays options you can use to specify which TSG template file the system
references when creating a symbol automatically.
Load consists of a Load button, a cyclic field, and a text field. The cyclic field lists the
TSG template file keywords. The text field changes when you select a keyword. When
you 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 template
information.
Library Name specifies the library name of the cellview that contains the TSG template
information.
Cell Name specifies the cell name of the cellview that contains the TSG template
information.
View Name specifies the view name of the cellview that contains the TSG template
information.
Edit Attributes expands the form to display the symbol attributes options.
Pin Spacing specifies the spacing between pins.
October 2002
834
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 the
symbol.
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 the
symbol.
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 Label cyclic 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 software
displays an overbar over a label in the design window. When disabled (default), the
software displays underscore characters ( _ ) in the label as part of the label text string.
When enabled, the software interprets underscore characters ( _ ) in the label as toggle
switches that control where overbars begin and end.
Property Name
October 2002
Appears in Design Window As
_abcde
abcde
ab_cde
abcde
_abc_de
abcde
835
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only for backward compatibility.
Location specifies where on the symbol to place the label.
Add adds the pin name you specify in the Name field to the list under the Label cyclic
field.
Delete removes the pin name you specify in the Name field from the list under the Label
cyclic 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 List cyclic 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 software
displays an overbar over a label in the design window. When disabled (default), the
software displays underscore characters ( _ ) in the label as part of the label text string.
When enabled, the software interprets underscore characters ( _ ) in the label as toggle
switches that control where overbars begin and end.
Property Name
_abcde
October 2002
Appears in Design Window As
abcde
836
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
ab_cde
abcde
_abc_de
abcde
ab_cd_ef_gh_ij
abcdefghij
Caution
To avoid confusion when text actually contains underscore characters,
Cadence recommends that you disable this display option. It is provided
only 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 Property
cyclic field.
Delete removes the property name you specify in the Name field from the list under the
Property cyclic field.
Modify applies the property name you specify in the Name field to the list under the
Property cyclic field.
October 2002
837
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Symbol Select All Form
Form Action controls whether the system selects or deselects all the specified object types
when 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.
October 2002
838
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 form
appears.
The relational operators let you limit the search to objects that have a property value that
either exactly matches or differs from the value specified in the field showing the property
value.
The text entry field specifies a value of the property.
When you select master from the list of property names, you must specify a property
value of the form
“libname cellname viewname”
Form Action controls whether the system selects or deselects the specified object types
when 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 the
selection 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.
October 2002
839
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Symbol Selection Filter Form
Area Partial Selection specifies whether the symbol editor includes partial objects in the
selection set. Partial objects can be wire endpoints and vertices or note shape object
endpoints, vertices, and edges.
When this option is turned off (default), the editor does not include partial objects when you
drag 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 cursor
through 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.
October 2002
840
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
Synchronization Form
Synchronize with Simulator at Breakpoint enables synchronization to display
simulation results in monitors at simulation breakpoints.
October 2002
841
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form 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 all
displayed time values.
October 2002
842
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
VHDL Properties Form
Generics specifies the property names and the corresponding VHDL types, organized as
SKILL lists, for the netlister to use when generating the entity.
The Add, Modify, and Delete buttons affect only the display of properties on the VHDL
Properties 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 a
generic displayed in the list box. When you select a generic in the list box before you select
the command, the system fills in the form with generic information.
Delete displays the Delete Generic form, which lets you delete a specified generic from the
list box. When you select a generic in the list box before you select the command, the system
fills in the form with generic information.
Scalar Data Type specifies the default data type for the netlister to use when generating the
entity.
Vector Data Type specifies the default data type for the netlister to use when generating
vector 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 the
VHDL entity generated by the netlister.
User Comment shows a string to be inserted as the first line of each VHDL entity and
architecture generated by the netlister.
October 2002
843
Product Version 5.0
Virtuoso Schematic Composer User Guide
Form Descriptions
October 2002
844
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
A
array
An ordered arrangement of instances in rows and columns with uniform spacing.
attribute
A mandatory characteristic of a design object or cellview, such as the wire width attribute,
that you can change but cannot delete. It is a permanent and predefined part of the
database. For example, a wire requires a beginning coordinate and an ending
coordinate, and an instance requires an instance name.
In contrast, properties are optional; attributes are not. Properties can be added,
changed, or deleted. Attributes can be added or changed, but they cannot be deleted.
See also property.
B
backannotation
The process of passing information generated outside Virtuoso® schematic composer
and storing the information in Virtuoso® schematic composer.
block
A generic instance that represents lower-level design data.
Input pin
Output
pin
GATE_REP
pin1
pin2
N7
browser
A window used for displaying the names of libraries, cellviews, views, or components for
a form field. Examples of browsers are the Component Browser and the Library
Browser.
October 2002
845
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
You can use the Component Browser to display multiple libraries and their available
components at the same time; to display a hierarchical list of components instead of an
alphabetical list; to go directly to a specific component without scrolling.
You can use the Library Browser to view information about the libraries you have
specified in your cds.lib file.
bundle
A collection of signals with different names. A bundle is represented by names separated
by a comma; for example, A,B,Data<0:15>. See also wire.
bus
A collection of signals sharing a common base name. A bus is represented by this base
name followed with a vector expression; for example, A<0:7>. See also wire.
bus tapping
Tapping bits of a bus or bundle gives the tapping wire segments names that are members
of the base bus or bundle. For example, in the following illustration, all names on the
right column are taps from the bundle S,R,Q<0:15>.
S,R,Q<0:15>
Q<5:3>
S,R
Q<0:7>
S
Q<0>
C
CDBA
The database mechanism or application programming interface (API) used by Virtuoso®
schematic composer for accessing design databases. It is traversed by netlisters like
prflatten. CDBA stands for C-level Database Access.
October 2002
846
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
cell
A component of a design; a collection of different aspects (representations) of
component implementations, such as schematic or symbol representations. A design
object consisting of a set 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
unit (ALU), memories, complete chips, and printed circuit boards are examples of large
cells.
cellview
A specific representation (view) of a cell. A particular representation of a particular
component, such 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 logs
your design session and reports messages.
connectivity
The way in which components and pins are linked together in an unambiguous manner.
The connectivity in a schematic is represented by wires linking the component pins to
other component pins. Connectivity can also be represented by pins of the common
name (connection by name). The connectivity of a cellview is created by either the
Design – Check and Save command or the Check – Current Cellview command.
cross selection
The process of selecting an object in one view to automatically select the corresponding
object in another Cadence application. For example, selecting an instance in a
schematic cellview to cross highlight the corresponding instance in the Hierarchy Editor.
D
delay
The time interval between the manifestation of a signal at one point and the manifestation
or detection of the same signal at another point.
delay path
An ordered series of instance-pin pairs that forms a connected signal path.
direct manipulation
Clicking on an object and then dragging the mouse to quickly stretch, move, and copy
objects.
October 2002
847
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
E
editor, schematic
The interactive editor in which you can create schematic cellviews and edit objects that
represent parts of the design, such as components and pins, and wires that establish
connectivity between them.
editor, symbol
The interactive editor in which you can create and edit schematic symbol cellviews using
labels, pins, shapes, notes, and a selection box.
Enter Function
A class of functions that gather data from the user interactively. Schematic composer
uses enter functions to build the interactive commands that require performing actions
with the mouse.
F
font
The style and size of type, in Virtuoso® schematic composer, of the label text. The
choices are euroStyle, gothic, math, roman, script, stick, swedish, and
milSpec. The math font displays mathematical and Greek symbols. The swedish font
displays Swedish language characters.
G
gate
Symbol object for combinational logic; for example, AND gates and OR gates.
gate array
Gates placed in a prefabricated matrix where you provide the design for the interconnect.
Gate array designs are cheaper to manufacture because only the interconnects have to
be custom made.
ge
The graphics editor component of DFII that supports both Virtuoso® schematic
composer and Virtuoso® layout editor. It supplies a variety of functionality including
display, selection, and hierarchical signal probing.
October 2002
848
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
global signal or global net
A signal that is connected by name across all levels of a design hierarchy without using
pins. In Cadence Database Access (CDBA), a global signal is a signal that has the
isGlobal attribute set to true. In schematics, a global signal is determined by name;
if the signal name ends with an exclamation point ( ! ), it is considered global. A signal
that is explicitly passed everywhere in a design is not considered global. A global signal
connects to other signals with the same name elsewhere in the hierarchy without
requiring an explicit connection through the hierarchy. See inherited connections.
H
hierarchical design
Division of portions of large designs into manageable views that can be created,
represented symbolically, edited, and called by or connected to other such views in a
design, optimizing gate production through tool speed and distribution of work load
across a design organization.
I
ilInst
The ilInst SKILL variable provides self-reference to an instance during graphic display
of the cellview containing the instance. The typical usage is for IL labels, such as labels
that evaluate a SKILL expression and display the results. For example, to display the
value of an instance property, you create an IL label with the value
ilInst~>propertyName. The expression ilInst~>propertyName is evaluated
for all instances of the cell and the resulting values are displayed in the graphic editor.
The ilInst SKILL variable is only evaluated for the instances in the top display level.
That is, only the instances in the schematic can have the ilInst SKILL variable value
defined. If, for example, you are instantiating schematics in schematics in schematics,
ilInst can only be determined for the instances in the top schematics, and all
subinstances are evaluated with reference to the subschematic in which they are
instantiated.
lLLabel
IL labels are expressions that are evaluated by the SKILL language to determine the
value. When you place an instance in your schematic, the system evaluates the SKILL
expression and displays the resulting value. For example, the system displays the IL
label ilInst~>name in the symbol editor, but displays a value – for example, I3 – in
the schematic editor. Other types of labels are normal and NLPLabel.
October 2002
849
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
inherited connections
A facility for specifying global signals that may be overridden for a particular branch of
the hierarchy. Net expression labels are used to specify the default signal and the
property name which the global signal looks for. netSet properties can be placed on
instances to override the default signal for a branch of the hierarchy.
inherited net expression
A use of the NLP expression to support declaring an inherited connection.
instance
An instantiation of a lib cell symbol. It is a database object that represents a master
cellview. You can have several instances of the same cellview in a design.
instance iteration
A compact way of representing repeated instances of a symbol in your schematic.
Particularly useful in bus-type or data-flow architectures that have identical structures
to handle each bit on the bus.
interpreted label
Represents the group of ILLabel and NLPLabel because their values are always
derived.
J
justification
Position of the label’s origin with respect to the label. The cursor is always attached to
the origin point. The choices are upperLeft, upperCenter, upperRight,
centerLeft, centerCenter, centerRight, lowerLeft, lowerCenter, and
lowerRight. For example, if you specify lowerCenter, the cursor is centered below
the label.
M
member net
A bit of a net. For example, if a net had the name X,vdd!,Z, then the net has three
members named X, vdd!, and Z.
member terminal
A bit of a terminal. For example, if a terminal had the name X,vdd!,Z, then the terminal
has three members named X, vdd!, and Z.
October 2002
850
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
multisheet
The use of several pages to represent a schematic, connected by pins. You use two
levels of hierarchy, the index and sheet levels. This partition improves readability and
produces better plot output.
multisheet, index
A schematic representation that is given the instance of all the sheets. This schematic is
not intended to be edited manually.
multisheet, pin
Connects nets between sheets in a multisheet schematic. A pin can connect a single
signal or multiple signals (buses) of a terminal.
multisheet, sheet
A schematic containing the logical description of a sheet that can be connected to other
sheets with offsheet pins.
N
net
A database object that describes one or more signals. Logical implementation of a single
signal or a group of signals that implements the connections to instance pins and pins
of the cellview containing the net.
net expression
A use of the NLP expression to support declaring an inherited connection.
net expression label
The object for displaying the value of net expressions to the user.
net, global
Used to establish connectivity between nets in different levels of the hierarchy. Indicated
by an exclamation mark added to the end of the name; for example, vdd!
NLP
Netlist property. NLP expressions, besides being used for netlisting, are also used to
display evaluated property values. The syntax of NLP expressions can be used to
support inherited net expressions.
October 2002
851
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
NLPLabel
A CDBA label type. Other types of labels are Normal and ILLabel. Labels that are of
NLPLabel type undergo special NLP evaluation. In general, NLP expressions define a
property name to look for, where to look for the property, a format string used to substitute a
found 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.
O
OSS
Open Simulation System. The functionality provided within OSS is utilized by many
applications and customers for writing netlist interfaces to a variety of tools.
P
patchcord
A special connection symbol used to establish aliases between the signals of two
different nets.
Unlike tap names, where you extract bits of a single net, you can use patchcords to copy
one net to another. You can also use the patchcord to map bits from one net to different
bits of another net.
pin
Represents the connection point for a single signal or multiple signals of the terminal.
pin, offsheet
Connects nets between sheets in a multisheet schematic. A pin can connect a single
signal or multiple signals (buses) of a terminal.
placed master
The master cellview of the instance placed in a schematic. Usually, this is the symbol
cellview. The instance in a schematic references the symbol.
property
A characteristic of a design object or cellview that affects the object and can be edited or
deleted. Properties can be mandatory or optional. See also attribute.
October 2002
852
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
S
signal
A database object that represents a scalar, logical entity that connects one or more
member instance 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
nets. See also wire.
solder dot
Small filled-in circle used to identify connections between intersecting wires that are part
of the same net.
switched master
When a design hierarchy is traversed, the symbol views instantiated as the placed
master do not define the next level of the design. The placed view must be switched to
another view of the same cell that contains more detail, for example, the layout or
schematic views. The view that defines the result of hiearchical descend is the switched
master.
T
technology file
A file that defines all the physical information required for a design. It defines information
such as layers, physical design rules for compaction, and devices.
terminal
Logical counterpart of the pin that lets you connect from the next higher level of hierarchy
to the net associated with the pin.
A database object that makes a net available for connection on instances of a given
cellview.
V
view, schematic
Contains connectivity data and graphics that describe the logical views of a design.
October 2002
853
Product Version 5.0
Virtuoso Schematic Composer User Guide
Glossary
view, symbol
Graphic representation of the interface between the current level of hierarchy to the level
below the symbol that is instantiated.
Symbol view
Schematic
view
Mask layout
view
W
wire
A line that connects a pin and an instance to represent a net in a schematic. When you
draw a wire between a pin and an instance, you create a net.
wire name
Designates the name of a net and signals represented by the wire.
October 2002
854
Product Version 5.0