Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
layout editor.pdf
Скачиваний:
180
Добавлен:
05.06.2015
Размер:
3.04 Mб
Скачать

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

rule errors between each standard cell. The placer does not spend countless cycles on design rule checking between internal objects of one standard cell to another, just between the boundaries of adjacent standard cells. Using this method, the placer can use the boundary of each cell as the abutment edge for standard cells.

Note: Full design rule checking does occur between STDCELL component classes and all other devices.

The placer determines the cell boundary for each standard cell by the following precedence;

Layer purpose pair = prBoundary drawing

Layer purpose pair = prBoundary boundary

Layer purpose pair = instance drawing

If any of the above layer purpose pairs do not exist in the cell, a boundary is derived equal in size to all objects within the cell. Due to the nature of standard cell design and the desire to share/overlap objects between adjacent standard cells, defining a boundary is the preferred method to ensure proper cell abutment.

Using Auto-Abutment During Placement

Auto-abutment, if enabled in Virtuoso XL, is automatically performed during layout generation for assisted MOS. In order to use auto-abutment,

Your components (including your MOS device parameterized cells) need to be set up correctly with abutment properties

For an example of such a parameterized cell, see the spcnmos and spcpmos devices in the sample parameterized cells library. For more information, see the Sample Parameterized Cells Installation and Reference.

Auto-abutment needs to be enabled in the Layout XL Options form

For more information, refer to Chapter 6, “Setting Up Device Abutment.”

Placement Constraints

You can create geometric constraints using the Virtuoso® Constraint Manager or the constraint manager SKILL functions to constrain devices or pins. You can also create constraints through the Virtuoso XL Pin Placement form to constrain pins.

Geometric Constraints

December 2002

264

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

Geometric constraints are used to control the placement of objects. There are various types of geometric constraints that can be created through the constraint manager. For information about the types of constraints and how they are supported by Virtuoso XL and the placer, see “Constraint Manager Geometric Constraints” on page 265.

For more information about setting constraints through the constraint manager, refer to the Virtuoso Constraint Manager User Guide.

For more information about setting constraints using the constraint manager SKILL functions, refer to the Custom Layout SKILL Functions Reference Manager User.

Pin Placement Constraints

Creating pin constraints through the Pin Placement form lets you place different types of constraints on multiple pins at one time and automatically moves the pins to their assigned locations. Conversely, when creating pin constraints through the constraint manager, different types of pin constraints must be created separately and placement is not automatic.

For more information about pin constraints, see “Pin Placement Constraints” on page 270.

Some of the procedures in this chapter suggest that you set certain types of constraints at certain points in the design flow, but generally this is not a strict requirement. You can constrain any device in the layout at any time, except while the placer is running. For example, you can use the placer iteratively, setting increasingly strict constraints as you refine the placement.

Constraint Manager Geometric Constraints

You can create the following constraints in the constraint manager for placement: of objects

Distance

Alignment

Grouping

Symmetry

Fixed

December 2002

265

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

Caution

The Virtuoso custom placer does not recognize constraint weights for alignment, fixed, symmetry, and distance constraints. Only grouping constraint weights with a fence is recognized by the placer.

Distance Constraints

The placer will honor distance constraints between two devices. When using the nearest edge option two devices or more can be constrained. Devices can be constrained in the X or Y direction but not both. In addition the placer will align the devices in the orthogonal direction.The placer will interpret the distance constraint between a pair of objects.

Table 9-1 Distance Constraint Handling in Virtuoso XL and Virtuoso Custom Placer

Distance Constraint Option

Virtuoso XL

Virtuoso custom placer

 

 

 

Max X

Yes

Yes

Min X

Yes

Yes

Max Y

Yes

Yes

Min Y

Yes

Yes

Reference X

Yes

Yes

Reference Y

Yes

Yes

Support for more than two

Between any pair in the set

Two or more objects are

objects

 

supported for Nearest Edge

 

 

reference.

 

 

 

December 2002

266

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

Alignment Constraints

The placer supports all alignment references on any layer or the instance bounding box. The

first object is the alignment reference object and the rest of the objects are aligned to that reference. Relative orientation is also supported.

Table 9-2 Alignment Constraint Handling in Virtuoso XL and Virtuoso Custom Placer for two or more objects

Alignment Constraint

Virtuoso XL

Virtuoso custom placer

Option

 

 

 

 

 

Relative Orientation

Yes

Yes

Align

Yes

Yes

Reference Layer or Bounding

Yes

Yes

Box

 

 

Ordering

No

Yes

 

 

 

Grouping Constraints

Grouping constraint restricts a group of components to a rectilinear region (“fence”). A fence can optionally exclude all other, or specified, components.

The placer moves instances as necessary to implement confinement constraints even if they are not properly positioned in the preplaced view.

Table 9-3 Grouping Constraint Handling in Virtuoso XL and Virtuoso Custom Placer

Grouping Constraint

Virtuoso XL

Virtuoso custom placer

Option

 

 

 

 

 

Preserve Relative Position

Yes

Yes

Fence

Yes

Yes

Exclude

Yes

Yes

 

 

 

Note: A grouping constraint with a fence that has a weight of 255 is translated as a hard fence. Any other weight between 1 and 254 is translated as a soft fence.

December 2002

267

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

Firm Grouping Constraints

When creating constraints in the schematic view and you want to preserve the relative position of components in the layout view, you can use the Preserve Relative Position to create a firm grouping constraint (also called a firm group).

To create a firm group,

Use the constraint manager to create a grouping constraint and choose Preserve

Relative Position.

Soft Grouping Constraints

A soft grouping constraint keeps a group of components close together within the cell boundary, but it does not constrain the group.

The placer moves instances as necessary to implement soft group constraints even if they are not properly positioned in the preplaced view.

To create a soft grouping constraint,

Use the constraint manager to create a grouping constraint with the cell boundary as the fence.

Grouping constraints with Preserve

Relative Position

group

Grouping constraints with a

Fence

fence

December 2002

268

Product Version 5.0

Virtuoso XL Layout Editor User Guide

Using the Virtuoso Custom Placer

Symmetry Constraints

The placer implies an order between the pairs involved in the constraint. For example, if Q1 and Q2 are constrained along their horizontal line, then the constraint implies that Q1 is below the line and Q2 is above.

The placer has the ability of defining a line of symmetry, self-symmetries and for a given pair (pairwise symmetries). The symmetry axis can be floating as well as fixed.

Table 9-4 Symmetry Constraint Handling in Virtuoso XL and Virtuoso custom placer

Symmetry Constraint

Virtuoso XL

Virtuoso custom placer

Option

 

 

 

 

 

Floating line

No

Yes

Fixed line

Yes

Yes

Horizontal/vertical direction

Yes

Yes (see Note below)

Self-symmetry

Only on fixed axis

Yes, bounding box center

 

 

 

Note: The Virtuoso custom placer interprets a symmetry constraint on a pair of objects such that the first object must be placed below a horizontal line of symmetry or to the left of a vertical line of symmetry. The other object would be placed on the opposite side of the line of symmetry.

Fixed Constraints

You can define a fixed constraint with an allowable set of orientations on one or more named components to a required x, y location. The User Movable option in the Create Fixed Constraint form can affect the description of pin position constraints. Components can also be temporarily locked to a fixed location and orientation through theEdit – Other – Lock Selected command.

Table 9-5 Fixed Constraint Handling in Virtuoso XL and Virtuoso custom placer

Fixed Constraint Option

Virtuoso XL

Virtuoso custom placer

 

 

 

X

Yes

Yes

Y

Yes

Yes

Orientation

Yes

Yes

Reference

Yes

Yes

December 2002

269

Product Version 5.0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]