Product Documentation
Virtuoso Unified Custom Constraints Configuration Guide
Product Version IC23.1, September 2023

3


Editing Constraints Using External Editors

By default, constraints can be edited within the Constraint Manager assistant. However, for some specific types of constraints, you can also use an external constraint editor.

The external constraint editors available for use can be categorized as follows:

This chapter describes how to use such external constraint editors for editing constraints.

You can also configure using SKILL functions to use a preferred external constraint editor for editing a constraint template. See Configuring to Open Constraint Editor on Double-Click.

Using Cadence-Provided External Constraint Editors

To access an external constraint editor, select the appropriate editor from the Constraint Manager toolbar.

When you have an external constraint editor open for editing a constraint, constraint editing within the Constraint Manager is disabled until you close the external constraint editor. At this time, the external constraint editor directly interacts with the constraints database and the Constraint Manager assistant keeps updating itself using the constraints database observer mechanism.

For more information, see:

Using a Custom Constraint Editor

In addition to being able to use the Cell Planner and Module Generator for constraint editing, you can plug in the constraint editor application interface to other third party editors.

The custom constraint editor can be registered by loading a SKILL file (which must have an .il extension) into the application or by storing the file in a .cadence/dfII/ci/editors directory.

As the following example shows, the Module Generator is plugged-in to the Constraint Manager user interface:

ciRegisterConstraintEditor(
list(nil 'name "Module Generator"
'description "Modgen - Layout Structure Editor"
'constraintType "modgen"
'constraintParams list( "type=module")
'editorAvailableExpression "isCallable('mgCreateOrEdit)"
'startEditorExpression "mgCreateOrEdit(geGetEditCellView()
                        constraint nil)"
'iconName "nexGenEd"
'addToToolbar t
)
)

Where:

Configuring to Open Constraint Editor on Double-Click

By default, the defined constraint editor opens when you double-click a constraint of the type specified with the constraintType argument of the ciRegisterConstraintEditor SKILL function. However, to open a constraint editor when a template is double-clicked in the Constraint Browser, you need to configure that based on the settings you apply by using the ciRegisterConstraintEditor and ciRegisterConstraintGenerator SKILL functions. For detailed information, refer to the Defining the Interface for Editing a Template and its Parameters section in the Virtuoso Unified Custom Constraints User Guide.


Return to top
 ⠀
X