View Library View Table Of Contents View Previous Chapter in Book View Next Chapter in Book Open PDF to print book Search Cadence Library Email Comments Help Using Documentation Shut Down Cadence Documentation Server


Virtuoso Layout Editor User Guide, Product Version 5.0


4


Setting Up Your Environment

This chapter contains these topics:




Setting Layout Editor Defaults

Before you can start working in the Virtuoso® Layout Editor, several startup files must be initiated. Some of the things these files do include setting up your environment, pointing to libraries, and defining your plotters.



Startup Files

The layout editor uses the following startup files:

File

.cdsinit

Purpose

A Cadence® SKILL language file executed when the Cadence design framework II (DFII) product starts.

User location

~/.cdsinit

Sample location

your_install_dir/tools/dfII/samples/local/cdsinit

System default location

./.cdsinit



File

.cdsenv

Purpose

Holds application defaults for environment variables.

User location

~/.cdsenv

Sample location

your_install_dir/tools/dfII/samples/.cdsenv

System default location

./.cdsenv



File

.cdsplotinit

Purpose

Initialization script for plot operations.

User location

~/.cdsplotinit

Sample location

your_install_dir/tools/plot/samples/cdsplotinit.sample

System default location

./.cdsplotinit



File

display.drf

Purpose

Specifies how you want your layers to appear on your monitor and in your plots.

User location

~/display.drf

Sample location

your_install_dir/share/cdssetup/dfII/default.drf

System default location

./display.drf



File

cds.lib

Purpose

Sets the paths to libraries and other cds.lib files. This file is used by the Library Browser, the File - Open command, and the File - New command.




.cdsinit File

The .cdsinit file can be used to initialize your Cadence environment. You can set window and layout editor defaults in the .cdsinit file, so your settings are loaded whenever you start Cadence® Design Framework II (DFII) workbench.

You can store the .cdsinit file in any or all of the following locations. DFII looks for the .cdsinit file in the following order:

your_install_dir/tools/dfII/local/.cdsinit in your site installation directory

~/.cdsinit in your home directory

./.cdsinit in your working directory



.cdsenv File

The .cdsenv file sets application environment variables. You can use this file to change the layout editor default settings.

To change the layout editor default setting,

  1. Copy the .cdsenv file to your home directory by typing

    cp your_install_dir/tools/dfII/samples/.cdsenv ~

  2. Use a text editor to edit it.

The .cdsenv file needs to contain only the defaults you change. If you save the .cdsenv file to your home directory, it is loaded when you start the software. You can change your setting during a session by loading a different file.

Note:  Do not copy the system default .cdsenv file located in the following directory:

your_install_dir/tools/dfII/etc/tools/layout/.cdsenv

It contains an extra argument and will not work as your ~/.cdsenv.

Other information you can store in the .cdsenv file is new values for DBUPerUU. The default DBUPerUU settings are located at

your_install_dir/tools/dfII/etc/tools/cdba/.cdsenv

Types of Measurement Units

userUnits

Sets the unit of measure for your design and can be microns, millimeters, centimeters, meters, mils, or inches.

DBUPerUU

Sets the number of design database units per user unit.




Setting Default Values with Menu Commands

The following layout editor and DFII commands and forms control most of the default values for your design environment:

Display Options form

Controls display options in layout windows.

Layout Editor Options form

Controls the options for layout editor behavior.

Virtuoso XL Options form

Controls the values of the Virtuoso XL Layout Editor options.

User Preferences form

Controls your Cadence software environment. These settings affect all Cadence applications, not just the layout editor.

Display Resource Editor (DRE)

Controls the appearance of layers.

Edit Layers form

Controls the data in the Layer Definition class of a technology file.




Setting Up the .Xdefaults File

The .Xdefaults file settings control how the Cadence software works in the X Window System environment. If you want to change these settings, copy the sample .Xdefaults file from your_install_dir/tools/dfII/cdsuserto your home directory (~) and edit it. The layout editor uses the system default settings if there are no settings in your home .Xdefaults file.

For a complete list of .Xdefaults settings for Cadence software, read the DFII section of the Cadence Configuration Guide.

The following table shows the settings that affect the layout editor and sample options.


Title

Setting

Description

Opus.LSWGeometry

250x500+100+100

Specifies size and location of Layer Selection Window (LSW).

Opus.geometry

624x245+515+643

Location and size of the Command Interpreter Window (CIW) (overrides opus.x, opus.y, opus.height, and opus.width).

Opus.textFont

fixed

Font for text in type-in fields, ShowFile windows, and the CIW input and output areas.

Opus.attentionTextColor

blue

Color of text in dialog boxes.

Opus.background

LightBlue

Color of the background for everything except graphics windows.

Opus.bottomShadowColor

MediumBlue

Color for the bottom shadow of three-dimensional widgets.

Opus.foreground

blue

Color of menu and listbox text and selected radio and toggle buttons.

Opus.textColor

chocolate4

Color of text in type-in fields, ShowFile windows, and the CIW input and output areas.

Opus.topShadowColor

azure

Color of top shadow of three-dimensional widgets.

Opus.activeBannerColor

pink

Color of the active window banner.

Opus.borderColor

black

Color of field borders if hiShowFieldBorders(t) has been called.

Opus.buttonColor

black

Color of button and label text.

Opus.dragColor

white

Color of the selection box you draw around objects; the zoom box you draw to zoom in or out; the outlines of objects you move, copy, or reshape; and the outlines of edges you stretch. dragColor controls the highlight that appears before you select objects. Objects and edges are highlighted as you move the cursor over them.

Opus.editorBackground

black

Color of design window background.

Opus.flashColor

pink

Color of flashing box drawn around error fields in forms.

Opus.recessColor

grey70

Color of uneditable text fields and depressed buttons.

Opus.formPlacement

left

Location of form (top, bottom, left, right, or center).

Opus.formRelativeTo

CIW

Location of form relative to screen, currentWindow, or CIW.

Opus.labelFont

-adobe-helvetica-bold-r-*-*-12-*

Font used for form labels, button text, and menu text.

Opus.optionFormPlacement

left

Placement of option form (top, bottom, left, right, or center).

Opus.optionFormRelativeTo

CIW

Placement of option form relative to screen, currentWindow, or CIW.

Opus.textEditor

vi

Text editor.


Opus.LSWGeometry

When the layout editor starts, Opus.LSWGeometry settings determine the size and location of the LSW, excluding the border and window title. The border and window title are determined by the window manager.

Opus.LSWGeometry works in the following manner:

Note:  Opus.LSWGeometry might not work with all window manager configurations. For example, in ctwm, the option UsePPosition must be set to on in order to specify the location of the LSW with Opus.LSWGeometry.




Using the Technology File

Each design library must be associated with a technology library compiled from a technology file. The technology file defines

You can associate multiple design libraries with a single technology library using the Technology File Manager Attach command.

For complete details about how to create and edit technology files, refer to the following:



Technology File Requirements for the Layout Editor

The layout editor requires the technology file to contain complete definitions of the layers used in your design. The technology file can also have




Using Environment Variables



Graphic Environment Variables

Graphic environment variables control the window display. These variables can be stored in the cellview or the .cdsenv file in your home directory. There are several ways to change the default settings of graphic environment variables:



Layout Editor Environment Variables

Layout environment variables control how various layout editor commands work. There are several ways to change the default settings of layout environment variables:

For example, to set the gravityOn variable, type the following in the CIW or include it in a file:

envSetVal("layout" "gravityOn" 't)

To determine the current value of any layout editor environment variable, type the envGetVal() function in the CIW as follows:

envGetVal("layout" "variable_name")

You can see more detailed information and the entire list of graphic and layout editor variables in Appendix B.




Setting Window and Form Location



Placing a Window Manually

To set the Cadence software so that each time you open any cellview, you define the size and location of the window,

  1. In the CIW, choose Options - User Preferences.

    The User Preferences form appears.

  2. Turn on Place Manually.

  3. Click OK.

  4. Choose Window - Utilities - Copy Window to see the results of the change in another window.

    A rectangle appears next to the mouse pointer:

  1. Click where you want one corner of the design window and drag the pointer to the opposite corner.

    You see an outline showing the size and location of the window.

  2. Release the mouse button.

    The window appears inside the outline.



Setting a Default Window Size and Location

To set the default size and location of layout windows,

  1. Resize and move a layout window where you want all your layout windows to be displayed.

  2. Note the number in the upper right corner of the window.

  3. Exit the Cadence software.

  4. Open your ~/CDS.log file and look at the bottom of the file for a hiResizeWindow entry for the window number you noted previously.

    The CDS.log file is created in your home directory.

    The hiResizeWindow() function shows the coordinates of any window you moved or resized. For example:

    hiResizeWindow(window(2) list(476:303 1103:869))
  5. Add the following to your .cdsenv file:

    layout leWindowBBox string "((coord coord) (coord coord))"

    For example:

    layout leWindowBBox string "((476 303) (1103 869))"


Setting Options for Window Border Utilities

By default, the window display includes these optional utilities:

You can remove any of these objects from the window. You can also add a scroll bar that lets you scroll the design window.

To set what appears in the window border,

  1. In the CIW, choose Options - User Preferences.

    The User Preferences form appears.

  2. Set any of the window controls on or off.

  1. Click OK.

  2. Choose Window - Utilities - Copy Window to see the results of the change in another window.



Setting a Default Form Location

To set the default location for the lower left corner of all forms, do the following:

  1. Determine the maximum X and Y coordinates (upper rightmost coordinate) of your screen. To find this coordinate, type the following in the CIW:

    hiGetMaxScreenCoords()

    The CIW displays (1142 870) the maximum X and Y coordinates. For this example, the rightmost X coordinate is 1142, and the uppermost Y coordinate is 870.

  2. Estimate the coordinates where you want the upper left corner of the forms.

  3. To set where forms appear, add the following to your  .cdsinit file.

    hiSetFormPosition(coordinate:coordinate)

    For example:

    hiSetFormPosition(710:600)

    With these coordinates, forms open in the lower right side of the screen the next time you start the Cadence software.




Customizing Layout Editor Menus

You can customize (edit, add, remove) the Virtuoso Layout Editor menu items by editing the layEdit.menus file included in your installation hierarchy.

By editing the layEdit.menus file, you can define each menu item (specifically, the menu item symbol, its menu text, and the callBack function) and organize these definitions into the respective pulldown menus. You can change menu definitions without having to rebuild the SKILL context to see the change. Also, the menu file definitions are easier to maintain from one release to the next because they are independent of the code that implements the menus.

The layEdit.menus file contains the layout editor menu items. To edit this ASCII file, you must copy it to ~/menus and then make your changes. You can leave the edited layEdit.menus file in your ~/menus directory or copy it to a local, work, or project directory.



Location of the layEdit.menus File

The layEdit.menus file is read in the following order and at these locations.


your_install_dir/tools/dfII/etc/tools/menus/layEdit.menus

System information is read at this location.

your_install_dir/local/menus/layEdit.menus

Site-specific information is read at this location to allow for site overrides.

workArea/menus/layEdit.menus

or

~/menus/layEdit.menus

Work area, project, or ~/menus information is read at this location to allow for personal overrides.


To see the changes you made in the layEdit.menus file, restart the software and open a cellview window.



Editing Considerations

When editing the layEdit.menus file, be aware of the following considerations:



Additional Reference Files

To learn how to install a sample menu file, read the file

your_install_dir/tools/dfII/etc/tools/layout/menus.sample

For more information about customizing layout editor files, read the file

your_install_dir/tools/dfII/etc/tools/layout/README_menus.txt

For general information about customizing menus, read the file

your_install_dir/tools/dfII/etc/tools/menus/README



Using the Display Options Form

The Display Options form controls the appearance of objects and the behavior of commands in this cellview.

Nets shows flight lines between objects on the same net. If your design contains many nets, your screen may turn white, causing the instTerms on top of the instance to not be seen. To see the instTerms, turn on Instance Pins and the flight lines will not display, allowing the instTerms to be seen.

Access Edges shows routing edges of pins.

Instance Pins shows pins in instances.

Array Icons shows outlines of array cells when Display Levels suppresses cell details.

Label Origins marks the origins of labels with diamond markers.

Dynamic Hilight marks the edge, object, or point that would be selected if a point selection were made. When Dynamic Hilight is on and your cellview contains a large number of objects, cursor motion may slow down. You can increase the cursor motion speed by turning this off.

Net Expressions displays the net expression instead of the terminal name of a pin. When there are net expressions in instances, the terminal name is displayed, not the net expression, even when Net Expressions is set on.

Stretch Handles displays the handles on a Relative Object Design parameterized cell (pcell) that indicate that the pcell can be stretched. A stretch handle is a named set of coordinates assigned to a specific parameter of the pcell. Stretch handles look like small diamonds. For information about stretchable pcells, see "Stretchable Parameterized Cells" in the Virtuoso Relative Object Design User Guide.

Axes displays the cellview X and Y axes.

Path Borders shows the border edges of paths. Turn it off to display only path centerlines.

Instance Origins marks cell instance origins with diamonds when you set Display Levels to show only instance outlines.

EIP Surround (edit-in-place) displays the surrounding design when you edit a cell in place.

Pin Names shows terminal names of pins that have pin name text displays.

Dot Pins displays the centers of dot pins with diamond markers.

Use True BBox when on, displays the instance master bounding box. When off, displays the cellview bounding box, which can cause large designs to open faster because masters are opened down to the display stop level only.

Cross Cursor displays the cursor as dot shaped or as dotted-line cross shaped.

Via Shapes displays via attributes. When Via Shapes is set to off (the default), vias are displayed as the bounding box of each via. When set to on via attributes are graphically displayed, resulting in detailed images. For large designs, setting via shapes to on will increase the amount of time it takes to render a design.

Show Name Of, when Display Levels is set to show only instance outlines, sets whether the instance name (for example, I1) or the master cell name appears on each instance.

Array Display

Display Levels sets the first (From) and last (To) levels in the design hierarchy that can be seen in detail. The hierarchy levels are numbered 0 to 32. The top cellview is level 0, instances inside of it are level 1, and so forth.

Type controls the grid display.

Minor Spacing and Major Spacing set the number of user units between the visible grid. Minor grid points are white, major grid points are green by default.

X Snap Spacing and Y Snap Spacing set the distance at which the cursor can snap between grid points along the X axis and the Y axis. This is your drawing grid.

Filter determines how much detail of a design is displayed in the cellview. The filter can affect how fast the screen redraws. A smaller filter size allows more objects to display, which can cause the screen to redraw more slowly. A larger filter size allows fewer objects to display, which can cause the screen to redraw faster and can be useful when redrawing large, dense designs.

Snap Modes locks your cursor to the grid while drawing or editing.

Cellview specifies that you want to store, load, or delete the display settings to or from the cellview.

Library specifies that you want to store, load, or delete the display settings to or from the library of the edit cellview.

Tech Library specifies that you want to store, load, or delete the display settings to or from the technology library of the edit cellview.

File specifies the file to which you want to store or from which you want to load the settings.

Save To saves the current settings to either the cellview, library of the cellview, technology library of the cellview, or a specified file. If you are saving to a file, the settings from both the Layout Editor Options and Display Options forms are saved.

Load From sets the current settings to either the cellview, library of the cellview, the technology library of the cellview, or a specified file. If you saved to a file, the settings for both the Layout Editor Options and Display Options forms are loaded.

Delete From deletes the display settings that were saved to either the cellview, library of the cellview, or technology library of the cellview.



Setting Display Controls

In the Display Controls area of the form, you can choose what you want displayed.

.


Display Controls

Results

Nets

Axes

Set which objects appear in the cellview

Access Edges

Path Borders

Set which objects appear in the cellview

Instance Pins

Instance Origins

Set which objects appear in the cellview

Array Icons

EIP Surround

Set which objects appear in the cellview

Label Origins

Pin Names

Set which objects appear in the cellview

Dynamic Hilight

Dot Pins

Set which objects appear in the cellview

Net Expressions


Set which objects appear in the cellview

Stretch Handles


Set which objects appear in the cellview

Show Name of: instance, master


Show the instance or master cell names

Array Display


Display details or outlines of arrays

Display Levels


Displays a range of hierarchy levels




Setting Which Design Objects Appear

You can control the display of nets, edges, pins, array icons, label and instance origins, axes, path borders, pin names, EIP (edit-in-place) Surround, and Dynamic Hilight.

To control which design objects or attributes appear,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Click on any of the display controls.

  3. Click Apply to see the result of your changes.

  4. When you are satisfied with the settings, click OK.



Displaying Details or Outlines of Instances

You can control whether details inside of cell instances placed in a cellview appear.

To turn off instance detail, press Control-f in the design window. This sets the display stop level to 0.

To turn on instance detail, press Shift-f in the design window. This sets the display stop level to 32.



Displaying a Particular Hierarchy Level

To choose which level in the design hierarchy is displayed,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set the display levels.

    From shows the lowest level of hierarchy that appears. By default, the display begins at the current level, 0.

    To shows the highest level of hierarchy that appears. Cell instances inside this cellview are level 1, instances inside level 1 are level 2, and so on.

  1. Click OK.



Using the Set Area View Level Form

The Set Area View Level form lets you turn off detail in most areas of the cellview. This can speed screen redraw time when you are working on a complex design and want to see detail in only one portion of it.



About the Set Area View Level Form

To open the Set Area View Level form,

      Choose Window - Area Display - Set.

Display Levels specifies the first (From) and last (To) levels in the design hierarchy that can be seen in detail. The hierarchy levels are numbered 0 to 32. Shapes in the current cellview are at level 0, shapes in the masters of instances inside of it are level 1, and so forth.



Creating Detail Areas

To set the display detail for an area,

  1. Choose Window - Area Display - Set.

    The Set Area View Level form appears.

  2. Set the From and To display levels for the area.

    A larger value for To shows more detail.

  3. Create a box in the cellview around the area.

  1. Continue to set detail areas or click Cancel in the form to stop the Set command.



Removing Detail Areas

To remove one detail area at a time,

  1. Choose Window - Area Display - Delete.

  2. Click on the detail area you want to remove.

To remove all detail areas,

      Choose Window - Area Display - Delete All.


Displaying Instance or Master Cell Names

When you suppress cell instance detail (press Control-f), the Virtuoso Layout Editor displays one of the following for each instance:

To choose what name you want displayed,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set Show Name Of to instance or master.

  3. Click OK.



Displaying Details or Outlines of Arrays

You can adjust the display details of cell arrays.

To set the array detail,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set the Array Icons, Array Display, and Display Levels fields as desired.

  3. Click OK.

Possible Options and Results

Display Option

Results

Array Icons

When Array Icons is on and Display Levels is set to From 0 To 0, outlines of array elements appear with no detail.

Array Display

Array Display settings control the number of elements in the array that appear.

Display Levels

Display Levels controls the level of instance detail to display.


Array Samples

The following figures show sample settings for the display of arrays.




Setting the Visible Grid

By default, the cellview window shows a grid of dots. There are two different grids: the minor (small) grid and the major (large) grid.

To change the visible grid,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set the grid controls to the settings you want.

  3. Click OK.




Setting Filter Size and Style

You can control how much detail of a design is displayed in your cellview by adjusting the Filter Size and Style settings in the Display Options form. The filter can affect

A smaller filter size allows more objects to display, which can cause the screen to redraw more slowly. A larger filter size allows fewer objects to display, which can cause the screen to redraw faster and can be useful when redrawing large, dense designs. Instances smaller than filterSize pixels are not opened and read in. As you zoom in, the instances become bigger than filterSize, and more cells are read in.

You set Size to control the size of objects that are filtered out. When Size is set to 3.0, the default, objects smaller than 3 pixels do not display; objects larger than 3 pixels do display. See "Filter Settings Examples" for examples. You can toggle through filter sizes of 0.0, 3.0, 10.0, 25.0, and 50.0 by pressing F9. This overrides the filter size setting in the Display Options form.

You set Style to determine how the objects are displayed. If an object is less than or equal to the filter size, it appears as one of the following:

Objects larger than the filter size do not change in appearance.

To change the Filter settings,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set Size and Style to the settings you want.

    You have to press Control-r, to refresh your screen, to see the results of the new filter settings.

Filter Settings Examples




Setting the Snap Grid

The grid defines the points at which the cursor (the small square) snaps to the cellview or to objects. With the snap grid set to 0.5 microns, the cursor can snap to each visible grid point or halfway between each grid point.

For example, if your user units are microns, and you want to draw objects at 0.5 micron intervals, you set the spacing for the snap grid to 0.5 microns.

To set the grid, you set the X Snap Spacing (distance the cursor can move along the X axis) and the Y Snap Spacing (distance the cursor can move along the Y axis) fields. Setting X Snap Spacing and Y Snap Spacing to 0 produces the same result as turning the environment variable snapToGrid off.

Gravity has precedence over snap grid. Turn Gravity off while using snap grid.

Note:  The snap grid is not the same as the visible grid in the cellview.



Setting the Snap Grid Spacing

To set the snap grid spacing,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Type the smallest distance you want between the points you enter along the X axis (X Snap Spacing) and Y axis (Y Snap Spacing).

    The value you type is in user units (usually microns).

  3. Click OK.




Snapping the Cursor as You Edit



Snap Mode

The snap mode controls how the cursor locks to the grid as you create or edit objects.



Setting the Default Snap Modes

To set the default snap mode,

  1. Choose Options - Display.

    The Display Options form appears.

  2. Set the snap modes.

    • Create controls how segments snap as you create objects. This mode affects the Chop, Create Path, Create Pin, Create Polygon, Reshape, Ruler, Split, and Yank commands.

    • Edit controls how segments snap as you move or stretch objects. This mode affects the Copy, Move, and Stretch commands.

  3. Click OK.




Saving, Loading, and Deleting Display Settings

You can save, load, and delete the settings in the Display Options form to several locations. Saving the display settings lets people who work on the same design use the same display settings.

The display settings can be saved to the current cellview, library of the cellview, technology library of the cellview, or a specified file.

To save the display settings,

      Choose Save To and either Cellview, Library, Tech Library, or File.

To load the display settings, do one of the following,

To delete the display settings,

      Choose Delete From and either Cellview, Library, or Tech Library.



Using the Layout Editor Options Form

The Layout Editor Options form controls command defaults.



Editor Controls

Repeat Commands sets all commands to automatically repeat, if you first select the command and then the object to edit. Does not affect commands if you first select an object, then the command.

Display Reference Point displays an asterisk (Q) on the current reference point.

Auto Set Reference Point automatically sets a reference point whenever you enter a new point. You use reference points to measure the distance between points you enter.

Recursion Check turns recursion checking on. Recursion checking prevents the creation of recursive hierarchy (where a cell has an instance of itself at some level) by commands such as Create Instance, Make Cell, and Search/Replace.

Maintain Connections turns on an automatic reconnection mode for pins and paths that have been separated during any editing activity that moves pins.

Sticky Net sets any object to retain the object's connectivity unless the property lxStickyNet is set to nil or the object is deleted.

Abut Server turns unabutment on and off. When on, unabutment automatically restores abutted devices, when moved apart, to their original configuration before abutment, which ensures that dropped contacts are restored when chained devices are moved apart and eliminates errors such as devices with no diffusion overlap on one side. When off, unabutment retains the abutted device configuration even when the device is unabutted.

Conic Sides sets the number of segments to use when you convert conics to polygons. The maximum number of sides is 2,047.



Gravity Controls

Gravity On sets the drawing cursor to automatically snap to objects in the cellview.

Types controls the type of objects or part of an object to which the cursor snaps.

Aperture sets the snap distance between the cursor and an object. When the cursor reaches the distance specified, the cursor snaps to the object.

Depth sets how many levels down in the hierarchy shapes are checked for cursor snapping.

Bounce X and Bounce Y set the gravity offset in user units. Use this feature when you want the cursor to snap a fixed distance from objects. You can set a positive or negative bounce value. A positive bounce value makes the cursor snap the set distance outside the selected object. A negative bounce value makes the cursor snap the set distance inside the selected object.

File specifies the file you want to save to or load from.

Save To saves the current setting from the Layout Editor Options and Display Options forms to the file specified in the File field.

Load From sets the Layout Editor Options and Display Options forms settings to the values saved in the specified file.




Using Editor Controls

In the Editor Controls area of the form, you choose what options you want to set.

Editor Controls

Results

Repeat Commands

Turns the command repeat mode on or off.

Display Reference Point

Sets whether or not to display reference points.

Auto Set Reference Point

Sets whether or not to set reference points automatically.

Recursion Check

Turns recursion checking on or off.

Maintain Connections

Sets whether or not to reconnect paths to pins that are moved.

Conic Sides

Sets the number of conic sides.




Using Reference Points

Reference points help you measure the exact distance between objects or line segments as you enter points. Each point you click when creating objects; editing objects; or placing a contact, label, or cell instance becomes the reference point for the next point you enter.

To measure objects from the reference point, look at the coordinate readout at the top of the layout cellview.

dX and dY Display

Results

dX: 11.5

Shows the difference between the reference point coordinates and cursor location.

dY: 0.0

Dist: 11.50

The distance between the reference point and the cursor.




Displaying Reference Points

You can set the Virtuoso Layout Editor to display the reference point as a bold asterisk in your layout window.

To display a reference point,

  1. Choose Options - Layout Editor.

  2. The Layout Editor Options form appears. Set Display Reference Point on.

  3. Click OK.

    A bold asterisk (Q) appears on the reference point.



Setting the Reference Point Manually

You can set the reference point to a particular point without using menu commands.

To set a reference point manually,

  1. Press the Add (+) key on the keypad.

The cursor changes to an asterisk (Q).

  1. Click where you want to set the reference point.

    The point you clicked is the new reference point.



Setting a Stationary Reference Point

You can set the layout editor so that the reference point does not change. This way you can create or place several objects using a single reference point.

To set a stationary reference point,

  1. Set a reference point by entering it while creating objects, or by using the Add (+) key.

  2. Choose Options - Layout Editor.

    The Layout Editor Options form appears.

  3. Set Auto Set Reference Point off.

  4. Click OK.

    The reference point you entered in step 1 remains the reference point. It does not change when you enter new points.




Preserving Pin-Path Connections



Maintain Connections

To set the Virtuoso Layout Editor to automatically reconnect paths to pin connections that are broken during any pin editing activity, use the Maintain Connections option in the Layout Editor Options form.

Maintain Connections is a background process that monitors the connectivity of pins that abut or overlap path ends on the same layer. When any editing activity causes the pin to move away from the path end, Maintain Connections automatically modifies the path so that it remains connected to the pin.

Maintain Connections searches all instances in the top cellview to find all the pins, then finds all the overlapping paths associated with each pin to check for broken connections. If the top level design contains many instances and each instance contains many pins, opening a design can become more time consuming. When you open large designs, you should set Maintain Connections to off. See Setting Maintain Connections to Off.

Editing activities that can cause a pin to change location include

The Maintain Connections option operates on pins and paths with these characteristics:



Starting Maintain Connections

To start Maintain Connections,

      Do one of the following:


Setting Maintain Connections to Off

To set Maintain Connections to off,

      Do one of the following:


Using Maintain Connections

One way to see the effects of Maintain Connections is to change the parameters of an instance that contains pin-path connections on the same layer. After you change the parameters, the instance changes shape to the new value, and the path and pin retain their connectivity.

  1. Select a pcell containing pin-path connections.

  1. Choose Edit - Properties.

  2. Click on Parameter and change the size of the pcell.

  3. Click on Apply.

    The instance changes shape to the new width value, and the paths reconnect to the pins.



Limitations

Maintain Connections does not retain connectivity in the following relationships:

After a move with Maintain Connections:

Moving instance IB causes the whole ROD path to move. The aligned path does not stretch, so moving instance IB breaks the electrical connection between the two pins




Using the Gravity Controls

In the Gravity Controls form, you choose how you want gravity to operate.

Gravity Controls

Results

Gravity On

Turn gravity on or off.

Types

Set what points the cursor snaps to.

Aperture

Set the distance the cursor must be within before gravity snaps the cursor.

Depth

Set how far down in the hierarchy to look for objects to snap to.

Bounce X and Y

Set an offset distance for snapping.




Setting Gravity On and Off

You can use gravity to set the cursor (the small square) to snap to objects as you create them. This helps you create the edge of one object flush with another.

To set gravity on or off,

      Do one of the following:

The cursor does not snap to objects on layers set to be unselectable in the Layer Selection Window (LSW).



Setting the Gravity Distance (Aperture)

Aperture is a specific area around the cursor. When objects appear within that area, the cursor snaps to them if those objects are assigned as gravity types in the Types field of the Layout Editor form. By default, the cursor must be within 0.3 user units of an object before gravity snaps the cursor to the object. You can change this default.

To set the gravity distance,

  1. Choose Options - Layout Editor.

    The Layout Editor Options form appears.

  2. In the Aperture field, type a value.

    This is the distance at which you want the cursor to snap to objects. The value is in user units (usually microns).

  3. Click OK.



Snapping the Cursor to Specific Objects

You can set the cursor to snap to specific objects.

To snap the cursor to objects,

  1. Choose Options - Layout Editor.

    The Layout Editor Options form appears.

  2. In the Types section, turn on the types you want the cursor to snap to.

Pins snap to midpoints, except for rectangle pins. Rectangle pins snap to the center of the edge if Access Direction is on in the Create Pin form.

  1. Click OK.

Here is what happens when you create a path with gravity set to snap to path centerlines:

Note:  The cursor does not snap to an object if doing so conflicts with the snap mode that controls the shape of the object.



Gravity Types in Order of Precedence

The cursor snaps to objects that appear within the aperture in the following order of precedence, from highest to lowest:

These conditions affect gravity precedence:



Snapping the Cursor to Objects on Specific Layers

The cursor snaps only to objects on layers set to be selectable.

To toggle whether a layer is selectable or unselectable,

      Click right on that layer in the Layer Selection Window (LSW).

The names of any unselectable layers are shaded in the LSW.

Here is what happens when you set gravity to snap to path centerlines and set only the metal1 layer to be selectable.



Snapping the Cursor to Objects in Instances

You often create objects in the current cellview that align with objects in cell instances. To help you align what you create, you can set the cursor so it snaps to objects inside of instances.

To snap the cursor to objects in instances,

  1. Choose Options - Layout Editor.

    The Layout Editor Options form appears.

  2. In the Depth field, type a value.

    Type any integer from 1 to 32 to let the cursor snap to objects from 1 to 32 levels deeper in the design hierarchy.

  1. Click OK.



Setting a Snap Offset (Bounce)

Many times, you want to create objects that must be a certain distance from other objects. You can set an offset distance to make the cursor snap that distance away from other objects. You can set a positive or negative bounce value. A positive bounce value makes the cursor snap the set distance outside the selected object. A negative bounce value makes the cursor snap the set distance inside the selected object.

Note:  Bounce works only if the environment variable applyBounce is set to T. See the Environment Variable Table in the Appendix B of this manual for more information.

To set snap offset distance,

  1. Choose Options - Layout Editor.

    The Layout Editor Options form appears.

  2. In the Bounce fields, type an offset value.

  3. Click OK.


Return to top of page

View Library View Table Of Contents View Previous Chapter in Book View Next Chapter in Book Open PDF to print book Search Cadence Library Email Comments Help Using Documentation Shut Down Cadence Documentation Server


For support, see http://www.cadence.com/support or try Cadence's SourceLink service.

Copyright © 2003, Cadence Design Systems, Inc.
All rights reserved.
Legal notices and trademark attributions