0% found this document useful (0 votes)
656 views

Designer Reference

Manual is licensed to the user for the period set forth in the applicable license agreement. Information in this manual is proprietary, confidential and trade secret to Coventor, Inc. Or third parties. The user is solely responsible for the mechanical design of the user's equipment, machinery, systems, and products.

Uploaded by

Eri Prananto
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
656 views

Designer Reference

Manual is licensed to the user for the period set forth in the applicable license agreement. Information in this manual is proprietary, confidential and trade secret to Coventor, Inc. Or third parties. The user is solely responsible for the mechanical design of the user's equipment, machinery, systems, and products.

Uploaded by

Eri Prananto
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 346

CoventorWare ® DESIGNER

Version 2010

Reference
MEMS and Microsystems Physical Design

www.coventor.com
Version 2010

Coventor, Inc.
This manual and its accompanying materials are licensed to the user for the period set forth in the applicable license agreement,
subject to termination of the license by Coventor, Inc. at any time. The manual at all times remains the property of Coventor, Inc.,
or third parties from whom Coventor, Inc. has obtained a licensing right. The information contained in this manual including but
not limited to the ideas, concepts and know-how, is proprietary, confidential and trade secret to Coventor, Inc. or such third parties
and the information contained therein shall be maintained as proprietary, confidential, and trade secret to Coventor, Inc. or to such
third parties. The information in this manual shall not be copied or reproduced in any form whatsoever, nor is any information in
this manual to be disclosed to anyone other than an authorized representative of the user’s employer who is contractually obligated
not to disclose same, without express prior written consent of Coventor, Inc. The user of this manual and the computer program(s)
referred to herein retains full control over and is solely responsible for the mechanical design of the user’s equipment, machinery,
systems, and products. COVENTOR, INC. MAKES NO WARRANTIES OF ANY KIND, INCLUDING THE WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE WITH RESPECT TO THE EQUIPMENT, MACHIN-
ERY, SYSTEMS, AND PRODUCTS, DERIVED OR RESULTING HEREUNDER, AND THE USER ASSUMES ALL RISKS
AND LIABILITY FOR RESULTS OBTAINED BY THE MANUFACTURING, USE OR IMPLEMENTATION OF THE COM-
PUTER PROGRAMS(S) DESCRIBED HEREIN, WHETHER USED SINGLY OR IN COMBINATION WITH OTHER
DESIGNS OR PRODUCTS. Coventor shall not be liable for any incidental, indirect, special, consequential, or punitive damages.
Coventor makes no warranty that the equipment, machinery, systems, and products derived or resulting hereunder will not infringe
the claims of domestic or foreign patents and further does not warrant against infringement by reason of the user, thereof in combi-
nation with other designs, products, or materials or in the operation of any process. User shall protect, indemnify and hold harm-
less Coventor of and from any loss, cost, damage (including attorney’s fees) or expense arising from any claim that is any way
associated with the computer programs(s) described in this manual. Data presented in examples do not necessarily reflect actual
test results and should not be used as design criteria.
By acceptance of this manual, the user agrees to the above conditions and further agrees that this manual will not be exported (or
re-exported from a country of installation), directly or indirectly, separately or as part of a system, without user or user’s employer,
at its own cost, first obtaining all licenses from the United States Department of Commerce and any other appropriate agency of
the United States Government as may be required by law.
© Coventor, Inc., 2010.
All rights reserved. No part of this work may be reproduced, stored in a retrieval system, or transmitted, in any form or by any
means, electronic or mechanical, including photocopying and recording, or by any information storage or retrieval system without
prior permission in writing from Coventor, Inc. Information in this document is subject to change without notice.
CoventorWare includes software developed by the University of California, Berkeley and its contributors.
CoventorWare is enhanced with Visualization Software from Tecplot, Inc. of Bellevue, Washington, USA.
CoventorWare and the associated documentation incorporate portions of ABAQUS/CAE and its associated documentation under
license from ABAQUS, Inc. ABAQUS is a registered trademark of ABAQUS, Inc.
Coventor, CoventorWare, Bubble-DropSim, CoSolveEM, CoventorWare ANALYZER, CoventorWare ARCHITECT, Coventor-
Ware DESIGNER, FlowMM, CoventorWare INTEGRATOR, MemElectro, MemCFD, DampingMM, MemFSI, MemHenry,
MemMech, NetFlow, ReactSim, SwitchSim, and WHAT’S NEXT, AND NEXT, AND NEXT are registered trademarks of Coven-
tor, Inc. Cary, NC.
DXF is a trademark of Autodesk, Inc.
Excel is a registered trademark of Microsoft Corporation
FLEXnet is a registered trademark of Globetrotter Software, Inc.
I-deas is a trademark of UGS.
Permalloy is a registered trademark of B&D Industrial & Mining Services, Inc.
SABER is a registered trademark of American Airlines, Inc., licensed to Synopsys, Inc.
SaberDesigner, SaberGuide, CosmosScope, SaberSimulator, and SaberSketch are trademarks of Synopsys, Inc.
Tecplot is a registered trademark of Tecplot, Inc.
Cadence, Verilog and Verilog-XL are registered trademarks of Cadence Design Systems, Inc.
Excel, and Windows XP are registered trademarks of Microsoft Corporation.
X Window System is a trademark of Massachusetts Institute of Technology.
MUMPs is a registered trademark of MEMSCAP, Inc.
VdmTools is proprietary and copyrighted software of Visual Kinematics, Inc.
All other trademarks or registered trademarks belong to their respective holders.
Contact us at www.coventor.com
Doc Ver 2010.000 Rev A Compatible with CoventorWare version 2010.000

ii March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

Table of Contents

Section 1: Introduction
1.1: Using CoventorWare .............................................................................. D1-1

1.2: Tutorials .................................................................................................. D1-2

M
Section 2: Getting Started
2.1: Introduction............................................................................................. D2-1
2.1.1: DESIGNER Components......................................................................................... D2-1
Material Properties Database .................................................................................. D2-1
Process Editor ......................................................................................................... D2-1
Layout Editor ........................................................................................................... D2-2
Model Builder and Preprocessor ............................................................................. D2-2

2.2: Accessing Designer ............................................................................... D2-2

2.3: Using the MPD Editor............................................................................. D2-4

2.4: Using the Process Editor ....................................................................... D2-5

2.5: Using the Layout Editor ......................................................................... D2-7


2.5.1: Planning the Layout ................................................................................................. D2-8
2.5.2: Customizing the Workspace .................................................................................... D2-8
Setting Grid Constraints ....................................................................................... D2-8
Using the Terminal Window .................................................................................... D2-9
2.5.3: Organizing with Cells and Libraries ........................................................................ D2-9
Saving a Design ...................................................................................................... D2-9
Opening Files ........................................................................................................ D2-10
Using the Cell Browser .......................................................................................... D2-10
2.5.4: Correcting Mistakes ............................................................................................... D2-10
Undoing an Action .............................................................................................. D2-10
Redoing an Action ................................................................................................. D2-10
Backing Out of a Command in Progress .............................................................. D2-11
Closing and Reopening a Cell ............................................................................... D2-11
2.5.5: Using Templates .................................................................................................... D2-11
2.5.6: Creating Basic Objects .......................................................................................... D2-11

Coventor, Inc. March 23, 2010 iii


Table of Contents Version 2010

Generated Objects................................................................................................. D2-11


2.5.7: Using Cell References and Hierarchy .................................................................... D2-12
Cell References ..................................................................................................... D2-12
Array References .................................................................................................. D2-12
Hierarchical Designs ............................................................................................. D2-12
2.5.8: Navigating in the Workspace ................................................................................. D2-12
Extend the Drawing Area ...................................................................................... D2-12
Pan ........................................................................................................................ D2-12
Zoom ..................................................................................................................... D2-13
See the Last View ................................................................................................. D2-13
Other Navigation Tools .......................................................................................... D2-13
2.5.9: Working with Layers .............................................................................................. D2-13
Accessing the Layer Browser ............................................................................... D2-13
Layer Browser Fields ............................................................................................ D2-14
Dark and Light Fields............................................................................................. D2-15
Mask Viewer .......................................................................................................... D2-16
Selecting Layers from the Toolbar ........................................................................ D2-16
2.5.10: Printing a Layout .................................................................................................. D2-16

2.6: Importing and Exporting in Other Formats ........................................D2-17


2.6.1: 2-D Import Capabilities........................................................................................... D2-17
Direct GDS, CIF and DXF Import .......................................................................... D2-17
Translated GDS, CIF, and DXF Import.................................................................. D2-18
2.6.2: Merging GDS Files................................................................................................. D2-19
2.6.3: GDS Extraction Tool .............................................................................................. D2-21
GDS Setup Wizard ................................................................................................ D2-21
Quick Setup ........................................................................................................... D2-23
Query Cells and Layers ......................................................................................... D2-24
Example................................................................................................................. D2-24
Extracting Zones from Multiple GDS Files............................................................. D2-26
2.6.4: Generating an Automatic Prompt for GDS Extractor ............................................. D2-27
2.6.5: 2-D Export Capabilities .......................................................................................... D2-27
Translated File Export............................................................................................ D2-27
2.6.6: GDS Export and Import Example........................................................................... D2-29
Setup ..................................................................................................................... D2-29
Export Command and Dialog................................................................................. D2-30
Opening a GDS File............................................................................................... D2-31
Using the GDS Translator...................................................................................... D2-31
Using a Template File............................................................................................ D2-31

iv March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

Merging Layers ...................................................................................................... D2-32


2.6.7: Closing the Layout Editor....................................................................................... D2-32

2.7: Build in 2-D... Think in 3-D ................................................................... D2-32


2.7.1: Masks and Mask Layers ........................................................................................ D2-32
2.7.2: Dark and Light Fields ............................................................................................. D2-33
2.7.3: Photoresist Polarity ................................................................................................ D2-33
2.7.4: Creating the Model Geometry................................................................................ D2-34
2.7.5: Building and Viewing a 3-D Model ......................................................................... D2-34
2.7.6: View an Existing 3-D Model .................................................................................. D2-35

M
Section 3: Layout Editor Reference
3.1: Introduction............................................................................................. D3-1

3.2: Layout Editor Components ................................................................... D3-1


3.2.1: Icons ........................................................................................................................ D3-2
Vertical Row ........................................................................................................... D3-2
Top Horizontal Row ................................................................................................ D3-3
Lower Horizontal Row ............................................................................................ D3-5
3.2.2: Menu Commands..................................................................................................... D3-7
File .......................................................................................................................... D3-7
Edit ......................................................................................................................... D3-8
View ........................................................................................................................ D3-9
Cell ........................................................................................................................ D3-11
Object .................................................................................................................... D3-11
Modify .................................................................................................................... D3-12
Tools ...................................................................................................................... D3-13
Generators ............................................................................................................ D3-17
Window .................................................................................................................. D3-17
Help ....................................................................................................................... D3-17
3.2.3: Terminal Window ................................................................................................... D3-18

3.3: Workspace Management ..................................................................... D3-18


3.3.1: Customizing the Workspace .................................................................................. D3-18
Terminal Window and Drawing Area Basic Settings ............................................. D3-18
View Filter .............................................................................................................. D3-20
Grid Settings ......................................................................................................... D3-21
Changing the Degree of Data Precision ................................................................ D3-22
Adding or Removing Toolbar Buttons.................................................................... D3-22
Adding Menubar Functions.................................................................................... D3-24

Coventor, Inc. March 23, 2010 v


Table of Contents Version 2010

Creating Customized Terminal Window Commands ............................................. D3-25


3.3.2: Functions................................................................................................................ D3-27
Marking Coordinates.............................................................................................. D3-27
Calculating Dimensions ......................................................................................... D3-27
Measuring Objects................................................................................................. D3-28
Creating and Managing Net Names ...................................................................... D3-29
Pan ........................................................................................................................ D3-29
Redraw .................................................................................................................. D3-30
Repeat Mode ......................................................................................................... D3-30
Views ..................................................................................................................... D3-30
Viewlast Command................................................................................................ D3-34
Zoom...................................................................................................................... D3-34

3.4: File and Cell Management....................................................................D3-36


3.4.1: Working with Files .................................................................................................. D3-36
Creating Files......................................................................................................... D3-36
Template Variables and Commands ..................................................................... D3-37
Opening Files......................................................................................................... D3-38
Copying Files ......................................................................................................... D3-39
Renaming Files...................................................................................................... D3-40
Deleting Files ......................................................................................................... D3-40
Saving Files ........................................................................................................... D3-41
Recovering Data .................................................................................................... D3-41
Comments ............................................................................................................. D3-41
Closing Files .......................................................................................................... D3-42
3.4.2: File Translators ...................................................................................................... D3-42
CIF Files ................................................................................................................ D3-42
DXF Files ............................................................................................................... D3-44
GDS Files .............................................................................................................. D3-46
IGES Files.............................................................................................................. D3-49
SAT Output ............................................................................................................ D3-50
3.4.3: Working with Cells.................................................................................................. D3-51
Cell Browser .......................................................................................................... D3-51
Cell Structure and Contents................................................................................... D3-52
Creating and Opening Cells................................................................................... D3-52
Cell Buffering ......................................................................................................... D3-53
Copying Cells......................................................................................................... D3-53
Renaming Cells ..................................................................................................... D3-54
3.4.4: Cell and Array References ..................................................................................... D3-55
Cell Reference ....................................................................................................... D3-55
Array Reference..................................................................................................... D3-56
Circular Array......................................................................................................... D3-58

vi March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

Removing Cell Hierarchy ....................................................................................... D3-59


Inserting Cell Hierarchy ......................................................................................... D3-59
Edit In Place Functions .......................................................................................... D3-60
Deleting Cells in a Hierarchy ................................................................................. D3-61
Saving and Closing Cells....................................................................................... D3-61

3.5: Object Management ............................................................................. D3-62


3.5.1: Object Information.................................................................................................. D3-62
3.5.2: Undo and Redo...................................................................................................... D3-62
3.5.3: Layer Creation and Selection................................................................................. D3-63
Opening the Layer Browser ................................................................................... D3-63

M
3.5.4: Creating Basic Objects .......................................................................................... D3-67
Arc ......................................................................................................................... D3-67
Chord ..................................................................................................................... D3-69
Circle ..................................................................................................................... D3-70
Curve ..................................................................................................................... D3-72
Curve - Path .......................................................................................................... D3-73
Path ....................................................................................................................... D3-74
Pie ......................................................................................................................... D3-76
Polygon.................................................................................................................. D3-77
Rectangle .............................................................................................................. D3-79
Shape .................................................................................................................... D3-80
Torus ..................................................................................................................... D3-81
Text Objects .......................................................................................................... D3-83
3.5.5: Snap Points............................................................................................................ D3-84
Setting Snapmode Options.................................................................................... D3-84
Refsrename ........................................................................................................... D3-85
Object Properties ................................................................................................... D3-85
3.5.6: Object Browser ...................................................................................................... D3-87
Access the Object Browser .................................................................................. D3-87
VisibleCoords ........................................................................................................ D3-88
DrawAsPolygon ..................................................................................................... D3-88
VisibleOrigin .......................................................................................................... D3-88
SelectableOrigin .................................................................................................... D3-89
VisibleCenterLine ................................................................................................. D3-89
VisibleExtents ....................................................................................................... D3-89
SelectableExtents .................................................................................................. D3-89
VisibleName .......................................................................................................... D3-89
Object Visibility and Selectability ........................................................................... D3-90
Restoring Previous Settings .................................................................................. D3-90
Saving New Settings ............................................................................................. D3-91

Coventor, Inc. March 23, 2010 vii


Table of Contents Version 2010

3.5.7: Creating Objects Using Generators ....................................................................... D3-91


Generators............................................................................................................. D3-91
Layout Extraction ................................................................................................... D3-91
Generators Without Layout Extraction................................................................... D3-91
Text Generators..................................................................................................... D3-91
3.5.8: Verifying a Layout .................................................................................................. D3-92
Batch Rule Checks ................................................................................................ D3-96
Check Accuracy..................................................................................................... D3-96
Small Error Vectors................................................................................................ D3-97
3.5.9: Selecting Objects ................................................................................................... D3-97
Select Objects for Editing ...................................................................................... D3-97
Unselecting Objects............................................................................................. D3-100
Viewing and Selecting Objects by Layer ............................................................. D3-100
3.5.10: Copying and Pasting Objects............................................................................. D3-101
Copy Selected Layers.......................................................................................... D3-102
3.5.11: Modifying Objects............................................................................................... D3-102
Move an Object.................................................................................................... D3-102
Nudge an Object ................................................................................................. D3-103
Rotate an Object.................................................................................................. D3-104
Flip an Object....................................................................................................... D3-105
Mirror an Object ................................................................................................... D3-106
Add Area to an Object ........................................................................................ D3-106
Subtract Area from an Object ............................................................................. D3-107
Repeat a Function ............................................................................................... D3-107
Identifying and Modifying Object Properties ........................................................ D3-108
Add/Delete Points ................................................................................................ D3-109
Boolean Operations ............................................................................................. D3-109
Magnify an Object................................................................................................ D3-111
Change Object Size............................................................................................. D3-112
Changing Object Shape....................................................................................... D3-112
Move Window ...................................................................................................... D3-113
Deleting Objects .................................................................................................. D3-113

Section 4: Preprocessor Reference


4.1: Functionality............................................................................................D4-1

4.2: Window Description ...............................................................................D4-1


4.2.1: Geometry Browser ................................................................................................... D4-2
Solid Model .............................................................................................................. D4-2

viii March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

Mesh Model ............................................................................................................. D4-2


Conductors/Dielectrics............................................................................................. D4-2
4.2.2: Canvas..................................................................................................................... D4-2
4.2.3: Geometry Browser and Canvas Interaction ............................................................. D4-3

4.3: Preprocessor Terminology.................................................................... D4-3


4.3.1: Model Definitions ..................................................................................................... D4-3
4.3.2: Mesh Definitions ...................................................................................................... D4-3

4.4: Preprocessor Flow ................................................................................. D4-4

4.5: Solid Modeling ........................................................................................ D4-5

M
4.5.1: Partitioning ............................................................................................................... D4-6
Partition Using a Plane ............................................................................................ D4-7
Partition Using a Block ............................................................................................ D4-9
4.5.2: Transforming Models ............................................................................................. D4-11
Translation ............................................................................................................. D4-11
Rotation ................................................................................................................. D4-11
Scaling ................................................................................................................... D4-12
Limitations And Restrictions .................................................................................. D4-12
Example................................................................................................................. D4-12
4.5.3: Merging Models ..................................................................................................... D4-14
Limitations and Restrictions................................................................................... D4-14

4.6: Naming Entities .................................................................................... D4-14


Parts ...................................................................................................................... D4-15
Faces ..................................................................................................................... D4-15
Conductors/Dielectrics........................................................................................... D4-15

4.7: Meshing ................................................................................................. D4-15

4.8: Importing and Exporting a Model ....................................................... D4-16

4.9: Icons ...................................................................................................... D4-17


4.9.1: Z-Scale Drop-Down Menu ..................................................................................... D4-19
4.9.2: Cross Section View................................................................................................ D4-19
4.9.3: Wireframe Rendering ............................................................................................. D4-21
4.9.4: Shaded Rendering ................................................................................................. D4-21
4.9.5: Adding Entities ....................................................................................................... D4-22
Add a Plane ........................................................................................................... D4-22
Add a Wedge Region ............................................................................................ D4-26
Add a Block ........................................................................................................... D4-27

Coventor, Inc. March 23, 2010 ix


Table of Contents Version 2010

4.10: Menu Options ......................................................................................D4-28


4.10.1: File ....................................................................................................................... D4-28
Open ...................................................................................................................... D4-28
Close...................................................................................................................... D4-28
Save....................................................................................................................... D4-28
Save As ................................................................................................................. D4-29
Append .................................................................................................................. D4-29
Save Image............................................................................................................ D4-29
Exit......................................................................................................................... D4-29
4.10.2: Edit ....................................................................................................................... D4-29
Selection Mode ...................................................................................................... D4-29
Hide Selection........................................................................................................ D4-29
Show Selection ...................................................................................................... D4-29
Delete .................................................................................................................... D4-30
Rendering Options................................................................................................. D4-30
Set Name............................................................................................................... D4-30
Properties .............................................................................................................. D4-31
4.10.3: View ..................................................................................................................... D4-34
Previous View ........................................................................................................ D4-34
Next View............................................................................................................... D4-34
Select All................................................................................................................ D4-34
Rotate .................................................................................................................... D4-34
Pan ........................................................................................................................ D4-34
Zoom...................................................................................................................... D4-34
Fit to Window ......................................................................................................... D4-35
Zoom to Selection.................................................................................................. D4-35
Rubberband Zoom................................................................................................. D4-35
Orientation ............................................................................................................. D4-35
Redraw .................................................................................................................. D4-36
4.10.4: Solid Model .......................................................................................................... D4-36
Insert...................................................................................................................... D4-36
Partition.................................................................................................................. D4-37
Merge Layers......................................................................................................... D4-37
Delete Region ........................................................................................................ D4-37
Statistics ................................................................................................................ D4-38
Heal ....................................................................................................................... D4-38
4.10.5: Mesh .................................................................................................................... D4-42
Add to Mesh Model................................................................................................ D4-42

x March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

Remove from Mesh Model .................................................................................... D4-42


Split Region ........................................................................................................... D4-42
Join Regions .......................................................................................................... D4-43
Automate MemMech Links .................................................................................... D4-43
Mesher Defaults .................................................................................................... D4-44
Mesher Settings..................................................................................................... D4-45
Clear Mesher Settings ........................................................................................... D4-45
Generate Mesh ...................................................................................................... D4-45
Delete Mesh .......................................................................................................... D4-45
Mesher Log............................................................................................................ D4-45

M
Automatically merge touching layers ..................................................................... D4-45
4.10.6: Tools .................................................................................................................... D4-45
Transform .............................................................................................................. D4-45
Quality Query......................................................................................................... D4-46
Tape Measure ....................................................................................................... D4-49
Measure Distance.................................................................................................. D4-49
Markup................................................................................................................... D4-50
Options .................................................................................................................. D4-50
4.10.7: Help...................................................................................................................... D4-56

4.11: Preprocessor Environment Variables .............................................. D4-56

Section 5: Advanced Procedures


5.1: Creating a Sphere................................................................................... D5-1
5.1.1: Process .................................................................................................................... D5-1
5.1.2: Layout ...................................................................................................................... D5-3
5.1.3: Solid Model .............................................................................................................. D5-3

5.2: Using Curves .......................................................................................... D5-6


5.2.1: Arcs ......................................................................................................................... D5-6
5.2.2: Control Point Curves................................................................................................ D5-6
5.2.3: Building an Ellipse.................................................................................................... D5-7
5.2.4: Polygon Curves........................................................................................................ D5-8
5.2.5: Curve Flatness......................................................................................................... D5-8
Converting to Polygon with Dialog........................................................................... D5-9
5.2.6: Converting Polygons to Curves ............................................................................. D5-10
5.2.7: Equation Fitting ...................................................................................................... D5-12

Coventor, Inc. March 23, 2010 xi


Table of Contents Version 2010

5.3: Hierarchical Structures and Editing....................................................D5-12


5.3.1: Considerations for Hierarchy in the Design............................................................ D5-12
5.3.2: Non-Hierarchical (Flat) Design............................................................................... D5-13
Repeating Objects ................................................................................................. D5-13
Array of Objects ..................................................................................................... D5-14
5.3.3: Advantages of Hierarchy........................................................................................ D5-14
Ease in Modification............................................................................................... D5-14
5.3.4: Creating Hierarchy ................................................................................................. D5-15
Bottom-Up vs. Top-Down Structures ..................................................................... D5-15
Building a Bottom-Up Design................................................................................. D5-15
Creating Hierarchy with a Cell Reference.............................................................. D5-16
Creating Hierarchy with an Array Reference ......................................................... D5-18
5.3.5: Other Hierarchy Considerations............................................................................. D5-19
5.3.6: Navigation through a Hierarchical Design.............................................................. D5-19
Cell Browser Navigation ........................................................................................ D5-19
View/Levels Navigation.......................................................................................... D5-20
Command Details .................................................................................................. D5-20
Drag Depth ............................................................................................................ D5-21
Edit In-Place Navigation ........................................................................................ D5-22
Concept of Push and Pop...................................................................................... D5-22
One-Level Push and Pop....................................................................................... D5-22
Multi-Level Push and Pop...................................................................................... D5-23
Using Save As for Edit In-Place Operations .......................................................... D5-23
5.3.7: Inserting Hierarchy in a Design .............................................................................. D5-23
Insert Hierarchy Example ...................................................................................... D5-23
5.3.8: Removing Hierarchy in a Design............................................................................ D5-27
Flatten a Design..................................................................................................... D5-27
Partially Flatten a Design by Removing a Hierarchical Branch ............................. D5-29
Partially Flatten a Design by Removing Intermediate Levels ................................ D5-29
Partially Flatten a Design by Removing Targeted Hierarchy ................................. D5-30

5.4: Equations and Equation Syntax ..........................................................D5-31


5.4.1: Linear ..................................................................................................................... D5-31
5.4.2: Quadratic................................................................................................................ D5-32
5.4.3: Trigonometric ......................................................................................................... D5-33

5.5: Creating Generators with TCL .............................................................D5-35


5.5.1: Generator Creation ................................................................................................ D5-35
5.5.2: Shortcuts ................................................................................................................ D5-37
Dialog Shortcut ...................................................................................................... D5-38
5.5.3: Parameters and Variables...................................................................................... D5-38

xii March 23, 2010 Coventor, Inc.


Table of Contents Version 2010

5.5.4: Shortcuts................................................................................................................ D5-40


Dialog Shortcut ...................................................................................................... D5-41
5.5.5: Parameters and Variables ..................................................................................... D5-41
5.5.6: Tcl Generator Examples ........................................................................................ D5-42
Mirror Layout ......................................................................................................... D5-42
Meander Generator ............................................................................................... D5-45
Signal Lines Generator .......................................................................................... D5-49

Section 6: Appendix

M
6.1: Layout Editor Command Syntax ........................................................... D6-1

6.2: Key Bindings......................................................................................... D6-45


Keyboard Shortcut Format .................................................................................... D6-45
Key Bindings in the Terminal Window ................................................................... D6-45
6.2.1: Default Key Bindings.............................................................................................. D6-45
6.2.2: L-Edit Key Bindings................................................................................................ D6-49
6.2.3: Virtuoso Key Bindings............................................................................................ D6-52

Designer Index ...................................................................................... IX-1

Coventor, Inc. March 23, 2010 xiii


Table of Contents Version 2010

Notes

xiv March 23, 2010 Coventor, Inc.


Section 1: Introduction Version 2010

Section 1: Introduction

This volume is one of a series of volumes that document CoventorWare’s software suites. The reference information
for the DESIGNER suite is in this volume. In addition to this introductory section, there are the following sections:

Section 2: Getting Started


This section gives an overview of the Designer suite. It explains some of its basic functionality, including how to use
the Function Manager, the Process Editor, and the Layout Editor. It also explains how the Process Editor and Layout
Editor interact to create the final solid model geometry. This section begins on page D2-1.

Section 3: Layout Editor Reference

M
The section details the Layout Editor components, including icons and menu commands. It also shows the user how
to customize the Layout Editor window and how to manage files, cells, and objects. It also explains how to create
basic objects using the mouse or with commands entered in the Layout Editor terminal window. This section begins
on page D3-1.

Section 4: Preprocessor Reference


This section details the Preprocessor functionality that is available for Designer. Topics include 3-D model creation,
window interaction, terminology, partitioning, transforming and merging models, importing and exporting models,
icons, and menu options. This section begins on page D4-1.

Section 5: Advanced Procedures


This section details some of the Layout Editor’s advanced functionality, including using curves, using hierarchical
structures, using equations, and using the TCL language. This section begins on page D5-1.

Section 6: Appendix
This section provides information on the Layout Editor Command Syntax and key bindings. This section begins on
page D6-1.

1.1: Using CoventorWare


To understand the overall structure of the CoventorWare suite of tools, please see "Using CoventorWare," accessed
from the Function Manager’s Help menu. This document gives the following information:
 overview of CoventorWare components (see page U1-2)
 document conventions, including icons and page numbering (see page U1-6)
 software conventions, including directory structure and units of physical quantities (see page U1-8)
 licensing (see page U1-10)
 overview of the Function Manager, which is the main navigation window (see page U1-11)
 window overview, including explanations of the project browser, Database Browser, Job Queue, and export
capability (page U1-22)
 common button functions (see page U1-34)
 file organization (see page U1-35)
 file and database conversions (see page U1-39)
 design considerations, including guidelines and considerations that will help ensure that the design cycle

Coventor, Inc. March 23, 2010 D1-1


Section 1: Introduction Version 2010

progresses smoothly and without difficulty (see page U1-42)


 techniques for enhancing productivity (see page U1-44)
 interfacing with third-party software (see page U1-48)

1.2: Tutorials
For tutorials that show how to use Designer, see the following:
 Mirror Array Tutorial: This tutorial, starting on page T8-1, shows how to design a 2-D layout of a mirror
array. It demonstrates techniques such as how to create basic objects such as a path, rectangle, circle, or pie;
how to correct errors, how to create arrays; how to reference other cells, how to modify objects, how to move
objects, points, and edges; and how to avoid repetitious mouse clicks. The tutorial also shows how to build a
3-D model of a 2-D layout.
 DNA Sequencer Tutorial: This tutorial, starting on page M2-1, demonstrates how to build a DNA sequencer
that consists of a circular glass wafer into which ninety-six radially arrayed sequencing columns and associ-
ated electrophoretic injection channels are etched. It shows how to use some of the Layout Editor generators,
how to create a clipping path, and how to build a portion of a design.
The tutorials listed below also include some Designer techniques:
 Beam Design Tutorial: This tutorial, starting on page T2-1, provides a thorough explanation of how to
design a simple beam with rigid conformal supports using Designer’s Material Properties Database, the Pro-
cess Editor, the Layout Editor, and the 3-D modeler. For those users with the Analyzer suite, the tutorial has
several exercises demonstrating MemElectro, MemMech, and CoSolve-EM capabilities.
 Mirror Design Tutorial: The Mirror Design tutorial shows how to design a mirror that rotates around a sup-
port. It demonstrates how to create a process file suitable for a particular layout.
 MemCFD Tutorial: This tutorial, starting on page M3-1, shows how to create a layout for a simple channel.
 NetFlow Tutorial: The tutorial starting on page M4-37 shows how to create a layout for a containment well.
 SwitchSim Tutorial: The tutorial starting on page M5-17 shows how to create a layout for a switching cross
channel. It also shows how to create tapered, flared, or angled objects in the Layout Editor.

D1-2 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Section 2: Getting Started

2.1: Introduction
Designer is a full-featured design creation tool especially suited for MEMS layout. The 2-D Layout Editor features
all-angle drawing and a number of curve creation tools capable of creating and fitting true curves, as well as a wide
variety of polygon creation and editing tools. The true curve capability allows curved MEMS components to be auto-
matically meshed. The Layout Editor can handle simple or complex designs, with the ability to organize designs into
hierarchical structures, and to push down editing to any level in the hierarchy. It is compatible with other layout for-
mats, such as GDS, CIF, and DXF formats. Completed designs can be used to build 3-D models, which can then be
meshed for analysis with CoventorWare or various third-party solvers.

M
2.1.1: DESIGNER Components
Figure D2-1 shows the major components of Designer and their relationship to other components of CoventorWare:

Figure D2-1 Designer and Related Modules

Material Properties Database


A default Material Properties Database (MPD) file is provided with the software. This file contains commonly used
materials for MEMS processing, along with relevant mechanical, electrical, thermal, fluidic, and other generic mate-
rial property values. The Process Editor uses the MPD as a source for materials from which to choose when specify-
ing deposition steps. For more information on this database, see page U2-1.

Process Editor
The Process Editor provides a way of creating or editing a description of the fabrication process, which is stored in

Coventor, Inc. March 23, 2010 D2-1


Section 2: Getting Started Version 2010

the process file. The process file provides the process information needed to create a 3-D model. An actual wafer fab-
rication process can be represented by a series of deposit and etch steps. This specification, along with a 2-D layout,
can be used to build a 3-D solid model.

Layout Editor
The Layout Editor is a tool for drawing and editing multi-layered 2-D layouts. The layers can be combined in various
ways to produce the masks that will be used to fabricate a device.

Custom Generators
In addition to drawing basic polygon and curve elements, the Layout Editor can be used to create Tool Command
Language (Tcl) scripts that can draw nearly any shape. A custom dialog can be created to specify size and position
parameters when the generator script is called. With this capability, any number of variations of a simple or complex
shape can be created. Advantages include greatly reduced drawing time and creation of shapes with prechecked
design rule tolerances. See page D5-35 for more details.

Predefined Generators
In addition to the custom generators, the Layout Editor includes an extensive set of predefined generators that are
compatible with Architect parametric electromechanical and magnetic components. When a schematic has been cre-
ated using these parametric components, the Layout Editor uses the netlisted schematic and the predefined generators
to automatically generate a layout. The predefined generators appear in the Layout Editor’s Generators menu. See
page D3-91 for more details.

Layout Export
After a 2-D layout is complete, the entire library can be exported to another layout program, to a high-speed plotter,
or to a foundry for mask and wafer fabrication. The export facility supports GDS, CIF, DXF, SAT, and IGES formats.
Layer names and order can be easily mapped between native and exported formats. See page D2-17 for more details.

Model Builder and Preprocessor


After a 2-D layout is complete, the 2-D information is combined with the process information to create a 3-D solid
model of the device, which is then viewed in the Preprocessor. The solid model is needed for further analysis in Cov-
entorWare. It can also be translated into other formats for use with third-party tools for meshing and analysis. For
more information on building a solid model, see page D2-34 for more details.
Completed solid models must be meshed prior to performing analyses on them. Meshing and some property defini-
tion can also be done within the Preprocessor. The meshing software allows specific layers to be selected for meshing
and can generate several kinds of elements. Preprocessor meshing capabilities are explained in the CoventorWare
ANALYZER Reference manual, starting on page D4-15.

2.2: Accessing Designer


All Designer functionality is accessible from the Function Manager. On Windows, start CoventorWare from the Start
menu. On Linux systems, type coventorware at the Linux command prompt. When CoventorWare is first opened
after installation, a User Settings window appears to prompt for file location information (see page 2-16 of the Instal-
lation Instructions for more information). Thereafter, whenever the program is started, a tabbed interface called the
Function Manager will appear, upon which a Project Browser dialog is superimposed:

D2-2 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-2 Open Project Dialog

M
After a project is selected and the settings file (.mps) is named, this window closes, and the Function Manager
becomes the active window. For more information on the Project Browser, see page U1-23.
The upper half of the Function Manager window displays the active process and MPD files and offers access to the
Process Editor and the Material Properties Database (MPD) Editor. Because the process and MPD files serve as the
basis for any design, they remain visible no matter which tab is active. Each tab on the Function Manager enables a
specific software tool. The tab groups are logical divisions of tasks performed within the software: device simulation
using a system model methodology (the Architect tab), device creation and device modeling of a design extracted
from a system model simulation or for FEM modeling (the Designer tab), and device verification and simulation
using FEM modeling (the Analyzer tab). Depending on the bundled module configuration you have purchased from
Coventor, you may not have access to all of these functions. This manual is concerned with the functionality accessed
from the Designer tab. For more information on the Function Manager’s menu options and other tabbed windows, see
page U1-11.

Figure D2-3 Designer Tab

MPD Editor
icon
Process Editor
icon

Layout Editor
icon

The Designer tab provides access to the Layout Editor and the Preprocessor. The Top Cell field is activated when a
layout is selected. This cell will be displayed when the layout is opened and will be used to build the solid model.

Coventor, Inc. March 23, 2010 D2-3


Section 2: Getting Started Version 2010

To start the Layout Editor, click on the icon to the far right of the Layout Field. There are several options for starting
the Layout Editor:
 New from Process: When this option is selected, the masks specified in the process file are defined as the
layers in the 2-D layout file (.cat). The user will then choose the appropriate mask/layer for drawing each part
of the device.
 New from Netlist: This option becomes available if a schematic is selected in the Architect tab. This option
allows the Layout Editor to extract a 2-D layout from an Architect schematic. The user does not have to
browse to select the .sin file; the software will automatically select the correct file associated with the sche-
matic selected in the Architect tab.
 New Blank Layout: This option allows the user to create a layout without first defining a process.
 New from Template: This option allows the user to import layer definitions from another cat file.
 Open Layout: When this option is selected, the Layout Editor opens the file specified in the Layout field.
The Model/Mesh field defaults to create a new model, but models in the current project database can be selected
using the drop-down menu or with the Browser icon. There are several options for creating a solid model:
 Apply Offset Values: By default, the offset values defined in the process file are applied to the model.
 Create Inverse of Device (Negate): This function creates a 3-D model of the empty space around (and in
between) the solid materials. See page M5-7 of the Microfluidics Design and Analysis Tutorials for an exam-
ple.
 Clip Device with Mask: This feature isolates a portion of a model. This is illustrated in the DNA Sequencer
tutorial; see page M2-14 of the Microfluidics Design and Analysis Tutorials for an example.
 Split Layer: This facilitates use of links and ties during meshing if meshes of varying refinement are needed
on the same layer of the model. Use the drop-down menus to select the layer to be split and the mask that
defines the split.

2.3: Using the MPD Editor


The MPD Editor allows you to add, delete, and modify material properties listed in the Material Properties Database.
This database stores characteristics of the materials used in the fabrication process. The properties associated with the
materials include strength, density, conductivity, and thermal characteristics. A material has to be selected for each of
the deposit steps in the process, and only those materials in the MPD can be selected. Device behavior is determined
in part by the physical and chemical properties of the materials that make up the model, so adding, modifying or ver-
ifying material properties is the first step in device design. For more information on the MPD Editor, see page U2-1.

D2-4 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-4 MPD Editor

M
2.4: Using the Process Editor
The Process Editor allows you to build or edit a simulated process flow that models the fabrication process to be used
by the foundry. The 2-D mask definitions in the layout are combined with the depth information in the process to cre-
ate a model.
The actual process used by a foundry for device creation is a fixed series of deposit and etch steps that will create an
optimized device. The foundry provides the process flow and design rule tolerances. In order to create an accurate
model for simulation, you will need to develop a simulated deposit and etch sequence that closely models the fabrica-
tion sequence.
Using the Process Editor allows you to accurately model many different types of device structures, even if they are
run on different fabrication lines. Even though differences may include the sequence of mask steps, materials used,
material thicknesses, and types of deposition and etch techniques, you often will be able to accommodate these
changes by modifying the process flow.
Figure D2-5 shows the Process Editor with an open file:

Coventor, Inc. March 23, 2010 D2-5


Section 2: Getting Started Version 2010

Figure D2-5 Process Editor


Process Library

Process
description

Step
parameters

To add steps to a process, double click on a step in the Process Library; this will add the step to last step in the Process
Description pane. You can also right click on a step in the Process Library to select other options for inserting steps.
To define or edit a step, select it in the Process Description pane, and then enter the desired values in the Step Param-
eters pane.
For more information on the Process Editor, see page U3-1.

D2-6 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

2.5: Using the Layout Editor


The Layout Editor is started from the Designer tab. The arrow to the right of the Layout Editor icon opens a menu
with several options. With a process file already selected, the option New from Process will extract layer names and
colors from the process file and build the layerbrowser contents. See page D3-36 for an example.
Click on the Layout Editor icon to open the Layout Editor window:

M
The default interface includes
 A menu bar across the top of the window, which includes most Layout Editor commands.
 One vertical row and two horizontal rows of icons, representing the most frequently used commands or
actions. See page D3-2 for more details.
 An embedded Layer Browser list on the left side of the lower horizontal toolbar. Its drop-down menu shows a
list of layers and allows selection of the active drawing layer.
 A working area for drawing. Initially, a grid of white dots with a default spacing is shown to guide drawing.
 A coordinate readout in the lower left corner, displaying the current mouse cursor position.
 A Show/Hide icon, located to the immediate right of the coordinate readout, for displaying or minimizing the
Terminal Window.
 A Command line prompt at the bottom. Observe this line when executing commands because it may prompt
for intermediate actions or command parameters. This duplicates the input function of the Terminal Window.
 A red Stop icon in the lower right, for interrupting a command sequence.

Coventor, Inc. March 23, 2010 D2-7


Section 2: Getting Started Version 2010

2.5.1: Planning the Layout


Advanced planning saves time and results in more accurate work with fewer surprises and a more straightforward
design.
A basic outline of the project is generally helpful for organizing the work and for anticipating or avoiding problems.
Before starting a complex design, sketch out sections of it on paper. Look for some of these characteristics:
 How large is the design? Knowing the extent of the design in advance makes it easier to estimate an appropri-
ate scale, grid size, and optimal placement of sections of the layout.
 How complex is the intended process for the design? Considering the complexity of the process may help in
defining layers and their color and fill patterns.
 Are any sections of the design repeated? The repeated structures may be as simple as rectangles or as com-
plex as a large array of optical mirrors. Identifying repeated structures may make it easier to build several of
the same type of structure at the same time, to use cell references or to introduce levels of hierarchy in the
design.
 How can the design be annotated or documented to make it easier for others to follow? Text is a powerful
way to label specific cells or functions. Breaking a single mask layer into multiple layers (and then merging
them later) can be a way to segregate sections of a design to make it easier to understand. Careful selection of
a hierarchical scheme and use of cell references can help others understand the functionality of a design.
 Will the design have several variations of a complex cell that will be used in numerous places in the design?
If so, consider using a generator. For guidance, see “Creating Generators with TCL” on page D5-35.

2.5.2: Customizing the Workspace


Several features have been incorporated into the Layout Editor that allow you to customize the workspace for ease of
use and increased efficiency. Some of those provisions are described here. For more information and descriptions of
other options, see page D3-18.

The Layout Editor uses dimensionless units for measurement. This allows scaling of the completed drawing to
angstroms, nanometers, microns, or any other unit compatible with foundry design rules.

Setting Grid Constraints


As you draw, you will notice a default grid and a snapping action that occurs at each drawn vertex. You can control
these grid parameters. Setting up the correct grid is an important aspect of constructing accurate polygons or other
objects, but it requires a little advanced planning. You want to set a comfortable spacing so you can see what you are
drawing. Once you set up your grid, you can snap objects to the grid spacing or some multiple of it.
To open the dialog for setting the grid, from the menu bar select Tools > Options > Grid.

The Working Grid default is 0.5 units. The Working Grid is the snap dimension, usually set to the minimum design
rule spacing or width (feature size) required by a foundry. The default setting defines spacing that allows you to view
the grid and still see a reasonable amount of design area on your canvas. It may be defined by one or two positive

D2-8 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

numbers greater than or equal to the smallest possible coordinate value. If only one number is entered, it is applied
equally in the X and Y directions. If two numbers are entered (separated by a comma), the first number is applied in
the X direction, and the second number is defined in the Y direction. Set the grid snap to any value you choose.
The Display Grid multiple default is set at 2. This value does not mean 2 units. It means the displayed black dots that
you see are two times farther apart than the snap spacing set by the Working Grid. This multiple may be set to any
value, although the default of 2 is recommended for most designs.
The Draw grid option allows you to turn off the black dot display. It is True (on) by default.

Using the Terminal Window


To open the Terminal Window, click on the small square to the left of the Command Line:

M
click here

Each command executed in the Layout Editor appears in the upper frame of the Terminal Window until the buffer
limit is exceeded. The command history is also recorded in the catcmds.log file located in the Logs subdirectory of
the current work directory (see page 2-16 of the Installation Instructions). This file has no size limit and will contain a
complete listing of all commands executed during a session.

2.5.3: Organizing with Cells and Libraries


The design information displayed on the canvas is saved as a cell. A typical layout is a hierarchy that consists of a
number of cells. The complete set of cells in a project is saved in a library, which also includes layer information,
hierarchy structure, custom generators, and similar information that is unique to the project. There is no limit to the
number of cells that can be included in a library or to the number of libraries that may be saved. The file extension cat
identifies native CoventorWare library files.

Saving a Design
To save a design as a file, click on the arrow next to the Save File icon. These options appear:
 Save File As brings up a navigation window to save the file in the location of your choice, but it is strongly
recommended that you save it in the default location, which is the Devices sub-directory of your current pro-
jector directory. This file name, which is assigned a cat extension, becomes the current library file name.
Enter a new file name in the blank filename field.
 Save File saves all changes to the file since the last save.
 Save Cell As assigns a name to a cell. This makes it possible to reference the cell into other cells in the library.
A cell can be saved even if the library has not yet been named.
 Save Cell saves the cell. If the cell has not been named, the software will prompt you for a name.

Coventor, Inc. March 23, 2010 D2-9


Section 2: Getting Started Version 2010

The Save Cell and Save Cell As functions do not save cells to the library file. They will appear in the cell hierarchy,
but not in a navigation window or directory, nor will they be preserved in the event of a system crash. Saved cells
are preserved only when the library file is saved.

Opening Files
In addition to saving files, you can open existing libraries or cells, or create new libraries or cells using the Cell or
File icons or menu selections.

Using the Cell Browser


The Cell Browser icon allows you to view a complete list of all cells linked to the currently open library. The
current active cell appears in blue:

2.5.4: Correcting Mistakes


The Layout Editor offers a number of ways to correct errors including undo, redo, backout, and close functions. Each
is described below.

Undoing an Action
The Layout Editor offers unlimited levels of Undo while working in a specific cell.
From the upper horizontal icon row, select Undo. Your last action is undone. Continue clicking on Undo to
undo as many commands as desired.
The Undo arrow may be selected to open a list of actions. These actions may be undone sequentially or as a group.
The list is cleared when the cell is saved.

Redoing an Action
The Layout Editor offers unlimited levels of Redo after performing Undo operations. To redo an action that has been
undone, click on the Redo icon. Undone actions are automatically listed in the Redo drop-down menu. Click

D2-10 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

on the arrow next to Redo to open the menu. All listed actions can be redone, if desired, and remain in the drop-down
menu until the cell is saved.

Backing Out of a Command in Progress


To cancel a command sequence before completion, press Esc on the keyboard, or click on the red Stop icon to the
right of the Command line.

Closing and Reopening a Cell


If a cell was saved shortly before the mistake was made and the mistake would be difficult to undo, it may be easiest
to simply close the cell. Click on No when prompted to save the cell, and then reopen the cell and resume work from
the last save. To make this a useful technique, save work often.

M
2.5.5: Using Templates
Templates are layout libraries or process files with predefined layers, colors and fills. Some templates are provided
with the software, but any existing library or process file may be used as a template without conversion.
1. From the menu bar, select File > New > From Template.
2. Choose your template from the navigation window that opens. File options include .vproc a process file), .cat
(native layout file), or .tech (a Cadence Technology file to be used with a Cadence Stream file).
3. An initially unnamed file is built using the parameter settings of the template.
To use a library that has a number of cells that may be useful in a new design, copy it over to a new library name:
1. From the upper icon row, click on the Open File icon.
2. Choose your cat file from the Navigation window that opens.
3. Immediately Save File As to a new name.
Your newly named file is now identical to the source file, including all predefined layers and cells. This procedure is
valid for any existing library file.
To save often-used cells for use in other designs, create a library that contains just those cells. From the menu bar,
select Cell > Copy and copy one or more cells as needed. This technique is demonstrated in the Mirror Array tutorial
(page T8-14) and is described on page D3-53.

2.5.6: Creating Basic Objects


Basic objects may be drawn using the toolbar icons to the left of the drawing canvas. The Layout Editor includes
icons for drawing polygons, circles, rectangles, paths, arcs, and chords and an icon for text objects. For information
on how to use these icons, see page D3-67.
Other shapes can be created by combining two or more simpler objects using Boolean operators and curves. For more
information, see “Shape” on page D3-80, “Boolean Operations” on page D3-109, and “Using Curves” on page D5-6)

Generated Objects
Generators are similar to macro procedures found in some programs. Generators support Tool command language
(Tcl), which allows you to write parameterized procedures to create semi-custom versions of objects. As an example,
you can automatically build complex shapes and interactively enter sizes, layers, or other parameters to build custom-
ized instances. See page D3-91 for more information.

Coventor, Inc. March 23, 2010 D2-11


Section 2: Getting Started Version 2010

2.5.7: Using Cell References and Hierarchy

Cell References

Each saved cell is available for use within another cell. The functionality is analogous to a layout program that incor-
porates linked text or graphics. The incorporated, or referenced, cell is displayed as if it resided within the cell into
which it is referenced. Options allow the cell to be displayed in its entirety or as the equivalent of a black box outline.
Cell references provide a way to build smaller functions and repeat them as needed without redrawing. References
also allow designers to use standard predeveloped cells from a master library and allow for uniform cell sharing
among a workgroup. For an example of how to use cell references, see the MicroPlate Tutorial, page M2-12.

Array References
Array references are multiple placements of cell references. Instead of placing a single cell within another cell, you
can specify a matrix of rows and columns for placement. This technique is especially useful for designs that consist of
an array of identical devices that are coupled for additional mechanical power, optical capability, or for some other
reason where the effect of the structure is multiplied by the number of occurrences. For an example of an array refer-
ence, see page T8-9 of the Mirror Array tutorial in the MEMS Design and Analysis Tutorials, Vol. 2.

Hierarchical Designs
Any time a cell reference is used, the Layout Editor creates a new level in which to place the cell reference. When a
design contains more than one level, it has hierarchy. The principle of hierarchy is similar to the way a disk directory
is organized, for which you create an organized hierarchical scheme of folders and sub-folders in which to place files.
In the Layout Editor, you may create several nested levels of cells. This allows you to organize your design so the top
cell structure contains other cells at different levels. This design hierarchy is illustrated in the Mirror Array tutorial
(see page T8-16). The Layout Editor includes commands for navigating within the hierarchy, for flattening the hierar-
chy by combining cells when hierarchy is no longer needed, and for editing cells anywhere within the hierarchy with-
out opening the source.

2.5.8: Navigating in the Workspace


As the design grows, it may extend beyond the original canvas size selected. Viewing area size, object size, and
design view can all be controlled.

Extend the Drawing Area


The horizontal and vertical scroll bars allow extension of the drawing area. When the scroll limits in any direction are
reached, about one-fourth of the canvas area is added to the design. As the design grows, the scroll bars become more
sensitive.

Pan
Panning is a procedure that moves the current view in fixed increments, either horizontally or vertically. Panning does
not affect the size of the objects. Panning is an alternative to using the scroll bars. To use the Pan function, from the
menu bar, select View > Pan. Then choose one of the four options: Left, Right, Up, or Down.
When the default Layout Editor key bindings or the L-Edit key bindings are active, the arrow keys can also be used to
pan a design.
The pan increment is set by the Layout Editor. The increment value is approximately one-fourth of the screen.

D2-12 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Zoom
Use the zoom function to view specific sections of the design. The Layout Editor offers several different types of
zoom options, as follows:

 To zoom in on a design using the Layout Editor’s default magnification, click on the Zoom in icon.

 To zoom in on a selected area, click on the arrow next to the Zoom icon and select Zoom window. With
the mouse, select an area or section of the design by dragging a rectangle around it.

 To zoom out from a design using the Layout Editor’s default magnification, click on the Zoom out icon.

M
 To zoom out so the entire design can be viewed on the canvas, click on the View All icon.
The command is executed when selected.

See the Last View


During navigation, one previous view is maintained in memory and may be accessed by clicking on the Previous
View icon.

Other Navigation Tools


The Layout Editor Reference section lists commands for zooming to the grid (page D3-34), setting specific views
(page D3-30), and zooming in on previously selected objects (page D3-34). This section can be accessed from the
Help menu.

2.5.9: Working with Layers


A layer is a specific entity in the Layout Editor that has properties for viewing and selecting. Objects are drawn on
layers.
The Layout Editor has a convenient Layer Browser function to build layers of any color, with other properties
assigned. Note that you can create layers within the Layout Editor using the Layer Browser, or you can import layer
definitions from an existing layout file or process file (see page D2-11). Once a layer exists, you can access the active
layer for drawing directly from the interface.

Accessing the Layer Browser


To access the Layer Browser, from the lower icon row, select the Layer Browser icon or from the menu, select
View > Layers > Browse. A dialog will open to display the layers in the active cat file. If no cat file is active, and if
the Layout Editor was opened without selecting a template or process file, only a default layer appears with a default
color, red.

Coventor, Inc. March 23, 2010 D2-13


Section 2: Getting Started Version 2010

Figure D2-6 Layer Browser

Layers may be created, selected, configured, or deleted whenever a library is open. There is no limit to the number of
layers that may be added, though confusion could result if the number of available colors is exceeded. Each layer cor-
responds to a mask in the process (.proc) file. Additional layers may be added by selecting Layer > New from the
menu bar and providing parameters in the dialog box. These layers correspond to masks in the process file, and the
name used for each layer must exactly match the mask names. See “Layer Creation and Selection” on page D3-63 for
further information.

When adding new layers, SAT should always be selected unless there is a compelling reason to do otherwise. If this
option is not selected, models will not build correctly in the Preprocessor.

Because the layer creation process can be tedious for large designs, it is a good idea to store Layer Browser settings in
a template for use when you create new libraries. This task is handled automatically if a process file is used as a tem-
plate.

Layer Browser Fields


This section details the Layer Browser settings. When the user creates a new layer (select Layer > New), the layercre-
ate dialog opens, which also has the same field options as the Layer Browser. All displayed parameters can be
changed from within the Layer Browser.

Table D2-1 Layer Browser Fields

Field Function How to change

Layer Name A descriptive identifier for the drawing layer, such as anchor. Edit the Name field.
Clicking in this field sets the layer as the active layer.

Color Name for the layer color chosen. Choices are available from the Click in the field, pull down the menu,
drop-down menu, or select more at the end of the menu to open a and select a color, or select more and
color browser with more color choices. click on a color in the color chooser.

Fill Fill pattern to use for the created object; used to make layers Click in the field, pull down the menu,
more distinguishable. Choices include none, solid, four dot and select a pattern.
patterns, and two hatch patterns.

V Sets the Visibility attribute for the layer. If not checked, you will Check or uncheck box.
not be able to see the layer.

S Sets the Selectability attribute for the layer. If not checked, you Check or uncheck box.
will not be able to select the layer.

D2-14 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Field Function How to change

Layer Polarity This setting determines if the layer shape is added (+) or Select the desired button field.
on Mask subtracted (-) from the layout.

Mask Name This field allows the user to assign more than one layer to a Enter a name in the field, or select an
mask, for example a plate with holes could be on two layers, but existing mask from the drop-down
make up one mask. By default, the field is the same as the layer menu.
name. These mask names are the Process Editor etch steps.

Dark or Light This setting determines how the shape drawn by the mask Select the desired button field.
Mask Field appears: if set to Dark, the area inside the mask appears filled;
and if set to Light, the area inside the mask appears empty. See
Figure D2-8 on the following page for examples.

M
Magnifier icon Opens the layer dialog for viewing and editing layer properties Click on icon for editing.
and enabling layer export (see page D2-17 for more information
on exporting layers).

Mask Layer Colors and the Solid Model


Mask layer colors do not affect the color of the solid model layers. The color of solid model layers are determined
by the material colors, which are set in the Process Editor’s Tools > Materials Setup dialog. Users can map mask
layer colors to material colors using either the Layer Browser or the Materials Setup dialog, but must be aware that
a mask may be used to define more than one material, or that a material may be used with more than one mask.

Dark and Light Fields


The Layout Editor/LayerBrowser Dark/Light Mask Field indicates which areas are exposed to light to UV, and which
areas are not.
 If a light mask field value is specified, light or UV cannot go through the areas enclosed by the mask bound-
ary geometry, as shown in Figure D2-7a below.
 If a dark mask field is specified, light cannot go through the area outside the mask boundary geometry
enclosed area, as shown in Figure D2-7b below.

Figure D2-7 Dark and Light Mask Fields

a. Light Mask b. Dark Mask

Coventor, Inc. March 23, 2010 D2-15


Section 2: Getting Started Version 2010

Mask Viewer
The Mask Viewer allows users to see the mask exactly as it will be manufactured. To view a mask, in the Layer
Browser, click to select the desired layer, and then click on the Mask Viewer icon. Figure D2-8 shows the same
mask set to Light and Dark view.

Figure D2-8 Mask Viewer with Light and Dark Fields

When a mask is set to Light, the area under When a mask is set to Dark, the area under
the mask is preserved. the mask is taken away.

Selecting Layers from the Toolbar


To change the current layer:

1. From the lower icon row, click on the arrow next to the current displayed layer name.
2. From the menu, select any layer as the active layer.

3. Enable or disable the Visibility and Selectability attributes using these icons.

2.5.10: Printing a Layout


The Layout Editor can send an image of a layout to printer. When you select the Print icon, a dialog opens that allows
you to select the paper size, orientation, area of the layout to be printed, and color:

D2-16 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-9 Layout Editor Printing Options

M
2.6: Importing and Exporting in Other Formats
When you are finished with the 2-D steps of the design process, you can export your design from the Layout Editor.
You can also import designs created with third-party software. At the 2-D level, the software can open standard GDS,
CIF, and DXF files directly from other drawing programs with no intermediate translation. These file types can also
be first translated through import filter routines available within the software to enable special features. The software
can output in GDS, CIF, IGES, SAT, and DXF directly or through similar translation filters. The exported files may
be used for export to foundries for mask and wafer fabrication, to high-speed plotter facilities for 2-D plots, and to
other 2-D drawing programs. Layer name mapping is straightforward and flexible, allowing the exported files to meet
nearly any third-party specification.
At the 3-D level, the software can import solid models into CoventorWare simulation products for meshing and 3-D
domain and coupled simulation. The 3-D models also can be exported to third-party programs for manual partitioning
and mesh generation and for solid model simulation.

2.6.1: 2-D Import Capabilities


GDS, CIF, and DXF are the most common industry drawing file formats. The GDS format goes by many names:
GDSII, GDS II, Calma GDSII Stream format, etc. CIF stands for Caltech Intermediate Format and is not owned by
any company. DXF (Drawing Interchange File) was created by AutoDesk for their AutoCAD software and is sup-
ported by many other programs; the Layout Editor can import DXF files in version R14 or lower.
Files formatted in industry-standard GDS, CIF, and DXF formats can be opened directly without a translation step.
As an alternative, import translators are available to enable additional features. Note that if one of these files is
opened directly, without translation, a .cat file will not be produced until the file is saved (File > Save). But the trans-
lation step produces a .cat file, which is then opened in the Layout Editor.

Direct GDS, CIF and DXF Import


GDS, CIF, and DXF files may be opened directly by the software. The procedure is as follows:
1. Open a navigation window by selecting File > Open from the menu bar:

Coventor, Inc. March 23, 2010 D2-17


Section 2: Getting Started Version 2010

Figure D2-10 Library Navigation Dialog

2. Browse to the file directory.


3. Click on the arrow next to the Files of type: field and select either (gds), (cif) or (dxf).
4. Select the file and click on Open.
5. The next dialog prompts you to select a template file that can be used to map mask numbers to layer mask
names, colors, and fills. If you do not have a template or do not want to use a template, click on Cancel.

When opening a GDS file, if you do not want to be prompted to select a template, in the Layout Editor window,
select Tools > Options > GDS Import, and deselect the Prompt for template file. From this menu you can also
select the default template file filter (.cat or .tech).

Without a template, the Layer Browser will look similar to the one shown in Figure D2-5:

Figure D2-11 Layer Browser of GDS File

Files opened directly in the Layout Editor are not .cat files until they are saved as such. Files created using the import
function (described below) are .cat files when they are opened in the Layout Editor.

Translated GDS, CIF, and DXF Import


For more complex imports that require special layer mapping or other adjustments, you can translate GDS, CIF, or
DXF files to Layout Editor format. Gds In, Cif In, or DXF In options are available from the File > Translators menu.
The translation operation will leave the original file intact, while creating a file in cat format containing the informa-
tion in the original file. The new file may be opened just like any other Layout Editor native file. A short example on
page D2-29 illustrates the import/export process in more detail, concentrating on the layer mapping aspects of the
translation.
For more details on the individual translators, see the section beginning on page D3-42.

D2-18 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

2.6.2: Merging GDS Files


If a device has a complicated layout, the user may have more than one GDS file that defines the layout. For example,
a user may have an individual GDS file for each layer. GDS Merge tool allows the user to merge gds files into one
file. To open GDS Merge dialog, select Tools > GDS Merge.

Input GDS pane displays

M
selected GDS files

 Input GDS files


In this field, the user specifies the GDS files to be merged. The user can specify the individual filepath and file-
names by typing them in the field (files are separated by the " symbol), or can use the Browse icon to navigate to
the file location(s) and select the desired files.

 Add
If the user has typed the filenames in the Input GDS files field, he/she must then click on this button to add them
to the Input GDS pane below the Input GDS files field. As an alternative, pressing Enter will also load the
selected files.

 Remove
This button removes any highlighted GDS file in the Input GDS pane.

 Clear All
This button removes all GDS files that are listed in the GDS Input pane.

 GDS Output File


The user enters the filepath and filename of the GDS file that represents the merged GDS files. The user can type
the filepath and filename or can use the Browser dialog to navigate to the directory where the GDS file will be
written.
The merged file is created when the user clicks on OK. The user can then use the Layout Editor’s File > Open dialog
to open the newly created GDS file.
Figure D2-12 shows the result of merging the c1l1.gds and c1l2.gds files:

Coventor, Inc. March 23, 2010 D2-19


Section 2: Getting Started Version 2010

Figure D2-12 Merging GDS Files


c1l1.gds c1l2.gds

merged.gds

Note that the layout may have been separated into multiple GDS files because it is too large. If so, merging the files
would create a file that is too large to open in the Layout Editor. More often, the GdsMerge function is used to merge
zones that have been extracted from multiple GDS files. See page D2-26 for more details.

To merge GDS files one by one or to add another GDS file to an already merged layout, use the File > Translators
> GDSin dialog. Specify the input file, select the Append option, but do not specify a library.

D2-20 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

2.6.3: GDS Extraction Tool


The GDS Extraction tool, available from the Layout Editor’s Tools menu, allows the user to create and read in small
regions or zones from extremely large GDSII files without having to load the entire file. The user can then build a 3-
D model from any of these extracted zones. The GDS Extractor will create one new GDS file per zone.

The GDS Extraction Tool requires an additional license feature. For more information, please contact a Coventor
sales representative.

The Tools > GDS Extractor menu has three options: GDS Setup Wizard, Quick Setup, and Query Cells & Layers. The
GDS Setup Wizard is for a user who is not familiar with the layout and wants to be able to see an outline of the GDS
file before creating the zones. The Outline file stores the cell hierarchy, extents, and reference placement information,
and if saved, serves as a cache for future extraction operations for speed optimization.

M
The Quick Setup is for a user who is familiar enough with a layout that they can enter the desired coordinates of the
zone(s) without viewing an outline.
The Query Cells & Layers option is available for users who are not familiar with cells and layers in the source GDS
file.
Each option is detailed below.

GDS Setup Wizard


The GDS Extractor Setup Wizard allows the user to first create an Outline file, and then use that file to create the
zones. The user first specifies the GDS file and output directory, and then clicks on Scan to create a list of all the top
cells in the source GDS file. From this list, the user selects the top cell to be used for the zone extraction.

Advanced Settings

 Create Outline file


If this option is checked, when the user clicks on Extract Outlines, the Outline file is written to a GDS file. The
original name of the file is appended with an _outline designation. This file preserves the Outline so that any
future zone extractions will be faster. If this option is not checked, the outline is still created when the user clicks
on Extract Outlines, but it is not saved to a file.

 Hierarchy levels to store in Outline file


This option becomes available when the source GDS file has hierarchy. This setting determines how much hier-
archical detail is preserved in the Outline file, but does not affect how much hierarchy is preserved in the
extracted zones.

Coventor, Inc. March 23, 2010 D2-21


Section 2: Getting Started Version 2010

 Minimum pixel count for displaying reference outlines


This feature allows filtering of objects displayed in the outline file. Any object of a size below the minimum
pixel count selected by the user will not be displayed in the outline. Filtered objects remain in the drawing and
are included when the model is built, but are not displayed.

 Save Defaults
This option saves the settings specified in the Setup dialog as the default settings. The Restore Settings option
can be used to apply these default settings.

Creating the Outline


Clicking on Extract Outlines creates and displays the Outline file and the Step 2 dialog, as shown below.

Figure D2-13 Outline File and Step 2 Dialog

Zone Specification
In the Step 2 dialog, the user creates zones by entering coordinates in the Zone Specification field or by clicking on
Select and drawing a rectangular region directly on the Outline. If the user is entering these coordinates manually,
they should be in the order of xmin,ymin,xmax,ymax and separated by commas. If the user draws the rectangle on the
outline, the coordinates of the two defining corners are displayed in the Zone Specification field, listed as
xmin,ymin,xmax,ymax.
To add another row to the Zone Name list, right click in the Zone Name field, and select Insert Row. This right click
menu also includes a Delete Row option.
Note that the zones are named sequentially, but the user can rename any of the zones by entering text in the Zone
Name field.

D2-22 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Layer/Datatypes
The Step 2 dialog also has options that allow the user to filter the layer/datatypes that are extracted in the zone. If the
user clicks on the Select Layers/Datatypes option, the Select button becomes active. Clicking on this button opens a
dialog that lists all the GDS layers/datatypes in the top cell. Only the layers/datatypes that are added to the column on
the right side of the dialog are included in the extraction.

M
Zone Extraction
Once the user has created all the desired zones, he/she clicks on Extract. Any zones that have been specified are
saved as individual .gds files. If the Load zone file after extraction is selected and the user has created only one zone,
the Layout Editor will display the zone file after it is extracted. If this option is selected and there are more than one
zone, the Layout Editor will open a dialog that lists all created zones. The user can click on a zone in the list to open
the .gds file that contains that zone.

Quick Setup
This option is for users who are familiar with the GDS file and do not need an outline file to use for guidance in cre-
ating the zones. All the options for creating zones, explained in the previous section, are in one dialog, and creating an
outline file is an optional step. The user has to specify the coordinates of the zone; there is no option to draw the
zones.

Note that the Specify layers to Include/Exclude does not have a dialog that displays all the layers. The user must enter
the layer names in the field below this option. The Query Cells and Layers option, explained below, can be used to
list all the cell and layer names.

Coventor, Inc. March 23, 2010 D2-23


Section 2: Getting Started Version 2010

Query Cells and Layers


This option generates a list of top cells, reference cells, and GDS layers in the specified file. It also displays the max-
imum hierarchy level found in the GDS file.When the user selects this option from the Tool menu, a file browser
opens. The user navigates to the desired file and clicks on Select. The file’s cells, GDS layers, and maximum hierar-
chy level are then listed in the Terminal window.

Example
Figure D2-14 shows an entire GDS layout. This particular layout is very large in size, so instead of opening the entire
layout, we want to extract a zone and open the zone in the Layout Editor.

Figure D2-14 Entire GDS Layout

We use the Setup Wizard to point to the source file, and click on Extract Outlines. Then we use the second Setup
window to draw a zone the encompasses the area of interest, as shown in Figure D2-15:

D2-24 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-15 Selecting a Zone

M
Then we click on Extract Zones. Because we only drew one zone, when the extraction is finished, the zone automat-
ically opens in the Layout Editor. Note that the extracted zone includes objects that extend beyond the originally
selected area. If an object is intersected by the zone selection box, all of the object is included in the extraction, not
just that part of the object that is inside the zone.

Coventor, Inc. March 23, 2010 D2-25


Section 2: Getting Started Version 2010

Figure D2-16 Extracted Zone

original selection area

When you are building the solid model, you can use the zone layer to define the extents of the wafer. To identify
which layer is the zone layer, use the Cell Browser to select and display the GDSExtractorInfoCell.

Extracting Zones from Multiple GDS Files


If a device has a complicated layout, the user may have more than one GDS file that defines the layout. For example,
a user may have an individual GDS file for each layer. The GdsExtractor function has a command line function that
allows the user to extract the same zone(s) for multiple GDS files.
To access this function from the Layout Editor Terminal window, enter
cat:gdsextract --gds filename1 --gds filename2 ...--gds fileNameN
--outputdir path --topcell name --zone xmin,ymin,xmax,ymax zone_name
This command will write out a zone file for each specified gds file. Each zone file will be named filename_zone. Note
that if the user specifies only one topcell name, it will be used for all the GDS files. If the user specifies more than one
topcell, there must be one topcell specified for every GDS file, and they will applied to the GDS files in the order that
they are listed.
For example,
cat:gdsextract --gds Original.gds --gds Original_2_2.gds --gds
Original_4_4.gds --gds Original_5_5.gds --outputdir
C:\Design_Files\GDS_Test --topcell eaglet --zone 400,400,500,500 ZoneA
This command extracts a zone of dimensions 400, 400, and 500, 500 from each of the four specified GDS files using
the eaglet topcell for each GDS. It then creates four zone files, Original_ZoneA, Original_2_2_ZoneA,
Original_4_4_ZoneA, and Original_5_5_ZoneA in the project directory.
The user can also specify more than one zone by adding additional --zone xmin,yminm,xmax,ymax

D2-26 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

zone_name arguments. For N number of zones, the command will generate N number of zone files for each speci-
fied GDS file.
After extracting multiple zones, the user can merge them into one file, using the GDS merge function:
See page D2-19 for more details.

2.6.4: Generating an Automatic Prompt for GDS Extractor


Users can set a tolerance for the size of GDS files so that the Layout Editor generates warning that the file that is
being opened is larger than the set limit and prompts the user to use the GDS Extractor tool. The GDS Size Limit dia-
log is accessed from Tools > Options > GDS Size Limit. The default setting is 5 Mb.

M
When the user selects a GDS file that is larger than the set size limit, either from the Function Manager or from within
the Layout Editor, the dialog below appears:

If the user clicks on Yes, the Layout Editor will continue to load the GDS file. If the user clicks on No or Cancel, the
Layout Editor will not load the GDS file.

2.6.5: 2-D Export Capabilities


A Layout Editor file can be exported in GDS, CIF, IGES (Initial Graphics Exchange Specification), SAT, and DXF
(version R09) formats. GDS, CIF, and DXF files can be exported directly using the File > Save As function. After
selecting this option, you can select the desired file format from Files of type drop-down menu. For more complex
exports that require special layer mapping or other adjustments, the Layout Editor also has translation filters for GDS,
CIF, and DXF, as well as for IGES and SAT. The export parameters and layer considerations are discussed in this sec-
tion.

Translated File Export


The translator dialog window makes several options available for customizing the export. The procedure is as
follows:

Required Steps
1. From the menu bar, select File > Translators and choose the Gds Out..., Cif Out..., IGES Out..., SAT Out..., or
DXF Out... format options. As before, the dialog window that opens depends on the file being translated:

Coventor, Inc. March 23, 2010 D2-27


Section 2: Getting Started Version 2010

Figure D2-17 Translator Output Dialog Windows

2. Set the Output file field path to the location where the new target file will be stored. Use the Browse button to
open a navigation window for the search.
3. In the Library field, provide a name and path for the existing cat file to be translated.
4. In the Top Cell field, enter the name of the cell that is the hierarchical structure to be translated.
5. Click on Apply and Close.

Optional Steps
1. (GDS only) Specify a Cell instead of a Top Cell to translate just one cell. You may not fill in both Cell and
Top Cell fields at the same time.
2. (GDS only) Specify a scale factor if the export database is to be scaled up or down. If the Scale factor field is
left blank, a scale factor of 1.0 is assumed.
3. If the specified exported file name already exists, choose to cancel or overwrite. The default is cancel, which
prevents inadvertently overwriting an existing file.
4. (GDS and CIF only) Specify a Point Limit to control the maximum point count of polygons. GDS defaults to
200 points. Large polygons are split into multiple polygons. CIF defaults to no limit.
5. (IGES only) The Polygon Mode default False setting allows for translation of true curves. Select True if the
exported file will be used by a third-party tool that does not support true curves.
6. To remap a single layer name, specify the original and new name in the Layer map field. Separate the names
with one space. This will override the default mapping found in the Layer browser window.
See “GDS Export and Import Example” on page D2-29 for an illustration of these processes in more detail, with
emphasis on the layer mapping aspects of the translation.
The reference section beginning on page D3-42 has more detail on the options in each dialog.

D2-28 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

2.6.6: GDS Export and Import Example


The following example illustrates how a GDS format file can be exported and imported using the translation filters. It
concentrates on the layer mapping features available within the Layer Browser window.

Setup
Start with a layout file with the cell structure and layer organization similar to the one shown in Figure D2-18. This
file is the same as that used for the design in the Mirror Array Tutorial, beginning on page T8-1.

Figure D2-18 Sample Cell Structure

M
Note the Top Cell designation and hierarchical structure in the Cell Browser window.
Layer identification and layer mapping to the three file formats are directly supported by the Layer Browser. For each
layer, clicking on the View Layer Properties icon , opens a dialog for enabling export and setting the layer
name within the limitations of the file format used. In Figure D2-19, the View Layer Properties dialog for the ELEC-
TRODE layer shows that it is enabled for GDS export, and its GDS layer name is L27D0.

Coventor, Inc. March 23, 2010 D2-29


Section 2: Getting Started Version 2010

Figure D2-19 Accessing Layer Properties

This example uses the built-in Gds Out translator to export the database in GDS format. This is a common action
when creating a database compatible with your foundry. The foundry mapping scheme is included in the file package
of the design kit.

Export Command and Dialog


From the menu bar, select File > Translators > Gds Out. A translator dialog window opens:

Figure D2-20 GDS Out Translator Dialog Window

There are three mandatory fields in this dialog window:


 The Output file field: Specifies the GDS target output file name, which may have the same root name as the
original cat file. If the target file already exists, it may be overwritten or the action may be canceled.
 The Library field: Specifies the .cat file to be translated. The .cat file does not have to be open during the con-
version routine.
 The Top Cell field: Specifies the top of the hierarchy (lowest Level number) in the design.

D2-30 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

To translate and export a single cell rather than the entire design, specify the name in the Cell field and do not specify
a top cell. If both fields are completed, an error message is generated when the export is attempted. If both fields are
empty, all cells will be exported.
The Scale Factor is used to scale the entire design or cell by whatever number you wish. This can be used for a global
undersize or oversize operation, or just to scale the file.
The Point Limit value is provided by default. It determines the number of points that will be used when recreating
true curves using polygons.
When finished, click on Apply and Close. The target .gds file is written to the path and file name specified.

Opening a GDS File


After the GDS file is created with the export function, you can open it directly. When you do, you will note that the

M
colors have changed from their original appearance. The Layer Browser window shows the color mapping is different
and arbitrary; but this is not usually a problem because the GDS file normally will not be edited, and the original
color scheme is no longer relevant. However, the layer appearance can always be modified in the Layer Browser win-
dow.
As noted before, true curves are converted to polygons.

Using the GDS Translator


You can also use the Gds In translator to import a GDS file. To access this translator, select File > Translators > Gds
In. A new dialog window opens:

Figure D2-21 GDS In Translator Dialog Window

The procedure is nearly the same as for the Gds Out translator previously explained. Specify the input gds file and the
new target cat library to be created. Select overwrite if replacing a file with the same name.
You can also specify a template file, a scale factor, and convert the case of the names.

Using a Template File


The gdsin dialog allows you to specify a template file when opening a GDS file for conversion. The template file is
used to map GDS numbers to mask layer names and to assign layer colors and fills. Use the Browse button to navi-
gate to the template file. In the dialog that opens you can select a native layout file (.cat extension) or a Cadence
Technology file (.tech extension) as a template.

From Tools > Options > GDS Import, you can select the default template file filter (.cat or .tech).

For complete mapping, all the GDS layers must be specified in the Template file GDS column. Any layers not speci-
fied are retained with their GDS names and layer colors.

Coventor, Inc. March 23, 2010 D2-31


Section 2: Getting Started Version 2010

Once the file is translated, it can be opened directly because it is a valid .cat file.

Merging Layers
Layers can be merged during export by specifying the same GDS target layer for different Layout Editor layers.

2.6.7: Closing the Layout Editor


To close the Layout Editor, use any of these methods:
 select File > Exit from the menu bar
 enter exit in the Command Line
 press Ctrl + Q
The application prompts for saving cells and files if there are unsaved changes. The Function Manager remains open.

2.7: Build in 2-D... Think in 3-D


The Layout Editor has a function beyond that of a basic drawing tool. While the Layout Editor can create nearly any
type of polygon, arc, or shape, its main purpose is to build mask sets for foundry processing and to design 2-D tem-
plates used to make 3-D solid models. For this reason, the depth dimension that makes the final product three-dimen-
sional must always be considered while using the tool.
The depth is supplied by the parameters set in the Process Editor. The model uses a series of deposit and etch steps to
create a depth profile. A deposit is an addition of material to an entire wafer surface, with the deposition performed in
a number of different ways. The Layout Editor 2-D drawing layers provide the information that allows the Process
Editor to etch some of this material selectively. The procedure continues until the desired buildup and removal of
material is complete. The final product is either a completed physical wafer with different thicknesses through the
individual die or a simulated 3-D solid model that attempts to approximate the final chip.
Because of physical limitations and processing chemistry associated with wafer manufacturing, vendors provide
design rule guidance that limits the feature sizes and spacing tolerances at the 2-D level. Any Layout Editor design
must conform to these rules to ensure that the final wafer will function as required, work consistently after many parts
are manufactured, and work reliably under a variety of environmental conditions.
The Solid Modeler uses mask layers, light/dark fields, and photoresist polarity to construct the solid model. This sec-
tion explains how the Layout Editor and Process Editor outputs are integrated.

2.7.1: Masks and Mask Layers


A mask can be composed of multiple mask layers. Each mask layer is associated with an attribute called Layer Polar-
ity on Mask (set in the Layout Editor/LayerBrowser), which indicates how the mask layers construct the mask final
geometry. If the layer polarity is +, the mask layer positively contributes to the mask. If the layer polarity is -, the
mask negatively contributes to the mask. The combination of mask layers is NOT sequence sensitive. All the positive
mask layer components are combined together first, then the negative mask layers are subtracted.

D2-32 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-22 Creating a Mask with Multiple Layers

Mask layer combination Final Mask Geometry

M
Layer polarity is not taken into account when exporting in GDS format. All objects will be positive.

See page D2-13 for more details on layer settings.

2.7.2: Dark and Light Fields


The Layout Editor/LayerBrowser Dark/Light Mask Field indicates which areas are exposed to light to UV, and which
areas are not.
 If a light mask field value is specified, light or UV cannot go through the areas enclosed by the mask bound-
ary geometry, as shown in Figure D2-23a below.
 If a dark mask field is specified, light cannot go through the area outside the mask boundary geometry
enclosed area, as shown in Figure D2-23b below.

Figure D2-23 Dark and Light Mask Fields

a. Light Mask b. Dark Mask

2.7.3: Photoresist Polarity


The photoresist polarity, set in the Process Editor, indicates the protection mode under the mask:
 The positive photoresist polarity means the material under the opaque mask will be protected from etching,
and the material under the transparent mask will be etched.
 The negative photoresist polarity means the material under the opaque mask will be etched, and the comple-
ment area is protected from etching.

Coventor, Inc. March 23, 2010 D2-33


Section 2: Getting Started Version 2010

Positive Photoresist Polarity Negative Photoresist Polarity

See page U3-50 for more details on photoresist polarity.

2.7.4: Creating the Model Geometry


For the Solid Modeler, an etch either removes the material within the mask boundary to make a hole or removes the
material outside the mask boundary so that a shape remains. The Solid Modeler uses the mask light field value (or
Mask Polarity) and the photoresist polarity to determine what to etch and what to leave behind.
Table D2-2 summarizes the relationship between the dark\light fields, the photoresist polarity, and the resultant
geometry. The mask field value are indicated with boolean values: light (true +) and dark (false -). The result polarity
is the product of light field value and the photoresist polarity. If the mask is empty (has no geometry), the correspond-
ing behaviors are also listed in the following table:

Table D2-2 Determining the Geometry of the Solid Model


Empty Mask
Dark\Light Field Value Photoresist Polarity Result
Handling

Light (+) Positive (+) Material remains (removes outside Etching all (+)
mask boundary material, +)

Light (+) Negative (-) Makes a hole (removes inside mask Etching nothing (-)
boundary material, -)

Dark (-) Positive (+) Makes a hole (-) Etching nothing (-)

Dark (-) Negative (-) Material remains (+) Etching all (+)

2.7.5: Building and Viewing a 3-D Model


A Layout Editor file, MPD file, and process file can be used to build a 3-D solid model. The Preprocessor visual
interface allows detailed examination of the 3-D model.
To build the 3-D model using a 2-D layout and a process file:
1. Select the Designer tab from the Function Manager.
2. Select the desired process (proc) and MPD files. It is not necessary to use the same process file as that used
when the layout was created, but if the mask names in the process file do not match the layer names in the
layout, the model will not build correctly.
3. Select the desired layout file and designate a Top Cell; this is the cell that will be built. Figure D2-24 shows
the layout created in the Layout Editor before the 3-D build.

D2-34 March 23, 2010 Coventor, Inc.


Section 2: Getting Started Version 2010

Figure D2-24 2-D Layout of Optical Mirror

M
4. Set the Model/Mesh field to create a new model, and click the Start Preprocessor icon. Accept or change the
default model name.
5. The Preprocessor opens automatically after a successful build. If the build is not successful, an error message
will appear, and the reason for failure will appear in the log.

Figure D2-25 3-D Model of Optical Mirror

2.7.6: View an Existing 3-D Model


To open a model that has already been built:
1. On the Function Manager’s Designer tab, select the model or mesh using the Model/Mesh drop-down menu
or the Model/Mesh Browser icon.

2. Select the Start Preprocessor icon.

If the Preprocessor is already open, select File > Open from the Preprocessor menu bar, and select the model from the
dialog.
For a detailed functional description of the Preprocessor, see page D4-1.

Coventor, Inc. March 23, 2010 D2-35


Section 2: Getting Started Version 2010

Notes

D2-36 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Section 3: Layout Editor Reference

3.1: Introduction
This section provides complete reference material for all commands and functions of the Layout Editor, with cross-
references to other sections of the guide for illustrations and examples. The Layout Editor is accessed through the
Designer tab of the Function Manager. (For information on the Function Manager, see page D2-2).
There are several ways to perform most tasks with the Layout Editor, including icons, point-and-click mouse func-
tionality, the menu bar and drop-down menus, and Terminal Window commands. As a graphic tool, it is designed for
ease of use with a mouse, and all basic shapes can be created by pointing, clicking, and dragging on the toolbars or
within the drawing area. Some features can only be accessed through user interface dialogs. Most dialogs can be

M
opened by clicking on icons or making menu selections, but some are opened by entering keyboard commands in the
Command Line at the bottom of the drawing area.

3.2: Layout Editor Components


The Layout Editor comprises of a drawing area, a terminal window, icons, and menu selections. The drawing area and
its associated icons and menus are shown in Figure D3-1. The terminal window is discussed on page D3-18.

Figure D3-1 Drawing Area with Toolbars

Coventor, Inc. March 23, 2010 D3-1


Section 3: Layout Editor Reference Version 2010

3.2.1: Icons
The Layout Editor has vertical and horizontal rows of icons. This section describes each icon and points the user to
more detailed information where available.

Vertical Row

Icon Function Sub-function Description Reference

Select Select objects Click on object to select for edit or other function D3-97

Select by layer/ Opens a dialog that allows the user to filter selections based D3-97
name/type on layer, name, and/or object location

Select rectangular Draw rectangle around objects to select. Note that if the a D3-97
area vertex of any object falls within the rectangle, the object
will be selected.

Select outside Selects objects outside the drawn rectangle. Note that if the D3-97
rectangular area a vertex of any object falls within the rectangle, the object
will be not be selected.

Select circular area Draw circle around objects to select. Note that if the a D3-97
vertex of any object falls within the circle, the object will be
selected.

Select area options Opens a dialog for setting the criteria for circular or D3-98
rectangular selection

Unselect objects Unselect a single selected object D3-100

Unselect All Clear any selection of objects D3-100

Polygon Polygon Draw with polygon tool D3-77

Rectangle Rectangle Draw with rectangle tool; two points define rectangle D3-79

Path Flush endcap Draw with path tool; path line ends at vertex D3-74

Extended endcap Draw with path tool; path line extends beyond vertex

Rounded endcap Draw with path tool; path line is rounded at end

Rounded corners Draw with path tool; path corners are rounded

Circle Center and radius Draw with circle tool; define the center and radius D3-70

Three points Draw with circle tool; define three points to make circle

Torus Center, radius, Draw with torus tool; define center, radius, and area; arc D3-81
extent properties determine torus width

Three points Draw with torus tool; define three points to make torus

Pie Center, radius, Draw with pie tool; define center, radius, and area D3-76
extent

Three points Draw with pie tool; define three points to make pie

D3-2 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Icon Function Sub-function Description Reference

Chord Center, radius, Draw with chord tool; define center, radius, and area D3-69
extent

Three points Draw with chord tool; define three points to make chord

Text Text Opens dialog for defining text and attributes D3-83

Reference Reference Opens dialog for selecting another cell to place within the D2-12
active cell

Array Reference Opens dialog for selecting another cell to place as an XY D3-55
matrix array within the active cell

M
Top Horizontal Row

Icon Function Sub-function Description Reference

Cell browser Opens window for viewing list of current library cells; can D3-51
open/save library, copy and delete cells as well

New New File Opens new unnamed library D3-36

New Cell Opens new unnamed cell D3-52

Open Open File Opens navigation window for selecting existing library D3-38

Open Cell Opens Cell Browser for selecting existing cell

Save Save File Overwrites existing library D3-41

Save Cell Overwrites existing cell

Save File As... Saves library as new name

Save Cell As... Saves cell as new name

Print Prints drawing area display to configured printer; access D2-16


arrow next to Refresh icon to reverse background

Cut Cuts selected object from drawing area; stores on clipboard D3-113

Copy Copies selected object to clipboard

Paste Pastes from clipboard; coordinate used to select object


during copy is used as reference during paste

Undo Click on icon to undo one action D3-62

Undo multiple Click on arrow to undo more than one action


actions

Coventor, Inc. March 23, 2010 D3-3


Section 3: Layout Editor Reference Version 2010

Icon Function Sub-function Description Reference

Redo Click on icon to redo one action D3-62

Redo multiple Click on arrow to redo more than one action


actions

Turn Repeat Keeps a selected function active until another function is


Mode Off selected. For example, if you select the Rectangle icon, it
will stay active and you can draw multiple rectangles until
you select another icon. If you click this icon, it will turn
the functionality off, and the icon appears like this:

Turn Relative Allows the user to type in an X,Y value pair in commands
Mode On like copy, paste, move, moveedge, and
movewindow, and the pair will be interpreted as "relative"
rather than absolute. For example, normally the user clicks
with the mouse to specify the new location (and this still
works in Relative Mode), but the user can type 5 0 and the
object or edge will move 5 microns in the X direction.

Change coord Default angle functionality allows drawing angles at 45 or D3-77


input mode 90 degree angles. If you click on this icon, you activate the
from 45/90 to all-angle functionality, which allows angles of any value,
all angle and the icon changes to this:

Display Opens a window that displays the available mouse button


mouse button option for the active function. For example, if the selection
actions dialog function is active, this window displays actions available
with the left mouse button and Ctrl and Shift keys. Note that
this window is not editable.

D3-4 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Lower Horizontal Row

Icon Function Sub-function Description Reference

Layer Shortened form of Layer Browser; select current D2-16


browser drawing layer; set visibility/selectability

Layer Opens full Layer Browser; can create new layer, set D3-63
browser visibility/selectability, select layers for export

Refresh Refresh screen Redraws the drawing area display D3-30

Auto-refresh Set to toggle automatic redraw (on by default) D3-18

White Sets the drawing area background to white instead of

M
Background black

Click for Focus Use when multiple dialogs are open; sets the focus so
that the user must click in dialog to move to foreground
(default); otherwise mouse rollover brings dialog to
foreground.

Error Dialogs Feature may be enabled or disabled.

Warning Dialogs Feature may be enabled or disabled.

View All Adjusts zoom so entire drawing area contents are D2-13
displayed

Zoom in Magnifies display for closer view

Zoom out Reduces magnification to view more objects

Zoom Zoom Window Zooms in on area selected with mouse D3-34

Zoom to Grid Zooms until grid dots can be viewed

Zoom to Selected Zooms in so selected objects fill drawing area

Zoom to Next When you have selected a group of objects, this option D3-35
allows you to zoom to the next object in the list of
objects so that you are zooming in on just one selected
object at a time.

Zoom to Previous When you have selected a group of objects, this option D3-35
allows you to zoom to previously selected object.

Previous Previous view Restores last drawing area view D2-13


view
Pan to origin Adjusts display so origin is at center of drawing area D3-29

Create named Saves a view so it can be restored later D3-30


view...

Turn drag screen mode on Turns on the ability to move the entire screen; the user
can view different parts of a design by dragging the
drawing in the Canvas window. The keyboard arrow
keys can also be used to move the Canvas focus, and
the default amount by which the arrow keys move the
Canvas can be set in the runtime/catapult/
defaultbindings.tcl file.

Coventor, Inc. March 23, 2010 D3-5


Section 3: Layout Editor Reference Version 2010

Icon Function Sub-function Description Reference

Flip Flip Flips selected object about user-drawn axis D3-105

Flip horizontally Flips selected object in horizontal direction

Flip vertically Flips selected object in vertical direction

Mirror Mirror Creates a mirror image of a selected object about a user- D3-111
drawn axis

Mirror Left Creates a mirror image of a selected object about a


vertical axis to the left

Mirror Right Creates a mirror image of a selected object about a


vertical axis to the right

Mirror Up Creates a mirror image of a selected object about a


horizontal axis above the object

Mirror Down Creates a mirror image of a selected object about a


horizontal axis below the object

Rotate Rotate 90 Rotates object 90 degrees counterclockwise D3-104

Custom rotate... Rotates by specifying angle and origin

Nudge Moves selected object by one grid increment in D3-102


direction determined by mouse click

Snap Mode Snap Once Turns Snap mode on for one mouse click D3-84

Snap Mode Turns function on or off

Snap Cursor Snaps cursor to coordinates

Snap Browser Opens browser for selecting or unselecting snap points


for different types of objects

D3-6 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

3.2.2: Menu Commands


File

Function Sub-function Description Reference

New Blank... Opens new unnamed library D3-36

PolyMUMPS Opens new unnamed library that gives the user access to the D3-91
PolyMUMPS generators (from the Generators menu).

From Opens new unnamed library using layers and cells from a template D3-36
Template... library

M
Open... Opens navigation window to select new library D3-38

Close Closes existing library D3-42

Save Saves current library D3-41

Save As... Saves current library to new name

Copy... Copies specified source library to destination library D3-39

Delete... Opens navigation window to delete any existing library D3-40

Rename... Opens dialog to rename any existing file D3-40

Translators Gds In... Translates from GDSII to cat format with configuration options D3-46

Gds Out... Translates from cat to GDSII format with configuration options

Cif In... Translates from CIF to cat format with configuration options D3-42

Cif Out... Translates from cat to CIF format with configuration options

Iges Out... Translates from cat to IGES format with configuration options D3-49

Sat Out Translates from cat to SAT format with configuration options D3-50

DXF In Translates from DXF to cat format with configuration options D3-44

DXF Out Translates from cat to DXF format with configuration options

Properties Comments Opens dialog for entering text comments pertaining to file.

Print Opens dialog for printing the entire Layout Editor window or just the D2-16
Canvas; clicking on Apply opens another dialog with more print
options.

Exit Exits Layout Editor - save prompted if necessary D2-32

Coventor, Inc. March 23, 2010 D3-7


Section 3: Layout Editor Reference Version 2010

Edit

Function Sub-function Description Reference

Undo Undo a Layout Editor action D3-62

Redo Redo a Layout Editor action D3-62

Cut Cuts selected object from drawing area; stores on clipboard D3-113

Copy Copies selected object to clipboard D3-101

Paste Pastes from clipboard

Paste to Layer... Pastes objects on clipboard from various layers to one selected layer

Copy & Paste Combines Copy/Paste into one action; enter source/destination

Move Moves a selected object; requires reference point D3-102

Delete Deletes an object without placing on clipboard D3-113

Select Click on object for edit or other function D3-99

Select Area Draw rectangle around objects to select

Select All Selects all objects in drawing area

Select by layer/name/type Opens a dialog that allows the user to configure selection by layer,
name, or object type

Unselect Click to unselect a single selected object D3-100

Unselect All Clears selection for all objects in drawing area

Object types Properties... Opens Object browser window to set various visibility/selectability D3-87
attributes for different objects

Save Saves current Object browser settings with library

Restore Restores last saved Object browser settings to this library

Polygon Check next to entry means it is selectable

Path Check next to entry means it is selectable

Curve Check next to entry means it is selectable

Arc Check next to entry means it is selectable

Text Check next to entry means it is selectable

Reference Check next to entry means it is selectable

Array Reference Check next to entry means it is selectable

All Selectable Makes all object types selectable

None Selectable Makes all object types unselectable

D3-8 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Layers Browse... Opens Layer Browser for viewing and editing D3-63

Copy Opens a dialog for copying a layer D3-102

Edit... Opens dialog window to enter or change layer properties D3-66

Save Saves current Object browser settings with library

Restore Restores last saved Object browser settings to this library

All Selectable Makes all layers selectable

None Selectable Makes all layers unselectable

M
Edit In-Place Push One Level Moves down one level into hierarchy to edit D3-60; D5-22

Pop One Level Moves up one level towards top of hierarchy to edit

Push To Object Moves down as many levels as needed into a selected object

Pop To Top Moves up to top level of hierarchy

Save Saves edits to a cell down in hierarchy

View Current Fills screen with objects at current level of hierarchy

Redraw Current Redraws the current object selected for hierarchical editing

View Top Shifts view to all objects at the top level of hierarchy

Redraw Top Redraws all objects at the top level of hierarchy

View

Function Sub-function Description Reference

Redraw Redraws the drawing area display D3-30

All Adjusts view so all objects can be viewed on screen D3-34

Origin Pans (without zoom change) so origin is in center of the screen D3-29

Previous Sets display to the previous view D2-13

Create named view... Saves specific drawing area views of design D3-33

Zoom Window Zooms to view user-designated area D3-34

In Zooms in by a fixed magnification

Out Zooms out by a fixed reduction in size

Selected Zooms in to fit all selected objects on screen

To Grid Zooms until the grid is visible

Next Zooms to the

Previous

Coventor, Inc. March 23, 2010 D3-9


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Pan Center Pans view to center on selected point D3-29

Left Moves display viewing area to the left about 1/4 of screen

Right Moves display viewing area to the right about 1/4 of screen

Up Moves display viewing area up about 1/4 of screen

Down Moves display viewing area down about 1/4 of screen

Filter... Sets minimum feature size to view D3-20

Levels All Displays all levels of hierarchy D3-32

Top Only Displays only top level of hierarchy

Choose... Opens dialog for choosing levels of hierarchy to view

Save Saves view level properties with library

Restore Restores last saved view level properties to this library

0,1,2,3,4,5 Select with check mark one or more of these levels for viewing

Drag Depth Cursor Only Shows only the location of the cursor until objects are placed. D3-32

Top Level Only Shows cursor and objects in the top hierarchical level in outline
form.

Nested One Level Shows top level and next level of hierarchy

Nested Two Levels Shows top, second, and third levels of hierarchy

Nested All Levels Shows outline of all levels

Choose... Opens levelview dialog.

Object types Properties... Opens Object browser window to set various visibility/ D3-87
selectability attributes for different objects

Save Save a current Object browser settings with library

Restore Restore a last saved Object browser settings to this library

Polygon Check next to entry means it is visible

Path Check next to entry means it is visible

Curve Check next to entry means it is visible

Arc Check next to entry means it is visible

Text Check next to entry means it is visible

Reference Check next to entry means it is visible

Array Reference Check next to entry means it is visible

All Visible Makes all object types visible

None Visible Globally resets visibility for all types

D3-10 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Layers Browse... Opens Layer Browser for viewing and editing D3-63

Edit... Opens dialog to enter or change layer properties

Save Saves current Layer visibility/selectability settings with library

Restore Restores last saved Layer visibility/selectability settings to this


library

All Visible Makes all layers visible D3-100

None Visible Globally reset visibility for all layers

M
Cell

Function Sub-function Description Reference

New Opens a new unnamed cell D3-52

Open... Opens an existing cell using Layout Editor Cell Browser

Close Closes current cell

Save Overwrites current cell D3-61

Save As... Saves current cell to new name

Copy... Opens dialog to set source and destination cells for copy D3-53

Delete... Deletes an existing cell using Layout Editor Cell Browser D3-61

Rename... Opens dialog to rename any cell in the open library D3-54

Status Displays level, layer, and object selection status for cell D3-52

Summary Displays cell contents and extents information

Tree Displays hierarchical count of objects in cell D3-51

Flatten hierarchy... Removes hierarchy up to level specified D3-59

Insert hierarchy... Adds a new hierarchical name and level at selected object point D3-59

Object

Function Sub-function Description Reference

Info Displays coordinates, object type, layer information D3-62

Info (verbose) Displays more extensive information about selected object

Layer area... Calculates area of selected objects, or of all objects on a layer

Area Calculates the area of a selected object(s) D3-27

Length Calculates length of selected object(s) or connected objects D3-27

Polygon... Opens dialog for polygon settings; can also begin drawing D3-78

Coventor, Inc. March 23, 2010 D3-11


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Rectangle... Opens dialog for rectangle settings; can also begin drawing D3-79

Path... Opens dialog for path settings; can also begin drawing D3-75

Curve... Opens dialog for curve settings; can also begin drawing D3-72

Arc... Opens dialog for arc settings; can also begin drawing D3-67

Text... Opens dialog for typing text content and position D3-83

Reference... Opens dialog to specify another cell to be placed in current cell D3-55

Array Reference... Opens dialog to specify another cell to be repeated in XY matrix D3-55
and placed in current cell

Modify

Function Sub-function Description Reference


Object... Open dialogs to identify selected object type and to change D3-102
selected object layer, dimensions, or other parameters
Transform Rotate... Opens dialog to specify parameters for counterclockwise rotate D3-104
Magnify... Opens dialog to specify scale factor to magnify (or reduce) D3-111
Flip Opens dialog to flip object around specified axis D3-106
Flip Horizontally Flips object in horizontal direction within its own bounding box
Flip Vertically Flips object in vertical direction within its own bounding box
Mirror Makes mirrored copy of original about specified axis D3-106
Mirror Left Makes mirrored copy adjacent and left of original bounding box
Mirror Right Makes mirrored copy adjacent and right of original bounding box
Mirror Up Makes mirrored copy adjacent and above original bounding box
Mirror Down Makes mirrored copy adjacent and below original bounding box
Nudge Moves selected object or objects in increments equal to working D3-102
grid setting
Change Layer Moves selected object to a different layer D3-103
Change Width Changes width of selected object; only objects with width are
selectable
Remove Point Deletes selected point from an object. When you select Remove
Point, the Layout Editor prompts you to select an object. Any
points on that object will appear with circles around them. Left
clicking on that circle will delete that point.
Add/Delete Points Redefines points to a line segment to make an object smaller or D3-109
larger
Add Rect Draw new rectangle to be merged with selected object D3-106
Sub Rect Draw new rectangle; area is removed from selected object D3-107
Move Edge Moves one edge of a polygon; adjacent edges will stretch or
contract to preserve object integrity

D3-12 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference


Move Edges Moves more than one edge of a polygon; unselected edges will
move, stretch or contract to preserve object integrity
Move Point Moves a single vertex of selected object
Move Window Moves a portion of a polygon to a new location; unselected
adjacent sides will move, stretch or contract to preserve object
integrity
To Polygon Converts selected object to polygon
Fillet... Converts corners to curves D3-86
Boolean By Layer Performs Boolean operation on all objects on selected layers D3-111

M
And (Intersect) Performs Boolean AND on areas of two selected objects D3-109
Or (Union) Perform Boolean OR on areas of two selected objects
Xor Perform Boolean XOR on areas of two selected objects
Not Perform Boolean NOT on areas of two selected objects
Cut window Uses rectangle to cut each object into two or more objects D3-54
Oversize... Moves polygon edges out (or in) by a specified distance D3-112

Tools

Function Sub-function Description Reference

Angle User selects two points, and the Layout Editor reports the angle of D3-28
each point relative to the origin, along with the delta angle between
them

Ruler Draws ruler on screen to measure distance between points D3-28

Rulers Opens dialog that allows the user to set the ruler function for single D3-28
segment measurement, multi-point measurement, or common origin
measurement

Mark coord... Specify coordinates marked with asterisk used for reference D3-27

Net Names Mark net Highlights areas of the layout that have specific net name assigned D3-29

List net name User selects an object on the Canvas, and its net name is displayed in
the Terminal

Set net name Opens a dialog for assigning a net name to a selected object

Coventor, Inc. March 23, 2010 D3-13


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Layout Checks Check layout Opens dialog that allows the user to verify that the 2-D layout D3-92
conforms to a foundry’s design specifications

Batch Rule Allows the user to run a series of design checks, as opposed to using D3-96
Checks the Check Layout function, which only allows the user to verify one
design rule at a time.

Single Step pauses between each check function for debugging and
reporting errors on the executed check

Run Checks opens a file browser for selecting the file that contains
the check commands

Delete Error Layers deletes the error layers created during a batch
rule check

Check self-intersection Checks selected object for self-intersection (will not build)

GDS Extractor Extracts zones for large GDS files so that the user can open a portion D2-21
of a layout and use that portion to build a solid model

Setup Wizard Opens a dialog that allows the user to create an outline file that is D2-21
used to create the zones

Quick Setup Opens a dialog that allows a user who is familiar with a GDS file to D2-21
quickly create zones

Query Cells & Generates a list of top cells, reference cells, and GDS layers in the D2-21
Layers specified file

GDS Merge Merges specified GDS files into one GDS file D2-19

Units Sets the dimensional units for the layout. The options are Microns,
Nanometers, or Angstroms. The default is Microns, but this default
can be changed using the Options > Default Units.

Repair Tools Fix extents in Cell extents are saved with a cell so that when a cell is opened, it fits
this cell to screen. If this option is invoked, the cell extents are recalculated.
This option may be necessary if the cell content is zoomed in or
zoomed out too far.

Fix extents in all Recalculates the cell extents for all the cells in library; see above.
cells

Report Searches the active cell for duplicate objects; the results are reported
duplicates in all in the Layout Editor Terminal window.
cells

Select Searches all the cells in an active library for duplicate objects; the
duplicates in all results are reported in the Layout Editor Terminal window.
cells

Convert DXF Converts connecting line segments into a polygon


lines to closed
shapes

D3-14 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Customize Windows Specifies location/size of drawing area window; set other working D3-19
preferences

Menubar... Adds or removes menu items D3-24

Toolbars... Adds or removes toolbar items D3-22

Key & Mouse Specify shortcuts using keyboard commands or mouse button D3-25
Button bindings actions

Mouse Motion Binds mouse strokes to specific commands D3-26


bindings

M
Load bindings Allows the user to select key binding command sets other than the D6-45
default, including Virtuoso and L-Edit

Coventor, Inc. March 23, 2010 D3-15


Section 3: Layout Editor Reference Version 2010

Function Sub-function Description Reference

Options Grid Opens window to specify grid snap and visible grid dot dimensions D3-21

Curve Flatness Sets tolerance when converting true curves to polygon D3-86
approximations

Selection search Opens a dialog for setting the selection tolerance. If the selection
distance cursor is within the specified pixel distance to an object, that object
will be selected. If the selection cursor is beyond the specified pixel
distance, the nearest object will not be selected, and any selected
object will be unselected.

Default Units Sets the default dimensional units for the layout

Default File Sets the Files of Type filter in the Open and Save dialogs. The
Filter options include cat, gds, dxf, and cif. Note that this can also be set
from the Default Cell to Open dialog; changing the setting from one
place automatically updates it in the other.

Default cell to Allows the user to specify or select a cell name to be opened by
open default in any file that contains a cell by that name. The user can also
set the default file filter from this dialog.

GDS Export All Exports all cells in the layout file to a GDS file. If not turned on, only
Cells the open cell and the cells used by the open cell will be exported, and
all other cells will be lost. This option is turned on by default.

GDS Import Sets the default behavior for opening GDS files. If Prompt for D2-31
template file is checked, opening a GDS file also opens a dialog for
selecting a template. Open after import opens the GDS after
importing without the user having to navigate to it. Default template
file filter sets the default GDS file type in the file navigation dialogs;
the options are Coventor Layout File (.cat), Cadence Technology
File (.tech), and Layer Mapping File(.txt)

GDS Size Limit Sets the default GDS size in MB that will trigger a warning to users
that they may want to use the GDS Extractor tool, rather than try to
open a very large layout.

Highlight Color Sets the color for the selected objects on the Layout Editor canvas

Auto Save Opens window to specify how often open cells and libraries will be D3-41
automatically saved. Default is 0 (off); value set is in minutes.

Keep Rulers Allows ruler marks to be kept when the screen is redrawn

Keep Coord Allows coordinate marks to be kept when the screen is redrawn
Marks

Path length Displays the total length of a path as its points are selected D3-74
tooltip

Save image to file Allows the user to save the canvas image to a graphics file. Options
include .gif, .png, and .jpg.

D3-16 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Generators

Function Sub-function Description Reference

New... Creates a new Tcl (Tool Command Language) generator using D5-35
dialog window and script commands

Regenerate... Recompiles modified Tcl script D5-38

MEMS Generator name Choose from list of thirty-five electromechanical generators D3-91

PolyMUMPS Active, Passive, Choose from several types of MEMSCAP PolyMUMPS D3-91
Test generators from each submenu. The generators are not active
unless the user has selected File > New > PolyMUMPS. For more
information on this foundry design kit, see page U4-15 of Using

M
CoventorWare.

Fluidics 14 generators Choose from list of fourteen fluidics generators D3-91

General Text... Generate text object; user can browse to select font, style, and size D3-91

Custom Load Opens a dialog so users can browse and select any custom D3-91
generator they may have.

Window

Function Description Reference

New Cell Buffer Opens a new cell without closing the current one D3-53

Cell Name (s) Lists currently open cells

Help

Function Description

Command List Opens a Help window that can be used to list and invoke Layout Editor commands and to access the
Layout Editor documentation

Reference Opens the online help to provide reference material for the Layout Editor

Quick Menu and Opens the online help to provide a description of menu and icon functions
Icon Reference

Keyboard Opens the online help to provide a guide to keyboard shortcuts


Shortcuts

Workspace Opens the online help to provide a guide to customizing the Layout Editor canvas, the menu bar, and
Customization the icon display

About Layout Lists version information for installed version of the Layout Editor
Editor

Coventor, Inc. March 23, 2010 D3-17


Section 3: Layout Editor Reference Version 2010

3.2.3: Terminal Window


To open the Terminal Window, click on the small square to the left of the Command Line:

click here

Commands can be entered in the lower frame of this window. A redundant Command Line appears at the bottom of
the drawing area so Command Line functionality is still available even when the Terminal Window is minimized. The
top frame of the Terminal Window displays a history of commands, processes, summary, error messages, and hierar-
chy information, when commanded, until the buffer limit is exceeded. The command history is also preserved in the
catcmds.log file. Terminal window activity is recorded in the catapult.log file. Both the catcmds.log and catapult.log
files are located in the user’s current work directory (see page 2-16 of the Installation Instructions).
Usage descriptions for any Terminal Window command can be obtained by entering the command followed by the
argument -usage in the Command Line. This information is also provided in the Appendix, starting on page D6-1.
Dialogs are also easily opened at the Command Line. Names of dialogs are listed in the Appendix (see “Layout Edi-
tor Command Syntax” on page D6-1 and have fairly intuitive names. By entering (function name) -ui on in
the Command line, a dialog will open. The help icon in the dialog links directly to context-sensitive help.

3.3: Workspace Management


Workspace management includes explanations of the customizing, viewing, and object measuring features of the
drawing tool.

3.3.1: Customizing the Workspace


The Layout Editor includes several customizable features, including color control, grid and data precision settings,
menu options, user-defined commands, which allow the user to configure the workspace for ease of use and increased
efficiency.

Terminal Window and Drawing Area Basic Settings


Clicking on the arrow to the right of the Refresh Screen toolbar icon opens a six-option menu. The Refresh Screen
option removes coordinate markings and ruler marks (unless Keep option is turned on), as well as any artifacts that
may remain from changes on the canvas. The Auto-refresh feature automatically redraws the screen whenever any
attribute for any object in the open cell is changed.
The canvas background color is black by default. If White Background is selected, the drawing area background
changes to white, and the grid color changes to black. When Click for Focus is selected, a mouse click in any open
window will activate that window. When unchecked, the presence of the mouse cursor in the window activates the
window. Errors and warnings appear in the Terminal Window, but if the Error Dialogs and Warning Dialogs options
are checked, they will also appear as pop-ups in the Layout Editor.

D3-18 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Window Dialog
The Window dialog (see Figure D3-2) opens when Tools > Customize > Windows is selected from the menu bar. It
can also be displayed by entering window -ui on at the Command Line.

Figure D3-2 Window Dialog

M
 Window
Select terminal or canvas. The term canvas denotes the drawing area window. This action displays the attributes
of the window selected.

 Position
This is the location of the upper-left corner of the window selected. The point is identified as pixels to the right
and down from the upper-left corner of the monitor display area.

 Size
Width and height of selected window in pixels.

 Terminal size
Height of the input field of the Terminal Window, in pixels. The position, size, and Terminal size values can be
edited, though it is obviously easier to change these dimensions using the mouse.

 Key bindings
Selecting True makes the key binding commands operational.

 Visible
Selecting True makes window selected visible. Selecting False minimizes window to toolbar and closes the dia-
log.

 Watermark
Shows or hides watermark on lower left drawing area window. The watermark cannot be replaced or modified.

 White Background
Select True to make the canvas color white. Grid color will change to black when the white background is
selected. Select False (default setting) for white grid and black background.

 Click for Focus


When True (the default setting), this feature requires a mouse click in any open window to make that window the

Coventor, Inc. March 23, 2010 D3-19


Section 3: Layout Editor Reference Version 2010

active window. When False, the presence of the mouse cursor in the window will bring that window to the top
and activate it.

 Error and Warning Dialogs


Each can be disabled by selecting False.

 Browsers on top
Specifies if browser windows should always be forced on top of the canvas window (True) or be allowed to go
behind (False).

 Dialogs on top
Specifies if dialogs should always be forced on top of the canvas (True) or be allowed to go behind (False).

Changing Drawing Area Color from the Command Line


To change the drawing area background to white, enter window canvas -white true
To change the drawing area background to a color other than black or white, enter window canvas -bg (color)
providing the name of any color in the color palette.
To change the color of the grid markings, enter window canvas -fg (color) with the name of any contrasting
color from the palette.

View Filter
This feature allows filtering of objects below the threshold selected by the user. Use of filtering increases Refresh/
Redraw speed. Filtered objects remain in the drawing and are included when the model is built, but are not displayed.
Filtering is done by setting a minimum pixel size, which may be any positive whole number. This threshold is set to 0
by default. To set another value:
select View > Filter from the menu bar, or
enter viewfilter -ui on at the Command Line.
This command opens the Filter dialog:

Be aware that if this value is increased, small objects below the pixel size specified will not be drawn. The filtered
objects may be seen by using the Zoom In function. Set Allow filtered objects to be selected to True to select any filter
objects.

D3-20 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Grid Settings
The grid settings determine the default grid and a snapping action that occurs at each drawn vertex.
To open the dialog for setting the grid, from the menu bar select Tools > Options > Grid.

The Working Grid value is the increment by which the cursor moves from any point to an adjacent point within the
drawing area, usually set to the minimum design rule spacing or width (feature size) required by a foundry. The

M
Working Grid default is 0.5 units, which allows the user to view the grid and still see a reasonable amount of design
area on the canvas. It may be defined by one or two positive numbers greater than or equal to the smallest possible
coordinate value. If only one number is entered, it is applied equally in the X and Y directions. If two numbers are
entered (separated by a comma), the first number is applied in the X direction, and the second number is defined in
the Y direction. This value is also the increment by which objects are moved when using the Nudge feature (see
“Move an Object” on page D3-102). The smallest possible coordinate value is determined by the degree of data pre-
cision selected for the library.
The Display Grid multiple is the number of working grid increments between grid markings in the drawing area. The
Display Grid multiple default is set at 2. This value does not mean 2 units. It means the displayed white dots that the
user sees are two times farther apart than the snap spacing set by the Working Grid. This value may be any whole
number greater than or equal to 1, although the default of 2 is recommended for most designs.
The Draw grid option allows the user to turn off the white dot display. It is True (on) by default.

The Layout Editor uses dimensionless units for measurement. This allows scaling of the completed drawing to
microns, millimeters, or any other unit compatible with foundry design rules.

Additional Command Line Functionality


To draw (or not draw) the grid, enter grid -draw on (or off)

Coventor, Inc. March 23, 2010 D3-21


Section 3: Layout Editor Reference Version 2010

Changing the Degree of Data Precision


The system defaults to a precision of three decimal places, but this value may be set to any value less than 10. To
change the degree of precision, enter precision x in the Command Line, where X is the number of decimal
places of precision desired; i.e. a precision value of 4 means coordinate values may be as small as 0.0001.
To determine the current precision setting, enter precision in the Command Line.

Adding or Removing Toolbar Buttons


Opening the Toolbar Dialog
From the menu bar, select Tools > Customize > Toolbar or use the Command Line to enter toolbar -ui on

Figure D3-3 Toolbar Dialog

To Add a Button

 Window
Choose canvas or terminal for the location of the new button.

 Canvas Toolbar Index


(1) is the top row of icons, (2) is the second row, (3) is the vertical row of icons on the left side of the drawing
area, and (4) is the row below the second row, which is created with this function.

 Button Index
This is activated when Remove is selected. Buttons are indexed from left to right, or top to bottom for the vertical
row.

 Button Type
This is activated when Add is selected.

 Text/Image Tip Command


The name of this field is determined by the button type selected. For spacers, this field is inactive. For text but-
tons, enter three text groups separated by spaces. The first text group will appear as the label on the button; the
second will display during mouse roll-over; and the third is the command executed when the button is selected. If
the command has spaces, create a sequence without spaces and use the key binding function to bind that
sequence to the command. For image options, provide the path to the image to be used. Image may be icon (ico
format) or Graphics Interchange (gif format). Note that when entering the path to the image, use forward slashes

D3-22 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

( / ), not back slashes.

 Force button size


If True is selected, the Button Width and Height field is activated.

 Spacer/Button Width and Height


Enter the dimensions in pixels.

 Remove or Add?
Select Add.
There is no system limit to the number of buttons that may be added to the toolbar; however, buttons added that
exceed the capacity of the row will be added behind previously created buttons on that row and will, therefore, be
inaccessible. Resize the drawing area if additional space is needed.

M
To Remove a Button
Select canvas. Provide the index (1-4) and number of the button to be removed. With the Remove radio button
selected, click on Apply. Any buttons removed that are not customizations will re-appear when the application is re-
started.
Click on Close to close the dialog.

Coventor, Inc. March 23, 2010 D3-23


Section 3: Layout Editor Reference Version 2010

Adding Menubar Functions


This feature allows the user to add customized features to various window menu bars.

Opening the Menubar Dialog


From the menubar, select Tools > Customize > Menubar, or use the Command Line to enter menubar -ui on.

Figure D3-4 Menubar Dialog

 Window
Select either Canvas or Terminal for location of new control.

 Button Type
Push text adds a menu option. Spacer adds a separator line to the menu. Toggles are used for yes/no or on/off
options.

 Menu(s) Label Command


The user must enter at least three text groups, separated by spaces. First group will appear on the menubar, sec-
ond will appear in a drop-down that will open when the function is selected, and the last text group will be read
as a command syntax for the action to be performed when the item is selected. If the syntax has spaces in it, cre-
ate a short command and keybind it to the syntax, then use the short command in place of the command syntax.

 Mnemonic
A mnemonic is a letter in the menu bar command that appears underlined and executes the command if typed
when the Alt key is pressed. The letter selected must not have already been selected as a mnemonic on the same
sub-menu.

 Remove or Add?
Select appropriate option.
Click on Apply to add the function and on Close to cancel without making changes or to close the dialog.

D3-24 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Creating Customized Terminal Window Commands


The keybinding feature is used to create shortcuts for use with the Command Line.

Opening the Bindkey Dialog


Either of the following will open the dialog:
select Tools> Customize > Key & Mouse Button binding from the menu bar, or
enter bindkey -ui on at the Command Line

M
 Save key bindings
This adds the keybinding customizations to the catapultrc file in the user’s profile. The bindings will then be
available whenever the application runs.

 List key bindings


Clicking on List will generate a list of all active keybinding commands; the list will be displayed in the terminal
window.

 Key sequence type


The user has the option of defining the keyboard/mouse button sequence as an alias or a hotkey. If it is an alias,
the user types the sequence and then presses the Enter key to execute it. If it is a hotkey, the user types the
sequence, and it is executed without pressing the Enter key.

 Key sequence
Enter the keystrokes or mouse button clicks that will be used to call the command. If Hotkey is selected, pressing
a mouse button in the Key sequence field will display the name without having to type it; i.e., if the focus is in
this field and you click the left mouse button, it displays Button1. The key bindings defined in this dialog are dis-
played in the Mouse Button Actions dialog, available from the top-level icon .

 Description
This field becomes active when the Key sequence field contains a button definition. It defines the description to
be included in the Mouse Button Actions dialog (see page D3-4).

 Command
Enter the terminal command syntax being replaced.
Click on Apply to create the command, and on Close to close the dialog.

Creating BindKey Commands from the Command Line


Enter bindkey (sequence) ("command")
The sequence must not have spaces, and the command must be enclosed in quotation marks. Thereafter, whenever the
sequence is entered in the Command Line, the command will be executed.

Coventor, Inc. March 23, 2010 D3-25


Section 3: Layout Editor Reference Version 2010

To bind more than one layout command to a bindkey, use a semicolon to separate the commands, e.g.
bindkey key_name "command1; command2; command3"

Saving Bindkey Commands


Note that the user will not be prompted to save key bindings. If key bindings are not saved, they are lost when the
application is closed and will have to be re-entered each time the application is started. To save key binding shortcuts,
enter bindkey -save at any time before closing the application.

Motion Binding
Motion binding is an option for binding selected mouse movements to selected commands. To open the dialog:
select Tools > Customize > Mouse Motion Binding from the menu bar, or
enter bindmotion -ui on at the Command Line.

The eight basic strokes are defined by directions on the numerical keypad on the keyboard. The direction of move-
ment from the 5 key to each adjacent numeral is defined by that numeral.

 Apply
Click on this button to bind the commands entered into the fields to the mouse motion. Use this function to create
several motion binding commands without closing the window.

 Save motion bindings


Saves the motion bindings entered in the fields in the catapultrc file so that the next time the Layout Editor is
started, the created bindings will be loaded automatically.

 List motion bindings


Click to view all motion bindings assigned. List appears in the Terminal Window.

 Minimum motion limit


Mouse movement must equal or exceed this number of pixels to be read as part of a bindmotion command. Min-
imum value is 10 pixels.

 Motion Code
All digits except 0 and 5 may be used.

 Command
Enter the command or command string. These may be obtained from the Appendix, or by observing the com-
mand syntax in the Terminal Window when the command is executed by other means.

Example
Enter 26 as a Motion code, and layerbrowser as a Command. Apply the binding. On the Layout Editor canvas, draw
a capital L with the left mouse button depressed. Each stroke must be at least 30 pixels. The layerbrowser will dis-
play.

D3-26 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Explanation: On the numerical keypad, the direction from 5 to 2 is a vertical downstroke, and the direction from 5 to
6 is a horizontal stroke to the right. Hence, the sequence 26 represents a vertical downstroke followed by a horizontal
stroke to the right, which is the letter L.
To execute a command, perform the strokes of the motion code with the left mouse button depressed. To remove a
motion binding, enter the Motion code in the bindmotion dialog, and click on Apply with no Command assigned.

3.3.2: Functions
Marking Coordinates
A coordinate in the drawing area can be temporarily marked using this feature.

Opening the MarkCoord Dialog

M
From the menu bar, select Tools > Mark coord or use the Command Line to enter markcoord -ui on.

Enter the coordinates of the point to be marked in the Point field or use the Select button. Click on Apply to place the
mark.

 Mark size
This setting determines the size of the mark display.

 Keep Marks
By default marks disappear when the view is changed by either panning or zooming, or when the screen is
redrawn. If this setting is changed to True, the marks will be kept even after the screen view is changed.

Additional Command Line Functionality


Points can be marked without opening the dialog. To do so, enter markcoord x y to mark the drawing area.

Calculating Dimensions
The Layout Editor can report the area or length of an object.

Area
This function calculates the area of selected objects, or all objects on a selected layer. Select Object > Area from the
menu bar, then select an object. The results appear in the Terminal Window.
For layer measurements, enter area -ui on in the Command Line to open the Area dialog. Activate the By Layer
option by checking the box, then select the desired layer. Clicking on Apply displays the area measurement in the
Terminal Window.

Length
To determine the length of an object, such as a path consisting of several non-linear segments, select Object > Length
from the menu bar, then click on the object. The length of the object will be displayed in the Terminal Window.

Coventor, Inc. March 23, 2010 D3-27


Section 3: Layout Editor Reference Version 2010

Measuring Objects
The Layout Editor has three menu bar Tools options for measuring objects: Angle, Ruler, and Rulers. Each option is
described below.

Angle
To measure the angle between points, select Tools > Angle, or use the Command Line to enter angle. Enter two
points as prompted, and the Layout Editor Terminal window will display the angle of each point relative to the origin
and the delta angle between the two points.
To open the Angle dialog, enter angle -ui on. Then enter the coordinates of the two points (the two sets of coor-
dinates should be separated by a space), or click on the Select button and then use the mouse to click on the desired
coordinates.

Ruler
To measure dimensions on the drawing, select Tools > Ruler, or use the Command Line to enter ruler. Enter the
points as prompted, using either the keyboard or mouse.
The Tools > Rulers option allows the user to set the ruler behavior, as described below. The dialog can also be opened
by entering ruler -ui on at the Command Line.

 Keep Rulers
The Keep Rulers option allows the ruler measurements to be displayed even if the screen is redrawn.

 Ruler type
 Single Segment: This setting is the default setting and functions the same as the Ruler option. The user selects
two points, and the Layout Editor displays a ruler between those points.
 Multi-segment: With the multi-point ruler, the user can select several points in succession, and the Layout
Editor will display a ruler from every point to the next point, and the Terminal window will display a sum of
of the distances between the successive points.
 Common Origin: The first point sets the origin, and every point after that draws a ruler from the first point to
that point.

 Coordinates
Enter the coordinates in the field, or click on Select to use the mouse.

 Apply
Click on this button so that the Layout Editor will calculate and display the distance between the two points
selected.

 Close
Click on this button to cancel or to close the dialog.
The measurements are erased when the view is changed by either panning or zooming, or when the drawing area is
redrawn. However, the information is retained in the Terminal window.

D3-28 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Creating and Managing Net Names


The Tools menu has a Net Names option that allows the user to identify nets that were imported from a GDS file or to
create nets. In IC design, nets are used to show electrical connectivity. Designers often want to see an entire net so
that they can see the path of a given signal. The Net Names option has three sub-menus that help the user identify and
create nets in a layout: Mark net, List net name, and Set net name.

Mark net
This option allows the user to identify all the nets in the layout with the same name. When this option is selected, a
dialog opens in which the user enters a net name. All the objects in the layout with that net name are then highlighted.

List net name


This option displays the name of a selected net in the Layout Editor Terminal window. The user first selects the

M
option, then clicks on the object in the Layout Editor canvas.

Set net name


This option allows the user to assign net names to Layout Editor objects. First select the object in the canvas, and then
select the Set net name option. Then enter the desired name in the dialog, and click on Apply.

Pan
Panning may be done horizontally or vertically by increments, or may be done to center on any point in the drawing
area.

To Pan to a View Centered on a Pre-selected Point


From the menu bar, select View > Pan > Center or use the Command Line to enter viewcenter.
The tool will prompt for the coordinates of a point. When the coordinates are provided, the drawing area view will
pan to center on the point.

To Pan to a View Centered on Point 0,0


From the menu bar, select View > Origin or use the Command Line to enter viewcenter 0 0.
Pans to view with (0, 0) at center of drawing area. Any coordinates may be entered to center the view on that point.
There is also a Pan to origin option under the Previous View icon.

Opening the ViewMove Dialog


Enter viewmove -ui on to open the dialog. The Screen Percentages field accepts two values separated by a
space. The first value determines horizontal panning. Negative numbers pan left and positive numbers right, in incre-
ments equal to the width of the visible part of the drawing area. The second value controls the vertical panning, with
positive values panning up and negative panning down. Clicking on Apply completes the action.

Coventor, Inc. March 23, 2010 D3-29


Section 3: Layout Editor Reference Version 2010

Redraw
To redraw the screen:
 select the Refresh Screen icon or
 press Ctrl + R on the keyboard, or
 select either View > Redraw or Edit > Edit In-Place > Redraw Current from the menu bar, or
 enter redraw at the Command Line.

Artifacts from removed or modified objects, ruler marks, and any marked coordinates will be removed. Ruler marks
and marked coordinates can be retained if the Keep option is set to True in their respective dialogs.
To set redraw parameters through the dialog, enter redraw -ui on. The Redraw dialog has these settings:

 Auto Redraw
Select True to activate. The screen will be redrawn each time any attribute for any object in the open cell is
changed.

 Backing Store
This feature redraws the drawing area when it is uncovered by closing or moving another window. If the drawing
area window is reopened after being minimized, the drawing will be redrawn automatically if this attribute is set
to True. If False, select the Redraw icon to refresh the display.

Repeat Mode
Repeat Mode is a step-saving feature that allows repeated action without repeating the initiating command. This func-
tion may be activated by selecting the Repeat icon:
or by entering repeatmode -set true at the Command Line. The icon appearance will change to indicate that
Repeat Mode is enabled.
Any command subsequently called from a toolbar icon, menubar, or at the Command Line will repeat until a right-
click is performed, the Stop icon is clicked, the Esc key is pressed, or Repeat Mode is turned off. The right-click or
Escape actions will end the command sequence, but will not turn the Repeat Mode off.
Select the icon again or enter repeatmode -set false to turn the function off.
The same functionality is available in a radio button format through the Repeat Mode dialog. To open the dialog,
enter repeatmode -ui on at the Command Line.

Views
The Layout Editor allows the saving and restoring of different display views of the objects that appear in the drawing
area. Users can choose to view specific sections of the design at a selected magnification, or to store a set of views
covering the complete design hierarchy.
Figure D3-5 illustrates the mapping of a large design (the DNA sequencer that is built in the tutorial beginning on
page M2-1) into three views:

1. From the lower horizontal icon row, click on the arrow next to Previous view icon.
2. From the pull-down menu, select Create named view. A dialog window opens, as shown in Figure D3-5.
3. Click on the Zoom window icon.
4. In the viewset dialog, click on Select, then draw a box around the upper right quadrant of the design, as
shown.
5. In the dialog window, enter NE (for NorthEast view) in the Name field. Click on Apply. Click on the View All
icon to view the entire design.

D3-30 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

6. Repeat for the top of the design, using a Zoom box that encloses four of the injectors. Designate this view
TOP.
7. For the third view, enclose one injector and call this view INJECTOR.
8. From the lower horizontal icon row, click again on the arrow next to Previous view to view the names of the
three views.
9. Click on each name in succession to view what you have saved.
10. When finished, click on the View All icon to view the entire design.
11. In the viewname dialog window, make sure all the fields are blank.
12. In order to view the entire design with each view labeled, as shown at the bottom right of Figure D3-5, you
must first open the viewmark dialog. To do so, enter viewmark -ui on at the Command Line. A dialog
as shown in the top right of Figure D3-5 will appear.

M
13. In the View field, enter * (to designate that all views are to be marked), then click on Apply, then on Close.
The extents of the three views will display. Figure D3-5 shows the drop-down menu of all views that will be
selected by entering * in that field.
The stored views are saved when the cell and file (library) are saved.

Figure D3-5 View Mapping

Note that the views are cell specific. You cannot select a saved view from a different cell in the same library. You can
use the dialog window to delete any views that are no longer needed. You can also use the dialog window to specify a
pair of XY coordinates to define an area for a saved view.

Coventor, Inc. March 23, 2010 D3-31


Section 3: Layout Editor Reference Version 2010

View Levels
To turn on the levelview feature, either
select View > Levels > All from the menu bar, or
enter levelview -on at the Command Line.
If the view level is set at zero, only the top levels will be visible. Either of the following options will do this:
select View > Levels > Top Only from the menu bar, or
enter levelview 0 at the Command Line.
To set and change view levels from the menu bar:
select View > Levels > and select any level number, or
at the Command Line enter levelview # -view true to select a level,
or levelview # -view false to unselect a level.
To save the settings:
select View > Levels > Save from the menu bar, or
enter levelview -save at the Command Line.
To restore the most recently saved level view settings:
select View > Levels > Restore from the menu bar, or
enter levelview -restore at the Command Line.
These functions can also be done through a dialog that can be opened by selecting View > Levels > Choose or by
entering levelview -ui on at the Command Line.

 Save settings
Select to replace settings in the library with new settings.

 Restore settings
Select to restore the settings that were in effect when the library was last saved.

 Drag Depth
This is a parameter for determining the amount of detail shown when moving objects or placing referenced
objects. A value of 0 shows no detail, and any value greater than or equal to the hierarchy depth will show maxi-
mum detail. System defaults to 3. For illustrations, see “Drag Depth” on page D5-21.

 Level list
Select the numbers of the hierarchal levels to be viewed. If more than one, separate numbers by spaces.
To view all objects in the open cell at the largest scale that will accommodate them, select either View > All or Edit >
Edit In-Place > View Current from the menu, or enter viewfit at the Command Line. The tool will zoom and pan
to center all objects and display them as large as possible.

D3-32 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Managing Views
Views can be saved and named through the viewname dialog (Figure D3-6). To open this dialog, perform either of the
following steps:
From the menu bar, select View > Create named view or
Use the Command Line to enter viewname -ui on

Figure D3-6 Viewname Dialog

M
 View to save
Enter coordinates or click in the Canvas to select the coordinates that will form the viewing box. The portion of
the drawing area within the coordinates will be displayed when Apply is clicked.

 Name
Use this field to name the view. When the view is saved, this name will appear in the Previous View drop-down
menu.
To only create a view without saving it, use the Command Line to enter viewset -ui on. The dialog shown
below opens:

Figure D3-7 Viewset Dialog

 Set view to box


Enter coordinates to form a box. The portion of the drawing area within the coordinates will be displayed when
Apply is clicked.

Coventor, Inc. March 23, 2010 D3-33


Section 3: Layout Editor Reference Version 2010

Viewlast Command
To return to the previous view:
select View > Previous from the menu bar, or
enter viewlast at the Command Line.
The previous view will be displayed in the drawing area. This function does not access a history of views; it only
reverts to the previous view. The view that is current will become the previous view when this option is selected.

Zoom
Zoom to locations, objects, or any selected scale.

Zooming to View All Objects


To view all objects in the open cell at the largest scale that will accommodate them:
select the View All icon from the toolbar, or

from the menu bar, select either View > All or Edit > Edit In-Place > View Current, or
enter viewfit at the Command Line
The tool will zoom and pan to center all objects on screen, then redraw the screen to display cell contents as large as
possible.

Zooming to the Grid


In the drawing area there is a grid visibility threshold beyond which the tool will not draw the grid because the den-
sity of the grid markings would make the drawing difficult or impossible to read. This threshold varies, depending on
the Grid Multiple selected in the grid dialog. When the distance between grid markings is less than 12 pixels, the grid
will not be drawn. For information on changing the Grid Multiple, see “Grid Settings” on page D3-21. To zoom to the
grid, do one of the following:
On the toolbar, select Zoom To Grid from the options on the drop-down menu beneath the Zoom icon, or

From the menu bar, select View > Zoom > To Grid or
Use the Command Line to enter viewgrid
The view will zoom to the grid visibility threshold.

Zooming to a Pre-selected Area


From the menu bar, select View > Zoom Window or use the Command Line to enter viewzoom -box. The Layout
Editor will prompt for two points that define a rectangle. Upon entry of the second point, the area enclosed by the
rectangle will expand to fill the drawing area.

Zooming to Pre-selected Objects


Select the object or objects to be viewed, then either select View > Zoom > Selected from the menu bar, or use the
Command Line to enter viewfit -select. The editor will zoom and pan to maximize the view of the object(s)
selected. If there are no objects selected, the message Select list is empty will appear in the Terminal Win-
dow.

D3-34 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Zooming to a Group of Objects


If you select a group of objects (like after running a layout check select all of the error objects, which are usually very
small), you can zoom in to each object individually by using the View > Zoom > Next or View > Zoom > Previous.

Zooming In by Pre-selected Factors


To zoom in by a pre-selected factor, do one of the following:

On the toolbar, select the Zoom in icon or


From the menu bar, select View > Zoom > In or
Use the Command Line to enter viewzoom +2
The center 25% of the display will expand to fill the drawing area.

M
Zooming Out by Pre-selected Factors
To zoom out by a pre-selected factor, do one of the following:

On the toolbar, select the Zoom out icon or


From the menu bar, select View > Zoom > Out or
Use the Command Line to enter viewzoom -2
The view will recede to display four times the area.

Opening the Viewzoom Dialog


Use the Command Line to enter viewzoom -ui on. The dialog shown below opens:

Figure D3-8 Viewzoom Dialog

 Zoom to Box
Specify a rectangular area by entering defining coordinates. If zooming by a factor, leave this field blank.

 Value
Positive to zoom in or negative to zoom out. Leave this field blank if zooming to a specified area.
Click on Apply to zoom to the view selected, and Close to close the dialog.

Coventor, Inc. March 23, 2010 D3-35


Section 3: Layout Editor Reference Version 2010

3.4: File and Cell Management


This section details file creation and management, the use of translators, and the cell browser.

3.4.1: Working with Files


Creating Files
A file may be created with or without a template.

With a Template
Any library (.cat) file may be used as a template. Attributes such as Layer Browser structure and contents, grid set-
tings, object browser preferences, and custom colors in the file selected will be imported to the new project. To open
a Template File Name Browser window:
From the menu bar, select File > New > From Template or
Use the Command Line to enter filecreate -template
Select any native format file to be used as a template. Its attributes will be applied to the new file.
To open the cat:filecreate dialog, enter filecreate -ui on at the Command Line.

Figure D3-9 Filecreate Dialog

 Template file
Click on Browse to navigate to the file to be used as a template.

 Precision
Enter the number of decimal places to which the tool will calculate when locating points. The default value is 3.
Any positive whole number less than 10 is acceptable.

 Library file
Enter the path and file name for the new file. An existing file cannot be replaced or overwritten.
Click on Apply to create the file and on Close to close the dialog.

Without a Template
To create a new file without a template:
select File > New > Blank from the menu bar, or
enter filecreate at the Command Line.

D3-36 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Template Variables and Commands


This option is used to save three different kinds of information in a library file.

Both variables and procedures are saved using Set template variable. A variable is created from the command line,
for example:

M
set width 10
puts $width 10
puts stands for put to screen and the value of the variable is displayed in the terminal window. The info vars
command will list all of the currently defined variables.
The filetemplate -set width command will cause width (and its value at the time) to be saved if the library
file is saved. When that library file is reopened, the width variable will be put into the TCL environment where its
value can be retrieved by the $width command.
Below are two examples of procedures:
proc test {} { puts "This is a test" }
proc test1 { one } { puts $one }
The filetemplate -set test1 command will cause the test1 procedure to be saved in the library file and
redefined when the library file is reopened.
Once a variable or procedure is set, it will always be saved in the library file until it is unset. The filetemplate
-unset test1 command will remove the test1 procedure from the library file when the file is saved.
The other two options, -script and -unscript, work similarly.

Coventor, Inc. March 23, 2010 D3-37


Section 3: Layout Editor Reference Version 2010

Opening Files
Opening a new or existing file when there are unsaved changes in the current file will generate a prompt to save. To
open an existing file, perform either of the following:
From the menu bar, select File > Open, or
Enter fileopen at the Command Line
A library file name browser will open, through which a .cat file may be selected.
The fileopen dialog, shown below, is used to open files that are not in the native .cat format files without using a
translator. To open the dialog, enter fileopen -ui on at the Command Line.

Figure D3-10 Fileopen Dialog

 Template file
Browse to the .proc, .cat, or .tech file to be used as a template.

 Open cell
If True is selected, the cell browser (see page D3-51) will open and prompt for cell selection when the file opens.
If only one cell exists in the file, that cell will open. Default is False.

 Open last
If True is selected, the cat file will open with the last active cell displayed.

 Library
Browse to the file to be opened. The file may be in .cat, .cif, .gds, or .dxf format.
Click on Apply to open the file and on Close to close the dialog.

The Layout Editor also has a GDS Extraction Tool, available from the Tools menu, that allows the user to extract
and open a portion of a GDS file. This tool is useful if the GDS file is large and would take a lot of time to open or
if the user is only interested in part of the layout. For more information on this tool, see page D2-21.

D3-38 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Copying Files
This function allows the user to copy cells from other library files. To open the cat:filecopy dialog:
select File > Copy from the menu bar, or
enter filecopy -ui on at the Command Line.

Figure D3-11 Filecopy Dialog

M
 Source library
Enter or navigate to the .cat file containing the cell to be copied. The complete path name must be entered.

 Source cell
The Browse option will open a cell browser window from which the cell to be copied can be selected.

 Destination
Click on Browse to open a File name window. An existing file may be selected or a new file name entered in the
File name field. Click on Save as to enter the selection and close the window. A complete file path must appear
in the field.

 If file exists
If the Destination file exists, the file being copied may be appended to it, the filecopy command may be can-
celled, or the Destination file may be overwritten with the information being copied. This feature prevents acci-
dentally overwriting a file.
Click on Apply to copy the cell selected into the destination file. If files are overwritten, this action cannot be undone.

Coventor, Inc. March 23, 2010 D3-39


Section 3: Layout Editor Reference Version 2010

Renaming Files
To rename an existing file:
select File > Rename from the menu bar, or
enter filerename at the Command Line.
This opens the dialog shown below:

Figure D3-12 Filerename Dialog

 Old
Browse to the file being renamed.

 New
Browse to the file being replaced or enter new name for file.
Click on Apply to make the change. To cancel without making changes, click on Close.

Deleting Files
Obsolete or unnecessary files can be easily deleted through the Library File Name browser.
1. To open the browser:
select File > Delete or
enter filedelete at the Command Line.
2. Select and delete the file.
Files can also be deleted through a dialog: enter filedelete -ui on at the Command Line. Then enter the path
and file name of the target, or click on Browse to navigate to the file. Click on Apply to execute the command.

D3-40 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Saving Files
To save a file, perform one of the following steps:
From the menu bar, select File > Save or
Use the Command Line to enter filesave
The file and all the cells in the file will be saved in the .cat format. If it is a new file, a dialog will display to prompt
for a file name, and the user can also select a file format other than the default format. Names of existing files may be
entered to overwrite or replace. If the open cell is unnamed or cell changes have not been saved, an advisory box will
appear. The undo history for the open cell is erased when either the cell or the file is saved.
Note that there is an autosave function accessed from Tools > Options > Auto Save. This function can be set so that
open files are automatically saved in the time interval set in the dialog. The time is set in minutes.

M
To open the dialog, use the Command Line to enter filesave -ui on. A dialog will appear with this option:

 If needed
If True, the file will be saved only if changes have occurred since the last save. If False the file will be saved
whether or not changes have been made since the last save.
Click on Apply to save.

Save As
The Save As function is a standard Windows convention. It creates a version or updated copy of an existing file while
preserving the original. Select File > Save As from the menu bar, or enter filesaveas at the Command Line. A
dialog will display to prompt for a name for the file. If the name of an existing file is provided, an advisory message
will appear to confirm the intention to overwrite the file. This function can be used to save a file in a format other than
the default .cat format. The .dxf, .gds, or .cif formats can be selected from the Files of type drop-down menu.

Recovering Data
When the save command is issued, the Layout Editor first renames the original .cat file to a .catbak file before the
new .cat file is written. After the new .cat file is created and verified, the .catbak file is deleted. If the save command
fails for any reason, the .catbak file remains, and the user can recover the last saved version of the layout by renaming
the .catbak file to .cat.

Comments
Running text comments may be appended to any cell, using the Comments dialog. This feature is accessible through
File > Properties on the menu bar, or with comments -ui on command.

Figure D3-13 Comments Dialog

Coventor, Inc. March 23, 2010 D3-41


Section 3: Layout Editor Reference Version 2010

Closing Files
To close a file, from the menu bar, select File > Close, or use the Command Line to enter fileclose. The Layout
Editor prompts to save cells and the library file if changes were made since the last save. After saving or choosing not
to save, the file will close.
To close a file through the dialog, enter fileclose -ui on at the Command Line to open the dialog with this
option:

 Force quit
True will close without saving. False will prompt to save if changes were made to the file since the last save.

3.4.2: File Translators


The translators described here extract information from files in various formats and create cat files containing the
extracted information. These new files are then opened using the Layout Editor. The original files are not changed.
The translators can also output various file formats using the native .cat files.

CIF Files
The Layout Editor can translate a CIF(Caltech Intermediate Format) file to .cat format or output a .cat file to CIF for-
mat.

CIF Input Files


CIF files can be opened directly with the File > Open function, or can be converted to cat files using a file translator.
To open the CIF In translator window:
select File > Translators > CIF In from the menu bar, or
enter cifin -ui on at the Command Line.:

Figure D3-14 Translator Dialog for Importing CIF Files

 CIF input file


Enter the complete path and file name, or use the browse feature to select the file.

 Library
Browse to a .cat file to be overwritten or appended, or enter a path and file name for a new file.

 If library exists
If the name specified in the Input file field already exists, choose to append, cancel, or overwrite. The default is
cancel, which is intended to prevent inadvertently overwriting an existing file. To replace an existing file, choose
the existing library name in the Library field and select overwrite. To modify an existing file, select append. The
new cells created by the translation operation are added to the existing library, with a separate Top Cell hierarchy.

 Template file
This field may be left blank if the file being translated is not having its layers mapped to new names. Otherwise,
browse to the file or enter the path and file name to map the imported layer names and colors to an existing

D3-42 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

scheme. Layer names specified in the Template file Layerbrowser window are mapped to the new translation
layer names and their respective color and fill patterns.
Click on Apply to make the translation and on Close to close the dialog. For examples, see “Direct GDS, CIF and
DXF Import” on page D2-17.

CIF Output Files


For direct export of a cat file to .cif format, select File > Save As, and then select the cif format from the Files of type
drop-down menu. Cat files can also be converted to cif files using a file translator. To open the dialog for translating a
file to CIF format:
select File > Translators > CIF Out or
enter cifout -ui on at the Command Line.

M
Figure D3-15 Translator Dialog for Exporting CIF Files

 CIF output file


Enter the path and file name to create a new file, or browse to the file being replaced.

 Library
Enter the path and file name for the file being translated, or browse to select a file.

 Top cell
Select a cell. The cell selected and all cells beneath it in the hierarchy will be translated.

 If file exists
The Cancel setting protects against accidental overwriting. Select Overwrite to replace an existing file.

 Point Limit
This field is optional. Some tools have limitations on the number of points a polygon or path may contain. His-
torically there hasn’t been a limit in CIF files, but this field is provided for the user who may have a reason to
limit the point count. If left blank, the translator will select an optimum value for determining how accurately any
true curves in the file will be translated using line segments. Any whole number greater than 4 may be entered.
Larger values increase both accuracy and file size.
Click on Apply to make the translation.

CIF Specifications
CIF has no naming restrictions. Other considerations are the same as for GDS export (see page D3-47).

Coventor, Inc. March 23, 2010 D3-43


Section 3: Layout Editor Reference Version 2010

DXF Files
DXF Input
DXF (Drawing Interchange Format) files can be opened directly using the File > Open function, or can be converted
to .cat files using a file translator. To open the translator dialog window (see Figure D3-16):
select File > Translators > DXF In from the menu bar, or
enter dxfin -ui on at the Command Line.

Figure D3-16 Translator Dialog for Importing DXF Files

 DXF input file


Browse to the DXF file being translated.

 Library
Enter the path and name for the file being created, or browse to select a file.

 If library exists
If the name specified in the Input file field already exists, choose to append, cancel, or overwrite. The default is
cancel, which is intended to prevent inadvertently overwriting an existing file. To replace an existing file, choose
the existing library name in the Library field and select overwrite. To modify an existing file, select append. The
new cells created by the translation operation are added to the existing library, with a separate Top Cell hierarchy.

 Template file
This field is optional. Select an existing file to map to that file’s parameters.

 Precision
Set the number of decimal places to which the tool will calculate when locating points. The default is 3 decimal
places (0.001), but the user can specify another value.
Click on Apply to create the new file.

Unconvertible Objects within DXF Design Files


The Layout Editor may generate messages regarding lines being converted to zero width paths when importing cer-
tain DXF files. Usually this indicates that the design being imported has one or more open polygons. AutoCAD
allows users to create lines or to define polygons by using edges, rather than by defining a closed polygon. The Lay-
out Editor will attempt to reconcile these edges by detecting whether or not they form a closed loop. If so, it will be
recognized as a polygon. If not, they will be converted to a path object having a width of zero. The path will be visible
in the design, but will not be recognized when the solid model is rendered.
Dimensioning lines, text labels, overlapping edges that confuse the loop detection, and mechanical drawing informa-
tion boxes are examples of entities that will not be converted.

D3-44 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

DXF Output
For direct export of a cat file to .dxf format, select File > Save As, and then select the .dxf format from the Files of
type drop-down menu. Cat files can also be converted to DXF files using a file translator. To open the dialog for trans-
lating a cat file to DXF format:
select File > Translators > DXF Out or
enter dxfout -ui on at the Command Line.

Figure D3-17 Dialogs for DXF Output Conversion

M
 DXF output file
Enter the path and file name to create a new file, or browse to the file being replaced.

 Library
Enter the path and file name for the file being translated, or browse to select a file.

 Top cell
Select a cell. The cell selected and all cells beneath it in the hierarchy will be translated.

 If file exists
The Cancel setting protects against accidental overwriting. Select Overwrite to replace an existing file.

 Point Limit
This field is optional. Some tools have limitations on the number of points a polygon or path may contain; but
DXF has no point limit. By entering a number in the Point Limit field, the user can impose a limit. If left blank,
the translator will select an optimum value for determining how accurately any true curves in the file will be
translated using line segments. Any whole number greater than 4 may be entered. Larger values increase both
accuracy and file size.
DXF does not support true curves. Larger Point Limits allow closer approximations to true curves.
Click on Apply to make the translation.

Coventor, Inc. March 23, 2010 D3-45


Section 3: Layout Editor Reference Version 2010

GDS Files
GDS Input
GDS (Graphic Design System) files may be opened without translation using the File > Open option from the menu
bar. The GDS Input feature translates a GDS file to a .cat files without having to save the file first. To open the dialog,
select File > Translators > Gds In, or enter gdsin -ui on at the Command Line.

Figure D3-18 Translator Dialog for Importing GDS Files

 Input file
Browse to the GDS file being translated.

 Library
Enter a name for the .cat file being created or browse to an existing file to be replaced.

 If library exists
If the name specified in the Input file field already exists, choose to append, cancel, or overwrite. The default is
Cancel, which is intended to prevent inadvertently overwriting an existing file. To replace an existing file,
choose the existing library name in the Library field and select Overwrite. If the GDS file is being added to an
existing file, select Append. The new cells created by the translation operation are added to the existing library,
with a separate Top Cell hierarchy.

 Template file
GDS files store layers by numbers instead of by names. During translation, layer names are created in the form of
"L#D#" using the layer number and the datatype number. Using a template file is a convenient way to give the
layers more meaningful names. Layer names and their respective color and fill patterns specified in the Template
file are mapped to the new translation layer names in the Layerbrowser window.
The user can select a .cat file (native CoventorWare layout file) or a .tech file (Cadence Technology file) as a
template. To set the default file type, select Tools > Options > GDS Import > Default template file filter.

 Scale factor
Specify a scale factor if the import database is to be scaled up or down. If the Scale factor field is left blank, a
scale factor of 1.0 (no scaling) is assumed.

 Case of cell names


Cell names may be changed to all upper case or all lower case using this feature. No change is the default setting.
Click on Apply to create the file. For an example, see page D2-29.

The Layout Editor also has a GDS Extraction Tool, available from the Tools menu, that allows the user to extract
and open a portion of a GDS file. This tool is useful if the GDS file is large and would take a lot of time to open or
if the user is only interested in part of the layout. For more information on this tool, see page D2-21.

D3-46 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

GDS Property Number/Value Pairs


The Layout Editor preserves GDS property number/value pairs. The GDS standard format allows for Property num-
bers in the range from 1 to 255. It also preserves nets that were in the original file. The Tools menu has a Net names
option that allows the user to list net names, create new net names, or highlight net names. These options are useful
for checking for connectivity or for intersections. For more information on these options, see page D3-29.

GDS Input from the Command Line


GDS files can be translated to .cat files from the command line. The command is not executed from within the Lay-
out Editor terminal window, but from a DOS or shell window. The command syntax is as follows:
gds2cat --g gds_file_name --o catfile_name --t file_name --e c | o
--g gds_file_name name of GDS file to be converted
name of output cat file

M
--o catfilename
--t filename optional; name of file to be used as a template for conversion
--e [c|o] if file already exists, c cancels the conversion, o overwrites the existing file
To execute this command,
1. On Windows, click Start > Run, then enter cmd in the Open line and click on OK.
or
1. On Linux, open a shell window.
2. cd to the \\Coventor\CoventorWare2010\bin.
3. Enter cov_env.bat
4. cd to the directory where the gds file is saved.
5. Input the command: gds2cat --g filename.gds --o filename.cat --e o.
When the command is executed, the .cat file will appear in the same directory as the specified .gds file.

GDS Output
For direct export of a cat file to .gds format, select File > Save As, and then select the .gds format from the Files of
type drop-down menu. Cat files can also be converted to gds files using a file translator. To open the translator, select
File > Translators > Gds Out from the menu bar, or enter gdsout -ui on at the Command Line.

Figure D3-19 Translator Dialog for Exporting GDS Files

 Output file
Select a path and name for the file being created. If an existing file is being replaced, browse to the file.

 Library
Enter the path and file name for the cat file being converted.

 Top cell

Coventor, Inc. March 23, 2010 D3-47


Section 3: Layout Editor Reference Version 2010

If the entire hierarchy is being translated, browse to the top cell of the hierarchy and leave the Cell field blank.

 Cell
If just one cell is being translated, browse to select a cell and leave the Top cell field blank.

 Scale factor
Enter any positive number to make all translated objects larger or smaller by the factor selected. The default
value is 1 (See “Move an Object” on page D3-102).

 If file exists
Select Cancel unless an existing file is to be overwritten.

 Point Limit
Some tools have limitations on the number of points a polygon or path may contain. Historically this limit has
been 200 points. Therefore, by default, all polygons that exceed 200 points are split into multiple polygons. The
range of values is 5 to 4095. The larger the number, the more closely any curved surfaces in the objects being
translated will approximate true curves. If this field is left blank, the translator will select an optimal value.
Click on Apply to create the file. For a translation example, see “GDS Export and Import Example” on page D2-29.

Be aware that if the GDS Export All Cells option is not turned on (accessed from Tools >Options),
when the user exports a layout to GDS, only the open cell and any cell used by that open cell will be
exported. To export all cells in a layout, make sure this option is turned on.

GDS Specifications
GDS files require that layer names be of the format L#D#, where # must be in the range of 0 to 255. L stands for a
Layer number, and D stands for a datatype. Consider a datatype to offer the ability to group layers by characteristics,
or just to provide a version variant to a layer number. Note that layer names such as L13D1 and L13D2 are considered
unique layers.
Foundries may impose more restrictive requirements on naming. Some may limit the # range in the layer/datatype
designation, while others may require that all data types be set to 0. In general, it is best to use unique L numbers for
exported layer naming.
The GDS export translator supports hierarchical structures of any depth, text, and all four variations of path endcaps.
However, some foundries may require that hierarchical designs be flattened (all hierarchy removed) before submission.

GDS Export with Extracted Layouts


When exporting a layout that has been extracted from an Architect schematic, the user must make sure that any perfo-
ration layer has it own GDS layer name and that the GDS export option is set to True. GDS export does not take in to
account layer polarity. If necessary, the layer polarity can be provided to the mask foundry so that it can build one
mask from two layers of opposite polarities.
For an extracted layout, the Debug layers do not need to be exported to GDS.

D3-48 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

IGES Files
IGES Output
To translate a .cat file to IGES (Initial Graphics Exchange Specification) format, open the IGES Out dialog window:
select File > Translators > Iges Out, or
enter igesout -ui on at the Command Line.

Figure D3-20 Translator Dialog for Exporting IGES Files

M
 IGES output file
Select a name for the output file(s) being created. When translating a cat file to IGES, each layer in the cat file is
written out to a separate .igs file. By default, the files are written to the Devices directory of the active project.
Because the IGES translator outputs a file for each layer, the name specified in this field becomes part of the file
name for each layer. For example, if the output file name is mirror, and the original cat file has three layers, A, B,
and C, the IGES files created would be named mirror-A.igs, mirror-B.igs, and mirror-C.igs. If not output file
name is specified, the name of the specified top cell becomes part of the name of each output file.

If you specify a output file name with the .igs extension, the individual IGES files that are written out will have the
format filename.igs-layername.igs. The software that is reading these files may not recognize them as legitimate
IGES files. When specifying the output file, do not put the .igs extension in the file path.

 Library
Enter the path and name of the .cat file being translated.

 Top cell
Enter the path and name of the top cell in the hierarchy.

 If file exists
If an existing file is being replaced, select Overwrite.

 Polygon mode
Default False allows for translation of true curves. Select True if the exported file will be used by a third-party
tool that does not support true curves.

 Base layer
Select Browse and identify the base layer from the drop-down list of all layers in the library.
Click on Apply to create IGES files, and on Close to cancel or to close the dialog.
For additional information, see “Translated File Export” on page D2-27.

Coventor, Inc. March 23, 2010 D3-49


Section 3: Layout Editor Reference Version 2010

IGES Specifications
IGES is an industry-standard format for CAD file exchange. IGES/PDES is the organization responsible for IGES
format content. Unlike the other formats, each IGES layer is exported as a separate file. The IGES file name specified
in the dialog window is used as the root name for the exported layers. For example, if the dialog window name cho-
sen for the output IGES file is mirror, and the file contains layers A, B, and C, three IGES files are created with the
names: mirror-A.igs, mirror-B.igs, mirror-C.igs. For more information, see page D3-49.

If you specify a output file name with the .igs extension, the individual IGES files that are written out will have the
format filename.igs-layername.igs. The software that is reading these files may not recognize them as legitimate
iges files. When specifying the output file, do not put the .igs extension in the file path. If you do not specify any
file name, the exported files will use the top cell as the basis of the exported file names.

SAT Output
To translate a .cat file to SAT format, open the Sat Out dialog window:
select File >Translator > Sat out, or
enter satout -ui on at the Command Line.

 SAT output file


Select a name for the output file being created. A path to the new file must be provided.

 Library
Enter the path and name of the .cat file being translated.

 Top cell
Enter the path and name of the top cell in the hierarchy.

 If file exists
If an existing file is being replaced, select Overwrite.

 Polygon mode
Default False allows for translation of true curves. Select True if the exported file will be used by a third-party
tool that does not support true curves.

 Base layer
Select Browse and identify the base layer from the drop-down list of all layers in the library.
Click on Apply to create a SAT file, and Close to cancel or to close the dialog.

D3-50 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

3.4.3: Working with Cells


Cell Browser
The cell browser shows the properties of each cell, the hierarchy of the library, and allows selection, editing, copying,
and deletion of cells. To open the cell browser:
select the cell browser toolbar icon, or
enter cellbrowser -ui on at the Command Line.
The entire library can be viewed from the browser. Double-clicking on a cell name opens the cell for viewing or edit-
ing. Right-clicking the name of the open cell opens the Cell drop-down menu, which offers the Close option.

Figure D3-21 Cell Browser

M
Folders denote cells that include referenced objects.

Properties
The properties are integrated into the existing Cell Browser. A properties node is added to the tree, and to each cell
within the hierarchy. For the library (listed at the top with a .cat extension), users can double click on properties such
as User Comments, Angle Restriction, Curve Flatness, etc., to edit those values. The creation and modified properties
cannot be changed, but will be updated each time changes are saved. For individual cells, only the User Comments
field is editable.
Note that the Process file property can only be accessed from this dialog. It can be used to reconcile the library’s mask
list to the process file.

Tree
Hierarchy information in a text format can be displayed in the Terminal Window. To do so, either
select Cell > Tree from the menu bar, or
enter tree at the Command Line.
The hierarchy information will appear in the upper frame of the Terminal Window.

Coventor, Inc. March 23, 2010 D3-51


Section 3: Layout Editor Reference Version 2010

Cell Structure and Contents


Cell Status
To display cell status information in the Terminal Window:
select Cell > Status from the menu bar, or
enter status at the Command Line.
The Terminal Window will display the path to the current library, the name of the top cell in the current hierarchy,
Edit-In-Place (EIP) Cell (if any), the current layer in drawing area, and the number of objects in the Select List.

Cell Summary
A cell summary is a list of all objects in the open cell. To generate a summary:
select Cell > Summary from the menu bar, or
enter summary at the Command Line.
Objects will be grouped by type, and the coordinates of the object extents will also be provided.
To get a summary of objects on a given layer, use the command summary -layer layer_name. This command
will cause the summary of objects on the given layer to appear in the terminal window. Also, any reference cells or
generators in the currently open cell that contain objects on the give layer will be listed in the terminal window.

Creating and Opening Cells


Creating Cells
To create a new cell in the current file:

select the New Cell option from the New File icon, as shown here , or

select Cell > New from the menu bar, or


enter cellcreate at the Command Line.
An unnamed cell is created. To name the cell during creation, open the cellcreate dialog by entering
cellcreate -ui on in the Command Line. Enter a unique name for the cell being created, or browse to select an
existing cell name and then modify it. When creating a new cell, if there are unsaved changes in the current cell, a
save prompt will appear before the new cell is opened.

Opening Cells
Selecting Cell > Open from the menu bar, or entering cellopen at the Command Line displays the hierarchy of the
current file. Any cell in the current file can also be opened by entering cellopen -ui on to open a dialog, which
has this option:

 Cell
Enter cell name, or click on Browse to view the file hierarchy. Select a cell to populate this field.
Click on Apply to open the cell selected. A prompt to save the previous cell will appear if changes were not saved.

D3-52 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Cell Buffering
More than one cell may be open at one time, though only one will be displayed. The list of open cells appears under
Window in the menu bar. Open cells that are not displayed are kept in a Cell Buffer. Select File > Open to buffer cells
from another file or from another project.

Copying Cells
To copy cells from one file to another, select Cell > Copy from the menu bar, or enter cellcopy -ui on at the
Command Line. The dialog shown below will open:

Figure D3-22 Cell Copy Dialog

M
 Source library
Enter the path and file name, or browse to the file from which the cell will be copied.

 Source cell
Click on Browse to open the hierarchy and select a file.

 Destination cell
Leave this field blank if the source library is not the currently open library. The tool will then default to the
source cell name. Click on Browse to view the existing cell names to avoid a conflict or to choose a name to
modify.

 If cell exists
The existing cell can be overwritten with the new cell information, or the cell can be renamed. The Cancel option
protects from accidentally overwriting a file. The Auto-rename feature will generate default names and save the
cell without overwriting.

 Copy nested cells


Select True to copy a cell and all the cells that are referenced. Select False to copy a cell without references.

Coventor, Inc. March 23, 2010 D3-53


Section 3: Layout Editor Reference Version 2010

Renaming Cells
To rename a cell, select Cell > Rename from the menu bar, or enter cellrename -ui on to open the dialog:

Figure D3-23 Cell Rename Dialog

 Replace cell references


Select True to replace cell references. Default is False.

 Old
Enter or browse to cell being renamed. A cell cannot be renamed while it is open.

 New
Cells cannot be overwritten. A prompt with suggested corrections will appear if illegal characters are used, or if
the name entered is already in use.

Cut Window
To transfer a window of information to another cell, select Modify > Cut Window from the menu bar, or enter cut-
window -select at the Command Line. For an example, see “Insert Hierarchy Example” on page D5-23.

D3-54 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

3.4.4: Cell and Array References


Cell contents may be referenced, either singly or as part of a matrix. The Reference icon , located at the bottom
of the vertical toolbar, has a Reference and an Array Reference option. The Reference option can be used to place one
instance of a cell. The Array Reference option can be use to create a matrix-type pattern. The Reference function sim-
plifies design work because the object need only be created once. Any subsequent changes made on the referenced
cell will be applied to the entire array.

Cell Reference
Any one of the following three options enables the reference function. With this function, the entire contents of one
cell appears by reference in another cell. To open the reference dialog, do any one of the following:

select the Reference icon or

M
select Object > Reference from the menu bar, or
enter reference -ui on at the Command Line.

Figure D3-24 Reference Dialog

 Object
Leave blank unless modifying an existing reference.

 Magnification
Select a magnification, unless referencing at normal size. The system defaults to 1. Values between 0 and 1 will
reduce the size of the referenced objects. Values greater than 1 increase size.

 Angle
Orientation angle of the referenced object can be changed. The Value represents degrees of counterclockwise
rotation. The system defaults to 0.

The anglemode command can be used to restrict placement angles to 0, 90, 180 and 270. Invoke this command
in the command line or select Help > Command List and then select the anglemode command from the
Command drop-down menu. When this command is invoked, the Angle option in the object dialog will display
radio buttons instead of editable fields.

 Mirror vertically
Select True to flip the imported objects vertically.

 Center, radius, angle


This option allows the user to place the reference at an origin that is calculated from the center, radius, and angle
inputs. This option can be used instead of the Origin input.

Coventor, Inc. March 23, 2010 D3-55


Section 3: Layout Editor Reference Version 2010

 Reference Library
This field allows the user to reference a cell that is in a different library file. For this field the user will click on
Browse and select the library file, and then use the Cell field to select the cell in that library file.

 Cell
Enter the name of the cell to be referenced, or click on Browse and select a cell from the list that appears. All of
the contents of the cell selected will be referenced into the open cell.

 Origin
Select the point upon which the referenced object will be centered.
Click on Apply to import the reference. Close will cancel the operation.

Array Reference
To use this feature, select Object > Array Reference from the menu bar, or enter arrayref -ui on at the Com-
mand Line.
These actions open the dialog shown below:

Figure D3-25 Array Reference Dialog

 Object
An object identifier is assigned by the software when the array is created.

 Magnification
Each instance of the referenced object can be magnified in the array. Any positive value may be entered; values
between 0 and 1 will reduce the size of the objects. The default is 1.

 Angle
Select or enter an angle of rotation to override default value of 0.

The anglemode command can be used to restrict placement angles to 0, 90, 180 and 270. Invoke this command
in the command line or select Help > Command List and then select the anglemode command from the
Command drop-down menu. When this command is invoked, the Angle option in the object dialog will display
radio buttons instead of editable fields.

 Mirror vertically
Select True to flip each instance of the referenced object vertically. No mirroring takes place when set to False.

D3-56 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 Column distance
Distance is measured centerpoint to centerpoint for each instance of the referenced object. If distance is speci-
fied, leave the Column spacing field blank.

 Row distance
Distance is measured centerpoint to centerpoint for each instance of the referenced object. If distance is speci-
fied, leave the Row spacing field blank.

 Column spacing
Spacing is measured between extents of each instance of the referenced object. If spacing is specified, leave the
Column distance field blank.

 Row spacing

M
Spacing is measured between extents of each instance of the referenced object. If spacing is specified, leave the
Row distance field blank.

 Columns
Provide any positive whole number to define the number of columns in the matrix.

 Rows
Provide any positive whole number to define the number of rows in the matrix.

 Center, radius, angle


This option allows the user to place the array at an origin that is calculated from the center, radius, and angle
inputs. This option can be used instead of the Origin input.

 Reference Library
This field allows the user to reference a cell that is in a different library file. For this field the user will click on
Browse and select the library file, and then use the Cell field to select the cell in that library file.

 Cell
Click on Browse to open the cell browser. Select the cell to be referenced.

 Origin
Enter the coordinates for the lower left corner of the matrix, or click on Select and place the array with the
mouse.

Coventor, Inc. March 23, 2010 D3-57


Section 3: Layout Editor Reference Version 2010

Circular Array
To create a circular array, use the Circular Array generator, accessed from Generators > General > Circular Array.
The generator places Count placements along an arc path specified by an Origin point, a Radius value, and a Start
Angle. If Count is specified, either End Angle or Increment Angle must also be specified. If both End Angle and Incre-
ment Angle are specified, the Count can be omitted.

Note that the Omit Reference Angle setting causes the angle of the cell to match the location angle, but allows the
radius to be greater than 0.0.

For an example of how to use the Circular generator, see page M2-13.

D3-58 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Removing Cell Hierarchy


Extensive information on removing cell hierarchy is presented in “Removing Hierarchy in a Design” on page D5-27.
To open the dialog, select Cell > Flatten hierarchy from the menu bar, or enter hierflatten -ui on at the
Command Line. The dialog has these options:

 Level
Leave blank to remove all hierarchy. Otherwise, specify the number of levels to flatten.

 Selected data
If set to True, only the selected hierarchical objects will be flattened.

Inserting Cell Hierarchy

M
To insert hierarchy in a cell, open a dialog by doing either of the following:
select Cell > Insert hierarchy from the menu bar, or
enter hierinsert -ui on at the Command Line.

Figure D3-26 Insert Hierarchy Dialog

 Replace
If set to True, selected objects will be replaced with a single reference to the newly created cell. If set to False, no
change is made to the current cell.

 Cell
Specify a name for the new cell being created. Click on Browse to see existing cell names to avoid conflict or to
select a name to modify.

 Origin
Click on Select to designate an origin point in the drawing area for the object being inserted.
For examples, see “Inserting Hierarchy in a Design” on page D5-23.

Coventor, Inc. March 23, 2010 D3-59


Section 3: Layout Editor Reference Version 2010

Edit In Place Functions


Edit-In-Place allows the editing of objects that appear in cells by reference.

To move down one level in the hierarchy:


select Edit > Edit In-Place > Push One Level from the menu bar, or
enter editinplace -push 1 at the Command Line.
The Edit In Place dialog opens and has three fields:

 Cell
Enter name of cell, or browse to cell to be edited. Cell selection is by name or by coordinate, but not by both
simultaneously.

 Push
Enter number of levels down into the hierarchy.

 Cell location
Enter drawing area coordinates, or click on Select and choose a point in the drawing area with the mouse.

To move directly to an object on a different hierarchical level:


select Edit > Edit In-Place > Push To Object from the menu bar, or
enter editinplace at the Command Line.
Upon selection, the cell in which the selected object resides becomes the active cell. Use the Refresh function to
remove artifacts from the previous presentation. For more details, see “Multi-Level Push and Pop” on page D5-23.

To move one cell higher in the hierarchy:


select Edit > Edit In-Place > Pop One Level from the menu bar, or
enter cellclose -pop 1 at the Command Line.
The next higher cell in the hierarchy will become active. Use the Refresh function to remove artifacts from the previ-
ous presentation. For more information, see “One-Level Push and Pop” on page D5-22.

To ascend immediately to the top of the hierarchy:


select Edit > Edit In-Place > Pop To Top from the menu bar, or
enter cellclose -pop 1000 at the Command Line.
This makes the Top Cell active. Use the Refresh function to remove artifacts from the previous view.

To edit an object while viewing the contents of the entire hierarchy:


select Edit > Edit In-Place > Redraw Top from the menu bar, or
enter redraw -top at the Command Line.
The active cell does not change, but the contents of the entire hierarchy are visible. For examples, see “Edit In-Place
Navigation” on page D5-22.

To view the hierarchy from the top while performing Edit In-Place edits:
select Edit > Edit In-Place > View Top from the menu bar, or
enter viewfit -top at the Command Line.
This makes the entire hierarchy contents visible, while editing functions remain in a cell within the hierarchy.

D3-60 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Deleting Cells in a Hierarchy


To open a view of the cell hierarchy:
1. Select Cell > Delete from the menu bar, or use the Command Line to enter celldelete
2. System will prompt for selection of a target cell. Select a cell to open a confirmation box.
3. Click on OK to delete the cell.
To delete through the dialog, enter celldelete -ui on at the Command Line. Enter the name of a cell in the
Cell list field, or click on Browse to view the hierarchy and choose a cell. Click on Apply to open the deletion confir-
mation box. Click on OK to delete the cell.

Cell deletion cannot be undone.

M
Saving and Closing Cells
All cells exist in files. When a file is saved, all changes made to the cells within that file will also be saved. However,
cell saves by themselves, while making those cells and changes available within the library, will not preserve changes
in the event of a power failure or system crash. Changes to the cell are not preserved until the file within which the
cell resides is saved.

To Save:
select either Cell > Save or Edit > Edit In-Place > Save from the menu bar, or
enter cellsave at the Command Line.
If the cell has not been previously named, a dialog will open and prompt for a name for the cell. The current contents
of the cell will then be available for referencing and building. Cell names can include hyphens, but not any other
punctuation.
Note that there is an autosave function accessed from Tools > Options > Auto Save. This function can be set so that
that open cells are automatically saved in the time interval set in the dialog. The time is set in minutes.

To Save As:
To save an existing cell with a new name, while preserving the original cell:
select Cell > Save As from the menu bar, or
enter cellsaveas at the Command Line.
Provide a new cell name and click on OK.

To Close:
select Cell > Close from the menu bar, or
enter cellclose at the Command Line.
This closes the cell, but leaves the library open. If the cell is unnamed or there are unsaved changes, a prompt will
appear. An asterisk in the title bar signals unsaved changes in a cell or in the library. The library must be saved to
write new data to the disk.

Coventor, Inc. March 23, 2010 D3-61


Section 3: Layout Editor Reference Version 2010

3.5: Object Management


3.5.1: Object Information
To display limited information pertaining to an object in the open cell, select Object > Info from the menu bar, or
enter query -verbose off at the Command Line.
The system will prompt to select object. When an object is selected, the Terminal Window displays the type of object,
and other information depending on the type of object, such as layer and number of points.
To obtain more extensive information, select Object > Info (verbose) from the menu bar, or enter query at the Com-
mand Line
The system will prompt to select object. The Information displayed depends on the type of objects such as layer, ori-
gin, radius, start angle, extent, box origin, height, and width. For examples, see “Identifying and Modifying Object
Properties” on page D3-108. The command query -ui on offers the same functions through a dialog.

3.5.2: Undo and Redo


These standard functions maintain a history of all object creation and modification since the last cell save or file save.
Grid changes, color changes, modifications to the Layer Browser, and similar tasks that do not directly affect drawn
objects cannot be undone with this function. Click on the down arrow next to the icon to view steps that can be
undone or redone.
To undo an action:
select Edit > Undo from the menu bar, or
use keyboard shortcut Ctrl + X, or
enter undo at the Command Line.
This function will undo build steps, object deletions, and object modifications sequentially to the last save. It will not
undo changes in selectability, workspace modifications (such as changes in colors or grid settings), Layer Browser
changes, or view changes.
To redo an action that was undone:
select Edit > Redo from the menubar, or
use keyboard shortcut Ctrl + Y, or
enter redo at the Command Line.

D3-62 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

3.5.3: Layer Creation and Selection


Enter layers in the Command Line to display a list of all current project mask names. If using the dialog, pattern
criteria and wildcards can be entered to narrow the list to specific mask names.

Figure D3-27 Layers Dialog and Terminal Display

M
Opening the Layer Browser
Any of the following actions will open the Layer Browser:

On the toolbar, click on the Layer Browser icon or


From the menu bar, select either View > Layers > Browse or Edit > Layers > Browse or
Enter layerbrowser at the Command Line.

Figure D3-28 Layer Browser

The available fields in the Layer Browser is determined by the type of license the user has. See page D2-13 for
more details.

For more details on the Layer Browser, see page D2-14.

Coventor, Inc. March 23, 2010 D3-63


Section 3: Layout Editor Reference Version 2010

Layer Creation
To add layers, select Layer > New, or enter layercreate -ui on at the Command Line. Either action will open
the layercreate dialog shown below:

 Layer
Enter a name for the layer being created. If the name entered does not match a mask name in the foundry process
file, the objects on the layer will not be rendered when the model is generated.

 Mask name
The user may wish to assign more than one layer to a mask. For example, a plate with holes could be on two lay-
ers, but make up one mask. By default, the field is the same as the layer name.

 Mask contribution
Select Subtract or Add to set the layer’s mask contribution. This corresponds to the Layer Polarity on Mask Field
in the layer browser. See page D2-14 for more details.

 Mask polarity
Set the mask polarity to determine how the shape drawn by the mask appears: if set to Dark, the area inside the
mask appears filled; and if set to Light, the area inside the mask appears empty. This field corresponds to the
Dark/Light Mask Field in the layer browser. See page D2-14 for more details.

 Color name
Specific colors may be selected from the drop-down menu as layers are created. Colors are automatically
assigned if no preferences are indicated.

 Fill
Fill makes objects easier to differentiate in the drawing. Fill options may be selected from the drop-down menu.

 SAT/IGES
Select any name to be used for SAT or IGES file translation.

 GDS
Provide GDS layer name in Layer # Data # format, (i.e. L1D0).

 CIF/DXF
Select any name to be used for CIF or DXF file translation.

D3-64 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 SAT/IGES I/O
Select false to prevent the layer from being exported when file is converted to SAT or IGES format.

 GDS I/O
Select false to prevent the layer from being exported when file is converted to GDS format.

 CIF/DXF I/O
Select false to prevent the layer from being exported when file is converted to CIF or DXF format.

Unless there is a compelling reason to change them, all I/O options should remain True.

M
Deleting a Layer
To delete a layer from the Layer Browser:
select Layer > Delete from the Layer Browser menu bar, or
enter layerdelete -ui on at the Command Line.
Either action will open the dialog below:

 Undelete layer
Default is False. Select True to recover a layer if deleted after the last save.

 Layer
All layers in the browser are listed in the drop-down menu. Layers being used in the current file cannot be
deleted. Scroll to any other layer and click on Apply. The deleted layer is removed from the browser, but remains
in a Deleted Layer list that becomes visible when Undelete Layer-True is selected. The Deleted Layer list is
cleared when the library is saved.
Click on Close to cancel or to close the dialog.

Coventor, Inc. March 23, 2010 D3-65


Section 3: Layout Editor Reference Version 2010

Editing Layer Properties


To edit existing layers in the Layer Browser, open the cat:layer dialog window by doing one of the following:
From the menu bar, select Edit > Layers > Edit or View > Layers > Edit
Enter layer -ui on at the Command Line.

 Layer
Use menu to select a layer.

 Save settings
This feature replaces the values in the cat file. The previous settings are no longer recoverable.

 Restore settings
This feature restores the layer settings to those of the last save.
The remaining fields are completed as in the layercreate function; see “Layer Creation” on page D3-64.

Renaming a Layer
Layer names must match the mask names in the process file. To rename layers if necessary:
select Layer > Rename from the menu bar of the Layer browser, or
enter layerrename -ui on at the Command Line.
The dialog has two fields:

 Layer
Select the layer to be renamed.

 New Name
This name must exactly match a mask name in the process file.
Click on Apply to make the change.

Object Count
This option counts the number of objects on a selected layer and displays the number in the Terminal window.

D3-66 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Layer Summary
To get a summary of objects on a given layer, use the command summary -layer layer_name. This command
will cause the summary of objects on the given layer to appear in the terminal window. Also, any reference cells or
generators in the currently open cell that contain objects on the give layer will be listed in the terminal window.

3.5.4: Creating Basic Objects


This sub-section explains object creation functionality.

Arc
To create an arc:
select Object > Arc from the menu bar, or

M
enter arc -ui on at the Command Line.

Figure D3-29 Arc Dialog

 Object
When an object is created, the drawing tool assigns it a unique object identifier in the form "java#x##"

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
Four options are available from the combination box.

 Width
This criterion only applies to paths. Width values for non-path objects will be ignored. If no width is specified
when creating a path, system defaults to a width of 1.

 Center point
This parameter must be provided when creating a chord, pie, or circle. A center point may be provided when
defining a path (torus), or the tool will calculate the center point from the other information provided.

Coventor, Inc. March 23, 2010 D3-67


Section 3: Layout Editor Reference Version 2010

 Radius distance
This parameter must be provided for a chord, pie, or circle. This value may be provided when defining a path
(torus), or the tool will calculate the radius from the other information provided.

 Start angle
This factor is used when creating a chord, pie, or circle. If this angle is not provided when creating a circle, the
tool provides a default value of 0 and creates the object. For chord and pie objects, a start angle must be provided.

 Extent angle
An extent angle must be provided when creating chords or pie objects. This measurement is degrees from the
start angle. It may be any value for chord or pie objects, but will always be 360 when defining a circle.

 Bounding box
This function allows creation of arcs when centerline limits are critical. The center point and radius distance will
be calculated by the tool. If a start angle and an extent angle are not provided, an object will be created with no
degrees of arc and, therefore, no visible dimensions.

 Starting point
This can be any point in the drawing area. The user must also provide center point, radius distance, and ending
point.

 Ending point
This can be any point in the drawing area. The line defined by the center point and the ending point intersects the
arc at the point defined by the radius provided.

 Center, radius, point


Choose layer, arc type, and width. Click on Select at this option and select points in the drawing area, or provide
coordinates in the field before clicking on Apply to create the object. To view object information, select modify
radio button, click on Select, then click on the object. Object identifier and the seven following fields will be
populated with the information pertaining to the object selected.

 Box, radius, point


Layer, arc type, and width must be defined. Follow prompts to define a box within which the arc will reside. Pro-
vide two additional points to define the origin point and extent of the arc.

 Box, start, extent


Provide two diagonal points that define the box, then the degrees of the start angle and the degrees of the extent.

 Start, middle, end


Provide layer, type, width, and three points on the arc. Points will be connected in the order provided.

Creating Arc Objects from the Terminal Window


All four types of arc objects can be created easily using commands at the Command Line. Following is the command
syntax for each type:
Enter arc -type chord -crp and enter points as prompted. For more details, see “Chord” on page D3-69.
Enter arc -type circle -crp and enter points as prompted. For more details, see “Circle” on page D3-70.
Enter arc -type path -crp and enter points as prompted. For more details, see “Path” on page D3-74.
Enter arc -type pie -crp and enter points as prompted. For more details, see “Pie” on page D3-76.

D3-68 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Chord
There are two types of chord objects: arc chords and curve chords. Both types can be created through dialogs or using
keyboard commands at the Command Line.

Chord Icon
A toolbar icon is provided for creating arc chords. The icon has two menu options: object defined by center,
radius, and extent, or object defined by three non-linear points.
Enter coordinates in the Command Line as prompted, or use the mouse to select points in the drawing area. When the
points have been selected, the object will be displayed.

Dialog

M
To open a dialog for arc chords enter arc -ui on at the Command Line. The dialog is the same as the dialog for
the arc object (see page D3-67). Select chord as the arc type.

 Object
The Select button is disabled when a new chord is being created. Select Modify and click on Select to modify an
existing chord.

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
Select Chord.

 Width
Leave blank - a chord has no width.

 Center point
Enter coordinates, or click on Select and use mouse.

 Radius distance
Enter distance in microns. A radius distance must be provided.

 Start angle
Enter angle in degrees.

 Extent angle
Enter number of degrees counterclockwise from the start angle provided.

 Bounding box
This option can be used with start angle and extent angle. The tool calculates the center point and radius distance.

 Starting point
This designates the point in the drawing area from which the chord arc will be drawn.

 Ending point
This designates the terminal point of the chord arc.

 Center, radius, point


Enter points in order; line from last point to center will determine arc terminus. This point need not be on the
chord.

Coventor, Inc. March 23, 2010 D3-69


Section 3: Layout Editor Reference Version 2010

 Box, radius, point


Provide four points to create a chord from this field. Enter the coordinates for two points that will define a box.
The center of the box will be the center point of the chord. Provide a third point to define the radius and a fourth
point to define the extent of the chord. The chord is drawn counterclockwise from point three to the line connect-
ing the center and point four.

 Box, start, extent


Enter two coordinates to define a box, a third point to define a start angle, and a fourth point to define the extent.

 Start, middle, end


Enter coordinates for the start, middle, and end of an arc. The tool will calculate from the points provided.

Creating a Chord from the Terminal Window


Build the object using the following syntax:
arc -type chord -crp x1 y1,x2 y2,x3 y3
where the point x1,y1 identifies the centerpoint, x2,y2 is a point on the radius, and x3,y3 is any point other than the
centerpoint, which will define the extent of the object.
arc -type chord -three x1 y1,x2 y2,x3 y3
can be used when three points on the arc are known.

Circle
A circle is a chord with a 360-degree extent angle.

Circle Toolbar Icon


The circle toolbar icon offers two options for circle creation: definition by center and radius or definition by
three circumference points.
To build a circle using the center and radius:
1. Along the left side of the interface, locate and click on the Circle icon.
2. A prompt to Enter center point will appear in the Command Line. With the mouse, click to define the center
of the circle.
3. A prompt to Enter point on radius will appear when the center point is provided. As the mouse pointer moves
from the center point, a white outline defines the current radius size. Position the radius as desired, then click
again to complete the object.
The Circle icon has a drop-down menu with another option for defining a circle with three points.

For any vertical column or lower horizontal row icon that has more than one option, selecting a new option changes
the icon function and graphical appearance to that option for the rest of the Layout Editor session.

Dialog
There is no dialog exclusively for circles. To create a circle using a dialog, select Object > Arc from the menu bar, or
enter arc -ui on at the Command Line and select circle as the Arc type.

 Object
Selecting the Modify radio button will activate the Select button. Any arc in the open cell may then be selected
with the mouse, and information specific to that arc will populate the fields in the dialog. If an item selected is
not an arc, an error message will display. When the tool is in "create" mode, this field remains empty.

D3-70 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
Select circle from the four options.

 Width
A circle has no width. Any value placed in this field will be ignored.

 Center point
Enter coordinates to define a center point, or click on Select and then select the center point in the drawing area
using the mouse.

 Radius distance

M
Enter value to define the radius. If the center point and radius are provided, all other fields may be left blank.

 Start angle
For a circle, any value up to 360 may be entered. If no value is provided, the system defaults to 0.

 Extent angle
Enter 360. Any smaller angle will generate an arc.

 Bounding box
Coordinates may be entered in the field, or selected in the drawing area using the mouse. If a center point and
radius have been previously provided, they will be deleted when Bounding box information is entered. The circle
will be drawn in the box. If the box is not square, the circle will be drawn in the middle of the box with a diame-
ter equal to the smaller of the rectangular dimensions.

 Starting point
This field is not used to create a circle.

 Ending point
This field is not used to create a circle.

 Center, radius, point


Enter coordinates for circle center and any point to define the radius. Enter any other point on the radius to define
the limit of the arc. Points can be selected with the mouse or by keyboard entry.

 Box, radius, point


The center of the box defined becomes the center of the circle, and a working circle will temporarily appear
within the box boundaries. The circle will be created using the radius and extent points provided, regardless of
their location relative to the box or the working circle.

 Box, start, extent


Provide two diagonal points to define a box, followed by degrees that start the arc, and 360 for the extent. Click
on Apply to create the object.

 Start, middle, end


This functionality cannot be used to create a circle.
Click on Apply to create the object and on Close to cancel or close the dialog.

Coventor, Inc. March 23, 2010 D3-71


Section 3: Layout Editor Reference Version 2010

Creating a Circle from the Terminal Window


Enter arc -type circle -crp to create a circle when the center point and any point on the radius are known.
Enter points as prompted to create the object. Add the argument -layer and the name of the layer on which the
object will reside. If no layer is specified, the object will appear on the current layer.
If three points on the circumference are known, enter arc -type circle -three and provide points as
prompted to create the object.

Curve
A curve must have at least three non-colinear points. There is no curve icon. Curves are either of two types: path and
chord. They can be edited only through the cat:curve dialog window. To open the dialog (Figure D3-30), select Object
> Curve from the menu bar, or enter curve -ui on at the Command Line.

Figure D3-30 Dialog for Curved Chord Objects

 Object
An object identifier is assigned by the tool when the object is created. An existing curve may be modified by
selecting the Modify radio button to activate the Select button, then selecting the curve to be modified. Informa-
tion pertaining to the curve object selected will populate the fields in the dialog.

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
If chord is selected, the tool will connect the first and last points of the curve to close the object.

 Width
Leave blank for chord curves. This parameter applies to paths only. Any value entered will be ignored.

 Equation
This field is optional, but linear, trigonometric or quadratic equations may be entered to generate curved surfaces
or objects of various types. See “Equations and Equation Syntax” on page D5-31.

 Range
Enter the numerical range of values for the variable in the equation entered. If the object is not being generated
by an equation, leave this field blank.

 Coordinates
If an equation is not used, the two end points and two deflection points for the curve being generated may be
entered in this field. Points may also be entered by clicking on Select and using the mouse to select points in the
drawing area.
Click on Apply to generate the curve. Click on Close to cancel or close the dialog.

D3-72 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Curve - Path
To create a curved path, select Object > Curve from the menu bar to open the dialog that appears on page D3-72, then
select path as the type.

 Object
Object will be named after it is created.

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
Select path from the drop-down menu.

M
 Width
Enter any positive value to define the width. Tool defaults to 2.

 Equation
May be linear, quadratic or trigonometric. See “Equations and Equation Syntax” on page D5-31.

 Range
This is the range of values for the equation variable.

 Coordinates
Click on Select from the Coordinates field option, then use the mouse to click the coordinates for the curve.
Click on Apply to generate the object. Coordinates may be entered into the field using the following syntax: x1
y1,x2 y2,x3 y3,x4 y4.
Click on Close to cancel or close the dialog.

Coventor, Inc. March 23, 2010 D3-73


Section 3: Layout Editor Reference Version 2010

Path
A path is a set of drawn line segments with a width parameter (essentially a thick line). While the Polygon tool can be
used to draw any path, the Path tool allows polygons with many vertices to be built with fewer mouse clicks. Paths
are often used for connectivity in a design, providing an electrical connection between components. However, paths
can be used to create a polygon with uniform rectangular segments.

Path Icon
A toolbar icon is provided for creating paths. The icon has several menu options: flush endcap, extended end-
cap, rounded endcap, and rounded corners.
The Terminal Window will display a prompt for points on the path, which may be entered by clicking points in the
drawing area with the mouse, or by entering X,Y pairs at the prompt. Note that if the path is created by clicking points
in the drawing area, the running total of the path length is displayed beside the cursor as the path is being built. (To
turn this feature off, go to Tools > Options > Path length tooltip.)
To end the path, either click the right mouse button or press Enter on the keyboard without providing coordinates. The
path created will consist of connected linear segments defined by coordinates provided. (For information on curved
paths, see page D3-67.)

1. From the vertical icon column, click on the Path icon, located directly below the Rectangle icon.
2. When prompted to Enter point, define a starting point for the path with a mouse click. The coordinate chosen
will be the center of the path width.
3. Continue to enter path vertices as prompted. Vertices may be entered by mouse clicks, or by entering coordi-
nates at the prompt. If vertices are selected with mouse clicks, the total length of the path is displayed beside
the cursor as the vertices are selected.
4. To finish, right click after placing the ending point for the path. The center of the path width is displayed as
part of the polygon.

Right click to ensure the polygon is closed. If it remains open, a path rather than a polygon will be created in the
model, and that portion of the design will not be rendered when the solid model is built.

The path width defaults to 1 unit. This value may be changed by selecting Object > Path from the menu bar. Once a
new width is set, the value is retained with the library when the file is saved.

D3-74 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Path Dialog
To create a path object using the dialog (Figure D3-31), select Object > Path from the menu bar, or enter path -ui
on at the Command Line.

Figure D3-31 Path Dialog

M
 Object
Selecting the Modify radio button will activate the Select button. Any path in the open cell may then be selected
with the mouse, and information specific to that path will populate the fields in the dialog. If an item selected is
not a path, an error message will display. When the tool is in Create mode, this field remains empty.

 Layer
The layer name may be selected from the drop-down list of layers.

 Width
The dimension is defined as twice the distance from the centerline to either extent. The default width is 1.

 Type
The flush, round, extend, and corner options define the characteristics of angles and endpoints of the object.

 Coordinates
Enter coordinate pairs. Vertices may be entered by selecting points in the drawing area with the mouse, or by
keyboard entry into one of these fields. Each Coordinate field can hold a maximum of 20 coordinate pairs.
Click on Apply to create the object.

Creating a Path from the Terminal Window


Enter either path or path -type ($) at the Command Line, replacing the variable with any of the following
options: flush (flush endcap), extend (extended endcap), round (rounded endcap), or corner (rounded cor-
ners).
The default width of a path is the last path width used, or 1 if no value has been previously provided. This value can
be changed, either before or after the path is created. Example:
path -type round -width 2
Enter path points as prompted. End the path by pressing the Enter key without providing any coordinates. The com-
mand setwidth -ui on opens a dialog through which the width may be set.

Coventor, Inc. March 23, 2010 D3-75


Section 3: Layout Editor Reference Version 2010

Pie
Pie Icon
The icon drop-down menu provides two options: Pie:center, radius, extent and Pie:three points.

Pie Dialog
Pie-shaped objects are created using the cat:arc dialog. To open this dialog, enter arc -ui on at the Command
Line.

Figure D3-32 Arc Dialog for Pie Objects

An object name is assigned when the object is created. This name can be entered here to retrieve the object for modi-
fication.
The layer and arc type are selected from drop-down option menus. This object can be defined by a center point,
radius, start angle, and extent. Pie-shaped objects have no width, so any input in the width field will be ignored. The
unit of measure for the radius is microns; angles are expressed in degrees and are measured counterclockwise.
Some or all of the following fields may be used in place of or in addition to the information already described:

 Bounding box
If a bounding box is used to modify an existing pie, the object will be distorted. Similarly, if the pie is created
using a start angle, an extent angle, and a rectangular bounding box, the object created will be elliptical to the
extents of the angles used.

 Starting Point
Enter coordinates with keyboard or mouse.

 Ending Point
Enter coordinates with keyboard or mouse.

 Center, radius, point


Enter coordinates with keyboard or mouse.

 Box, radius, point


Define four points with keyboard or mouse. The first two non-orthogonal points define the diagonal of a rectan-
gle within which a circle or ellipse is inscribed. The third point may be anywhere except in the center of the

D3-76 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

defined rectangle. A line from the center to the third point (extended to the circle or ellipse if necessary) defines
the start angle. The fourth point defines the extent of the arc.

 Box, start, extent


Provide rectangle coordinates, start angle, and number of degrees counterclockwise from the start angle.

 Start, middle, end


Any three points selected define the arc.
Click on Apply to create the object.

Creating a Pie-Shaped Object from the Terminal Window


To create a pie object when the center point, radius, and extent are known, enter arc -type pie -crp at the
Command Line, then provide the defining points as prompted.

M
If three points on the arc are known, enter arc -type pie -three and enter the points as prompted. When
prompted for a point, the location can be selected using the mouse. The drawing tool will enter the points and create
the object.

Polygon
Polygons can be created in several ways. The layer should be selected first, but the polygon can be moved to a differ-
ent layer after it is created. (See “Move an Object” on page D3-102).

Polygon Icon
To build a polygon:

1. Along the left side of the interface, find and click on the Polygon icon, located directly above the
Rectangle icon.
2. A prompt to Enter point will appear at the Command Line. Using the mouse, click sequentially on each ver-
tex.
3. Each click generates an Enter point prompt. Draw the polygon by clicking on vertices.
4. To close the polygon, either click on the initial placed vertex, or right click after three non-linear points have
been selected. The right click commands the Layout Editor to automatically connect the first and last points
selected. The default software settings cause all completed line segments to be either orthogonal or at 45
degrees.
This tool builds rectangles when all four vertices defining a rectangle are provided. The Degree Input icon is above
the Polygon icon on the vertical toolbar and can be set to build polygons with angles other than 45 or 90 degrees.

Changing the Input Mode


If the polygon will have angles other than 45 and 90 degrees, click on the Change coord input mode from 45/90 to all
angle icon activate the all-angle functionality, or enter inputmode -all at the Command Line.

Coventor, Inc. March 23, 2010 D3-77


Section 3: Layout Editor Reference Version 2010

Polygon Dialog
To create a polygon from a dialog, select Object > Polygon from the menu bar, or enter polygon -ui on at the
Command Line.
Either of these actions will open the dialog shown below:

 Object
Select the Modify radio button to activate the Select button. Any polygon in the open cell may then be selected
with the mouse, and information specific to that polygon will populate the fields in the dialog. If an item selected
is not a polygon, an error message will display. When the tool is in Create mode, this field remains empty.

 Layer
The layer name may be selected from the drop-down list of layers.

 Coordinates
Enter coordinate pairs. Vertices may be entered by selecting points in the drawing area with the mouse, or by
keyboard entry into one of these fields. Each Coordinate field can hold a maximum of 20 coordinate pairs (num-
ber adjusted using the drop-down menu above the fields.

Terminal Window
To create a polygon from the Terminal Window, enter the command polygon at the Command Line. Enter coordi-
nates as prompted. Close the polygon by either entering the first coordinate pair, or by pressing the Enter key without
providing any coordinates.

D3-78 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Rectangle
A rectangle is defined by the coordinates of any two opposite corners. All rectangles are created with horizontal and
vertical lines, but may be rotated to any angle after they are created. If rotated in increments of 90 degrees, they
remain rectangles. If rotated to any other angles, the tool identifies them as polygons.

Rectangle Icon
A rectangle is most easily created using the toolbar icon:

1. From the vertical toolbar on the left side of the canvas, select the Rectangle icon.
2. A prompt to Enter first point will appear at the Command Line. With the mouse, click on one of the two
opposite corners that will define the rectangle.
3. A prompt to Enter second point will then appear at the Command Line. With the mouse, complete the rectan-

M
gle by clicking on the opposite corner.
The keyboard may also be used to enter coordinate information instead of placing coordinates with the mouse. Enter
coordinates as prompted in the Command Line. Responses to command prompts for coordinates can be made by typ-
ing in the X and Y values in any of these formats:
 with a comma: 247,53
 with a comma and space: 247, 53
 with a comma, space, and parentheses: (247, 53)

When using the keyboard number pad to enter coordinates at the Command Line or in the Terminal window, note
that the Layout Editor will not recognize the first coordinate if it is negative (preceded by a minus sign). The minus
(-) key on the number pad is programmed to zoom out. As an alternative, use the minus key from the top row of
keys, or to use the number pad to define a negative X value, enter a space before entering a minus sign.

The Rectangle dialog can be used to create a rectangle by means other than inputting the corner values. To open Rect-
angle dialog, select Object > Rectangle, or enter rectangle -ui on at the Command Line.
From the dialog, a new rectangle can be created or an existing rectangle can be modified. The Input Mode allows the
user to select a method for creating a rectangle, which is explained in more detail below.

 Object
This field is inactive for creation, but is activated if Modify is selected. To modify an existing rectangle, select the
rectangle by clicking with mouse or entering coordinates. The tool will select the rectangle closest to the coordi-
nates provided, unless the point selected is within an object that is not a rectangle.

 Layer
Select the layer name from the drop-down list of layers.

 Input Mode
This option allows the user to create a rectangle using Corners, Relative, or Center. Corners is the default
method, and if selected, the user selects any two diagonal points to create the rectangle. If Relative is selected,
the user selects a starting point, a delta x, and a delta y; the delta values can be negative. If Center is selected, the

Coventor, Inc. March 23, 2010 D3-79


Section 3: Layout Editor Reference Version 2010

users selects a center point, a width, and a height.

 Rectangle
This field allows the user to input the values needed to create the rectangle. The required input for this field is
determined by the Input Mode selected. If Corners is selected, the user enters X, Y coordinates of any two diag-
onal points. With this option, the user can also coordinates using the Select button to the right of the Rectangle
field. If Relative is selected, the user enters the X, Y coordinates of the starting point, dx, and dy. If Center is
selected, the user enters, the X, Y coordinates of the center point, and the width and height values.
Note that pairs should be separated by a comma, and each value must be separated by a space.
Click on Apply to create the object or effect modifications. Click on Close to close the dialog.

Creating a Rectangle Through the Terminal Window


To create a rectangle using the Terminal Window, enter the diagonal coordinates using the following syntax:
rectangle x1 y1 x2 y2
By default, the rectangle command uses the corner input mode. To create a rectangle using one of the other
modes, enter the mode value of relative or center. For example,
rectangle -mode center 0 0 25 20

Shape
A shape is an object that is created by combining two or more simpler objects using Boolean operators. There is no
icon for directly creating shapes. (See “Boolean Operations” on page D3-109.)

Creating Shapes from the Menu Bar


With no objects selected, select Modify > Boolean and one of the Boolean operators. Follow the prompts to select the
component objects. If the objects being combined reside on different layers, the second object selected will be moved
to the layer on which the first object resides. Objects that appear in the cell by reference are not selectable.
Once an object becomes part of a shape, it cannot be modified by moving points or edges, or changing the radius or
extent of its component arcs or curves. The length operation does not work on shapes, even if all the component parts
were paths before they were combined.
To move the object to a different layer, select the shape and then do one of the following:
select Modify > Object from the menu bar, or
Enter shape -ui on at the Command Line.
Either of these actions will open the dialog. A new layer may then be chosen for the shape. Click on Apply to make
the change.
After the shape is created, it can be modified using additional Boolean operations. It can also be magnified without
affecting proportion. Oversizing may create unpredictable distortion. Shapes may be moved, flipped, copied, or
rotated like any other object.

Creating Shapes Through the Terminal Window


Clear the selection list by entering unselect -all at the Command Line.
Then, enter boolean -op nnn, where nnn = {and, or, xor, not}, representing the particular Boolean operator to be
used.
Follow the prompts to select the objects to be merged. The shape that results will reside on the same layer as the first
object selected. Objects may be selected by mouse, or by entering coordinates for points on or near the target objects.

D3-80 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Torus
A torus is a curved path that follows an arc. To create a torus, select the Torus icon , or enter
arc -type path -crp at the Command Line.
The tool will prompt for a centerpoint, a point on the radius, and a point to end the arc. The torus will be drawn coun-
terclockwise from the second point to the third point provided. The default path width is 2. The torus is displayed on
the current layer when the data input is complete.

Creating a Torus from the Arc Dialog


To create a torus using a dialog, select Object > Arc from the menu bar, or enter arc -ui on at the Command Line.

Figure D3-33 Arc Dialog for Torus Objects

M
 Object
An object identifier is assigned by the tool when the object is created. An existing text object may be modified by
selecting the Modify radio button to activate the Select button, then selecting the text object. Information pertain-
ing to the text object selected will populate the fields in the dialog.

 Layer
The layer name may be selected from the drop-down list of layers.

 Arc type
To create a torus, select path from the four options.

 Width
This parameter is required. Width will default to 2 if no value is provided. An error message will appear if the
value entered exceeds twice the radius.

 Center point
This parameter is required. Coordinates may be entered manually or with the mouse.

 Radius distance
This parameter is required. Any positive value can be provided.

 Start angle
A start angle must be provided to define the object. It is measured in degrees counterclockwise from the X axis.

Coventor, Inc. March 23, 2010 D3-81


Section 3: Layout Editor Reference Version 2010

 Extent angle
This angle is measured in degrees counterclockwise from the start angle.

 Bounding box
Defining a bounding box around an existing torus will change the shape of the torus.

 Starting point
If the Start angle and Extent angle are either unknown or dependent on pre-selected points, those points can be
provided in this field and the Ending point field. The Start angle and Extent angle will be calculated based on
these inputs.

 Ending point
A starting point and an ending point may be provided instead of an extent angle. Using a start angle and ending
point, or extent angle with a starting point will not generate the object.

 Center, radius, point


Enter coordinates for three points. The tool will calculate and display arc when Apply is clicked.

 Box, radius, point


Enter four points. The first two points define a rectangle into which the arc will be inscribed. The third point
defines the beginning of the arc, and the fourth point defines the extent when the arc is struck counterclockwise.

 Box, start, extent


Enter two points to define a rectangle, followed by a start angle and an extent angle. Click on Apply to create the
object.

 Start, middle, end


Enter three points. The tool will create the arc path when Apply is clicked.
For any method, the tool calculates the center point, radius, start angle, and extent angle if these parameters are not
provided when the object is created. From the dialog, select Modify, and then select the object to view or modify this
information.

Creating a Torus Through the Terminal Window


To create a torus using the Terminal Window, enter arc -type path -crp and then enter as prompted the origin
point and two additional points that will define the curve. The width defaults to 2. For a width of other than the
default value, add the argument -width #, as in the following example:
arc -type path -crp -width 3
The curve is drawn counterclockwise around the origin from the second point to the third. Endcaps will be flush.

D3-82 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Text Objects
This option creates text for annotation purposes. If output to another file format, the text will remain text; it will not
be output to a mask. To output text as a mask, use the Generators > General > Text function; see page D3-91 for
more information.
All text can be placed on a separate layer and then turned off to make only drawing objects visible (see “See the Last
View” on page D2-13).

Creating Text Using a Dialog


1. To open the Text dialog:

From the left side vertical column, select the Text icon or
select Object > Text from the menu bar, or

M
enter text -ui on at the Command Line.

2. In the dialog window, enter the desired text in the Text field. The other fields may be left blank.
3. Click on Apply.
4. Pick a destination reference point. A white outline of the object will follow the mouse movement until the
destination coordinate is selected.
5. Additional text objects can be created and placed as long as the text dialog window remains open.
6. When finished, click on Close.
The Text dialog options are explained below:

 Object
An object identifier is assigned by the tool when the object is created. An existing text object may be modified by
selecting the Modify radio button to activate the Select button, then selecting the text object. Information pertain-
ing to the text object selected will populate the fields in the dialog.

 Layer
The layer name may be selected from the drop-down list of layers.

 Text
All text characters can be used except double quotation marks. Fonts and styles are not available.

 Magnification
Values between 0 and 1 will reduce the object size. Values greater than 1 will increase the object size. Default
value is 1 (no magnification).

 Angle
Enter value in degrees to override system default value of 0.

Coventor, Inc. March 23, 2010 D3-83


Section 3: Layout Editor Reference Version 2010

 Mirror vertically
Default is False. The text will appear flipped vertically if True is selected.

 Location
A center point may be provided. If a point is not provided, the text will appear in the drawing area anchored to
the cursor when Apply is clicked. The text will be placed with a subsequent mouse click.

Creating Text Through the Terminal Window


Simple text objects can be created directly through the Terminal Window, using the following syntax:
text -layer aaaa -text {nnnn} x y
where aaaa is the layer on which the text will appear, nnnn is the text that will appear in the drawing area, and x, y are
the coordinates of the object centerpoint. If the layer is not specified, the text will appear on the current layer.

3.5.5: Snap Points


The snap feature allows users to place objects with accuracy by anchoring to snap points of existing objects. For
instance, if a circle is to be built centering on a vertex of a polygon, this feature will snap the cursor to the vertex.
Similarly, a circle or curve may be connected to a polygon at a snap point, or a path may be constructed tangential to
a curve. This feature works with any object having snap points. It is accessed from the icon.
The snap feature is a cursor control function. It controls where the cursor gets placed when in any coordinate entry
command (for example, when drawing an object). When this function is enabled and the tool is in a coordinate entry
mode, the snap to candidate points are highlighted with a small X that identifies the snap point nearest to the cursor
position. If the tool is not in a coordinate entry mode, the command will have no visible effect.

Setting Snapmode Options


The snap feature has two options: Snap Mode and Snap Cursor. Snap Mode highlights candidate points that the cur-
sor would snap to. Snap Cursor snaps the cursor to the closest valid snap to point. Note that Snap Mode also has to be
selected for the Snap Cursor option to work. The two options are governed by either a command or the drop-down
options on the toolbar icon. With either option, the snap to candidate is always highlighted with a small yellow X.
The snap to candidates are calculated for the given view window and are recalculated whenever the window changes
(via pan or zoom functions) and also whenever any of the choices for snap to points are changed. These changes are
made through the Snap Browser, shown below.

Figure D3-34 Snapmode Options

D3-84 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Refsrename
The refsrename command is used to change reference placements when the referenced cell has been renamed.

The tool searches every cell in the library and makes the replacement. This feature is useful when making a change to
a cell that is referenced in several places in the project hierarchy.

M
Object Properties
Info and Info Verbose
Limited or more extensive amounts of information pertaining to objects can be obtained using Info commands. To
obtain limited information on an object, select Object > Info from the menu bar, or enter query -verbose off
at the Command Line. Select an object as prompted. The Terminal Window will then display the object type and
other information, depending on type of object, such as layer, and number of points.
For more extensive information, select Object > Info (verbose) or enter query -verbose on at the Command
Line. Select an object as prompted to obtain type of object, layer, origin, radius, start angle, extent, box origin, height
and width.

Adding and Flattening Curves


A polygon may be converted into a curved shape. Select the polygon, then enter addcurve -ui on at the Com-
mand Line to open the cat:addcurve dialog.

Figure D3-35 Add Curve Dialog

 Automatically Fit curve to points


This feature defaults to False, which will create curves when the angle is less than 10 degrees.

 Max curvature
Sets a value for the maximum number of degrees to be curved. Angles in the polygon that exceed this parameter
will not be curved.

 Max error
Some approximations are built into the conversion, but these are usually insignificant. System default value is 1,
which is usually sufficient.

 Start, middle, end


A portion of a polygon may be converted to curved surfaces. Click on Select and then choose the first endpoint,
vertex, and second endpoint of the polygon segment to be converted. These points can also be directly entered

Coventor, Inc. March 23, 2010 D3-85


Section 3: Layout Editor Reference Version 2010

into the field using the keyboard.

 Object location
Click on Select and then click on the object to be converted.
Click on Apply to make the conversion or on Close to cancel and close the dialog. For examples, see “Converting
Polygons to Curves” on page D5-10.

Curve Flatness
True curves must be converted into polygons for formats that do not support true curve representations. Curve flat-
ness is the maximum allowable distance between the original curve and the segmented approximation of the curve
when it is drawn as a polygon or converted to a polygon. The default flatness factor is 0.1. To open the dialog, select
Tools > Options > Curve flatness from the menu bar, or enter curveflatness -ui on at the Command Line.
For examples, see “Curve Flatness” on page D5-8.

Filleting
Filleting allows for the fact that foundry processes will not necessarily produce clean, sharp angles. To provide curva-
ture and make the generated models more accurate, corners can be filleted with radii selected by the user. Selecting
the Modify > Fillet option from the menu bar opens a dialog:

Select an object and corner (or all corners), and provide a positive radius value. To select an object, use the mouse to
click on it.

Figure D3-36 Examples of Filleted Corner

No fillet radius = 5 radius = 15

Parts cannot be meshed with a Manhattan mesh if filleting is used.

To remove a curved segment:


1. Use cat:fillet -remove.
2. Click on the object and segment to be replaced.

D3-86 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

The software will extend the adjoining line segments to the point of intersection. Note that the curve did not have to
be created with the fillet function for the fillet -remove command to work.

3.5.6: Object Browser


The Object Browser is a window that opens from the Layout Editor menu bar. It allows control of the display attri-
butes of objects in the open cell. Turning these attributes on or off can display normally hidden information about an
object, or can clean up the display to make it easier to find out more about the design.

Access the Object Browser


To open the Object Browser window, select Edit > Object types > Properties or View > Object types > Properties, or
enter objbrowser at the Command Line.

M
Figure D3-37 Object Browser Showing Default Settings

The Object Browser, shown in three views in Figure D3-37, includes eight different types of objects and may list
more if the library includes generators. Each object has its own set of viewing and selecting attributes that can be
turned on or off. Figure D3-37 displays the default object settings.
Every object type has attributes for visibility and selectability. Just as you can make certain layers visible or select-
able, you can do the same with objects. For example, text that appears on several different layers can be turned off by
unchecking its Visible attribute. Other objects on the same layers are not affected.
The remaining object types require more explanation. Following is a summary of their properties, including some
examples.

Coventor, Inc. March 23, 2010 D3-87


Section 3: Layout Editor Reference Version 2010

VisibleCoords
This object property displays a visible cross at each vertex for a polygon (including rectangles and shapes) and at
each curve control point for circles, curves, arcs, and shapes.
Examples are shown in Figure D3-38.
Figure D3-38 Example of Visible Coordinates for a Polygon and Circle

DrawAsPolygon
This object property is available for arcs, shapes, and curves and allows true curves to be drawn with approximated
straight line segments. This view can be useful when exporting to GDS or CIF formats because these formats convert
curves into segments. The coarseness of the curve approximation is controlled by the Curve Flatness parameter
entered by the user. These topics are covered more thoroughly in “Arcs” on page D5-6.

VisibleOrigin
This object property is available for text, cell and array references. It displays a visible cross at the origin of each ref-
erenced object. Viewing the origin can be helpful in choosing a placement coordinate for other occurrences of the
same cell reference or for selecting reference cells.

Figure D3-39 Example of Visible Origins for Several Cell References

D3-88 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

SelectableOrigin
This object property is available for cell and array references. Disabling origin selectability prevents the cell or array
reference from being selected when attempting to select other objects in the vicinity. This feature is also useful when
attempting to select several objects. SelectableExtents is another option to control selectability (see below).

VisibleCenterLine
This object property is available for paths. Disabling the property removes the path center line.

Figure D3-40 Example of Path Center Line Visibility

M
VisibleExtents
This object property is available for text, cell and array references. When enabled, it turns on a surrounding white
rectangle that bounds the edges (the extents) of the object.

SelectableExtents
This object property is available for text, cell and array references. When disabled, it allows easier selection of other
objects that may be close to the extent boundary of the text, cell ref, or array ref.

VisibleName
This object property is available for cell and array references. When enabled, it makes the cell or array reference
name available. It is especially useful when viewing cells to determine which cells have placed references. The dis-
play is usually clearer if the object visibility for the references is turned off. An example of the Mirror_Array cell
showing three placed cell references with cell ref visibility turned off is shown in Figure D3-41.

Figure D3-41 Cell with Visible Ref Names

Coventor, Inc. March 23, 2010 D3-89


Section 3: Layout Editor Reference Version 2010

Object Visibility and Selectability


To set the object visibility and selectability attributes through the Object Properties dialog, enter objprops -ui
on at the Command Line.

Figure D3-42 Object Properties Dialog

 Save settings
The results of various settings may be saved without modifying the library settings. Click on Save to overwrite
previous settings.

 Restore settings
Click on Restore to return to library file settings.

 Class name
Enter the name of an object class {Arc, Arrayref, Curve, Path, Polygon, etc.} or the name of a generator.

 Attribute name
Attributes are Selectable and Visible. These attributes reside in the file and will be carried from cell to cell within
the file. Selectability settings will not be superimposed or carried over if the current file is closed and another file
is opened, or if a new file is created.

 Attribute value
All objects in the library belonging to the Class selected will have the selected attribute if True is selected. That
attribute will be turned off if False is selected.
Click on Apply to make attribute changes. Click on Close to cancel or close the dialog.

Visibility and Selectability Control


Selectability and Visibility of object types and generated objects can also be controlled through the View > Object
types options on the menu bar, or at the Command Line using the following syntax:
for object visibility: objprops (object type) Visible (true or false)
for selectability: objprops (object type) Selectable (true or false)
These commands work for Arc, Arrayref, Curve, Path, Polygon, Reference, Shape, and Text objects.
These attributes can also be controlled through the Object Browser. (See “Object Browser” on page D3-87.)

Restoring Previous Settings


To restore the last saved object property settings:
select Edit > Object types > Restore or View > Object types > Restore from the menu bar, or
enter objprops -restore at the Command Line.

D3-90 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Saving New Settings


To save new Object Property settings:
select Edit > Object types > Save or View > Object types > Save from the menu bar, or
enter objprops -save at the Command Line.

3.5.7: Creating Objects Using Generators


Generators
Numerous generators are included with the drawing tool. These generators are divided into three groups: Fluidics
Generators, MEMS Generators, PolyMUMPS Generators, and Custom Generators. There is also a text generator and

M
a set of tools for building customized generators using Tool Command Language (Tcl); see page D5-35 for more
details.
When a generator is selected, a dialog unique to that generator will open. Required dimension specifications are
entered in dialog fields, and the object is then generated by clicking on the Apply button. Note that not all fields that
appear in the generator dialog are required. For example, the fluidics generator Channel has a field for Origin, but the
Help information available above the fields states that "the first point along the center line is used as the origin;" so
any coordinates input into the Origin field would be ignored. Review the information in the Help pane of the dialog to
determine which fields are required.

Layout Extraction
Netlisted files from Architect may be opened from either the Function Manager or from within the Layout Editor.
When these files are opened, information pertaining to the structures of the schematic is extracted and used by the
layout generators to create the 2-D layout.

In previous versions of CoventorWare, users generated the fab cell manually. Now it is created automatically by the
software, where required in the layout.

Generators Without Layout Extraction


Generators are used mainly for layout extraction from Architect. However, if they are used in the Layout Editor inde-
pendently of Architect, and the generators contain negative spaces (e.g. holes in a plate), there are additional steps the
user must take to ensure the correct layout. Contact Coventor support for more details.

Text Generators
The Generators > General > Text option creates an instance of a generator that is really a collection of polygon
objects. While still in the Layout Editor database, it acts like a "text" object in that it has the same attributes. When
the Layout Editor database is converted to an external format, like GDS, the generator gets "flattened" and the GDS
file contains polygons. The generator produces shapes that can be put on the mask and actually be built. The shapes
are arranged so that they form letters that can be read.
The text generator dialog has a browser that allows the user to select a font and has a field for specifying font size.
The default font is Arial.
Note that for an anisotropic etch, many font types may not be suitable because all text will be etched away unless the
etch depth is small compared to the character width. The user has the option of creating a unique font that would not
be etched away; for example a font composed of small circles or squares. These fonts could be created in a drawing
program such as CorelDraw® and saved as a true-type font. User-created fonts can be added to the OS fonts and then
accessed via in the font browser in the text generator dialog.

Coventor, Inc. March 23, 2010 D3-91


Section 3: Layout Editor Reference Version 2010

3.5.8: Verifying a Layout


The Layout Editor has a checklayout function that allows the user to verify that the 2-D layout conforms to a
foundry’s design specifications. This feature can also be used to eliminate small features that may cause problems
when creating a 3-D model and mesh of the design. To access this functionality, select Tools > Layout Checks >
Check Layout or enter checklayout -ui on at the command prompt. The dialog shown below will open. From
this dialog the user can select one or two layers to check various attributes of the layout.

 Check
This option allows the user to select the dimension to be checked. The user selects one option, sets the minimum
value, then clicks on Apply. The explanation of each dimension is explained below.
 Spacing: Defines the minimum spacing between two features in the same layer ( Input Layer1 and Input
Layer2 must be set to the same layer) or between features in different layers.

Figure D3-43 Minimum Spacing

a ≥ amin where amin is the minimum spacing

 Width: Defines the minimum width between two boundaries. This option can only be applied to one layer.

Figure D3-44 Minimum Width

b ≥ bmin where bmin is the minimum width

D3-92 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 Notch: Defines the minimum spacing between two edges on a single shape. The design rule for the minimum
notch is often the same as the design rule for the minimum spacing.

Figure D3-45 Minimum Notch Spacing

c ≥ cmin where cmin is the minimum notch

M
 Edge Length: Defines the minimum distance allowed between two successive points (edge length).
 Point-in-line: Checks for unnecessary points. For example, consider two succeeding line segments in a poly-
gon that have the same slope: 0,0; 5,0; 10,0. The point 5,0 is in the the from 0,0 to 10,0 and serves no pur-
pose. This check finds such points, and if the Remove Point option in the lower part of the window is set to
True, it will remove them. This option needs no Minimum Value setting.
 Enclosure: Defines a minimum distance between the boundary of Layer1 and the boundary of Layer2, where
Layer1 encloses Layer2, as shown below:

Figure D3-46 Minimum Enclosure

d ≥ dmin where dmin is the minimum enclosure

A minimum enclosure can also be defined when the boundary of Layer1 does not wholly enclose the bound-
ary of Layer2, as shown below:

Figure D3-47 Partial Enclosure

 Inside Overlap: Defines the minimum amount that a Layer2 feature must overlap a Layer1 feature.

Coventor, Inc. March 23, 2010 D3-93


Section 3: Layout Editor Reference Version 2010

Figure D3-48 Minimum Inside Overlap

Layer2 overlaps inside Layer1


e ≥ emin where emin is the minimum overlap

 Outside Overlap: Defines the minimum amount that a Layer2 feature must extend beyond a Layer1 feature:

Figure D3-49 Minimum Outside Overlap

Layer2 extends outside overlapping Layer1


f ≥ fmin where fmin is the minimum outside overlap

 Self-intersection: Checks each object shape on the specified layer for self-intersections. A self-intersection is
defined as when two lines of the same shape cross each other. This check does not require a Minimum Value
setting.

 Minimum Value
The user enters the minimum tolerance value for the selected Check dimension. The Spacing, Width, Notch,
Edge Length, Enclosure, Inside Overlap, and Outside Overlap require that this value be set. Any value less than
the minimum value will be designated as an error. The minimum value for each dimension is usually determined
by foundry design specifications.

 Input Layer1
Select a layer from the drop-down menu. If the Check attribute can only be applied to one layer, select a layer
from this field.

 Input Layer2
Select a layer from the drop-down menu. This option must be set if the Check attribute is used to verify a dimen-
sion between two layers. In the case of the Spacing attribute, the Layer2 field can be set to the same layer as in
the Input Layer1 field, and the software will check the spacing on that layer.

 Output Layer
The software will output errors to the layer specified in this field. The Layout Editor does not specify the errors
on the layer itself, but creates an error layer that displays the problem features of the layout. To view the errors,
hide all layers except the layers being checked and the designated error layer.

 Clear previous errors


If set to True, the software will delete any errors on the error layer before checking another attribute. If set to
False, the software will add errors to the existing error layer without deleting errors from previous checks.

The Undo function can also be used to clear previous errors on the error layer.

D3-94 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 Flatten
If set to True (recommended setting), the software will check all objects through the hierarchy as if the cell had
no hierarchy. This function does not alter the original layout in anyway; the software creates a temporary version
of the layout and flattens the hierarchy only for the purpose of checking the layout. If set to False, only the top-
level data in the open cell will be checked.

 Merge
If set to True (recommended setting), the software merges touching shapes on the same layer into a single shape
before running the check. This function does not alter the original layout in anyway; the software creates a tem-
porary version of the layout and merges the shapes only for the purpose of checking the layout. This setting helps
to avoid false errors caused by unmerged edges.

 Remove Point

M
This option become active if the Point-in-line check is selected. If set to True, the check will remove any unnec-
essary points. If set to False, the unnecessary points will only be marked.

 Check Region
If set to Window, the software allows the user to specify a rectangular region to limit the shapes being checked.
When the Window option is selected, the Select button underneath becomes active. The user can enter the coordi-
nates in the field beside the Select button or can use the mouse to draw the rectangular region. The default setting
is Cell.

Coventor, Inc. March 23, 2010 D3-95


Section 3: Layout Editor Reference Version 2010

Batch Rule Checks


The Check Layout dialog can only execute one check at a time, but the Layout Checks/Batch Rule Checks function
allows the user to run a series of design rule checks by specifying the layout check commands in a file, and then exe-
cuting that file. The user can create the file in any text editor and save the file with a .rs extension. To get the correct
command syntax, the user can copy and paste the commands from the Layout Editor terminal window. Below is a
sample file that could be used for a batch rule check:

# FIXED0 Rule S2/2 Minimum space : 2.5um

cat:layercreate -mask Same-as-layer -subtract off -dark off -color red -fill none -gds
L103D0 -igesio on -gdsio on -cifio on Error_Rule_E4

cat:checklayout -type enclosure -value 2.0 -in1 FIXED0 -in2 ANC1 -out Error_Rule_E4 -
clear on -flatten on -merge on -option cell

# DIMP1 Rule Sm3 Minimum feature size/spacing : 3.0um

cat:layercreate -mask Same-as-layer -subtract off -dark off -color red -fill none -gds
L104D0 -igesio on -gdsio on -cifio on Error_Rule_Sm3

cat:checklayout -type width -value 3.0 -in1 DIMP1 -out Error_Rule_Sm3 -clear on -
flatten on -merge on -option cell

# DIMP1 Rule Sm3 Minimum feature size/spacing : 3.0um

cat:checklayout -type spacing -value 3.0 -in1 DIMP1 -in2 DIMP1 -out Error_Rule_Sm3 -
clear off -flatten on -merge on -option cell

# MECH1: Rule S6 Minimum line feature size / spacing: 3.0um / 3.0um

cat:layercreate -mask Same-as-layer -subtract off -dark off -color red -fill none -gds
L105D0 -igesio on -gdsio on -cifio on Error_Rule_S6

cat:checklayout -type width -value 3.0 -in1 MECH1 -out Error_Rule_S6 -clear on -flatten
on -merge on -option cell

# MECH1: Rule S6 Minimum line feature size / spacing: 3.0um / 3.0um

cat:checklayout -type spacing -value 3.0 -in1 MECH1 -in2 MECH1 -out Error_Rule_S6 -
clear off -flatten on -merge on -option cell
The Batch Rule Check menu has these submenus:
 Single Step: This option pauses the batch process after the execution of each check to report errors and debug-
ging information for the executed check. If no error was found, the batch process will not stop and will con-
tinue to the next check.
 Run Check: This option opens a file browser for specifying the .rs file that contains the design check com-
mands. When the user selects the file and clicks on OK, the batch check begins.
 Delete Error Layers: Deletes any error layers created during the batch check.

Check Accuracy
The library precision value (see page D3-22) and the curve flatness setting (see page D3-86) both affect the accuracy
of the checks if any of the objects are shapes containing true curves. The flatness value (default = .01) is used when
the curves are converted to polygon line segments. This value specifies the maximum distance allowed between each
of the line segments and the true curve. This means that a very small value produces a polygon with a very large num-
ber of coordinates.

D3-96 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

The precision value (default = .001) is used to round off coordinate values when they are converted from double pre-
cision values to integers. For example, 1.0 and 1.0004 will both become the integer value 1000. Each object’s shape is
broken up into two lists of trapezoids (rectangles when the line segments are horizontal or vertical): one for the hori-
zontal line segments and one for the vertical line segments, with angled lines appearing in both lists. The basic spac-
ing and width checks are performed on these lists. The conversion to integers is done for performance reasons.

Small Error Vectors


The Check Layout can often produce very small error vectors that are not visible at normal zoom levels. In these
cases, do the following:
1. Select Edit > Select by layer/name/type.
2. In the dialog that opens, enable the By Layer check box, select the error layer, and click on Apply.
3. In the bottom horizontal toolbar, click on the drop-down menu arrow on the right side of the Zoom Window

M
icon (clear magnifying glass). At the bottom of the menu are three items: Zoom to Selected (all selected
items), Zoom to Next (first or next selected object), and Zoom to Previous (previous selected object). Use the
Next and Previous options to move back and forth between each object in the Select list.

3.5.9: Selecting Objects


Before editing objects, the user has to select them before executing the edit command, or perform the selection during
the edit operation in response to the command line prompt. Once an object is selected, it can be modified in several
ways.

Select Objects for Editing


To edit an object, the object to be modified must first be selected. To select a single object, left click with the mouse.
To select multiple objects, hold the Shift key while clicking. If for any reason the selection mode is not active, click
on the arrow next the to Select objects icon and choose Select objects.

Select Object Groups


1. From the vertical icon column, click on the arrow next to the Select objects icon.
2. Choose Select rectangular area or Select circular area.
3. Draw your rectangular or circular selection outline around the objects you wish to select. In general, an object
is selected when any of its control points are enclosed by the circular or rectangular area.
Note that Select objects outside rectangular area can be used to draw a rectangle around objects you do not want
selected.
To select all objects, from the menu bar click on Edit > Select All.
The Select icon executes Select Rectangular Area by default.
To select all selectable objects in the open cell:
select Edit > Select All from the menu bar, or
enter select -all at the Command Line.
To select by layer, name or object type:
select Edit > Select by layer/name/type, or
enter select -ui on at the Command Line.
This command opens a dialog that allows the user to filter selections. The user can select by layer, name, object type,
and/or object location.

Coventor, Inc. March 23, 2010 D3-97


Section 3: Layout Editor Reference Version 2010

The error message "No selectable objects found" will appear if there are no objects in the drawing area, if all select-
able objects are already selected, or if all objects are unselectable.
The Select Objects command will select only from visible objects. Deselecting from View > Object types will make
de-selected objects immune from the select -all command. However, if an object is selected and then made
invisible, it will still be an object in the Select List.

Select Area Options


This dialog sets the criteria of object selection. Note that the settings selected in this dialog are only applied if the
selection area is drawn using this dialog. For example, if you select Enclosure for the requirement, and then use the
Select rectangular area option from the Select icon menu, the tool will use the default Vertex requirement to deter-
mine if an object should be selected. But if you click on the Select button from within this dialog, then draw a rectan-
gle and click on Apply, the selector will only select objects that are enclosed within the rectangle.

 Requirement
Sets the tolerance for object selection. If Enclosure is selected, the entire object must be enclosed in the circular
or rectangular selection area to be selected. If Intersection is selected, a line from an object must cross through
the circular or rectangular selection area to be selected. If Vertex is selected, if any vertex of an object falls within
the circular or rectangular selection area, then that object will be selected (default setting).

 Circle
If set to True, the default selection area type is circular. If set to False (default), the default selection area is rect-
angular.

 Outside
If set to True, objects that are outside the circular or rectangular area are selected. If set to False (default), objects
that are inside the circular or rectangular area are selected.

 Rectangle or Circle
When the user clicks on the Select button and then draws the circle or rectangle on the canvas, the coordinates
are displayed in the field.

 Apply
If the user clicks on Apply, the selection area is then defined according to the criteria set in the dialog. The user
can draw the selection area and click on Apply or can click on Apply and then draw the selection area.

D3-98 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Select One or More Objects When Several Objects Overlap


When selecting objects that overlap or share common vertex locations, the Layout Editor determines the object to
select. After selecting an object, if the choice is not correct:
1. Press and hold the Shift key and click again in the same mouse cursor position. Two objects are now selected.
2. Continue until the desired object is selected (along with the others).
3. Release the Shift key then press and hold the Ctrl key, and click again in the same position. The Layout Edi-
tor now unselects the first object.
4. Continue clicking until only the desired object is selected (or until the desired grouping is selected).

The Undo function does not unselect an object that is selected by mistake. Instead, click on Edit > Unselect from
the menu bar.

M
Selecting Objects by Type
When objects, and particularly their defining points, are close together, or when a particular action is being performed
on all objects of a particular class, the action can be performed more easily if object selectability is first restricted.
Visibility and selectability of objects based on the layers on which they reside is easily done from the current layer
window and associated drop-down menu on the toolbar:

Figure D3-50 Toolbar Layer Drop-Down Menu

The icons to the left of each layer may be selected to make the layer visible/invisible and selectable/unselectable.
To set these constraints using the menu bar or Terminal Window commands, do the following:
To make all objects in the cell selectable, select Edit > Object types > All Selectable from the menu bar, or enter
selectable -on at the Command Line.
All objects in the open cell are then selectable.
To make no objects selectable, select Edit > Object types > None Selectable from the menu bar, or enter select-
able -off at the Command Line.
If the cell is closed and another cell in the same file is opened, no objects in the new cell will be selectable.
To add a selectable object to the Select List, select Edit > Select from the menu bar, or enter select at the Com-
mand Line.
The tool prompts for object selection, which can be done by entering object coordinates or by selecting the object
with the mouse.

Coventor, Inc. March 23, 2010 D3-99


Section 3: Layout Editor Reference Version 2010

Unselecting Objects
To remove selected objects from the Select List:
select Edit > Unselect from the menu bar, or
enter unselect at the Command Line.
The tool will prompt for an object selection, which may be done by clicking with the mouse, or by entering coordi-
nates that fall on or within the object to be unselected.
To clear the Select List:
select Edit > Unselect All from the menu bar, or
enter unselect -all at the Command Line.

Viewing and Selecting Objects by Layer


These features allow control of visibility and selectability of objects based on the layer on which the object resides.
To open the layerview dialog, enter layerview -ui on at the Command Line.

Figure D3-51 Layer View Dialog

 Layer list
Click on Browse to open the Layer Browser. Select layer names from the browser. The layer names will appear
in the Layer list field as they are selected.
Click on Apply. Objects residing on the layers selected will be the only objects visible. Click on Close to cancel.
To restore visibility of all layers:
select View > Layers > All Visible from the menu bar, or
enter layerview -on at the Command Line.
Either action will make all layers visible. To restore layer visibility to the previous saved settings:
select either Edit > Layers > Restore or View > Layers > Restore from the menu bar, or
enter layer -restore at the Command Line.
To activate just one or two layers in a large project, it may be more expedient to turn off all layers, then turn on the
layers desired. To make all layers invisible:
1. Select View > Layers > None Visible from the menu bar, or enter layerview -off at the Command Line.
2. Open the Layer Browser and click the V above the Visibility column. When no check marks are visible, no
layers will be visible.

Selecting Layers
To open the layerselect dialog, enter layerselect -ui on at the Command Line.

Figure D3-52 Layer Select Dialog

D3-100 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

 Layer list
Click on Browse to open the Layer Browser. Select layers to add layer names to the Layer list field.
Click on Apply to make the objects on the selected layers selectable. Click on Close to cancel or close the dialog.
To make all layers and their resident objects selectable:
select Edit > Layers > All Selectable or
enter layerselect -on at the Command Line.
To make all layers and their resident objects unselectable:
select Edit > Layers > None Selectable or
enter layerselect -off at the Command Line.
To save the new settings:

M
select either Edit > Layers > Save or View > Layers > Save, or
enter layer -save at the Command Line.

3.5.10: Copying and Pasting Objects


To copy and paste, first select an object or object group you wish to copy. Then do one of the following:
 from the upper row icon bar, select the Copy icon ,
 select Edit > Copy from the menu bar, or
 enter copy -clipboard at the Command Line

A copy of the selected object will then reside on the clipboard until either it is replaced or the application is closed. A
copy of the selected object will remain on the clipboard even if the library is closed and a different library is opened.
If the object’s layers do not exist in the new library, an error message to that effect will appear if a paste operation is
attempted.
To paste a copy of the clipboard contents into the open cell, do one of the following:
 click on the clipboard icon, then click in the drawing area to paste the object, or
 select Edit > Paste from the menu bar, or

 select the Paste icon , or


 enter copy -paste at the Command Line; then select a point in the drawing area by entering coordinates
or using the mouse, or
 enter paste -ui on at the Command Line and enter information through a dialog.

Then pick a destination point. As the mouse moves, a white outline of the object moves with it until a destination
coordinate is selected.
For easy multiple pastes, make sure the Repeat mode icon is activated (is on by default) from the toolbar.
As a single operation, select Edit > Copy & Paste from the menu bar, or enter copy at the Command Line. The tool
prompts to select an object, then prompts for a coordinate to paste a copy.

Coventor, Inc. March 23, 2010 D3-101


Section 3: Layout Editor Reference Version 2010

Copy Selected Layers


To copy layer information to another layer, select Edit > Layers > Copy. The dialog shown below opens:

 From Layer
Specifies the layer information to be copied. The field’s drop-down menu includes all the layers currently in the
cell.

 To Layer
Specifies the layer in which the layer information will be pasted. Note that the field’s drop-down menu only
includes layers currently in the cell; the field is not editable. If the user wants to paste the layer information into
new layer, that layer must be created before opening this dialog.

 Scope of Copy
Allows the user to specify if the layer information will be pasted into just the specified layer in the open cell
(This Cell option), if it will be pasted into layers with the same name in cells referenced by the current cell
(Nested Cells option), or if it will be pasted into layers with the same name in all cells in the open library (All
Cells option).

3.5.11: Modifying Objects


Move an Object
To move an object within a cell:
select Edit > Move from the menu bar, or
enter move at the Command Line.
Select an object as prompted, either by entering coordinates or by clicking with the mouse. The object selected will be
the one with a snap point closest to the coordinates entered. After selection, a prompt for the MOVE TO point will
appear in the Command Line. When coordinates are entered, the object relocates to the new position.
To move an object or several objects in any direction in increments equal to the working grid setting, select the object
or objects to be moved, then either
select Modify > Nudge from the menu bar, or
enter nudge at the Command Line.
Objects selected may be moved by clicking in the drawing area in the directions corresponding to the movement
direction desired. Use the Repeat function (see page D3-30) to perform multiple nudges. For more information,
examples and shortcuts, see “Nudge an Object” on page D3-103.
To move an object to a different cell:
select Edit > Cut from the menu bar, or
enter delete -cut at the Command Line.
If no object has been previously selected, the tool will prompt to select an object. Selected object will be deleted from
the drawing, but will reside on the clipboard. The object can then be pasted to any cell that is opened. If object resided

D3-102 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

on a layer that does not exist in the cell in which the object is being pasted, that layer will be imported with the cell
and added to the Layer Browser. This can be done with more than one object at the same time, and even if the objects
are on different layers, they will carry the layer information and add it to the Layer Browser of the receiving file when
they are pasted.
To move an object to a different layer:
select Modify > Change Layer from the menu bar, or
enter modify at the Command Line.
Selecting the object to be moved will open the appropriate dialog in modify mode, with the fields populated with
information particular to the object selected. Browse to any layer and select the layer name, or enter the name in the
Layer field of the dialog. Click on Apply to move the object. For examples, see “Modify” on page D3-12.
To move or copy a number of objects residing on varied layers to one destination layer, select the objects by clicking

M
or drag-selecting, then enter
setlayer LayerD at the Command Line, where LayerD is the destination layer.
To copy them to the destination layer, enter copy -layer LayerD
The command prompt asks for two sets of coordinates for FROM and TO. To put the objects on top of the old ones,
type in 0,0 and 0,0 for both prompts.
To move all of the objects on one layer to another existing layer:
1. Open each cell that has objects on the target layer, then enter select -layer LAYER_X. This selects all
the objects on Layer_X.
2. With all objects selected, enter setlayer LAYER_Y. This moves all selected objects to LAYER_Y.
The source layer is now empty, and may be deleted if desired.

Moving objects does not work through the hierarchical levels. It only works on the hierarchy level that is active
when the function is invoked.

Nudge an Object
When placing polygons or other shapes in the Layout Editor, sometimes fine-tuning the placement coordinates is
required. The Nudge command allows incremental movements with a mouse click. To nudge an object using the
mouse:
1. Select the object.
2. From the lower horizontal icon row, select Nudge.

3. With the mouse, click any point in the drawing area to move the selected object in the direction of the cursor.
The object will move in increments equal to the current Working Grid setting.
As an alternative, enter nudge -screen on in the Command Line, then click the mouse in one of nine equal areas
in the drawing area (illustrated in Figure D3-53) to move the object in the desired direction. Click while pressing the
Shift key to move in increments equal to the current setting of the Display Grid.

Coventor, Inc. March 23, 2010 D3-103


Section 3: Layout Editor Reference Version 2010

Figure D3-53 Drawing Area Regions When Using Nudge Feature

left and up up right and up

left no change right

left and down down right and down

In the example shown, the Working Grid is set to the default of 0.5 and the Display Grid is set to 2. Each mouse click
moves the selected object 0.5 units in the direction specified. Corner directions move the object 0.5 units left/right
and 0.5 units up/down. The size of the canvas window, location of the object, and relative location of the origin are
not relevant.
A mouse click completes the command. To do consecutive nudges, select Repeat Mode On before selecting Nudge.

Rotate an Object
To rotate an object 90 degrees:
1. Select the object or object group to be rotated.

2. From the lower icon row, select the Rotate 90 icon. Each rotation is a 90 degree counterclockwise opera-
tion. Perform multiple rotations for 180 or 270 degree rotations.
To rotate the object to any angle:
1. Click on the arrow next to the rotate icon and select Custom Rotate.
2. In the dialog that opens, enter the desired angle and point of origin for the selected object or group.
3. Click on Apply to complete the rotation.
Negative values cause clockwise rotation.
To rotate an object using a dialog, select Modify > Transform > Rotate menu, or enter rotate -ui on at the Com-
mand Line to open the cat:rotate dialog. The Origin is the point around which the selected object will be rotated. The
Angle is the number of degrees of counterclockwise rotation.
Click on Apply. The tool will prompt for object selection if no objects are on the selection list. Click on Close to can-
cel or to close the dialog.
Rotated rectangles become polygons unless rotated in increments of 90 degrees.

D3-104 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Flip an Object
Flip operations perform a mirror image flip of the object, using a specified axis. The original image is deleted. Other
available options include flipping within the bounding box of the cell.
1. Select the object or object group.

2. From the lower icon row, select the Flip icon.


3. At the prompt, draw a line with the mouse that will be the rotation axis for the flip. When the line has been
provided, the object or group will flip automatically.

flip axis
original target (original disappears)

M
The Flip icon also has Flip Horizontally and Flip Vertically options. If one of these options is selected, there is no
need to select an axis.
There are also several flip options available from the Modify menu. To flip an object horizontally:
select Modify > Transform > Flip Horizontally from the menu bar, or
enter mirror -flip horizontal at the Command Line.
The coordinates for any point within the object being flipped may be entered at the prompt, or the object may be
selected using the mouse. The object will remain within its extents.
To flip an object vertically:
select Modify > Transform > Flip Vertically from the menu bar, or
enter mirror -flip vertical at the Command Line.
To flip an object on any axis:
select Modify > Transform > Flip from the menu bar, or
enter mirror at the Command Line.
The tool prompts for object selection. If an object has already been selected, the tool will prompt for axis points.
When the second point is selected, the object will flip. If more than one object is on the selection list, all will flip.

Coventor, Inc. March 23, 2010 D3-105


Section 3: Layout Editor Reference Version 2010

Mirror an Object
Like a flip operation, an object or objects selected are flipped on a specified axis. However, the original image
remains in the layout. Objects can be mirrored along any axis. Select the object or objects to be mirrored, then select
one of the mirror options from the Mirror icon, or select a mirroring option from the Modify > Transform
menu.
To use the mirror dialog, enter mirror -ui on at the Command Line.

Figure D3-54 Mirror Dialog

 Direction of copy
This feature creates a mirror image. Options are Any angle, Left, Right, Up, and Down. This setting is ignored if
an axis of reflection is provided.

 Direction of flip
This re-orients the original, but does not create a copy. Options are None, horizontal, and vertical.

 Axis of reflection
Enter points that define an axis, or click on Select and enter two points in the drawing area with the mouse.
Click on Apply to create the mirrored object or to flip the object. If an object has not been selected, the tool will
prompt for a selection. If several objects are selected, all will be mirrored or flipped.

Add Area to an Object


The Layout Editor allows to you make a polygon larger by adding a rectangle of any size to the existing object. The
final result combines the two objects into a single polygon.
1. Select the polygon you wish to modify.
2. From the menu bar, select Edit > Add Rect.
3. Draw the new rectangle. It must intersect with or overlap a section of the selected polygon. When the rectan-
gle is completed, the combined result is displayed.

original

added rectangle target (polygons merged)

D3-106 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Subtract Area from an Object


The Layout Editor allows to you make a polygon smaller by subtracting a rectangle of any size from the existing
object. The final result is a single, smaller polygon.
1. Select the polygon you wish to modify.
2. From the menu bar, select Edit > Sub Rect.
3. Draw the new subtraction rectangle. It must intersect with or overlap a section of the selected polygon. When
the rectangle is completed, the overlapping section is automatically deleted.

subtracting rectangle

original target (polygon reduced)

M
Repeat a Function
To repeat any function without reselecting the function icon:

1. Make sure the Repeat mode enabled; if enabled, the icon tooltip displays Turn Repeat mode off.
2. Select the appropriate icon to create an object or perform a function.
3. When finished with the repeat operation for that command, right click to end the sequence. Repeat mode
remains enabled and will be applied to any new command selected.
4. When repeat is no longer needed, toggle the Repeat mode by clicking Turn Repeat mode off.

Coventor, Inc. March 23, 2010 D3-107


Section 3: Layout Editor Reference Version 2010

Identifying and Modifying Object Properties


The Layout Editor allows the user to determine the type of object that has been placed (polygon, circle, shape, text, or
cell reference), to view its placement coordinates, and to make edits to any or all of its properties. This method is used
for changing object properties.
To modify an object:
 double click on the object, or
 select Modify > Object from the menu bar, or
 enter modify at the Command Line. The tool will prompt to select an object if none is on the selection list.
The type of object determines the type of dialog that opens. An error message is generated if there is more
than one object on the selection list.

The object type is displayed in the dialog title, and the object fields are determined by the object type.

Polygon
The layer on which the polygon resides can be changed, or vertices can be changed. If the polygon has more than 20
vertices, a confirmation box appears and the coordinates field remains blank.

Rectangle
The layer on which the rectangle resides can be changed, or either or both of the vertices that define the rectangle can
be changed.

Path
Paths created as a series of linear segments can be modified using this function. The layer, width, type, and coordi-
nates can be changed.

Arc
Circle, torus, pie, and chord objects may be modified or converted from one type of arc object to any other. Layer
assignment can be changed, as well as all values that define the object.

Text
Text, magnification, angle, and location may be modified.

Shapes
Unless both objects are polygons (including simple rectangles), the result of the combination of objects using Bool-
ean operations will be a shape. The only attribute of a shape that can be modified is the layer on which the shape
resides. If polygons are combined, the resulting polygon can be modified using the move point, move edge, and
add\delete points modification options.

D3-108 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

To identify the attributes of a layer used to create the object:


1. Open the Layout Editor Terminal (click on the small square to the left of the one-line prompt).
2. From the menu bar, select Object > Info or Object > Info (verbose).
3. Review information about the object type, its coordinate placement, or layer information.

Add/Delete Points
This feature is used to change any portion of an object defined by two points:
1. Select Modify > Add/Delete Points from the menu bar.
2. Select two points and the side of the object to delete.
3. Redraw the side that was deleted, making the object larger or smaller. The action will not be complete until
the two points originally selected are reconnected by a line segment.

M
Polygons, rectangles, paths, and shapes may be modified.

Boolean Operations
The four basic Boolean operations (and, or, xor, and not) are available for creating shapes by combining or modifying
objects. When selecting objects that reside on different layers, the tool will relocate the second object selected to the
layer on which the first object resides (the Boolean Not function is the exception to this rule). If the objects selected
have no points in common, no changes will occur.

The Boolean operators only work for objects that are on the same level of hierarchy. Objects that appear by
reference in a cell cannot be combined with objects that reside in that cell.

Select an operator from the Modify > Boolean menu choices, then select overlapping objects upon which the opera-
tion will be performed:

To eliminate areas of two overlapping objects that are not common to both:
select Modify > Boolean > And from the menu bar, or
enter boolean -op and at the Command Line.
Select two overlapping objects. All points not common to both are deleted. If there are no common points, a warning
message to that effect will appear. If all objects in an area are selected before this operation is run, any objects having
no common points with other selected objects are deleted.

Figure D3-55 Boolean And Operation

Note that the objects are on different layers, and the circle object was selected first, so the resulting object
is placed on the circle layer.

Coventor, Inc. March 23, 2010 D3-109


Section 3: Layout Editor Reference Version 2010

To combine two overlapping objects:


select Modify > Boolean > Or from the menu bar, or
enter boolean -op or at the Command Line.
Select two overlapping objects. The two objects become one object

Figure D3-56 Boolean Or Operation

Note that the objects are on different layers, and the circle object was selected first, so the resulting object
is placed on the circle layer.

To remove an area common to two overlapping objects:


select Modify > Boolean > Xor from the menu bar, or
enter boolean -op xor at the Command Line.
Select two overlapping objects. The area common to both will be deleted.

Figure D3-57 Boolean Xor Operation

Note that the objects are on different layers, and the square object was selected first, so the resulting object
is placed on the square layer.

To subtract an overlapped area from an object:


Select Modify > Boolean > Not from the menu bar, or
Enter boolean -op not at the Command Line.
Select two overlapping objects. The area common to both will be deleted from the first object selected. The resulting
object will become a shape unless it was a rectangle before the Boolean operation. The dimensions of the second
object are not affected by the operation and it remains on its original layer. For more information, see page D3-80.

D3-110 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Figure D3-58 Boolean Not Operation

Note that both objects are preserved, but the area common to both objects has been subtracted from the circle,

M
which was selected second.

By Layer Option
This option allows the user to perform a Boolean operation on layers. When the user selects Modify > By Layers, the
following dialog appears:

 Input Layer1,2
These fields have drop-down menus that list all the available layers in the active cell. Use these fields to select
the layers for the Boolean operation.

 Output Layer
This field allows the user to designate to which layer the resultant action will be saved.

 Flatten
Default True setting causes a temporary flattening of any references and generators so that their data will be
included in the Boolean operation.

 Polygon mode
Default False allows for translation of true curves. Select True to define curves as polygons.

 Operation
The Operation drop-down menu allows the user to select the desired Boolean operation. The choices are And, Or,
Xor, and Not, as described in the preceding section.

Magnify an Object
Select Modify > Transform > Magnify from the menu bar, or enter magnify -ui on at the Command Line to
open the cat:magnify dialog. Enter the magnification value(s) in the field and click on Apply. Enter one value to mag-
nify equally in both the X and Y directions. Enter two values separated by a comma to magnify by different orders in
the X and Y directions. For example, if a value of 2 is entered in the Magnification field, an object that is 4 x 4
becomes 8 x 8. But if 2,1 is entered in the Magnification field, an object that is 4 x 4 becomes 8 x 4.

Coventor, Inc. March 23, 2010 D3-111


Section 3: Layout Editor Reference Version 2010

Change Object Size


Object sizes may be changed by either oversizing or by magnifying. Both preserve the proportions of the original
object.
Oversizing an object increases or decreases its size by a specific increment. Select Modify > Oversize from the menu
bar, or enter oversize -ui on at the Command Line to open the dialog.
This feature makes the selected object larger or smaller by moving each side of the object the specified distance. Any
value other than zero may be used. This function will not work with arc curves.
Magnification is proportioned change. To open the magnification dialog, select Modify > Transform > Magnify from
the menu bar, or enter magnify -ui on at the Command Line.
Enter the magnification value(s), then click on Apply. If no objects are selected, the tool will prompt for a selection.
The tool will multiply the coordinates that define the object by the magnification provided, and then plot the new
coordinates.
Objects can be reduced by entering a magnification factor between 0 and 1. Negative magnifications have no effect.
Objects enlarged will move from the X,Y origin, and objects reduced in size will move closer to the origin.

Changing Object Shape


To change the shape of a polygon or rectangle by moving one of the object vertices:
1. From the top-row icon bar, select Change coord input mode from 45/90 to all-angle to move to any point, or
leave it as it is to preserve 45 or 90 degree angles.
2. Select Modify > Move Point from the menu bar, or enter movepoint at the Command Line.
3. Select a polygon or rectangle to be modified.
4. Select the point to be moved.
5. Select the new location of the selected point.
To change the shape of a polygon or rectangle by moving one of the object edges:
1. Select Modify > Move Edge from the menu bar, or enter moveedge at the Command Line.
2. Select a polygon or rectangle.
3. Select the edge to be moved.
4. Drag the edge with the mouse.
To add a rectangular area to a rectangle or polygon:
1. Select Modify > Add Rect from the menu bar, or enter addrect at the Command Line.
2. Select a rectangle or polygon, as prompted.
3. Enter two points that define the rectangular area being added to the object selected.
The rectangle added must overlap part or all of the object selected. See “Add Area to an Object” on page D3-106.
To subtract a rectangular area from a rectangle or polygon:
1. Select Modify > Sub Rect from the menu bar, or enter subrect at the Command Line.
2. Select a rectangle or polygon, as prompted.
3. Select two points that define a rectangle within the object selected.
The rectangular area is removed from the object selected when the second defining point is chosen. See “Subtract
Area from an Object” on page D3-107.

D3-112 March 23, 2010 Coventor, Inc.


Section 3: Layout Editor Reference Version 2010

Move Window
Use this feature to move all vertices of a selected portion of an object. The remainder of the object will accommodate
the changes to preserve object integrity.

Figure D3-59 Polygon Modification using Move Window

M
After selecting Modify > Move Window from the menu bar, enclose the vertices to be moved, as shown. Choose
points as prompted in the Command Line. Entering movewindow -ui on offers the same functionality through a
dialog.

Deleting Objects
To delete objects, select the object or object group you wish to delete then
select Edit > Delete from the menu bar, or
enter delete at the Command Line.
If no object is selected, a selection prompt will appear in the Command Line. The selected object is deleted when
selected. An object can also be deleted by selecting the object and then pressing the Delete key on the keyboard.
These actions can be undone until the cell is saved, at which time the Undo history is cleared.
To cut an object, select the object, then click on the Cut icon on the toolbar, or enter delete -cut at the Com-
mand Line.
Cut objects are removed from the cell but reside on the clipboard for future pasting.

Coventor, Inc. March 23, 2010 D3-113


Section 3: Layout Editor Reference Version 2010

Notes

D3-114 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Section 4: Preprocessor Reference


4.1: Functionality
The Preprocessor is an interactive module that enables users to view and edit solid models, generate meshes, view
meshes, and do mesh quality checks. The Preprocessor has these capabilities:
 display a model (see page D4-4)
 partition a model (see page D4-6)
 set material properties for parts of a model (see page D4-32)
 create symmetric, plane, and cyclic geometries (see page D4-22)

M
 name faces, parts, and conductors (see page D4-14)
 generate a mesh (see page D4-15)
 generate different meshes for different entities of a model (see page R2-32)
 refine a mesh on model edges, faces, or vertices (see page R2-32)
 query a mesh for mesh statistics (see page D4-46)
 delete a mesh (see page D4-45)
 heal a model (page D4-38)
 merge models or meshes
 transform models or meshes (page D4-11)

4.2: Window Description


The Preprocessor consists of two windows: the Geometry Browser and the Canvas. The two windows function as two
different views of the same data model except that the Canvas displays the 3-D view, while the Browser displays a
hierarchy of geometric entities.

Canvas

Geometry
Browser

Coventor, Inc. March 23, 2010 D4-1


Section 4: Preprocessor Reference Version 2010

4.2.1: Geometry Browser


The Geometry Browser displays the hierarchy of model and mesh entities. It has the structure of a typical Windows
directory hierarchy and reveals the interactions and dependencies of the model and mesh in a selected database. The
Geometry Browser shows how entities are related. There are three main folders in the Geometry Browser: Solid
Model, Mesh Model, and Conductors/Dielectrics. Clicking on a + sign beside a folder expands the Geometry
Browser to reveal layer and part entities. The Mesh Model folder has an additional region entity. Edge and vertex
entities are not displayed in the browser unless they are selected on the Canvas. A face entity is only displayed if it
has been named or if it or its lines or vertices have had meshed settings applied.

Solid Model
Initially, when a solid model is loaded, all layers are listed in the Solid Model folder. The entities in the Solid Model
folder include layers and parts. From this folder, the user can define and partition layers, assign materials, designate a
part as a solid or fluid, as conductor or dielectric, and can fix a part so that it is only considered for electrostatic anal-
ysis.

Mesh Model
Typically, the user may not want to include all the layers in the Solid Model folder in an analysis. The Preprocessor
uses the Mesh Model folder to contain layers that will go into an analysis; i.e. the entities in the Mesh Model folder
define the computational domain of an analysis.
When a solid model is first loaded, the Mesh Model folder is empty. The user selects one or more model layers (using
the Ctrl key), then adds them to the Mesh Model folder either by right-clicking and selecting Add to Mesh Model, or
by holding down the left mouse button while dragging the layers to the Mesh Model folder. The Preprocessor auto-
matically converts these layers to mesh regions. The default action is such that touching layers are merged into one
region. Merging touching layers automatically is a design principle for safe-guarding the convergence and accuracy
of the numerical simulations so that a conformal, continuous mesh is generated through the touching layers. How-
ever, keep in mind that some solvers (electromechanical) can use links and ties (see page R4-42) and do not necessar-
ily require the conformity of the mesh on touching layers. For these solvers the automatic merge layer feature can be
turned off (see page D4-54 for more details). But in general, a continuous mesh is almost always a better option than
links and ties.
Adding a layer to the Mesh Model folder does not generate the mesh, but rather indicates that a layer is available for
meshing. The user then selects meshing options for a each region and sets local meshing controls upon selected sub-
entities. Once a layer has been added to the Mesh Model folder, it can no longer be selected from the Solid Model
folder. The Mesh Model entities include regions, layers, parts, faces, edges, and vertices.

Conductors/Dielectrics
When the user adds layers to the Mesh Model folder, the Conductor/Dielectrics folder is created and automatically
populated. Parts that touch and have one conductor material type are designated as a single conductor with a unique
ID. Dielectrics are determined in a similar manner.

4.2.2: Canvas
The Canvas is the window of the Preprocessor in which a 3-D model or mesh is rendered. The toolbar selection mode
icons can be used to select and manipulate objects in the Canvas. When a selection icon is active, the user can click
on the Canvas to select an entity that is the same type as the active selection mode. Right-clicking on an entity
accesses a context-sensitive popup menu with options related to that entity.

D4-2 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

4.2.3: Geometry Browser and Canvas Interaction


Selections in the Geometry Browser and Canvas are synchronized: if a user selects an entity in the Canvas, the corre-
sponding entity in the Browser is highlighted. Or, if a entity is selected in the Geometry Browser, the corresponding
entity in the Canvas is highlighted. As noted earlier, face, edge, and vertex entities do not appear in the Geometry
Browser unless they are selected in the Canvas using the Face, Edge, or Vertex Selection Mode (see page D4-17).
Note that a selection mode icon does not need to be active for the user to make a selection in the Geometry Browser.
The user can make multiple selections in the Geometry Browser and the Canvas: Use Ctrl + left-click to make multi-
ple selections in the Geometry Browser or the Canvas. Use Shift + left-click to select a range in the Browser. Note
that when making multiple selections, only one type of entity is allowed. For example, a user could not select both a
part and a face.
In both the Browser and the Canvas, a right-click brings up a context-sensitive menu that provides shortcuts for oper-
ations that are allowed on the selected entity.

M
4.3: Preprocessor Terminology
To understand how the Preprocessor creates a solid model and a mesh and how it creates a model hierarchy, the user
must be familiar with the terminology used in the Preprocessor module. This section defines key terms in model and
mesh creation.

4.3.1: Model Definitions


edge: a line or a curve that connects two vertices.
face: a surface that is defined by a closed set of edges. For example, a cube has six faces. Note that the faces corre-
spond to patches in the solver BCs windows.
external face: an element face that coincides with a model face. An element is external if it has only one element
adjacent to it or if it has two adjacent elements, but those elements are on different parts.
internal face: an element face that coincides with a part or with a model face that is adjacent to two parts only.
layer: a collection of one or more parts that results from one or more identifiable steps in the fabrication process. All
of the parts in a layer are made from the same material.
model entity: a generic term for any component of a solid model. For example, vertices, edges, faces, parts, and lay-
ers are all entities.
part: a volume that is defined by a closed set of faces made out of one material. For example, a cube can be a part.
patch: one or more faces that have the same name.
solid model: the 3-D topology of a device. A solid model consists of one or more layers.
vertex: a point in three-dimensional space. For example, a cube has eight vertices.

4.3.2: Mesh Definitions


element: a volume that is defined by a connected set of element faces.
element face: a planar surface that is defined by a connected set of element edges (parabolic element faces can be
non-planar).
element edge: a line of curve that connects two nodes.
mesh: a collection of mesh entities such as nodes, elements, element faces, and element edges.
mesh entity: an entity that belongs to the mesh. For example, nodes, elements, element faces, and element edges are
mesh entities.

Coventor, Inc. March 23, 2010 D4-3


Section 4: Preprocessor Reference Version 2010

node: a point in three-dimensional space. All other mesh entities, namely element edges, element faces, and elements
can be defined by a directed set of nodes. The order of nodes in the set determines the orientation of each mesh entity.
surface mesh: a mesh that descretizes the top face of a solid model.
volume mesh: a mesh that descretizes the volume enclosed by the faces of the solid model.
region: consists of one or more layers that touch each other.

4.4: Preprocessor Flow


This section outlines the typical work flow for the Preprocessor. Individual users may incorporate other steps, such as
partitioning or splitting regions.
1. From the Designer tab, make sure the desired process and layout file are displayed in the appropriate field.
2. Click on the arrow beside the Start Preprocessor icon, select New from the drop-down menu.
3. Enter the desired model name in the dialog, and click on OK. The Preprocessor will open when the software
has finished building the solid model.
4. From the Solid Model folder the user may choose to do any of these tasks:
 Add a plane, block, or a wedge.
 Use a plane or wedge to create symmetry.
 Use a plane or a block to define a partition (from Solid Model > Partition). Partitioning a layer allows the
user to delete unwanted features from the model or to create layers for more refined meshing.
 Select a part and assign material or material properties as needed (from Edit > Properties).
 Designate a part as a conductor or dielectric.
 Designate a part as a solid or fluid.
 Remove a part from any mechanical simulation.
5. Select and add the layers to be meshed to the Mesh folder.
6. Name faces.
7. Name parts.
8. Name conductors.
9. Right click on each mesh region and set the desired mesh type and other meshing controls.
10. Click on the Generate Mesh icon.
11. Save the model.

D4-4 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

4.5: Solid Modeling


The solid modeling software produces a solid model of a MEMS or microfluidics device by applying the process
description to a 2-D layout. Each deposit layer in the process file corresponds to a layer in the Solid Model folder.
The model acts as a verification that the fabrication process will produce a device with the desired 3-D geometry. It is
also the input to the mesher.
A solid model usually contains multiple layers. Each layer consists of one of more parts. Parts are enclosed by three
or more faces. Faces are bordered by three or more edges. Edges are defined by two vertices. The figure below dis-
plays the hierarchy of a typical solid model.Note that the face, edge, and vertex entities are not displayed by default.
In Figure D4-1 these entities are displayed in the Geometry Browser because a vertex was selected in the Canvas.

Figure D4-1 Geometry Browser Displaying Model Hierarchy

M
From the Solid Model folder, the user can manipulate the solid model in several ways:
 partition layers
 transform layers
 merge solid models
The sections that follow describe how to perform these operations.

Coventor, Inc. March 23, 2010 D4-5


Section 4: Preprocessor Reference Version 2010

4.5.1: Partitioning
The Partitioning tool allows the user to create new entities in the solid model by partitioning layers. Partitioning a
layer results in one or more solid model layers. This tool is useful for the following operations:
 exclude features from the solid model, and therefore from subsequent analyses
 partition layers of the model so that different material properties can be applied to different parts of the layer
 create new entities that can then have boundary conditions applied
 partition layers so that different meshes can be applied to features that originally would have been in the same
region. Note that if you create different meshes in this manner, you will have to use links and ties in a Mem-
Mech simulation. See page R4-42 for information on how to use links and ties.
This tool can be used only if the Mesh Model folder is empty.
To partition a model, the user adds a plane or a block entity to the Solid Model folder. The user then selects a layer or
a set of layers and applies the partition. The selected layer(s) is then divided. These steps are illustrated in the follow-
ing example.
The model shown below consists of two layers: a substrate layer and a plate layer. The plate layer has one part that
consists of a plate with four tethers. We want to partition the model so that different mesh dimensions can be applied
to the tethers.

D4-6 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Partition Using a Plane

1. Click on the Vertex selection mode icon.


2. Use the Ctrl key to select three vertices on the model face where the tethers touch the plate, as shown below:

M
Do not select three vertices that happen to be on a straight line; it will not work.

To deselect vertices, click on an empty spot on the Canvas.

3. Select the Solid Model > Insert > Plane > Use Selected Vertices. This creates a plane that coincides with the
vertices selected, as shown in Figure D4-2.

Coventor, Inc. March 23, 2010 D4-7


Section 4: Preprocessor Reference Version 2010

Figure D4-2 Inserted Plane to be Used for Partitioning

plane

Note that instead of selecting the vertices and then adding the plane, the plane can be added first using the Add
a Plane icon. , and its position then can be adjusted (right click on the plane, and select Properties).

This dialog offers more control than the positioning handles that are visible when the plane is selected. It can
be used to include a point that is not a model vertex, for example, the midpoint of an edge.
4. Select the layer or layers (use the Ctrl key to select more than one) to be partitioned and the plane just created.
5. Select Solid Model > Partition. The selected layer is now partitioned into two layers, or if two or more layers
were selected to be partitioned, you could have several new layers. The newly generated layers are desig-
nated with LayerX_X. In our example, Layer1 is partitioned to separate the tethers from the plate, and
became Layer1_1, and Layer1_2. The resulting Geometry Browser and solid model are shown in Figure D4-
3:

D4-8 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Figure D4-3 Partitioning Result

M
Partition Using a Block
The solid model presented above can also be partitioned using a block, which would be able to separate all of the teth-
ers from the plate in one partition.
To partition using a block:
1. Use the Vertex selection mode icon and the Ctrl key to select the coordinates that will be used to define the
block. The vertices/coordinates used to create the block are shown below:

(25,50,5)

(-25,-50,0)

2. Select Solid Model > Insert >Block > Use Selected Vertices. The block created coincides with the plate:

Coventor, Inc. March 23, 2010 D4-9


Section 4: Preprocessor Reference Version 2010

Note that instead of selecting the vertices and then adding the block, the block can be added using the Add a
Block option available from the Add A Plane icon drop-down menu. By default the block encompasses the en-
tire design. To adjust its positioning, right click on the block in the Geometry Browser, and select Properties.
The dialog shown below opens. Use this dialog to enter the desired coordinates.

3. Use the Ctrl key to select the block and the layer(s) to be partitioned.
4. Select Solid Model > Partition. The result is shown below:

D4-10 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

4.5.2: Transforming Models


The Preprocessor allows the user to transform a solid model. The Transform option, accessed from the Tools menu,
provides the capability to change model orientation, length, thickness, and other geometric dimensions without hav-
ing to change the layout or process files and rebuild the model. Transformations are allowed on layers in the Solid
Model folder. The user selects a layer or layers, and then selects Tools > Transform. The Model Transform dialog will
open with the following options in its drop-down menu:
 Translation
 Rotation
 Scaling

Translation

M
This option translates the model in the global coordinate space by the distance specified in the field. For example, if
the user specifies 0.0, 10.0,0.0, all the nodes in the model are translated 10 µm in the Y direction.

Rotation
This option allows the user to rotate the model by specifying the vector direction, the origin and angle of rotation. The
user can specify the components of the vector that defines the direction of the axis of rotation using the Vector field or
can specify a X, Y, or Z vector direction. The Origin field specifies the rotation axis origin, and the Angle (deg) field
designates the angle of the model’s rotation around the axis specified by the other settings.

Coventor, Inc. March 23, 2010 D4-11


Section 4: Preprocessor Reference Version 2010

Scaling
This option scales the dimensions of the model. The X-Dir, Y-Dir, and Z-Dir scale the model in the designated dimen-
sion. These values must be positive. The Origin field specifies the absolute reference point for scaling.

Limitations And Restrictions


Solid model transformations can only be applied to layers (not parts). To transform a part, use the partition option to
to separate a part into its own layer.
Note that changes in the topology and connectivity of the model parts may occur as the result of the transformation.
The user must verify that the model appears as desired before meshing.
Solid model transformations may significantly alter the model topology, so transformations are not allowed on any
layer that have been added to the Mesh Model folder.

If the user selects a layer or another entity from the Mesh Model folder, the Mesh Transform dialog will open. For
more information on the Mesh Transform option, see page R2-41.

For each layer, only one transform will be applied each time. To do multiple transforms for the same layer, perform
one transformation after the other. However, the user can apply one transform to multiple layers.

Example
The example below shows a pneumatically actuated valve in a channel. The device needs to be rotated so a 2-D sim-
ulation can be performed.

D4-12 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

channel

M
membrane

To rotate the device:


1. Use the Ctrl key to select the membrane and channel layers.
2. Select Tools > Transform.
3. For the Type, select Rotation.
4. Set the Rotation Axis to X, and the Angle to -90.
5. Click on Apply. The result is shown below:

Figure D4-4 Transformation Setup and Result

Coventor, Inc. March 23, 2010 D4-13


Section 4: Preprocessor Reference Version 2010

4.5.3: Merging Models


Users can merge solid models within the same database either via Designer flow or by importing solid models from
external tools. To merge solid models, the user will open one of the models to be merged in the Preprocessor, and then
select File > Append > Solid Model. A dialog will open that will prompt the user to select another solid model using
a drop-down menu or the Browse icon. After the user selects a model and clicks on OK, two models will appear
merged in the Preprocessor window. The transformations functions (accessed from the Tools menu) can be used to
adjust the model as necessary.

Limitations and Restrictions


A solid model and a meshed model cannot be merged.

4.6: Naming Entities


When a solid model is generated, the software assigns a unique, default designation to each entity. This designation
consists of the entity type and an identification number. For example, a part would have a designation like Part_2.
Layer numbers and names are assigned according to the deposit layers in the process file.
From the Solid Model folder, the user can assign or change names of layers and parts. From the Mesh Model folder,
the user can assign names for layers, parts, faces, and conductors. To assign a name, select the desired entity in the
Geometry Browser or in the Canvas, and then right click to select Set Name. A dialog will open in which the user can
enter a new name for that entity. The software designation will be appended with the user-assigned name; for exam-
ple, Part_2 is renamed electrode2, so it would appear in the Geometry Browser as Part_2 (electrode2). Note that the
entity type and number cannot be changed.
The Set Name dialog also has a drop-down menu, in which the user can select any previously defined name and apply
it to the desired entity. This drop-down menu can be used to ensure that names are spelled consistently.

The Clear button in the Set Name window can be used to delete a user-assigned name on any entity.
Naming entities or clearing name entities can be done on a single or multi selection. Use the Ctrl key to select more
than one entity, and then select Set Name. This functionality can be used to name several faces at once.
An entity’s name can also be changed from the Properties window. If the user selects an entity, and then right clicks
and selects Properties, the window that opens will have a name field, as shown below:

Enter user name in this field

D4-14 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Parts
Part names are attached to both the Mesh Model and the Solid Model (if it exists). In addition to the ID name, every
part has a name that is based on its layer name assigned in process file. The part name is displayed as
"Part_ID(Name)", e.g. "Part_3(beam)".
Part names can be assigned from the Solid Model or Mesh folder. The user can also multi-select parts and assign the
same name or clear all of their names.

Faces
Face names are attached to both the Mesh Model and the Solid Model (if it exists), but face names can only be
assigned from the Mesh folder. Any user-assigned names will be preserved even if the model is remeshed.
If no user name is assigned to the face, the Geometry Browser will display a "Face_ID", e.g. "Face_3". If the user has

M
assigned a name to a face, the Geometry Browser will display "Face_ID (Name)", e.g. "Face_3(bottom)".
The user can multi-select faces and assign the same name. Faces that have the same user-assigned name are called
patches. Each face or each set of faces having the same name maps to a patch in the solver boundary conditions win-
dows. Only those faces that have user-assigned names appear in the boundary condition drop-down menus.

Do not use the string "Patch_" when assigning face names. The solvers interpret the faces as patches, so if faces are
assigned names that start with "Patch_", for example "Patch_12" or "Patch_myPatch," the solvers will treat them as
default patch names, and these faces/patches will not show up in the solver’s BC setup windows.

Conductors/Dielectrics
If a mesh exists, the Geometry Browser displays a Conductors/Dielectrics folder. Conductors and dielectrics are auto-
matically generated when layers are added to the Mesh folder modified. As with other entities, the user can rename
these entities, but it is best to name them after the mesh has been created.
Conductor or dielectric designations are derived from the part’s electrical conductivity material property. Parts that
touch and have one conductor material type are designated as a single conductor. Part conductivity can be changed by
right clicking on a part and selecting Properties. In the window that opens, change the Analysis Option Conductor or
Dielectric assignment. Any change in conductor status is automatically reflected in the Conductors/Dielectrics folder.
Conductors with the same name are connected in MemElectro.

4.7: Meshing
The solid model tool uses the 2-D layout and process characterization information to build a solid model. Once the 3-
D model is created, the next step in physical design is mesh generation. CoventorWare uses finite element and bound-
ary element techniques for solving the differential equations of each physical domain in the problem. The differential
equations are solved by discretizing the 3-D model into a mesh, which consists of a number of elements, each with a
specified number of nodes. The mesh tool, accessed from within the Preprocessor, creates the finite elements or
boundary elements necessary for simulation. When the meshing is complete, this information is exported for use by
the rest of the software for additional conversion, application of boundary conditions, and computation by the solvers.
In the Geometry Browser, the user selects the layers that are of interest for 3-D analysis and right clicks to add these
layers to the Mesh Model folder. If two or more layers touch, the software merges these layers into a single merged
layer that contains internal faces at the intersection of the previously separated layers. This merging of layers enables
the mesher to generate a mesh that is continuous across the internal faces. In the Mesh Model folder these layers are
referred to as regions. Different mesh types can be set for different regions.
After adding the desired layers to the Mesh Model folder, the user right clicks to select the Mesher Settings. The
Mesher Settings control the meshing algorithms. The user must edit and apply Mesher Settings before invoking the
Generate Mesh action. The mesher discretizes the model into smaller volumes suitable for 3-D numerical analysis.

Coventor, Inc. March 23, 2010 D4-15


Section 4: Preprocessor Reference Version 2010

Mesher settings on parts, model faces, edges, and vertices can also be set to achieve local mesh refinements.
A mesh contains one or more elements. A element contains four or more element faces. Element faces are bordered
by three or more element edges. Element edges are terminated by two nodes.
Because meshing is only required if the model will be simulated with the Analyzer solvers, detailed reference infor-
mation on the Preprocessor’s meshing functionality is found in the CoventorWare ANALYZER Reference, beginning
on page R2-1.

4.8: Importing and Exporting a Model


The user has the option of creating a solid model or a mesh in a third-party program, and then importing that model
into the Preprocessor. The user can also export a solid model or a mesh from the Preprocessor. To import or export a
model from within the Preprocessor, click the standard Open File icon, or from the File menu, select Open. The win-
dow seen below opens:

The Import icon can be used to import solid models in .sat, .step, or Pro\E (.prt, or .asm) formats, or 3-D IGES
file (with .igs or .iges extension) up to IGES version 5.3, or as a mesh in .mbif, .stl, .pat, .unv, .cdb, .ans, or .rst for-
mat. Note that the last three file extensions are used for ANSYS files, see page R2-37 for more details. It can also be
used to import a .gbak file from another project or from another platform. An imported model retains its original
name; if it has the same name as a model already existing in the database, an error window appears that prompts the
user to rename the original model before importing the new one. The software will also warn the user if the import
failed or if the imported gbak had no models.
The Export icon can be used to export a CoventorWare solid model or mesh to a format that can be used by a
third-party program. The user has the option to export in .gbak, .sat, .stl, .igs, .step, .ans, .unv, or .mbif formats; see
page R2-37 for more information on exporting an mesh. The material properties of a selected model can also be
exported as a .mpd file. Exported files will not appear in the Database Browser window.
The Import Package icon can be used to import a Kyocera Standard Package Library package or a Hymite
package. For more information on these models, see the reference section beginning on page R11-1. For example of
how to use one of these packages, see the tutorial beginning on page T4-151.
The Database Browser can also be accessed from the Designer and Analyzer tabs. For more details on this window,
see page U1-24.

D4-16 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

4.9: Icons

Equivalent Menu Keyboard


Icon Function Description
Function Shortcut
Open Model Opens the Database Browser to display all File > Open Ctrl + O;
models and mesh models available in the Alt + F + O
current project
Save Model Saves the current model File > Save Ctrl + S or
Alt +F + S

Hide Selection Click on entity to select, then click on icon Edit > Hide Selection Shift + H;

M
Alt + E + H

Show Selection Click on a hidden entity in the Geometry Edit > Show Selection Shift + O;
Browser, and then click on icon Alt + E + O

Layer selection Allows the user to select layers in the Edit > Selection Mode > none
mode Preprocessor canvas Layer

Part selection Allows the user to select parts in the Edit > Selection Mode > none
mode Preprocessor canvas Part

Conductor Allows the user to select conductors in the Edit > Selection Mode > none
selection mode Preprocessor canvas; only active when layers Conductor
have been added to the Mesh folder
Face selection Allows the user to select faces in the Edit > Selection Mode > none
mode Preprocessor canvas Face

Patch selection Allows the user to select patches in the Edit > Selection Mode > none
mode Preprocessor canvas Patch

Edge selection Allows the user to select edges in the Edit > Selection Mode > none
mode Preprocessor canvas Edge

Vertex selection Allows the user to select vertices in the Edit > Selection Mode > none
mode Preprocessor canvas Vertex

Rotate model Click icon to rotate the model using the mouse View > Rotate Alt +V + R;
Ctrl + Right
click + drag
Pan model Click on the icon, and then click and drag the View > Pan Alt +V + P;
model to desired location Alt + Right
click + drag

Zoom mode Click on icon to zoom on the entire model View > Zoom Alt + V + Z;
Shift +
Right click
+ drag

Coventor, Inc. March 23, 2010 D4-17


Section 4: Preprocessor Reference Version 2010

Equivalent Menu Keyboard


Icon Function Description
Function Shortcut
Fit to Window Adjusts the view so that the entire geometry View > Fit to Window Ctrl + F;
still fits within the canvas Alt + V + F

Zoom to Click on this icon to zoom in on the selected View > Zoom to Selection none
selection entity

Rubberband Click on icon to drag a rectangle around the View > Rubberband Zoom Alt + V + U
zoom mode area to zoom

Oblique View Click on the icon to get an oblique (3-D) view View > Orientation > Alt + V + O
of the model, or click on the drop-down arrow Oblique, XY+ view, XY-
to choose other options: XY+ view, XY- view, view, XZ+ view, XZ- view,
XZ+ view, XZ- view, YZ+ view, or YZ- view YZ+ view, YZ- view
Previous View Click on this icon to return the model view to View > Previous View Ctrl + B
the previous state before the last model
manipulation
Next View Click on this icon to return to the view before View > Next View Ctrl + N
Previous View was invoked
Model/mesh This icon only becomes active when a region, Tools > Quality Query Alt + T + Q
quality query layer, or part is selected; click on the icon to
open the Quality Query dialog; see page D4-
46 for details on how to use this window
Clear quality Click on the icon to clear the highlights in the Tools > Clear Quality none
query highlight Geometry Browser and Canvas that resulted Query
from a Quality Query
Add a Plane Click on icon to add a plane or click on the Solid Model > Insert none
drop-down arrow to select three other options:
Add a Plane, Add a Wedge Region, or Add a
Block
Render in Click on the icon to render the model in none none
wireframe wireframe view; see page D4-21 for more
detail

Cross Section Click on this icon to create a cross section View > Cross Section none
View view of the model; rotate the cross-section
plane for different cross section views; see
page D4-22 for more detail
Render the Click on the icon to render the model shaded none none
scene shaded (default); see page D4-21 for more detail

Generate mesh After specifying the meshing settings, click on Mesh > Generate Mesh Alt + M + G
this icon to create the mesh

Delete mesh After creating a mesh, you can choose to Mesh > Delete Mesh none
delete it using this icon; this function only
deletes the mesh, not the part that is meshed
Tape measure Click on this icon to measure the distance Tools > Tape Measure none
between two points; click and drag over the
area to be measured

D4-18 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Equivalent Menu Keyboard


Icon Function Description
Function Shortcut
Measure Click on this icon to measure the distance Tools > Measure Distance none
distance between two vertices

Redline markup Click on this icon to draw a red line around Mesh > Markup none
highlight points of interest on the canvas; if
you rotate/pan/translate a model, the redline
markup disappears
Stop This icon only becomes active during the none none
meshing process; click on this icon to stop the
mesh generation

M
4.9.1: Z-Scale Drop-Down Menu
The Z-Scale setting controls the model scale in the Z direction. Adjusting this menu may make it easier to see features
and select faces. The user has the option of selecting a number from the drop-down menu or entering a number in the
field. Figure D4-5 shows a model with the default Z-Scale and a Z-Scale set to 5. With the higher Z-Scale, the sides of
the beam would be easier to select.

Figure D4-5 Z-Scale Adjustment


Z-Scale = 1 Z-Scale = 5

4.9.2: Cross Section View


The Cross Section View, available from the Cross Section icon, allows the user to view a select part of a model. When
the function is activated, a cross section plane is created, which can then be moved or rotated in using the arrow han-
dles. The illustrations below show how this functionality could be used:

Coventor, Inc. March 23, 2010 D4-19


Section 4: Preprocessor Reference Version 2010

The original view of the model hides the interior features Activating the Cross Section tool creates a default XZ
cross section, revealing the interior features of the model

Use the arrow handles to rotate the cross section plane

The Cross Section tool can be used on a solid model or a meshed model, including models that have been imported.
Use the XY+, XY-, XZ+, XZ-, YZ+, or YZ- views to snap the cross section plane to a coordinate plane. Clicking on
other icons or clicking on an entity in the Geometry Browser deactivates the Cross Section tool.

D4-20 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

4.9.3: Wireframe Rendering


This icon controls the model’s display. This display option shows only the model edges. Below is an example of this
type of rendering.

M
4.9.4: Shaded Rendering
This icon controls the model’s display. This option renders the surfaces of the model shaded, and therefore visible, as
seen below:

Coventor, Inc. March 23, 2010 D4-21


Section 4: Preprocessor Reference Version 2010

4.9.5: Adding Entities


The Preprocessor allows the user to add a plane, a wedge, or a block to a model. A plane can be used to create a sym-
metry plane, a partition plane, or a cross-section view. A wedge can be used to speed up simulations by allowing the
user to simulate part of a model. The block can be used to partition a model, or if added to the Mesh Model folder, to
mesh a fluidic device and significantly increase simulation speed and accuracy. The entities are first defined in the
Solid Model folder, and then can be added to the Mesh Model folder. This section details how to use these entities.

Add a Plane
The Add a Plane option can be used to create a plane for partitioning, for creating a symmetry plane, or for creating a
cross-section view. When the user selects the Add a Plane option, a plane appears on the canvas, oriented in the XZ
plane by default. Handles also appear that allow the user to rotate or move the plane. The plane is also added to the
Solid Model folder, as shown below:

Note that more than one symmetry plane can be inserted for a model. If there are more than two planes, not more than
two of those planes can be parallel, and those two parallel planes must be perpendicular to any other planes. The two
parallel planes must also have normals that are opposite to each other.

D4-22 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Plane Properties
Right clicking on a plane on the canvas or in the Geometry Browser, and then selecting Properties opens the dialog
shown below. This dialog can be used to assign a name to a plane or to manually edit the plane’s normal direction or
position. Note that the normal or position can also be changed by clicking on the arrow or handles of the plane, and
then dragging, but this dialog allows the user to enter precise numbers.

M
 Name
This field allows the user to assign a unique name to the plane. If no name is assigned, the field displays UNDE-
FINED.
 Normal Direction
This field includes a drop-down menu with the following choices: Positive X, Negative X, Positive Y, Negative Y,
Positive Z, Negative Z, and Arbitrary. When one of the X, Y, or Z directions are chosen, the field underneath the
Normal Direction field automatically displays the vector normal. If the Arbitrary option is selected, the user may
enter the vector normal.
 Plane Position
This setting has two parts: first the user selects the position to use when defining the plane (Corner or Center),
and then the user defines that corner or center coordinate in the field below.
 Direction Size
These fields are labeled according to which Normal Direction is selected. For example in the graphic above, Pos-
itive X is selected in the Normal Direction field, so these fields are labeled Y-direction Size and Z-direction Size.
If the Arbitrary option is selected, these fields are labeled Width and Height.
If the user does not enter any sizes in these fields, the sizes are calculated automatically based on the model’s
bounding box.

Coventor, Inc. March 23, 2010 D4-23


Section 4: Preprocessor Reference Version 2010

Using a Plane as a Cross-Section Viewer


The illustrations below show how this functionality could be used as a cross-section viewer:

Figure D4-6 Cross-Section View with Plane

Right click on the plane, and select Rendering Options.


In the dialog that opens, activate the Clipping option.

Using a Plane to Partition


A plane can be used to partition a solid model. After adding a plane, the user can position it using the plane handles or
by editing the coordinates in the Plane Properties dialog. To precisely align a plane, the user can also select three ver-
tices using the Vertex selection mode and the Ctrl key. The created plane will be defined by these vertices. Then from
the Geometry Browser or from the canvas, the user selects the plane and the layer or layers to be partitioned, and then
selects Solid Model > Partition.
Note that a model can only be partitioned if there are no entities in the Mesh Model folder. If a layer or layers have
been partitioned, and then the partitioned layers and the partition plane are added to the Mesh Model folder,
the partitioned layers that are on the side of the plane that the normal points towards are not added to the
Mesh Model folder, and will remain in the Solid Model folder. The Preprocessor will also generate an error mes-
sage warning the user that the layers on the normal side of the plane will not be added to the Mesh Model folder.
For an example of how to use a plane for partitioning, see page D4-7.

Creating a Symmetry Plane


When a plane is added to the Mesh Model folder, it automatically becomes a symmetry plane. The plane normal
defines which side of the model is cut or preserved. When a symmetry plane is added to the mesh model, it removes
the part of the model that the normal points towards; that part of the model will not be in the Mesh Model folder
and will no longer be available in the Solid Model folder. The symmetry plane normal ends up pointing out of the
model. After it has been added to the Mesh Model folder, the location and size of a symmetry plane can not be
changed.
Note that more than one symmetry plane can be inserted for a model. If there are more than two planes, not more than
two of those planes can be parallel, and those two parallel planes must be perpendicular to any other planes. The two
parallel planes must also have normals that are opposite to each other. For example of using multiple symmetry
planes, see page R3-22 of the Analyzer Reference.
The symmetry function is illustrated in Figure D4-7:

D4-24 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Figure D4-7 Using a Plane to Create Symmetry

Symmetry plane created


in Mesh Model folder

M
Plane in Solid Model folder

Plane in Solid Model folder Symmetry plane created


in Mesh Model folder

Coventor, Inc. March 23, 2010 D4-25


Section 4: Preprocessor Reference Version 2010

Mesher Settings
A plane can only be meshed with the Surface mesh algorithm. Triangle, quadrilaterals, or mixed element types can be
used. For more information on the Surface mesher, see page R2-28.

Add a Wedge Region


A wedge region can be used to simulate a small portion of a cylindrically symmetric model, therefore significantly
decreasing simulation time. When a wedge is added to the Mesh Model folder, only the portion of the model enclosed
by the wedge region appears. The wedge becomes a cyclic symmetry plane, and during simulation, no symmetry
boundary conditions need to be applied to the model created by the wedge. Note that the wedge entity exposes the
two planar faces of the wedge, but not the section of the cylindrical surface that connects them. This surface will cut
away useful parts of the model if the wedge radius is not sufficiently large. When the wedge is the selected entity, the
outlines of the cylindrical face are visible so model intersection can be checked easily.
Only one wedge region may be present in a model, but it can be combined with one symmetry plane. For an example
on how to use a wedge in simulations, see page R4-64 of the Analyzer Reference.
When the user selects Add a Wedge, the dialog below opens:

 Name
This field allows the user to assign a unique name to the plane. By default, the field displays "UNDEFINED."
 Rotation Axis
The default rotation axis is Z.
 Position
This setting defines the position of the rotation axis. First the user selects the position to use when defining the
plane (Corner or Center), and then the user defines that corner or center coordinate in the field below. Note that
the position is on an edge, not on a plane.
 Normal Direction
This field includes a drop-down menu with the following choices: Positive X, Negative X, Positive Y, Negative Y,
Positive Z, Negative Z, and Arbitrary. When one of the X, Y, or Z directions are chosen, the field underneath the
Normal Direction field automatically displays the vector normal. If the Arbitrary option is selected, the user may
enter the vector normal.
Note that the normal direction must be perpendicular to the rotation axis, choices that are not allowed appear
greyed out in the drop-down menu.
 Radius, Height
These fields can be left blank; the software then will calculate these dimensions automatically.

D4-26 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

 Angle
This setting defines the sectional angle. The value entered must satisfy 360/value = integer.

Mesher Settings
A wedge can only be meshed with the Surface mesh algorithm. The triangle, quadrilateral, or mixed element types
can be used. For more information on the Surface mesher, see page R2-28. The geometry created with the wedge can
be meshed with any mesher.

Add a Block
In the Solid Model folder, the block entity can be used to partition (see page D4-9 for an example). When it is added
to the Model Mesh folder, it can be used to mesh the model. The meshing method for Bubble-DropSim simulation is
multigrid, a powerful Flow3D feature that significantly increases simulation speed and accuracy. When the user

M
selects Add a Block, the dialog shown below appears:

 Name
This field allows the user to assign a unique name to the plane. By default, the field displays "UNDEFINED."
 Corner/Opposite Corner
These field are defined by X,Y,Z coordinates. If the user does not enter any sizes in these fields, the sizes are cal-
culated automatically so that the block encloses the entire model.
After a block has been added, it becomes an entity in the Geometry Browser. The user can right click on the block in
the canvas or in the Geometry Browser to access and edit the block properties, to hide or show the block, to name it,
to delete it, or to edit its rendering options.

Coventor, Inc. March 23, 2010 D4-27


Section 4: Preprocessor Reference Version 2010

Mesher Settings
When added to the Mesh Model folder, the block has a unique meshing window associated with it. This window is
used to specify how many edge divisions there are in each direction, and the number of elements along edge divi-
sions. For example, in the window below, the X-direction has four edge divisions specified. The first division is from
0 to 10, with 20 mesh cells. The second division is from 10 to 15, with 10 mesh cells, etc.

Note a block mesh can be deleted or removed from the Mesh Model folder without deleting the mesh on all other
regions.

4.10: Menu Options


This section documents the options available from the Preprocessor’s menu bar. Each menu bar function is described,
and any alternate method of performing the same function is listed.

4.10.1: File
This menu option is used for file management.

Open
This option opens a project browser that shows all models and meshes in the current project database. The equivalent
keyboard shortcuts are Ctrl + O or Alt + F + O. See page D4-16 for more details on opening models in the Preproces-
sor.

Close
This option closes the current model/mesh, but leaves the Preprocessor window open. The equivalent keyboard short-
cut is Alt + F + C.

Save
This option saves the current model or mesh. This option is disabled if the user loaded a solid model and added one or
more layers to the mesh. The equivalent keyboard shortcuts are Ctrl + S or Atl + F + S.

D4-28 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Save As
This option allows the user to save the current model or mesh with a different name. The equivalent keyboard short-
cut is Alt + F +A.

Append
This option allows the user to merge one model with another. The user selects the Solid Model or Mesh option, and
dialog opens that launches the Database Browser. The user can select any model or mesh in the current project or
import a device from another project. The equivalent keyboard shortcuts are Alt + F + P + S (for a solid model) and
Alt + F + P + M (for a mesh)
Note that solid models cannot be merged with mesh models. For more information on this option, see page D4-14.

Save Image

M
This options allows the user to save the image displayed in the Preprocessor canvas. The user has the option to save
the image as a tiff, jpeg, or HOOPS Stream File (.hsf extension). The image can then be imported into other pro-
grams. The equivalent keyboard shortcut is Alt + F + I.

Exit
This option closes all Preprocessor windows. The equivalent keyboard shortcut is Alt + F + X.

4.10.2: Edit
Selection Mode
This function determines which type of entity can be selected in the Canvas window. The user can select one of these
options: Layer, Part, Conductor, Face, Patch, Edge, and Vertex. Each of these options has an equivalent icon. The
equivalent keyboard shortcut is Alt + E + S; this shortcut opens the entity options menu.

If you are having troubling selecting a vertex or an edge, use the Rubberband Selection function (click and drag) to
draw a box around the area surrounding the vertex or edge, and it will then be selected automatically.

Note that making a selection in the browser changes the selection mode (see toolbar) to the type of the selected entity.

If you have a complex model and you only want to select objects in a certain part, hide all other parts using the
Hide Selection option. Selection will then be much faster because hidden parts are ignored in the selection
calculation.

Hide Selection
This option hides the entity selected in the Geometry Browser or the Canvas. The equivalent keyboard shortcuts are
Alt + E + H or Shift + H.

Show Selection
This option makes the entity selected in the Geometry Browser or the Canvas visible. The equivalent keyboard short-
cuts are Alt + E + O or Shift + O.
If you have hidden several entities, and would like to make these entities visible without clicking on each one in the
Geometry Browser and then selecting Show Selection, you can click on an entity that is higher in the Geometry
Browser hierarchy and then right click and select Show Selection. All entities that are in the lower level of that

Coventor, Inc. March 23, 2010 D4-29


Section 4: Preprocessor Reference Version 2010

entity’s hierarchy will be shown. For example, if you have hidden several faces, and what to make them all visible,
right click on the part or layer that contains those faces, and all the previously hidden faces will appear.

Delete
This option only becomes available if the selected entity can be deleted. Added planes, blocks, and wedges can be
deleted. Other entities cannot be deleted. The equivalent keyboard shortcuts are Alt + E + D or the Delete key.

Rendering Options
Choosing this option from the Edit menu opens the Rendering Options dialog window. This window can also be
opened using the keyboard shortcuts Alt + E + R or Shift + R, or by right clicking on an entity in the Geometry
Browser. The Rendering Options window determines how an entity appears when it is visible (e.g. whether edges,
faces, or both are rendered, their color, transparency, etc.). This option is only active in layer, part or face selection
mode. You cannot set rendering options on edges or vertices.

 Show
This option allows the user to select which entities are displayed. The available options for showing or hiding are
determined by which type of entity is selected. For example, if a part entity is selected, the user has the option to
show or hide model faces, model edges, model vertices, element edges, and internal edges. If a face entity is se-
lected, the user has the option to show or hide only the model faces. There are no rendering options for edges and
vertices.
 Color
Clicking on the colored button opens a color palette. The user can select any color from that palette and that color
will be applied to the entity that is selected. For example, if the user clicks on a part, and selects a different color
from the Rendering Options color palette, that color will be applied to only the part that is selected.
 Transparency
This option allows the user to set the face transparency of the selected entity. If 0 is selected, the entity will appear
as a solid. If 100 is selected, the entity will appear completely transparent.
Whatever rendering options are applied to an entity, they stay applied whether the entity is visible or not. Note that
overall visibility is not part of the rendering options except for faces. When you save a model, any rendering options
you have set are also saved.

Set Name
This option allows the user to change the name of the selected entity. The user can also access the Set Name function
by right clicking on an entity in the Geometry Browser or in the Canvas, and then selecting Set Name. The equivalent
keyboard shortcuts are Alt + E + N or Shift + N. The Set Name option is explained in detail on page D4-14.

D4-30 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Properties
The Properties dialog window is used to view and edit properties of selected entities. The options that appear in the
Properties window are determined by the selected entity. The window can be opened from the Edit > Properties
menu, with the Alt + E + P or Shift + P keyboard shortcuts, or by right clicking on an entity and selecting Properties.
No matter which entity is active, the Properties dialog window displays the entity ID number, which is an internal
number assigned by the Preprocessor, and the Name field. If the user has renamed the entity, that name will appear in
the Name field. If no user-supplied name is assigned to an entity, that field remains blank.
The window also displays any relevant geometry or mesh statistics. Note that for the Element Type statistics, the V is
an abbreviation for vertices, E is an abbreviation for edges, and F is an abbreviation for faces.

Layer Properties
A typical Layer Properties dialog is shown in Figure D4-8:

M
Figure D4-8 Layer Properties Dialog
Layer Properties accessed from Solid Model folder Layer Properties accessed from Mesh Model folder

The Layer name is not editable. Layer properties take precedence over part properties: changing any properties on a
layer entity will override part settings. Note that if a layer has multiple parts with different material properties, e.g.
one part is a conductor and another is set to be a dielectric, the Analysis Options are greyed out.

Coventor, Inc. March 23, 2010 D4-31


Section 4: Preprocessor Reference Version 2010

Part Properties
If a part entity is active in the Canvas or Geometry Browser, and the user opens the Properties dialog window, the
window shown in Figure D4-9 appears. Any properties that you set for your model from this window are saved with
the model description in the project database.

Figure D4-9 Part Properties Window


Part Properties accessed from Solid Model folder Part Properties accessed from Mesh folder after
the mesh was created.

From the Part Properties window, the user can adjust several characteristics that affect simulation:
 Material
This field displays that type of material assigned to the part. The type of material assigned is determined by the
process file. The user can change the material assignment in the window, without affecting the process file. If the
user clicks on the MPD Editor icon to the right of this field, the MPD Editor opens. Any changes made in the MPD
Editor from this window will apply only to the model displayed in the Preprocessor; the default MPD file, ac-
cessed from the MPD Editor icon in the Function Manager, will not be changed. For example, if the user changes
the dielectric constant of a material from the Parts Properties window, that dielectric constant would only be valid
for the active model. The dielectric constant for that material in any other model would not be changed.
 Analysis Options: Conductor or Dielectric
This option allows the user to designate a part as a conductor or dielectric. The default setting is determined by
the material’s dielectric constant value as it appears in the MPD.
This designation determines whether or not the entity appears in the Conductor folder. So when a conductor entity
is added to the Mesh Model folder, it is automatically added to the Conductor folder. Parts designated as dielec-
trics do not appear in the Conductor folder. If an entity’s status is changed from a dielectric to a conductor, or from
a conductor to a dielectric, the Conductor folder is automatically updated.
 Analysis Options: Material Type
 Solid: This option includes the part in mechanical analysis.

D4-32 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

 Fluid: This option designates the part as fluidic part to be included in the volume solver of microfluidic anal-
ysis.
The default setting for Material Type is based on the viscosity value for the current material from the MPD; if
viscosity is 0, the material is designated as a Solid, if viscosity is non-zero, the material is designated as a Fluid.
 Analysis Options: Suppress, except for MemElectro
This option removes the part from the input into the FEM solvers. Any part with this option selected will be used
only in electrostatic simulations, but not mechanical simulations.

Face Properties
If a face is active in the Canvas or Geometry Browser, and the user opens the Properties dialog window, the window
shown below appears:

M
Edge Properties
If an edge is active in the Canvas or Geometry Browser, and the user opens the Properties dialog window, the window
shown below appears:

Coventor, Inc. March 23, 2010 D4-33


Section 4: Preprocessor Reference Version 2010

Vertex Properties
If a vertex is active in the Canvas or Geometry Browser, and the user opens the Properties dialog window, the win-
dow shown below appears:

4.10.3: View
The items in this toolbar menu affect the active Canvas window.

Previous View
This option will return the model view to the previous state before the last model manipulation. For example, if the
last model manipulation was a rotation, this option will return the model to its unrotated state. It has the same func-
tion as the Previous View icon and the Ctrl + B keyboard shortcut.

Next View
If the Previous View option has been used, this option will allow the user to return to the view before Previous View
was invoked; in other words, it undoes the Previous View function. It has the same function as the Next View icon
and the Ctrl + N keyboard shortcut.

Select All
The option allows the user to select all the faces, edges, or vertices of a selected entity. This option makes it easier to
assign the same name to a group of faces or to refine mesh settings on a group of entities.

Rotate
This option allows the user to rotate the model using the left mouse button. Note that if the Automatic Spin option
available from Tools > Options > View is turned on, the model will continuously rotate until the user clicks on the
canvas. It has the same function as the Rotate icon and the Alt + V + R keyboard shortcut.

Pan
Selecting this option allows the user to move the model around the canvas using the left mouse button. This option
has the same function as the Pan icon , and the Atl + V + P keyboard shortcut.

Zoom
This option allows the user to zoom in or out on the model. This option has the same function as Zoom icon
and the Alt + V + Z keyboard shortcut.

D4-34 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Note that for the Rotate, Pan, and Zoom options, there is an alternate direct mouse manipulation mode. With
these modes, a user can rotate, pan, or zoom without switching off a selection mode.
 For the Rotate option, use Ctrl + Right click + drag.
 For the Pan option, use Alt + Right click + drag.
 For the Zoom option use Shift + Right click + drag.

Fit to Window
The option adjusts the zoom level to maximize the model within the current Canvas; its function is equivalent to the
Fit to Window icon. The equivalent keyboard shortcuts are Alt + V + F or Ctrl + F.

M
Note that for this release, the Fit to Window option may not function properly if the Z scale is not set to 1.

Zoom to Selection
This option zooms the view so that the selected entity fills the Canvas. For example, if the user selects a face, and
then selects this option, the view will zoom to that face. This option has the same function as the Zoom to Selection
icon.

Rubberband Zoom
This option allows the user to select an area to zoom. The user selects this option and then clicks and drags to create a
bounding box that encompasses the area to zoom. The user can also use Rubberband Zoom icon or the Atl + V
+ U keyboard shortcut.

Orientation
This option orients the model in the Canvas window. The user has these options: Oblique, XY+ view XY- view, XZ+
view, XZ- view, YZ+ view, or YZ- view. Figure D4-10 shows three different views for the same device: the default
view, the XY plane from the +Z side, and the XY plane from the -Z side.
Each of these options can also be selected from the Oblique View icon drop-down menu. or accessed using
the Alt + V + O keyboard shortcut.

Coventor, Inc. March 23, 2010 D4-35


Section 4: Preprocessor Reference Version 2010

Figure D4-10 Orientation of Device


Oblique

XY+ view XY- view

Redraw
Occasionally, you may find that the Canvas displays information from previous operations that is no longer valid.
This option clears any of these artifacts.

4.10.4: Solid Model


The Solid Model tool operations are only active on layers in the Solid Model folder. Most of these options cannot be
selected if any layers have been added to the Mesh Model folder. The options in this menu allow the user to partition
or merge layers.

Insert
This option can be used to insert a plane, a block, or a wedge. Note that entities can be inserted if layers have been
added to the Mesh Model folder, but once added, they cannot be deleted. The equivalent keyboard shortcut is Alt + S
+ I.

Plane
The user has these options for inserting a plane: Default, Enter Parameters, or Use Selected Parameters.
If the Default option is selected, the Preprocessor inserts a plane oriented in the positive X normal direction, with its
center at (0,0,0). The size of the plane is based on the model’s bounding box.
If the Enter Parameters option is selected, the Plane Properties dialog opens (see page D4-23). The user then has to
enter the normal direction and position of the plane.
To use the Use Selected Parameters option, first select three vertices using the Vertex selection mode icon and the Ctrl
key. When the Use Selected Parameters is then selected, the inserted plane is defined by those vertices.

D4-36 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Block
The user has these options for inserting a block: Default, Enter Parameters, or Use Selected Parameters. If the
Default option is selected, the Preprocessor inserts a block that encompasses the entire device. If the Enter Parame-
ters option is selected, the Block Properties dialog opens (see page D4-23). The user then has to enter the coordinates
for the two corners that define the block.
To use the Use Selected Parameters option, first select two vertices that are in opposite corners using the Vertex selec-
tion mode icon and the Ctrl key. When the Use Selected Parameters is then selected, the inserted block is defined by
those vertices.

Wedge
If the user selects the Wedge option, the Wedge Properties dialog opens (see page D4-26). The user has to define the
rotation axis and its position, the normal direction, and the angle. The wedge region does not have a default definition

M
and cannot be defined by selected vertices.

Partition
This operation allows the user to partition layer(s) using a plane or a block. The user will create one of these entities,
select the layer(s) and the entity using the Ctrl key, and then select this menu item. The equivalent keyboard shortcut
is Alt + S + P. For more information on this functionality, see page D4-24.
If there are multiple parts on a layer, the user can select a part, and then select this menu option. The Preprocessor will
put the parts on separate layers.

Merge Layers
The operation allows the user to merge layers. It could be used to undo partitioning. The equivalent keyboard shortcut
is Alt + S + M.
See page D4-6 for an example of how to partition layers.

Layers cannot be merged with a plane, a block, or a wedge.

Delete Region
This option applies to the auxiliary regions created with the Add a Plane, Add a Cyclic Region, or Add a block menus.
It is active only if one of these regions has been selected in the canvas or in the Geometry Browser. The equivalent
keyboard shortcut is Alt + S +D.

Coventor, Inc. March 23, 2010 D4-37


Section 4: Preprocessor Reference Version 2010

Statistics
This option opens a window for displaying the solid model statistics, including edge length, face area, and model vol-
ume statistics. These statistics will help the user to decide if the model is suitable for meshing. Meshing a model with
poor solid model features may result in mesh over-refinement and subsequently solution inaccuracies. Some symp-
toms of poor solid model features include
 Excessive memory consumption when meshing, resulting from an unnecessary number of elements
 Poor mesh quality (element aspect ratio, angles, huge spread of the element size spectrum)
 Failures during mesh generation resulting from to near zero edge/face length/area model features.
In the Solid Model Statistics window, shown below, edge length, face area, and part volume statistics are reported
separately. The window displays the total number, and minimum, maximum, and average values for each of these
entities. All the metrics are computed in a histogram format where there are ten intervals between the minimum and
maximum values of the metric.

The edge length values reported in the window are Euclidian lengths and are computed between the end vertices. The
histogram demonstrates the size variation (gradation) throughout the mesh. Please keep in mind that all the edge
lengths, including the thin Z element edge lengths, are included in this metric. The edge length values are useful for
identifying small edges that would cause over-refinement in the mesh. The Statistics window has a separate entry for
the smallest edge location. This value and other edge length values can be used to determine optimal input into the
Small Edge Threshold field in the Advanced Mesh Settings window for the Extrude, Tetrahedron, and Surface mesh-
ers; see page R2-13 for more details.
Eliminating undesired solid model features in 3-D solid models is a very difficult task and may create topological
problems. The best way to eliminate small features in a solid model is to return to the Layout Editor and eliminate
them from the 2-D design. The Layout Editor has a checklayout function that can be used to identify problem fea-
tures; see page D3-92 for more details.
The equivalent keyboard shortcut for accessing the Statistics dialog is Alt + S +S.

Heal
When any model is loaded into the Preprocessor, it is automatically checked for topological or geometrical problems,
such as sliver faces, missing faces, duplicate vertices and edges, and leaky surfaces. If any problems are found, the
Preprocessor will display a dialog with information on how to troubleshoot the problems, and layers that have these
types of problems will be highlighted in red in the Geometry Browser. Solid models imported from third-party soft-
ware frequently have these types of problems. The Heal option, which only becomes available when there are such
problems, can be used to correct them. The equivalent keyboard shortcut is Alt + S + H.

D4-38 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

The Quality Query feature (see page D4-46) can be used to identify the location and the size of sliver faces. For those
faces the Heal function cannot eliminate, the user can set the Small edge removal threshold in the Advanced Mesher
Settings window (see page R2-13). Otherwise the user must return to the layout file and fix the problem features.

The Quality Query highlights sliver faces in the Geometry Browser. These faces may be hard to see in the canvas.
To find the exact location of the sliver faces on the model, select one of the sliver faces in the Browser, then click
on the Zoom to Selection icon. The canvas view will zoom to the sliver face location.

Example
Below is an example of how the Heal tool can be used to correct a model’s topology. When the U-beam model is
opened in the Preprocessor, Layer2(poly) is highlighted as having errors:

M
To pinpoint the errors, we select this layer, and then select Tools > Quality Query. This dialog reports that the smallest
edge in the model is 0.00160258.

Coventor, Inc. March 23, 2010 D4-39


Section 4: Preprocessor Reference Version 2010

To locate these small edges, we enter 0 in the Lower Limit field and 0.002 in the Upper Limit field, and click on
Apply. The Preprocessor then displays any edges that fall within these limits:

To pinpoint the edge location, select it in the Geometry Browser, and then click on the Zoom to selection icon:

D4-40 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

M
To get rid of these sliver faces, select the Layer that includes these faces, and then select Solid Model > Heal (or right
click on the layer and select Heal). Layer2 is no longer highlighted, and zooming in on the area where the sliver face
originally was reveals a smooth surface:

The Heal tool will not work on all models, and it is best to identify the layout problems that caused the topological
errors. As shown in Figure D4-11, by zooming in on the problem area in the layout we see an overlap in the top
objects used to create the U-beam. This overlap created a tangent that led to the sliver face. To get rid of the overlap,
we could move one of the objects or use the Boolean Or function.

Coventor, Inc. March 23, 2010 D4-41


Section 4: Preprocessor Reference Version 2010

Figure D4-11 U-Beam Layout with Overlapping Objects

4.10.5: Mesh
Note that even though the Mesh menu options are accessible in Designer’s Preprocessor window, mesh capabilities
are not included in the basic Designer software. An additional license feature can be purchased for Designer so that
the user can mesh a device. Below is a description of each menu option, but CoventorWare’s mesh settings and capa-
bilities are detailed in the CoventorWare ANALYZER Reference, starting on page R2-1.

Add to Mesh Model


This operation adds selected layer(s) to the Mesh Model folder, converting them to mesh regions. If the user adds a
layer to the Mesh Model folder that already had meshed layers, the meshes on those layers will be deleted. Note that
this action does not generate the mesh, but rather indicates that the layer is available for meshing. The equivalent key-
board shortcuts are Alt + M + A or Shift + A.

Remove from Mesh Model


This operation allows this user to remove a region from a mesh. The user selects the region to delete, and then selects
Remove from Mesh. This operation cannot be applied to layers, parts, faces or edges. The equivalent keyboard short-
cut is Alt + M + R.

Split Region
If multiple touching layers are added to the Mesh Model folder with the Automatically merge touching layers option
checked, the layers will be placed into a single region. However, it is still possible to select one or more of these
touching layers and create a separate region so that independent meshing options may be used.
To split a region, select one or more of the component layers (use Ctrl key for multiple selections), and use the Split
Region command, available through both the Mesh menu and the right-click menu.
Note that if sequential Split Region commands are used, a layer that was previously split off may be merged back
with other touching layers. The way to prevent this is to use the multi selection method. For example, if you have a
stack of six touching layers, and wish to split layer 2 and layer 5, then you should select both layers with a multi
selection and apply the Split Region command once. If a region has more than one layer, this operation can be used to
split those layers into separate regions so that different mesher settings can be applied to them. The user must select
the layers to be split, and then select this option.

D4-42 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Note that only the layers selected will be split, even if they touch another layer. For example, if you have four layers
that are all touching one another, when you drag them to the Mesh Model folder, they will be merged into one region.
If you select two layers to be split, the result will be two regions. In the example below, all four layers are touching, so
they belong to one region. After selecting two layers, and then selecting the Split Region, there are two regions.

Figure D4-12 Splitting a Region

Join Regions

M
This option allows you to join two regions. You can use this option to join layers that do not touch; then you could
apply one meshing type to all the layers. To use this option, select the two regions that are to be joined, then select
Join Regions from the Mesh menu.

Automate MemMech Links


If there are two or more regions that share faces, this option can be used to automatically name the matching faces.
This option can only be used from the Mesh folder. It becomes active when the user selects two regions that share
faces. The names will be appended with a master or slave designation, with the face with the larger area designated as
the master. To view the names, expand the Region tree in the Geometry Browser.
When this option is activated, the MemMech LinkageBCs dialog will prompt the user to add the pair(s) of faces to the
dialog. Note that if the user changes the name of the automatically assigned faces, the LinkageBCs will not prompt
the user to add the pairs. For more information on the LinkageBCs dialog, see page R4-94 of the Analyzer Reference.
In the example below, the tethers are partitioned from the mirror so that a finer mesh can be applied to the tethers.
Then the tethers and the mirror are selected, and the Automate MemMech Links option is invoked. The tether faces
that touch the mirror are assigned a name with the slave suffix, and the faces on the mirror are assigned a name with
the master suffix.

Coventor, Inc. March 23, 2010 D4-43


Section 4: Preprocessor Reference Version 2010

Figure D4-13 Automating MemMech Links

Tethers need to be linked to the mirror

Mirror sides are the master faces, and tether


sides are the slave faces

Mesher Defaults
This option can be used to setting global mesher settings for all layers. Choosing this option opens the standard
Mesher Settings window. The user can then select any mesh type, and it will be applied to all the regions in the
model. The user can set the meshing type and dimensions for all regions, or can set a default mesh type for all
regions, and then set the dimensions for each region individually. Note that mesher default settings apply only to
newly created or modified regions; they will not be applied to previously meshed layers.
The mesher settings selected from this menu option can be overridden at any time.

D4-44 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Mesher Settings
This option opens the Mesher Settings window. The user can select the mesh type and other meshing control parame-
ters for a selected entity. The user can also access this option by selecting a region, and then right clicking to select the
option. The equivalent the keyboard shortcuts are Alt + M + M or Shift + M.

Clear Mesher Settings


This option clears the mesher settings on selected entities and on all their sub-entities. The user can also access this
option by selecting a region, then right clicking to select the option. The equivalent keyboard shortcut is Alt + M + C.

Generate Mesh
This option has the equivalent functionality of the Generate Mesh icon. Selecting this menu item will generate

M
a mesh for all the mesh regions. No mesh will be created for those regions that have the Generate Mesh check box
deselected in the Mesher Settings window. The equivalent keyboard shortcut is Alt + M + G.

Delete Mesh
This option has the equivalent functionality of the Delete Mesh icon. Selecting this option deletes the mesh
from all regions. Note that this option does not delete any mesher settings.

Mesher Log
This option opens the mesher log window. This log window reports meshing progress and any meshing problems.

Automatically merge touching layers


This option allows automatic merging of touching layers when they are dragged from the Solid Model folder to the
Mesh folder. This setting is turned on by default. If the user unchecks this option, all layers added to the Mesh folder
are designated as separate regions, regardless of whether or not they are touching, and there will be no continuity
through the connected geometry.
Note that if this setting is turned off, it will remain turned off during the current Preprocessor session, regardless of
what model is active. But if the Preprocessor is closed, the next time it is opened, this setting will be turned on.

4.10.6: Tools
Transform
This option opens the Transform dialog. The dialog setup options will vary, depending whether a solid model or mesh
has been selected and on the type of transform. The equivalent keyboard shortcut for opening this dialog is Alt +T +
T. See page D4-11 for information about solid model transforms, or page R2-41 for details on mesh transforms.

Coventor, Inc. March 23, 2010 D4-45


Section 4: Preprocessor Reference Version 2010

Quality Query
The Quality Query function is used to investigate the quality of a model or mesh. Entities that meet the user’s chosen
criteria are highlighted on the canvas and in the Geometry Browser. A model quality query investigates the distribu-
tions of edge lengths, face areas, part volumes, and sliver faces. This type of query can be done on a solid model or a
meshed model. A mesh quality query investigates aspect rations, corner angles, edge lengths, and sliver faces. This
type of query can be done on both surface and volume meshes.

Solid Model Quality Query


A solid model quality query can be run on the entire Solid Model folder, on an individual layer or part, or on multiple
selections of the same type of entity. The user first selects the entity, and then selects the Quality Query option or the
equivalent keyboard shortcut Alt + T + Q. The window shown below opens:

Controls to set
user criteria

The user first selects a metric type from the drop-down Metric field, and then sets a lower and upper limit using the
slide controls or by entering the numbers in the fields beside the controls. Both fields must be set. When the user
clicks on Apply, the Quality Query dialog reports the percentage of the selected entity that fall within the lower and
upper limits compared to the total number of that entity in the solid model. In the Preprocessor window, the entities
that fall within the limits are highlighted in the Geometry Browser and the Canvas. Note that clicking on OK applies
the quality query criteria, but closes the dialog; the entities remain highlighted until the user clicks.
The Clear button clears the highlights in the Preprocessor window. The Cancel button closes the dialog without exe-
cuting the query.
The Sliver Faces metric only appears if the entire Solid Model folder is selected, if one or more layers are selected
from the Solid Model folder, or if a region in the Mesh Model folder is selected. When the user selects Sliver Faces as
the metric, the Quality Query appears as shown below:

D4-46 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

The user enters a maximum value in the Threshold field, and then clicks on Apply. Any face that falls below this
threshold value will be highlighted in the Canvas and the Geometry Browser, and the number of sliver faces will be
reported in the Quality Query dialog (Sliver Count).

M
Mesh Quality Query
A mesh quality query can be run on the entire Mesh Model folder, on an individual region, layer or part, or on multi-
ple selections of the same type of entity.
Surface mesh and volume mesh statistics are reported separately. The user can select which domain to query using the
radio buttons at the top of the window. Note that a model query can be run on a mesh entity.

The window reports the number of elements, the number of entities created, and the average, minimum, and maxi-
mum values for each dimension or entity. The statistics are also computed in a histogram format, where there are ten
intervals between the minimum and maximum values. The following metrics can be selected for the Quality Query:
 Aspect Ratio: The ratio of the maximum to minimum bounding box edge lengths of an element. For isotro-
pic computations, low aspect ratio elements are preferred.
 Corner Angles: In 3-D elements, the angles are computed between the faces of each edge, e.g., for a brick
element twelve angles are computed. In 2-D elements, the angles are computed between the edges of a face.
Four angles are computed for a quadrilateral element. Avoid corner angles that are close to 180 degrees
because they affect the accuracy of the simulation.

Coventor, Inc. March 23, 2010 D4-47


Section 4: Preprocessor Reference Version 2010

 Edge Lengths: The edge length is the Euclidian length and is computed between the end vertices. The histo-
gram demonstrates the size variation (gradation) throughout the mesh. Please keep in mind that all the edge
lengths, including the thin Z element edge lengths, are included in this metric.
The lower and upper limit controls and the buttons functions are the same for the mesh quality query and the model
quality query. When the user clicks on Apply, the percentage of entities that fall within the chosen criteria is dis-
played in the bottom of the dialog and the actual entities are highlighted in the Canvas.

Clearing Quality Query Highlights


When the user runs a query, the entities that fall within the selected criteria are selected in the Geometry Browser and
the Canvas, and they will remain selected until the user clears them. To clear the highlighted entities, the user can
click on the Clear quality query highlight icon or can click on Clear in the Quality Query dialog.

Example
Figure D4-14 shows the result of a volume mesh quality query of mesh elements with corner angles between 36.56
and 65.66. When the user clicks on Apply, only the elements that fall within the specified range are displayed.

Figure D4-14 Mesh Quality Query of Corner Angles

D4-48 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Tape Measure
This tool measures the distance between any two points on a model. Select this option from the Tools menu, or click
on the Tape Measure icon (third icon from the right). Click and drag from one point anywhere on the model to any
other point on the model. The distance between this two points (in microns) is reported in the status field below the
icon bar. The points chosen do not have to be vertices, but can be any coordinates on the model.

 Note that the Tape Measure tool will not work if the Z Scale is set to any number other than 1.
 The Tape Measure tool cannot be used on an imported model.

Measure Distance

M
This tool measures the exact distance between two vertices. Select this option from the Tools menu, or click on the
Measure Distance icon (second icon from the right), and then click on any two vertices in your model. The XYZ
coordinates of each vertex and the distances (in microns) between the two vertices are displayed in the status field
beside the Z-Scale, as shown in Figure D4-15:

Figure D4-15 Using the Dimension Tool

XYZ coordinates
of the vertices,
Vertices selected by clicking on the model and the distance
between them

If you are having troubling selecting a vertex, use the rubberband selection function (click and drag) to draw a box
around the area surrounding the vertex. The vertex will then be selected automatically.

Note the following behaviors:


 Clicking on a vertex that is already selected will unselect it. Clicking on it again will select it again (like a
toggle).

Coventor, Inc. March 23, 2010 D4-49


Section 4: Preprocessor Reference Version 2010

 If two vertices are selected and you select a third vertex, the first selected vertex will be unselected automati-
cally and the distance between the previously selected second vertex and the newly selected third vertex (now
it becomes the second) will be automatically shown.
 You do not have to hold Ctrl or Shift to do multiple selection in this mode.
 Clicking on an empty spot will clear all selections.

Markup
This option allows the user to highlight an area in the Canvas by a free-hand drawing. There is an equivalent Markup
icon in the toolbar.
Note that any markups added to a model will disappear when the model is manipulated.

Options
This function allows the user to set various parameters that affect the behavior and appearance of the Preprocessor.
The fields in the right side of the Options window is determined by the Option selected in the left side of the window.
The equivalent keyboard shortcuts for opening this dialog are Alt + T + P or Ctrl + P.

View
If the View option is highlighted in the Options browser, the window below appears. These options affect the Canvas
display.

 Top Background Color\Bottom Background color


These two options set the color or colors for the Canvas background. If both options are the same color, the Canvas
is one color. If they are different colors, the Canvas will be shaded, with the top background color at the top of the
Canvas, the bottom background color at the bottom of the Canvas, and a gradient of color between the two, as
shown in Figure D4-16:

D4-50 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Figure D4-16 Creating a Color Gradient in the Preprocessor Canvas

M
Clicking on the color icon beside this option opens the Color Chooser dialog seen below:

The user can click on the one of the available squares of color, and then click on OK to apply that color as the
background canvas color. Several Options windows have color options that apply to different settings.
The user also has the option of selecting the color by entering values for hue, saturation and brightness (from the
HSB tab), or by entering values for red, green and blue (from the RGB tab).
 Projection Method
This option defines the view of the model.
 Orthographic: In the orthographic view, all objects appear at the same scale. Relative distance from the
camera does not affect the size of objects. This projection type is useful when it is important to maintain the
actual size of objects and the angles between objects.
 Perspective: In the perspective view, objects that are far away are smaller than those nearby. Perspective
viewpoints give more information about depth. This projection type is useful when you want to display real-
istic views of real objects. This view is the default.
 Axes visible
This option displays the XYZ orientation axes in the lower left corner of the Preprocessor canvas.
 Bounding Box visible
This setting determines if the bounding box that encloses a model is visible when the model is rotated.

Coventor, Inc. March 23, 2010 D4-51


Section 4: Preprocessor Reference Version 2010

bounding box

 Automatic Spin
This option allows the model to rotate continuously. The user checks this option and clicks on OK. Then in the
canvas window, the user clicks on the model and starts the rotation by dragging the model in the desired direction
of rotation. The model will continue to rotate until the user clicks on the canvas. To start the rotation again, click
and drag the model in the desired direction.
The speed of the rotation of the model is determined by the speed of the initial movement of the mouse. To make
the model move slowly, drag the mouse slowly when you start the rotation.
 Render Intermediate Views
If this option is selected, the user will see the model rotate slowly as the view is changed. For example, the user
will see the model move from the XYZ orientation to the XY orientation, instead of the model switching from one
orientation to another instantaneously.
 Smooth (Gouraud) Shading
With this display option, colors are assigned to each vertex, then they are blended across the face of the polygon.
Because each vertex is typically associated with at least three distinct polygons, thereby producing smooth shad-
ing, this makes the object look natural instead of faceted.
 LOD
This field allows the user to adjust the level of detail (LOD) that the Preprocessor displays. Setting this field to a
higher number decreases the level of detail. Decreasing the level of detail increasing the rendering speed.
 Shadow
This checkbox allows the user to turn off and on the shadow effect that is visible if the Canvas color is not black.
Note the shadow around the bottom of the model on the left in Figure D4-17; in the figure on the right, the Shadow
option was turned off.

Figure D4-17 Shadow Effect Turned On and Off


On Off

D4-52 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Lighting
This option can be used to adjust the overall lighting of the model display.

M
 Distant light position
Use this setting to adjust the distant light position. This setting allows the user to specify the distant light position
in spherical coordinates relative to the camera coordinate system. Figure D4-18 shows how the Preprocessor com-
putes the distant light position using spherical coordinates.

Figure D4-18 Relationship Between Spherical Coordinates and Camera Coordinate System
z’

ϕ
y’
θ

x’

x’, y’, and z’ represent the camera coordinate system. θ is the azimuth angle, and ϕ is the elevation angle. ν is the
directional vector. The Preprocessor assumes that ν = 1. The user can specify the azimuth and elevation angles, and
the Preprocessor will use those values to compute the distant light position.
 Distant Light Intensity
Use the sliding scale to dim or brighten the distant light. Setting this scale to 0 effectively turns off the distant light.
 Ambient Light Intensity
Use the sliding scale to dim or brighten the ambient light, which is the background light. If this setting and the
Distant Light Intensity setting are both 0, the canvas will be completely dark.
 Defaults
Use this button to reset the lighting options to the default settings, which are shown in the window above.

Coventor, Inc. March 23, 2010 D4-53


Section 4: Preprocessor Reference Version 2010

Mesh
This option sets mesh options that apply to all meshes.

 Split Parts
If a model has multiple, non-contiguous parts on the same layer, this option creates a separate volume for each
part. This feature allows the user to assign different material properties to these volumes even though they were
originally on the same layer.
This setting is turned on by default. When it is turned off, it will remain turned off throughout the Preprocessor
session, regardless of what model is active. But if the user exits the Preprocessor, and then opens it again, this
setting will be turned on.
 Shell Elements
This setting determines if a region is shellable. For more details, see page R2-10.

Rendering / Element Edges and Model Edges


If the Element Edges or Model Edges option is highlighted in the Options browser, the window below appears. Note
that these settings will affect the element and model edges if they are made visible in the Edit > Rendering Options
window.

 Global Color
This option determines the color of all element or model edges (depending on which Rendering option is selected).
Clicking on the color icon opens the Color Chooser window.

D4-54 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Note that if you change the edge color for a model that has already been meshed, the new color will not be dis-
played unless you remesh the model.
 Thickness
This setting determines the line thickness (in pixels) of the edges. Unlike the color option, any change to this set-
ting will be applied to the model immediately; you will not have to remesh the model.

Line thickness cannot be any greater than 200.

Rendering Model Vertices


If the Model Vertices option is highlighted in the Options browser, the window below appears. This window allows

M
the user to adjust the size of the vertices that appear on the model when the Rendering Options window, accessed
from Edit > Rendering Properties, has the Model Vertices option checked.

Selection
If the Selection option is highlighted in the Options browser, the window below appears. From this window, the user
can choose the highlight color that indicates an entity has been selected. For example, if the user clicks on the color
icon in this window, and selects the color blue, any entity then selected in the Preprocessor will turn blue. Note that a
change of this parameter only affects new selections.

Coventor, Inc. March 23, 2010 D4-55


Section 4: Preprocessor Reference Version 2010

Quality Query
This option controls how the entities falling into the filtering range of the Quality Query function are highlighted in
the canvas. For more information on the Quality Query function, see page D4-46.

4.10.7: Help
The Help menu options include Preprocessor Reference and About. The Preprocessor Reference option opens the
Preprocessor documentation. The equivalent keyboard shortcut is the F1 key. Note that to access the documentation,
you must have Adobe Acrobat Reader, version 6.0.2 or higher on Windows and version 7.0 or higher on Linux.
The About option displays CoventorWare version information.

4.11: Preprocessor Environment Variables


The table below lists environment variables that a user can set to extend the Preprocessor’s functionality. These envi-
ronment variables activate functionality that is not needed by the average user and should be used with caution.
For information on how to set environment variables, see page U1-47 of Using CoventorWare.

Variable Name Possible Values What it does

COV_ENABLE_HOOPS_ any value Turns on logging of HOOPS graphics library calls; may be
LOGGING useful for diagnosing problems with graphics hardware on
Linux systems.

COV_NO_OPENGL TRUE Turns off the OpenGL (hardware acceleration of graphics


card) in the Preprocessor. Use this variable only when you
have graphics issues that cannot be resolved by other means,
such as upgrading the video driver. Performance will suffer
without OpenGL. However, if you run into a rendering issue
with OpenGL turned on, you can always tell whether it's a
graphics card issue or not by using this environment variable
to turn off OpenGL. On Windows, setting this environment
will switch the Preprocessor to native GDI.

D4-56 March 23, 2010 Coventor, Inc.


Section 4: Preprocessor Reference Version 2010

Variable Name Possible Values What it does

COV_SET_SPAREABS 1.0e-10 to 1.0, If this environment variable is set, AutoBuilder reliably


default is 1.0e-6 handles floating number values (for dimensions, coordinate
locations, etc.) up to 10 digits (accuracy of 1.0e-10 for
numbers between 0 and 1). The default accuracy is 1e-06,
meaning that the maximum model dimensions in which
AutoBuilder can still reliably operate is 1.0e+4. For models
with dimensions larger than 1.0e+04, this accuracy must be
lowered using this environment variable. For example, for
models with maximum dimensions of 1.0e+05, the value must
be 1.0e-05 or larger.

ACIS_NORMAL_TOLERANCE 0 < positive real Sets the normal tolerance for the ACIS faceter refinement in

M
value < 45, the Preprocessor. The faceting of a solid model controls how
representing angle accurately the model is rendered. A small value for the normal
degrees. The default tolerance will cause rendering to be more accurate, but will
value is 15. also cause it to be slower.

Coventor, Inc. March 23, 2010 D4-57


Section 4: Preprocessor Reference Version 2010

Notes

D4-58 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Section 5: Advanced Procedures

This section provides additional, in-depth information on the following topics:


 creating a sphere
 using curves
 hierarchical structures and editing
 equations and equation syntax
 creating generators with TCL

5.1: Creating a Sphere

M
The Process Editor’s Round Corners modeling action can be used to create a sphere. The process, layout, and result-
ing solid model are shown below.

5.1.1: Process
Figure D5-1 shows the process used to create a sphere. The sphere is created with five steps. The first two steps
deposit and etch aluminum to create a base for the sphere. The conformal shell deposit creates the rounded bottom for
the sphere. The deposit and etch of chromium creates the sphere, and rounded corners step creates the final sphere
shape.

Figure D5-1 Sphere Process

Note the following:


 The conformal shell at Step 3 after the etch with mask Round should have rounded corners set to all with a
radius set to the desired sphere radius r.
 The conformal shell at Step 3 and the planar fill at Step 4 must have thicknesses equal to r.
 The straight cut at step 5 must be defined by depth with value r.
 The Round Corners must be for all corners and of radius r.

Each of this steps is shown below.

Coventor, Inc. March 23, 2010 D5-1


Section 5: Advanced Procedures Version 2010

Figure D5-2 Steps 3-6


Step 3

Step 4

Step 5

Step 6

D5-2 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.1.2: Layout
The layout, shown below, has two circular masks. The radius of the Round mask was used to define the depth and
thicknesses of the process step operations.

Figure D5-3 Sphere Layout

M
r

2r

5.1.3: Solid Model


Below is shown the final solid model with all the layers shown and with only the sphere layer shown.

Coventor, Inc. March 23, 2010 D5-3


Section 5: Advanced Procedures Version 2010

Figure D5-4 Sphere Model

By hiding some of the layers, we can see how the solid model was created. When we hide the Base2 and sphere lay-
ers, we see the geometry created with the deposit and etch of the aluminum. The aluminum is etched with the larger
circle mask (Round) to create a base for the sphere.

Figure D5-5 Geometry Created with Deposit and Etch of Aluminum

D5-4 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

By hiding the sphere layer, we see how the conformal deposit further defines the base of the sphere:

Figure D5-6 Geometry Created with Conformal Deposit

M
The Planar Fill, Straight Cut, and Round Corners steps create and shape the final sphere geometry. Without the Round
Corners steps, the solid model would have looked like this:

Figure D5-7 Solid Model without Round Corners Step

Coventor, Inc. March 23, 2010 D5-5


Section 5: Advanced Procedures Version 2010

5.2: Using Curves


The Layout Editor has the ability to draw true curves. Unlike polygon representations that are common with similar
drawing programs, the curves created in the Layout Editor are stored as mathematical quadratic or cubic equations.
The primary advantage of this format is the ability to build mechanical meshes without partitioning the object into
four- or six-sided polygons.

5.2.1: Arcs
Many of the Layout Editor’s curve types are variations of an arc. They include the circle, torus (or path), pie, and
chord. They all can be specified as command line option variations of an arc, and all have separate icons available
from the vertical toolbar. Examples are shown in Figure D5-8. Each example shown starts out with the same center
point and radius, essentially defining the same circle or a portion of the circle.

Figure D5-8 Example of Arc Variations

circle torus pie chord

5.2.2: Control Point Curves


The Layout Editor can also build curves as you would splines or Bezier curves. You can define three (quadratic) or
four (cubic) control points, and the Layout Editor will fit to the curve. Figure D5-9 shows several examples:

Figure D5-9 True Curves with Three and Four Control Points

In the example, the green outline path represents the control point coordinates chosen for the curve. The end point
control coordinates are the end points for the shape, while the one or two intermediate control points affect the angle

D5-6 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

of the curve produced. The red filled object is the resulting shape. Compare the upper and lower objects to see how
control point placement affects the resulting curve. Because four control points were used, the objects on the right
show a slightly different curvature compared to those on the left.

5.2.3: Building an Ellipse


Building an ellipse demonstrates the degree of control provided by true curve drawing. Other tools are also used in
this procedure to create design symmetry.
1. From the vertical icon column, select All-angle input.
2. From the menu bar, select Object > Curve.
3. In the dialog window that opens, ignore the settings. Click on Apply.
4. When prompted, enter four points that will draw one-fourth of an ellipse. (See A in Figure D5-10).

M
5. After completing the drawing, select the object.
6. From the lower icon row, select Mirror.
7. Draw a horizontal axis for flipping. The tool then creates a copy. (See B in Figure D5-10).
8. Select the two objects.
9. From the lower icon row, select Mirror.
10. Draw a vertical axis to flip the selection horizontally. The tool creates mirrored copies of both objects. (See C
in Figure D5-10).
11. From the vertical icon column, select Polygon.
12. Create the diamond-shaped inside part of the object group. (See D in Figure D5-10).
13. Select all five objects.
14. From the menu bar, select Modify > Boolean > OR. A single ellipse is formed. (See E in Figure D5-10).

Figure D5-10 Ellipse Created from One Quadrant

Coventor, Inc. March 23, 2010 D5-7


Section 5: Advanced Procedures Version 2010

5.2.4: Polygon Curves


To draw curves as polygons, first select View > Object Types > Properties... to bring up the Object Browser. Under
the arc classification, select DrawAsPolygon. Changes on the screen may not be noticeable. To see the points used by
the Layout Editor to define the circle, check VisibleCoords under the same menu.

Figure D5-11 Object Browser

In Figure D5-12, the circle on the left is defined as a true curve, with the control points showing how this mathemati-
cal curve is created. The circle on the right is a digitized polygon representation, showing each segment of the poly-
gon used to form the curve.

Figure D5-12 True Curve and Polygon Curve

5.2.5: Curve Flatness


True curves must be converted into polygons for mask fabrication in CIF and GDS files because these formats do not
support true curve representations. The Curve flatness option, accessed from Tools > Options, controls the tolerance
of the true curve to the distance deviation of one segment of an equivalent polygon.
The default flatness value is 0.1. The reverse operation (recreating a true curve from an imported polygon approxima-
tion) is accomplished with the addcurve command (see page D5-10).
These changes cannot be observed in the Layout Editor drawing area, but if the DrawAsPolygon option is selected,
the changes can be previewed. This feature can also be used to create other unique shapes from basic curves. Exam-
ples are shown in Figure D5-13.

D5-8 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Figure D5-13 Curve Flatness Effect

true curve

For all example curves, radius =12


Flatness effect changes with different radius

M
flatness = 5 flatness = 4 flatness = 1

flatness = 0.1 flatness = 0.01


(default)

Converting to Polygon with Dialog


The desired layer, flatness, and point limit may be entered through a dialog (accessed with the command topoly-
gon -ui on). Select an object location and then click on Apply to make the conversion.

Figure D5-14 To Polygon Dialog

Coventor, Inc. March 23, 2010 D5-9


Section 5: Advanced Procedures Version 2010

5.2.6: Converting Polygons to Curves


The opposite of the curve flatness function is the ability to transform polygons into curves with the addcurve com-
mand. Imported files with curves approximated as polygons by other third party programs can be converted into true
curves, and segmented linear representations of complex curve functions can be converted to true curves.
The addcurve command is available only from the command line. From the bottom of the canvas screen or from the
Terminal window, enter addcurve -ui on to display a dialog window:

Figure D5-15 Add Curve Dialog Window

The setting shown above (Automatically Fit curve to points set to True) is usually sufficient to fit a curve to an exist-
ing polygon with acceptable results. The addcurve defaults assume that curves are desired where the polygon angle is
less than 10 degrees. For circle conversions, this translates to a circle approximated by a polygon with more than 36
equal segments. If this is acceptable, the Max curvature field may be left blank. For greater angles, set the Max curva-
ture field to a desired angle. The Max error field is also provided to create more accuracy in the curve fit routine if
required. Usually, the default of 1 is acceptable, and the field may be left blank.
Figure D5-16 shows an example of a polygon approximation of a circle that uses uneven segment lengths. This situa-
tion requires a Max curvature setting of about 25 for proper translation. For clarity, the Object Browser VisibleCoords
attributes (see page D3-88) are turned on. The figure on the left is considered a polygon object, while the converted
object is considered a shape.

Figure D5-16 Simple Addcurve Conversion with Max Curvature Value of 25

Figure D5-17 shows a sequence of steps used to fit curves for a keyhole-shaped object, which is more complex
because it includes both straight and curved segments.

D5-10 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Figure D5-17 Complex Addcurve Shapes

A B C D

M
The original shape is labeled A. After determining that a maximum curvature of about 30 degrees is required, fitting
the entire object results in shape B. To straighten the curved sides in the lower portion of the design, use the addcurve
command, which enables the selection of object segments for curve fitting using the Start, middle, end field.
The curve conversion requires a multi-step process, as depicted in shapes C and D:
1. Set the Max curvature field to 30.
2. Click on the Select button next to the Start, middle, end field.
3. Click on the beginning, middle, and end points of the lower curve of shape B.
4. Click on Apply. The lower curve is converted as shown in shape C.
5. Repeat for the upper curve. The final result is shown in shape D.

Coventor, Inc. March 23, 2010 D5-11


Section 5: Advanced Procedures Version 2010

5.2.7: Equation Fitting


The curve command may be used to plot a curve using an equation and range of abscissa values. The equation can be
complex and can be input using regular operators. See “Equations and Equation Syntax” on page D5-31 for more
information.

5.3: Hierarchical Structures and Editing


Hierarchy is the tree structure created by organizing cells into groupings. Designs that have no identifiable modules
are said to be flat. A hierarchical design consists of two or more cells, with sub-cells being part of other cells. The
concept is similar to the way your department or company is organized (managers, project leaders, engineers), or the
way your disk drive is set up (C:\ drive, C:\Windows files, C:\Windows\System files). A hierarchical Layout Editor
drawing might be organized as shown in Figure D5-18:

Figure D5-18 Flow Chart of Hierarchy in Design

Level 0
comb drive (Top Cell)

comb array sensor electrodes Level 1

comb comb comb comb


cell cell cell cell Level 2

This simple design shows three levels of hierarchy. The comb drive cell is at the top of the hierarchy and is the Top
Cell at Level 0. It includes two cells at Level 1, and the comb array cell at Level 1 includes four identical cells at
Level 2.

5.3.1: Considerations for Hierarchy in the Design


The use of hierarchy in a design can produce a more organized and more easily editable drawing file. However,
because it adds some complexity to the design in terms of manipulation, the amount of hierarchy used must be care-
fully considered. Here are some guidelines:
 Consider hierarchy when a flat design would consume excessive canvas space. It is easier to move up and
down hierarchical levels than it is to pan and zoom all over your canvas to place and edit objects.
 Consider hierarchy when you use structure groupings that repeat. If you start drawing and repeat the structure
more than two or three times, consider making a cell reference.
 Consider hierarchy when you are drawing a complex shape that must adhere to multiple design rules. If you
need to use that shape again, you will know that it is correct by construction.
 Consider hierarchy when working on a large or complex design and several members of a workgroup are
design contributors. The detailed sub-cells can be designed in parallel with the rest of the overall model.
 Consider hierarchy when a design is not fully defined. One or more sub-cells can be "roughed out" for overall
footprint size and completed at a later time. When the specifications for the sub-cells is available, it will be
easy to make changes in one place. Because of cell referencing, the changes will cascade to all appropriate
places in the design.
 Note that any cell reference can have additional nested references. Be sure you need additional levels before
creating them.
 Note that the Top Cell designation is only for the top level cell in the hierarchy and for any unused cells (they

D5-12 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

are Top Cells because they are not referenced). Always check the Cell Browser to be sure all cells are placed.
Unless you intentionally want to have multiple Top Cells (as variants of a design, for example) the Cell
Browser can point out structural problems in your hierarchy.

5.3.2: Non-Hierarchical (Flat) Design


You can always create all objects at a flat level (no hierarchy). Taken to an extreme, a library can then consist of a sin-
gle cell designated as a Top Cell (at the top of the hierarchy). This approach may work for a small number of poly-
gons in a simple design, as shown in Figure D5-19.

Figure D5-19 Simple Flat Design Structure

M
The single-cell approach, however, has some serious limitations, as illustrated by the following examples:

Repeating Objects
A design may have numerous instances of the same object, as shown in Figure D5-20. The red sensor structure (left)
is used five times in the illustration. The design can be constructed by drawing the sensor as a separate cell, and plac-
ing it as a cell reference within another cell. The act of creating a cell reference automatically creates a level of hier-
archy.

Figure D5-20 Flat Design with Repeating Structure


Repeating structure

Coventor, Inc. March 23, 2010 D5-13


Section 5: Advanced Procedures Version 2010

Array of Objects
An array is a structure in which the same cell is used to form a pattern, as shown in the comb model of Figure D5-21.
The design can be constructed by isolating the repeating element as a separate cell, and then placing it as an array ref-
erence within another cell.

Figure D5-21 Flat Design with Array of Repeating Objects


Repeating structure

5.3.3: Advantages of Hierarchy


Creating a grouping order allows you to name cells at different levels and to break a complex design into more man-
ageable pieces. The addition of organizational structure and modularity can make it easier for you or others to under-
stand and make edits to an extensive design.
Consider a design with over 1000 drawn polygons. Which of the two cell hierarchy schemes shown in Figure D5-22
is more useful for understanding the structure of the design?

Figure D5-22 Two Designs Compared

1000 polygon design 1000 polygon design


with hierarchy
with no hierarchy
and explanatory cell names

Ease in Modification
A change in design affecting a repeated design element can be made much more easily and accurately if that element
is referenced through the design rather than recreated each time it is needed. Without hierarchy, each instance of the
element must be found and individually edited.

D5-14 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.3.4: Creating Hierarchy


Bottom-Up vs. Top-Down Structures
Hierarchical designs may be built using two different methodologies: bottom-up creation or top-down creation. The
Layout Editor supports the bottom-up methodology, where the most foundational cells are usually defined first, and
then placed by reference into larger building block cells at higher (lower numbered) levels. Top-down creation allows
the creation of design structure with undefined cells, which are filled in later. This conceptual technique works well
on paper, especially when the details of a model design have not yet been worked out. Design components may be
identified first, followed by the creation of block topology. The Layout Editor does not include true support for top-
down design. However, you may define a cell’s bounding box extents with a single polygon or rectangle and place it
within the hierarchy. The detailed drawing within that bounding box can be completed by editing that cell when
desired.

M
Building a Bottom-Up Design
The steps involved in building a bottom-up design vary by project. The following is a representative example.
1. Build foundational cells. These are cells with basic designs that are reused in other cells.
2. Build mid-level cells. These are more complex structures that define a function or sub-function of the model.
3. Place any foundational cells needed in the mid-level design. Create additional foundational level cells as
needed.
4. Create the top-level cell. This is the complete model function.
5. Place any mid-level or foundational cells into the top-level design.
An example of a bottom-up design is shown in Figure D5-23. Foundational cells are labeled with an F designation;
mid-level cells are labeled with an M; the top-level cell is labeled with a T.

Figure D5-23 Bottom-up Design Example

Under-the-hood
T System

Actuator1 Actuator2 Sensor Connector


M Design
M Design
M Design
F Cell

Connector Anchor Anchor Connector


F Cell
F Cell
F Cell
F Cell

In this hierarchical scheme, foundational cells are placed at two different levels in the hierarchy, and different mid-
level cells use the same foundational level cells. Once a cell is created, it can be used wherever needed in the design.

Coventor, Inc. March 23, 2010 D5-15


Section 5: Advanced Procedures Version 2010

Creating Hierarchy with a Cell Reference


The boxes shown in Figure D5-23 represent the hierarchy of the design, rather than the physical way the cells are
connected. In actuality, only a single copy of any cell exists at any time. An M level cell that includes a P level cell
actually only references that cell, creating a software link to the cell’s name. In fact, the true physical scheme of this
design can be represented as shown in Figure D5-24.

Figure D5-24 Bottom-up Design Showing Physical Links

Under-the-hood
T System

Actuator1 Actuator2 Sensor


M Design
M Design
M Design

Connector Anchor
F Cell
F Cell

In this physical scheme, only a single copy of any individual cell exists. The dashed lines represent links from one
cell to another cell. The link in Layout Editor terms is a cell reference.
An important consideration when reviewing the diagram of Figure D5-24 is that any edit to any cell affects all links to
it. In this example, changes to the contents of the Connector Cell shown in the diagram will be reflected in all the T
and M cells that link to it.
Here is how the actual cell reference is created:
1. From the vertical icon column, select the Reference icon. The Reference dialog window opens:

2. In the dialog window, click on the Browse button next to Cell, and select an existing cell.
3. Set an Origin value, or click on Select and place the cell with the mouse.
4. Modify the magnification or cell angle, if desired, using the fields shown.
5. Click on Apply and Close.

D5-16 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Once the cell is placed, it is generally indistinguishable from the rest of the objects in that cell. To identify a cell ref-
erence within another cell, do either of the following:
 From the menu bar, select Modify > Object, then click somewhere within the boundaries of the cell reference.
The Reference dialog window will open, identifying the cell and its properties.
 From the Layout Editor menu bar, select View > Object types > Properties to open an Object Browser win-
dow.
Expand the reference object by clicking on the + sign. Figure D5-25 shows the Object Browser window with the ref-
erence cells displayed.

Figure D5-25 Object Browser

M
Set the properties as shown above. Checking VisibleNames and VisibleExtents creates a simplified view (see Figure
D5-26) in which the name of each cell reference is identified within a bounding box.

Figure D5-26 Drawing Showing Cell Reference

Coventor, Inc. March 23, 2010 D5-17


Section 5: Advanced Procedures Version 2010

Creating Hierarchy with an Array Reference


An array reference is a type of cell reference. In a design, you can define a row/column array of cell references, gen-
erating an XY matrix of cells that can be used for additional mechanical power or for some other purpose. While
arrays can always be created explicitly with multiple cell references, the array reference feature offers the conve-
nience of placing multiple cells through a single dialog.
Here is how an array reference is created:
1. From the vertical icon column, next to the Reference icon, click on the arrow and select Array Reference. The
dialog window shown below opens:

2. In the dialog window, click on the Browse button next to Cell, and select an existing cell.
3. Choose the numbers of Columns and Rows that the array will have.
4. Specify either the spacing (room between cells) or distance (when the same cell repeats) for the columns and
rows in the array. See Figure D5-27 for an example.
5. Set an Origin value, or click on Select and place the cell with the mouse.
6. Change the Magnification or rotate the cell to any desired Angle using the fields shown.
7. Click on Apply and Close.

Figure D5-27 3x4 Array Contrasting Spacing and Distance

110 x 110 mirror placed with spacing = 120. 110 x 110 mirror placed with distance = 120

D5-18 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.3.5: Other Hierarchy Considerations


When any cell is used as a reference cell, its status changes from a top cell to a cell within the hierarchy of another.
There is only one actual top cell in a library. Any other cells designated as top cells within the Cell Browser are cells
that are not referenced by any other cells and that do not contain any referenced structures.

The designation Top Cell is also used in the Function Manager to denote the open cell in the current layout. This
need not be the top cell in the hierarchy.

You can create hierarchy by using a cell as a container for cell or array references only, without any active structures
at that level in the design. The container cell can be used within another cell’s hierarchy, or in any other way permit-
ted by the software.

M
5.3.6: Navigation through a Hierarchical Design
There are various techniques to navigate through different levels of a design hierarchy for viewing or editing:
 use the Cell Browser to select a cell at any level in the design,
 use the menu View > Levels command to view and identify selected levels of hierarchy, or
 use the Edit > Edit In-Place command to push (descend) and pop (ascend) within the hierarchy.

Cell Browser Navigation


The easiest way to view the hierarchy of any cell in a library is through the Cell Browser. When opened from the icon
on the left side of the top tool bar, it displays all cells in a design, with hierarchical levels organized into folders.
Clicking on the plus sign next to any folder expands that level of hierarchy. Round bullets before cell listings indicate
cells at the lowest level in their respective hierarchical tree. These cells contain no cell or array references.
The menu bar command Cell > Tree displays the hierarchy in narrative form in the Terminal Window. Figure D5-28
shows an example of each of these options.

Figure D5-28 Hierarchy Displayed in Cell Browser and Terminal Window

Coventor, Inc. March 23, 2010 D5-19


Section 5: Advanced Procedures Version 2010

View/Levels Navigation
Once a cell is selected from the Cell Browser for viewing or editing, each object within the cell is displayed with no
visual clue to indicate whether the object resides in the cell or appears by reference from another level of the design
hierarchy. However, viewing levels can be selectively enabled (or disabled) to limit the amount of hierarchy dis-
played when cell contents are viewed.

Command Details
From the menu bar, the View > Levels command provides several choices:

Figure D5-29 Menu Path and Level View Dialog Window

The sub-menu allows you to pick All levels for viewing, the Top Only level, or to check the desired levels that you
want to see. As an alternative, the Choose dialog window allows you to list the viewing levels and to indicate the lev-
els that are viewed when a cell outline is dragged to a new or copied location.

Figure D5-30 Viewlevel Presentations

The illustration on the left shows the top cell with all referenced objects removed because only the top level is now
visible. The illustration on the right shows only the cell references. To distinguish the cell references, access the
Object Browser from the View > Object types > Properties menu, then select VisibleName and VisibleExtents for the
reference object.

D5-20 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Figure D5-31 Visible Names and Extents

M
The extents and names are not displayed when only Level 1 is visible. When viewed at Level 0 with only the selected
Object Browser properties turned on, the details of the cell references are not shown, making it easier to view the
extents and names.
The Choose option opens a dialog that has the same effect as checking or unchecking the level numbers directly in the
menu. The dialog also contains a Drag Depth field.

Drag Depth
Dragging refers to the white outline view you see when moving or pasting objects or placing cell or array references.
The outline detail can be adjusted by the Drag Depth setting. The larger the number used, the more detail visible,
with the numbers almost equivalent to the level content of the cell.
As an example, Figure D5-32 shows the same mirror cell white outline for three different Drag Depth settings.

Figure D5-32 Various Drag Depths Compared


DragDepth = 1 DragDepth = 2 DragDepth = all

The screen views show the mirror cell being referenced into a new cell. Increasing the Drag Depth increases the
detail displayed on the canvas, making it easier to align the mirror with other objects in the cell. If too much detail
clutters the display or obscures points of interest, reduce the Drag Depth.
The drag depth value is offset by one from the relative Level number, with a DragDepth of 0 showing only the cell
origin and a drag depth of 1 showing the mirror Level 0 outline view.

Coventor, Inc. March 23, 2010 D5-21


Section 5: Advanced Procedures Version 2010

Edit In-Place Navigation


The Edit In-Place capability permits viewing and editing an active cell in the context of the complete design, regard-
less of its hierarchical position.

Concept of Push and Pop


The terms push and pop are commonly used when dealing with hierarchy in a system. Push means to traverse down
into the hierarchy, accessing sub-level cells that are building blocks of larger structures. Pop means to traverse back
up the hierarchy, moving toward the top level and viewing cells that contain cell or array references. With a single
command, any number of levels desired may be traversed.

One-Level Push and Pop


The Edit > Edit In-Place > Push One Level and Pop One Level menu bar commands permit movement through the
hierarchy in either direction, one level at a time. Selecting the Edit In-Place > Push One Level command from the
menu bar generates an Enter point: prompt. A point in the layout may be selected by mouse click or keyboard entry.
The cell "pushed into" is determined by the object (including displayed extents) closest to the selected point.
Except for the title of the drawing area window, nothing changes when the point is entered. If the Cell Browser win-
dow is open, the new push level cell will be highlighted.
To change the view to see the current push level, do one of the following, select the Refresh screen icon, or
select Edit > Edit in-Place > Redraw Current from the menu bar.
Once you have pushed down into the layout hierarchy, you can edit any drawn object or change the placement of any
referenced object in that cell, whether you are viewing the entire layout or just part of it. A cell reference within
mirror_array can be edited by executing the Push One Level command again.
If you have pushed down into mirror_array and want to see exactly what is editable before pushing, you can execute
a View > Levels command choosing Top Only. Because the hierarchy context has now changed, the current push level
becomes the Top view level. Clarity can be increased by turning on the VisibleName reference object property.
To change the view in a new hierarchy level:

 From the lower icon row, select View All. This action expands the current push view to fill the entire
drawing area.
 From the menu bar, select Edit > Edit In-Place > View Current. For Edit in-Place operations, this is equiva-
lent to the icon View All command.
 From the lower icon row, select any of the magnifying glass Zoom icons to customize the view as desired.
 To return to the view where the push level is shown at the same scale as the Top view, select Edit > Edit In-
Place > Redraw Top from the menu bar, then click on the Refresh screen icon. The entire design will be visi-
ble. This is just a change in view; the editing level is not affected.
 If you change the magnification of the current view, performing a Redraw Top will display the Top Cell, but
at the changed magnification. To see the entire design fill the screen, select Edit > Edit In-Place > View Top.
When you are at the push level desired, you may edit the cell as required. To save, select either Edit > Edit In-Place
> Save, or Cell > Save or select Save Cell from the arrow next to the File Save disk icon) to save the current cell. If
you forget to save, you will be prompted before changing the hierarchy level. Editing and saving a cell while in an
Edit In-Place navigation operation has the same effect as editing and saving a cell in the normal way. Any occur-
rences of the cell are changed in all places that they are used throughout the hierarchy. If you are making your edits
while viewing the entire design, redraw the screen to update all occurrences of that cell. Remember that these changes
are not written to the file until the file itself is saved.
When finished with your edit, you may continue to move down the hierarchy with additional Push One Level com-
mands. To reverse direction, execute Pop One Level commands, stepping one level at a time up through the hierarchy.
You can always get back to the Top Cell level with Edit > Edit In-Place > Pop To Top.

D5-22 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

An alternative menu bar command that lets you view the Edit In-Place status of a cell you may be editing is Cell >
Status. The information in the Terminal Window (Figure D5-33) will give you feedback on the Edit In-Place cell and
the specific layer that is currently active or selected.

Figure D5-33 Terminal Window Display of Edit In-Place Status

M
Multi-Level Push and Pop
One-level push and pop allows navigation to any location within the hierarchy of a design. One additional command
that quickens the process is the Edit > Edit In-Place > Push To Object command.
Push To Object is target-oriented, rather than level-oriented, hierarchy navigation. Procedurally, you click within the
extents of the cell while viewing at a higher level to push down as many hierarchical levels as required to get to the
desired cell. If you can restore your Top Cell view, you do not have to pop back up to navigate to a new cell. You can
simply execute a new Push To Object command by clicking anywhere on the layout.
In a complex design, it may be difficult to locate the correct extent region to cause the Layout Editor to push to the
desired cell. The current push object is identified by the canvas window title. If you need to try again, just re-issue the
command and alter the click location. For more information, see “Edit In Place Functions” on page D3-60.

Using Save As for Edit In-Place Operations


In addition to the normal Save that you can execute while performing an Edit In-Place operation, you can also execute
a Cell > Save As from the menu bar. When you save an edited cell as a new cell, the changes you make while in Edit
In-Place are not propagated to all the other cell references that use the original cell name. This technique can be use-
ful in cases where local changes to a specific cell are desired. Making the change while in Edit In-Place is more
streamlined than creating a new cell and a new cell reference in the parent cell.

5.3.7: Inserting Hierarchy in a Design


The menu bar command Cell > Insert hierarchy is an efficient way to create a new level of hierarchy anywhere in the
design. The new level may include as many objects and/or references as necessary. The command works from within
an Edit In-Place session or through normal editing of a cell.
When a new hierarchy level is created, the entity becomes a cell when it is saved, and is designated as a Top Cell.
When it is actually placed in the design, it loses the Top Cell designation and is treated the same as any other cell or
hierarchy level.

Insert Hierarchy Example


Start with a simple design that has the following Cell Browser hierarchy:

Coventor, Inc. March 23, 2010 D5-23


Section 5: Advanced Procedures Version 2010

Viewing the plate cell shows two plates with some interconnections. The layers are labeled.

metal
substrate
poly

contact

This plate cell has a repeating pattern involving the poly, contact, and metal layers:

D5-24 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

A review of the design rules for these three levels reveals the following minimum rules:
 contact size 2 μm X 2 μm.
 metal overlap contact by 1 μm each side.
 Metal width 4 μm.
 poly overlap metal by 1 μm, each side except where they cross

You decide to create a poly / metal / contact polygon group that can be used anywhere metal must contact poly. When
you use this group over and over, it will save drawing time and ensure that minimum widths and spacings are being
met.
1. Select the Modify > Cut Window command from the menu bar to extract the desired grouping. This command
allows you to draw a window around any grouping of overlaid polygons and select them. Again, the selection
process is through all the layers that are present within the window. There are some restrictions, including
one that does not cut a layer if the cut window is entirely inside it.

M
2. At the prompt to enter two points to define the cut window, select the following rectangle, which also high-
lights the layers to be cut:

selection area shown shaded


(not in actual display)

The selection includes the contact, the portion of the metal inside the cut window, and the overlapping poly to
satisfy the design rule. Because the cut window is totally inside the substrate layer, that layer is not part of the
selection.
3. From the menu bar, select Cell > Insert hierarchy. A dialog window appears.

4. Fill in the window as shown. Create a new cell name that includes the cut window information, and select an
origin for the cell (lower left corner of the selection area is the coordinate chosen above). When finished,
click on Apply and Close.
5. Review the Cell Browser window. The new connect cell is designated as a Top Cell because it has not yet
been placed in the hierarchy.

Coventor, Inc. March 23, 2010 D5-25


Section 5: Advanced Procedures Version 2010

6. Recreate the plate cell using the new connect cell created as cell reference. It will look as shown below, with
the connect cell references easy to identify.

7. Finally, review again the Cell Browser window to see the new level of hierarchy that was inserted. The Top
Cell designation for connect is now removed in the Cell Browser window.

D5-26 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.3.8: Removing Hierarchy in a Design


If hierarchy in the design becomes cumbersome or unnecessarily complex, levels of hierarchy may be removed by
consolidating cell content and removing unnecessary cells. This can be done easily with the Cell > Flatten hierarchy
command.
This command accomplishes any of the following:
 All hierarchy may be completely removed. Flat designs are sometimes required when exporting designs to
foundries for mask and wafer fabrication.
 Flatten a top cell or a subcell to a specific level of hierarchy. You may decide to collapse hierarchy in certain
tree branches to simplify the design. Alternately, you may decide to collapse hierarchy in the middle levels,
but retain the lowest level building block cells as references.
 Make a copy of a selected hierarchical object or object group, and flatten the copy to a specific level of hier-
archy. In other words, for a design with three levels, you can select the lowest subcell, and make a copy of it

M
at the top cell level.
The following examples illustrate each of these defined capabilities. The examples use the tutorial design previously
illustrated in this section.

Flatten a Design
The objective of this example is to start at the Top Cell and remove all hierarchical cell and array references.
1. Open the tutorial Mirror_Array.cat file and the Top Cell Mirror_Array.
2. Set the Object Browser reference type by checking VisibleExtents and VisibleNames and unchecking Visible.
3. Set View > Levels > Top Only.
4. Open the Cell Browser and observe the structure.
5. Select Cell > Flatten hierarchy from the menu bar.
6. Leave the Level field blank (flatten all hierarchy) and verify that Selected Data is set to False.
7. Click on Apply.
8. Refresh the screen.
9. Save the Mirror_Array cell.
10. Observe the results as shown in Figure D5-34.

Note that only Steps 1, 5, 6, 7, and 9 are required to actually flatten the structure. The remaining steps help illustrate
what is happening to the design.

Coventor, Inc. March 23, 2010 D5-27


Section 5: Advanced Procedures Version 2010

Figure D5-34 Flatten a Design


View of original Top Cell Mirror_Array after setting View to Top Only and setting Object
Browser to view cell references as Extents. (The clip layer was removed.) Original Cell
browser hierarchy is shown.

View of Top Cell Mirror_Array after flattening all hierarchy and saving the
design. It is still Top Only, with no Object Browser changes. Note the
differences in the Cell Browser window.

The exercise shows that all structures are now at the same top level in the design and can be individually edited. All
cell references are removed from the design. The Cell Browser window shows that the Mirror_Array cell is now a
single entry with no attached hierarchy. It also shows that the hierarchy of the sub-cells that Mirror_Array uses are
preserved. However, because two sub-cells are no longer directly linked to Mirror_Array, they are redesignated as top
cell structures.

D5-28 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Partially Flatten a Design by Removing a Hierarchical Branch


Using the same procedure, a design may be partially flattened by removing hierarchy within a branch of the design.
This procedure targets a specific subcell for flattening.
From the Top Cell, use Edit In-Place to identify the popup cell and remove its hierarchy. The popup cell is still
retained as a cell reference for the mirror_array cell.
1. Open the tutorial Mirror_Array.cat file and the Top Cell Mirror_Array.
2. Open the Cell Browser and observe the structure.
3. With the mouse, select the popup cell while still displaying the Top Cell.
4. Select Edit > Edit In-Place > Push One Level from the menu bar.
5. Observe that the drawing area window title has changed to Mirror.

M
6. Select Cell > Flatten hierarchy from the menu bar.
7. Leave the Level field blank (flatten all hierarchy) and verify that Selected Data is set to False.
8. Click on Apply.
9. Save the Mirror cell.
10. Observe the Cell Browser results as shown in Figure D5-35.

Figure D5-35 Partially Flatten by Removing a Branch

This figure shows comparison of Cell Browser presentation before and after hierarchy is removed from the target cell.
The drawing area is not affected. The title bar changes to reflect the Edit In-Place operation.

Partially Flatten a Design by Removing Intermediate Levels


This example leaves foundation cells and the top cell unaffected, while collapsing the hierarchy between them.
Changes are made to targeted levels of the design hierarchy, rather than to specific cells.
1. Open the design file to the Top Cell in the hierarchy.
2. Set View > Levels to Top Only.
3. Open the Cell Browser and observe the structure.
4. Select Cell > Flatten hierarchy from the menu bar.
5. Set the Level field to any intermediate design level. For instance, if the design has three levels of hierarchy,
selecting 2 will flatten the middle level of hierarchy. Verify that Selected Data is set to False.

Coventor, Inc. March 23, 2010 D5-29


Section 5: Advanced Procedures Version 2010

6. Click on Apply.
7. Refresh the screen.
8. Save the Mirror_Array cell.

Partially Flatten a Design by Removing Targeted Hierarchy


The objective of this example is to target a specific sub-cell for flattening. The procedure starts at the Top Cell and
removes enough hierarchy so that all the polygons and arcs within the branch are moved to the Top Cell level.
The objective is identical to the previous technique. The difference is that the previous exercise removed intermediate
hierarchy in all hierarchical branches of the design on the target level. In this procedure, only the levels between the
Top Cell and a particular selected cell are removed. The relative hierarchy of the rest of the design tree is not affected.
1. Open the layout to the Top Cell.
2. Modify the Object Browser reference type: check VisibleExtents and VisibleNames and uncheck Visible.
3. Set View > Levels to Top Only.
4. Open the Cell Browser and observe the structure.
5. With the mouse, select an intermediate cell. The cell must have referenced elements within it. To demonstrate
this technique, there must be another cell at the same level that also has hierarchy.
6. Select Cell > Flatten hierarchy from the menu bar.
7. Set the Level field to 1 and set Selected Data to True; click on Apply.
8. With the mouse, select the cell to be flattened.
9. Select Cell > Flatten hierarchy from the menu bar.
10. Set the Level field to 2 and set Selected Data to True; click on Apply.
11. Save the cell.
In this example, data is selected for flattening with the flatten dialog window True setting. When enabled, only the
selected information is flattened, and only flattened by the number of levels specified. The unique difference here is
that the original hierarchical cell is preserved during the flattening process. In this case, you wish to remove this pre-
served cell so only the flattened representation appears at the Top Cell level. The selected data procedure must be per-
formed twice, first to drill down into the layout hierarchy and then to select an intermediate cell after one level of
flattening. When selected, it is flattened completely, requiring a Level 2 setting in the dialog window. When you
observe the Cell Browser window, you see that all the structures are now part of the Top Cell, while the rest of the
hierarchy is preserved and moved up a level. This result may be more desirable for some applications than the first
technique shown.
For other applications you may wish to keep the preserved hierarchical cell and use the copied structure group as a
unique instance. This allows you to make modifications to the flattened grouping without affecting cell references.
This is illustrated in the drawing shown in Figure D5-36:

Figure D5-36 Creating a Unique Instance with the Selected Data Technique

Top Cell

A A A

Flattened cell

A A

D5-30 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

The Top Cell includes four cell references to cell A. Using the Selected Data technique, you can select and flatten the
hierarchy contained in cell A and copy it to the Top Cell. At this point, the flattened polygons and arcs in the cell copy
can be modified without affecting cell A itself and therefore all cell references to it.

5.4: Equations and Equation Syntax


The option to generate a form using an equation is located in the cat:curve dialog. The equation consists of any alge-
braic expression in one variable (X), which is equal to Y. A range of values for X is specified in the Range field, and
the tool then plots the graph.

5.4.1: Linear
For any linear equation in the form Y = mX + b the slope, the Y-intercept, and the range of values for X must be pro-

M
vided, and the resulting graph is produced. For a slope of 5/8 and Y-intercept of 9, the syntax is (5*x)/8 + 9 as shown:

Figure D5-37 Curve Dialog

Select Object > Path to generate an object with width. The Curve option generates a two-dimensional line, and the
drawing tool connects the two terminal points to make a closed form. For linear equations, the connecting line will
not be apparent because it is superimposed on the line generated by the equation. In this example, all solutions for
values of X from 1 to 50 are plotted:

Figure D5-38 Path Generated with Linear Equation

Coventor, Inc. March 23, 2010 D5-31


Section 5: Advanced Procedures Version 2010

5.4.2: Quadratic
For quadratic (and higher level) equations, the caret (^) is used to express exponents. For roots, use fractional equiv-
alents.

Figure D5-39 Curve Dialog with Quadratic Equation

Figure D5-40 shows the curved path generated by this equation.

Figure D5-40 Curved Path (Parabola)

D5-32 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.4.3: Trigonometric
Standard abbreviations for trigonometric functions are used in the equation syntax to generate sine waves, spirals, or
other desired forms.

Figure D5-41 Curve Dialog with Trigonometric Function

M
This equation generates a sine wave with increasing amplitude.

Figure D5-42 Generated Sine Wave

Coventor, Inc. March 23, 2010 D5-33


Section 5: Advanced Procedures Version 2010

Figure D5-43 Curve Dialog for Creating a Spiral

The equation shown in Figure D5-42 will generate the spiral shown in Figure D5-44.

Figure D5-44 Spiral

Generators can also be created to produce these waveforms as needed. See "Creating Generators with TCL" on page
D5-35.

D5-34 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.5: Creating Generators with TCL


Generators are small, macro-like computer programs that can instantly create and layout design devices. The Layout
Editor provides users with a Tcl (Tool Command Language) interface to write and customize generators for placing
layout objects. Once the user creates a generator program and executes, an interface edit window is created, allowing
users to set entry fields for parameter values. The user can then create custom layouts with various parameters with-
out having to redraw and place a device structure by hand.

5.5.1: Generator Creation


Generators can be used efficiently to create and maintain objects. To create a generator, do the following:
1. Create a model of the object to be generated.

M
2. Select the model. Ensure all component parts of the model are selected.
3. Open the new generator dialog: either select Generators > New from the menu bar, or use the Command Line
to enter newgenerator -ui on
4. In the dialog, enter a name for the generator being created.
5. Click on Apply to create the generator. This will open a generator dialog. The defining syntax of the object
just created is automatically imported to the Tcl tab of the new generator.
6. View the Tcl tab. The syntax for the object(s) selected will appear in the field in this general format:
set o [object description](description is the information that appears in the Terminal Window when
the object is created)
$obj addObject $o
return

Coventor, Inc. March 23, 2010 D5-35


Section 5: Advanced Procedures Version 2010

Objects can be generated through the dialog. To do so, enter or browse to an origin point in the open cell, then click
on Apply to generate the object. The following will appear in the Terminal Window:
cat:generator -tcl (name of generator) -Origin 0.0,0.0 -Mirror off
To open the dialog if it is closed, enter the following Terminal Window command:
generator -ui on -tcl (name of generator)

 Parameters
If variables are included in the Tcl syntax, the variable parameters may be entered here. See page D5-38 for more
details.

 Object
To modify a generated object, click on Select and then select the object. When generating a new object, this field
should be left empty.

 Generator
The assigned name of the generator appears here.

 Angle
Any number of degrees may be entered to skew the generated object. System defaults to 0.

 Mag
Generated objects may be magnified. Positive values less than 1 will reduce object size. System defaults to 1.
Negative values are meaningless.

 Origin
Select an origin point, either by entering coordinates or selecting a point in the drawing area with the mouse.

 Mirror
Set to True to flip the generated object vertically when it is created.

D5-36 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

5.5.2: Shortcuts
It may be useful to be able to run the generator from the menu bar or a toolbar icon, but this cannot be done if there
are generator variables. If variables are created, the generator dialog must be opened when using the generator in
order to provide values for the variables. A shortcut that runs a generator with variables will yield error messages
because the variables will be missing.
To create a menu bar shortcut for a generator that has variables:
1. Select Tools > Customize > Menubar, or type menubar -ui on at the Command prompt.
2. Make sure Window -canvas and Button Type push-text are selected (default settings).
3. In the Menu(s) Label Command field, enter:
Generators xxxxxx "generator -tcl xxxxxx -ui on"

M
The user can put the generator under a submenu by inserting a submenu label between Generators and
xxxxxx.
4. Mnemonic(s) are letters that appear underlined and respond to Alt + keyboard shortcuts. Any letter in the gen-
erator name that is not already used as a shortcut on the Generators menu may be selected, or the field may
be left blank.
5. Ensure that Add radio button is selected, then click on Save to create a generator shortcut on the Generators
drop-down menu. For more information, see “Adding Menubar Functions” on page D3-24.
The generator will only be available in the cat file in which it was created unless it is preserved. There are two options
for preserving generators. The first option is to create a design library file just to store the user generators. Once you
create a generator, it is available as long as the Layout Editor is still open. Simply open this special generator reposi-
tory design file and create one instance of the new generator. The next time you want to use any user generator, just
open the generator repository file, and all of the user generators will be loaded and remain available for use until you
close the Layout Editor.
The other option for preserving generator is to copy the syntax that appeared in the Terminal Window when the short-
cut was created, and paste it into the catapult2006rc file. To do so:
1. Select Start > Find > Files or Folders from the Windows toolbar.
2. Enter catapult2006rc in the Named field.
3. Open the file with any text editor. Because there may be more than one file by that name, ensure it is the file
from your personal Profile directory.
4. Copy the syntax from the Terminal Window and paste it into the file, then save and close. If no mnemonic
shortcut was selected, the new line will be:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" -remove off
The commands to create and preserve a shortcut can be combined:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" {cat:generator -ui on -tcl xxxxxx} -remove off
The generator will be available when any project is open in the Layout Editor. If the layers called by the generator are
not present in the open project, an error message will appear when the generator is run.
To pass parameters to the generator, use this command:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" {cat:generator -ui on -tcl xxxxxx -Parameter1 value1 -Parameter2
value2} -remove off
To create a toolbar button for running the generator, see “Adding or Removing Toolbar Buttons” on page D3-22.
Select View > Object Type > Properties to view generators available, or to change object properties.

Coventor, Inc. March 23, 2010 D5-37


Section 5: Advanced Procedures Version 2010

Dialog Shortcut
For a shortcut to open the generator dialog, first keybind to open the dialog for the particular generator. For example:
bindkey spiraldb "generator -ui on -tcl spiral"
when "spiraldb" is entered in the Command Line, the dialog for a generator named "spiral" will open. See “Creat-
ing Customized Terminal Window Commands” on page D3-25 for more information.
Next, select Tools > Customize > Menubar, and create the menubar shortcut to run "spiraldb" as explained above.

5.5.3: Parameters and Variables


Using the generator creation routine above, all the properties of the object originally created would be automatically
written into the generator code and applied to all generated objects. Variables allow easy substitution of values within
the generator.
In this example, the layer "poly1" is hard-coded into the generator. This causes each object created with this generator
to be placed on that layer. To make the layer a variable:
1. Replace "poly1" in the Tcl scripting with $lLayer.
The "$" indicates a variable, the lower case "l" instructs the generator to present a list of layers, and the word
Layer following will create a field by that name on the generator’s dialog.
2. In the Parameters field, enter lLayer.
3. Delete any instances of the generated object from the open cell.
4. Click on Update to update the generator. Observe the appearance of a field called Layer. This field will have
a drop-down menu with a list of all layers.
The generator may now be run, and the layer on which the generated object will reside can be selected as an object
parameter.

Regenerating
If a change is made to the Tcl code in the generator, all objects created by that generator can be updated to reflect the
changes by using the cat:regenerate function. To open the dialog, either select Generators > Regenerate from the
menu bar, or enter regenerate -ui on through the Command Line. The dialog has two options:
 Regenerate all
Select True to regenerate all generated objects. Select False to regenerate only objects of a specified type.
 By Type
If False is selected, enter the name of the appropriate generator.
Click on Apply to update all generated objects. Click on Close to cancel or close the dialog.

Undo Generator Command


Objects created by a Tcl generator are grouped under one command. Using the Undo icon or command after using a
generator command will delete all the objects created by the generator.

D5-38 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

M
Objects can be generated through the dialog. To do so, enter or browse to an origin point in the open cell, then click
on Apply to generate the object. The following will appear in the Terminal Window:
cat:generator -tcl (name of generator) -Origin 0.0,0.0 -Mirror off
To open the dialog if it is closed, enter the following Terminal Window command:
generator -ui on -tcl (name of generator)

 Parameters
If variables are included in the Tcl syntax, the variable parameters may be entered here. See page D5-38 for more
details.

 Object
To modify a generated object, click on Select and then select the object. When generating a new object, this field
should be left empty.

 Generator
The assigned name of the generator appears here.

 Angle
Any number of degrees may be entered to skew the generated object. System defaults to 0.

 Mag
Generated objects may be magnified. Positive values less than 1 will reduce object size. System defaults to 1.
Negative values are meaningless.

 Origin
Select an origin point, either by entering coordinates or selecting a point in the drawing area with the mouse.

 Mirror
Set to True to flip the generated object vertically when it is created.

Coventor, Inc. March 23, 2010 D5-39


Section 5: Advanced Procedures Version 2010

5.5.4: Shortcuts
It may be useful to be able to run the generator from the menu bar or a toolbar icon, but this cannot be done if there
are generator variables. If variables are created, the generator dialog must be opened when using the generator in
order to provide values for the variables. A shortcut that runs a generator with variables will yield error messages
because the variables will be missing.
To create a menu bar shortcut for a generator that has variables:
1. Select Tools > Customize > Menubar, or type menubar -ui on at the Command prompt.
2. Make sure Window -canvas and Button Type push-text are selected (default settings).
3. In the Menu(s) Label Command field, enter:
Generators xxxxxx "generator -tcl xxxxxx -ui on"
The user can put the generator under a submenu by inserting a submenu label between Generators and
xxxxxx.
4. Mnemonic(s) are letters that appear underlined and respond to Alt + keyboard shortcuts. Any letter in the gen-
erator name that is not already used as a shortcut on the Generators menu may be selected, or the field may
be left blank.
5. Ensure that Add radio button is selected, then click on Save to create a generator shortcut on the Generators
drop-down menu. For more information, see “Adding Menubar Functions” on page D3-24.
The generator will only be available in the cat file in which it was created unless it is preserved. There are two options
for preserving generators. The first option is to create a design library file just to store the user generators. Once you
create a generator, it is available as long as the Layout Editor is still open. Simply open this special generator reposi-
tory design file and create one instance of the new generator. The next time you want to use any user generator, just
open the generator repository file, and all of the user generators will be loaded and remain available for use until you
close the Layout Editor.
The other option for preserving generator is to copy the syntax that appeared in the Terminal Window when the short-
cut was created, and paste it into the catapult2010rc file. To do so:
1. Select Start > Find > Files or Folders from the Windows toolbar.
2. Enter catapult2010rc in the Named field.
3. Open the file with any text editor. Because there may be more than one file by that name, ensure it is the file
from your personal Profile directory.
4. Copy the syntax from the Terminal Window and paste it into the file, then save and close. If no mnemonic
shortcut was selected, the new line will be:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" -remove off
The commands to create and preserve a shortcut can be combined:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" {cat:generator -ui on -tcl xxxxxx} -remove off
The generator will be available when any project is open in the Layout Editor. If the layers called by the generator are
not present in the open project, an error message will appear when the generator is run.
To pass parameters to the generator, use this command:
cat:menubar -window canvas -type push-text -args "Generators Xxxxxx xxxxxx-
gen" {cat:generator -ui on -tcl xxxxxx -Parameter1 value1 -Parameter2
value2} -remove off
To create a toolbar button for running the generator, see “Adding or Removing Toolbar Buttons” on page D3-22.
Select View > Object Type > Properties to view generators available, or to change object properties.

D5-40 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Dialog Shortcut
For a shortcut to open the generator dialog, first keybind to open the dialog for the particular generator. For example:
bindkey spiraldb "generator -ui on -tcl spiral"
when "spiraldb" is entered in the Command Line, the dialog for a generator named "spiral" will open. See “Creat-
ing Customized Terminal Window Commands” on page D3-25 for more information.
Next, select Tools > Customize > Menubar, and create the menubar shortcut to run "spiraldb" as explained above.

5.5.5: Parameters and Variables


Using the generator creation routine above, all the properties of the object originally created would be automatically
written into the generator code and applied to all generated objects. Variables allow easy substitution of values within

M
the generator.
In this example, the layer "poly1" is hard-coded into the generator. This causes each object created with this generator
to be placed on that layer. To make the layer a variable:
1. Replace "poly1" in the Tcl scripting with $lLayer.
The "$" indicates a variable, the lower case "l" instructs the generator to present a list of layers, and the word
Layer following will create a field by that name on the generator’s dialog.
2. In the Parameters field, enter lLayer.
3. Delete any instances of the generated object from the open cell.
4. Click on Update to update the generator. Observe the appearance of a field called Layer. This field will have
a drop-down menu with a list of all layers.
The generator may now be run, and the layer on which the generated object will reside can be selected as an object
parameter.

Regenerating
If a change is made to the Tcl code in the generator, all objects created by that generator can be updated to reflect the
changes by using the cat:regenerate function. To open the dialog, either select Generators > Regenerate from the
menu bar, or enter regenerate -ui on through the Command Line. The dialog has two options:
 Regenerate all
Select True to regenerate all generated objects. Select False to regenerate only objects of a specified type.
 By Type
If False is selected, enter the name of the appropriate generator.
Click on Apply to update all generated objects. Click on Close to cancel or close the dialog.

Undo Generator Command


Objects created by a Tcl generator are grouped under one command. Using the Undo icon or command after using a
generator command will delete all the objects created by the generator.

Coventor, Inc. March 23, 2010 D5-41


Section 5: Advanced Procedures Version 2010

5.5.6: Tcl Generator Examples


This section shows some sample Tcl generator scripts.The purpose of these examples is show how Tcl scripts can be
used to generate layouts. The user can copy and adapt these scripts for individual designs. For CoventorWare users,
these and other tcl scripts can be found in the ...\Coventor\CoventorWare\aux_docs\tcl_scripts directory.
These examples are not intended to teach the Tcltk language, but are intended to show how it can be used within the
context of the Layout Editor. For more information on Tcltk, go to http://www.tcltk.com; this site lists a number of
books on the subject.

Mirror Layout
The mirror.tcl shows how to generate a single axis mirror layout that is comprised of five rectangles:
proc Mirror { dwidthx dwidthy dtetherlength dtetherwidth delectrodewidth delectrodegap}
{

# Create Lower Mirror Plate


set rect [editRect -layer MirrorLower -$dwidthx $dwidthy $dwidthx -$dwidthy]

# Create Tethers
set lefttether [editRect -layer MirrorLower [expr -$dwidthx-$dtetherlength] \
[expr $dtetherwidth/2] [expr -$dwidthx] [expr -$dtetherwidth/2] ]

set righttether [editRect -layer MirrorLower [expr $dwidthx] [expr $dtetherwidth/2]


[expr $dwidthx+$dtetherlength] [expr -$dtetherwidth/2] ]

# Create Upper Mirror Plate


set rect [editRect -layer MirrorUpper -$dwidthx -$dwidthy $dwidthx $dwidthy]

#Create Electrodes
set botelectrode [editRect -layer Electrode [expr -$dwidthx] \
[expr -$delectrodegap/2] [expr $dwidthx] \
[expr -$delectrodewidth+$delectrodegap/2] ]

set topelectrode [editRect -layer Electrode [expr -$dwidthx] \


[expr $delectrodewidth-$delectrodegap/2] [expr $dwidthx] \
[expr +$delectrodegap/2] ]

cat:viewfit
cat:redraw

return
}
The editRect command tells the Layout Editor to create a rectangle on the layer specified by the layer command.
The coordinates for each rectangle are defined using the dwidthx, dwidthy, dtetherlength, dtether-
width, delectrodewidth, and delectrodegap dimensions declared in the first line of the script. The actual
values of these dimensions are declared in the Layout Editor command window.

The Tcltk script commands are case sensitive. When writing scripts, make sure to enter the names of mask layers
exactly as they are entered in the process file.

The script shown above has several instances of a / character followed by a line break. The script was written like
this so that it would display properly on the page. If you would like, you can write the script without the / character
and the line break. But note that a line break that is not preceded by a / character is necessary.

To use this script, create the script and copy it into the active project’s Devices directory. The script can also be copied
from the \Coventor\CoventorWare\aux_docs\tcl_scripts directory. To load the script, in the Layout Editor window,

D5-42 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

enter
source Mirror.tcl.
Enter another command that defines the mirror dimensions. For example:
Mirror 250 250 300 2 250 50
Mirror calls the Mirror function (named in the first line of the tcl file) to draw the objects specified in the source file
using the dimensions that follow. The values of this command correspond to the dwidthx, dwidthy, dtetherlength,
dtetherwidth, delectrodewidth, and delectrodegap dimensions respectively, declared in the first line of the tcl file. The
resulting layout is shown below:

Figure D5-45 Tcl Generated Mirror

M
Mirror Generator
The mirror script shown above can be modified to create an object generator. By adding object definitions to the
script, you can create a dialog in which you can enter the dimensions of the desired objects, instead of entering them
at the Layout Editor command prompt. The MirrorObj.tcl script is shown below (added or altered text is bold and in
red):

proc MirrorObj { obj dwidthx dwidthy dtetherlength dtetherwidth \


delectrodewidth delectrodegap} {

# Create Lower Mirror Plate


set rect [editRect -layer MirrorLower -$dwidthx $dwidthy $dwidthx -$dwidthy]

# Create Tethers
set lefttether [editRect -layer MirrorLower [expr -$dwidthx-$dtetherlength] \
[expr $dtetherwidth/2] [expr -$dwidthx] [expr -$dtetherwidth/2] ]
$obj addObject $lefttether

set righttether [editRect -layer MirrorLower [expr $dwidthx] [expr $dtetherwidth/2] \


[expr $dwidthx+$dtetherlength] [expr -$dtetherwidth/2] ]
$obj addObject $righttether

# Create Upper Mirror Plate


set rect [editRect -layer MirrorUpper -$dwidthx $dwidthy $dwidthx -$dwidthy]

# Create Electrodes
set botelectrode [editRect -layer Electrode [expr -$dwidthx] \
[expr -$delectrodegap/2] [expr $dwidthx] \
[expr -$delectrodewidth+$delectrodegap/2] ]
$obj addObject $botelectrode

set topelectrode [editRect -layer Electrode [expr -$dwidthx] \

Coventor, Inc. March 23, 2010 D5-43


Section 5: Advanced Procedures Version 2010

[expr $delectrodewidth-$delectrodegap/2] [expr $dwidthx] \


[expr +$delectrodegap/2] ]
$obj addObject $topelectrode

cat:viewfit
cat:redraw

return
}
To invoke the generator dialog, in the Layout Editor terminal window, type MirrorObj.tcl. Then enter
generator -ui on -tcl MirrorObj
The dialog shown below opens. Enter the desired dimensions, then click on Apply. The Layout Editor will generate a
layout similar to the one shown in Figure D5-45.

Figure D5-46 Mirror Generator Dialog

Add Object Generator to Canvas Menu


You can add a user-created generator to the Layout Editor’s Generators menu so that it can be opened without having
to enter the commands at the Layout Editor prompt. Using the mirror generator as an example, the commands are
shown below:

source pathtotclfile/MirrorObj.tcl

cat:menubar canvas -button { Generators "Custom" "Mirror" \


user_mirror "generator -ui on -tcl MirrorObj" } -mnemonic { G M U i }
These commands must be added to the catapult2010rc file (do a search to locate this file). For the pathtotclfile
command, substitute the full path to the location of the tcl file.

D5-44 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

Meander Generator
This script generates a multi-channel meander and allows the user to change the shape of the bends. It is implemented
in a simple way: specify dShape = 1 for a rectangular bend, specify dShape = 2 or 3 for two curved bends.
First create the script (the text follows) and copy it into the active project’s Devices directory. The script can also be
copied from the /Coventor/CoventorWare/aux_docs/tcl_scripts directory. To load the script, in the Layout Editor ter-
minal window type source MeanderObj.tcl
To access the generator window, type generator -ui on -tcl MeanderObj
Figure D5-47 shows the generator window created with the MeanderObj script and the layout that results when the
generator is executed.

Figure D5-47 Meander Generator and Resultant Layout

M
MeanderObj.tcl Script
proc MeanderObj { obj dShape lLayer dN_Channels dChannel_Width dChannel_Spacing
dFootPrint_Width dFootPrint_Height dTurn_Gap dBend_Radius} {

# dN_Channels = The number of Channels in the Meander


# dChannel_Width = the channel width
# dChannel_Spacing = the space between the channels
# dFoot_Print_Width = the width of the total area of all the meanders
# dFoot_Print_Height = the height of the total are of all the meanders
# dTurn_Gap = The space within a meander turn
# WM is the width of 1 meander turn.
# N_Turns = this is the maximum number of Meander turns that will fit within the Foot-
Print
# dShape = The user can choose a rectangular bend by setting "dShape = 1" or a curved
bend be setting "dShape = 2"
# dBend_Radius = The radius of the curved bends measured from the center of the channel.
All channels will have the same radius. This option only works if dShape = 2

set WM [expr 2*($dTurn_Gap+$dN_Channels*$dChannel_Width+($dN_Channels-


1)*$dChannel_Spacing) ]
set N_Turns [expr floor($dFootPrint_Width/$WM) ]

if {$dBend_Radius < $dChannel_Width/2} {


set dBend_Radius $dChannel_Width/2
puts "Bend_Radius is smaller than minimum allowed value. Bend_Radius set to half the
Channel Width"
}
if {$dTurn_Gap <= $dBend_Radius} {
set Connecting_Channel False
}

Coventor, Inc. March 23, 2010 D5-45


Section 5: Advanced Procedures Version 2010

# This other loop is defined by the number of turns of the meander that fit into the
footprint
for {set j 1} {$j <= $N_Turns} {incr j} {
#First the inlet straight channels are drawn when the j-counter is 1
if {$j == 1} {
for {set i 1} {$i <= $dN_Channels} {incr i} {
# the i-counter counts the number of channels in the meander. The x1,y1
and x2,y2 are the coordinates of the straight channel
set x1 [expr ($j-1)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y1 0
set x2 [expr ($j-1)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y2 [expr -$dFootPrint_Height/2]
set inlet [cat:path -layer $lLayer -type flush -width $dChannel_Width $x1
$y1 $x2 $y2 ]
$obj addObject $inlet
}
}
# When the j-counter is at its last value the outlet straight channels are drawn
if {$j == $N_Turns} {
for {set i 1} {$i <= $dN_Channels} {incr i} {
set x1 [expr ($j)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y1 0
set x2 [expr ($j)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y2 [expr +$dFootPrint_Height/2]
set outlet [cat:path -layer $lLayer -type flush -width $dChannel_Width $x1
$y1 $x2 $y2 ]
$obj addObject $outlet
}
}
# In each j-loop the 4 coordinates of the meander loop are defined and drawn. These
are the top halves.
for {set i 1} {$i <= $dN_Channels} {incr i} {
set x1 [expr ($j-1)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y1 0
set x2 [expr ($j-1)*$WM-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y2 [expr $dFootPrint_Height/2-($dN_Channels-
$i)*($dChannel_Width+$dChannel_Spacing)-$dChannel_Width/2]
set x3 [expr ($j-1)*$WM+$dTurn_Gap/2+(2*$i-1)*$dChannel_Width/2+($i-
1)*$dChannel_Spacing]
set y3 [expr $dFootPrint_Height/2-($dN_Channels-
$i)*($dChannel_Width+$dChannel_Spacing)-$dChannel_Width/2]
set x4 [expr ($j-1)*$WM+$dTurn_Gap/2+(2*$i-1)*$dChannel_Width/2+($i-
1)*$dChannel_Spacing]
set y4 0
if {$dShape == 1} {
set path1 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x1 $y1 $x2 $y2 $x3 $y3 $x4 $y4 ]
$obj addObject $path1
} elseif {$dShape == 2} {
set y2 [expr $y2-$dBend_Radius]
set y3 [expr $y3-$dBend_Radius]
set path1 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x1 $y1 $x2 $y2]
$obj addObject $path1
set path2 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x3 $y3 $x4 $y4]
$obj addObject $path2
set C1x [expr $x2+$dBend_Radius]

D5-46 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

set C1y $y2


set C2x [expr $x3-$dBend_Radius]
set C2y $y3
set R $dBend_Radius
set A1 90
set A2 0
set E 90
set px1 $C1x
set py1 [expr $y2+$R]
set px2 $C2x
set py2[expr $y3+$R]
set arc1 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C1x,$C1y -radius $R -angle $A1 -extent $E]
$obj addObject $arc1
set arc2 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C2x,$C2y -radius $R -angle $A2 -extent $E]

M
$obj addObject $arc2
set path3 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $px1 $py1 $px2 $py2]
$obj addObject $path3
} elseif {$dShape == 3} {
if {$i == 1} {
set C1x [expr $x2+$dBend_Radius]
set C2x [expr $x3-$dBend_Radius]
}
set y2 [expr $dFootPrint_Height/2-($dN_Channels-
1)*($dChannel_Width+$dChannel_Spacing)-$dChannel_Width/2-$dBend_Radius]
set y3 $y2
set path1 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x1 $y1 $x2 $y2]
$obj addObject $path1
set path2 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x3 $y3 $x4 $y4]
$obj addObject $path2
set C1y $y2
set C2y $y3
set R [expr abs($x2-$C1x)]
set A1 90
set A2 0
set E 90
set px1 $C1x
set py1 [expr $y2+$R]
set px2 $C2x
set py2[expr $y3+$R]
set arc1 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C1x,$C1y -radius $R -angle $A1 -extent $E]
$obj addObject $arc1
set arc2 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C2x,$C2y -radius $R -angle $A2 -extent $E]
$obj addObject $arc2
set path3 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $px1 $py1 $px2 $py2]
$obj addObject $path3
} else {
puts "not a valid shape number"
}
}
# In each j-loop the 4 coordinates of the meander loop are defined and drawn. These
are the bottom halves.
for {set i 1} {$i <= $dN_Channels} {incr i} {
set x5 [expr (2*$j-1)*$WM/2-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-
1)*$dChannel_Spacing]
set y5 0
set x6 [expr (2*$j-1)*$WM/2-$dTurn_Gap/2-(2*$i-1)*$dChannel_Width/2-($i-

Coventor, Inc. March 23, 2010 D5-47


Section 5: Advanced Procedures Version 2010

1)*$dChannel_Spacing]
set y6 [expr -$dFootPrint_Height/2+($dN_Channels-
$i)*($dChannel_Width+$dChannel_Spacing)+$dChannel_Width/2]
set x7 [expr (2*$j-1)*$WM/2+$dTurn_Gap/2+(2*$i-1)*$dChannel_Width/2+($i-
1)*$dChannel_Spacing]
set y7 [expr -$dFootPrint_Height/2+($dN_Channels-
$i)*($dChannel_Width+$dChannel_Spacing)+$dChannel_Width/2]
set x8 [expr (2*$j-1)*$WM/2+$dTurn_Gap/2+(2*$i-1)*$dChannel_Width/2+($i-
1)*$dChannel_Spacing]
set y8 0
if {$dShape == 1} {
set path2 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x5 $y5 $x6 $y6 $x7 $y7 $x8 $y8 ]
$obj addObject $path2
} elseif {$dShape == 2} {
set y6 [expr $y6+$dBend_Radius]
set y7 [expr $y7+$dBend_Radius]
set path1 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x5 $y5 $x6 $y6]
$obj addObject $path1
set path2 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x7 $y7 $x8 $y8]
$obj addObject $path2
set C1x [expr $x6+$dBend_Radius]
set C1y $y6
set C2x [expr $x7-$dBend_Radius]
set C2y $y7
set R $dBend_Radius
set A1 180
set A2 270
set E 90
set px1 $C1x
set py1 [expr $y6-$R]
set px2 $C2x
set py2[expr $y7-$R]
set arc1 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C1x,$C1y -radius $R -angle $A1 -extent $E]
$obj addObject $arc1
set arc2 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C2x,$C2y -radius $R -angle $A2 -extent $E]
$obj addObject $arc2
set path3 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $px1 $py1 $px2 $py2]
$obj addObject $path3
} elseif {$dShape == 3} {
if {$i == 1} {
set C1x [expr $x6+$dBend_Radius]
set C2x [expr $x7-$dBend_Radius]
}
set y6 [expr -$dFootPrint_Height/2+($dN_Channels-
1)*($dChannel_Width+$dChannel_Spacing)+$dChannel_Width/2+$dBend_Radius]
set y7 $y6
set path1 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x5 $y5 $x6 $y6]
$obj addObject $path1
set path2 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $x7 $y7 $x8 $y8]
$obj addObject $path2
set C1y $y6
set C2y $y7
set R [expr abs($x6-$C1x)]
set A1 180
set A2 270
set E 90

D5-48 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

set px1 $C1x


set py1 [expr $y6-$R]
set px2 $C2x
set py2[expr $y7-$R]
set arc1 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C1x,$C1y -radius $R -angle $A1 -extent $E]
$obj addObject $arc1
set arc2 [cat:arc -layer fluid -type path -width $dChannel_Width -
center $C2x,$C2y -radius $R -angle $A2 -extent $E]
$obj addObject $arc2
set path3 [cat:path -layer $lLayer -type flush -width
$dChannel_Width $px1 $py1 $px2 $py2]
$obj addObject $path3
} else {
puts "not a valid shape number"
}

M
}
}
cat:viewfit
cat:redraw

return
}

Signal Lines Generator


This file defines two procedures called parallel and general. These procedures can be used to generate wires that can
in turn be used to solve for conductance or capacitance in an IC circuit. To use the procedures, first create and copy
the signallines.tcl to the active project’s Devices directory. (Note that this script can be found in the .../Coventor/
CoventorWare2006/docs/aux_docs directory.) Then create a directory named script in your Devices directory; this is
where the procedures put the generated mbif files. To load the script, type in the Layout Editor terminal window
source signallines.tcl
The parallel procedure defines a generator to draw two parallel wires, called sig and gnd. Wire coordinate and layers
are entered to the generator, which draws the wire layout and generators a MemHenry input file. This file is converted
to an mbif file. To access the parallel generator, type generator -ui on -tcl parallel.
The general procedure that extracts properties from wires called sig and gnd. The coordinates are then used to build a
MemHenry and MemElectro mbif file. To use this procedure, first draw two wires in the Layout Editor. One wire
must be on a layer called sig, and the other wire must be on a layer called gnd. Then select both wires, source the sig-
nallines.tcl file, and type in the terminal window
general filename
Where filename is the name of the mbif file to be created.

Signalline.tcl Script
proc parallel { obj sfile_name lsig_layer dsig_length dsig_width lgnd_layer dgnd_length
dgnd_width dspacing } {

# Define variables for coordinates


set n1x 0
set n1y 0
set n2x $dsig_length
set n2y 0

set n3x 0
set n3y [expr $dsig_width/2 + $dspacing + $dgnd_width/2]
set n4x $dgnd_length
set n4y [expr $dsig_width/2 + $dspacing + $dgnd_width/2]

Coventor, Inc. March 23, 2010 D5-49


Section 5: Advanced Procedures Version 2010

# Set present working directory


set pwd [pwd]

#Set layer height based on mask layer defined in generator. The masks M1 to M6 exist in
the layout
switch $lsig_layer {"M1" {set sig_z 0.1} "M2" {set sig_z 0.2} "M3" {set sig_z 0.3} "M4"
{set sig_z 0.4} "M5" {set sig_z 0.5} "M6" {set sig_z 0.6}}
switch $lsig_layer {"M1" {set gnd_z 0.1} "M2" {set gnd_z 0.2} "M3" {set gnd_z 0.6} "M4"
{set gnd_z 0.6} "M5" {set gnd_z 0.6} "M6" {set gnd_z 0.6} }

#Add the signal wire


set rec_wire [cat:path -layer $lsig_layer -width $dsig_width -type flush $n1x,$n1y
$n2x,$n2y]
$obj addObject $rec_wire

#Add the gnd wire


set rec_gnd [cat:path -layer $lgnd_layer -width $dgnd_width -type flush $n3x,$n3y
$n4x,$n4y ]
$obj addObject $rec_gnd

#Generate the MemHenry input file


set outputfilename "script/$sfile_name"
set outputfile [open [append outputfilename ".inp"] w]

# Save the input file to disk


puts $outputfile "
**Title $sfile_name
*

*Units
.Units Um

*Define conductivity, units 1/um*ohms


.Default sigma=5.8e1

*Define nodes
*Sig
N1 x=$n1x y=$n1y z=$sig_z
N2 x=$n2x y=$n2y z=$sig_z

*Gnd
N3 x=$n3x y=$n3y z=$gnd_z
N4 x=$n4x y=$n4y z=$gnd_z

* Define elements
ESig N1 N2 w=$dsig_width h=0.1
EGnd N3 N4 w=$dgnd_width h=0.1

* Name Patches
.doRL

.end"

close $outputfile

#Generated MemHenry mbif file


cat:exec memhenry_script $pwd/$outputfilename

#Generate MemElectro inp file


set outputfilename "script/$sfile_name"
set outputfile [open [append outputfilename "_cap.inp"] w]

puts $outputfile "


**Title $sfile_name

D5-50 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

*Units
.Units Um

*Define Z level and conductivity, units 1/um*ohms


.Default z=0 sigma=5.8e1

*Define nodes
*Sig
N1 x=$n1x y=$n1y z=$sig_z
N2 x=$n2x y=$n2y z=$sig_z

*Gnd
N3 x=$n3x y=$n3y z=$gnd_z
N4 x=$n4x y=$n4y z=$gnd_z

M
* Define elements sig_length=$dsig_length sig_width=$dsig_width gnd_length=$dgnd_length
gnd_width=$dgnd_width
ESig N1 N2 w=$dsig_width h=0.1 nhinc=1 nwinc=1 nlinc=[expr int($dsig_length/
(2*$dsig_width))]
EGnd N3 N4 w=$dgnd_width h=0.1 nhinc=1 nwinc=1 nlinc=[expr int($dgnd_length/
(2*$dgnd_width))]

* Name Patches
.doRL

.end"

close $outputfile

#Generated MemElectro mbif file


cat:exec memhenry_script $pwd/$outputfilename
return
}
#******************************************************************************************
proc general {filename} {
global list
set outputfilename ""
set i 1
set sig_nodestring ""
set gnd_nodestring ""
set gnd_width ""
set sig_width ""
set esig ""
set egnd ""
set sig_numpoints 0
set gnd_numpoints 0
set pwd [pwd]

#Get list of selected path objects and output values


set list [select -selected]
set listlength [llength $list]
puts "listlength=$listlength"

# Read in wire parameters to determine the number of points in each wire


foreach obj $list {
set layer [$obj getLayer]
set layername [$layer getName]
set type [$obj getType]
set width [$obj getWidth]
set length [$obj getLength]
set area [$obj getArea]
set lib [$obj getLib]

Coventor, Inc. March 23, 2010 D5-51


Section 5: Advanced Procedures Version 2010

set shape [$obj getShape]


set flat [$lib getCurveFlatness]
set getPoints [list getCoords catapult.db.DbLib java.awt.Shape double]
set points [$obj $getPoints $lib $shape $flat]
set numpoints [$points length]
if {$layername == "sig"} {
set sig_numpoints $numpoints
set sig_width $width
set sig_length $length
puts "layer=$layername sig_numpoints=$sig_numpoints sig_width=$sig_width
sig_length=$sig_length"
}
if {$layername == "gnd"} {
set gnd_numpoints $numpoints
set gnd_width $width
set gnd_length $length
puts "layer=$layername sig_numpoints=$sig_numpoints gnd_width=$gnd_width
gnd_length=$gnd_length"
}
}
# Re-read parameter and build node and element text strings for use in inp_file
foreach obj $list {
set layer [$obj getLayer]
set layername [$layer getName]
set type [$obj getType]
set width [$obj getWidth]
set length [$obj getLength]
set area [$obj getArea]
set lib [$obj getLib]
set shape [$obj getShape]
set flat [$lib getCurveFlatness]
set getPoints [list getCoords catapult.db.DbLib java.awt.Shape double]
set points [$obj $getPoints $lib $shape $flat]
set numpoints [$points length]
puts "Number of points in wire $layer on layer $layername=$numpoints"
for {set j 0} {$j < $numpoints} {incr j 1} {
set point [$points get $j]
set x [$point getX]
set y [$point getY]
puts "x,y = $x,$y"
if {$layername == "sig"} {
set nodelist($j) "N[expr $j+1] x=$x y=$y z=0.1 \n"
#append nodelist(1) "esig#po."

append sig_nodestring $nodelist($j)


set elementlist($j) "N[expr $j+1] "
append esig $elementlist($j)
}
if {$layername == "gnd"} {
set nodelist($j) "N[expr $j+1+$sig_numpoints] x=$x y=$y z=0.1 \n"

append gnd_nodestring $nodelist($j)


set elementlist($j) "N[expr $j+1+$sig_numpoints] "
append egnd $elementlist($j)
}
}
}

#Generate MemHenry input file


set outputfilename "script/$filename"
set outputfile [open [append outputfilename ".inp"] w]

# Write output file. Note no spaces infront of text lines


puts $outputfile "

D5-52 March 23, 2010 Coventor, Inc.


Section 5: Advanced Procedures Version 2010

**Title $filename
*

*Units
.Units Um

*Define conductivity, units 1/um*ohms

*Define nodes
*Sig
$sig_nodestring

*Gnd
$gnd_nodestring

* Define elements

M
ESig $esig w=$sig_width h=0.1
EGnd $egnd w=$gnd_width h=0.1

* Name Patches
.doRL

.end"

close $outputfile

#Generated MemHenry mbif file


cat:exec memhenry_script $pwd/$outputfilename

#Generate MemElectro input file


set outputfilename "script/$filename"
set outputfile [open [append outputfilename "_cap.inp"] w]

# Write output file. Note no spaces in front of text lines.


puts $outputfile "
**Title $filename
*

*Units
.Units Um

*Define conductivity, units 1/um*ohms

*Define nodes
*Sig
$sig_nodestring

*Gnd
$gnd_nodestring

* Define elements sig_width=$sig_width gnd_width=$gnd_width Esig maxlength=[expr


$sig_width*2] Egndmaxlength=[expr $gnd_width*2]
ESig $esig w=$sig_width h=0.1 nhinc=1 nwinc=1 maxlength=[expr $sig_width*2]
EGnd $egnd w=$gnd_width h=0.1 nhinc=1 nwinc=3 maxlength=[expr $gnd_width*2]

* Name Patches
.doRL

.end"
close $outputfile

#Generated MemElectro mbif file


cat:exec memhenry_script $pwd/$outputfilename
return
}

Coventor, Inc. March 23, 2010 D5-53


Section 5: Advanced Procedures Version 2010

Notes

D5-54 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

Section 6: Appendix

6.1: Layout Editor Command Syntax


A
This section is a complete reference of all syntax enterable through either the Command Line or Terminal Window.
The functionality accessed with most of these commands can also be accessed with menu selections or icons, which
will be noted.

M
addcurve
Usage: cat:addcurve [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -auto -curvature
$value -error $value -coords $sx $sy $mx $my $ex $ey -xy $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-auto Automatically fit curve to points
-curvature $value Max curvature
-error $value Max error
-coords $sx $sy $mx $my $ex $ey Points containing a curve
-xy $x $y Location of object to modify
See page D3-85 for more details.

addpoints
Usage: cat:addpoints [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -location $x $y
-start $x $y -end $x $y -remove $x $y $x $y ...
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-location $x $y Location of object to modify
-start $x $y Start point
-end $x $y End point
-remove $x $y Side to remove
$x $y ... Coordinates
The equivalent menu function is Modify > Add/Del Points. See page D3-109 for more details.

Coventor, Inc. March 23, 2010 D6-1


Section 6: Appendix Version 2010

addrect
Usage: cat:addrect [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -rect $x $y $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-rect $x $y $x $y Rectangle
$x $y Location of object to modify
The equivalent menu function is Modify > Add Rect. See page D3-106 for more details.

angle
Usage: cat:angle [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] $x1 $y1 [$x2 $y2]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
$x1 $y1 [$x2 $y2] Coordinate(s)
The equivalent menu function is Tools > Angle. See page D3-28 for more details.

anglemode
Usage: cat:anglemode [- | -usage] [-V | -Version] [-ui <action>] -set [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-set [on | off] Set global angle restriction
See page D3-56 for more details.

arc
Usage: cat:arc [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -layer $name -type $choice
-width $value -center $x $y -radius $value -angle $angle -extent $angle -box $x $y $x $y -start $x $y -end $x $y
-crp $cx $cy $rx $ry $px $py -brp $llx $lly $urx $ury $rx $ry $px $py -baa $llx $lly $urx $ury $start $extent
-three $sx $sy $mx $my $ex $ey
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-layer $name Layer
-type $choice Arc type. $choice may be one of chord, pie, path, or circle
-width $value Width of arc type path
-center $x $y Center point

D6-2 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-radius $value Radius


-angle $angle Start angle
-extent $angle Extent angle
-box $x $y $x $y Bounding box
-start $x $y Starting radius point
-end $x $y Ending radius point
-crp $cx $cy $rx $ry $px $py Enter arc by center, radius, and ending point
-brp $llx $lly $urx $ury $rx $ry $px $py Enter arc by box, radius, and ending point
-baa $llx $lly $urx $ury $start $extent Enter arc by box, start angle, and angle extent
-three $sx $sy $mx $my $ex $ey Enter by three points on arc: start, middle, end

M
The equivalent menu function is Object > Arc. See page D3-67 for more details.

area
Usage: cat:area [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -select -layer $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-select Use list of selected objects
-layer $name By Layer
The equivalent menu function is Object > Area. See page D3-27 for more details.

arrayref
Usage: cat:arrayref [- | -usage] [-V | -Version] [-ui <action>] -obj $object -mag $value -angle $value -mirror {on |
off} -dx $value -dy $value -sx $value -sy $value -col $value -row $value -cra $x $y $radius $angle -lib "$lib" -name
$cell $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
-mag $value Magnification
-angle $value Angle of rotation
-mirror {on | off} Mirror vertically across X-axis
-dx $value Column distance
-dy $value Row distance
-sx $value Column spacing
-sy $value Row spacing
-col $value Columns
-row $value Rows
-cra $x $y $radius $angle Place by center, radius, and angle

Coventor, Inc. March 23, 2010 D6-3


Section 6: Appendix Version 2010

-lib "$lib" Source library file


-name $cell Reference cell name
$x $y Origin
The equivalent menu function is Object > Array Reference. See page D3-56 for more details.

autosave
Usage: cat:autosave [- | -usage] [-V | -Version] [-ui <action>] $minutes
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$minutes Auto save interval
The equivalent menu function is Tools > Options > Auto Save. See page D3-41 for more details.

B
bindkey
Usage: cat:bindkey [- | -usage] [-V | -Version] [-ui <action>] -save [on | off] -list [on | off] -name -alias -hot $keys
$command
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-save [on | off] Save current key bindings
-list [on | off] List key bindings
-name Display key name when pressed
-alias Key sequence requires c/r
-hot Key sequence needs no c/r
$keys Key sequence
$command Command
The equivalent menu function is Tools > Customize > Key bindings. See page D6-45 for more details.

bindmotion
Usage: cat:bindmotion [- | -usage] [-V | -Version] [-ui <action>] -save [on | off] -list [on | off] -enable [on | off]
-limit $value -code $code -command $command
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-save [on | off] Save current motion bindings
-list [on | off] List motion bindings
-enable [on | off] Enable motion bindings
-limit $value Minimum motion limit in pixels
-code $code Motion code
-command $command Command

D6-4 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

The equivalent menu function is Tools > Customize > Mouse bindings.

boolean
Usage: cat:boolean [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -in1 $name -in2
$name -out $name -flatten [on | off] -polygonmode [on | off] -op {and | or | xor | not}
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-in1 $name Input Layer1
-in2 $name Input Layer2

M
-out $name Output Layer
-flatten [on | off] Flatten layer
-polygonmode [on | off] Convert curves to polygons
-op {and | or | xor | not} Boolean operation
The equivalent menu function is Modify > Boolean > .... See page D3-109 for more details.

bufferopen
Usage: cat:bufferopen [- | -usage] [-V | -Version] [-ui <action>] -empty [true | false] $number
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-empty [true | false] Empty buffer
$number Buffer number
The equivalent menu function is Window > New Cell Buffer. See page D3-53 for more details.

C
catapultrc
Usage: cat:catapultrc [- | -usage] [-V | -Version] [-ui <action>] -write true|false -lib $name -cell $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-write true|false -lib $name -cell $name

cellbrowser
Usage: cat:cellbrowser [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent functionality in the Layout Editor interface in the Cell browser icon.

Coventor, Inc. March 23, 2010 D6-5


Section 6: Appendix Version 2010

cellclose
Usage: cat:cellclose [- | -usage] [-V | -Version] [-ui <action>] -force [on | off] -pop $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-force [on | off] Force quit without save
-pop $value Pop up $value levels
The equivalent menu function is Cell > Close.

cellcopy
Usage: cat:cellcopy [- | -usage] [-V | -Version] [-ui <action>] -lib "$lib" -exist {cancel | overwrite | rename | auto-
rename} -nested {on | off} "$srcCell" "$new"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib "$lib" Source library file
-exist {cancel | overwrite | rename | auto-rename} What to do if cell exists
-nested {on | off} Copy nested cells
"$srcCell" Source cell name
"$new" Destination cell name
The equivalent menu function is Cell > Copy.

cellcreate
Usage: cat:cellcreate [- | -usage] [-V | -Version] [-ui <action>] $cell
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$cell Cell name
The equivalent menu function is Cell > New.

celldelete
Usage: cat:celldelete [- | -usage] [-V | -Version] [-ui <action>] -force $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-force Force delete
$list Cell list
The equivalent menu function is Cell > Delete.

D6-6 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

cellopen
Usage: cat:cellopen [- | -usage] [-V | -Version] [-ui <action>] -last "$cell"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-last Open last open cell
"$cell" Cell name
The equivalent menu function is Cell > Open.

cellrename

M
Usage: cat:cellrename [- | -usage] [-V | -Version] [-ui <action>] -replace $old $new
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-replace Replace cell references
$old Old cell name
$new New cell name
The equivalent menu function is Cell > Rename.

cells
Usage: cat:cells [- | -usage] [-V | -Version] [-ui <action>] -lib $lib $pattern
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $lib Cell library
$pattern Pattern to match

cellsave
Usage: cat:cellsave [- | -usage] [-V | -Version] [-ui <action>] -needed [on | off] -quit
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-needed [on | off] Save only if needed
-quit Quit after writing
The equivalent menu function is Cell > Save.

cellsaveas
Usage: cat:cellsaveas [- | -usage] [-V | -Version] [-ui <action>] "$name"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

Coventor, Inc. March 23, 2010 D6-7


Section 6: Appendix Version 2010

"$name" New cell name


The equivalent menu function is Cell > Save As.

checklayout
Usage: cat:checklayout [- | -usage] [-V | -Version] [-ui <action>] -type {width | spacing | notch | enclosure | edge
length | inside overlap | outside overlap | self-intersection | point-in-line} -value $value -in1 $name -in2 $name -out
$name -clear [on | off] -flatten [on | off] -merge [on | off] -remove [on | off] -option {window | cell} $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-type {width | spacing | notch | enclosure | edge length | inside overlap | outside overlap | self-intersection | point-
in-line} Check
-value $value Minimum Value
-in1 $name Input Layer1
-in2 $name Input Layer2
-out $name Output Layer
-clear [on | off] Clear previous errors
-flatten [on | off] Flatten layer
-merge [on | off] Merge each layer
-remove [on | off] Remove point
-option {window | cell} Region to check
$x $y $x $y Check Window
The equivalent menu function is Tools > Layout Checks > Check layout. See page D3-92 for more details.

checkversion
Usage: cat:checkversion [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent menu function is Help > About Layout Editor.

cifin
Usage: cat:cifin [- | -usage] [-V | -Version] [-ui <action>] -lib $name -exist {append | cancel | overwrite} -template
$file $cif
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to create CIF cells in
-exist {append | cancel | overwrite} What to do if library exists
-template $file Template library file
$cif CIF input file name
The equivalent menu function is File > Translators > CIF In. See page D3-42 for more details.

D6-8 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

cifout
Usage: cat:cifout [- | -usage] [-V | -Version] [-ui <action>] -lib $name -topcell $name -exist {cancel | overwrite}
-pointlimit $value $cif
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to output to CIF file
-topcell $name Name of cell to output with its child cells
-exist {cancel | overwrite} What to do if CIF file exists
-pointlimit $value Point Limit

M
$cif CIF output file name
The equivalent menu function is File > Translators > CIF Out. See page D3-43 for more details.

cleanup
Usage: cat:cleanup [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -select $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-select Search list of selected objects
$x $y X, y location

cmdload
Usage: cat:cmdload [- | -usage] [-V | -Version] [-ui <action>] -reload [on | off] -classpath $path $class $command
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-reload [on | off] Reload
-classpath $path Class path
$class Class name
$command Command name

comments
Usage: cat:comments [- | -usage] [-V | -Version] [-ui <action>] -cell $name -append[on|off] $comment
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-cell $name Cell name
-append[on|off] Append comment
$comment Comment

Coventor, Inc. March 23, 2010 D6-9


Section 6: Appendix Version 2010

The equivalent menu function is File > Properties.

copy
Usage: cat:copy [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -layer $name -clipboard
[on | off] -paste [on | off] $fromX $fromY $toX $toY
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-layer $name Layer
-clipboard [on | off] Copy to clipboard
-paste [on | off] Paste from clipboard
$fromX $fromY From x, y location
$toX $toY To x, y location
The equivalent menu function is Edit > Copy.

cursor
Usage: cat:cursor [- | -usage] [-V | -Version] [-ui <action>] -click $choice -alt [on | off] -get -xy $x $y -dx $x -dy $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-click $choice Simulate click at current mouse location (left, middle, or right)
-alt [on | off] Alternate cursor
-get Query user for point
-xy $x $y X, y location to move mouse to
-dx $x Move mouse delta X distance
-dy $y Move mouse delta Y distance

curve
Usage: cat:curve [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -layer $name -type $choice
-width $value -equation $equation -range $start $finish -step $value $x $y ...
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-layer $name Layer
-type $choice Arc type. $choice may be one of chord or path
-width $value Width of arc type path
-equation $equation Equation
-range $start $finish Range

D6-10 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-step $value Step increment from start to finish


$x $y ... Coordinates
The equivalent menu function is Object > Curve. See page D3-72 for more details.

curveflatness
Usage: cat:curveflatness [- | -usage] [-V | -Version] [-ui <action>] $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$value Curve flatness

M
The equivalent menu function is Tools > Options > Curve flatness. See page D3-86 for more details.

cutwindow
Usage: cat:cutwindow [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -action [delete | select] -circle [on |
off] $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-action [delete | select] Delete or select enclosed data
-circle [on | off] Cut a circle instead of rectangle
$x $y $x $y Rectangle or Circle
The equivalent menu function is Modify > Cut window. See page D3-54 for more details.

D
delete
Usage: cat:delete [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -cut [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-cut [on | off] Cut to clipboard
The equivalent menu function is Edit > Delete. See page D3-113 for more details.

dxfin
Usage: cat:dxfin [- | -usage] [-V | -Version] [-ui <action>] -lib $name -exist {append | cancel | overwrite} -template
$file -precision $number $file
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

Coventor, Inc. March 23, 2010 D6-11


Section 6: Appendix Version 2010

-lib $name Library name to create DXF cells in


-exist {append | cancel | overwrite} What to do if library exists
-template $file Template library file
-precision $number Precision
$file DXF input file name
The equivalent menu function is File > Translators > DXF In. See page D3-44 for more details.

dxfout
Usage: cat:dxfout [- | -usage] [-V | -Version] [-ui <action>] -lib $name -topcell $name -exist {cancel | overwrite}
-pointlimit $value $dxf
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to output to DXF file
-topcell $name Name of cell to output with its child cells
-exist {cancel | overwrite} What to do if DXF file exists
-pointlimit $value Point Limit
$dxf DXF output file name
The equivalent menu function is File > Translators > DXF Out. See page D3-45 for more details.

E
editinplace
Usage: cat:editinplace [- | -usage] [-V | -Version] [-ui <action>] -name $cell -push $value $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-name $cell Cell name
-push $value Push down $value levels
$x $y Location of cell to edit
The equivalent menu function is Edit > Edit In Place.... See page D3-60 for more details.

exec
This command passes all arguments to the system shell. It essentially turns the terminal window into a DOS com-
mand window or a Linux command terminal window and executes the command and then returns back to the normal
LayoutEditor terminal window. It takes typical shell command arguments such as cat:exec ls or cat:exec
dir.

exit
Usage: cat:exit [- | -usage] [-V | -Version] [-ui <action>] -quit -write -yesno -close
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

D6-12 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-quit Force quit


-write Force write
-yesno Force yes or no to save
-close Close file(s), but do not exit
The equivalent menu function is File > Exit.

extractgds
Usage: cat:extractgds [- | -usage] [-V | -Version] [-ui <action>] -gds $file -out $path -topcell $name -layers $list
-zones $list -load {on | off} -map {on | off} -wizard {on | off} -quick {on | off} -query {on | off}
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information

M
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-gds $file GDS file name
-out $path Output Directory path
-topcell $name Top cell name
-layers $list Layer Filter
-zones $list Zone List
-load {on | off} Open zone file
-map {on | off} Create map file
-wizard {on | off} GDS Extractor Setup Wizard
-quick {on | off} Quick Setup Dialog
-query {on | off} Query cells and layers
The equivalent menu function is Tools > GDS Extractor. See page D2-21 for more details.

F
fileclose
Usage: cat:fileclose [- | -usage] [-V | -Version] [-ui <action>] -force [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-force [on | off] Force quit without save
The equivalent menu function is File > Close.

filecopy
Usage: cat:filecopy [- | -usage] [-V | -Version] [-ui <action>] -cell "$cell" -exist {append | cancel | overwrite} $source
$dest
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-cell "$cell" Cell hierarchy to copy
-exist {append | cancel | overwrite} What to do if Destination file exists

Coventor, Inc. March 23, 2010 D6-13


Section 6: Appendix Version 2010

$source Source file name


$dest Destination file name
The equivalent menu function is File > Copy.

filecreate
Usage: cat:filecreate [- | -usage] [-V | -Version] [-ui <action>] -template $file -precision $number -polymumps [true
| false] $library
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-template $file Template library file
-precision $number Decimal places of precision
-polymumps [true | false] Initialize for PolyMUMPS generators
$library Library file name
The equivalent menu function is File > New....

filedelete
Usage: cat:filedelete [- | -usage] [-V | -Version] [-ui <action>] -force $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-force Force delete
$name Library file name
The equivalent menu function is File > Delete.

fileopen
Usage: cat:fileopen [- | -usage] [-V | -Version] [-ui <action>] -template $file -cellopen {on | off} -last -default {cat |
gds | dxf | cif} "$name"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may one of off, on, okay, apply, close, help
-template $file Template file
-cellopen {on | off} Call cell browser
-last Open last open library and cell
-default {cat | gds | dxf | cif} Default file extension
"$name" Library name
The equivalent menu function is File > Open.

filerename
Usage: cat:filerename [- | -usage] [-V | -Version] [-ui <action>] $old $new
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information

D6-14 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$old Old lib name
$new New lib name
The equivalent menu function is File > Rename.

files
Usage: cat:files [- | -usage] [-V | -Version] [-ui <action>] $pattern
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

M
$pattern Pattern to match

filesave
Usage: cat:filesave [- | -usage] [-V | -Version] [-ui <action>] -needed [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-needed [on | off] Save only if needed
The equivalent menu function is File > Save.

filesaveas
Usage: cat:filesaveas [- | -usage] [-V | -Version] [-ui <action>] $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$name New library file name
The equivalent menu function is File > Save As.

filetemplate
Usage: cat:filetemplate [- | -usage] [-V | -Version] [-ui <action>] -set $name -unset $name -script $name -unscript
$name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-set $name Set template variable
-unset $name Unset template variable
-script $name Script template command
-unscript $name Unscript template command

Coventor, Inc. March 23, 2010 D6-15


Section 6: Appendix Version 2010

fillet
Usage: cat:fillet [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -remove [on | off] -curve [on | off] -all [on
| off] -point $x $y -radius $value -obj $object
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-remove [on | off] Remove fillet
-curve [on | off] Use curve
-all [on | off] All corners
-point $x $y Location of corner to fillet
-radius $value Radius
-obj $object Object
The equivalent menu function is Modify > Fillet.

G
gdsin
Usage: cat:gdsin [- | -usage] [-V | -Version] [-ui <action>] -lib $name -exist {append | cancel | overwrite} -template
$file -scale $value -case {no_change | upper | lower} $gds
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to create cells in
-exist {append | cancel | overwrite} What to do if library exists
-template $file Template library file
-scale $value Scale to multiply coordinates by
-case {no_change | upper | lower} Change case of cell names
$gds GDS input file name
The equivalent menu function is File > Translators > GDS In. See D3-46 for more details.

gdsout
Usage: cat:gdsout [- | -usage] [-V | -Version] [-ui <action>] -lib <name> -topcell <name> -cell $name -scale $value
-exist {cancel | overwrite} -pointlimit $value $gds
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib <name> Name of Library to output
-topcell <name> Name of cell to output with its child cells
-cell $name Name of cell to output
-scale $value Scale to multiply coordinates by
-exist {cancel | overwrite} What to do if file exists

D6-16 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-pointlimit $value Point Limit


$gds GDS output file name
The equivalent menu function is File > Translators > GDS Out. See D3-47 for more details.

gdssizelimit
Usage: cat:gdssizelimit [- | -usage] [-V | -Version] [-ui <action>] $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$value Minimum file size for issuing warning

M
The equivalent menu function is Tools > Options > GDS Size Limit.

generator
Usage: cat:generator [- | -usage] [-V | -Version] [-ui <action>] -obj $object -java $name -tcl $name -reload [on | off]
-ui [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
-java $name Generator name
-tcl $name Generator name
-reload [on | off] Reload definition of generator
-ui [on | off] UI when invoking generator

grid
Usage: cat:grid [- | -usage] [-V | -Version] [-ui <action>] -display $value -draw [on|off] $value(s)
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-display $value Display Grid multiple
-draw [on|off] Turn on or off drawing of grid
-$value(s) Working Grid X[,Y]
The equivalent menu function is Tools > Options > Grid. See page D3-21 for more details.

H
help
Usage: cat:help [- | -usage] [-V | -Version] [-ui <action>] -version -list [on | off] -help [on | off] $command
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-version About LayoutEditor

Coventor, Inc. March 23, 2010 D6-17


Section 6: Appendix Version 2010

-list [on | off] List commands


-help [on | off] General help
$command Command to display help for
The equivalent menu function is Help > Command List.

hierflatten
Usage: cat:hierflatten [- | -usage] [-V | -Version] [-ui <action>] -obj "$object ..." -level $value -select [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
-level $value Level
-select [on | off] Flatten selected data
The equivalent menu function is Cell > Flatten hierarchy. See page D3-59 for more details.

hierinsert
Usage: cat:hierinsert [- | -usage] [-V | -Version] [-ui <action>] -obj "$object ..." -replace {on | off} -name $cell $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
-replace {on | off} Replace objects with new cell reference
-name $cell New cell name
$x $y Origin
The equivalent menu function is Cell > Insert hierarchy. See page D3-59 for more details.

I
igesout
Usage: cat:igesout [- | -usage] [-V | -Version] [-ui <action>] -lib $name -topcell $name -exist {cancel | overwrite}
-polygonmode [on | off] -base $layer $iges
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to output to IGES file
-topcell $name Name of cell to output with its child cells
-exist {cancel | overwrite} What to do if IGES file exists
-polygonmode [on | off] Convert curves to polygons
-base $layer Name of base layer
$iges IGES output file name
The equivalent menu function is File > Translators > IGES Out. See page D3-49 for more details.

D6-18 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

inputmode
Usage: cat:inputmode [- | -usage] [-V | -Version] [-ui <action>] -all -45 $mode
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-all All angle mode
-45 45/90 degree angle mode
$mode Coordinate input mode
The functionality can be accessed from the icon.

M
L
layer
Usage: cat:layer [- | -usage] [-V | -Version] [-ui <action>] -mask $name -subtract true | false -dark true | false -save
[on | off] -restore [on | off] -color $name -fill $fill -iges $name -gds $name -cif $name -igesio on | off -gdsio on | off
-cifio on | off $layer
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-mask $name Mask name
-subtract true | false Subtract layer from mask
-dark true | false Invert mask data
-save [on | off] Save current settings
-restore [on | off] Restore previous settings
-color $name Color specified by name
-fill $fill Fill
-iges $name SAT/IGES layer name
-gds $name GDS layer name
-cif $name CIF/DXF layer name
-igesio on | off SAT/IGES I/O flag
-gdsio on | off GDS I/O flag
-cifio on | off CIF/DXF I/O flag
$layer Layer
The equivalent menu function is Edit > Layers > Edit. See page D3-66 for more details.

layerbrowser
Usage: cat:layerbrowser [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on,okay, apply, close, help
The equivalent menu function is Edit > Layers > Browse. See page D3-63 for more details.

Coventor, Inc. March 23, 2010 D6-19


Section 6: Appendix Version 2010

layercif
Usage: cat:layercif [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Layer list
The equivalent menu function is Edit > Layers > Edit. The Layer dialog that opens gives access to this parameter.
See page D3-64 for more details.

layercopy
Usage: cat:layercopy [- | -usage] [-V | -Version] [-ui <action>] -from $name -to $name -scope {this | nested | all}
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-from $name From Layer
-to $name To Layer
-scope {this | nested | all} Scope of copy
The equivalent menu function is Edit > Layers > Copy. See page D3-63 for more details.

layercreate
Usage: cat:layercreate [- | -usage] [-V | -Version] [-ui <action>] -mask $name -subtract true | false -dark true | false
-color $name -fill $fill -iges $name -gds $name -cif $name -igesio on | off -gdsio on | off -cifio on | off $layer
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-mask $name Mask name
-subtract true | false Subtract layer from mask
-dark true | false Invert mask data
-color $name Color specified by name
-fill $fill Fill
-iges $name SAT/IGES layer name
-gds $name GDS layer name
-cif $name CIF/DXF layer name
-igesio on | off SAT/IGES I/O flag
-gdsio on | off GDS I/O flag
-cifio on | off CIF/DXF I/O flag
$layer Layer
The equivalent menu function is Edit > Layers > Browse, and then from the Layer Browser dialog, select Layer >
New. See page D3-64 for more details.

D6-20 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

layerdelete
Usage: cat:layerdelete [- | -usage] [-V | -Version] [-ui <action>] -undelete [on | off] $layer
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-undelete [on | off] Undelete previously deleted layer
$layer Layer
The equivalent menu function is Edit > Layers > Browse, and then from the Layer Browser dialog, select Layer >
Delete. See page D3-65 for more details.

layergds

M
Usage: cat:layergds [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Layer list
The equivalent menu function is Edit > Layers > Edit. The Layer dialog that opens gives access to this parameter.
See page D3-64 for more details.

layeriges
Usage: cat:layeriges [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Layer list
The equivalent menu function is Edit > Layers > Edit. The Layer dialog that opens gives access to this parameter.
See page D3-64 for more details.

layermask
Usage: cat:layermask [- | -usage] [-V | -Version] [-ui <action>] $layer -mask $name -subtract true | false -dark true |
false
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$layer Layer
-mask $name Mask name
-subtract true | false Subtract layer from mask
-dark true | false Invert mask data

Coventor, Inc. March 23, 2010 D6-21


Section 6: Appendix Version 2010

The equivalent menu function is Edit > Layers > Edit. The Layer dialog that opens gives access to this parameter.
See page D3-64 for more details.

layerrename
Usage: cat:layerrename [- | -usage] [-V | -Version] [-ui <action>] $layer $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$layer Layer
$name New name
The equivalent menu function is Edit > Layers > Edit. The Layer dialog that opens gives access to this parameter.
See page D3-64 for more details.

layers
Usage: cat:layers [- | -usage] [-V | -Version] [-ui <action>] $pattern
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$pattern Name pattern to match
See page D3-63 for more details.

layerselect
Usage: cat:layerselect [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Layer list
The equivalent menu function is Edit > Layers > Browser. The dialog that opens gives access to this parameter. See
page D3-63 for more details.

layerview
Usage: cat:layerview [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list List
The equivalent menu function is Edit > Layers > Browser. The dialog that opens gives access to this parameter. See
page D3-63 for more details.

D6-22 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

length
Usage: cat:length [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -select
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-select Use list of selected objects
The equivalent menu function is Object > Length. See page D3-27 for more details.

levelview

M
Usage: cat:levelview [- | -usage] [-V | -Version] [-ui <action>] -on -off -save [on | off] -restore [on | off] -depth
$value $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
-save [on | off] Save current settings
-restore [on | off] Restore previous settings
-depth $value Drag $value levels of hierarchy
$list List
The equivalent menu function is View > Levels. See page D3-32 for more details.

link
Usage: cat:link [- | -usage] [-V | -Version] [-ui <action>] -obj $object ..." -mag $value -angle $value -mirror{on |
off} -name $name -origin $x $y -type {unidirectional | bidirectional} -providers {$object ...} -consumers {$object
...} -pproperties {$name ...} -cproperties {$name ...} -script $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
-mag $value Magnification
-angle $value Angle of rotation
-mirror {on | off} Mirror vertically across X-axis
-name $name Link name
-origin $x $y Origin
-type {unidirectional | bidirectional} Link type
-providers {$object ...} Provider objects
-consumers {$object ...} Consumer objects
-pproperties {$name ...} Provider property names
-cproperties {$name ...} Consumer property names

Coventor, Inc. March 23, 2010 D6-23


Section 6: Appendix Version 2010

-script $name Property change script

listnetname
Usage: cat:listnetname [- | -usage] [-V | -Version] [-ui <action>] -obj "$object ..." -repeat [on | off] $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
-repeat [on | off] Repeat execution of command
$x $y X, y location
The equivalent menu function is Tools > Net Names > List net name. See page D3-29 for more details.

listpatchname
Usage: cat:listpatchname [- | -usage] [-V | -Version] [-ui <action>] -obj "$object ..." -repeat [on | off] $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
-repeat [on | off] Repeat execution of command
$x $y X, y location

M
magnify
Usage: cat:magnify [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." $magnification(s)
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
$magnification(s) Magnification value(s) X[,Y]
The equivalent menu function is Modify > Transform > Magnify. See page D3-111 for more details.

markcoord
Usage: cat:markcoord [- | -usage] [-V | -Version] [-ui <action>] -screen -top -size {small | medium | large} -keep
true|false $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-screen Screen coordinate
-top Mark in top cell
-size {small | medium | large} Mark size

D6-24 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-keep true|false Keep Marks


$x $y X, y coord
The equivalent menu function is Tools > Mark coord. See page D3-27 for more details.

marknet
Usage: cat:marknet [- | -usage] [-V | -Version] [-ui <action>] "$name" -ignore [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
"$name" Net Name

M
-ignore [on | off] Ignore case of value string
The equivalent menu function is Tools > Net Names > Mark net. See page D3-29 for more details.

markpatch
Usage: cat:markpatch [- | -usage] [-V | -Version] [-ui <action>] "$name" -ignore [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
"$name" Patch Name
-ignore [on | off] Ignore case of value string

menubar
Usage: cat:menubar [- | -usage] [-V | -Version] [-ui <action>] -window $window -type $type -args $menus $label
$command -mnemonic { $char ... } -remove [on | off] -save [on | off] -startup [on | off] -system [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-window $window Window name
-type $type Button type
-args $menus $label $command Button arguments
-mnemonic { $char ... } Add a mnemonic to the button(s)
-remove [on | off] Remove button
-save [on | off] Save menu changes
-startup [on | off] Restore Startup menus
-system [on | off] Restore System menus
The equivalent menu function is Tools > Customize > Menu bar. See page D3-24 for more details.

mergegds
Usage: cat:mergegds [- | -usage] [-V | -Version] [-ui <action>] -gds $list -out $file
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

Coventor, Inc. March 23, 2010 D6-25


Section 6: Appendix Version 2010

-gds $list GDS file names


-out $file Output GDS file
The equivalent menu function is Tools > GDS Merge. See page D2-19 for more details.

mirror
Usage: cat:mirror [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -copy {none | anyan-
gle | left | right | up | down} -flip {none | horizontal | vertical} -axis $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-copy {none | anyangle | left | right | up | down} Make a copy of objects
-flip {none | horizontal | vertical} Direction of flip
-axis $x $y $x $y Axis of reflection
The equivalent menu function is Modify > Transform > Mirror. See page D3-106 for more details.

modify
Usage: cat:modify [- | -usage] [-V | -Version] [-ui <action>] -obj $object $objx $objy
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
$objx $objy Location of object to select
The equivalent menu function is Modify > Object.

move
Usage: cat:move [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
$x $y X, y location
$x $y X, y location
The equivalent menu function is Edit > Move. See page D3-102 for more details.

moveedge
Usage: cat:moveedge [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -edge $x $y -delta
$value $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information

D6-26 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-edge $x $y Location of edge to move
-delta $value Delta distance
$x $y Location of object to modify
The equivalent menu function is Modify > Move Edge.

moveedges
Usage: cat:moveedges [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] $x $y $x $y $x $y $x $y

M
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
$x $y $x $y Rectangle
$x $y X, y location
$x $y X, y location
The equivalent menu function is Modify > Move Edges.

movepoint
Usage: cat:movepoint [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -point $x $y -newpoint
$x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-point $x $y Location of point to move
-newpoint $x $y New location of point
$x $y Location of object to modify
The equivalent menu function is Modify > Move Point.

movewindow
Usage: cat:movewindow [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] $x $y $x $y $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
$x $y $x $y Rectangle
$x $y X, y location
$x $y X, y location

Coventor, Inc. March 23, 2010 D6-27


Section 6: Appendix Version 2010

The equivalent menu function is Modify > Move Point.

N
netname
Usage: cat:netname [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." "$name"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
"$name" Net Name
The equivalent menu function is Tools > Net Names > Set net name. See page D3-29 for more details.

newgenerator
Usage: cat:newgenerator [- | -usage] [-V | -Version] [-ui <action>] -obj "$object ..." $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj "$object ..." Objects
$name Generator name.
The equivalent menu function is Generators > New. See page D5-35 for more details.

nudge
Usage: cat:nudge -repeat [on | off] $x $y
-repeat [on | off] Repeat execution of command
$x X direction grid multiple
$y Y direction grid multiple
The equivalent menu function is Modify > Nudge. See page D3-102 for more details.

O
objbrowser
Usage: cat:objbrowser [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent menu function is Edit > Object Types > Properties. See page D3-87 for more details.

D6-28 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

objprops
Usage: cat:objprops [- | -usage] [-V | -Version] [-ui <action>] -save [on | off] -restore [on | off] -create $class
$attribute $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-save [on | off] Save current settings
-restore [on | off] Restore previous settings
-create Create attribute
$class Class name

M
$attribute Attribute name
$value Attribute value
The equivalent menu function is Edit > Object Types > Properties. In the dialog that opens, expand the tree of the tar-
get object. See page D3-87 for more details.

oversize
Usage: cat:oversize [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." $size
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj {$object ...} Objects
$size Oversize/Undersize
The equivalent menu function is Modify > Oversize. See page D3-112 for more details.

P
paste
Usage: cat:paste [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -layer $name $toX $toY
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-layer $name Layer
$toX $toY To x, y location
The equivalent menu function is Edit > Paste.

patchname
Usage: cat:patchname [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." "$name"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

Coventor, Inc. March 23, 2010 D6-29


Section 6: Appendix Version 2010

-repeat [on | off] Repeat execution of command


-obj "$object ..." Objects
"$name" Patch Name

path
Usage: cat:path [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -layer $name -width $value
-type $choice $x $y ...
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-layer $name Layer
-width $value Width
-type $choice Path type. $choice may be one of flush, round, extend, or corner
$x $y ... Coordinates
The equivalent menu function is Object > Path. See page D3-74 for more details.

polygon
Usage: cat:polygon [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -layer $name $x $y ...
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-layer $name Layer
$x $y ... Coordinates
The equivalent menu function is Object > Polygon. See page D3-77 for more details.

precision
Usage: cat:precision [- | -usage] [-V | -Version] [-ui <action>] $number
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$number Precision
See page D3-22 for more details.

print
Usage: cat:print [- | -usage] [-V | -Version] [-ui <action>] -rotate [on | off] -option {window | screen} $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

D6-30 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-rotate [on | off] Rotate page


-option {window | screen} Area to print
$x $y $x $y Print Window
The equivalent menu function is File > Print. See page D2-16 for more details.

process
Usage: cat:process [- | -usage] [-V | -Version] [-ui <action>] -reconcile "$name"
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

M
-reconcile Reconcile mask list to process file
"$name" Process file name
The functionality can be accessed from the Cell browser icon. From this dialog, expand the Properties tree from
the top-level hierarchy, and double click on the Process file property. See page D3-51 for more details.

Q
query
Usage: cat:query [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -local -verbose [on |
off] -check [on | off] $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-local Local coordinate values
-verbose [on | off] Display all info
-check [on | off] Check self-intersection
$x $y X, y location
The equivalent menu function is Tools > Check self-intersection.

R
rectangle
Usage: cat:rectangle [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -layer $name -mode
{corners | relative | center} $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-layer $name Layer

Coventor, Inc. March 23, 2010 D6-31


Section 6: Appendix Version 2010

-mode {corners | relative | center} Input Mode


$x $y $x $y Rectangle extents
The equivalent menu function is Object > Rectangle. See page D3-79 for more details.

redo
Usage: cat:undo [- | -usage] [-V | -Version] [-ui <action>] -redo -list $count
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-redo Redo
-list List
$count Count
The equivalent menu function is Edit > Redo.

redraw
Usage: cat:redraw [- | -usage] [-V | -Version] [-ui <action>] -top -auto [on | off] -back [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-top Redraw top cell data
-auto [on | off] Automatically redraw after data modification
-back [on | off] Backing Store
The equivalent menu function is View > Redraw.

reference
Usage: cat:reference [- | -usage] [-V | -Version] [-ui <action>] -obj $object -mag $value -angle $value -mirror {on |
off} -cra $x $y $radius $angle -lib "$lib" -name "$cell" $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
-mag $value Magnification
-angle $value Angle of rotation
-mirror {on | off} Mirror vertically across X-axis
-cra $x $y $radius $angle Place by center, radius, and angle
-lib "$lib" Source library file
-name "$cell" Reference cell name
$x $y Origin
The equivalent menu function is Object > Reference. See page D3-55 for more details.

D6-32 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

refsrename
Usage: cat:refsrename [- | -usage] [-V | -Version] [-ui <action>] -parent $parent -force [on | off] $old $new
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-parent $parent Parent cell name
-force [on | off] Force rename without prompt
$old Old cell name
$new New cell name
See page D3-85 for more details.

M
regenerate
Usage: cat:regenerate [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -all [on | off] -type
$type $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-all [on | off] Regenerate all generators
-type $type By Type
$x $y Location of object to regenerate
The equivalent menu function is Generators > Regenerate. See page D5-38 for more details.

removepoint
Usage: cat:removepoint [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -location $x $y
-remove $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-location $x $y Location of object to modify
-remove $x $y Point to remove
The equivalent menu function is Modify > Remove Point.

repeatmode
Usage: cat:repeatmode [- | -usage] [-V | -Version] [-ui <action>] -set [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-set [on | off] Set Global Repeat Mode

Coventor, Inc. March 23, 2010 D6-33


Section 6: Appendix Version 2010

The equivalent icon is .

rotate
Usage: cat:rotate [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -origin $x $y $angle
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-origin $x $y Origin to rotate around
$angle Angle of rotation
The equivalent menu function is Modify > Transform > Rotate. See page D3-104 for more details.

ruler
Usage: cat:ruler [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -keep true|false -type {single | multi |
common} $x1 $y1 $x2 $y2
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-keep true|false Keep Rulers
-type {single | multi | common} Ruler type
$x1 $y1 $x2 $y2 Coordinates
The equivalent menu function is Tools > Ruler. See page D3-28 for more details.

S
satout
Usage: cat:satout [- | -usage] [-V | -Version] [-ui <action>] -lib $name -topcell $name -exist {cancel | overwrite}
-polygonmode [on | off] -base $layer $sat
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-lib $name Library name to output to SAT file
-topcell $name Name of cell to output with its child cells
-exist {cancel | overwrite} What to do if SAT file exists
-polygonmode [on | off] Convert curves to polygons
-base $layer Name of base layer
$sat SAT output file name
The equivalent menu function is File > Translators > Sat Out. See page D3-50 for more details.

D6-34 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

scratchdir
Usage: cat:scratchdir [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

select
Usage: cat:select [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -query -selected -all
-layer $layer -name $name -type $type $objx $objy
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information

M
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-query Simply return handle to object, don't add it to selection list
-selected Simply return handles to all objects currently selected
-all Select All
-layer $layer By Layer
-name $name By Name
-type $type By Type
$objx $objy Location of object to select
The equivalent icon is , with the functionality set to Select objects.

selectable
Usage: cat:selectable [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Data object list
The equivalent menu function is Edit > Object types > Properties. In the dialog that opens, expand the object tree to
see the Selectable property. See page D3-90 for more details.

selectwindow
Usage: cat:selectwindow [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -require [enclosure | intersection
| vertex] -circle [on | off] $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-require [enclosure | intersection | vertex] Requirement for selection

Coventor, Inc. March 23, 2010 D6-35


Section 6: Appendix Version 2010

-circle [on | off] Select by circle instead of rectangle


$x $y $x $y Rectangle or Circle
The equivalent icon is , with the functionality set to Select rectangular area or Select circular area.

setenv
Usage: cat:setenv [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

setlayer
Usage: cat:setlayer [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj {$object ...} $layer
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj {$object ...} Objects
$layer Layer
The equivalent functionality in the interface is the Layer Browser drop-down menu:

setsnaps
Usage: cat:setsnaps [- | -usage] [-V | -Version] [-ui <action>] -save [on | off] -restore [on | off] $type $snap $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-save [on | off] Save current settings
-restore [on | off] Restore previous settings
$type Object type name
$snap Snap type name
$value Snap value; input is true or false
The equivalent functionality in the Layout Editor interface in the Snap icon . See page D3-84 for more details.

setwidth
Usage: cat:setwidth [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." $width
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
$width Width
The equivalent menu function is Modify > Change Width.

D6-36 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

shape
Usage: cat:shape [- | -usage] [-V | -Version] [-ui <action>] -obj $object -layer $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
-layer $name Layer
The equivalent menu function is Modify > Change Layer or the Layer > New option in the Layer Browser dialog.

snapbrowser

M
Usage: cat:snapbrowser [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent functionality in the Layout Editor interface in the Snap icon . See page D3-84 for more details.

snapmode
Usage: cat:snapmode [- | -usage] [-V | -Version] [-ui <action>] -set [on | off] -cursor [on | off] -once [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-set [on | off] Set Global Snap Mode
-cursor [on | off] Move cursor to nearest snap point
-once [on | off] Snap one coordinate
The equivalent functionality in the Layout Editor interface in the Snap icon . See page D3-84 for more details.

splitholes
Usage: cat:splitholes [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -layer $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-layer $name Layer

status
Usage: cat:status [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent menu function is Cell > Status. See page D3-52 for more details.

Coventor, Inc. March 23, 2010 D6-37


Section 6: Appendix Version 2010

subrect
Usage: cat:subrect [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -rect $x $y $x $y $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj $object Object
-rect $x $y $x $y Rectangle
$x $y Location of object to modify
The equivalent menu function is Modify > Sub Rect. See page D3-107 for more details.

summary
Usage: cat:summary [- | -usage] [-V | -Version] [-ui <action>] -select -layer $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-select List summary of selected objects
-layer $name Layer
The equivalent menu function is Cell > Summary.

T
tcldialog
Usage: cat:tcldialog [- | -usage] [-V | -Version] [-ui <action>] -proc $name -reload [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-proc $name Tcl command proc name
-reload [on | off] Reload definition of Tcl command

text
Usage: cat:text [- | -usage] [-V | -Version] [-ui <action>] -obj $object -layer $name -text $value -mag $value -angle
$value -mirror{on | off} $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-obj $object Object
-layer $name Layer
-text $value Text
-mag $value Magnification
-angle $value Angle of rotation

D6-38 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-mirror {on | off} Mirror vertically across X-axis


$x $y Location
The equivalent menu function is Generators > General > Text. See page D3-91 for more details.

togrid
Usage: cat:togrid [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj {$object ...} $grid
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command

M
-obj {$object ...} Objects
$grid Grid value

toolbar
Usage: cat:toolbar [- | -usage] [-V | -Version] [-ui <action>] -window $window -toolbar # -index # -type $type -args
$image(s) $tip $command -size $width [$height] -remove [on | off] -save [on | off] -startup [on | off] -system [on |
off] -update [on | off]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-window $window Window name
-toolbar # Canvas window toolbar index
-index # Button index
-type $type Button type
-args $image(s) $tip $command Button arguments
-size $width [$height] Fixed button size
-remove [on | off] Remove button
-save [on | off] Save toolbar changes
-startup [on | off] Restore Startup toolbars
-system [on | off] Restore System toolbars
-update [on | off] Update display
The equivalent menu function is Tools > Customize > Toolbars. See page D3-22 for more details.

topolygon
Usage: cat:topolygon [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj "$object ..." -layer $name
-flatness $value -pointlimit $value $objx $objy
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-obj "$object ..." Objects
-layer $name Layer

Coventor, Inc. March 23, 2010 D6-39


Section 6: Appendix Version 2010

-flatness $value Curve flatness


-pointlimit $value Point Limit
$objx $objy Location of object to select
The equivalent menu function is Modify > To Polygon.

tree
Usage: cat:tree [- | -usage] [-V | -Version] [-ui <action>] -select $cell
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-select List hierarchy of selected cells
$cell Cell name
The equivalent menu function is Cell > Tree. See page D3-51 for more details.

U
undo
Usage: cat:undo [- | -usage] [-V | -Version] [-ui <action>] -redo -list $count
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-redo Redo
-list List
$count Count
The equivalent menu function is Edit > Undo.

units
Usage: cat:units [- | -usage] [-V | -Version] [-ui <action>] -default $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-default Use as default units
$name Units name
The equivalent menu function is Tools > Units ....

unselect
Usage: cat:unselect [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -obj $object -all $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command

D6-40 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

-obj $object Object


-all Unselect All
$x $y Location of object to unselect
The equivalent menu function is Edit > Unselect.

V
viewcenter
Usage: cat:viewcenter [- | -usage] [-V | -Version] [-ui <action>] $x $y
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information

M
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$x $y X, y location
The equivalent menu function is View > Origin.

viewdelete
Usage: cat:viewdelete [- | -usage] [-V | -Version] [-ui <action>] $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$name View

viewfilter
Usage: cat:viewfilter [- | -usage] [-V | -Version] [-ui <action>] $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$value Minimum pixel size allowed for drawing
The equivalent menu function is View > Filter....

viewfit
Usage: cat:viewfit [- | -usage] [-V | -Version] [-ui <action>] -top -select -next -prev
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-top Fit top cell data
-select Fit selected data
-next Fit next selected object
-prev Fit previous selected object
The equivalent menu function is View > All.

Coventor, Inc. March 23, 2010 D6-41


Section 6: Appendix Version 2010

viewgrid
Usage: cat:viewgrid [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent functionality in the Layout Editor interface in the Zoom icon’s Zoom to Grid option.

viewlast
Usage: cat:viewlast [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
The equivalent menu function is View > Previous.

viewmark
Usage: cat:viewmark [- | -usage] [-V | -Version] [-ui <action>] $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$name View
See page D3-31 for more details.

viewmove
Usage: cat:viewmove [- | -usage] [-V | -Version] [-ui <action>] $xpercent $ypercent
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$xpercent $ypercent Move factors
The equivalent menu function is View > Pan. See page D3-29 for more details.

viewname
Usage: cat:viewname [- | -usage] [-V | -Version] [-ui <action>] -box [$x $y $x $y] $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-box [$x $y $x $y] View to save
$name Name for this View
The equivalent menu function is View > Create named view. See page D3-33 for more details.

D6-42 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

viewrestore
Usage: cat:viewrestore [- | -usage] [-V | -Version] [-ui <action>] $name
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
$name View
The equivalent functionality in the Layout Editor interface is to select one of the views from the Previous View
icon’s menu.

viewset
Usage: cat:viewset [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -list [$x $y $x $y]

M
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-list List saved views
[$x $y $x $y] Set view to box
See page D3-33 for more details.

viewzoom
Usage: cat:viewzoom [- | -usage] [-V | -Version] [-ui <action>] -repeat [on | off] -set -box [$x $y $x $y] $value
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-repeat [on | off] Repeat execution of command
-set Set zoom factor to value
-box [$x $y $x $y] Zoom factor box
$value Zoom factor
The equivalent functionality in the Layout Editor interface in the Zoom icon’s Zoom window option.

visible
Usage: cat:visible [- | -usage] [-V | -Version] [-ui <action>] -on -off $list
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-on Add to ON
-off Add to OFF
$list Data object list
The equivalent menu function is View > Object types > All Visible.

Coventor, Inc. March 23, 2010 D6-43


Section 6: Appendix Version 2010

W
window
Usage: cat:window [- | -usage] [-V | -Version] [-ui <action>] -position $x $y -size $width $height -tsize $height
-key on|off -visible on|off -watermark on|off -white on|off -clickfocus on|off -error on|off -warn on|off -ontop on|off
$window
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help
-position $x $y New window position
-size $width $height New window size
-tsize $height Terminal command area height in pixels
-key on|off Enable key bindings
-visible on|off Set window visibility
-watermark on|off Set Watermark visibility
-white on|off Set Background White
-clickfocus on|off Click for Focus
-error on|off Display Error Dialogs
-warn on|off Display Warning Dialogs
-ontop on|off Display Browsers on top
$window Window name (terminal or canvas)
The equivalent menu function is Tools > Customize > Windows.

workingdir
Usage: cat:workingdir [- | -usage] [-V | -Version] [-ui <action>]
[- | -usage] Short or full usage description
[-V | -Version] Short or full version information
[-ui <action>] User interface controls. <action> may be one of off, on, okay, apply, close, help

D6-44 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

6.2: Key Bindings


The Layout Editor key binding commands or keyboard shortcuts can be used to execute menu or icon functions. The
user has a choice of using the default key bindings or selecting the L-Edit or Virtuoso key bindings, which can be
loaded by selecting Tools > Customize > Load Bindings.
This section has a table for each key binding set that lists the function, the keyboard shortcut, and alternate command,
which is entered at the command prompt in the terminal window. The table also has a link to a description of the func-
tion, where available.

The user can create custom key bindings. For more information, see page D3-25.

M
Keyboard Shortcut Format
The convention for the keyboard shortcut format is as follows:
 Keys are designated exactly how they appear on the keyboard; i.e. Ctrl, Alt, and Esc.
 Letters are capitalized in the tables because that is the way they appear on the keyboard. It does not mean the
user should hold down the Shift key when pressing the letter key.
 Key combinations connected with a + sign indicate that the first key should be held down while pressing the
second key. For example, Ctrl + Q means to hold down the Ctrl key while pressing the Q key.
 Key combinations that are not connected with a + sign indicate that each key or combination of keys con-
nected with a + sign should be pressed and released before pressing the next key or key combination. For
example in the command Shift Ctrl + Q, the user should press and release the Shift key, then press the Ctrl
and Q keys.

Key Bindings in the Terminal Window


By default, the key bindings are disabled in the terminal window. The Home, End, left and right arrow keys can be
used to move the cursor back and forth in the terminal input window. The up and down arrow keys can be used to
move back and forth through the previously executed command history, allowing re-executing or editing and execut-
ing. The key bindings can be enabled in the terminal window from the Tools > Customize > Windows menu. Select
the Keybindings option, then type the commands in the terminal window.

6.2.1: Default Key Bindings

Keyboard Description of
Function Command
Shortcut function

System Commands

Close Layout Editor Ctrl + Q cat:exit D2-32

Undo the last executed command Ctrl + X cat:undo D2-10

Redo the command that had been undone Ctrl + Y cat:redo D2-10

Library Commands

Save Layout Editor .cat file Ctrl + F cat:filesave D3-41


Ctrl + S

Coventor, Inc. March 23, 2010 D6-45


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Open a .cat file (open file selection dialog) Ctrl + F cat:fileopen D3-38
Ctrl + O

Close the active Layout Editor .cat file Ctrl + F cat:fileclose D3-42
Ctrl + Q

Close the active .cat file without prompt to save Ctrl + F cat:fileclose -f
(forced) Shift Ctrl + Q

Cell Commands

Save the current cell Ctrl + C cat:cellsave D3-41


Ctrl + S

Open a cell (opens cell browser) Ctrl + C cat:cellopen D3-52


Ctrl + O

Close the active cell Ctrl + C cat:cellclose D3-61


Ctrl + Q

Close the active cell without prompt to save Ctrl + C cat:cellclose -f


(forced) Shift+ Ctrl + Q

Object Commands

Activate the polygon tool Ctrl + E cat:polygon D3-77


Ctrl + B

Activate the rectangle tool Ctrl + E cat:rectangle D3-79


Ctrl + R

Activate the arc tool Ctrl + E cat:arc D3-67


Ctrl + A

Activate the curve tool Ctrl + E cat:curve D3-72


Ctrl + C

Activate the path tool Ctrl + E cat:path D3-74


Ctrl + P

Open cell reference dialog Ctrl + E cat:reference -ui on


Ctrl + F

Open the array reference dialog Ctrl + E cat:arrayref -ui on D2-12


Shift Ctrl + F

Open dialog for placing text in layout Ctrl + E cat:text -iu on D3-83
Ctrl + T

Edit Commands

Select object nearest to cursor Ctrl + O catch {cat:select -repeat D3-99


Ctrl + S off \[cat:cursor\]}

Unselect object nearest to cursor Ctrl + O catch {cat:unselect - D3-100


Ctrl + U repeat off \[cat:cursor\]}

Unselect all selected objects Ctrl + O cat:unselect -all D3-100


Shift Ctrl + U

D6-46 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Move an object Ctrl + O cat:move D3-102


Ctrl + M

Copy an object Ctrl + O cat:copy D3-101


Ctrl + C

Delete an object Ctrl + O cat:delete D3-113


Ctrl + D

Delete cat:delete D3-113

Inserts the coordinates of the mouse cursor Insert Not available

M
location in the Canvas at the Command prompt

Zoom in + (on Number Pad) cat:viewzoom +2 D3-35

Zoom out - (on Number Pad) cat:viewzoom -2 D3-35

Modify selected object Ctrl + O cat:modify D3-102


Ctrl + E

Use boolean and tool Ctrl + O cat:boolean -op and D3-109


Ctrl + B A

Use boolean not tool Ctrl + O cat:boolean -op not D3-109


Ctrl + B N

Use boolean or tool Ctrl + O cat:boolean -op or D3-109


Ctrl + B O

Use boolean xor tool Ctrl + O cat:boolean -op xor D3-109


Ctrl + B X

Display selected object information in the Ctrl + O cat:query \[cat:cursor\] D3-85


Terminal window Ctrl + I

Display more detailed information on selected Ctrl + O cat:query -verbose on D3-85


object in the Terminal window Shift + Ctrl + I \[cat:cursor\]

View Commands

Refresh the screen Ctrl + R cat:redraw D3-30

Zoom to selected area Ctrl + V cat:viewzoom -box D3-34


Ctrl + B

Zoom out by 2 Ctrl + V cat:viewzoom -2 D3-35


Ctrl + Z

Zoom in by 2 Ctrl + V cat:viewzoom +2 D3-35


Shift + Ctrl + Z

Center the Canvas view to the location of the Ctrl + V cat:viewcenter D3-29
selected point: click in the Canvas at the desired Ctrl + C \[cat:cursor\]
location, then enter keyboard shortcut

Pan to center on point 0, 0 Ctrl + V cat:viewcenter 0 0 D3-29


Ctrl + O

Coventor, Inc. March 23, 2010 D6-47


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Revert to previous view Ctrl + V cat:viewlast D2-13


Ctrl + L

Zoom and pan to display all objects as large as Ctrl + V cat:viewfit D2-13
possible Ctrl + F

Zoom and pan to display selected objects as large Ctrl + V cat:viewfit -select D3-34
as possible Ctrl + S

Zoom to grid threshold Ctrl + V cat:viewgrid D3-34


Ctrl + G

Shift Canvas view up UP arrow cat:viewmove 0.0 0.8 D3-29

Shift Canvas view down DOWN arrow cat:viewmove 0.0 -0.8 D3-29

Shift Canvas view to the right RIGHT arrow cat:viewmove 0.8 0.0 D3-29

Shift Canvas view to the left LEFT arrow cat:viewmove -0.8 0.0 D3-29

Mouse Keys

Hold down right mouse button (click to release) Ctrl + . cat:cursor -click l

Hold down left mouse button (click to release) Ctrl + , cat:cursor -click r

Terminal Commands (Note that these commands are off by default; see “Key Bindings in the Terminal Window”
on page D6-45 for more details)

Move the terminal cursor backward Ctrl + C B terminal-cursor-


backward

Revert to forward movement of cursor Ctrl + C F terminal-cursor-forward

Execute the previous command Ctrl + P terminal-prev-command

Execute the next command Ctrl + N terminal-next-command

Clear terminal window Ctrl + U terminal-clear

Object Selection

Select an object in the Canvas left mouse click catch {cat:unselect -all; D3-99
cat:select -repeat off
\[cat:cursor\]}

Select several objects in the Canvas (turns on the Shift + left mouse catch {cat:select -repeat D3-99
Repeat mode) click off \[cat:cursor\]}

Unselect a selected object; if several objects are Ctrl + left mouse {cat:unselect -repeat off D3-100
selected, unselects last selected object only click \[cat:cursor\]}

D6-48 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

6.2.2: L-Edit Key Bindings


This section outlines the L-Edit key bindings. These key bindings can be invoked by selecting Tools > Customize >
Load bindings > L_Edit.

The key bindings for L-Edit are defined for an English locale and may not function for non-English locales. The
reason is that in an English locale, the key binding for the right arrow key is /RIGHT; in other locales the key
binding may be different. For example, in a French locale the same key is /DROITE. The user can always modify
the key bindings manually by editing the Layout Editor user start-up file (catapultrc).

Keyboard Description of
Function Command
Shortcut function

M
Cell Commands

Delete cell Shift + B cat:celldelete D3-61

Copy cell Shift + C cat:cellcopy -ui on D3-53

Create new cell Shift + N cat:cellcreate -ui on D3-52

Open a cell Shift + O cat:cellopen D3-52

Rename a cell Shift + T cat:cellrename -ui on D3-54

File Commands

Close the Layout Editor F10 or Ctrl + Q cat:exit D2-32

Open dialog to create new file Ctrl + N cat:filecreate -ui on D3-36

Open file browser Ctrl + O cat:fileopen D3-38

Print drawing area display to configured printer Ctrl + P cat:print D3-3

Save active file Ctrl + S cat:filesave D3-41

Close active file without closing the Layout Ctrl + W cat:fileclose D3-42
Editor

Object Creation Command

Activate the rectangle tool F2 cat:rectangle D3-79

Activate the polygon tool F3 cat:polygon D3-77

Activate the path tool F4 cat:path D3-74

Activate the arc tool F5 cat:arc -type circle - D3-67


crp

Open dialog for placing text in layout F6 cat:text -ui on D3-83

Open cell reference dialog Shift + I or Insert cat:reference -ui on D2-12

Edit Commands

Coventor, Inc. March 23, 2010 D6-49


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Undo last action Ctrl + Z cat:undo D2-10

Modify selected object Ctrl + E cat:modify D3-102

Copy to the clipboard (accessible for other cells) Ctrl + C cat:copy -clipboard D3-101

Cut to clipboard Ctrl + X cat:delete -cut D3-113

Paste Ctrl + V cat:paste D3-101

Paste to current working layer Alt + V cat:paste -current true D3-101

Delete an object Ctrl + B or Delete key cat:delete D3-113

Copy an object (accessible only for active cell) Ctrl + D cat:copy D3-101

Rotate an object by 90° Shift + R cat:rotate 90 D3-104

Flip object horizontally Shift + H cat:mirror -flip D3-111


horizontal

Flip object vertically Shift + V cat:mirror -flip D3-111


vertical

Move up hierarchy one level to edit the cell at Page Up key cat:cellclose -pop 1 D3-60
that level without having to open it

Move down hierarchy one level to edit the cell at Page Down cat:editinplace -push 1 D3-60
that level without having to open it

Display object selection dialog Ctrl + F cat:select -ui on

Move a selected object; click in the Canvas to Alt + X cat:nudge D3-103


indicate the nudge direction

View Commands

Refresh the screen Space bar cat:redraw D3-30

Zoom and pan to display all objects as large as Home cat:viewfit D2-13
possible

Display top level of hierarchy: draw all the End cat:viewfit -top D3-32
objects in the cell; use after edit in-place
command

Zoom out by 2 - (on the Number Pad) cat:viewzoom -2 D3-35


or - (on top row of
keyboard)

Zoom in by 2 + (on the Number cat:viewzoom +2 D3-35


Pad) or Shift + =

Revert to previous view Shift + X cat:viewlast D2-13

Zoom to selected area Shift + W cat:viewfit -select D3-34

Shift Canvas view up Up arrow cat:viewmove 0 .8 D3-29

D6-50 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Shift Canvas view up and zoom in Shift + Up arrow cat:viewset -cell 8

Shift Canvas view down Down arrow cat:viewmove 0 -.8 D3-29

Shift Canvas view down and zoom in Shift + Down arrow cat:viewset -cell 2

Shift Canvas view to the right Right arrow cat:viewmove .8 0 D3-29

Shift Canvas view to the right and zoom in Shift + Right arrow cat:viewset -cell 6

Shift Canvas view to the left Left arrow cat:viewmove -.8 0 D3-29

M
Shift Canvas view to the left and zoom in Shift + Left arrow cat:viewset -cell 4

Object Selection

Select all objects in the active cell Ctrl + A cat:select -all D3-97

Unselect all selected objects Alt + A cat:unselect -all D3-100

Coventor, Inc. March 23, 2010 D6-51


Section 6: Appendix Version 2010

6.2.3: Virtuoso Key Bindings


This section outlines the Virtuoso key bindings. These key bindings can be invoked by selecting Tools > Customize >
Load bindings > Virtuoso. Note that the Virtuoso key bindings have hot keys, meaning a pressing letter on the key-
board performs a designated action. For example, pressing the R key activates the rectangle tool.

The key bindings for Virtuoso are defined for an English locale and may not function for non-English locales. The
reason is that in an English locale, the key binding for the right arrow key is /RIGHT; in other locales the key
binding may be different. For example, in a French locale the same key is /DROITE. The user can always modify
the key bindings manually by editing the Layout Editor user start-up file (catapultrc).

Keyboard Description of
Function Command
Shortcut function

File Commands

Save the active file F2 cat:filesave D3-41

Open file selection dialog F5 cat:fileopen D3-38

Closes active file, but leaves Layout Editor open Ctrl + W cat:fileclose D3-42

Object Creation Command

Activate the rectangle tool R cat:rectangle D3-79

Activate the polygon tool Shift + P cat:polygon D3-77

Activate the path tool P cat:path D3-74

Open cell reference dialog I cat:reference -ui on D2-12

Edit Commands

Undo last action U cat:undo D2-10

Redo the last action that was undone Shift + U cat:undo -redo D3-62

Copy cat:copy D3-101

Copy to the clipboard (accessible for other cells) Y cat:copy -clipboard D3-101

Paste Shift + Y cat:paste D3-101

Delete an object Delete cat:delete D3-113

Move an object M cat:move D3-102

Move an object edge S cat:moveedge D3-112

Rotate (object must be selected first) Shift + O cat:rotate -ui on D3-104

Move down edit in-place hierarchy one level Shift + X cat:editinplace -push 1 D3-60

Edit object that appears in cell by reference X cat:editinplace D3-60

Display object selection dialog Shift + S cat:select -ui on

D6-52 March 23, 2010 Coventor, Inc.


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Add points to an object Shift + R cat:addpoints D3-109

View Commands

Refresh the screen Ctrl + R cat:redraw D3-30

Zoom and pan to display all objects as large as Ctrl + X cat:viewfit D2-13
possible or
F

Zoom in Ctrl + Z cat:viewzoom +2 D3-35

M
Zoom out Shift + Z cat:viewzoom -2 D3-35

Revert to previous view W cat:viewlast D2-13

Open dialog to set filtering of objects below the F9 cat:viewfilter -ui on D3-20
user-defined threshold

Activate the selection icon to select all objects Shift + A cat:selectwindow D3-97
within a user-defined area

Activate selection tool to select an object A cat:select D3-97

Complete a command Shift + B


or
Enter

Stop a command or function before it is Ctrl + C


completed or
Esc

Remove a user-defined area from an object Shift + C cat:cutwindow

Display only the top level in the hierarchy Ctrl + F cat:levelview 0 D3-32

Display all levels in the hierarchy Shift + F cat:levelview -on D3-32

Zoom to grid Shift + G cat:viewgrid D3-34

Select user-defined area and copy information in Ctrl + S cat:cutwindow -select D3-54
that area to the clipboard

Define viewing area Ctrl +T cat:viewset


or
Z

Display hierarchy information in Terminal Shift + T cat:tree D3-51


window

Move Canvas view to left and up Shift + Home cat:viewmove -.8 .8 D3-29

Move Canvas view to left and up and zoom out Ctrl + Home cat:viewset -fit 7

Zoom in to the upper left quadrant of the cell Home cat:viewset -cell 7

Move Canvas view to the left Shift + Left arrow cat:viewmove -.8 0 D3-29

Coventor, Inc. March 23, 2010 D6-53


Section 6: Appendix Version 2010

Keyboard Description of
Function Command
Shortcut function

Move Canvas view to the left and zoom out Ctrl + Left arrow cat:viewset -fit 4

Zoom in to the left center quadrant Left arrow cat:viewset -cell 4

Move Canvas view left and down Shift + End cat:viewmove -.8 -.8 D3-29

Move Canvas view left and down and zoom out Ctrl + End cat:viewset -fit 1

Zoom in to lower left quadrant of the cell End cat:viewset -cell 1

Move Canvas view up Shift + Up arrow cat:viewmove 0 .8 D3-29

Move Canvas view up and zoom out Ctrl + Up arrow cat:viewset -fit 8

Zoom in to the upper center quadrant of the cell Up arrow cat:viewset -cell 8

Center Canvas view at origin (0,0) Shift + 5 (on the cat:viewmove 0 0 D3-29
Number Pad)

Move Canvas view down Shift + Down arrow cat:viewmove 0 -.8 D3-29

Shift Canvas view down and zoom out Ctrl + Down arrow cat:viewset -fit 2

Zoom in to the lower center quadrant of the cell Down arrow cat:viewset -cell 2

Move Canvas view to the right and up Shift + Page Up cat:viewmove .8 .8 D3-29

Move Canvas view to the right and up and zoom Ctrl + Page Up cat:viewset -fit 9
out

Zoom in to the upper right quadrant of the cell Page Up cat:viewset -cell 9

Move Canvas view to the right Shift + Right arrow cat:viewmove .8 0 D3-29

Move Canvas view to the right and zoom out Ctrl + Right arrow cat:viewset -fit 6

Zoom in to the right center quadrant of the cell Right arrow cat:viewset -cell 6

Move Canvas view to the right and down Shift + Page Down cat:viewmove .8 -.8 D3-29

Move Canvas view to the right and down and Ctrl + Page Down cat:viewset -fit 3
zoom out

Zoom in to the right lower quadrant of the cell Page Down cat:viewset -cell 3

Object Selection

Select all objects in the active cell Ctrl + A cat:select -all D3-97

Unselect all selected objects Ctrl + D cat:unselect -all D3-97

Unselect a selected object D cat:unselect D3-97

D6-54 March 23, 2010 Coventor, Inc.


Designer Index Version 2010

Designer Index
A chord D3-72
circle D3-70
add ellipse D5-7
rectangle D3-106 generated objects D2-11
generating with equations D5-31
add command syntax D6-2 path D3-74
pie D3-76
angle
polygon D3-77
anglemode command D3-55
icon function D3-4 basic settings
measure D3-28 Terminal Window and Canvas D3-18
angles batch rule checks D3-96
change input mode D3-4
Bindkey
annotating a model command syntax D6-4
Preprocessor creating custom commands D3-25
redline markup D4-19
creating menu bar shortcut D5-37, D5-40
arc D5-6 list of all commands D6-45, D6-49, D6-52
command syntax D6-2
bindmotion
arc chord D3-69 command syntax D6-4

area Boolean D3-80


add to object D3-106 command syntax D6-5
command syntax D6-3 operations D3-109
of an object D3-11
bottom-up design D5-15
select D3-97
buffer
array cell D3-53
creating a circular array D3-58
command syntax D6-5
how to create D3-56
reference D2-12, D3-55 building a solid model D2-34
reference command syntax D6-3
use to create hierarchy D5-18

Auto Redraw D3-30


C
auto save
command syntax D6-4 Cadence TechFile D3-46
in Layout Editor D3-16, D3-41 cell
auto save D3-16
Auto-refresh D3-18
buffer D3-53
command syntax D6-5
copying D3-53
creating and opening D3-52
B definition D2-9
background color deleting D3-61
in Layout Editor D3-18, D3-19 editing D3-60
in Preprocessor D4-50 name visibility D3-89
reference D3-55
backing store D3-30 saving and closing D3-61
status D3-52
basic objects structure D3-52
arc D3-67, D5-6

Coventor, Inc. March 23, 2010 IX1


Designer Index Version 2010

summary D3-52 copy


using other cells in layout D2-12 command syntax D6-10

Cell Browser D3-51 creating objects D3-67


displays hierarchy D5-19
cross section view
cell extents D3-14 in the Preprocessor D4-19, D4-22

cellclose D3-61 curve D5-6


command syntax D6-1, D6-10
cells define control points D5-6
list in file D2-24 drawing as a polygon D5-8
flatness D5-8
cellsaveas D3-61
from a polygon D5-10
chord plot with an equation D5-12
how to create D3-72 removing D3-86

CIF D3-42, D3-43


add layer D6-20
export D2-27 D
export command syntax D6-9
export file requirements D3-48 dark and light fields
import command syntax D6-8 how they determine geometry D2-15, D2-33
import without translating D2-17 interaction with polarity D2-34
translating D2-18, D3-42
data precision D3-22
circle
how to draw D3-70 delete D3-113
command syntax D6-11
click for focus D3-18 files D3-40
recover deleted layer D3-65
colors
in Layout Editor D3-18, D3-19 design rules
in Preprocessor D4-50 check layout D3-14

column distance D3-57 dielectric


assignment in Preprocessor D4-31
column spacing D3-57
display grid multiple D2-8, D3-21
command file D2-9
drag depth D3-32, D5-21
commands
creating customized D3-25 draw grid D2-8, D3-21
syntax D6-1
DXF D3-44
comments convert lines to closed shapes D3-14
command syntax D6-9 export D2-27
dialog D3-41 export command syntax D6-12
for a file D3-7 import command syntax D6-11
import without translating D2-17
control point curves D5-6 translating D2-18
converting polygons to curves D5-10

coordinates
defining negative values D3-79 E
mark D3-27
mark command syntax D6-24 edge
relative D3-4 definition D4-3
using number pad to define D3-79 how to move D3-112
properties D4-33

IX2 March 23, 2010 Coventor, Inc.


Designer Index Version 2010

edit in-place D3-60, D5-22 fill D3-64

ellipse filleting D3-86


how to build D5-7 command syntax D6-16

endcap D3-75 finite element model


finite element creation D4-15
equation
fitting D5-12 flat designs (non-hierarchical) D5-13
linear D5-31
quadratic D5-32 flatness D5-8, D5-12
syntax D5-31
flip an object D3-104, D3-105
trigonometric D5-33
fluid
error checking designating a part as D4-33
accuracy D3-96
in Layout Editor D3-92 focus D3-18
small error vectors D3-97

error dialog
how to disable D3-20
G
escape from command D2-11
GDS D3-46
etch add layer command syntax D6-21
with text on mask D3-91 convert to cat file command D3-47
export D2-27
export export and import example D2-29
2-D capabilities D2-27 export command syntax D6-16
all cells to GDS D3-16 export file requirements D3-48
export attributes D2-14 extract command syntax D6-13
GDS example D2-29 extract zone D2-21
layouts in other formats D2-17 extract zones D3-14
model or mesh D4-16 import command syntax D6-16
importing Cadence TechFile information D3-46
extents D3-89
importing without translating D2-17
merge command syntax D6-25
merge files D2-27, D3-14
size limit command D6-17
F translating D2-18, D3-46
translator D2-31
face
definition D4-3 GDS export
naming D4-14 all cells D3-16
properties D4-33
GDS extraction tool D2-21
file create the outline D2-22
auto save D3-16 extract multiple zones D2-26
command syntax D6-13 Query Cells and Layers D2-24
deleting D3-40 Quick Setup D2-23
how to copy D3-39 Setup Wizard D2-21
how to save D2-9, D3-41 zone specification D2-22
recover data D3-41
renaming D3-40 GdsExtractor command D2-26
translators D3-42
GdsMerge command D2-27
file creation
with template D3-36 generator
without template D3-36 command syntax D6-17
layout D3-91

Coventor, Inc. March 23, 2010 IX3


Designer Index Version 2010

parameters and variables D5-38, D5-41 Cut D3-3


predefined D2-2 New D3-3
shortcuts D5-36, D5-39 Open D3-3
Paste D3-3
TCL D5-35
Path D3-2
TCL update D5-38, D5-41 Pie D3-2
text D3-91 Polygon D3-2
undo D5-38, D5-41 polygon D3-77
with layout extraction D3-91 Print D3-3
Rectangle D3-2
generators Redo D3-4
circular array D3-58 Reference D3-3
how to create D5-35 Save D3-3
Text D3-3
menu selection D3-17
Torus D3-2
Turn Relative Mode On D3-4
generic generator scripting D2-2
Turn Repeat Mode Off D3-4
Undo D3-3
graphic design system D3-46
LayoutEditor
grid display mouse button actions D3-4
constraints D2-8, D3-21 Preprocessor D4-17
display grid multiple D2-8, D3-21 Add a Plane D4-18
Clear quality query highlight D4-18
draw grid D2-8, D3-21
Conductor selection mode D4-17
snap D2-8, D3-21 Cross Section View D4-18
working grid D2-8, D3-21 Delete mesh D4-18
Edge selection mode D4-17
Face selection mode D4-17
Fit to Window D4-18
Generate mesh D4-18
H Hide Selection D4-17
Layer selection mode D4-17
heal a solid model D4-38 Measure distance D4-19
Model/mesh quality quer D4-18
hierarchy D2-12 Next View D4-18
advantages of D5-14 Oblique View D4-18
command syntax D6-18 Open Model D4-17
considerations D5-12 Pan Model D4-17
created with array D5-18 Part selection mode D4-17
flat designs D5-13 Patch selection mode D4-17
how to create D2-12, D5-15 Previous View D4-18
Redline markup D4-19
how to edit D5-12
Render in wireframe D4-18
how to insert D5-23 Render the scene shaded D4-18
how to remove D5-27 Rotate Model D4-17
inserting D3-59 Rubberband Zoom D4-18
navigation D5-19 Save Model D4-17
navigation with Edit In-Place D5-22 Show Selection D4-17
Stop D4-19
removing D3-59
Tape measure D4-18
with a cell reference D5-16 Vertex Selection D4-17
with repeating objects D5-13 Zoom D4-17
Zoom to Selection D4-18
select D3-2

I IGES
add layer command syntax D6-21
icons export D2-27
Layout Editor D3-2 export file requirements D3-48
Cell browser D3-3 translation D3-49
Chord D3-3
Circle D3-2 IGS
Coordinate input mode D3-4 export command syntax D6-18
Copy D3-3

IX4 March 23, 2010 Coventor, Inc.


Designer Index Version 2010

import layers
2-D capabilities D2-17 list in file D2-24
GDS example D2-29 object count D3-66
layouts in other formats D2-17
layout
info dimensional units for D3-14
object information D3-62 using hierarchy in designs D2-12

Layout Editor D3-1


angle function D3-28
AutoSave function D3-41
J calculate object area D3-11
join regions D4-43 cell extents D3-14
change layer D3-12
change width of an object D3-12
creating a meander D5-45
K duplicate objects D3-14
entering object coordinates D3-79
keep coord marks function D3-16 filleting D3-86
flip an object D3-105
keep rulers function D3-16 GDS extraction tool D2-21
GDS Extractor D3-14
key binding D3-25
Generators menu D3-17
default D6-45
icons
L-Edit D6-49 lower horizontal row D3-5
Virtuoso D6-52
layout checks D3-14
keyboard shortcut D6-45 menu commands D3-7
customization D3-24
defining D3-24
merge files
escape D2-11
GDS
merge files D2-19
move edge D3-12
net names D3-29
L object count D3-66
last view D2-13 print an image D2-16
recovering data D3-41
layer remove a point D3-12
add layer to CIF layout D6-20 repair tools D3-14
add layer to GDS command D6-21 repeat function D3-4
add layer to IGES layout D6-21 ruler function D3-28
assign object o different layer D3-12 verify a layout D3-92
command syntax D6-19
copy to new cell D3-102 length
creation D3-63, D3-64 command syntax D6-23
creation command syntax D6-20 measure object D3-27
definition D2-13, D4-3
level list D3-32
delete command syntax D6-21
how to delete D3-65 library
properties in Preprocessor D4-31 definition D2-9
select D2-16, D3-63 how to save D2-9
selectability D2-16
summary of objects on D3-52, D3-67 licates D3-14
visibility D2-16
linear equations D5-31
Layer Browser D3-63
links
export attributes D2-14
with partitioned model D4-6
fields D2-14
how to select D2-13

Coventor, Inc. March 23, 2010 IX5


Designer Index Version 2010

Linux merge GDS files D2-19, D2-27


Start command D2-2
merging layers D2-32
log file D2-9
meshing
function D4-15
merging layers D4-45
quality D4-47
M regions D4-2, D4-45
mark terminology D4-3
coordinates D3-27
mirror
keep marked coordinates D3-16
command syntax D6-26
mask layers how to D3-105, D3-106
how they determine geometry D2-32
modify
mask polarity an object D3-108
how it affects geometry D2-34 command syntax D6-26

material properties motion binding


change for a model D4-32 see mouse binding

Material Properties Database mouse binding D3-26


changes to model only D4-32
mouse button actions D3-4
meander
move
layout D5-45
a point D3-112
measuring distances an edge D3-112
in the Preprocessor D4-49 an object D3-102
command syntax D6-26
measuring objects edge command syntax D6-26
angles D3-28 point command syntax D6-27
ruler function D3-28
MPD
menubar functions see Material Properties Database
how to add D3-24
MPD Editor
Menus access from the Preprocessor D4-32
Layout Editor D3-7
Cell D3-11
Edit D3-8
File D3-7
Generators D3-17 N
Help D3-17
Modify D3-12 names
Object D3-11 assigning in Preprocessor D4-14
Tools D3-13
View D3-9 navigation
Window D3-17 through a hierarchical design D5-19
Preprocessor D4-28 with Edit In-Place function D5-22
Edit D4-29
Properties D4-31 net names D3-29
Edge Properties D4-33
Face Properties D4-33
command syntax D6-28
Layer Properties D4-31 mark command syntax D6-25
Part Properties D4-32
Vertex Properties D4-34
Rendering Options D4-30
netlist
File D4-28 in Function Manager window D2-4
Mesh D4-42
Solid Model D4-36 nudge D3-103
Tools D4-45 command syntax D6-28
View D4-34

IX6 March 23, 2010 Coventor, Inc.


Designer Index Version 2010

O plane
add in Preprocessor D4-22
object
add area D3-106 point
calculate area D3-11 add/delete D3-109
calculating length D3-27 addpoints command syntax D6-1
change width D3-12 how to move D3-112
create an array D5-14 move D3-13
display number on a layer D3-66 move command syntax D6-27
how to modify D3-108 remove D3-12, D3-95
how to move D3-102 remove command D6-33
mirror D3-105, D3-106 snap D3-84
place multiple instances D5-13
polygon D3-77, D3-78
query D3-62
command syntax D6-30
restricting angle placement D3-55, D3-56
convert to curve D5-10
rotate D3-104
how to create D3-77
search for duplicates D3-14
how to draw D3-77
object browser move edge D3-12
how to select D3-87
pop D5-22
visible extents D3-89
precision D3-22, D3-36
object information
how to access D3-62 Preprocessor D4-16
add a plane D4-22
origin canvas D4-2
visibility D3-88
changing material properties of a part D4-32
overview colors D4-50
main user menu D2-3 cross section view D4-19
dimension function D4-49
Geometry Browser D4-3
Heal function D4-38
P icons D4-17
importing a model D4-16
panning D2-12 join regions D4-43
direction and degree D3-29
lighting options D4-53
part making hidden entities visible D4-29
designating as a fluid D4-33 Menus D4-28
properties D4-32 meshing function D4-15
naming entities D4-14
partitioning partition function D4-6, D4-36
example D4-6 Quality Query D4-46
undo D4-37 redraw D4-36
uses D4-6 rendering options D4-30
rubberband zoom D4-35
path D3-74 scaling a model D4-30
center line D3-89 Set Name function D4-14
command syntax D6-30 set properties D4-31
how to create D3-74 shaded rendering D4-21
how to draw D3-74 shading effect D4-50
setting path width D3-74 shadow effect D4-52
show selection D4-29
photoresist
how it determines geometry D2-33 solid modeling D4-5
relation to mask polarity D2-34 split parts function D4-54
split regions D4-42
pie Statistics D4-38
how to create D3-76 tape measure function D4-49

Coventor, Inc. March 23, 2010 IX7


Designer Index Version 2010

undo partition D4-37 reference


View tool menu D4-34 array D2-12, D3-56
wireframe rendering D4-21 to other cells D2-12

previous view D2-13 region


as a meshing entity D4-2
printing definition D4-4
from Layout Editor D2-16 join region function D4-43
split region function D4-42
process
apply offsets D2-4 removing small features
simulator D2-1 from a solid model D4-38
in 2-D layout D3-92
Process Editor D2-5
columns explained D2-5 renaming files D3-40
Project Settings file D2-3 rendering
shaded D4-21
properties
wireframe D4-21
dialog window D4-31
edge D4-33 repair layout D3-14
enter comments D3-7
face D4-33 repeat mode D3-30
layer D4-31
part D4-32 rotate
vertex D4-34 a model in the Preprocessor D4-13
an object in the Layout Editor D3-104
push D5-22 command syntax D6-34
Preprocessor icon function D4-17
push and pop
multi-level D5-23 row
distance D3-57
spacing D3-57

Q ruler
command syntax D6-34
quadratic equation keep ruler measurements D3-16
in Layout Editor D5-32

Quality Query function D4-46

query S
command syntax D6-31
object information D3-62 SAT
export command syntax D6-34
export from Layout Editor D3-50

R save
autosave function in Layout Editor D3-41
rectangle D6-2 in Layout Editor D2-9
add area D3-112
command syntax D6-31 scaling
how to create D3-79 in the Preprocessor D4-30
how to draw D3-79
scroll bars D2-12
subtract area D3-112
subtract command syntax D6-38 select
multiple objects D3-97
redo D2-10 object groups D3-97
redraw D3-30 unselect D3-100
in Preprocessor D4-36

IX8 March 23, 2010 Coventor, Inc.


Designer Index Version 2010

selecting objects D3-97 Terminal window D2-9, D3-18


circular area D3-97
configure options D3-98 text
rectangular area D3-97 how to add to layout D3-83
on a mask D3-91
set view D3-33 with user-created fonts D3-91

shape D3-80 three-dimensional model


view D2-35
sine wave
creation in Layout Editor D5-33 toolbar buttons
adding and removing D3-22
small error vectors D3-97
torus D3-81
snap feature D3-84
trigonometric equation
solid model in the Layout Editor D5-33
apply offset D2-4
clip a device D2-4
create an inverse D2-4
errors, how to correct D4-38
function in Preprocessor D4-5
U
how geometry is determined D2-32 undo D2-10
menu function in Preprocessor D4-36
partitioning D4-6 units
terminology D4-3 layout dimensions D3-14

spiral unselect D3-100


creation in Layout Editor D5-34

split parts
Preprocessor function D4-54 V
split region verification
Preprocessor function D4-42 accuracy D3-96
command syntax D6-8
status
of a cell D3-52 layout D3-92

subtract vertex
rectangle D3-107 definition D4-3
properties in Preprocessor D4-34
summary
of a cell D3-52 view D3-30
of a layer D3-52, D3-67 command syntax D6-41
levels D5-20

viewcenter D3-29

T
Tcl generators
add to Canvas menu D5-44
W
creating D5-35
warning dialog
examples D5-42 how to disable D3-20
meander D5-45
mirror example D5-42 watermark D3-19
shortcuts D5-37, D5-40
undo D5-38, D5-41 window captures
Preprocessor D4-29
template D2-11

Coventor, Inc. March 23, 2010 IX9


Designer Index Version 2010

working grid D2-8, D3-21

Z
zone
extract multiple D2-26
specify for GDS extraction D2-22

zones
create D2-21

zoom D3-34
by pre-selected factors D3-35
in D2-13
out D2-13
to grid D3-34
to pre-selected area D3-34
to pre-selected objects D3-34
view all D2-13

zoom function
in Preprocessor D4-35

IX10 March 23, 2010 Coventor, Inc.


Version 2010

IX-12 March 23, 2010 Coventor, Inc.


Version 2010

IX-13 March 23, 2010 Coventor, Inc.


Version 2010

IX-14 March 23, 2010 Coventor, Inc.

You might also like