- •Contents
- •Preface
- •Related Documents
- •Typographic and Syntax Conventions
- •Introduction to the Virtuoso XL Layout Editor
- •Editing Your Technology File for Virtuoso XL Layout Editor
- •Sample Technology File
- •Virtuoso XL Technology File Requirements
- •Layer Rules
- •Devices
- •Physical Rules
- •Virtuoso XL Rules (lxRules)
- •Compactor Rules
- •Preparing Your Connectivity Source for the Virtuoso XL Layout Editor
- •Placing Design Elements
- •Using Design Variables
- •Netlist Processor Expressions
- •Analog Expression Language Expressions
- •Simulation Design Variables
- •Using One-to-Many Mapping
- •Iterated Instances and Bus Pins
- •Multiplication Factor (mfactor)
- •Series-Connection Factor (sfactor)
- •One-to-Many Assignment with the Update Device Correspondence
- •Using Many-to-Many or Many-to-One Mapping
- •Modifying Many-to-Many or Many-to-One Mapping Between Components
- •Deleting Many-to-Many or Many-to-One Mapping Between Components
- •Using Virtuoso XL Properties
- •Using the lxUseCell Property to Specify Layout Devices to Use
- •Using the lvsIgnore Property to Exclude Schematic Symbols
- •Using the lxlgnoredParams Property to Exclude Device Properties
- •Using the lxRemoveDevice property to Ignore Parasitic Devices
- •Using the lxViewList and lxStopList Properties to Prepare Hierarchical Designs
- •Using the lxCombination Property to Build Complex Devices
- •Preparing Instances and Pins in Your Layout for the Virtuoso XL Layout Editor
- •Preparing Pins for the Virtuoso XL Layout Editor
- •Preparing Pins for Permutability
- •Search Order Variable
- •Syntax
- •Macros
- •Setting the permuteRule Property in the Symbol Master
- •Setting the permuteRule Property in the Device Master
- •Setting the permuteRule Property in the Symbol Instance
- •Setting the permuteRule Property in the Device Instance
- •Setting the permuteRule Property in the Component Description Format
- •Preparing Instances for Hierarchical Connectivity Checking
- •Setting Up Your Desktop
- •Customizing Your Desktop Layout
- •Using Multiple Cellviews
- •Printing to the Command Interpreter Window
- •Changing Display Colors
- •Using Bindkeys
- •Displaying Bindkeys
- •Loading Virtuoso XL Bindkeys
- •Setting Environment Variables
- •Information About Online Forms
- •Layout XL Options Form
- •Introduction to Abutment
- •Abutment Requirements
- •Setting Up Cells for Abutment
- •abutAccessDir
- •abutClass
- •Steps in Auto-Abutment
- •Sample Parameterized Cells Set Up for Abutment
- •Example 1
- •Example 2
- •Creating CMOS Pcells to Use with Abutment
- •autoAbutment Properties
- •The abutMosStretchMat Property
- •abutMosStretchMat Rules for MOS Abutment
- •Example Code Setting MOS Abutment Properties
- •Setting Environment Variables for Abutment
- •Move Together
- •Constraint Assisted
- •Using Device Abutment
- •Generating Your Layout with Virtuoso XL Layout Editor
- •Starting Virtuoso XL from the Schematic
- •Importing a Netlist for a Connectivity Reference
- •Starting Virtuoso XL from the Layout View
- •Connectivity Reference as a Netlist
- •Mapping File Structure
- •Working with Template Files
- •Saving Form Contents
- •Loading Template Files
- •Modifying Templates
- •Loading Template Files
- •Creating Template Files
- •Template File Syntax
- •General Syntax Rules
- •Boundaries Section
- •I/O Pins Section
- •Sample Template
- •Generating a Layout with Components Not Placed (Gen From Source)
- •Moving Components from the Schematic into the Layout (Pick from Schematic)
- •Placing a Group of Schematic Elements Together
- •Placing Individual Components
- •Generating Pins
- •Viewing Unplaced Instances/Pins
- •Viewing in Place
- •Manually Abutting Devices Using Pick from Schematic
- •Cloning Components
- •Cloning
- •Troubleshooting
- •Cloning Using Multiple Cellviews
- •Using Correspondence Points
- •Information About Online Forms
- •Add Correspondence Pairs Form
- •Cloning Form
- •Correspondence Pairs Form
- •Import XL Netlist Form
- •Layout Generation Options Form
- •Open File Form
- •Pick from Schematic Form
- •Remove Correspondence Components Form
- •Set Pin Label Text Style Form
- •Startup Option Form
- •Template File Form
- •Editing Your Layout with Virtuoso XL Layout Editor
- •Identifying Incomplete Nets
- •Moving Objects Manually in the Virtuoso XL Layout Editor
- •Moving Objects Using Move Options
- •Setting the Move Form to Appear Automatically
- •Aligning Objects
- •Post Selecting Devices
- •PreSelecting Devices
- •Swapping Components
- •Permuting Component Pins
- •Permuting Pins Manually
- •Checking Permutation Information
- •Using Device Locking
- •Using Automatic Spacing
- •Using Interactive Device Abutment
- •Setting Component Types
- •About Component Types
- •MOS Transistor Stacking and Folding Parameters
- •Modifying a Component Type
- •Using Transistor Chaining
- •Using Transistor Folding
- •Controlling the Folding Grid
- •Folding Transistors
- •Adding Instances to a Layout
- •Adding Pins to a Layout
- •Assigning Pins to a Net
- •Maintaining Connectivity When Editing a Flattened Pcell
- •Information About Online Forms
- •Assign Nets Form
- •Edit Component Types Form
- •Move Form
- •Set Transistor Folding Form
- •Show Incomplete Nets Form
- •Stretch Form
- •Virtuoso XL Alignment Form
- •Using the Virtuoso Custom Placer
- •Overview
- •Main Features
- •Place Menu Command Summary
- •Other Commands Used with the Virtuoso custom placer
- •Placement Styles
- •Setting Up the Virtuoso XL Layout Editor for Placement
- •Identifying the Placement Translation Rules
- •Setting Cadence Design Framework II Environment Variables
- •Setting Environment Variables for the Virtuoso Custom Router and Placer
- •Setting MOS Chaining and Folding Parameters
- •Abutting Standard Cells
- •Using Auto-Abutment During Placement
- •Placement Constraints
- •Constraint Manager Geometric Constraints
- •Pin Placement Constraints
- •Constraint Limitations
- •Placement Parameters and Component Types
- •MOS Transistor Chaining and Folding Parameters
- •Pin Placement
- •Assigning Pins to an Edge
- •Assigning Pins to a Fixed Position
- •Railing Pins
- •Loading the Template File
- •Assigning Spacing Between Pins
- •Saving Pin Placement to a Template File
- •Partitioning the Design
- •Creating a Partition
- •Loading the Template File
- •Saving Partitions to a Template File
- •Setting Placement Planning
- •Assisted CMOS Placement
- •Choose Component Types Form
- •Running the Virtuoso Custom Placer
- •Prerequisites to Placement
- •Running the Virtuoso Custom Placer: Initial Placement
- •Stopping the Placer
- •Running Load Balancing Service (LBS)
- •Troubleshooting Placement Results
- •Running the Virtuoso Custom Placer: Detailed Placement
- •Showing Congestions
- •Information About Forms
- •Auto Placer Form
- •Partitioning Form
- •Choose Component Types Form
- •Pin Placement Form
- •Load Template File Form
- •Placement Planning Form (Assisted CMOS)
- •Placement Planning Form (Assisted Standard Cell)
- •Placement Planning Form (Assisted Mixed CMOS/Standard-Cell)
- •Preparing Your Design for Routing in the Virtuoso XL Layout Editor
- •Understanding Connectivity
- •Pseudo-Parallel Connections
- •Selecting Layers
- •Changing Layers
- •Connecting Nets
- •Creating Paths
- •Connecting Nets with Path Stitching
- •Connecting Nets with Design Shapes
- •Checking Connectivity with Flight Lines
- •Checking Connectivity with Markers
- •Finding Markers
- •Explaining Markers
- •Deleting Single Markers
- •Deleting All Markers
- •Using the Virtuoso Compactor on a Routed Design
- •Overview
- •Main Features
- •Wire Editing Commands
- •Virtuoso Custom Router to Virtuoso XL Command Mapping
- •Prerequisites
- •Rule Information
- •Net Connectivity Information
- •Routing Area Boundary
- •Enabling Wire Editing
- •Toggling Between Virtuoso XL and Wire Editing Enabled
- •Loading ASCII Rules Files
- •The Wire Editing Environment
- •Status Banner
- •Preview Wires and Routing Aids
- •Mouse Button Behavior
- •Using Environment Variables
- •Routing Paths
- •Routing a Single Path
- •Routing Multiple Paths
- •Preventing and Checking Design Rule Violations
- •Interactive Checking
- •Same Net Checking
- •Checking Regions
- •Checking Route and Pin Violations
- •Routing Options and Styles
- •Matching Path Width and Pin Widths
- •Matching Path Width and Pin Widths for Multiple Paths
- •Gathering Bus Wires
- •Spacing for Gathered Bus Wires
- •Overriding Bus Spacing
- •Rotating the Bus Cursor
- •Cycling the Control Wire
- •Allowing Redundant Wiring
- •Allowing Orthogonal Jogs
- •Route To Cursor
- •Allow Floating Nets
- •Connecting Multiple Component Pins
- •Pushing Routes and Components
- •Routing Shielded Nets
- •Routing Tandem Layer Pairs
- •Using Vias
- •Changing Layers and Adding Vias
- •Using Vias Patterns on Multiple Paths
- •Legal Via Sites
- •Rotating Vias
- •Pseudo Vias
- •Editing Routed Connections
- •Stretching Paths and Vias
- •Splitting and Stretching Paths
- •Copying Routes
- •Using Critic Wire
- •Compacting Paths Using Pull
- •Displaying Reports
- •Displaying Routing Status Reports
- •Displaying Network Reports
- •Displaying Component Reports
- •Displaying Net Reports
- •Creating Rules Reports
- •Search Reports
- •Saving Reports
- •Setting Constraints
- •Using the Virtuoso Constraint Manager
- •Using .do Files
- •About the Forms
- •Add Via Form
- •Check Routes Form
- •Create Path Form
- •Find File Form
- •Layout
- •Reports Form
- •Route Options Form
- •Save As Form
- •Search Form
- •Split Form
- •Via Pattern Pop-up
- •Reports
- •Route Status Report Window
- •Network Report Window
- •Instance Report Window
- •Net Report Window
- •Rules Report Window
- •Setting Environment Variables
- •Troubleshooting
- •Finding Design Elements (Probing)
- •Probing Hierarchical Designs
- •Removing Probes
- •Exiting the Probe Command
- •Showing the Options Form
- •Checking Shorts and Opens
- •Comparing Design Elements and Parameters (Checking against the Connectivity Source)
- •Information About Online Forms
- •Probe Options Form
- •Updating Design Data in Virtuoso XL
- •Updating Layout Parameters
- •Updating Schematic Parameters
- •Updating Device Correspondence
- •Creating Device Correspondence
- •Needed Mode
- •Computer Aided Mode
- •Updating the Connectivity Reference
- •Changing the Device (Instance) View
- •Information About Online Forms
- •Change Instance View Form
- •Create Device Correspondence
- •Problems with the Interface
- •Invalid Markers from Previous Software Versions
- •Options Form Does Not Appear
- •Virtuoso XL Performance Is Slow
- •Problems with Editing
- •Components Move Slowly
- •Extra Probes Appear
- •Layout Generation Options Form Does Not Keep Values from the Last Entry
- •Parameters Not Updated
- •Schematic Not Editable
- •Warning to Update Your Design Appears at Startup
- •Problems with Connectivity
- •Connections Not Made
- •Incomplete Nets Command Does Not Recognize Connected Pins and Nets
- •Markers for Nonexistent Overlaps and Shorts Appear
- •Path Ends Not Accepted
- •Placement and Routing Do Not Run
- •Virtuoso XL Does Not Recognize Physical Vias
- •Moving Software Executables To a New Location
- •Environment Variables
- •Virtuoso XL Layout Editor
- •alignApplySeparation
- •alignApplySpacings
- •alignDirection
- •alignLayer
- •alignMethod
- •alignSelectionMode
- •alignSeparation
- •allowRotation
- •autoAbutment
- •autoArrange
- •autoPermutePins
- •autoSpace
- •checkTimeStamps
- •ciwWindow
- •compTypeRefLibs
- •constraintAssistedMode
- •createBoundaryLabel
- •crossSelect
- •extractEnable
- •extractStopLevel
- •globalPlacement
- •ignoredParams
- •ignoreNames
- •incNetCycleHilite
- •incNetHiliteLayer
- •infoWindow
- •initAspectRatio
- •initAspectRatioOption
- •initBoundaryLayer
- •initCreateBoundary
- •initCreateInstances
- •initCreateMTM
- •initCreatePins
- •initDoFolding
- •initDoStacking
- •initEstimateArea
- •initGlobalNetPins
- •initIOLabelType
- •initIOPinLayer
- •initIOPinName
- •initPinHeight
- •initPinMultiplicity
- •initPinWidth
- •initPrBoundaryH
- •initPrBoundaryW
- •initSymbolicPins
- •initUtilization
- •layoutWindow
- •lswWindow
- •lxAllowPseudoParallelNets
- •lxDeltaWidth
- •lxFingeringNames
- •lxGenerationOrientation
- •lxGenerationTopLevelOnly
- •lxInitResetSource
- •lxStackMinimalFolding
- •lxStackPartitionParameters
- •lxWidthTolerance
- •maintainConnections
- •mfactorNames
- •mfactorSplit
- •moveAsGroup
- •openWindow
- •optimizePlacement
- •paramTolerance
- •pathProbe
- •pathPurposeList
- •pathSwitchLayer
- •pathSwitchPurpose
- •preserveTerminalContacts
- •probeCycleHilite
- •probeDevice
- •probeHiliteLayer
- •probeInfoInCIW
- •probeNet
- •probePin
- •rowGroundLayer
- •rowGroundName
- •rowGroundWidth
- •rowPowerLayer
- •rowPowerName
- •rowPowerWidth
- •rowSupplyPosition
- •rowSupplySpacing
- •rowMOSSupplyPattern
- •rowSTDAllowFlip
- •rowSTDSupplyPattern
- •rulesFile
- •runTime
- •saveAs
- •saveAsCellName
- •saveAsLibName
- •saveAsViewName
- •schematicWindow
- •setPPConn
- •sfactorNames
- •sfactorParam
- •showIncNetEnable
- •stopList
- •templateFileName
- •traverseMixedHierarchies
- •updateReplacesMasters
- •updateWithMarkers
- •vcpConductorDepth
- •vcpKeepoutDepth
- •viewList
- •Wire Editor
- •allowFloatingNets
- •allowJogs
- •allowRedundantWiring
- •autoAdjustLength
- •autoShield
- •busOverride
- •busOverrideValue
- •busWireSpacing
- •busWireSpacingType
- •checkCornerCorner
- •checkCrosstalk
- •checkLength
- •checkLimitWay
- •checkMaxProcessWireWidth
- •checkMaxStackViaDepth
- •checkMaxTotalVia
- •checkMinMaskEdgeLength
- •checkMinProcessWireWidth
- •checkMiter
- •checkNetOrder
- •checkOffManGridPin
- •checkOffWireGridPin
- •checkPinSpacing
- •checkPolygonWire
- •checkProtected
- •checkReentrantPath
- •checkRegion
- •checkSameNet
- •checkSegment
- •checkStub
- •checkUseLayers
- •checkUseVias
- •checkWireExtension
- •doFile
- •enableBusRouting
- •enableTandemPair
- •gatherBusWires
- •inaccessiblePin
- •interactiveChecking
- •matchPinWidth
- •matchPinWidthValue
- •matchWireWidth
- •multiplePinsConnection
- •pinLargerMaxProcessWidth
- •pinSmallerMinProcessWidth
- •pushComponent
- •pushRouting
- •routeAsManyAsPossible
- •routeToCursor
- •routeToCursorStyle
- •sameNetChecking
- •showTimingMeter
- •showTimingOctagon
- •snapToPinOrigin
- •useDoFile
- •useRulesFile
- •viaAssistance
- •viaPattern
- •Private Environment Variables
- •Virtuoso XL Command Quick Reference
- •Using Spice and CDL For Netlist Driven Layout Generation
- •Introduction
- •Specifying Spice Designs
- •Cell Creation Rules
- •Character Considerations
- •Spice Statements
- •File Level Statements
- •Statements Allowed at File Level or within a Subckt Cell or a Top Level Cell
- •Statements Allowed within a Subckt Cell or a Top Level Cell
- •Spice Design Example
- •CDL Design Example
- •Parameter Resolution
- •Parameter Levels
- •Resolving Parameters
- •Putting the Rules Together (Examples)
- •Parameter Scaling
- •Complete ibuf Example Results
- •Virtuoso XL .do File Commands
- •Rule Hierarchy
- •circuit
- •Syntax
- •Example
- •Syntax
- •Example
- •limit
- •Syntax
- •Example
- •rule
- •Syntax
- •Example
- •Syntax
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
Connectivity Reference as a Netlist
The netlist syntax must comply with the guidelines defined in appendix B titledUsing Spice and CDL For Netlist Driven Layout Generation. If you do not follow these guidelines, then the layout may not reflect the full intent of the netlist.
The netlist can contain user defined properties and generic parameters that can be passed to the layout instance generated from Virtuoso XL. Any parameter of type String, Boolean, int, and float is supported.
If the connectivity reference is a netlist, choose Netlist.
The Define Connectivity Reference form changes to let you enter the Map File and the Top Cell of the netlist.
1.Type the name of a mapping file to import.
The mapping file lists model, cell (subcircuit), and instance properties and maps them to the names they have in the layout.
December 2002 |
143 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
You can also use the mapping file to map terminal names in the netlist (such as resistor terminal names Plus and Minus) to terminal names in the layout (such as resistor terminal names A and B), and parameter names in the netlist (such as the resistance value r) to parameter names in the layout (such as the resistance value R).
The Connectivity-Update-Source command loads the information in the mapping file into the cellview you specify on the form, overwriting any previously entered information. The mapping file structure, with an example, is shown in the next section.
You can click Browse to open the Library Browser to find a netlist and click on the netlist name to enter it in the Define Connectivity Reference form.
Mapping File Structure
The structure of the mapping file is as follows: the first section is the cell and model section which is mandatory(lxNetlistCellMap); the second section is optional and contains the instance mapping section (lxNetlistInstMap);
lxNetlistCellMap( (device_class
(device_type
(property) (property)
...
)
(property)
...
)
(property)
...
)lxNetlistInstMap( (device_hierarchical_name (property)
(property)
...
(property)
...
)
(device_hierarchical_name (property)
(property)
December 2002 |
144 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
...
(property)
...
)
)
where
■device_class is a string identifying a model or cell (subcircuit). If the device_type is specified, this parameter can be omitted. The format of thedevice_class is identical to the value field of the device“ _type”.
Note: device_class cannot be used anymore for all the model names of certain types (e.g. R for all resistors, M for MOS) because it is incompatible with the enhanced format.
■device_type identifies the model or cell (subcircuit) in the connectivity source hierarchy. It contains a keyword, a separator and value, for example, the name of the model or cell (subcircuit). The keyword is one of “MODEL”, “SUBCKT”, or “CELL”. The separator is the “=” character and the value is either a single string of characters (quoted or unquoted) that specify the model of subcircuit name for SPICE/CDL netlists or a quoted, space separated “lib cell” name when mapping composer schematic CELLS.
Note: When using the “device_class” field instead of the device_type, the field must always be quoted.
xNetlistCellMap(("nmos"
...
)
)
is equivalent to:
lxNetlistCellMap(
((MODEL=nmos
...
)
December 2002 |
145 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
...
)
)
For the following example:
lxNetlistCellMap("obsolete" ((CELL="mylib and"
...
)
(SUBCKT=AND2
...
)
)
)
the "obsolete" device_class is ignored.
■device_hierarchical_name is the hierarchical leaf instance name in forward slash (‘/’) separated name. For example, “/X1/X22/M3” is the name of the MOS transistor instantiated in the subcircuit X22, which is instantiated in subcircuit X1.
■property is a property. Properties can be defined in any number at any level inside the template, and inheritance rules apply to them. Therefore, properties defined at a high level apply globally to all devices defined at that level or lower, except where they are locally overwritten.
The following is the list of properties:
December 2002 |
146 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
useCell name definesname as the layout cell to be used to implement the device.
paramNameMap list defines a mapping table between the device parameters and the layout cell’s parameters. list is a list of pairs in the form device_param cell_param.
pinNameMap list defines a mapping table between the device pin names and the layout cell’s pin names. list is a list of pairs in the form device_pin cell_in.
paramSet list sets a list of parameters to the given values. The list contains elements of the type name type value, meaning that the value of name in the cell must be set to the value of the given type.
stopList list defineslist as the stop list.
ignoreNames list_of_names specifies instances to be ignored during layout generation. This property applies only at the top level of the design. If this property is used at lower levels, it still applies to only the top level and the software issues warnings to remind you of this.
ignoreCells list_of_names defines subcircuits whose instances are to be ignored during layout generation. This property applies only at the top level of the design. If it appears at a lower level, it still applies only to the top level and the software issues warnings to remind you of this.
ignoreParams list_of_params defines names of parameters to be ignored during layout generation. This property applies within the level it is defined in.
ignorePins list_of_pins defines names of pins to be ignored during layout generation. This property applies to all the instances within the level it is defined in
Note: The properties within a “model” block apply to that model only. The properties within a class apply to all the models in that section. The properties within the lxNetlistCellMap() block are global properties.
The order in which devices and properties are defined in the mapping file is irrelevant.
Example
lxNetlistCellMap(
("M"
(("MODEL" "=" "P") (useCell "pmos")
(paramNameMap ("WP" "w")("wp" "w")("LP" "l") ("lp" "l")) (paramSet ("l" "float" 1.1))
)
December 2002 |
147 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
((MODEL = Plow)
(useCell “pmos”)
)
(("MODEL" "=" "N") (useCell "nmos")
(paramNameMap ("WN" "w")("wn" "“w")("LN" "l")("ln" "l"))
)
(paramNameMap ("W" "w") ("L" "l") ("M" "m") ("C" "c") ("A" "a") ("P" "p") ("R" "r"))
(pinNameMap ("s" "S") ("g" "G") ("d" "D")("b" "B"))
(paramSet
("l" "float" 1.0) ("w" "float" 1.3)
("sourceContact?" "boolean" t) ("drainContact?" "boolean" t) ("showLabels?" "boolean" t)
)
(stopList "symbolic")
)
(stopList "layout compacted symbolic")
lxNetlistCellMap(
("M"
(("MODEL" "=" "P")
(useCell "pmos")
(paramNameMap ("WP" "w")("wp" "w")("LP" "l") ("lp" "l"))
(paramSet ("l" "float" 1.1))
)
(("MODEL" "=" "N")
(useCell "nmos")
(paramNameMap ("WN" "w")("wn" ""w")("LN" "l")("ln" "l"))
)
(paramNameMap ("W" "w") ("L" "l") ("M" "m")
("C" "c") ("A" "a") ("P" "p") ("R" "r"))
(pinNameMap ("s" "S") ("g" "G") ("d" "D")("b" "B"))
(paramSet
("l" "float" 1.0)
("w" "float" 1.3)
("sourceContact?" "boolean" t)
("drainContact?" "boolean" t)
("showLabels?" "boolean" t)
)
(stopList "symbolic")
)
(stopList "layout compacted symbolic")
December 2002 |
148 |
Product Version 5.0 |
Virtuoso XL Layout Editor User Guide
Generating Your Layout with Virtuoso XL Layout Editor
)
)
In this example, the device class “M” is ignored because 3 models are defined. The stop list
“layout compacted symbolic” applies to all devices except for the models “P” “Plow” and “N”, to which the stop list “symbolic” applies. Parameter 1 is set to 1.0 to both Plow and N models, except for the ones of model P, which is set to 1.1.
Defining the Design Boundary
When you initialize a layout, Virtuoso XL provides a design boundary.
To reset the default size for the design boundary, choose the layout window Design – Gen From Source command and set the options in the Boundary section of the Layout Generation Options form.
To stretch, move, or delete the design boundary, use the layout editor Edit commands. The design boundary must be a valid layer in the LSW and must be layer prBoundary or layer cellBoundary, or else it must have the purpose boundary (by).
To place all objects and pins inside the boundary, use the layout window Edit – Place from Schematic command.
To draw a new design boundary, follow these steps.
1.If you are using the Layout Generation Options form to generate a new layout, turn off
Boundary.
2.In the LSW, click on the prBoundary layer.
The boundary layer appears as the current layer at the top of the LSW. You can also use the layer cellBoundary from the Layout Generation Options form Boundary section Layer cyclic field.
3.From the layout window, choose Create – Rectangle or Create – Polygon.
4.Draw the design boundary in the layout window where you want it placed.
For a rectangular boundary, click to place one corner of the new boundary, drag the mouse to place the opposite corner, and release the mouse button.
For a polygonal boundary, use the cursor to click on the first point, each corner point, and end point (identical to the first point) of the polygon.
The new boundary appears in the layout window.
December 2002 |
149 |
Product Version 5.0 |