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

Constraint Manager User's Manual: Software Version X-ENTP VX.1.1

Software Version X-ENTP VX.1.1
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
451 views

Constraint Manager User's Manual: Software Version X-ENTP VX.1.1

Software Version X-ENTP VX.1.1
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 498

Constraint Manager User’s Manual

Software Version X-ENTP VX.1.1

© 2004-2015 Mentor Graphics Corporation


All rights reserved.

This document contains information that is proprietary to Mentor Graphics Corporation. The original recipient of this
document may duplicate this document in whole or in part for internal business purposes only, provided that this entire
notice appears in all copies. In duplicating any part of this document, the recipient agrees to make every reasonable
effort to prevent the unauthorized use and distribution of the proprietary information.
This document is for information and instruction purposes. Mentor Graphics reserves the right to make
changes in specifications and other information contained in this publication without prior notice, and the
reader should, in all cases, consult Mentor Graphics to determine whether any changes have been
made.

The terms and conditions governing the sale and licensing of Mentor Graphics products are set forth in
written agreements between Mentor Graphics and its customers. No representation or other affirmation
of fact contained in this publication shall be deemed to be a warranty or give rise to any liability of Mentor
Graphics whatsoever.

MENTOR GRAPHICS MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS MATERIAL
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE.

MENTOR GRAPHICS SHALL NOT BE LIABLE FOR ANY INCIDENTAL, INDIRECT, SPECIAL, OR
CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING BUT NOT LIMITED TO LOST PROFITS)
ARISING OUT OF OR RELATED TO THIS PUBLICATION OR THE INFORMATION CONTAINED IN IT,
EVEN IF MENTOR GRAPHICS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

U.S. GOVERNMENT LICENSE RIGHTS: The software and documentation were developed entirely at
private expense and are commercial computer software and commercial computer software
documentation within the meaning of the applicable acquisition regulations. Accordingly, pursuant to
FAR 48 CFR 12.212 and DFARS 48 CFR 227.7202, use, duplication and disclosure by or for the U.S.
Government or a U.S. Government subcontractor is subject solely to the terms and conditions set forth
in the license agreement provided with the software, except for provisions which are contrary to
applicable mandatory federal laws.

TRADEMARKS: The trademarks, logos and service marks ("Marks") used herein are the property of
Mentor Graphics Corporation or other parties. No one is permitted to use these Marks without the prior
written consent of Mentor Graphics or the owner of the Mark, as applicable. The use herein of a third-
party Mark is not an attempt to indicate Mentor Graphics as a source of a product, but is intended to
indicate a product from, or associated with, a particular third party. A current list of Mentor Graphics’
trademarks may be viewed at: www.mentor.com/trademarks.

The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of
Linus Torvalds, owner of the mark on a world-wide basis.

Mentor Graphics Corporation


8005 S.W. Boeckman Road, Wilsonville, Oregon 97070-7777
Telephone: 503.685.7000
Toll-Free Telephone: 800.592.2210
Website: www.mentor.com
SupportNet: supportnet.mentor.com/

Send Feedback on Documentation: supportnet.mentor.com/doc_feedback_form


Table of Contents

Chapter 1
Quick References and Work Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Quick Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Quick Reference - Constraint Manager Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Quick Reference - Constraint Manager GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
File Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Edit Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
View Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Setup Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Filters Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Tools Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Data Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Output Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Quick Reference - Constraint Manager Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Trace and Via Properties Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Clearances Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Z-Axis Clearances Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Nets Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Parts Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Noise Rules Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Constraint Manager Work Flows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Schematic-Design Work Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
PCB-Layout Work Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Chapter 2
Overview and Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Constraint-Driven Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Before You Begin Using Constraint Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Xpedition Enterprise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Keyin Netlist-xPCB Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Differential Pairs Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
xPCB Static Team Layout and xPCB Team Layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Overview of Electrical Nets and Physical Nets in Constraint Manager . . . . . . . . . . . . . . . 61
Automatically Recognized Topologies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Electrical Nets Defined Through a Package With More Than Two Pins . . . . . . . . . . . . . . 62
Importing a Layout Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Importing a 2005.x Ces.prefs File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Starting and Exiting From Constraint Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Starting Constraint Manager in Standalone Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Viewing Constraint Database Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Folder Structure and Location of Constraint Manager Log Files . . . . . . . . . . . . . . . . . . . . . 65
Cross Probing Between Design Systems and Constraint Manager . . . . . . . . . . . . . . . . . . . . 66

Constraint Manager Users Manual, X-ENTP VX.1.1 3


Table of Contents

Constraint Manager Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68


Specifying Design Configuration Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Specifying Electrical Net Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Specifying Discrete Component Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Using a Configuration File to Specify Design Preferences . . . . . . . . . . . . . . . . . . . . . . . . 71
Setting Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Setting General Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Setting Fonts and Colors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Setting Spreadsheet Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Setting Unit Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Specifying Other Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Reusing Settings in External Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Display Customization of Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Toggling the Display of Windows and Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Changing the Position of Windows and Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Folder Location of the ces.ini Configuration File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Toolbar Customization of Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Modifying Toolbars to Create Custom Sets of Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Modifying Individual Toolbar Buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Creating New Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Resetting a Toolbar to the Default Grouping of Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Constraint Set Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Creating or Modifying Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Deleting User-Created Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Constraint Set Propagation to a Team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Associating user.cns Files With a Mentor Graphics Software Release . . . . . . . . . . . . . . . 95
Adding Custom Menu Selections to the Tools Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Customizing Command Shortcut Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Default Keyboard Shortcuts Provided With Constraint Manager . . . . . . . . . . . . . . . . . . . . . 98
Selecting or Creating Valor NPI Design Centers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Sharing Valor NPI Design Centers Among Team Members. . . . . . . . . . . . . . . . . . . . . . . . . 100

Chapter 3
Constraint Spreadsheet Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Constraint Definition Through Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Overview of Constraint Hierarchy and Overrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Choosing From Among Change Impact Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Required Propagation Rules That Constraint Manager Maintains . . . . . . . . . . . . . . . . . . . 108
Organization of Constraints Into Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Spreadsheet Page Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Spreadsheet Icons Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Resizing Spreadsheet Columns and Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Zooming the Display of Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Expanding and Collapsing Spreadsheet Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Sorting Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Deletion of Constraint Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Constraint Value Copy-and-Paste Between Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Searching for Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

4 Constraint Manager Users Manual, X-ENTP VX.1.1


Table of Contents

Filtering Spreadsheet Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120


Filtering the Spreadsheet by Row Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Resetting a Spreadsheet to its Default View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Constraint Group Creation and Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Creating Constraint Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Modifying a Constraint Group From Directly Within the Spreadsheet . . . . . . . . . . . . . . . 126
Modifying a Constraint Group From Within the Constraint Groups Dialog Box . . . . . . . 127
Deleting One or More Constraint Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Restoring the Content of a Default Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Concurrent Constraint Entry With Other Users. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Overview of Constraint Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Showing Indication of Remotely Changed Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Constraint Value Commenting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Adding Comments to Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Editing Constraint Comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Deleting Constraint Comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Viewing Constraint Comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Viewing Constraint Reference Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Viewing Design Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Checking Constraints Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Constraint Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Checking Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Correcting Constraint Manager Diagnostics Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Listing of Constraint Manager Diagnostics Tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
PCB Actuals Comparison With Constraint Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Validating PCB Actuals Against Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Updating Actuals Displayed in Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Clearing Actuals From the Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Highlighting Constraint Differences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Sharing PCB Actuals With Front-End Constraint Manager Sessions . . . . . . . . . . . . . . . . 145
Viewing All Constraint Violations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Constraint Violation Revision Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Update of Electrical Net Data and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Painting Rules to Reuse Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Constraint Change Undo and Redo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Rolling Back and Undoing All Constraint Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Rolling Back or Redoing Specific Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Supported Undo/Redo Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Viewing and Reverting to Parent Cell Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Saving Constraint Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Chapter 4
Constraint Class Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Creating Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Creating Constraint Class Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Adding Nets to a Constraint Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Defining Bus Constraint Classes Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Types of Net Matching for Bus Constraint Classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

Constraint Manager Users Manual, X-ENTP VX.1.1 5


Table of Contents

Creating a Constraint Class From an Existing Constraint Class . . . . . . . . . . . . . . . . . . . . . . 162


Deleting Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

Chapter 5
Net Class Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Creating Net Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Adding Nets to a Net Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Creating a Net Class From an Existing Net Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Deleting Net Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Chapter 6
Physical Rule Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Specifying General Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Rule-Area Scheme Creation and Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Creating Rule Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Copying Rule-Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Renaming Rule-Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Deleting Rule-Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Resetting Clearance Rules to the Master Scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
(Minimum) Scheme Clearances and Widths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Specifying Trace and Via Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Trace Width Rule Propagation Through Layers for Hierarchical Net Classes . . . . . . . . . . . 179
Defining Via Assignments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Clearance Rule Set Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Creating Clearance Rule Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Defining Clearance Rules for a Rule Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Creating Z-Axis Clearance Rule Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Defining Z-Axis Clearance Rules for a Rule Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
Defining Embedded Resistor Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Defining SMD Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Clearance Rule Set Assignment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Assigning Class-To-Class Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Deleting Class-To-Class Clearance Rule Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Assigning Z-Axis Class-To-Class Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Deleting Z-Axis Class-To-Class Clearance Rule Assignments . . . . . . . . . . . . . . . . . . . . . 196
Package Clearance Rule Assignment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
Assigning Package Clearance Type Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
Deleting Package Clearance Type Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Assigning Package-Type-to-Package-Type Clearance Rules. . . . . . . . . . . . . . . . . . . . . . . 198
Deleting Package-Type-to-Package-Type Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Package Side and End Determination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
3D Clearance Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Defining 3D Clearances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
3D Clearance Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

Chapter 7
Net Constraint Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Specifying General Net Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

6 Constraint Manager Users Manual, X-ENTP VX.1.1


Table of Contents

Topology Specification for Nets and Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 210


Topology Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Specifying Topology Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Manually Defining Netline Ordering (From-Tos) for a Specific Net. . . . . . . . . . . . . . . . . 213
Changing Topology Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Overriding Trace Width Constraints for From-Tos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Advanced Topology Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Net Pin Pair Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Internal Component-Pin Delay Inclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Creating All Pin Pairs Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Creating Only Source-Load Pin Pairs Automatically. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Creating Pin Pairs Semi-Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Creating Pin Pairs Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Deleting One or More Pin Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Defining Discrete Component Pin Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Length and Delay Rule Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Specifying Length or Delay Rules for Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Net Length and Delay Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Tolerance Routing of Nets Within a Constraint Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Specifying Maximum Length as a Percentage Above Manhattan Length . . . . . . . . . . . . . 230
Matching Delay or Length Rules Among Nets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Matching Length or Delay Tolerance at the Constraint Class Level . . . . . . . . . . . . . . . . . 233
Formula Creation and Error Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Defining Formulas to Create Net Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Including Formula Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Tolerance Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Multiple Formula Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Solving Formulas to Check for Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Complex Formula Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Constant and Variable Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Creating Constants and Variables for Delay Rules and Formulas . . . . . . . . . . . . . . . . . . . 242
Deleting Specific Constants or Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Finding Variable References. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Simulated Delay Specification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Specifying Simulated Delay Rules for Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Signal Edge Rates and Crosstalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Matching Simulated Delay Rules Among Nets or Constraint Classes . . . . . . . . . . . . . . . . 246
Defining Overshoot and Ringback Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Power-Supply Net and Constraint Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Net Names Constraint Manager Automatically Recognizes as Power-Supply Nets . . . . . 251
Specifying Power-Supply Nets Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Specifying Power-Supply Nets Manually. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Defining Constraints for Power-Supply Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Changing Power-Supply Nets Back Into Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Modifying xDX I/O Designer FPGA Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Defining Constraints for Single-Pin Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

Constraint Manager Users Manual, X-ENTP VX.1.1 7


Table of Contents

Chapter 8
Parallelism and Crosstalk Rule Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Overview of Parallelism and Crosstalk Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Defining Parallelism Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Assigning Parallelism Rules to Nets and Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . 264
Navigating to Assigned Parallelism Rules From the Nets Page . . . . . . . . . . . . . . . . . . . . . . 267
Defining Crosstalk Rules for Nets and Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . 267

Chapter 9
Differential Pair Creation and Pair Rule Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Defining Differential Pairs Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Defining Differential Pairs Automatically. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Assigning Rules to Differential Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
IBIS Model [Diff_Pin] Section Declarations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278

Chapter 10
Constraint Template Creation and Reuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Creating Constraint Templates to Capture Net Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . 279
Constraints and Values Stored With Each Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Constraint Template Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Guidelines for Applying Constraint Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Applying a Constraint Template to Multiple Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Applying Constraint Templates From the Constraint Templates Page . . . . . . . . . . . . . . . 284
Applying a Constraint Template to a Single Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Device Pattern Matching With Constraint Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Modifying Pin Matching for an Applied Constraint Template. . . . . . . . . . . . . . . . . . . . . . 286
Updating Nets With Constraint Template Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Reusing Constraint Templates in External Designs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

Chapter 11
Constraints Export and Import. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Export of Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Exporting Constraints in Encrypted XML Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Exporting Constraints in Encrypted CSV Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Exporting Constraints in Encrypted ASCII Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Decrypting and Encrypting Exported Constraint Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Import of Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Importing Constraints in Encrypted XML Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Importing Constraints in Encrypted CSV Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
ECSV Importer Error and Warning Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
CSV Format Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

Chapter 12
Stackup Display and Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Viewing or Modifying Stackup Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Layer Name Correlation Among Design Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Stackup Editing Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

8 Constraint Manager Users Manual, X-ENTP VX.1.1


Table of Contents

Chapter 13
Part-Model Assignment Verification and Part Constraints Definition . . . . . . . . . . . . . . . 315
Automatic Assignment of IBIS Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
IBIS Models or Technology Models? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
IBIS Models Delivered With Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Part Model Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Specifying Model Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Specifying Individual Model Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Reloading Model Directories and Individual Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Verifying Default Model Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Assigning Models to Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Editing Model Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Updating Part Model Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Overriding IBIS Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Defining Thermal Constraints for Parts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Importing Pin Package Length Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
PinPkgLengths.txt File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

Chapter 14
Signal Integrity Exploration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Sending Nets to HyperLynx LineSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Exporting Constraint Enhancements From HyperLynx LineSim . . . . . . . . . . . . . . . . . . . . . 328
Updating Constraint Manager With Constraint Enhancements. . . . . . . . . . . . . . . . . . . . . . . 329

Chapter 15
Design Tool Update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Constraint and Design Change Management Between Tools . . . . . . . . . . . . . . . . . . . . . . . . 331
Synchronization of Constraint Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Sending Schematic Data to Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Sending Layout Data to Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Schematic Constraints Conflict Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Resolving Schematic Constraint Conflicts Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Viewing Constraint Resolution Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

Appendix A
Constraint Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Constraint Reference Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Trace and Via Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Via Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Trace Width Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Trace Width Typical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Trace Width Expansion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Typical Impedance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Differential Typical Impedance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Differential Spacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351

Constraint Manager Users Manual, X-ENTP VX.1.1 9


Table of Contents

Clearances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Trace To Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Trace To Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Trace To Via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
Trace To Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Trace To SMD Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Pad To Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
Pad To Via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Pad To Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Via To Via. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Via To Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Via To SMD Pad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Plane To Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
Embedded Resistor To Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Embedded Resistor To Pad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Embedded Resistor To Via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Embedded Resistor To Resistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
EP Mask To Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
EP Mask To Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
EP Mask To Via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
EP Mask To Resistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
Z-Axis Clearances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
Trace To Trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Trace To Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
Trace To Via . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Trace To Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
Trace To SMD Pad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Hierarchical Path. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
# Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Power Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Analog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Net Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Template Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Template Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Topology Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Topology Ordered. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
Stub Length Max. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
# Vias Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Max Restricted Layer Length External. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Max Restricted Layer Length Internal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
From To Constraints Layer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
From To Constraints Trace Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
From To Constraints Z0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Length or TOF Delay Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401

10 Constraint Manager Users Manual, X-ENTP VX.1.1


Table of Contents

Length or TOF Delay Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402


Length or TOF Delay Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Length or TOF Delay Manhattan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Length or TOF Delay Min Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Length or TOF Delay Match. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Length or TOF Delay Tol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Length or TOF Delay Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Length or TOF Delay Range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Formulas Formula. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Formulas Violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Static Low Overshoot Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
Static High Overshoot Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Dynamic Low Overshoot Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Dynamic High Overshoot Max. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Ringback Margin High Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
Ringback Margin Low Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Non-Monotonic Edge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Single Ended Characteristic Impedance Value. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
Single Ended Characteristic Impedance Tol. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
Simulated Delay Edge. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
Simulated Delay Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
Simulated Delay Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Simulated Delay Max Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
Simulated Delay Match To . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Simulated Delay Match. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Simulated Delay Offset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Simulated Delay Tol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
Differential Pair Tol Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Differential Pair Phase Tol Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
Differential Pair Phase Tol Distance Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
Differential Pair Phase Tol Actual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
Convergence Tolerance Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
Distance to Convergence Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Separation Distance Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
Differential Spacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Differential Impedance Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
Differential Impedance Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
I/O Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Power Net Constraints Supply Voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Power Net Constraints Max Voltage Drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
Power Net Constraints Max Current Density . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
Power Net Constraints Max Via Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
Hierarchical Path. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
Part Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Qty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Part Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
Series. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
IBIS Component Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458

Constraint Manager Users Manual, X-ENTP VX.1.1 11


Table of Contents

Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
IBIS Pin Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
Schematic Pin Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
Topology Pin Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Pin Package Length. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Pin Package Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Thermal Power Dissipation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Thermal Power Scaling Factor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
Thermal Theta-jc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
Thermal Casing Temperature Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
Thermal Junction Temperature Limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
I/O Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Noise Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Noise Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Constraint Class or Electrical Net Name Victim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
Constraint Class or Electrical Net Name Aggressor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
Parallelism Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
Crosstalk Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Crosstalk Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478

Appendix B
Command-Line Tools Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
cons2ascii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
cons2csv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
cons2xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
csv2dat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
ImportPinPackageLengths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
ImportStk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
Index
End-User License Agreement

12 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 1
Quick References and Work Flows

Welcome to Constraint Manager User’s Manual. This section includes quick references and
work flows that help you learn to use Constraint Manager in a minimal amount of time.
Quick Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Quick Reference - Constraint Manager Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Quick Reference - Constraint Manager GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Quick Reference - Constraint Manager Spreadsheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Constraint Manager Work Flows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Constraint Manager Users Manual, X-ENTP VX.1.1 13


Quick References and Work Flows
Quick Help

Quick Help
Click within the illustration for single-click access to a wide variety of topics covered in this
manual.

Figure 1-1. Constraint Manager Quick Help

Related Topics
• Quick References and Work Flows

14 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Quick Reference - Constraint Manager


Commands
Use this reference to quickly find specific Constraint Manager commands. They are organized
alphabetically by design object and then action/task. You can also print this quick reference to
keep it close by while you use the tool.
Click within the Topic column to jump to the corresponding topic for one of the following
commands. If viewing this documentation from your web browser, click here to open this quick
reference in a standalone browser window.

Table 1-1. Constraint Manager Commands


Design Action Command Topic
Object
3D Define Edit > Clearances > 3D “Defining 3D
clearances Clearances Clearances” on
page 204
Bus Define (auto) Constraint Manager Spreadsheet “Defining Bus
constraint > Nets tab > Edit menu > Auto Constraint Classes
class Bus Automatically” on
page 159
Clearance Assign Constraint Manager Spreadsheet “Assigning Class-To-
rule set > Clearances tab > Clearances Class Clearance
toolbar > Rules” on page 191
Clearance Create Navigator > expand Schemes > “Creating Clearance
rule set right-click a scheme > New Rule Sets” on
Clearance Rule page 183
Constant Create Constraint Manager Spreadsheet “Creating Constants
> Nets tab > Edit menu > and Variables for
Variables > Edit Delay Rules and
Formulas” on
page 242
Constraint Export File > Export > Constraints “Exporting
Constraints in
Encrypted ASCII
Format” on page 294
Constraint Import File > Import > Constraints “Import of
Constraints” on
page 295
Constraint Rollback File > Rollback Changes “Rolling Back and
Undoing All
Constraint Changes”
on page 149

Constraint Manager Users Manual, X-ENTP VX.1.1 15


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Table 1-1. Constraint Manager Commands (cont.)


Design Action Command Topic
Object
Constraint Search Find toolbar > “Searching for
Constraints” on
page 119
Constraint View Info Constraint Manager Spreadsheet “Viewing Constraint
> right-click a constraint cell > Reference
Constraint Help Information” on
page 135
Constraint Add nets Constraint Manager Spreadsheet “Adding Nets to a
class > Nets tab > Edit menu > Assign Constraint Class” on
Nets to Classes page 158
Constraint Copy Navigator > expand Constraint “Creating a
class constraints Classes > right-click a constraint Constraint Class
class > Clone From an Existing
Constraint Class” on
page 162
Constraint Create Navigator > right-click Constraint “Creating Constraint
class Classes > New Constraint Class Classes” on page 155
Constraint Rename Navigator > expand Constraint “Creating Constraint
class Classes > right-click a constraint Classes” on page 155
class > Rename
Constraint Create Constraint Manager Spreadsheet “Creating Constraint
group > Nets, Parts, or Constraint Groups” on page 124
Templates tab> Filters - Groups
toolbar dropdown > Edit
Constraint Groups >
Constraint Apply Constraint Manager Spreadsheet “Constraint Template
template > Nets tab > Edit menu > Apply Application” on
Constraint Template page 282
Constraint Create Constraint Manager Spreadsheet “Creating Constraint
template > Nets tab > right-click an Templates to Capture
electrical net ( ) > Create Net Constraints” on
Constraint Template page 279
Constraint Reuse File > Export > Constraints “Reusing Constraint
template (external) Templates in External
Designs” on page 288
Default rules Revert Navigator > expand Schemes > “Resetting Clearance
right-click a scheme > Reset to Rules to the Master
(Master) Scheme” on page 175

16 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Table 1-1. Constraint Manager Commands (cont.)


Design Action Command Topic
Object
Design Set up Edit > Design Preferences “Specifying Design
configuratio Configuration
n Preferences” on
page 68
Differential Create (auto) Constraint Manager Spreadsheet “Defining Differential
pair > Nets tab > Pairs toolbar > Pairs Automatically”
on page 272
Differential Create Constraint Manager Spreadsheet “Defining Differential
pair (manual) > Nets tab > select two nets > Pairs Manually” on
Pairs toolbar > page 271
Differential Specify Constraint Manager Spreadsheet “Specifying Length or
pair length or > Nets tab > Filters - Groups Delay Rules for Nets”
delay rules toolbar dropdown > Delays and on page 227
Lengths
Discrete pin Define Constraint Manager Spreadsheet “Defining Discrete
pair > Parts tab > right-click a top- Component Pin Pairs”
level discrete > Create on page 224
Component Pin Pairs
Formula Define Constraint Manager Spreadsheet “Defining Formulas
> Nets tab > design object row > to Create Net
Formulas Formula cell Relationships” on
page 237
Formula Solve Constraint Manager Spreadsheet “Solving Formulas to
> Nets tab > Pairs toolbar > Check for Errors” on
page 239
From-to Define Constraint Manager Spreadsheet “Manually Defining
> Nets tab > set Topology Type to Netline Ordering
Custom > Topology toolbar > (From-Tos) for a
Specific Net” on
page 213
General Specify Constraint Manager Spreadsheet “Specifying General
clearance > Clearances tab > Clearances Clearance Rules” on
rules toolbar > page 171
Net Explore SI Constraint Manager Spreadsheet “Sending Nets to
> Nets tab > right-click an HyperLynx LineSim”
electrical net ( ) > Display Net in on page 327
> HyperLynx LineSim

Constraint Manager Users Manual, X-ENTP VX.1.1 17


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Table 1-1. Constraint Manager Commands (cont.)


Design Action Command Topic
Object
Net Specify Constraint Manager Spreadsheet “Specifying Length or
length or > Nets tab > Filters - Groups Delay Rules for Nets”
delay rules toolbar dropdown > Delays and on page 227
Lengths
Net class Add Nets Constraint Manager Spreadsheet “Adding Nets to a Net
> Trace & Via Properties tab > Class” on page 167
Edit menu > Assign Nets to
Classes
Net class Copy Navigator > expand Net Classes > “Creating a Net Class
constraints right-click a net class > Clone From an Existing Net
Class” on page 169
Net class Create Navigator > right-click Net “Creating Net
Classes > New Net Class Classes” on page 165
Net class Rename Navigator > expand Net Classes > “Creating Net
right-click a net class > Rename Classes” on page 165
Package Assign Constraint Manager Spreadsheet “Assigning Package-
clearance > Clearances tab > Clearances Type-to-Package-
type rules toolbar > Type Clearance
Rules” on page 198
Parallelism Assign Constraint Manager Spreadsheet “Assigning
rules > Noise Rules tab > Pairs toolbar Parallelism Rules to
> Nets and Constraint
Classes” on page 264
Parallelism Define Edit > Parallelism Rules > Define “Defining Parallelism
rules Parallelism Rules Rules” on page 262
Parallelism Navigate Constraint Manager Spreadsheet “Navigating to
rules > Nets tab > right-click a net or Assigned Parallelism
constraint class > Navigate to Rules From the Nets
Parallelism Rule Page” on page 267
Part model Assign Constraint Manager Spreadsheet “Assigning Models to
> Parts tab > IBIS Component Parts” on page 321
Name and Technology cells >
Part model Verify Data > Model Audit Report “Verifying Default
Assignments Model Assignments”
on page 320
Pin package Import File > Import > Pin Package “Importing Pin
lengths Lengths Package Length
Values” on page 324

18 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Table 1-1. Constraint Manager Commands (cont.)


Design Action Command Topic
Object
Pin pair Create (auto) Constraint Manager Spreadsheet “Creating All Pin
> Nets tab > Pairs toolbar > Pairs Automatically”
on page 221
Pin pair Create Constraint Manager Spreadsheet “Creating Pin Pairs
(manual) > Nets tab > net row > Edit menu Semi-Automatically”
> Pin Pairs > Add Pin Pairs on page 222
Pin pair Specify Constraint Manager Spreadsheet “Specifying Length or
length or > Nets tab > Filters - Groups Delay Rules for Nets”
delay rules toolbar dropdown > Delays and on page 227
Lengths
Pin set Create Constraint Manager Spreadsheet “Creating Pin Sets to
> Nets tab > net row > Topology Construct Advanced
toolbar > > > , , , , Topologies” on
or > select pins > Finish page 216
Rule-area Create Navigator > right-click Schemes “Creating Rule Area
scheme > New Scheme Schemes” on
page 173
Stackup Edit General toolbar > “Viewing or
Modifying Stackup
Properties” on
page 311
Topology Specify Constraint Manager Spreadsheet “Topology
(custom) > Nets tab > net row > Topology Specification for Nets
toolbar > > and Constraint
Classes” on page 210
Topology Specify (pre- Constraint Manager Spreadsheet “Topology
defined) > Nets tab > net row > Topology Specification for Nets
toolbar > , , , , or and Constraint
Classes” on page 210
Trace & via Override Constraint Manager Spreadsheet “Overriding Trace
rules widths > Nets tab > From To Constraints Width Constraints for
(from-to) Trace Width cell From-Tos” on
page 215
Trace & via Specify Constraint Manager Spreadsheet “Specifying Trace
rules > Trace & Via Properties tab > and Via Rules” on
expand a scheme page 177
Units Set Setup > Settings > Display Units “Setting Spreadsheet
and Notation Units” on page 75

Constraint Manager Users Manual, X-ENTP VX.1.1 19


Quick References and Work Flows
Quick Reference - Constraint Manager Commands

Table 1-1. Constraint Manager Commands (cont.)


Design Action Command Topic
Object
Variables Create Constraint Manager Spreadsheet “Creating Constants
> Nets tab > Edit menu > and Variables for
Variables > Edit Delay Rules and
Formulas” on
page 242
Variables Find Constraint Manager Spreadsheet “Finding Variable
references > Nets tab > Edit menu > References” on
Variables > Find Variables page 244
Reference
Z-axis Assign Constraint Manager Spreadsheet “Assigning Z-Axis
clearance > Z-Axis Clearances tab > Class-To-Class
rule set Clearances toolbar > Clearance Rules” on
page 194
Z-axis Create Constraint Manager Spreadsheet “Creating Z-Axis
clearance > Z-Axis Clearances tab > right- Clearance Rule Sets”
rule set click existing rule set > New Z- on page 186
Axis Clearance Rule

Related Topics
• Quick References and Work Flows

20 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Quick Reference - Constraint Manager GUI


Use this reference to quickly determine the purpose of specific menu selections available
through the tool’s graphical user interface. You can also print this quick reference to keep it
close by while you use the tool.
If viewing this documentation from your web browser, click here to open this quick reference in
a standalone browser window.

File Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Edit Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
View Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Setup Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Filters Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Tools Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Data Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Output Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Constraint Manager Users Manual, X-ENTP VX.1.1 21


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

File Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific File menu command.

Table 1-2. File Menu Selections


Menu Command Topic/Purpose
File > Rollback Changes “Rolling Back and Undoing All Constraint Changes” on
page 149
File > Open Project Open a .prj file when you launch Constraint Manager in
standalone mode.
File > Close Project Close a .prj file you opened in standalone Constraint
Manager.
File > Reload Project Reload a .prj file you opened in standalone Constraint
Manager.
File > Page Setup Set up paper and orientation options for printing.
File > Print Setup Set up your printer.
File > Print Preview View preview of a print job.
File > Print Print Constraint Manager Spreadsheet content.
File > File Viewer “Viewing Constraint Database Log Files” on page 65
File > Import > Layout “Importing a Layout Template” on page 63
Template
File > Import > Constraints “Importing Constraints in Encrypted XML Format” on
page 295
File > Import > Constraints “Importing Constraints in Encrypted CSV Format” on
from encrypted CSV page 296
File > Import > Constraint “Reusing Constraint Templates in External Designs” on
Template page 288
File > Import > Settings “Reusing Settings in External Designs” on page 79
File > Import > Preferences “Importing a 2005.x Ces.prefs File” on page 63
File
File > Import > Pin Package “Importing Pin Package Length Values” on page 324
Lengths
File > Export > Constraints “Exporting Constraints in Encrypted XML Format” on
page 291
File > Export > Constraints “Exporting Constraints in Encrypted ASCII Format” on
to encrypted ASCII page 294

22 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Table 1-2. File Menu Selections (cont.)


Menu Command Topic/Purpose
File > Export > Constraints “Exporting Constraints in Encrypted CSV Format” on
to encrypted CSV page 293
File > Export > Constraint “Reusing Constraint Templates in External Designs” on
Template page 288
File > Export > Settings “Reusing Settings in External Designs” on page 79
File > Export > Actuals “Sharing PCB Actuals With Front-End Constraint
Manager Sessions” on page 145
File > Exit Exit Constraint Manager.

Related Topics
• Quick Reference - Constraint Manager GUI

Constraint Manager Users Manual, X-ENTP VX.1.1 23


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Edit Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Edit menu command.

Table 1-3. Edit Menu Selections


Menu Command Topic/Purpose
Edit > Undo Undo last operation.
Edit > Redo Redo last undo operation.
Edit > Cut Cut selection.
Edit > Copy Copy selection.
Edit > Paste Paste selection.
Edit > Delete Delete selection.
Edit > Rule Painter “Painting Rules to Reuse Constraints” on page 148
Edit > Find “Searching for Constraints” on page 119
Edit > Pin Pairs > Add Pin “Creating Pin Pairs Manually” on page 223
Pairs
Edit > Pin Pairs > Auto Pin “Creating All Pin Pairs Automatically” on page 221
Pair Generation
Edit > Pin Pairs > Auto “Creating Only Source-Load Pin Pairs Automatically” on
Source-Load Pin Pair page 222
Generation
Edit > Netline Order “Manually Defining Netline Ordering (From-Tos) for a
Specific Net” on page 213
Edit > Differential Pairs > “Defining Differential Pairs Manually” on page 271
Differential Pair from
Selected Nets
Edit > Differential Pairs > “Defining Differential Pairs Automatically” on page 272
Auto Assign Differential
Pairs
Edit > Power Nets > “Specifying Power-Supply Nets Manually” on page 255
Change Nets to Power Nets
Edit > Power Nets > Auto “Specifying Power-Supply Nets Automatically” on
Create Power Nets page 252
Edit > Assign Nets to “Adding Nets to a Net Class” on page 167
Classes
Edit > Auto Bus “Defining Bus Constraint Classes Automatically” on
page 159

24 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Table 1-3. Edit Menu Selections (cont.)


Menu Command Topic/Purpose
Edit > Parallelism Rules > “Defining Parallelism Rules” on page 262
Define Parallelism Rules
Edit > Parallelism Rules > “Assigning Parallelism Rules to Nets and Constraint
Assign Parallelism Rules Classes” on page 264
Edit > Clearances > Assign “Assigning Package-Type-to-Package-Type Clearance
Package Type Clearances Rules” on page 198
Edit > Clearances > Reset to “Resetting Clearance Rules to the Master Scheme” on
Master page 175
Edit > Clearances > General “Specifying General Clearance Rules” on page 171
Clearances
Edit > Clearances > Class to “Assigning Class-To-Class Clearance Rules” on page 191
Class Clearance Rule
Edit > Clearances > Z-Axis “Creating Z-Axis Clearance Rule Sets” on page 186
Clearances
Edit > Clearances > Z-Axis “Assigning Z-Axis Class-To-Class Clearance Rules” on
Class to Class Clearance page 194
Rule
Edit > Constants and “Creating Constants and Variables for Delay Rules and
Variables > Edit Formulas” on page 242
Edit > Constants and “Finding Variable References” on page 244
Variables > Find Variables
Reference
Edit > Via Assignments “Defining Via Assignments” on page 181
Edit > Apply Constraint “Constraint Template Application” on page 282
Template
Edit > Constraint “Creating or Modifying Constraints” on page 89
Definitions
Edit > Constraint Groups “Creating Constraint Groups” on page 124
Edit > Stackup “Viewing or Modifying Stackup Properties” on page 311

Related Topics
• Quick Reference - Constraint Manager GUI

Constraint Manager Users Manual, X-ENTP VX.1.1 25


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

View Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific View menu command.

Table 1-4. View Menu Selections


Menu Command Topic/Purpose
View > Expand > Selected | “Expanding and Collapsing Spreadsheet Rows” on
All page 115
View > Collapse > Selected “Expanding and Collapsing Spreadsheet Rows” on
| All page 115
View > Reset Row Heights “Resizing Spreadsheet Columns and Rows” on page 113
View > Reset Column “Resizing Spreadsheet Columns and Rows” on page 113
Widths
View > Reset View “Resetting a Spreadsheet to its Default View” on page 124
Views > Tabs “Toggling the Display of Windows and Toolbars” on
page 80
View > Navigator “Toggling the Display of Windows and Toolbars” on
page 80
View > Output “Toggling the Display of Windows and Toolbars” on
page 80
View > Status Bar “Toggling the Display of Windows and Toolbars” on
page 80
View > Remotely Modified “Showing Indication of Remotely Changed Constraints”
Data > Refresh on page 130
View > Remotely Modified “Showing Indication of Remotely Changed Constraints”
Data > Enable Indication on page 130
View > Toolbars “Toggling the Display of Windows and Toolbars” on
page 80
View > Toolbars > “Toolbar Customization of Constraint Manager” on
Customize page 84

Related Topics
• Quick Reference - Constraint Manager GUI

26 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Setup Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Setup menu command.
Table 1-5. Setup Menu Selections
Menu Command Topic/Purpose
Setup > Settings “Specifying Design Configuration Preferences” on
page 68 and “Constraint Manager Setup” on page 68
Setup > Cross Probing “Cross Probing Between Design Systems and Constraint
Manager” on page 66
Setup > Shortcuts “Customizing Command Shortcut Keys” on page 97

Related Topics
• Quick Reference - Constraint Manager GUI

Constraint Manager Users Manual, X-ENTP VX.1.1 27


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Filters Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Filters menu command.
Table 1-6. Filters Menu Selections
Menu Command Topic/Purpose
Filters > Enabled “Filtering Spreadsheet Data” on page 120
Filters > Cumulative Mode “Filtering Spreadsheet Data” on page 120
Filters > Drill-down “Filtering Spreadsheet Data” on page 120
Filtering
Filters > Levels “Filtering the Spreadsheet by Row Type” on page 122
Filters > Levels > Reset “Resetting a Spreadsheet to its Default View” on page 124

Related Topics
• Quick Reference - Constraint Manager GUI

28 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Tools Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Tools menu command.

Table 1-7. Tools Menu Selections


Menu Command Topic/Purpose
Tools > Dashboard Launch the Mentor Graphics Dashboard.
Tools > xDX Designer Launch xDX Designer.
Tools > xDX I/O Designer Launch xDX I/O Designer.
Tools > Constraint Launch Constraint Template Editor.
Template Editor
Tools > CES Diagnostics “Checking Constraints Synchronization” on page 136
Tools > Constraint “Resolving Schematic Constraint Conflicts Manually” on
Resolution Manager page 335
Tools > iCDB Server Launch Server Manager.
Manager
Tools > iCDB Project Launch Auto Backup Utility.
Backup
Tools > Valor NPI “Selecting or Creating Valor NPI Design Centers” on
page 99
Tools > Customize “Adding Custom Menu Selections to the Tools Menu” on
page 96

Note
Most Tools menu selections are only available in standalone Constraint Manager sessions
that are launched on an Xpedition Enterprise Flow design.

Related Topics
• Quick Reference - Constraint Manager GUI

Constraint Manager Users Manual, X-ENTP VX.1.1 29


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Data Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Data menu command.
Table 1-8. Data Menu Selections
Menu Command Topic/Purpose
Data > Constraint “Viewing All Constraint Violations” on page 146
Violations
Data > Solve All Formulas “Solving Formulas to Check for Errors” on page 239
Data > Update > IBIS Pin “Updating Part Model Constraints” on page 322
Type & Defaults
Data > Actuals > Import “Sharing PCB Actuals With Front-End Constraint
Layout Actuals Manager Sessions” on page 145
Data > Actuals > Import “Sharing PCB Actuals With Front-End Constraint
Thermal Actuals Manager Sessions” on page 145
Data > Actuals > Clear All “Clearing Actuals From the Spreadsheet” on page 143
Pages
Data > Actuals > Clear This “Clearing Actuals From the Spreadsheet” on page 143
Page
Data > Actuals > Update “Updating Actuals Displayed in Constraint Manager” on
All page 143
Data > Actuals > Update “Updating Actuals Displayed in Constraint Manager” on
Selected page 143
Data > Clear All “Deleting Constraint Values at the Object or Design
Constraints Level” on page 117
Data > Clear All Custom Delete all custom constraints you created.
Constraint Definitions

Related Topics
• Quick Reference - Constraint Manager GUI

30 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager GUI

Output Menu
Read a command’s purpose or click within the Topic/Purpose column to view the
documentation associated with a specific Output menu command.

Table 1-9. Output Menu Selections


Menu Command Topic/Purpose
Output > Model Audit “Verifying Default Model Assignments” on page 320
Report
Output > Design Statistics “Viewing Design Statistics” on page 136
Output > Check Constraints “Checking Constraints Synchronization” on page 136
Synchronization
Output > Show iCDB Provides a short report of clients and sub-clients who are
Clients currently working on the same design.
Output > Report Comments “Viewing Constraint Comments” on page 134

Related Topics
• Quick Reference - Constraint Manager GUI

Constraint Manager Users Manual, X-ENTP VX.1.1 31


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Quick Reference - Constraint Manager


Spreadsheet
Use this reference to quickly determine how to best utilize the design constraints you can define
through Constraint Manager. Constraints are grouped by Constraint Manager Spreadsheet page
and ordered as they appear on a specific spreadsheet page.
You can also print this quick reference to keep it close by while you use the tool. If viewing this
documentation from your web browser, click here to open this quick reference in a standalone
browser window.

Trace and Via Properties Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33


Clearances Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Z-Axis Clearances Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Nets Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Parts Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Noise Rules Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

32 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Trace and Via Properties Summary


Refer to the following table for trace and via property constraint information.

Table 1-10. Trace & Via Properties


Constraint Purpose
“Index” on page 342 Displays the layer number for a board layer. This
constraint is also displayed on the Clearances page and Z-
Axis Clearances page.
“Type” on page 343 Displays the type of printed circuit board layer (for
example, signal or plane). This constraint is also displayed
on the Clearances page.
“Via Assignments” on Defines the via assignment for a net class.
page 344
“Route” on page 345 Defines whether the board layer is routed during PCB
fabrication. You can set Route individually or for all board
layers of a net class.
“Trace Width Minimum” Defines the minimum acceptable trace width. You can
on page 346 define Trace Width Minimum individually or for all board
layers of a net class. Trace Width Minimum is used
whenever the router can successfully route at this trace
width and a minimum width is needed.
“Trace Width Typical” on Defines the typical acceptable trace width. You can define
page 347 Trace Width Typical individually or for all board layers of
a net class. This trace width is used by the router whenever
possible.
“Trace Width Expansion” Defines the expansion, or maximum acceptable trace
on page 348 width.You can define Trace Width Expansion individually
or for all board layers of a net class. When the router needs
to increase trace width to satisfy routing requirements, this
trace width is used.
“Typical Impedance” on Defines signal impedance for the Trace Width Typical
page 349 constraint. When you enter a value into the Trace Width
Typical cell, impedance at this width is calculated and
placed into the Typical Impedance cell.
“Differential Typical Defines signal impedance for trace segments that are part
Impedance” on page 350 of a differential pair. This value is calculated and updated
automatically when you modify Trace Width Typical,
Typical Impedance, or Differential Spacing.

Constraint Manager Users Manual, X-ENTP VX.1.1 33


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-10. Trace & Via Properties (cont.)


Constraint Purpose
“Differential Spacing” on Defines the required parallel distance between trace
page 351 segments that comprise a differential pair. You can define
Differential Spacing individually or for all board layers of
a net class.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

34 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Clearances Summary
Refer to the following table for clearance constraint information.

Table 1-11. Clearances


Constraint Purpose
“Index” on page 353 Displays the layer number for a board layer. This
constraint is also displayed on the Trace & Via Properties
page and Z-Axis Clearances page.
“Type” on page 354 Displays the type of printed circuit board layer (for
example, plane). This constraint is also displayed on the
Trace & Via Properties page.
“Trace To Trace” on Defines the minimum clearance distance between trace
page 355 segments. You can define Trace to Trace individually or
for all board layers of a clearance rule.
“Trace To Pad” on page 356 Defines the minimum clearance distance between traces
and pads. You can define Trace To Pad individually or for
all board layers of a clearance rule.
“Trace To Via” on page 357 Defines the minimum clearance distance between traces
and vias. You can define Trace To Via individually or for
all board layers of a clearance rule.
“Trace To Plane” on Defines the minimum clearance distance between traces
page 358 and planes. You can define Trace To Plane individually or
for all board layers of a clearance rule.
“Pad To Pad” on page 360 Defines the minimum clearance distance between pads.
You can define Pad To Pad individually or for all board
layers of a clearance rule. This constraint definition
includes SMD pads.
“Pad To Via” on page 361 Defines the minimum clearance distance between pads
and vias. You can define Pad To Via individually or for all
board layers of a clearance rule.
“Pad To Plane” on page 362 Defines the minimum clearance distance between pads
and planes. You can define Pad To Plane individually or
for all board layers of a clearance rule. This constraint
definition includes SMD pads.
“Trace To SMD Pad” on Defines the minimum clearance distance between the pads
page 359 of surface mount devices and traces. You can define Trace
To SMD Pad individually, or for all board layers of a
clearance rule.

Constraint Manager Users Manual, X-ENTP VX.1.1 35


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-11. Clearances (cont.)


Constraint Purpose
“Via To SMD Pad” on Defines the minimum clearance distance between the pads
page 365 of surface mount devices and vias. You can define Via To
SMD Pad individually, or for all board layers of a
clearance rule.
“Via To Via” on page 363 Defines the minimum clearance distance between vias.
You can define Via To Via individually or for all board
layers of a clearance rule.
“Via To Plane” on page 364 Defines the minimum clearance distance between vias and
planes. You can define Via To Plane individually or for all
board layers of a clearance rule.
“Plane To Plane” on Defines the minimum clearance distance between planes.
page 366 You can define Plane To Plane individually or for all
board layers of a clearance rule.
“Embedded Resistor To Defines the minimum clearance distance between the
Trace” on page 367 resistive material of embedded thick-film resistors and
traces. You can define Embedded Resistor To Trace
individually or for all board layers of a clearance rule.
“Embedded Resistor To Defines the minimum clearance distance between the
Pad” on page 368 resistive material of embedded thick-film resistors and
pads. You can define Embedded Resistor To Pad
individually or for all board layers of a clearance rule.
“Embedded Resistor To Defines the minimum clearance distance between the
Via” on page 369 resistive material of embedded thick-film resistors and
vias. You can define Embedded Resistor To Via
individually or for all board layers of a clearance rule.
“Embedded Resistor To Defines the minimum clearance distance between the
Resistor” on page 370 resistive material of embedded thick-film resistors. You
can define Embedded Resistor To Resistor individually or
for all board layers of a clearance rule.
“EP Mask To Trace” on Defines the minimum clearance distance between the
page 371 production mask of embedded thin-film resistors and
traces. You can define EP Mask To Trace individually or
for all board layers of a clearance rule.
“EP Mask To Pad” on Defines the minimum clearance distance between the
page 372 production mask of embedded thin-film resistors and
pads. You can define EP Mask To Pad individually or for
all board layers of a clearance rule.

36 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-11. Clearances (cont.)


Constraint Purpose
“EP Mask To Via” on Defines the minimum clearance distance between the
page 373 production mask of embedded thin-film resistors and vias.
You can define EP Mask To Via individually or for all
board layers of a clearance rule.
“EP Mask To Resistor” on Defines the minimum clearance distance between the
page 374 production mask of embedded thin-film resistors and the
resistive material of embedded thick-film resistors. You
can define EP Mask To Resistor individually or for all
board layers of a clearance rule.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

Constraint Manager Users Manual, X-ENTP VX.1.1 37


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Z-Axis Clearances Summary


Refer to the following table for z-axis clearance constraint information.
Table 1-12. Z-Axis Clearances
Constraint Purpose
“Index” on page 376 Displays the layer number for a board layer. This
constraint is also displayed on the Trace & Via Properties
page and Clearances page.
“Trace To Trace” on Defines the minimum clearance distance between trace
page 377 segments located on different signal layers. You can
define Trace To Trace individually or for all board layers
of a clearance rule.
“Trace To Pad” on page 378 Defines the minimum clearance distance between traces
and pads located on different signal layers. You can define
Trace To Pad individually or for all board layers of a
clearance rule.
“Trace To Via” on page 379 Defines the minimum clearance distance between traces
and vias located on different signal layers. You can define
Trace To Via individually or for all board layers of a
clearance rule.
“Trace To Plane” on Defines the minimum clearance distance between traces
page 380 and planes located on different signal layers. You can
define Trace To Plane individually or for all board layers
of a clearance rule.
“Trace To SMD Pad” on Defines the minimum clearance distance between the pads
page 381 of surface mount devices and traces located on internal
signal layers. You can define Trace To SMD Pad
individually, or for all board layers of a clearance rule.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

38 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Nets Summary
Refer to the following table for net constraint information.

Table 1-13. Nets


Constraint Group Purpose
“# Pins” on page 384 Displays the number of pins that comprise the
net.
“Power Net” on page 385 Defines the net as a power-supply net. You can
define Power Net individually for each net. You
cannot define differential pair nets as power-
supply nets.
“Analog” on page 386 Defines the net as analog and prevents physical
nets that comprise an electrical net from being
merged into an electrical net or differential pair.
You cannot define differential pair nets as
Analog. You can define Analog individually or
for all nets of a constraint class.
“Bus” on page 387 Defines the constraint class as a bus. Nets within
the constraint class should be limited to those
nets that comprise the bus.
“Net Class” on page 388 Defines the name of the net class to which the net
should belong.
“Template Name” on Optionally, defines the constraint template to
page 389 which the net is assigned. You can define
Template Name individually or for all nets of a
constraint class.
“Template Status” on Displays the synchronization status of the net
page 390 with regard to the current values stored in the
constraint template.
“Topology Type” on Defines the topology type used for routing,
page 391 which can be an automatic routing pattern, or
custom routing pattern that you define. You can
define Topology Type individually or for all nets
of a constraint class.
“Topology Ordered” on For Topology Type Custom or Complex,
page 393 displays whether the custom topology type has
undergone netline ordering, which is required for
each user-specific topology type.

Constraint Manager Users Manual, X-ENTP VX.1.1 39


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Stub Length Max” on Defines the maximum length of shared copper
page 394 allowed between two branches of a net when
routing it as a custom, complex, or chained
Topology Type. You can define Stub Length
Max individually or for all nets of a constraint
class.
“# Vias Max” on page 395 Defines the maximum number of vias that can be
created when routing a net. When specified, this
constraint value must be between 1 and 1000.
You can define # Vias Max individually or for all
nets of a constraint class.
“Max Restricted Layer Defines the maximum trace length that can be
Length External” on routed on external restricted board layers. You
page 396 can define Max Restricted Layer Length External
individually or for all nets of a constraint class.
“Max Restricted Layer Defines the maximum trace length that can be
Length Internal” on routed on internal restricted board layers. You
page 397 can define Max Restricted Layer Length Internal
individually or for all nets of a constraint class.
“From To Constraints Defines the board layer on which to route a from-
Layer” on page 398 to for a non-differential net that uses Topology
Type Custom. You can define From To
Constraints Layer individually for each from-to
that is part of a non-differential net.
“From To Constraints Trace Optionally defines the trace width to which to
Width” on page 399 route a from-to. You can only define this
constraint for non-differential nets that use a
custom Topology Type. You also must define
From To Constraints Layer before you can enter
a value for this constraint. You can define From
To Constraints Trace Width individually for each
from-to.
“From To Constraints Z0” Displays an impedance calculation based on the
on page 400 trace width override value defined in From To
Constraints Trace Width.
“Length or TOF Delay Defines the type for a net, which can be
Type” on page 401 controlled electrically (TOF) or physically
(Length). You can define Length or TOF Delay
Type individually, for pin pairs, for differential
pairs, or for all nets of a constraint class.

40 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Length or TOF Delay Defines the minimum acceptable physical
Min” on page 402 routing length or signal propagation delay (for
example, time) between design connections. You
can define Length or TOF Delay Min
individually, for pin pairs, for differential pairs,
or for all nets of a constraint class.
“Length or TOF Delay Defines the maximum acceptable physical
Max” on page 404 routing length or signal propagation delay (for
example, time) between design connections. You
can define Length or TOF Delay Max
individually, for pin pairs, for differential pairs,
or for all nets of a constraint class.
“Length or TOF Delay Displays the Manhattan net length. The tool
Manhattan” on page 406 shows the actual length in the Length or TOF
Delay Actual cell if the net is routed.
“Length or TOF Delay Min Displays the straight line length between two pin
Length” on page 407 pairs when both components are placed. This
length is replaced with Length or TOF Delay
Actual when the net is routed.
“Length or TOF Delay Defines a match character or string (for example,
Match” on page 408 a) you can use to group nets for similar length or
time of flight delay routing. You can apply
Length or TOF Delay Match individually, for pin
pairs, or for differential pairs.
“Length or TOF Delay Tol” Introduces a tolerance range around the net
on page 409 routing delay requirements for nets that duplicate
a Length or TOF Delay Match (for example, 1).
You can also define this constraint at the
constraint class level without the pre-requirement
of defining a match character or string.
“Length or TOF Delay Displays the difference between the actual value
Delta” on page 410 for the net and the net with the largest actual
value in the match group. If there is no
difference, this cell displays 0. The tool does not
includes Length or TOF Delay Tol values when
it calculates this delta value.
“Length or TOF Delay Displays the range of length or time of flight
Range” on page 411 actuals for all nets and/or constraint classes that
are part of the same match group.

Constraint Manager Users Manual, X-ENTP VX.1.1 41


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Formulas Formula” on Defines a formula that can be used to create
page 412 delay relationships between nets and pin pairs.
You can define Formulas Formula individually
or for pin pairs.
“Formulas Violation” on Displays formula violation information based on
page 413 the requirements of the Formulas Formula
constraint.
“Static Low Overshoot Defines the maximum low DC voltage
Max” on page 414 (minimum) that a buffer can withstand without
permanent damage to the buffer. You can define
Static Low Overshoot Max individually, for
differential pairs, or for all nets of a constraint
class. This value is defined in an IBIS model
through the S_overshoot_low keyword.
“Static High Overshoot Defines the maximum high DC voltage that a
Max” on page 416 buffer can withstand without permanent damage
to the buffer. You can define Static High
Overshoot Max individually, for differential
pairs, or for all nets of a constraint class. This
value is defined in an IBIS model through the
S_overshoot_high keyword.
“Dynamic Low Overshoot Defines an available, smaller low operating
Max” on page 418 voltage (below minimum) limit for the signal that
is to not exceed a specific duration. This voltage
limit should not be met or exceeded, but allow
for the signal to go lower than Static Low
Overshoot Max, while never equaling Dynamic
Low Overshoot Max. You can define Dynamic
Low Overshoot Max individually, or for all nets
of a constraint class. These values are defined in
an IBIS model through the D_overshoot_low and
D_overshoot_time keywords.

42 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Dynamic High Overshoot Defines an available, larger high operating
Max” on page 420 voltage (above maximum) limit for the signal
that is to not exceed a specific duration. This
voltage limit should not be met or exceeded, but
allow for the signal to go higher than Static High
Overshoot Max, while never equaling Dynamic
High Overshoot Max. You can define Dynamic
High Overshoot Max individually, for
differential pairs, or for all nets of a constraint
class. These values are defined in an IBIS model
through the D_overshoot_high and
D_overshoot_time keywords.
“Ringback Margin High Defines the minimum allowed difference
Min” on page 422 between the high switching threshold (Vinh) and
a ringback wave. You can define Ringback
Margin High Min individually, for differential
pairs, or for all nets of a constraint class.
“Ringback Margin Low Defines the minimum allowed difference
Min” on page 423 between the low switching threshold (Vinl) and a
ringback wave. You can define Ringback Margin
Low Min individually, for differential pairs, or
for all nets of a constraint class.
“Non-Monotonic Edge” on Defines a non-monotonicity requirement for the
page 424 rising edge, falling edge, or both signal edges.
You can define Non-Monotonic Edge
individually, for differential pairs, or for all nets
of a constraint class. For example, when you set
Non-Monotonic Edge to Rising, an error is
reported only if the rising signal edge is non-
monotonic.
“Single Ended Defines the single-ended characteristic
Characteristic Impedance impedance for net traces. You can define Single
Value” on page 425 Ended Characteristic Impedance Value
individually, for differential pairs, or for all nets
of a constraint class.
“Single Ended Introduces a tolerance range around Single
Characteristic Impedance Ended Characteristic Impedance Value. You can
Tol” on page 426 define Single Ended Characteristic Impedance
Tol individually, for differential pairs, or for all
nets of a constraint class.

Constraint Manager Users Manual, X-ENTP VX.1.1 43


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Simulated Delay Edge” on Defines the simulated delay edge to constrain,
page 427 which controls the switching time between signal
states. You can define Simulated Delay Edge
individually, for differential pairs, for pin pairs,
or for all nets of a constraint class.
“Simulated Delay Min” on Defines the minimum acceptable simulated delay
page 428 for the Simulated Delay Edge value (for
example, Rise or Fall). You can define Simulated
Delay Min individually, for differential pairs, for
pin pairs, or for all nets of a constraint class.
“Simulated Delay Max” on Defines the maximum acceptable simulated
page 429 delay for the Simulated Delay Edge value (for
example, Rise:Fall or Both). You can define
Simulated Delay Max individually, for
differential pairs, for pin pairs, or for all nets of a
constraint class.
“Simulated Delay Max Defines a maximum acceptable range of
Range” on page 430 difference between Simulated Delay Actual Min
and Simulated Delay Actual Max for the
Simulated Delay Edge value (for example, Fall
or Both). You can define Simulated Delay Max
Range individually, for differential pairs, for pin
pairs, or for all nets of a constraint class.
“Simulated Delay Match Defines the hierarchical level of matching for the
To” on page 431 Simulated Delay Match constraint. You can
match to the constraint class, net, or pin-pair
level. You can define Simulated Delay Match To
individually, for differential pairs, for pin pairs,
or for all nets of a constraint class.
“Simulated Delay Match” Defines the electrical net, pin pair, or constraint
on page 432 class to which to match the Simulated Delay
constraints (for example, Simulated Delay Edge,
Simulated Delay Min, and Simulated Delay
Max). You can define Simulated Delay Match
individually, for differential pairs, for pin pairs,
or for all nets of a constraint class.

44 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Simulated Delay Offset” Introduces a positive or negative offset (for
on page 433 example, 50 ns or -50 ns) from Simulated Delay
Min and Simulated Delay Max when matching
the simulated delay of an electrical net or
constraint class (Simulated Delay Match). You
can define Simulated Delay Offset individually,
for differential pairs, for pin pairs, or for all nets
of a constraint class.
“Simulated Delay Tol” on Introduces a tolerance range (for example, 5 ns)
page 434 around Simulated Delay Min and Simulated
Delay Max when matching the simulated delay
of an electrical net or constraint class (Simulated
Delay Match). You can define Simulated Delay
Tol individually, for differential pairs, for pin
pairs, or for all nets of a constraint class.
“Differential Pair Tol Max” Defines the maximum allowed difference in time
on page 435 of flight delay or length between electrical nets in
a differential pair. You can define Differential
Pair Tol Max individually for each differential
pair.
“Differential Pair Tol Max” Defines the maximum allowed difference in time
on page 435 of flight delay or length between electrical nets in
a differential pair. You can define Differential
Pair Tol Max individually for each differential
pair.
“Differential Pair Phase Tol Defines the maximum allowed distance that a
Distance Max” on page 438 coupled segment of a differential pair can be
when the legs of the differential pair are out of
phase. You can define Differential Pair Phase Tol
Distance Max individually for each differential
pair and at the constraint class level.
“Differential Pair Phase Tol Indicates whether both Differential Pair Phase
Actual” on page 440 Tol Max and Differential Pair Phase Tol
Distance Max constraints are being exceeded.
This actual only shows the word “Violation” if
both constraints are exceeded.
“Convergence Tolerance Defines the maximum allowed difference in trace
Max” on page 441 length from pads to the point where traces start
routing differentially at the Differential Spacing
constraint. You can define Convergence
Tolerance Max individually for each differential
pair.

Constraint Manager Users Manual, X-ENTP VX.1.1 45


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Distance to Convergence Defines the maximum distance that differential
Max” on page 442 traces are allowed to route before they converge
as a differential pair. The distance value is the
combination of segment lengths. Convergence is
met when traces start routing at the Differential
Spacing constraint.You can define Distance to
Convergence Max individually for each
differential pair and at the constraint class level.
“Separation Distance Max” Defines the maximum allowed distance that
on page 443 differential traces are allowed to route at a
spacing greater or less than the Differential
Spacing constraint. You can define Separation
Distance Max individually for each differential
pair.
“Differential Spacing” on Displays the required parallel distance between
page 444 trace segments that comprise a differential pair.
When separate spacing values are defined for
each board layer, Constraint Manager displays
the range of values as a colon-separated list. For
example, "5:10" indicates a range of values
where 5 is the smallest value and 10 is the largest
value.
“Differential Impedance Defines the target differential impedance. You
Target” on page 445 can define this constraint for differential pairs.
“Differential Impedance Introduces a tolerance range around Differential
Tolerance” on page 446 Impedance Target. You can define this constraint
for differential pairs.
“I/O Standard” on page 447 Defines the technology standard for an FPGA
signal net. You can define I/O Standard
individually, or for all nets of a constraint class.
“Power Net Constraints Defines the operating voltage for a power-supply
Supply Voltage” on net. You can define Power Net Constraints
page 448 Supply Voltage individually for each power-
supply net.
“Power Net Constraints Defines the maximum acceptable decrease in
Max Voltage Drop” on voltage from Power Net Constraints Supply
page 449 Voltage. You can define Power Net Constraints
Max Voltage Drop individually for each power-
supply net or for all power-supply nets in a
constraint class.

46 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-13. Nets (cont.)


Constraint Group Purpose
“Power Net Constraints Defines the maximum acceptable current that can
Max Current Density” on flow across a power-supply net structure (such as
page 450 an area fill or trace). You can define Power Net
Constraints Max Current Density individually for
each power-supply net or for all power-supply
nets in a constraint class.
“Power Net Constraints Defines the maximum acceptable current for vias
Max Via Current” on connected to power-supply nets. You can define
page 451 Power Net Constraints Max Via Current
individually for each power-supply net or for all
power-supply nets in a constraint class.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

Constraint Manager Users Manual, X-ENTP VX.1.1 47


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Parts Summary
Refer to the following table for part constraint information.

Table 1-14. Parts


Constraint Purpose
“Hierarchical Path” on Displays the hierarchical component path, when
page 453 applicable.
“Part Number” on page 454 Displays the part number for a design component.
“Qty” on page 455 Displays the number of times a part is used throughout
your design.
“Part Type” on page 456 Displays the part-type value associated with a design
component.
“Series” on page 457 Defines whether a series-class component (for example,
resistor) should actually be considered a series element
(“connected in series”), and therefore not used for
electrical net generation. You can define Series for parts
and part instances.
“IBIS Component Name” Defines the IBIS model used for a part. You can define
on page 458 IBIS Component Name individually, or for all instances of
a part.
“Technology” on page 459 Defines the technology model used for a part. You can
define Technology individually, or for all instances of a
part.
“Value” on page 460 Defines the electrical value associated with a discrete part,
which can be resistance, inductance, or capacitance. You
can define Value individually or for all instances of a part.
“IBIS Pin Type” on Displays the IBIS pin type for a pin instance.
page 461
“Schematic Pin Type” on Displays the schematic pin type for a pin instance.
page 462
“Topology Pin Type” on Defines the chaining pin type for a pin instance. Chaining
page 463 pin types are source, load, or terminator (S, L, or T).
“Pin Package Length” on Defines a pin's internal package length between the
page 464 substrate and dielectric layers of the component. You
commonly use this constraint to define wire bonding
length.
“Pin Package Delay” on Defines a pin's internal package delay between the
page 465 substrate and dielectric layers of the component. You
commonly use this constraint to define the delay for wire
bonding.

48 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Table 1-14. Parts (cont.)


Constraint Purpose
“Thermal Power Defines a part’s power dissipation as a subset of the total
Dissipation” on page 466 amount of power needed to run the component.
“Thermal Power Scaling Defines a part instance’s scaling factor with regard to
Factor” on page 467 power dissipation.
“Thermal Theta-jc” on Defines a part’s junction-to-casing thermal resistance.
page 468 This is also commonly referred to as die-to-package heat
resistance.
“Thermal Casing Defines a part’s maximum allowable temperature for the
Temperature Limit” on component casing or package.
page 469
“Thermal Junction Defines a part’s maximum allowable temperature for
Temperature Limit” on component junctions. A component junction is also
page 470 commonly referred to as a die.
“I/O Standard” on page 471 Displays the defined technology standard for an FPGA
signal net. When on the Nets spreadsheet page, you can
define I/O Standard individually, or for all nets of a
constraint class.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

Constraint Manager Users Manual, X-ENTP VX.1.1 49


Quick References and Work Flows
Quick Reference - Constraint Manager Spreadsheet

Noise Rules Summary


Refer to the following table for noise rule constraint information.
Table 1-15. Noise Rules
Constraint Purpose
“Noise Type” on page 473 Defines the noise type for a specific parallelism rule
and/or Crosstalk Max constraint and Crosstalk Level.
“Constraint Class or Defines the victim constraint class or electrical net of the
Electrical Net Name aggressor-victim relationship.
Victim” on page 474
“Constraint Class or Defines the aggressor constraint class or electrical net of
Electrical Net Name the aggressor-victim relationship.
Aggressor” on page 475
“Parallelism Rule” on Defines the parallelism rule for a class-to-class or net-to-
page 476 net parallelism relationship.
“Crosstalk Max” on Defines the maximum acceptable crosstalk that a net or all
page 477 nets within a constraint class can be subjected to as victim
nets. You can define Crosstalk Max individually or for all
nets of a constraint class.
“Crosstalk Level” on Defines the signal state of the victim net in a crosstalk
page 478 relationship. Supported simulators like HyperLynx use
this constraint. Layout systems do not use this constraint.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet

50 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Constraint Manager Work Flows

Constraint Manager Work Flows


The two main work flows for the tool are illustrated in the topics that follow. Although these
work flows indicate the typical order of constraint entry and modification for schematic and
PCB engineers, your order of operations may be different.
The following work flows are included:

• Schematic-Design Work Flow — This work flow begins with creating and defining
constraint classes, which hold electrical, signal integrity, and high-speed signal integrity
constraints. Along the way, you make a variety of constraint assignments. Some of these
include topology types, simulated delay rules, and overshoot and ringback requirements.
The final step is sending schematic constraint data to your layout design representation
through forward annotation.
• PCB-Layout Work Flow — This work flow starts with creating and defining both
rules-area schemes and net classes. These groupings hold physical constraints for board
layers and nets. Along the way, you make a variety of constraint assignments. Some of
these include trace and via rules, clearance rule sets, and package-type clearances. The
final step is to send layout constraint data to your schematic design representation
through back annotation.

Constraint Manager Users Manual, X-ENTP VX.1.1 51


Quick References and Work Flows
Constraint Manager Work Flows

Schematic-Design Work Flow


Click within the illustration to view the topic for a specific step in this work flow.

Figure 1-2. Schematic-Design Work Flow

52 Constraint Manager Users Manual, X-ENTP VX.1.1


Quick References and Work Flows
Constraint Manager Work Flows

Related Topics
• Constraint Manager Work Flows

Constraint Manager Users Manual, X-ENTP VX.1.1 53


Quick References and Work Flows
Constraint Manager Work Flows

PCB-Layout Work Flow


Click within the illustration to view the topic for a specific step in this work flow.

Figure 1-3. PCB-Layout Work Flow

Related Topics
• Constraint Manager Work Flows

54 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 2
Overview and Setup

This section is an introduction to the tool that provides an overview of the it and constraint-
driven design flows. It also includes information about invocation, setup, and application
customization.
Note
At a minimum, make sure to read “Before You Begin Using Constraint Manager” on
page 57. It includes important information for each PCB design flow that uses Constraint
Manager.

Constraint-Driven Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Before You Begin Using Constraint Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Starting and Exiting From Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Viewing Constraint Database Log Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Cross Probing Between Design Systems and Constraint Manager. . . . . . . . . . . . . . . . . 66
Constraint Manager Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Display Customization of Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Toolbar Customization of Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Constraint Set Customization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Adding Custom Menu Selections to the Tools Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Customizing Command Shortcut Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Selecting or Creating Valor NPI Design Centers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Constraint-Driven Design
Constraint Manager gives you the ability to concurrently manage design constraints in a
common environment. By using the tool, you can view, edit, and specify access to constraints in
a single environment tool that is tightly integrated into the PCB design flow.
For example, you can define constraint using HyperLynx LineSim, and then use that data to
drive automatic routing to ensure a correct-by-design circuit. The ultimate result is that the tool
helps to reduce costly research and development expenses that are associated with multiple
design revisions for a single product release.

Constraint Manager Users Manual, X-ENTP VX.1.1 55


Overview and Setup
Constraint-Driven Design

Figure 2-1. Common Constraint Environment Resulting in Accurate Schematic


Design and PCB Layout Views

See also: Click within the above illustration to view related topics.

Constraint-Driven Design Flows


The tool is available in the following integrated design flows:

• Xpedition® Enterprise
• PADS Professional
• xDX Designer-PADS® Layout (Integrated Workflow)
• Keyin netlist-Xpedition PCB
• Design Capture™/DesignView™-Xpedition PCB
• Design Architect™/Board Architect™-Board Station® XE
• Design Architect/Board Architect-Board Station RE

Concurrent Design Process


Constraint Manager supports concurrent design process, which is the ability to have multiple
engineers work on schematic-entry or PCB-layout design constraints simultaneously. This
means that users can modify a front-end or back-end constraint set at the same time. Each user
sees the constraint changes made by other users in real time. You still use forward and back
annotation to communicate changes between schematic and layout design representations.

For more information, refer to “Concurrent Constraint Entry With Other Users” on page 128.

PCB Rule-Area Creation Through Schemes


Beginning with the Master scheme, rule-area schemes give you the ability to segment areas of a
board into distinct regions and then apply different physical/manufacturing rules to each area.

56 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Before You Begin Using Constraint Manager

For example, if a certain area of a board contains many critical connections between
components, you can define a board area that encompasses this region, and then apply tighter
trace and via rules that promote signal integrity within this critical board area.

For more information, refer to “Creating Rule Area Schemes” on page 173.

Organization of Physical Design Rules Through Net Class Creation


A net class is a set of physical constraints defined for each board layer. By assigning individual
nets to net classes, you can require them to use certain physical rules during placement, routing,
and DRC. In addition, you can define clearance constraints between net classes, making the
clearance between two objects depend on the net class each object is in.

For more information, refer to “Creating Net Classes” on page 165.

Time Saving and Error Reduction Through Constraint Class Creation


You use constraint classes to group and define electrical constraints such as length and
separation distance. Constraint classes give you the ability to specify net constraint values once
for all nets in a class. Nets you put into the class later inherit those constraints, too.

For more information, refer to “Creating Constraint Classes” on page 155.

Design Constraint Verification


If you view physical routing results in Constraint Manager, you can use easily see if those
results meet your constraint values. These results are called actuals. If Constraint Manager is
connected in this way, the spreadsheet updates to include not only routing results but also a
visual indication of adherence.

For example, if the routed length of a net is too close to either its minimum or maximum
constraint, or exceeding either value, the cell that displays the actual is backlighted in red or
yellow to indicate that the actual exceeds, or comes close to exceeding, the constraint values.

For more information, refer to “Validating PCB Actuals Against Constraints” on page 141.

Related Topics
• Overview and Setup

Before You Begin Using Constraint Manager


In preparation for using Constraint Manager, make sure that you are aware of the following:
• The tool supports entry of English characters only. Although you can view GUI text in
languages other than English, you must type English characters into the tool.

Constraint Manager Users Manual, X-ENTP VX.1.1 57


Overview and Setup
Before You Begin Using Constraint Manager

• Memory requirements are design dependent and based on the relative size of a design.
Operating systems that use a 32-bit architecture have a process-size limitation of 2 GB.
This means that regardless of how much memory is available, no single process is
allowed to use more than 2 GB of memory. A large number of net classes and layers are
examples of objects that may exceed memory limits in the tool. As a result, you may not
be able to open large designs.
• Constraint Manager automatically recognizes some net names as power-supply nets. As
such, it enables the Power Net constraint for them. For more information, refer to “Net
Names Constraint Manager Automatically Recognizes as Power-Supply Nets” on
page 251.
• The default view of the tool is streamlined to present you with just the core set of
spreadsheet pages, toolbars, and navigator nodes. For information on displaying those
that are not displayed by default, refer to “Display Customization of Constraint
Manager” on page 80.
• Ensure that you properly configured your WDIR variable. Refer to Managing Mentor
Graphics Systems Software for more information.
• If you launch the tool on a read-only .prj file, it opens in read-only mode. If Constraint
Manager unexpectedly opens in read-only mode, you should check to ensure that you
have write access permissions for the .prj file.
• In the event that the tool reports an error message that includes a UID number (for
example, “507,692,52”), you should run CES Diagnostics to check constraints and
attempt to fix the error. For more information, refer to “Checking Constraints
Synchronization” on page 136.
• If your design includes them, the tool represents single-pin nets as a unified net called
“(Net0)-1:X”. You must access this special net when assigning Net0 nets to a constraint
class and net class, or when defining single-pin net constraints. For more information,
refer to “Defining Constraints for Single-Pin Nets” on page 258.
• When rolling back constraint changes made in Constraint Manager, the forward and
back annotation indicator lights for your design flow do not reflect these undo actions.
For example, after you make a single change in back-end Constraint Manager and then
rollback that change, your back-end system will still indicate that you need to perform
back annotation.
• Depending on the design flow you are using, the invocation tool from which you
launched Constraint Manager may or may not save your changes by default. In order to
keep from losing data, ensure that you understand the unique save process of your
design system, and use it appropriately to save constraint changes within each applicable
session. For example, xDX Designer automatically saves schematic data and
constraints, but PCB layout tools require an explicit save before they write PCB layout
changes and constraint changes to disk. When making a Constraint Manager change in a
session launched from a PCB layout tool, it is important to understand the following:

58 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Before You Begin Using Constraint Manager

o All changes you make in Constraint Manager are reflected in the layout invocation
tool after you exit Constraint Manager.
o You can send pending Constraint Manager changes to the layout tool during the
active Constraint Manager session. To do so, at the bottom-right corner of your PCB
layout tool, click the rightmost status indicator to load the changes into the back-end
design system.
• When working in Constraint Manager sessions launched from xPCB Layout, you cannot
change reference designator prefixes through Constraint Manager’s settings dialog box.
To update these prefixes in your back-end constraint set, modify them in a constraint
session launched from the front-end, and then forward annotate.
• A constraint cell shows ‘#’ if the precision is too low for it to display a meaningful
value. For example, 0.000435 V would show ‘#’ if the precision is set to 3. With
precision set to 4, it shows ‘0.0004’. To set precision, refer to “Setting Unit Notation” on
page 77.
• When exporting constraints, the tool uses the native concurrent unit type. When
reimporting constraints, you must set the unit type afterward.
• The tool does not apply Z-axis clearances between segments of the same net.
• The tool does not create an electrical net if both ends of a series component (for
example, resistor) are connected to the same instance of a device.

Xpedition Enterprise
If using this flow, make sure that you are aware of the following:
• You must have an xDX Designer tool concurrency license (dxconcurrent) to use
multiple copies of schematic invocations of Constraint Manager, or standalone
Constraint Manager, on the same design.
• If you use the Copy Sheet command in the xDX Designer tool, the tool only copies
constraint values if you enable the “Copy Constraints on Copy Sheet” option in the xDX
Designer tool’s Advanced settings. The tool does not copy values if you use the Copy
Block command.

Related Topics
• Before You Begin Using Constraint Manager

Keyin Netlist-xPCB Layout


If using this flow, make sure that you are aware of the following:
• If you use a keyin netlist to represent design connectivity instead of traditional
schematic capture data, forward annotate before you begin use Constraint Manager to

Constraint Manager Users Manual, X-ENTP VX.1.1 59


Overview and Setup
Before You Begin Using Constraint Manager

modify constraint data. Aside from the standard communication of design changes, you
only have to perform this step once. You can do so before or after you enable Constraint
Manager in a keyin netlist flow.

Related Topics
• Before You Begin Using Constraint Manager

Differential Pairs Conversion


When Constraint Manager converts differential pairs between database formats, some
differential pairs may not convert successfully; however, they are preserved in the old format
and are still valid. In the event that this occurs, the tool provides a dialog box indicating that it
could not convert some differential pairs and has marked them with a pin icon. To redefine one
or more of these differential pairs, you must delete them.
Note
You are not required to redefine differential pairs that the tool could not convert to the
2007 (or later) Constraint Manager database format. The tool preserves these differential
pairs in the previous format, and they are still applicable to your updated design.

Example 2-1. Differential Pair That was not Converted

If you delete a differential pair marked with a pin icon, another dialog box is displayed. It
indicates that each net that comprises the differential pair may be merged into another electrical
net. This can remove the ability for you to recreate the current differential pair.

Related Topics
• Before You Begin Using Constraint Manager

xPCB Static Team Layout and xPCB Team Layout


xPCB Static Team Layout (used for concurrent PCB design) and xPCB Team Layout (used for
dynamic/interactive group PCB design) are integrated with Constraint Manager. However, the
tool has limited support for xPCB Static Team Layout. Constraints you define are carried
forward to the split designs.
If you are editing a split design, you can change constraints on the Trace & Via Properties page
and Clearance page inside Constraint Manager. However, the changes apply only to the current
split design. The changes are not joined with the main design. You cannot edit constraints on
any other spreadsheet pages in the tool when inside a split partition.

60 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Before You Begin Using Constraint Manager

Related Topics
• Before You Begin Using Constraint Manager

Overview of Electrical Nets and Physical Nets in


Constraint Manager
It is important to understand that the tool automatically populates the Nets spreadsheet with
electrical nets and physical nets based on the following definitions that are unique to Constraint
Manager:
• Physical net (pNet) — A physical net ( ) is a net where all pins of the net are
connected by a trace, via, or plane segment.
• Electrical net (eNet) — An electrical net ( ) is made up of one or more physical nets
that are connected together logically or electrically through (usually passive)
components. Electrical nets are generated by Constraint Manager. A common example
of an electrical net containing two physical nets is one where Net A and Net B are
connected through a series resistor. Electrically, the signal on Net A goes through the
resistor and continues on through Net B as if it were all one net. The simples example of
an electrical net is a single physical net that is not connected to any other physical nets
through passive components. In this case, the electrical net is the same as the physical
net.

The tool denotes electrical nets that include two or more physical nets on the Nets page
of the spreadsheet. It adds a ^^^ suffix to the end of the net name as it appears in the first
column (Constraint Class/Net/*).

Note
Constraint Manager does not create an electrical net if both ends of a series component
(for example, resistor) are connected to the same instance of a device.

Definitions for other objects like differential pairs, components, and terminators are not unique
to Constraint Manager.

Related Topics
• Before You Begin Using Constraint Manager

Automatically Recognized Topologies


Constraint Manager automatically recognizes two termination strategies when it recommends
differential pairs within the context of electrical nets. In these cases, the tool ignores some
connections, and this can result in orphaned physical nets. In both of the following cases, the
tool ignores connections so that the two poles of the differential pair can remain separate,
allowing for the differential pair to be recognized:

Constraint Manager Users Manual, X-ENTP VX.1.1 61


Overview and Setup
Before You Begin Using Constraint Manager

• Standard parallel termination — If the two poles of a differential pair are joined
through a resistor, the tool ignores the resistor connection. Doing so keeps the two poles
of the pair from being joined into a single electrical net.
• Alternative parallel termination — If the two poles of a differential pair are joined
through two resistors (with a capacitor taking the net to ground), the tool ignores the
connection through the resistors.

Figure 2-2. Differential Pair Topologies Automatically Recognized by


Constraint Manager

In both of the above cases, the tool determines the receiving component to be a differential
receiver if the component has an IBIS model that contains a diff pin statement for the pin; or,
the component has no IBIS model but two inputs exist on the same symbol or part instance, and
a single resistor, or a pair of resistors in parallel, connect the inputs.

Related Topics
• Before You Begin Using Constraint Manager

Electrical Nets Defined Through a Package With


More Than Two Pins
Constraint Manager creates electrical nets through parts with more than two pins if you
correctly configure both the tool and the part. For example, you could set up a 4-pin resistor
pack for this usage.
In order for Constraint Manager to do this, you must meet the following requirements:

• You defined the reference designator prefix for the part as an available discrete
component prefix (for example, RN).
• You defined pin pairs across the entire part. For example, if the part has four pins, you
must define two pin pairs. Doing so maps the pins so the tool can correctly route through

62 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Before You Begin Using Constraint Manager

the resistor pack. For more information, refer to “Defining Discrete Component Pin
Pairs” on page 224.
When the tool does this, it sets the Parts page Series constraint to enabled/on for the part.

Related Topics
• Before You Begin Using Constraint Manager

Importing a Layout Template


If your design data is limited to just schematic data, you can import a layout template into
Constraint Manager sessions launched from your front-end design system. Doing so is useful
when a schematic engineer wants to define physical constraints based on an accurate board-
layer configuration before the first forward annotation has occurred.

Procedure
1. From the File menu, click Import, and then click Layout Template.
2. From the Import Layout Template dialog box, next to Select layout template, click the
dropdown, and then choose the template you want to use.
3. After you are sure of your selection, click OK.

Caution
After you associate a layout template with your design, whether through this procedure or
in your PCB layout design system, when you load the design in Constraint Manager, the
Output window displays information about the layout template. This information
includes the number of layers in the template. It is important to understand that this
information does not necessarily reflect the actual number of layers, or other stackup
information for the actual design. You get the same report even if you make changes to
the stackup.

Related Topics
• Before You Begin Using Constraint Manager

Importing a 2005.x Ces.prefs File


Versions of Constraint Manager before VX.0 stored some settings in a preferences file called
Ces.prefs that was written to the top level of your WDIR location. To make the transition
between a 2005.x release and a VX.x release easier, you can import your preferences file into
Constraint Manager VX.x.
It is important to note that the tool no longer writes this preferences file. Importing a Ces.prefs
file is intended to be an optional, one-time transition step between releases.

Constraint Manager Users Manual, X-ENTP VX.1.1 63


Overview and Setup
Starting and Exiting From Constraint Manager

Procedure
1. From the File menu, click Import, and then click Preferences File.
2. From the Open dialog box, navigate to the .prefs file you want to load, and then click
OK.

Related Topics
• Before You Begin Using Constraint Manager

Starting and Exiting From Constraint Manager


You can launch Constraint Manager from many Mentor Graphics applications. Refer to
procedure in this topic to determine the command you use to launch it from a specific PCB
design tool in your flow.

Prerequisites
• You properly configured your WDIR environment variable. Refer to Managing Mentor
Graphics Systems Software for more information.

Procedure
From your design tool, click the Constraint Manager icon ( ) or use its menu path.
Table 2-1. Starting Constraint Manager Through the Menu Path
Design Tool Menu Path
Design Capture Tools > Edit Constraints
DesignView Workspace > Integration
View tab > Constraints
xDX Designer Tools > Constraint Manager
xPCB Layout Setup > Constraints

Results
Constraint Manager opens and displays the constraint set for the front-end or back-end design.
If the .prj file for the design is read-only, the tool opens in read-only mode. Eventually, to exit
from the tool, from the main window, click x, or from the File menu, click Exit.

Related Topics
• Overview and Setup

64 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Starting Constraint Manager in Standalone Mode

Starting Constraint Manager in Standalone


Mode
You can start Constraint Manager in standalone mode. Do this if you want to view the
constraint set associated with a front-end or back-end design without opening your schematic or
layout software.

Procedure
You can start the tool in standalone mode in the following ways:

• Windows Start menu — In your Xpedition Enterprise vX.x folder, expand Constraint
Entry, and then click Constraint Manager.
• Windows 8 Apps views — Under Xpedition Enterprise vX.x, click Constraint
Manager.
• Dashboard — From the Mentor Graphics Dashboard, with a project actively selected,
expand Board-Level (PCB) Design Toolbox, and then double-click Constraint
Manager.

Related Topics
• Overview and Setup

Viewing Constraint Database Log Files


Constraint Manager generates log files for various situations during the course of a design
project.

Procedure
From the File menu, click File Viewer.

Related Topics
• Overview and Setup

Folder Structure and Location of Constraint


Manager Log Files
Constraint Manager writes log files (.log) within each design folder, using subfolders to
distinguish between the concurrent snapshot name, block name, machine name, and user name.
Within each log file folder, the tool names log files based on the date and time you started a
session.

Constraint Manager Users Manual, X-ENTP VX.1.1 65


Overview and Setup
Cross Probing Between Design Systems and Constraint Manager

Each time you close and reopen the tool, it adds a new set of log files. See below for the
individual directory structures that exist for front-end and back-end Constraint Manager
sessions.

Schematic Log Files Folder Structure


<design_folder>\CES\LogFiles\<snapshot_name>\<block_name>\<machine_name>\<user_
name>

Example: C:\Phone_design_1\CES\LogFiles\DxD\keypad\psmith-lt\psmith

For xDX Designer only, in the event that you can not copy from-tos and/or pin pairs while
copying or updating a reuse block, or when copying sheets, the tool writes one or both of the
following log files to capture the missing objects:

• MissingFromtos_<time/date stamp>.log
• MissingPinpairs_<time/date stamp>.log

Layout Log Files Folder Structure


<design_folder>\CES\LogFiles\<snapshot_name>\<block_name>\<machine_name>\<user_
name>

Example: C:\Phone_design_1\CES\LogFiles\keypad_Layout_Temp\keypad\psmith-lt\psmith

Related Topics
• Overview and Setup

Cross Probing Between Design Systems and


Constraint Manager
You can enable cross probing between Constraint Manager and the design system from which
you launched the tool. Cross probing, also known as cross select, works in a bi-directional
fashion.
For example, when you select a design object in your schematic capture of PCB layout design
system, Constraint Manager selects the object in its interface. When you select a design object
in Constraint Manager, the host tool selects the design object in its view.

Tip: You can set up Constraint Manager to enable cross probing by default. To learn how
to do this, refer to “Constraint Manager Setup” on page 68.

66 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Cross Probing Between Design Systems and Constraint Manager

Procedure
You can cross probe in the following ways:

• From your design system to Constraint Manager — Use the following steps:
a. From the Setup menu, click to enable Cross Probing; or, from the General toolbar,
click .
b. In your schematic capture or PCB layout software, click a design object (for
example, a net or component).
• From Constraint Manager to your design system — Use the following steps:
a. From the Setup menu, click to enable Cross Probing; or, from the General toolbar,
click .
b. From the spreadsheet, click the leftmost column of a design object, or press Ctrl+J to
select the current row.
Example: In the following illustration, the user selected net ADDRESS1 for cross
probing.

Figure 2-3. Cross Probing From Constraint Manager

Tip: You can also cross probe from the Navigator to select all nets that are part of a
hierarchical object like a constraint class or net class. When you do so, your invocation
tool selects all associated nets from within your logic or layout environment.

Related Topics
• Overview and Setup

Constraint Manager Users Manual, X-ENTP VX.1.1 67


Overview and Setup
Constraint Manager Setup

Constraint Manager Setup


You can specify options to customize the most appropriate Constraint Manager environment.
The tool uses these settings, and the settings associated with units that are displayed in the
spreadsheet editor, for all designs you work on.
Settings are unique for each copy of Constraint Manager installed as part of a specific flow.
Although most settings are machine and flow specific, there is a small number of settings
unique to each design.

Specifying Design Configuration Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68


Setting Display Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Specifying Other Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Reusing Settings in External Designs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Specifying Design Configuration Preferences


Design configuration preferences are settings that affect an entire design rather than specific
design objects (for example, layers or nets).

Tip: As an alternative, you can use a configuration file to specify some preferences. For
more information, refer to “Using a Configuration File to Specify Design Preferences” on
page 71.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, click Design Configuration.
3. Under Default tolerances, specify the following:
• Distance — A default physical tolerance for length constraints. This is the allowable
default deviation for any match group length constraints you define in Constraint
Manager.
• Time — A default electrical tolerance for delay values. This is the allowable default
deviation for any match group delay constraints you define in Constraint Manager.
4. Under Parallelism mode, specify whether the router should report parallelism hazards
cumulatively, or separately for each segment. When in cumulative mode, the router
reports a hazard for each segment that comprises a group. For example, when the
parallel run length needs to be less than 400 th, and each of the three segments in a group
are 134 th, the router shows a violation for each segment although they are each 266 th
shorter than required. The router reports violations because the sum of 134 th + 134 th +
134 th is 402 th, which is greater than 400 th.

68 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

Note
For cumulative calculations, the router ignores segments smaller than 100 th. Using the
above example, five 98 th segments result in a total of 490 th, but because each segment
is less than 100 th, the router ignores all of them and reports no hazard.

5. Under Pin Package, in the Propagation Delay field, modify the velocity value as needed
to reflect an accurate signal speed through pin package connections. The tool uses this
value in conjunction with the Pin Package constraints of the Parts page to calculate
either Pin Package Length or Pin Package Delay, when requested. (The default value is
0.000165 ns/th.)
6. To change the number of seconds a user can reserve a constraint cell for editing while
working concurrently, in the Maximum locking timeout field, enter a different value.
7. Click OK.

Related Topics
• Constraint Manager Setup

Specifying Electrical Net Preferences


You can specify electrical net preferences like the maximum number of physical nets that can
comprise an electrical net and whether the tool can use IBIS part models to help characterize
electrical nets.

Prerequisites
• You must be using a Constraint Manager session launched from the front-end, or a
standalone session of the tool.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Design Configuration, click Electrical Net.
3. Specify the maximum number of physical nets that may comprise an electrical net.
Using too low of a setting may cause Constraint Manager to create too many electrical
nets. Too high of a setting could cause the tool to create too few electrical nets, each of
which contains many physical nets. For more information, refer to “Overview of
Electrical Nets and Physical Nets in Constraint Manager” on page 61.
4. Specify the net pin count threshold to use to determine whether a net is potentially a
signal net.

Constraint Manager Users Manual, X-ENTP VX.1.1 69


Overview and Setup
Constraint Manager Setup

Tip: Identify the signal net in your design with the smallest number of pins, and then set
this value to that number minus one. For example, when the smallest signal net in a
design contains 15 pins, set this value to 14.
5. Specify whether the tool should use IBIS part models or electrical nets.
6. For component names, specify whether the tool should use IBIS names (for example,
icx_part_model) for mapping purposes. By default, the tool uses the part model name.
7. Click OK.

Related Topics
• Constraint Manager Setup

Specifying Discrete Component Prefixes


You must specify discrete component prefixes in order for Constraint Manager to identify the
parts that are of this type.
Note
The tool identifies resistor packs with 2-pin schematic symbols as series connections. If
you are using the Xpedition Enterprise Flow, the tool identifies any combination of 2-pin
or full-pack symbols as series devices. In the other flows, you must use 2-pin schematic
symbols to ensure Constraint Manager recognition.

Prerequisites
• You must be using a Constraint Manager session launched from the front-end, or a
standalone session of the tool.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Design Configuration, click Discrete Component
Prefixes.
3. Specify all possible reference designator prefixes for the parts in your design. Keep the
following in mind:
• If your design flow includes reuse blocks, you must include special reference
designator prefixes that support reuse blocks. They are of the format #_<type>. For
example, #_R supports resistors in reuse blocks and #_C supports capacitors in reuse
blocks. To be safe, for each prefix that you define, you should include an additional
prefix in this format.
• If your design uses reference designators that are of the format YYYRNN
(schematic sheet, reference designator prefix, unique instance), append a # to each

70 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

discrete component prefix that you define. For example, instead of using just C to
define the discrete component prefix for capacitors, use #C.
• If a part type has instances with multiple reference designators, Constraint Manager
determines that a part is a discrete if you specify at least one of the refdes prefixes.
For example, part type RES has instances R1 -> R10 and X1 -> X10. If either R or X
are in the list, the tool considers the part and its instances to be resistors.
4. Click OK.
In the following example illustration, each discrete component has at least two defined prefixes.
Connectors have three prefixes: P, J, and PJ. Resistors have four prefixes: R, RR, RN, and RP.

Figure 2-4. Reference Designator Prefixes

Results
After you finish modifying discrete component prefixes, Constraint Manager automatically re-
generates electrical nets. In order to update layout, you must package the design and forward
annotate.

Related Topics
• Constraint Manager Setup

Using a Configuration File to Specify Design


Preferences
As an alternative approach to specifying design preferences through the Constraint Manager
GUI, you can use a preferences file (.prefs) to define some of these design characteristics.
For example, you can specify the numerical pin threshold the tool uses to determine whether a
net is a signal net or a power net. The tool uses this setting to create a list of valid reference
designator prefixes.

Procedure
1. Exit Constraint Manager.
2. In an ASCII text editor, create a file named ces.prefs.

Constraint Manager Users Manual, X-ENTP VX.1.1 71


Overview and Setup
Constraint Manager Setup

3. Copy and paste the content of the example preferences file below into your ASCII text
editor.
4. Modify the example content in your ASCII text editor to specify appropriate values.
5. Save ces.prefs to the appropriate WDIR location.
6. Restart Constraint Manager.

Results
Constraint Manager reads the preferences from this file and replaces any GUI definitions you
had specified previously.

Example 2-2. ces.prefs File

(preferences
(section CES
(pref DSN_POWERS "+12V=12.0" "+5V=5.0" "-12V=-12.0" "-5V=-5.0"
"GND=0.0" "VCC=5.0" "VDD=5.0" "VEE=-5.2" "VSS=0.0" )
(pref DSN_MAXENETS 10)
(pref DSN_BIGNETPINCOUNT 50)
(pref DSN_DEF_DISTANCE_TOL 254000)
(pref DSN_DEF_TIME_TOL 0.015)
(pref DSN_DISCRETES "RESISTOR=R,RN,RP" "CAPACITOR=C"
"INDUCTOR=L,FB" "DIODE=CR,D" "CONNECTOR=J,P")))

Related Topics
• Constraint Manager Setup

Setting Display Options


You can set display options like cross probing settings, whether the tool should display row
numbers in the spreadsheet, and the availability of scrolling buttons for the listing of
spreadsheet tabs.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, click Display.
3. Under Window Settings, specify whether Constraint Manager should cross probe
between itself and schematic-entry or layout, by default.
Note: When setting display options for CTE, Set the default cross probing mode to ON
is intentionally grayed out and not available.
4. To turn on cross probing from the Navigator, click to enable its checkbox.

72 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

5. Click to enable row, column, or header highlighting and indication of remotely modified
cells. Both are useful when working concurrently.
6. To show row numbers, click to enable the associated checkbox.
7. Enable or disable “Show scrolling buttons for tabs” to include the left and right arrow
buttons next to the tabs you use to select specific Constraint Manager spreadsheet pages.
8. To automatically show differences between parent and child objects, click to enable the
associated checkbox.
9. Click OK.

Related Topics
• Constraint Manager Setup

Setting General Options


You can set general options like the initial magnification level of the tool, default tolerances for
constraint values, and what should happen when you press the Enter key when a cell is active.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Display, click General.
3. Under Initial Zoom Level, specify the default size of spreadsheet fonts and rows by
entering a percentage value. As you increase this value, the size of spreadsheet fonts
increase.
4. Under Inactive Draw Combobox Buttons, specify when Constraint Manager should
display comboboxes within a spreadsheet field. If you enable this option, any cell that
can display a dropdown list will always display the down arrow box. If disabled, the tool
displays the dropdown box for a cell after you click within the cell.
5. Under Spin Edit Control, specify whether integer value spreadsheet fields should
display up and down arrows beside them when clicked. You use these arrows to increase
or decrease the integer value within a cell without using the keyboard.
6. Choose the preferred action of the LMB when you double-click it. You can choose
expand cell, rename cell, or no action.
7. Choose the preferred action that occurs after you press the Enter key within a cell. You
can choose to move to up, down, left, or right from the current cell.
8. Under Tolerances, specify the following values:
• Design tolerance of constraints compared against actual back-annotated design
values. In the Constraint violation warning field, enter a percentage value.

Constraint Manager Users Manual, X-ENTP VX.1.1 73


Overview and Setup
Constraint Manager Setup

Example: If the Constraint violation warning field contains 90%, the tool highlights
actual values in yellow that are ninety percent, or a greater, of the associated
constraint value to indicate an actual that is close to the acceptable constraint value.
If an actual value exceeds the constraint value, the tool highlights the field in red.
• Acceptable threshold Constraint Manager uses when applying constraint templates
to nets. In the Template match threshold field, enter a percentage value. For less
similarity, reduce this value; for more similarity, increase this value.
9. Under Change Impact Dialog, specify what should happen if you attempt to change a
child constraint override at the parent constraint level:
• Change all affected values — Replace all child values with the value entered at the
parent constraint level. Does not show the Change Impact Prompt dialog box.
• Keep all overrides but change others — Replace only the child values that match
the old parent value. Does not show the Change Impact Prompt dialog box.
• Always prompt user for all values — Prompt for all values using the Change
Impact Prompt dialog box, whether the current value is an override or not.
Note: For more information on how these settings affect your constraint editing
environment, refer to “Choosing From Among Change Impact Actions” on page 106.
10. Click OK.

Related Topics
• Constraint Manager Setup

Setting Fonts and Colors


You can set font and color options to control things like the appearance of header and constraint
cells, the background colors the tool uses to indicate violations, and the colors the tool uses to
display information in the Output window.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Display, click Fonts and Colors.
3. Modify any of the following options:
• Specify the header font and cell font appearances for defaults, constraints, and
properties.
• Specify the header font, cell font, and background color appearance settings for
actuals, read-only values, static values, and disabled cells.

74 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

• To help you identify changes made by concurrent Constraint Manager users, specify
background colors and cell fonts for edited cells, locked cells, and modified cells.
• Specify the background cell color the tool uses to indicate violations of type caution
or error.
• Specify the background color for other/hierarchical items like Different, Default
Value, and Override Value.
• Specify the colors the tool uses to indicate the presence of comment marks and
propagation marks.
• Specify the color and font the tool uses to display content in the Output window.
Although the heading for this column of the dialog box states that all colors are
background colors, you use Font, Error, Warning, and Path rows to set textual
colors.
4. Click OK.

Related Topics
• Constraint Manager Setup

Setting Spreadsheet Units


You can specify the units Constraint Manager displays for the different types of constraint data.
The tool uses your preferences to format the display and entry of values. These settings do not
affect the design units you use in a specific front-end or back-end system.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Display, click Display Units.
3. From the Display Units page, for each unit type, specify the unit and precision that you
want to use. Refer to the table below if you need help determining the meaning of a
specific unit.
4. Click OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 75


Overview and Setup
Constraint Manager Setup

Table 2-2. Available Display Units


Unit Type Unit
Linear Choose from the following units:
• in – inch
• th – thousandth of an inch
• mm – millimeter
• um – micrometer
• nm – nanometer
Angle Choose from the following units:
• deg – degree
• rad – radian
• ' – foot
• " – inch
Capacitance Choose from the following units:
• F – farad
• mF – millifarad
• uF – microfarad
• nF – nanofarad
Voltage Choose from the following units:
• kV – kilovolt
• V – volt
• mV – millivolt
• uV – microvolt
• nV – nanovolt
Inductance Choose from the following units:
• H – henry
• mH – millihenry
• uH – microhenry
• nH – nanohenry
Power Choose from the following units:
• kW – kilowatts
• W – watts
• mW – milliwatts
• uW – microwatts
• nW – nanowatts
Velocity Choose from the following units:
• in/ns – inch per nanosecond
• m/s – meter per second
• %c – percentage of the speed of light

76 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

Table 2-2. Available Display Units (cont.)


Unit Type Unit
Resistance Choose from the following units:
• MOhm – mega-ohm
• KOhm – kilo-ohm
• Ohm – ohm
• mOhm – milli-ohm
• uOhm – micro-ohm
Time Choose from the following units:
• s – second
• ms – millisecond
• us – microsecond
• ns – nanosecond
• ps – picosecond
Current Choose from the following units:
• A – ampere
• mA – milliampere
• uA – microampere
• pA – picoampere
Temperature The tool expresses this unit type in degrees Celsius
(degC).
Theta The tool expresses this unit type in degrees Celsius per
watt (degC/W).
Current Density The tool expresses this unit type in milliamperes over
thousandths of an inch squared (mA/th^2).

Related Topics
• Constraint Manager Setup

Setting Unit Notation


You can specify the precision and format of electrical units that Constraint Manager displays.
For example, you can use engineering notation with a precision of three digits after the decimal
point, scientific notation with two digit post-decimal point precision, or choose not to format
electrical units and always display full precision.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, under Display, click Notation.

Constraint Manager Users Manual, X-ENTP VX.1.1 77


Overview and Setup
Constraint Manager Setup

3. From the Notation page, under Electrical units, specify the format and precision you
want to use for electrical units.
Example: To use SPICE format with a precision of 5, click the radio button next to
SPICE, and in its associated Precision field, enter 5.
Rule: If you do not want to format electrical units and want to use full precision, click
the “Do not format electrical units and use full precision” check box.
Rule: If the precision is too low to display a meaningful value, a constraint cell will
display ‘#’ instead of a number.
4. Under Regional settings, specify the decimal point symbol to use, the number of digits
to display after the decimal point, and other associated electrical unit display properties.
5. To suppress the display of trailing zeros, click to activate the “Suppress trailing zeros”
check box.
Example: If using engineering format with a precision of 5, the tool displays a
spreadsheet value of 8.12300 as 8.123. If you do not suppress trailing zeros, the tool
displays all five post-decimal values.
6. Click OK.

Related Topics
• Constraint Manager Setup

Specifying Other Preferences


You can specify additional preferences for things like actuals, constraint diagnostics, and log
file storage.

Prerequisites
• You can only modify certain actuals preferences if you are in a Constraint Manager
session launched from the back-end. You must modify the remaining preferences from a
front-end session.

Procedure
1. From the Setup menu, click Settings; or, from the General toolbar, click .
2. From the Settings dialog box, click Other.
3. To have Constraint Manager automatically display updated actuals produced by your
layout tool during interactive routing, under Actuals, activate the Layout Dynamic
update checkbox. (The tools grays out this option when it is not available.)
Note: To do the same for thermal actuals, click to enable Thermal Dynamic update.

78 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Manager Setup

4. To automatically update actuals upon Constraint Manager invocation, under Actuals,


activate the “Auto update on start up” checkbox.
5. To automatically export actuals to schematic capture for display in Constraint Manager,
under Actuals, click to enable Export actuals to front-end. The tool exports actuals each
time they are updated, whether manually or automatically.
6. To show alerts in Constraint Manager front-end sessions that updated actuals can be
imported, under Actuals, click to activate the appropriate checkbox. If this option is
enabled, a small message appears above the Constraint Manager Spreadsheet each time
new actuals become available.
7. To automatically run CES Diagnostics upon exit, activate the associated checkbox.
8. To automatically update nets that use a constraint template when any of the constraint
template values are updated, click to activate “Automatically apply templates”. When
activated, you never need to re-apply constraint templates to individual nets to which
they are assigned.
9. To store log files generated during your Constraint Manager session locally at your
WDIR location, ensure that you enable the appropriate checkbox.
Note: By default, this checkbox is enabled. If you disable this checkbox, the tool stores
log files in the project directory for the design.
10. When cross probing from Constraint Manager, to have your schematic or layout tool
select no more than a maximum number of nets, enter a value in the “Maximum number
of selected nets” field.
11. Specify how old a log file needs to be before archiving it.
12. Click OK.

Related Topics
• Constraint Manager Setup

Reusing Settings in External Designs


You can reuse your Constraint Manager environment settings in other designs. You do so by
exporting to a file, and then importing that file in any external Constraint Manager session. This
is useful for maintaining the workgroup standards of a large design team, or reusing your own
design settings on different machines.

Procedure
1. From the File menu, click Export, and then click Settings.
2. From the Export Settings dialog box, specify a path and filename, and then click Save.

Constraint Manager Users Manual, X-ENTP VX.1.1 79


Overview and Setup
Display Customization of Constraint Manager

3. (Optional) Provide this settings file (.ini) to other engineers.


4. In any external Constraint Manager design, from the File menu, click Import, and then
click Settings.
5. In the Import Settings dialog box, select the settings file saved previously (for example,
workgroup.ini), and then click Open.

Related Topics
• Constraint Manager Setup

Display Customization of Constraint Manager


You can customize the display of Constraint Manager to design the most efficient work
environment for the completion of your constraint tasks. You can toggle the display of specific
windows, toolbars, and Constraint Manager Spreadsheet pages, and change the positions of
windows and toolbars.
Display customizations you make are unique to your machine. They are available in all designs
you work with in Constraint Manager.

Note
The initial view of Constraint Manager is streamlined to present you with just the core set
of spreadsheet pages and toolbars.

Toggling the Display of Windows and Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80


Changing the Position of Windows and Toolbars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Folder Location of the ces.ini Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

Toggling the Display of Windows and Toolbars


You can toggle the display of specific Constraint Manager Spreadsheet pages, toolbars, and
windows. For many of these items, you can quickly display a group of default objects, or all
objects.

Procedure
1. From the View menu, click to toggle the display of specific GUI objects:
• Tabs — Toggle this set of selections to display or exclude specific pages of the
Spreadsheet (for example, Parts). To show all tabs, click All. To show only the
default tabs, click Default.

80 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Display Customization of Constraint Manager

Tip: You can also toggle spreadsheet pages by right-clicking any of the tabs at the
bottom of the application.

• Navigator — This also known as the browser. Toggle this set of selections to
display or exclude items in this listing of Constraint Manager nodes (such as net
classes and constraint classes). You can also hide the navigator.
o To show all nodes, click All Nodes.
o To show only the default nodes, click Default Nodes.
o To display the number of objects in each group (for example, a constraint class),
enable Show Object Counters.

Tip: Clicking the right mouse button on Navigator items often displays context-sensitive
menus so you can perform operations directly from within it.

• Output — Toggle this setting to display or exclude the log/output window.


• Status Bar — Toggle this setting to display or exclude the status bar that appears at
the bottom of the application.
• Toolbars — Toggle this set of selections to display or exclude specific toolbars. To
show all toolbars, click All. To show only the default toolbars, click Default.

Results
Your display changes are available now and in future Constraint Manager sessions. The
changes are written to your ces.ini file.

Related Topics
• Display Customization of Constraint Manager

Changing the Position of Windows and Toolbars


You can move Constraint Manager windows and toolbars to different areas of the application or
choose to leave them undocked. You can also set specific windows to hide automatically when
you are not using them.

Procedure
1. Click and hold the window handle or toolbar handle of the interface element you want to
move.

Constraint Manager Users Manual, X-ENTP VX.1.1 81


Overview and Setup
Display Customization of Constraint Manager

Figure 2-5. GUI Object Handles

2. Move the interface element to position it within Constraint Manager, keeping the
following in mind:
• You can change the position of toolbars at the top of Constraint Manager or leave a
toolbar undocked by moving it out of the toolbar area at the top of the application.
• When you move a window, the display of the tool changes to show you where you
can quickly dock the window.

Figure 2-6. GUI Position Indicators

Drag the window and mouse over one of the above icons and release. The tool
highlights the new location for the window when you select its positioning icon.
(These positioning icons also appear at the borders of the application.)
You can instead undock a window by not moving it into one of the preset positions,
or move a window into a preset position that is already occupied and have it share
the space with one or more windows.
For example, you could have the Output window and the 3D Clearances window
share the same screen position.

82 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Display Customization of Constraint Manager

Figure 2-7. Windows Sharing the Same Space are Tab Accessible

Tip: Sometimes windows seem to get in the way no matter where you put them. You can
set a Constraint Manager window to automatically hide until you hover the mouse over
the window label. To do so, click the pin icon to the right of the window handle; or, right-
click the window handle, and then click Auto Hide.

Results
Your display changes are available now and in future Constraint Manager sessions. The
changes are written to your ces.ini file.

Related Topics
• Display Customization of Constraint Manager

Folder Location of the ces.ini Configuration File


The tool stores application customizations, which exclude design settings and preferences,
locally for each user at one of the operating system-specific folder locations listed below. This
file includes user customizations for windows, toolbars, and other GUI customizations you can
make to the tool.
There are some customizations that are not stored in the file referenced below:

• Command shortcut keys — Stored in the WDIR location specific to your software
installation in the file ces_shortcuts.ini.
• User-created constraint groups — Stored in the WDIR location specific to your
software installation in the file user.cns.

Constraint Manager Users Manual, X-ENTP VX.1.1 83


Overview and Setup
Toolbar Customization of Constraint Manager

Caution
If you intend to remove or replace a ces.ini file, you must do so while Constraint Manager
is not running.

Windows Locations
The tools stores the GUI customization file (ces.ini) at one of the following locations:

• c:\Users\<user>\AppData\Local\MentorGraphics\<software version>\ces.ini
(Windows 7 and 8)
Example: c:\Users\psmith\AppData\Local\MentorGraphics\EEVX.1\ces.ini
• c:\Documents and Settings\<user>\Application Data\MentorGraphics\<software
version>\ces.ini (Windows XP and earlier)
Example: c:\Documents and Settings\psmith\Application
Data\MentorGraphics\EEVX.1\ces.ini

Linux Location
The tool stores the GUI customization file (ces.ini) at the following location:

$HOME/.config/MentorGraphics/<software version>/ces.ini

Example: $HOME/.config/MentorGraphics/EEVX.1/ces.ini

Related Topics
• Display Customization of Constraint Manager

Toolbar Customization of Constraint Manager


You can customize Constraint Manager toolbars to change the order and groupings of buttons
on standard toolbars, and create new toolbars. Doing this can help to increase your efficiency
with the tool by making it easier to access just the toolbar buttons you use. If you do not want to
keep your modifications to a standard toolbar, you can reset it to its default grouping of buttons.
Modifying Toolbars to Create Custom Sets of Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Modifying Individual Toolbar Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Creating New Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Resetting a Toolbar to the Default Grouping of Buttons . . . . . . . . . . . . . . . . . . . . . . . . . 88

84 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Toolbar Customization of Constraint Manager

Modifying Toolbars to Create Custom Sets of


Buttons
You can modify Constraint Manager toolbars to change the order of buttons displayed on a
toolbar, add toolbar buttons, and remove toolbar buttons. For example, if you only use half of
the buttons on a specific toolbar, you can reorder the buttons on the toolbar so that the most
frequently used buttons display in the leftmost position of the toolbar instead of being spread
out among the entire width of the toolbar.

Procedure
1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. From the Customize dialog box, click the Commands tab, and then do any of the
following:
• To add a button to a toolbar, click the appropriate group selection within the
Categories list box, and then in the list of buttons, click and drag a button to a
specific toolbar at the top of the GUI.

Tip: Visually group similar toolbar buttons when you intend to include a large number of
buttons on a single toolbar. To add a bar separator to the left of a toolbar button, right-
click the button, and then click Start Group.

• To remove a button from a toolbar, at the top of the GUI, click a toolbar button and
then drag it to any area below the collection of toolbars. You can also right-click a
button, and then click Delete.
• To move a button within a toolbar, or from one toolbar to another, at the top of the
GUI, click a toolbar button, and drag it to another toolbar location. The tool uses
highlighting to assist you.

Figure 2-8. Moving a Toolbar Button to Another Position

• After you finish making changes to one or more toolbars, click OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 85


Overview and Setup
Toolbar Customization of Constraint Manager

Results
The display of one or more toolbars is now changed to reflect the modifications you have made.

Related Topics
• Toolbar Customization of Constraint Manager

Modifying Individual Toolbar Buttons


You can modify the appearance of individual toolbar buttons to specify whether they should
display an image, text, or both. You can also modify text or reset the button to its default
display.
Toolbar button customizations you make are local to just the toolbar that you are modifying. If
you make changes to a toolbar button that appears on multiple toolbars, those changes do not
show up on all toolbars.

Procedure
1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. Right-click the toolbar button you want to modify, and then do any of the following
things:
• To control whether the toolbar button shows textual information, an icon, or both,
click Image, Text, or Image and Text.
• To modify the text displayed by a toolbar button, click Button Appearance. In the
Button text field, type the text to show, and then click OK.

Note
Although the Button Appearance dialog box includes functionality to change the image
for a toolbar button, it is not enabled in the tool.

• To revert a button to its default display, click Reset to Default.


Here is an example of modifications to buttons on the Pairs toolbar. It now shows both
images and text for the three differential pair buttons and also has text modifications for
each of them.

Figure 2-9. Modifications to the Pairs Toolbar

86 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Toolbar Customization of Constraint Manager

Results
Your changes to toolbar buttons are available now and in future Constraint Manager sessions.

Related Topics
• Toolbar Customization of Constraint Manager

Creating New Toolbars


You can create new toolbars to group buttons from multiple toolbars. A common usage is to
create a user-based toolbar that includes all of the buttons that you use most frequently. Because
of the large number of toolbar buttons that Constraint Manager provides, making your custom
set can help you be more efficient with the tool if you use a specific subset of its functionality.

Procedure
1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. From the Customize dialog box, click the Toolbars tab, and then click New.
3. From the New Toolbar dialog box, in the text field, enter a name for the new toolbar (for
example, “pats_toolbar”), and then click OK.

Results
The new toolbar is available for modification. To learn how to add buttons to it or change its
contents, refer to “Modifying Toolbars to Create Custom Sets of Buttons” on page 85.

Examples
Example of Renaming a New Toolbar
In the following example, you want to rename a custom toolbar (“my_toolbar_1”) that you
created previously:

1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. From the Customize dialog box, click the Toolbar tab.
3. In the Toolbars listing, click the toolbar “my_toolbar_1”.
4. In the Toolbar name text box, enter a different name for the custom toolbar.
5. Click OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 87


Overview and Setup
Toolbar Customization of Constraint Manager

Example of Deleting a New Toolbar


In the following example, you want to delete a custom toolbar (“my_toolbar_1”) that you
created previously:

1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. From the Customize dialog box, click the Toolbars tab.
3. In the Toolbars listing, click the toolbar “my_toolbar_1”, and then click Delete.
4. Click OK.

Related Topics
• Toolbar Customization of Constraint Manager

Resetting a Toolbar to the Default Grouping of


Buttons
You can reset a toolbar to display its default listing of buttons and the order in which they are
displayed. Doing so is especially useful if you make changes to a toolbar that are too extensive
and you want to start over to capture just the useful modifications. In some cases, you may have
temporarily modified a toolbar and want to reset it.

Prerequisites
• The toolbar you want to reset has been customized in some way.
• The toolbar is a standard toolbar (you did not create it).

Procedure
1. From the View menu, click Toolbars, and then click Customize.
Alternative: Right-click any Constraint Manager toolbar, and then click Customize.
2. From the Customize dialog box, click the Toolbars tab.
3. In the listing of toolbars, click the appropriate toolbar, and then click Reset. To instead
reset all toolbars, click Reset All.
4. Click OK.

Results
The toolbar now displays all default buttons, and in the default order.

88 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Set Customization

Related Topics
• Toolbar Customization of Constraint Manager

Constraint Set Customization


You can customize the constraint set by changing access to constraints and adding constraints
that are unique to the needs of your engineering organization. Often times, the goal of constraint
customization is to share modifications and additions with a set of users. As such, constraint
customization is many times the responsibility of an administrative user on the design team.
Creating or Modifying Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Deleting User-Created Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Constraint Set Propagation to a Team. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Associating user.cns Files With a Mentor Graphics Software Release. . . . . . . . . . . . . . 95

Creating or Modifying Constraints


You can customize the constraint set displayed through the Constraint Manager Spreadsheet to
fit your needs and that of your design team. If making customizations, you can add entirely new
constraints (user constraints) and specify all of their properties. You can only modify existing
constraints (base constraints) to control whether they are read-only or hidden. Changes you
make are stored in the file user.cns in the WDIR location specific to your software installation.
Be aware of these important guidelines:
• There are two types of constraints: base constraints and user constraints. Base
constraints are defined by Mentor Graphics and supplied with the software. User
constraints are created by users.
• If your WDIR variable includes multiple locations, only user.cns at the first writable
path is updated to include your changes.
• Because a user.cns file must exist at all locations specified in your WDIR variable,
Constraint Manager initially places one at each location when one does not already
exist. After that, it only writes changes to the first writable path.
• user.cns files are not supported between releases. All user.cns files need to be specific to
a certain release (for example, EE 7.9.5). For more information, refer to “Associating
user.cns Files With a Mentor Graphics Software Release” on page 95.

Constraint Manager Users Manual, X-ENTP VX.1.1 89


Overview and Setup
Constraint Set Customization

Caution
Customizations to the constraint set are something that a design team should only do
before starting design development. After you put a custom user.cns in place, you should
not modify it or make a different user.cns available. Custom constraint sets are tied to
each specific user.cns file. Changing the available user.cns file during the course of
design development causes the loss of custom constraints and data that you cannot regain.

Therefore, it is critical that the machines of all team members use the same corporate or
design-specific user.cns file. For more information, refer to “Constraint Set Propagation
to a Team” on page 92. In the event that you move the design to a different machine,
ensure that it has access to the necessary user.cns file for the design before you load the
design.

If working with a design backup that you restore at a later point in time, you must ensure
that the correct user.cns file is available to the design before you load the design.

Prerequisites
• There must be one or more writable folder locations specified in your WDIR variable. If
a user.cns file exists at each of the folder locations, at least one of these files must be
writable.
• You are the only user who is modifying the constraint set if the user.cns file that will be
updated is in a shared WDIR folder location. Constraint Manager concurrency of any
kind is not supported while customizing the constraint set.

Procedure
1. From the Edit menu, click Constraint Definitions.
Alternative: From the Constraint Manager Spreadsheet, right-click a constraint column,
and then click Constraint Definitions. Now that you are in the context of a specific
constraint, proceed to step 4.
2. From the Constraint Definitions dialog box, use the Page dropdown to select the
spreadsheet page for which you want to modify an existing constraint or a new
constraint.
Tip: To differentiate between base constraints and user constraints, you can use the
Filter dropdown to select the constraint types to display.
3. At this point, you can perform any of the following tasks:
• To modify a base constraint and control whether it is read-only or hidden, from the
Constraint dropdown, select a base constraint.
• To create a user constraint, click , type a name for the new constraint, and then
click OK.

90 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Set Customization

4. For user constraints only, you can now specify Header, Title, Data type, Default value,
and other attributes of the constraint. The Data type field controls whether the constraint
has an associated Unit type, Min value, and Max value.
Note: To display the unit type in a constraint heading, append “(%U)” to the heading
text (for example, “Crosstalk (%U)”).
5. For user constraints only, when applicable, you can use Min value and Max value to set
the acceptable boundaries for a constraint. If you enter a constraint value that is outside
of this boundary, Constraint Manager uses its backlighting mechanism to visually
indicate the range breach.
6. If creating a user constraint, use the Levels selection to specify the spreadsheet-page
levels for which the constraint should be associated.
7. For both user constraints and base constraints, click the associated check box to make
the constraint read only and/or hidden.
8. For user constraints only, in the Constraint description text field, enter or modify the
description for the constraint.
9. To make more adjustments to the constraint set, return to step 2. After you finish
changing the constraint set, click Apply.

Related Topics
• Constraint Set Customization

Deleting User-Created Constraints


You can delete custom constraints that you added to Constraint Manager. You can do this
constraint-by-constraint or delete all custom constraint definitions at the same time.

Prerequisites
• You must have created one or more custom constraints as described in “Creating or
Modifying Constraints” on page 89.

Procedure
You can do the following things:

• Delete a single custom constraint — Use these steps:


a. From the Edit menu, click Constraint Definitions.
b. From the Constraint Definitions dialog box, use the Page dropdown to select the
spreadsheet page for which you want to delete a user constraint.
c. Using the Constraint dropdown, select the constraint, and then click .

Constraint Manager Users Manual, X-ENTP VX.1.1 91


Overview and Setup
Constraint Set Customization

• Delete all custom constraints — From the Data menu, click Clear All Custom
Constraint Definitions.

Related Topics
• Constraint Set Customization

Constraint Set Propagation to a Team


If working with a team of engineers who need to use the same custom constraint set, you can
share your <WDIR>/user.cns file (for example c:\wdir\EEVX.1\user.cns) with other members
of the team. How you deploy this file depends on the infrastructure of your organization and the
goals you want to accomplish. See below for a few different deployment methodologies.
Generally, the only users who will deploy a user.cns for team use are either a design lead or
administrator.

user.cns Requirements for Remote Server Usage and Project Concurrency


Be aware of the following user.cns requirements if using RSCM:

• Each user machine and the RSCM server machine must have their own writable local
WDIR folder, and the WDIR environment variable for each user machine must include
all corporate WDIR folders listed by the RSCM server machine. The illustration below
depicts these requirements being met in first two environments, but not in the third.

92 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Set Customization

Example 2-3. WDIR Locations

Corporate WDIR folders are shown above in blue text, while local WDIR folders are
shown in black text.
• If a user’s machine has the environment variable RSCM_ENV_CONFIG defined, it is
important to understand that the WDIR definition in the file rscm.env.cfg takes
precedence over their WDIR environment variable. In this case, users must ensure that
the WDIR variable in rscm.env.cfg is the same as the WDIR definition used by the team.
• The administrative user who runs the RSCM service for a design must have write access
to at least one directory specified in the WDIR definition.

Enterprise Methodology
The most efficient way to use the same custom constraint set within a design team relies upon
having a corporate WDIR location to which each user machine points. By placing user.cns in
the corporate WDIR location, each user machine reads from the same custom constraint set.

Caution
Before copying an updated user.cns file into a corporate WDIR folder that is shared by a
design team, ensure that none of the users have Constraint Manager open or are currently
accessing the file.

To use this approach, the WDIR environment variable on each user’s machine must include the
following three paths, and in the following order:

• Writable local WDIR folder (for example, C:\WDIR\EEVX.1).

Constraint Manager Users Manual, X-ENTP VX.1.1 93


Overview and Setup
Constraint Set Customization

• Read-only Corporate WDIR folder (for example, \\common\corp_WDIR_EEVX.1).


• Read-only pointer to <Mentor Graphics install
location>\<version>\SDD_HOME\standard.

Caution
user.cns files are not supported between releases. All user.cns files need to be specific to
a certain release (for example, EE 7.9.5). For more information, refer to “Associating
user.cns Files With a Mentor Graphics Software Release” on page 95.

Based on the unique folder paths in the above items, the WDIR variable would be the following:
C:\WDIR_EEVX.1;\\common\corp_WDIR_EEVX.1;C:\MentorGraphics\EEVX.1\SDD_HOME\
standard

Note
On Windows, if including network paths in your WDIR environment variable, they must
be listed as full network paths (UNC) and cannot be listed as mapped drives.

Using this approach provides the benefits of a corporate environment where various Constraint
Manager users are able to:

• Edit constraint values for base constraints and user constraints concurrently.
• Add their own user-defined constraints while not changing the corporate constraint set.
(Refer to the cautionary statement in “Creating or Modifying Constraints” on page 89
for important information about maintaining access to custom constraints and their
values.)

Caution
Do not define user constraints in a local WDIR folder when using concurrency. User
constraints as defined in a writable local WDIR folder (for example, C:\WDIR_EEVX.1)
are not supported in any way when working in concurrent mode. These constraints and
their values are immediately removed from the database if you access the design in
concurrent mode.

• Maintain separate interface settings and constraint groups for each user.
• Efficiently and accurately benefit from a custom, corporate constraint set.

Small-Group Methodology
Although it is not recommended, if you do not have a corporate WDIR location, you can place
user.cns in a public location and then provide instructions for other team members to copy it
into the WDIR directory on their respective machines.

94 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Constraint Set Customization

Manually managing the deployment and updates to your team’s user.cns file is not an optimal
or efficient approach, and it can easily result in inconsistent constraint sets among your user
base. If you are not yet using a shared WDIR location, now is a great time to include one in your
design environment.

Constraint Sets Based on User Roles


In some cases, you might want to have custom constraint sets for specific user roles. For
example, if you are the constraint administrator for a design project or team, you might want to
grant access to specific constraints to just certain members of the team while hiding them from
the rest of the team, or making them read-only. By default, all Constraint Manager users have
access to all constraints, so reducing accessibility to some key constraints can help to ensure
constraint integrity. In an example case, a constraint administrator could create different
user.cns files and then provide the appropriate user.cns file to each team member based on their
role within the design team.

Related Topics
• Constraint Set Customization

Associating user.cns Files With a Mentor Graphics


Software Release
Because user.cns files are not supported between releases, you need to ensure that each Mentor
Graphics software release that you use has access to its own unique user.cns file or file set for
that release. In the event that your WDIR includes multiple folder locations, the user.cns file in
each location must be specific to a single Mentor Graphics software release.
There are two recommended approaches:

• Store the unique user.cns files for each release somewhere else, and swap them in and
out of your WDIR locations when you change Mentor Graphics software releases.
• Use different WDIR folders for each Mentor Graphics software release.

An Example Scenario
Here is an example WDIR that includes three folder locations and is based on an enterprise
methodology:
C:\WDIR_EEVX.1;\\common\corp_WDIR_EEVX.1;C:\MentorGraphics\EEVX.1\SDD_HOME\
standard

Using the first approach, you would copy two unique user.cns files, each into one location
(C:\WDIR and \\common\corp_WDIR). The first one is the writable user-specific copy. The
second one is the read-only corporate constraint set. You would not need to replace the
..\SDD_HOME\standard file because the SDD_HOME location is always release specific.

Constraint Manager Users Manual, X-ENTP VX.1.1 95


Overview and Setup
Adding Custom Menu Selections to the Tools Menu

Using the second approach, you would not need to replace the two user.cns files because you
would instead have a unique set of WDIR folders for each Mentor Graphics software release.
For example,
C:\WDIR_EEVX.1;\\common\corp_WDIR_EEVX.1;C:\MentorGraphics\EEVX.1\SDD_HOME\
standard. Once again, the SDD_HOME location is always release specific and by nature
unique.

Note
For additional information on this topic, refer to the topic “Automating the License and
WDIR Configurator Settings” in the Managing Mentor Graphics Systems Software
manual.

Related Topics
• Constraint Set Customization

Adding Custom Menu Selections to the Tools


Menu
You can add menu selections to customize the Tools menu. Doing so makes it easier to access
external programs that you use in conjunction with Constraint Manager, or as part of your
constraint-driven design flow. Menu selections that you add to the tool are appended to the
bottom of the preexisting Tools menu selections. Any ordering changes or deletions that you
make cannot include the standard menu selections.

Procedure
1. From the Tools menu, click Customize.
2. From the Customize dialog box, click New, and then complete the following fields:
• Menu Text — The display name you want to associate with the custom menu
selection.
• Command — The executable file to run when the custom menu selection is clicked.
To specify the command, click the browse button, navigate to the appropriate folder
and filename, and then click Open.
• Arguments — (Optional) An argument string to append to the command. Your
argument string can also include the following variables:
o {CESDir} – Constraint Manager directory of the active project.
o {ProjectDir} – Top-level directory of the active project.
o {ProjectFile} – Filename of the .prj for the active project.

96 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Customizing Command Shortcut Keys

• Initial Directory — (Optional) A directory to use other than the current working
directory. This is useful when the command will generate run-time files that need to
be stored in a different location. To specify an initial directory, click the browse
button, navigate to the appropriate folder, and then click OK.
3. (Optional) You can do any of the following things:
• To edit an existing custom menu selection, in the Menu Contents list box, click the
appropriate row, and then modify any of the fields described in step 2 of this
procedure.
• To change the order of a custom menu selection, in the Menu Contents list box, click
the appropriate row, and then click Move Up or Move Down.
• To delete a custom menu selection, in the Menu Contents list box, click the
appropriate row, and then click Remove.
4. After you finish adding custom menu selections or modifying existing custom menu
selections, click OK.

Results
The bottom of the Tools menu is updated to reflect your changes.

Related Topics
• Overview and Setup

Customizing Command Shortcut Keys


You can customize command shortcut keys to associate key combinations with commands that
do not already have them, change existing key combinations, and assign multiple shortcut
combinations to a single command. For example, if Constraint Manager does not include what
you consider to be an intuitive shortcut combination for a command, you can remove the
existing command, and then define your own shortcut combination. The alternative is to simply
add an additional shortcut combination that you consider to be more intuitive; in other words,
easier to remember.

Prerequisites
• To execute and test the accessibility of some Constraint Manager commands through
shortcut combinations, you must have a design loaded in order to access all
functionality.

Procedure
1. From the Constraint Manager Setup menu, click Shortcuts.

Constraint Manager Users Manual, X-ENTP VX.1.1 97


Overview and Setup
Default Keyboard Shortcuts Provided With Constraint Manager

2. From the Customize dialog box, in the list box of Commands, click to select a
command, and then do any of the following things:
• Create a shortcut — Click New, and then do the following things:
i. When the New Shortcut dialog box appears, key-in the combination you would
like to use. It can consist of Ctrl, Shift, Alt, and then a letter key, number key, or
F# key (for example, Ctrl+Shift+Alt+F8).
ii. After you finish pressing the appropriate shortcut key combination, visually
verify that it is correct, and then click OK.
• Delete a shortcut — In the Current shortcuts list box, click a shortcut, and then
click Remove.
3. (Optional) To remove all user-defined shortcuts and reset the list of shortcuts to just the
defaults, click Remove All.
4. After you finish adding, modifying, or deleting shortcut combinations, click OK. In the
event that you made changes that you do not want to keep, click Cancel.

Results
Your additions, removals, and changes to key combinations are now stored. You can now use
them to access Constraint Manager commands.

Related Topics
• Overview and Setup

Default Keyboard Shortcuts Provided With


Constraint Manager
Refer to the table below for the list of all keyboard shortcuts that are provided with Constraint
Manager. The table is ordered with respect to the layout of the tool’s menu system. Commands
that do not have menu selections are listed at the end of the table.

Table 2-3. Constraint Manager Keyboard Shortcuts


Menu Command/Command Default Shortcut(s)
File > Open Project Ctrl+O
File > Print Ctrl+P
File > Import > Constraints Ctrl+I
File > Export > Constraints Ctrl+E
Edit > Undo Ctrl+Z
Alt+Backspace

98 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Selecting or Creating Valor NPI Design Centers

Table 2-3. Constraint Manager Keyboard Shortcuts


Menu Command/Command Default Shortcut(s)
Edit > Redo Ctrl+Y
Edit > Cut Ctrl+X
Shift+Delete
Edit > Copy Ctrl+C
Ctrl+Insert
Edit > Paste Ctrl+V
Shift+Insert
Edit > Find Ctrl+F
Help F1
Display constraint help Shift+F1
Find phrase F3
Zoom full F6
Zoom in F7
Zoom out F8

Related Topics
• “Overview and Setup” on page 55

Selecting or Creating Valor NPI Design


Centers
You can select from available Valor NPI design centers to choose the one that your layout tool
uses when you launch Valor NPI to perform analysis. A design center is a Valor NPI feature
that defines the rule set used during design for manufacturing analysis. If you need to make a
new design center, you can create one.
In addition to selecting a design center, you can also specify a checklist. You can do this
whether you choose a design center or not. Each design center provides you with the ability to
choose from unique checklists for that specific design center. The default checklists are
available if you do not specify a design center.

Note
It is important to understand that by default, design centers that you or other team
members create cannot be shared. In order to share them, you must configure your Valor
NPI environment in a specific way to support this usage. For more information, refer to
“Sharing Valor NPI Design Centers Among Team Members” on page 100.

Constraint Manager Users Manual, X-ENTP VX.1.1 99


Overview and Setup
Sharing Valor NPI Design Centers Among Team Members

Prerequisites
• Valor NPI is installed and part of your design environment.
• If selecting a design center, at least one must already be available.

Procedure
From the Tools menu, click Valor NPI, and then click one of the following menu selections:

• Select Design Center — From the dialog box, use the dropdown to select the design
center or checklist you want to use (or both), and then click OK.

Tip: To clear the active design center or checklist, choose the blank row for either field.

• Create Design Center — From the dialog box, type a name for the new design center,
and then click OK. Complete the steps in the Design Process Wizard.

Note
If you choose to create a new design center, you may first be presented with the Valor
License Configuration dialog box. From here, you can verify the selection and ordering
of licenses. To keep this dialog box from showing again, activate the appropriate
checkbox.

Results
Depending on how you chose to use the above procedure, you either created a new design
center or selected an existing design center, checklist, or both. If you chose a design center or
checklist, the Constraint Manager status bar is updated to indicate that you are using Valor NPI.

Related Topics
• Overview and Setup

Sharing Valor NPI Design Centers Among


Team Members
By default, users create their own design centers. If using Valor NPI as part of a team
environment, you may want to share a set of design centers among a group of team members.

100 Constraint Manager Users Manual, X-ENTP VX.1.1


Overview and Setup
Sharing Valor NPI Design Centers Among Team Members

Doing so ensures that everyone is using the exact same set of design centers when this is
preferable.

Prerequisites
• Your team uses Valor NPI as part of their design flow.

Procedure
1. The team needs to decide upon a network location for the shared design centers (for
example, Z:\shared_design_centers). Refer to the Valor NPI documentation for details
about how to choose a location for your design centers.
2. All users who want to be part of the share must ensure that their VALOR_ENV_FILE
environment variable points to the proper folder that contains the env file. Constraint
Manager reads the VALOR_DIR variable in that env file to find the folder that contains
the design centers.

Results
The design team now uses a shared network location for all design centers. Any team member
who is configured this way can create, modify, and select from the shared set of design centers.
Typically, the user who sets up the shared space is responsible for creating the set of design
centers.

Related Topics
• Overview and Setup

Constraint Manager Users Manual, X-ENTP VX.1.1 101


Overview and Setup
Sharing Valor NPI Design Centers Among Team Members

102 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 3
Constraint Spreadsheet Usage

In Constraint Manager, spreadsheets are the primary interface for entry and modification of
constraint values. This section provides information on displaying and navigating spreadsheets
pages, filtering and searching for constraints, working concurrently with other users on the
same constraint set, and much more.
Constraint Definition Through Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Searching for Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Filtering Spreadsheet Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Resetting a Spreadsheet to its Default View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Constraint Group Creation and Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Concurrent Constraint Entry With Other Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Constraint Value Commenting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Viewing Constraint Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Viewing Design Statistics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Checking Constraints Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Checking Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Validating PCB Actuals Against Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Update of Electrical Net Data and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Painting Rules to Reuse Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Rolling Back and Undoing All Constraint Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Viewing and Reverting to Parent Cell Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Saving Constraint Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Constraint Definition Through Spreadsheet


Pages
The Constraint Manager interface for entry and modification of constraint data is a spreadsheet
that is separated in to pages. Each page corresponds to specific types of constraint data. The
constraints located on some spreadsheet pages are further groupable by listing only a pre-
defined subset of a constraint set. This makes it easier to isolate the set of constraints you want
to modify.

Constraint Manager Users Manual, X-ENTP VX.1.1 103


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Note
As you work with constraints on each spreadsheet page, you will notice that a small
amount of constraints are listed on multiple pages. Changing a constraint value on any
page that includes it results in the change appearing on each page.

While entering or modifying the data on each of these pages, you can search for net and
constraint data, filter data, sort data, and validate constraints against actuals that were produced
during routing. Nets assigned to the classes you define here will obey associated constraints
during interactive routing.

Overview of Constraint Hierarchy and Overrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104


Organization of Constraints Into Pages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Spreadsheet Page Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Spreadsheet Icons Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Resizing Spreadsheet Columns and Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Zooming the Display of Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Expanding and Collapsing Spreadsheet Rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Sorting Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Deletion of Constraint Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Sorting Spreadsheet Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Constraint Value Copy-and-Paste Between Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Overview of Constraint Hierarchy and Overrides


Constraint Manager uses hierarchy extensively for two main purposes. The first is to organize
and maintain relationships between different types of objects. For example, pins on a part, or
nets in a differential pair. The tool attempts to maintain the important relationships between
constraint objects and values, especially those used by other tools (such as your layout
software).
The other purpose is to provide a convenient way to group objects (nets, for example) into
classes that share the same constraints. This grouping gives you the ability to define constraints
once for an entire group. Another example usage of classes could be to group nets that are the
same type. Overall, hierarchical grouping gives you the ability to organize your design data and
make your job easier.

For example, by grouping 32 bus nets into the same constraint class, you can quickly assign a
single constraint value to the class (for example, # Vias Max (maximum number of vias))
instead of manually assigning the same value to each of the 32 nets. When you need to deviate
from a constraint class value, you can enter an override value into one or more net rows while
maintaining the class value for all other nets in the class.

104 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

To help make it clear that constraint values under a hierarchical object have overrides,
Constraint Manager can highlight the background of parent-level cells. To turn on this type of
highlighting, refer to “Procedure” on page 72. In the following illustration, you can see that
although the constraint class row defines # Vias Max as 10 for each net row, DCON3 and
DCON4 have overrides that replace the parent value. Cell highlighting at the parent level
indicates that there are one or more overrides at the child level.

Example 3-1. Overrides at the Net Level

In the above illustration, yellow is used to highlight parent overrides. To set the background
color, refer to “Setting Fonts and Colors” on page 74. In addition to choosing this highlighting
color, you can review and modify the overall color scheme Constraint Manager uses to
highlight constraint violations like errors and cautions. These are just a couple examples of how
the tool uses cell highlighting to indicate data conditions.

Blank Cells at the Constraint Class Level are not Considered When
Determining Overrides
An override is defined as a value that is different from a value at a higher level of hierarchy.
When moving a net into a different constraint class, Constraint Manager does not consider an
empty or blank constraint class level cell as a value when determining if there is an override in
its hierarchy.

For example, you have a net that defines # Vias Max at the net level. You then move the net into
a constraint class that has a blank entry for this constraint. Doing so will preserve # Vias Max at
the net level when you instruct the tool to change the old value. This is because the blank entry
is not viewed as a value. Therefore, the net level value is not an override.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Constraint Manager Users Manual, X-ENTP VX.1.1 105


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Choosing From Among Change Impact Actions


Constraint Manager should not change your data without you being warned about it. For this
reason, you are either prompted or presented with a warning dialog box. Depending on how you
have the tool configured, you can disable the warning dialog box.
The purpose of the warning dialog box is to alert you to the hierarchical impact of changing a
parent constraint value. As explained in “Overview of Constraint Hierarchy and Overrides” on
page 104, parent and child objects are linked for the purpose of quickly and accurately defining
constraints and values for groups of nets through constraint classes, net classes, and other
parent/child object relationships.

Whether you have a parent object expanded or collapsed in the spreadsheet, overrides in a child
object are always identified when you attempt to change a value at the parent-constraint level.
Constraint Manager propagates the new value (or not) based on how you have it configured. In
some cases, the tool will not propagate the new value due to the requirement of a specific rule.
For a list of these, refer to “Required Propagation Rules That Constraint Manager Maintains” on
page 108.

Constraint Manager brings up this warning dialog box when all of the following conditions are
met:

• Your setting for the Change Impact Dialog is not set to “Always prompt user for all
values.”
• You have not already enabled the “Don’t ask me again in this session” checkbox in the
warning dialog box.
• You are changing more data than what you typed in.
When you are presented with this warning dialog box, to go ahead with the change based on
your settings, click OK. To instead not make the change, click Cancel.

Caution
The primary purpose of this warning dialog box is to make you aware that a value you are
changing has hierarchical impact. The secondary purpose is to let you know that a
Constraint Manager setting controls how overrides are handled. To modify the Change
Impact Dialog setting, refer to “Procedure” on page 73.

For example, you have a constraint class that defines # Vias Max as 3. Out of the five nets in the
constraint class, you define this constraint as 5 for two of them. A change to the value at the
constraint-class level would cause the tool to use this setting to determine whether you still want
to keep the override value of 5 for the two nets that use the value.

106 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Figure 3-1. Constraint Class With Two Constraint Overrides

Choices regarding hierarchical propagation are not limited to net classes and constraint classes.
Any parent/child relationships that include overrides at the child level will cause Constraint
Manager to use the Change Impact Dialog setting when you attempt to change a parent value.

In the example illustration below, an electrical net has an override at the physical net level for
Length or TOF Delay Min.

Figure 3-2. Electrical Net Constraint Override at Physical Net Level

Changing the electrical net value for this constraint would cause the Change Impact Dialog
setting to be used. Depending on how you have Constraint Manager configured, the override
value for physical net DCONN24 would either be kept, replaced, or you would instead be
prompted for the action to take.

Prerequisites
• The procedure below is only valid when the Change Impact Prompt dialog box has been
displayed automatically by Constraint Manager. This is because you have the tool
configured to give you the ability to choose which child values will take on the new
parent value. To modify this setting, refer to “Procedure” on page 73.

Constraint Manager Users Manual, X-ENTP VX.1.1 107


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Procedure
1. From the Change Impact Prompt dialog box, for each child object, select from one of the
following actions:
• Change to new value — Replace the child value with the new parent value.
• Keep current value — Retain the child value.
2. Click OK:
Notes:
• To use the selected action for all child objects that are left, click to activate the
following checkbox: “Do this for all remaining constraints”
• As you are using the Change Impact Prompt dialog box, you can stop reviewing or
changing values by clicking Exit at any time. Doing so retains any changes that you
have made thus far, but skips any child objects that remain.

Results
Values for each child object are retained or replaced, respectively.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Required Propagation Rules That Constraint


Manager Maintains
There are some cases where the Change Impact dialog box setting is irrelevant. This is due to
object and constraint relationships that Constraint Manager must maintain in order for certain
aspects of the constraint set to be valid.
Refer to the following list of required rules and their explanations:

• Net Class value for differential pairs and electrical nets — This value must be the
same for physical nets that are part of an electrical net, electrical nets that are part of a
differential pair, and the differential pair. Constraint Manager maintains this relationship
on the Nets page and Constraint Templates page.
Exception: There is an exception to this rule when an electrical net contains multiple
physical nets. In this case, each physical net can have a different Net Class value from
the electrical net and differential pair.
• Template value for differential pairs — The constraint template assigned to a
differential pair is also assigned at the electrical net level. Constraint Manager maintains
this relationship on the Nets page.

108 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

• Topology Type value for differential pairs and electrical nets — This value must be
the same for physical nets that are part of an electrical net, electrical nets that are part of
a differential pair, and the differential pair. Constraint Manager maintains this
relationship on the Nets page.
Exception: There is an exception to this rule when an electrical net contains multiple
physical nets. In this case, each physical net can have a different Topology Type value
from the electrical net and differential pair.
• Length or TOF Delay Type value for differential pairs and electrical nets — This
value must be the same for physical nets that are part of an electrical net, electrical nets
that are part of a differential pair, and the differential pair. Constraint Manager maintains
this relationship on the Nets page and Constraint Templates page.
• Length or TOF Delay Match value for differential pairs — This value must be the
same for electrical nets that are part of a differential pair, and at the differential pair
level. Constraint Manager maintains this relationship on the Nets page and Constraint
Templates page.
• Trace Width Minimum, Typical, and Expansion values — Constraint Manager
enforces mathematical relationships among these constraints. For example, Minimum
cannot be greater than Typical, and Expansion cannot be less than Typical.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Organization of Constraints Into Pages


Constraint data is organized into spreadsheet pages to group constraints by type.
Here is a description of each spreadsheet page:

• Trace and Via Properties — Board-layer transmission constraints like Via


Assignments, Routing, and Trace Width.
• Clearances — Same-layer clearance constraints like Trace to Trace, Trace to Pad, and
Pad to Via.
• Z-Axis Clearances — Adjacent-layer clearance constraints like Trace to Trace, Trace
to Pad, Trace to Via, Trace to Plane, and Trace to SMD Pad.
• Nets — This spreadsheet page contains the largest number of constraints, which fall into
the following categories:
o Delays and Lengths — Time of flight (TOF) delay or length constraints like Type,
Minimum, Maximum, Match, Tolerance, and Formulas.
o Differential Pair Properties — Differential pair constraints like Convergence
Distance Tolerance, Distance to Convergence, and Separation Distance.

Constraint Manager Users Manual, X-ENTP VX.1.1 109


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

o I/O — FPGA constraints like I/O Standard.


o Net Properties — General net constraints like Analog, Bus, Net Class, Number of
Pins, and Topology Type.
o Overshoot/Ringback — Signal reflection constraints like Simulation Class, Static
and Dynamic Low and High Overshoot, High and Low Ringback, and Monotonic
Edge.
o Power Nets — Power-supply net constraints like Supply Voltage.
o Simulated Delays — Edge-rate delay constraints like Simulated Delay Type,
Minimum, Maximum, and Maximum Range.
o Template — Net template constraints like Name and Status.
• Parts — Component constraints.
• Parts — Component constraints are grouped into the following categories:
o Thermal — HyperLynx Thermal constraints like Thermal Power Dissipation and
Thermal Junction Temperature.
• Noise Rules — Neighboring-net constraints like Noise Type, Constraint Class or
Electrical Net Name From and To, Parallelism Rule, and Crosstalk Max.
• Constraint Templates — Superset of constraints that includes many of those from each
spreadsheet page for reuse as intellectual property for other nets and designs. For more
information, refer to “Constraint Template Creation and Reuse” on page 279.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Spreadsheet Page Selection


You can select the active spreadsheet page in a variety of ways. In addition, using the Filters -
Groups toolbar, you can choose to filter a spreadsheet to display just a certain constraint group.
For example, you can temporarily display just differential pair constraints on the Nets page. By
doing so, you can more easily focus on the constraints related to differential pairs.
Selecting a Spreadsheet Page Using the Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Selecting a Spreadsheet Page Using the Navigator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Displaying Only Specific Constraint Types on a Spreadsheet Page . . . . . . . . . . . . . . . . 112
Displaying All Constraint Types on a Spreadsheet Page . . . . . . . . . . . . . . . . . . . . . . . . . 112

Selecting a Spreadsheet Page Using the Tabs


The Constraint Manager spreadsheet shows a tab for each spreadsheet page.

110 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Here are some tips for customizing and using the display of spreadsheet tabs, which in turn give
you access to individual spreadsheet pages:

• Constraint Manager gives you the ability to display just certain tabs so that you can
show and hide tabs as needed. To do so, right-click the listing of tabs, and then click to
show or hide specific tabs. You can also click to show All Tabs, or click to show just
Default Tabs.
• If you can not see all spreadsheet tabs, use the arrow buttons to scroll through the tabs
(when this setting is enabled). You can also resize the right edge of the tab listing to
increase or decrease the amount of space used to display the tabs.

Procedure
At the bottom of the spreadsheet pane, click a spreadsheet tab.

Figure 3-3. Selected Spreadsheet Page: Z-Axis Clearances

Related Topics
• Spreadsheet Page Selection

Selecting a Spreadsheet Page Using the Navigator


You can click within the Navigator to select among the different spreadsheet pages that are
available in Constraint Manager. For example, after clicking Constraint Classes, the Nets page
becomes active.
Clicking further into the hierarchy in the Navigator limits the display to a specific object in the
relevant spreadsheet. For example, if you click a specific constraint class in the Navigator, the
Nets spreadsheet displays just that constraint class and its nets. This type of row limiting occurs
for each object type (for example, schemes and net classes).

Tip: Constraint Manager gives you the ability to display just certain nodes of the
Navigator so that you can show and hide nodes as needed. To do so, right-click within the
whitespace of the Navigator, and then from the listing of nodes, click to show or hide
specific nodes. You can also click to show All Nodes, or click to show just Default
Nodes.

Procedure
Click within the hierarchy of the Navigator to view the most relevant spreadsheet page.

Constraint Manager Users Manual, X-ENTP VX.1.1 111


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Related Topics
• Spreadsheet Page Selection

Displaying Only Specific Constraint Types on a


Spreadsheet Page
Use this procedure if you want to focus on a specific subset of constraints on a spreadsheet
page.

Procedure
You can do this in any of the following ways:

• At the top of a spreadsheet page, click the Filters - Groups toolbar dropdown (also
known as “Constraint Groups”) and then select a constraint type.
• Right-click within a spreadsheet page, click Group, and then click the constraint type.
For example, to display just net property type constraints of the Nets spreadsheet page, click the
Filters - Groups toolbar dropdown, and then click Net Properties.

Related Topics
• Spreadsheet Page Selection

Displaying All Constraint Types on a Spreadsheet Page


After you restricted a spreadsheet page to show a certain subset of the total constraints, you can
return to the view to default display, which is all constraints.

Procedure
You can do this in any of the following ways:

• Click the Filters - Groups toolbar dropdown, and then click All.
• Right-click within a spreadsheet page, click Group, and then click All.

Related Topics
• Spreadsheet Page Selection

Spreadsheet Icons Overview


As you work with the Constraint Manager spreadsheet, you will notice that each row includes
an icon. Each icon indicates a different type of design object. Icons are provided to make
design-object identification clear and efficient. For example, you can easily distinguish between

112 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

electrical and physical nets based on the icon beside a row on the Nets page of the spreadsheet.
Use the following table to determine the type of design object that is represented by each icon.

Table 3-1. Design Object and Spreadsheet Icon Correlation


Design Object Spreadsheet Icon
Board layer
Clearance rule
Component
Component instance
Constraint class
Constraint template
Differential pair
Electrical net
From-to
Net class
Physical net
Pin
Pin pair
Power net
Rule-area scheme
Z-axis clearance rule

Note
Electrical nets that include two or more physical nets are indicated as such on the Nets
page of the Constraint Manager spreadsheet. A ^^^ suffix is added to the end of the net
name as it appears in the first column (Constraint Class/Net/*).

Related Topics
• Constraint Definition Through Spreadsheet Pages

Resizing Spreadsheet Columns and Rows


As you work with constraint data, you may find it useful to resize specific columns or rows. For
example, reducing the size of a column provides more display room for other columns on the
same spreadsheet page. Increasing the size of a column provides more display room for the
content in that column.

Constraint Manager Users Manual, X-ENTP VX.1.1 113


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Prerequisites
• To resize rows, the leftmost column of the Constraint Manager Spreadsheet must be
displayed. It is shown automatically when you enable cross probing (Setup > Cross
Probing), or when you have row numbering turned on (Setup > Settings > Display >
“Show rows numbering”).

Procedure
1. In the columns heading of a spreadsheet, or the leftmost cell of a spreadsheet row, hover
your mouse over the vertical or horizontal separation between cells until the mouse icon
changes to the resize icon.

Figure 3-4. Row and Column Resizing

2. Click and hold and then drag to increase or reduce the size of the column or row.
3. After resizing the column or row, release the mouse button.

Note
To reset the columns or rows on a spreadsheet page to their default widths or heights,
from the View menu, click Reset Column Widths or Reset Column Heights.

Results
Your display changes are available now and in future Constraint Manager sessions.

114 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Related Topics
• Constraint Definition Through Spreadsheet Pages

Zooming the Display of Spreadsheet Pages


You can increase and decrease the magnification level of spreadsheet pages. Because each
spreadsheet page stores its own zoom level, you can customize the magnification level of
specific pages for your unique display purposes.

Tip: To quickly set the same magnification level for all spreadsheet pages, use the Setup
> Settings menu selection. Using the Initial Zoom Level option, you can globally control
the initial spreadsheet magnification level.

Procedure
For the active spreadsheet page, do one of the following:

• To increase magnification, press F7.


• To decrease magnification, press F8.
• To set magnification to 100%, press F6.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Expanding and Collapsing Spreadsheet Rows


You can expand and collapse the available rows on a spreadsheet page. You can expand or
collapse just the selected rows, all rows, or a single row.

Procedure
You can do the following things:

• Expand or collapse a single spreadsheet row — Click the + or - symbol to the left of
the row.
• Expand multiple spreadsheet rows — Use the following steps:
a. When you want to expand only specific rows, use Ctrl-click to select each row that is
preceded with a + symbol.
b. From the View menu, do one of the following things:
o To expand selected rows, click Expand, and then click Selected.

Constraint Manager Users Manual, X-ENTP VX.1.1 115


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

o To expand all rows, click Expand, and then click All.


• Collapse multiple spreadsheet rows — Use the following steps:
a. When you want to collapse only specific rows, use Ctrl-click to select each row that
is preceded with a - symbol.
b. From the View menu, do one of the following things:
o To collapse selected rows, click Collapse, and then click Selected.
o To collapse all rows, click Collapse, and then click All.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Sorting Spreadsheet Pages


You can sort nets and objects listed on a spreadsheet page in both ascending and descending
order. Because this function is based on spreadsheet context, a sort will include all or most child
rows, or just the parent rows. For example, sorting from the Clearances page does not affect the
order of board layers.

Procedure
With the spreadsheet page that you want to sort as the active page, perform one of the following
actions:

• To sort in ascending order, from the Sort toolbar, click .


• To sort in descending order, from the Sort toolbar, click .

Tip: You can also right-click within the spreadsheet, click Sort, and then click
Ascending or Descending.

Related Topics
• Constraint Definition Through Spreadsheet Pages

Deletion of Constraint Values


You can delete constraint values at both the constraint level and the object level. When deleting
values at the constraint level, you select individual constraint cells that you previously defined
but want to clear. When deleting values at the object level, you delete the entire set of
constraints for a given object and all child-member objects that are part of the top-level object.
Deleting Constraint Values at the Constraint Level. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

116 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Deleting Constraint Values at the Object or Design Level . . . . . . . . . . . . . . . . . . . . . . . 117

Deleting Constraint Values at the Constraint Level


When you want to delete one or more constraint values at the cell level, Constraint Manager
gives you the ability to do so through both the keyboard and the mouse. Refer to the following
procedure for deletion of constraint values at this level.

Procedure
1. From the Constraint Manager spreadsheet, click a constraint cell to select the value for
deletion.
Tip: To select multiple constraint values, use Ctrl-click and Shift-click.
2. Press the Delete key; or, right-click, and then click Delete.

Results
One or more constraint cells are now empty or reset to their default value (when one exists).

Related Topics
• Deletion of Constraint Values

Deleting Constraint Values at the Object or Design Level


You can delete constraint values at the object level to quickly empty the set of defined
constraints for a net, constraint class, net class, or even your entire design. For example, after
making many erroneous constraint modifications to a net, you can quickly clear the new
constraint values using the appropriate procedure below.
When deleting constraint values at the object level, it is important to understand that all
removable constraints within the object’s hierarchy are cleared. For instance, clearing a
constraint class results in deleting all constraint values for each net within the constraint class.
This is in addition to any constraints defined at the constraint-class level.

When you delete constraint values at the object level, any default constraint values are not
cleared. This method of deletion is often times thought of as a way to easily “reset” a net or
design object.

Prerequisites
• When your goal is to clear all constraint values within a design:
o You must be running a Constraint Manager session launched from the front-end
design system.
o Your invocation of Constraint Manager must be the only session.

Constraint Manager Users Manual, X-ENTP VX.1.1 117


Constraint Spreadsheet Usage
Constraint Definition Through Spreadsheet Pages

Procedure
Refer to one of the following procedures based on the object you want to clear:

• Clear all constraints from a design object — Complete the following steps:
a. From the leftmost column of the Constraint Manager spreadsheet, right-click a
design object, and then click Clear Constraints.
b. From the message box that appears, optionally activate one or more checkboxes,
when appropriate, and then click Yes.
• Clear all constraints from a design — Complete the following steps:
a. From the Data menu, click Clear All Constraints.
b. From the confirmation dialog box that appears, note the location of the design
backup that will be created, and then click Yes only if you are sure you want to clear
all user-defined constraints from the design.

Results
• All non-default constraint values for an object (and its children object) or a design, are
deleted.
• You can restore all constraint values to their previous state after clearing them through
use of the Data > Clear All Constraints command. Generally speaking, you would
only do this after having cleared all constraints in error. To do so, from the Tools menu,
click iCDB Project Backup.

Related Topics
• Deletion of Constraint Values

Constraint Value Copy-and-Paste Between


Sessions
If you have multiple invocations of Constraint Manager loaded at the same time, you can copy
and paste spreadsheet values displayed in one invocation to the same spreadsheet of one or
more other invocations.
Because the tool does not restrict the cells between which you can copy and paste, it is
important to make sure that you select identical cells of the appropriate spreadsheet page. You
can use the copy and paste functionality on all spreadsheet pages. It is important to note that the
functionality is not available for use within tables and cells of dialog boxes.

Related Topics
• Constraint Definition Through Spreadsheet Pages

118 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Searching for Constraints

Searching for Constraints


You can search for data within spreadsheet pages to locate specific nets or select multiple nets
to perform operations on groups of nets. By doing so, you can quickly find or select specific
nets within large, complex design structures. You can also search spreadsheets for constraint
data.
When searching for specific nets, you can step through the list of all nets based upon the search
criteria you provide. When selecting multiple nets, you can filter the display of Constraint
Manager data based upon a net-name or constraint-value criterion.

Tip: To quickly search for the first occurrence of any text string, from the Find toolbar,
enter the text string into the text box, and then click the button to the left. To find the next
occurrence, click the search button again.

Procedure
1. From the Edit menu, click Find; or, from the Find toolbar, click .
2. From the Find dialog box in the “Find what” field, enter the text you want to find.
Example: To find and step through all nets of the form /N$2050 - /N$2059, use
/N$205? as your search string. To find and step through all nets that begin with /N$2,
enter /N$2*. Note that this is not a regular-expression search example.
3. Specify the direction in which you want to search by selecting Forward or Backward.
4. To view additional search preferences, click More, and then use the following options:
• To search a page other than the current page, click the Page dropdown, and then
click to specify your search scope.
• To search sequentially by rows or columns, click the Search dropdown, and then
click to specify the direction.
• To search constraint values, or constraint comments, click the Look In dropdown,
and then click to specify the appropriate criterion.
• To match the exact capitalization or case sensitivity of the search string, click to
enable Match Case.
• To find only full matches and not partial ones (for example, you do not want
searches for “100” to find “1000” and “10000”), click to enable Match entire cell.
• To search using regular expressions, click to enable Use regular expressions, but
keep the following in mind:
o Standard wildcard characters (for example, * and ?) behave much differently in
that they include matching--or not--to the preceding character. For example, a

Constraint Manager Users Manual, X-ENTP VX.1.1 119


Constraint Spreadsheet Usage
Filtering Spreadsheet Data

regular expression search for “n*t” would match “at”, “nt”, “net”, “about”, and
many other words that begin with any character and end with “t”. Conversely, a
regular expression search for “n?t” would only match “at”, “nt” and “net” of the
results of the above asterisk example.
o * matches 0 or more of the preceding character, not just any character unless you
precede it with the period character (“.”).
o ? matches 0 or 1 of the preceding expression.
o There are additional wildcard characters that you can use.
o You can search using ranges of characters.
o For more information about using regular expressions properly, refer to the
wealth of information available on the internet or in dedicated textbooks.
• To enable searching of spreadsheet rows that are currently not expanded, click to
enable Drill-down searching.
5. After you finish configuring your search, click Find Next or Find All.
• When you search with Find Next, the first relevant cell is highlighted. To find the
next cell that matches your criteria, click Find Next again.
• When you search with Find All, Constraint Manager augments the dialog box to
show a table of all matching cells. You can cross probe between the table of search
results and the spreadsheet by clicking a cell in the results table.

Related Topics
• Constraint Spreadsheet Usage

Filtering Spreadsheet Data


Unlike search, when you filter a spreadsheet page the display of data rows is restricted to just
those that match the string criteria. After you perform an initial filter, you can further restrict the
display of data rows by cumulatively filtering the remaining data rows. After you finish
working with a subset of nets, you can reset the spreadsheet page to display all data rows.
Filtering is useful when you want to focus on a specific group of data rows without worrying
about modifying constraint data on rows that do not apply to a specific subset. For example, by
filtering data rows on the Nets spreadsheet page, you can display only those rows that
correspond to just the nets that comprise a data bus. With this view, it is easy to make sure that
your constraint modifications are restricted to just those bus nets.

It is also common to use filtering as a precursor to assigning nets to classes. By restricting the
spreadsheet to only the nets that match a filter string, you can quickly select a group of nets
without having to select around other nets.

120 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Filtering Spreadsheet Data

Note
Constraint Manager filters just spreadsheet rows that are expanded. To filter all rows of a
spreadsheet page, from the Filters menu, click to enable Drill-down Filtering.

Procedure
1. From the Filters menu, click Enabled.
Alternative: With the Filters - Main toolbar enabled (View > Toolbars > Filters -
Main), from it, click .
Note: Make sure that Filter mode is now on. When it is, the Constraint Manager
spreadsheet is augmented to include an additional row at the top for entering the filter
string.
2. In the column for which you want to filter spreadsheet data, click the dropdown in the
filter cell, and then perform one of the following tasks:
• Use a default filter — Select from among Sort Ascending, Sort Descending, (All),
(All Non Empty), and (All Non Default).
• Create a custom filter — Click (Custom...), and then perform the following steps:
i. From the Custom Autofilter dialog box, click the dropdown in the box to the left,
and then click to specify how the custom filter will apply to the filter string you
use.
ii. In the box to the right, enter the filter string you want to use.
iii. For additional filtering options, click the More button, and then specify any of
the following options:
- To match case sensitivity, click to enable Match case.
- To toggle cumulative mode filtering, click the appropriate check box.
- To toggle filtering of non-expanded spreadsheet rows, click Drill-down
filtering.
- To instead use a regular expression, click to enable the appropriate check box,
and then enter the regular expression you want to use.
iv. After you finish configuring your filter, click Apply.
3. To reduce the display of spreadsheet data (rows) by adding another column criterion,
return to step 2. You can also filter a column more. For example, after filtering the Nets
spreadsheet Constraint Class/Net/* column to display a subset of rows based upon net
name, you can cumulatively filter the subset by net name again.

Constraint Manager Users Manual, X-ENTP VX.1.1 121


Constraint Spreadsheet Usage
Filtering the Spreadsheet by Row Type

Rule: You must enable cumulative mode before you can filter using additional criteria.
To do so, from the Filters menu, click Cumulative Mode. As a result, the Cumulative
Mode menu item includes a check mark.

Tip: If you filter out the parent row of an object (for example, the constraint class row of
an electrical net), but need to re-enable it, you can do so by right-clicking the child row,
and then clicking Show Parent.

Examples
Example of Filtering the Nets Page to Display Only Electrical Nets (^^^)
In this example, you are interested in displaying only true electrical nets on the Nets spreadsheet
page to focus your current constraint definition task. Net names can often times be quite long.
Because the true electrical net identifier is appended to the end of a net name (^^^), filtering to
display just these nets ensures that you are working on only electrical nets. This is without
having to expand the column width of the Constraint Class/Net/* column to verify the existence
of the true electrical net identifier.

Use these steps:

1. With the Nets spreadsheet page active, expand the constraint class that you want to work
in.
2. With filtering enabled, in the filter row of the Constraint Class/Net/* column, click the
filtering dropdown, and then click (Custom...).
3. In the Custom Autofilter dialog box, set the filter to equals, and then in the box to the
right, enter the following: *^^^
4. After you finish setting the custom filter, click Apply.
Result: The spreadsheet is reduced to display just electrical nets that are part of the (All)
constraint class.

Related Topics
• Constraint Spreadsheet Usage

Filtering the Spreadsheet by Row Type


When working on spreadsheet pages, you can specify the row types that Constraint Manager
displays. For example, when the active spreadsheet page is Parts, you can choose to display
only a subset of data rows based on what you want to see (part pins, components, and/or
components pins). It is important to note that each spreadsheet page has one or more default row
types that are always enabled (for example, the constraint classes row of the Nets page is always
displayed).

122 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Filtering the Spreadsheet by Row Type

Figure 3-5. Filters - Levels Toolbar Showing Parts Page Selections

The above illustration shows the Filters - Levels toolbar from the perspective of the Parts
spreadsheet page being active. The toolbar changes the display of active buttons depending on
the spreadsheet page you are on. As you can see above, all four of the parts selections (on the
right) are enabled. A blue box around each active row type indicates this state.

Procedure
You can do this in the following ways:

• With a specific spreadsheet page active, from the Filters menu, click Levels, and then
click to choose the row types you want to display.
Example: To filter the Parts spreadsheet page to include part pin rows, with the Parts
page active, from the Filter menu, click Levels, and then click to turn on Part Pin.
• With the Filters - Levels toolbar enabled (View > Toolbars > Filters - Levels), from it,
click a button to toggle the display of a specific row type. Those that are active have an
outline box around them.
• With the Filters - Main toolbar enabled (View > Toolbars > Filters - Main), from it,
click . From the Filter Levels dialog box, click to toggle the levels that you want to
display, and then click Apply.

Results
The spreadsheet shows only certain rows (this includes rows that you cannot toggle).

Eventually, you may want to change the display back to a more common view, which is one of
the following:

• All Row Types — From the Filters menu, click Levels, and then click All.
• Only Default Row Types — From the Filters menu, click Levels, and then click Reset.
• Only Row Types That You Cannot Toggle — From the Filters menu, click Levels,
and then click None.

Related Topics
• Constraint Spreadsheet Usage

Constraint Manager Users Manual, X-ENTP VX.1.1 123


Constraint Spreadsheet Usage
Resetting a Spreadsheet to its Default View

Resetting a Spreadsheet to its Default View


After you work on a spreadsheet page for one or more sessions, you may find it necessary to
return it to its default view.
Resetting a spreadsheet page results with the following:

• Only default levels are shown (Filters > Levels > Reset).
• Filtering is turned off (Filters > Enabled).
• Filters - Groups toolbar dropdown is set to All.
• All expanded rows are collapsed.

Procedure
1. Make the spreadsheet page you want to reset the active one by clicking its tab.
2. From the View menu, click Reset View.

Results
Just the active spreadsheet page is reset.

Related Topics
• Constraint Spreadsheet Usage

Constraint Group Creation and Modification


Constraint Manager comes with several pre-defined constraint groups that you can modify as
needed and restore to their default contents. You can also create new constraint groups, modify
them, and delete those that you create.
Creating Constraint Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Modifying a Constraint Group From Directly Within the Spreadsheet . . . . . . . . . . . . 126
Modifying a Constraint Group From Within the Constraint Groups Dialog Box . . . . 127
Deleting One or More Constraint Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Restoring the Content of a Default Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

Creating Constraint Groups


You can create groups that include just a subset of the constraints displayed on a spreadsheet
page. For example, when your constraint modifications are limited to a common subset of Nets
spreadsheet constraints, you can create a group that includes just those constraints.

124 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Group Creation and Modification

Doing so gives you the ability to increase the efficiency with which you modify constraints.
When managing other co-workers, creating unique groups can help to ensure that their focus
remains on the appropriate constraint subsets.

Note
Because constraint groups are a subset of all constraints located on a spreadsheet page,
modifying a spreadsheet constraint while in a group view results in the change appearing
in all views.

In the following illustration, a user has created two constraint groups that serve as custom
subsets of the Nets spreadsheet page.

Figure 3-6. Constraint Groups

The My Delays Group is a subset containing all delay constraints, both simulated and time of
flight. The other group, My Actuals Group, contains all actual values that are available from the
Nets spreadsheet page.

You can modify constraint groups that you create, and also those that are included with
Constraint Manager by default. The only group that you cannot modify is All. To provide you
with greater flexibility, the tool supports two ways of populating and modifying the contents of
a constraint group. The recommended approach is from directly within the Constraint Manager
spreadsheet.

Procedure
1. With the spreadsheet page of interest active, click the Filters - Groups toolbar
dropdown, and then click Edit Constraint Groups.
Alternative: From the Edit menu, click Constraint Groups.
2. From the Edit Constraint Groups dialog box, click .
3. From the Create New Constraint Group dialog box, enter a name for the group, and then
click OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 125


Constraint Spreadsheet Usage
Constraint Group Creation and Modification

4. Click Apply.
5. Modify or populate the contents of the constraint group in one of the following ways:
• “Modifying a Constraint Group From Directly Within the Spreadsheet” on page 126.
Note: This is the recommended method. You can drag-and-drop columns and
visually review your progress while you make your changes.
• “Modifying a Constraint Group From Within the Constraint Groups Dialog Box” on
page 127.

Related Topics
• Constraint Group Creation and Modification

Modifying a Constraint Group From Directly Within


the Spreadsheet
You can modify a constraint group through the spreadsheet to see exactly how the selection of
constraints appears when you activate the group.

Procedure
1. With the spreadsheet page of interest active, click the Filters - Groups toolbar
dropdown, and then select the group you want to modify.
2. Do any of the following things:
• To show specific, hidden constraint columns, right-click the column heading after
which you want to insert columns, and then click Unhide Column(s). From the Add
Column(s) to Group dialog box, select one or more constraints, and then click OK.
Note: When you are working with a new constraint group that you created
previously but did not populate, all available columns are hidden.
• To move a column, use click-drag to move it to a different position within the
spreadsheet.
• To hide specific columns, use click or Ctrl-click to select the column headings,
right-click one of the column headings, and then click Hide Column(s).
• To hide all columns, right-click any column heading, and then click Hide All
Columns.

Related Topics
• Constraint Group Creation and Modification

126 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Group Creation and Modification

Modifying a Constraint Group From Within the


Constraint Groups Dialog Box
Although this is not the recommended approach for constraint group modification, you may
find it to be more useful than modifying a group directly in the spreadsheet due to the amount or
type of changes you need to make.

Procedure
1. With the spreadsheet page of interest active, click the Filters - Groups toolbar
dropdown, and then click Edit Constraint Groups.
2. From the Edit Constraint Groups dialog box, click the Select constraint group
dropdown, and then click the constraint group you want to modify.
3. From the Constraints assigned to group list, perform any of the following tasks:
• To remove one or more constraints, use click or Ctrl-click, and then click .
• To remove all constraints, click .
• To add constraints, from the All constraints list, select the constraints that you want
to appear in the group by doing any of the following:
o To add one or more constraints, use click or Ctrl-click, and then click .
o To add all constraints, click .
• To move one or more constraints up or down in the list order, use click or Ctrl-click,
and then click or .
• To move one or more constraints to the top or bottom of the list, use click or Ctrl-
click, and then click or .
Tip: When moving constraints, it can be helpful to keep constraints and their actuals
together.
4. After you finish modifying a constraint group, click OK or Apply.

Related Topics
• Constraint Group Creation and Modification

Deleting One or More Constraint Groups


You can delete constraint groups as needed. You cannot delete default constraint groups.

Prerequisites
• You must have created one or more constraint groups.

Constraint Manager Users Manual, X-ENTP VX.1.1 127


Constraint Spreadsheet Usage
Concurrent Constraint Entry With Other Users

Procedure
1. With the spreadsheet page of interest active, click the Filters - Groups toolbar
dropdown, and then click Edit Constraint Groups.
2. From the Edit Constraint Groups dialog box, perform any of the following tasks:
• To delete one constraint group, click the Select constraint group dropdown, click the
constraint group you want to delete, and then click .
• To delete all constraint groups, click .

Related Topics
• Constraint Group Creation and Modification

Restoring the Content of a Default Group


Because you can modify the constraint content of the default constraint groups, Constraint
Manager provides a way for you to restore the content of a default group.

Procedure
1. With the spreadsheet page of interest active, click the Filters - Groups toolbar
dropdown, and then click Edit Constraint Groups.
2. From the Edit Constraint Groups dialog box, click the Select constraint group
dropdown, click the default group you want to restore, and then click .

Related Topics
• Constraint Group Creation and Modification

Concurrent Constraint Entry With Other Users


Constraint Manager gives you the ability to work effectively with other users who are editing
the same constraint set, whether on the front-end or back-end. It does this by making it easy for
you to see which constraint values other users have changed, or are in the process of changing.
It also provides a way for you to communicate the rationale for your constraint changes by
giving you the ability to create constraint cell comments that all other users can read. For more
information, refer to “Constraint Value Commenting” on page 132.

Overview of Constraint Locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129


Showing Indication of Remotely Changed Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . 130

128 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Concurrent Constraint Entry With Other Users

Overview of Constraint Locks


When working in any concurrent design environment, the Constraint Manager spreadsheet
automatically locks constraint values or objects that are being changed by another user in a
separate instance of the tool. After the user finishes making their change, the lock is removed,
and the value is once again editable by other users.
Cells in Constraint Manager can also become locked due to actions performed within a tool
from which you can launch it (for example, xDX Designer). For example, two designers can be
working on the same design, though one has front-end Constraint Manager open and the other
xDX Designer. Actions taken in xDX Designer can cause cells in Constraint Manager to
become locked. Conversely, actions taken in Constraint Manager can cause the same behavior
to occur in xDX Designer.

In the example below, two schematic designers are modifying constraints from within
Constraint Manager sessions launched from xDX Designer. Because both users are working on
the same front-end constraint set, the tool displays an indication of locks in the other user’s
environment as each applicable constraint or object is in the process of modification. In this
case, there is a single locked cell.

Example 3-2. Locked Constraint Cell

Here is another example of locking, but instead at the object level. The scheme “Ground” is
currently locked by another user who is editing its name. The lock icon indicates this condition.

Constraint Manager Users Manual, X-ENTP VX.1.1 129


Constraint Spreadsheet Usage
Concurrent Constraint Entry With Other Users

Example 3-3. Locked Object

Tip: To determine which user has a constraint or object locked, hover your mouse cursor
over the locked constraint or object in the Constraint Manager Spreadsheet. The tooltip
that is displayed shows the user account that currently has the constraint or object locked
for editing.

Automatic Removal of Constraint Locks


A constraint or object lock is always removed when any of the following things occur:

• The user who initiated the change finishes their modification(s).


• The maximum locking time is exceeded. To learn how to modify this setting in your
environment, refer to “Specifying Design Configuration Preferences” on page 68.
• All clients are disconnected.
• The server is down.

Related Topics
• Concurrent Constraint Entry With Other Users

Showing Indication of Remotely Changed


Constraints
When multiple users are working on the same front-end or back-end constraint set, you can
have your Constraint Manager session updated in real time to highlight the changes of other
users. You do so by enabling indication of remotely modified cells. This causes the tool to
highlight the background color of cells that change in any concurrent sessions. The example
below illustrates this based on the default highlighting color.

130 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Concurrent Constraint Entry With Other Users

Figure 3-7. Indication of a Concurrently Modified Constraint Value

Tip: You can change the background color Constraint Manager uses to indicate remote
modifications. For more information, refer to “Setting Fonts and Colors” on page 74.

Another way that Constraint Manager helps ensure effective concurrent design is by
temporarily locking a constraint or object when it is being modified in a parallel session. For
more information, refer to “Overview of Constraint Locks” on page 129.

Prerequisites
• Concurrent design is enabled through availability of the appropriate license.

Procedure
1. From the View menu, click Remotely Modified Data.
2. Click to activate Enable Indication.

Results
Your Constraint Manager session is now updating in real time to show you all constraint
changes being made in any concurrent sessions.

(Optional) To clear all of the current cell highlighting, from the View menu, click Remotely
Modified Data, and then click Refresh. At this point, only new modifications will show.

Related Topics
• Concurrent Constraint Entry With Other Users

Constraint Manager Users Manual, X-ENTP VX.1.1 131


Constraint Spreadsheet Usage
Constraint Value Commenting

Constraint Value Commenting


You can comment on constraint values for multiple reasons. You might do so to help yourself
remember why you made certain changes to a constraint, or to make the rationale for a change
clear to other designers. In addition, you could use commenting to provide feedback on
constraint changes made by other designers. This could be the function of a supervisory role.
After you create a constraint comment, you can refine it or delete it. You can also view the
constraint comments of other users. To view all constraint comments against a constraint set,
you can run a report that lists them.

Adding Comments to Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132


Editing Constraint Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Deleting Constraint Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Viewing Constraint Comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Adding Comments to Constraints


You can add comments to individual cells on any page of the Constraint Manager spreadsheet.
Doing so is especially useful when you want to help ensure that another user does not change a
constraint value that is important to your individual goals as a designer.

Prerequisites
• The Comment toolbar must be visible if you want to use Comment toolbar buttons
instead of right-click actions. Ensure that View > Toolbars > Comment is enabled.

Procedure
1. Do one of the following things:
• From the spreadsheet, right-click a cell, and then click Insert Comment.
• From the Comment toolbar, click .
2. From the Comment dialog box, type your comment in the text field.
3. Click Apply or Close.

Results
The cell is updated to include a red marker in its upper-right corner to indicate that you have
added a comment to it. The illustration below shows an example of this marker.

132 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Value Commenting

Example 3-4. Constraint Cell With Comment Marker

In this case, the user could have provided an explanation for why they set the minimum length
value to 1400 th instead of 1000 th (like the other values).

Related Topics
• Constraint Value Commenting

Editing Constraint Comments


You can edit existing constraint comments as needed for the purpose of updating them. Instead
of editing one, in some cases it may make more sense to delete the comment and create a new
one.

Prerequisites
• You must have created the constraint comment you want to modify.
• The Comment toolbar must be visible if you want to use Comment toolbar buttons
instead of right-click actions. Ensure that View > Toolbars > Comment is enabled.

Procedure
1. From the spreadsheet, do one of the following things:
• Right-click a cell that includes a comment, and then click Edit Comment.
• Click a cell that includes a comment, and then from the Comment toolbar, click .
2. From the Comment dialog box, modify the comment in the text field.
3. Click Apply or Close.

Constraint Manager Users Manual, X-ENTP VX.1.1 133


Constraint Spreadsheet Usage
Constraint Value Commenting

Results
The content of the comment is updated.

Related Topics
• Constraint Value Commenting

Deleting Constraint Comments


You can delete constraint comments that you created, as well as those of other designers. When
deleting constraint comments that you did not create, it is important that you have an agreement
in place for such practice.
It is not recommended that any user delete the comments of another user without there being an
understanding, process, or guideline for when doing so would be acceptable.

Prerequisites
• The Comment toolbar must be visible if you want to use Comment toolbar buttons
instead of right-click actions. Ensure that View > Toolbars > Comment is enabled.

Procedure
From the spreadsheet, do one of the following things:

• Right-click a cell that includes a comment, and then click Delete Comment.
• Click a cell that includes a comment, and then from the Comment toolbar, click .

Results
The constraint comment is erased.

Related Topics
• Constraint Value Commenting

Viewing Constraint Comments


You can view constraint comments to see constraint “notes” that you and other users have
provided. Constraint Manager gives you a few ways to view comments. Each method is mostly
relevant to the number of constraint comments you want to view, whether one comment,
several, or all of them.

134 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Viewing Constraint Reference Information

Prerequisites
• The Comment toolbar must be visible if you want to use Comment toolbar buttons.
Ensure that View > Toolbars > Comment is enabled.

Procedure
You can do this in the following ways:

• To see a single comment, hover the mouse cursor over a cell that includes a comment.
• To cycle from one comment to the next, from the Comment toolbar, click (next) or
(previous).
• To generate a report that lists all comments, from the Output menu, click Report
Comments.

Results
You are viewing the constraint comments of importance to you.

Related Topics
• Constraint Value Commenting

Viewing Constraint Reference Information


This manual includes a full constraint reference. You can access it directly from the constraint
spreadsheet using a right-click command.
A quick-reference version of the reference chapter is also available. When using the quick
reference, if you need more information, click a constraint name to go to its constraint reference
entry, which usually includes a graphic to help you understand its purpose within your design.

As an example, the constraint reference graphic for the differential pair constraint Differential
Spacing is shown.

Figure 3-8. Constraint Reference Illustration for Differential Spacing

Constraint Manager Users Manual, X-ENTP VX.1.1 135


Constraint Spreadsheet Usage
Viewing Design Statistics

Procedure
From the constraint spreadsheet, right-click a constraint cell, and then click Constraint Help.

Related Topics
• Constraint Spreadsheet Usage
• Constraint Reference
• Quick Reference - Constraint Manager Spreadsheet

Viewing Design Statistics


You can generate a detailed report of design statistics that includes object, connectivity, and
constraint information. It includes totals for each data point (for example, total constraints) and
top-level information like snapshot, block, and software installation.
Note
The number of “Technology Parts” provided in this report provides a count of those used
in the back-end design system. These technology parts are editable only in the back-end
design system, but they are also stored in Constraint Manager and available in this report.
This number does not refer to the number of technology models available to the tool.

Procedure
From the Output menu, click Design Statistics.

Related Topics
• Constraint Spreadsheet Usage

Checking Constraints Synchronization


You can check synchronization between the front-end constraint set and the back-end constraint
set. Doing so gives you the ability to see differences between constraint values for specific
objects. The report only shows objects with values that do not match between the constraint
sets.

Prerequisites
• You are not using an xDM Design flow.
• You are not using a remote development flow.

Procedure
1. From the Output menu, click Check Constraints Synchronization.

136 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Diagnostics

2. To view the report that was created, click Yes.

Results
In the event that synchronization checking fails, ensure that you are properly connected to
appropriate client systems. You can also view the report for more information.

Related Topics
• Constraint Spreadsheet Usage

Constraint Diagnostics
You can both check and correct constraint values using CES Diagnostics.
Checking Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Correcting Constraint Manager Diagnostics Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Listing of Constraint Manager Diagnostics Tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Checking Constraints
You can check constraints to verify the data integrity of your local constraint set. This is
especially useful when starting with a migrated design. Constraints checking provides
information and errors for multiple aspects of design-object relation and net assignment.

Procedure
1. From the Tools menu, click CES Diagnostics.
2. To view the report that was created refer to the Output window, CES Diagnostics tab.

Results
The report shows the results of many diagnostics tests. Each test indicates whether the data has
passed or failed. In the event that a test has failed, and the error is automatically fixable by
Constraint Manager, the report shows a link at the bottom that gives you the ability to
automatically fix all errors that fall into this category.

Tip: You can cross probe from the report to problematic design objects by clicking a link
on any available error rows.

Related Topics
• Constraint Diagnostics

Constraint Manager Users Manual, X-ENTP VX.1.1 137


Constraint Spreadsheet Usage
Constraint Diagnostics

Correcting Constraint Manager Diagnostics Errors


After you check constraints integrity, the status bar of the tool displays one of the following
types of exclamation points when your constraint set has integrity problems:
• Red exclamation point — Contact customer support to get help with fixing these
problems. You will need their assistance.
• Yellow exclamation point — Attempt to fix these problems yourself by using
Constraint Manager documentation to make changes based on the reported errors.
When your constraint set does not have any integrity problems, the status bar does not display
an indicator. It only displays an indicator in the event that there is problematic data. It is
important to understand that Constraint Manager may display some errors that are not fixable
through the tool. Instead, you would have to do so through your schematic capture program, or
another piece of software. In these cases, the error report tries to make it clear that the error
must be fixed outside of Constraint Manager.

Procedure
You can do the following things:

• Fix all automatically fixable errors — In the event that you have errors that can be
fixed automatically by Constraint Manager, you can click a link at the bottom of error
report to do so.

Note
After you have Constraint Manager fix errors, it will reload when necessary. This is to
ensure that the tool shows the correct constraint data based on changes that occurred
during the process of making automatic fixes.

• Fix errors that you must fix manually — In the event that you have Constraint
Manager errors that can only be fixed manually in the tool, you should use Constraint
Manager documentation to make the appropriate fixes. In some cases, the error will
provide a link to the exact documentation you must use to fix the error.

Related Topics
• Constraint Diagnostics

138 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Diagnostics

Listing of Constraint Manager Diagnostics Tests


Each of the diagnostics tests that Constraint Manager performs is described in the table below.
This information is in the tooltip that the tool displays when you hover the mouse over a
specific test in the report.

Table 3-2. Constraint Manager Diagnostics Tests


Test Purpose
CES database initialization Checks if Constraint Manager database is correctly
initialized.
Net class name unique Checks if net class name is unique on given level of
hierarchy.
Constraint class name Checks if constraint class name is unique on given level of
unique hierarchy.
Scheme and clearance rule Checks if scheme names and clearance rule names are
name unique unique.
Clearance rule in all Checks if clearance rule exists in all schemes.
schemes
Net class in all schemes Checks if all rule-area schemes include all defined net
classes.
Layer consistency Checks if layers contain all required and valid data.
Layer in all net classes Checks if all net classes include the full listing of board
layers.
Layer in all z-axis clearance Checks if layer exists in all z-axis clearance rules.
rules
Victims and aggressors Checks if victims and aggressors in noise rules exist.
valid
Component valid Checks if all components are valid in terms of references
to pins.
Pin in net and component Checks if pin belonging to net also belongs to component.
Component name unique Checks if all component names are unique within the
design.
Pin sets consistency Checks if pins in pin sets belong to physical net.
Physical net unique Checks if physical net name is unique.
Pin reference to net valid Checks if pin has a proper reference to physical net.
Electrical net unique Checks if electrical net name is unique.
Electrical net consistency Checks if all electrical nets contain correct physical nets.

Constraint Manager Users Manual, X-ENTP VX.1.1 139


Constraint Spreadsheet Usage
Constraint Diagnostics

Table 3-2. Constraint Manager Diagnostics Tests (cont.)


Test Purpose
Physical nets consistency Checks if each electrical net consists of only one physical
net.
All used constraint classes Checks if all constraint classes used by electrical nets and
valid differential pairs exist in the design.
All used net classes valid Checks if all net classes used by electrical nets and
differential pairs exist in the design.
Differential pair with two Checks if all differential pairs have two existing and
electrical nets different electrical nets.
Electrical nets belonging to Checks if electrical nets belonging to differential pair have
differential pair assigned to the same net class.
the same net class
Unique pin pairs in Checks if pin pairs in electrical net are unique.
electrical net
Connection pin pairs in Checks if valid connection pin pairs exist in electrical nets
electrical net that contain multiple physical nets.
Power net topology Checks if power net has the proper topology.
Unique from-tos in physical Checks if all from-tos in physical net are unique.
net
From-to in only one net Checks if pin referenced by from-to belongs to the same
physical net as the from-to.
Constraints consistency Checks consistency of constraints. This test also reports
empty constraints.
Default objects Checks if standard and default objects exist for schemes,
clearance rules and net classes.
Mapping of schematic and Checks if all schematic nets and physical nets are mapped
physical nets correctly.
Reference designator vs. Checks if attribute 'Ref Designator' is the same as
component name Constraint Manager component name.
Attributes vs. constraints When component attributes are defined on the schematic,
checks if the corresponding constraints (IBIS,
Technology, Value, and Series) exist in the database.
Via span valid Checks if the via span is valid.
Unique virtual pin names Checks if virtual pin names are unique in the design.
Schemes and rules in all Checks if all schemes exist for class to class clearance
class to class clearance rules rules.

140 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Table 3-2. Constraint Manager Diagnostics Tests (cont.)


Test Purpose
Unique template names Checks if template names are unique in the design.
Valid template Checks if content of constraint templates are valid.
All used package clearance Checks if each package clearance-type rule is fully
type rules valid defined.
Physical net topology Checks if physical net topologies are consistent. This test
also checks for virtual pins in complex topologies.
Nets constraint values Checks the integrity of constraints defined on nets.
consistency

Related Topics
• Constraint Diagnostics

PCB Actuals Comparison With Constraint


Values
Your layout system generates actuals data as a result of routing. By comparing actuals for nets
and objects against constraint values for those same nets and objects, you can determine how
well a design meets the guidelines of its constraint set.
Validating PCB Actuals Against Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Updating Actuals Displayed in Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Clearing Actuals From the Spreadsheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Highlighting Constraint Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Sharing PCB Actuals With Front-End Constraint Manager Sessions . . . . . . . . . . . . . . 145
Viewing All Constraint Violations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Constraint Violation Revision Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

Validating PCB Actuals Against Constraints


You validate PCB actuals (generated through AutoActive) against constraint data to determine
whether specific constraint values are being obeyed during routing. For example, you can see
whether the routed length of a net stays within its minimum and maximum length constraint
values.

Constraint Manager Users Manual, X-ENTP VX.1.1 141


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Note
The Constraint Manager actuals menu selections referenced in this section are only
available in sessions launched from a back-end design system. When you want to work
with actuals in a front-end session, refer to “Sharing PCB Actuals With Front-End
Constraint Manager Sessions” on page 145.

Procedure
1. From the Data menu, click Connect to Board Station RE/Expedition.
Note: Typically, when you launch Constraint Manager it is automatically connected to
Board Station XE/RE or xPCB Layout. This menu option is not present when you are
already connected.
2. When you do not have Constraint Manager configured to automatically update actuals
on start-up, from the Data menu, click Actuals, and then click Update All to show
actuals on the spreadsheet.
Note: If automatic display of actuals is not enabled, you must perform this step each
time you launch a new invocation of Constraint Manager.

Tip: To make the display of actuals a seamless part of your back-end or front-end
Constraint Manager session, there are several settings you can enable. For more
information, refer to “Specifying Other Preferences” on page 78.

Results
When constraint validation is available, you can easily see which constraints are resulting in
actuals that are approaching or exceeding a constraint threshold, or moving beyond a minimum
and maximum constraint range.

To make such distinctions clear, Constraint Manager backlights actual spreadsheet fields with
one of two colors, which respectively indicate whether an actual is out of range, or close to
being out of range. During the process of setting up the tool, you can specify the backlight
colors that Constraint Manager uses.

142 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Example 3-5. Constraint Manager Color-Coding Actuals to Indicate Violations

Rule: In order to perform this type of validation, you must update routing results from a
supported router.

Related Topics
• PCB Actuals Comparison With Constraint Values

Updating Actuals Displayed in Constraint Manager


When engineering efforts are being performed simultaneously in both Constraint Manager and
the router to which Constraint Manager is connected, you may want to periodically
update/refresh the actuals that are in Constraint Manager to reflect changes to actuals produced
by the router.

Procedure
You can do the following things:

• Update all actuals — From the Data menu, click Actuals, and then click Update All.
• Update selected actuals — Use the following steps:
a. On a spreadsheet page, click, Ctrl-click, or Shift-click to select one or more nets.
Rule: In order to update net actuals, cross probing must be enabled. To do so, from
the Setup menu, click to enable Cross Probing.
b. From the Data menu, click Actuals, and then click Update Selected.

Related Topics
• PCB Actuals Comparison With Constraint Values

Clearing Actuals From the Spreadsheet


In some cases, you may want to clear the actual values displayed on one or more spreadsheet
pages. Use the following procedure to clear actual data from the spreadsheet.

Constraint Manager Users Manual, X-ENTP VX.1.1 143


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Procedure
You can do the following things:

• Clear actuals from all spreadsheet pages — From the Data menu, click Actuals, and
then click Clear All Pages.
• Clear actuals from the current spreadsheet page — From the Data menu, click
Actuals, and then click Clear This Page.

Related Topics
• PCB Actuals Comparison With Constraint Values

Highlighting Constraint Differences


By having Constraint Manager highlight all constraint differences, you can more-easily see
which constraint values are exceeded by actual values. When in this mode of operation, the tool
also highlights hierarchical constraint differences.
For example, an electrical net comprised of two physical nets has three separate constraint
values for # Vias Max. Based on net hierarchy, the sum of the two physical net values equals the
electrical net value. This is an accepted hierarchical constraint difference that is easier to verify
in this mode. In the example illustration below, each physical net has a # Vias Max value of 2.
The higher-level electrical net value for # Vias Max is 4, which is the correct value based on
constraint hierarchy (that is, sum of the two physical net # Vias Max values).

Figure 3-9. Hierarchical Constraint Differences

Procedure
From the View menu, click Update Differences.

Note
To clear highlighted differences, from the View menu, click Clear Differences.

Related Topics
• PCB Actuals Comparison With Constraint Values

144 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Sharing PCB Actuals With Front-End Constraint


Manager Sessions
Although PCB actuals are generated as part of back-end constraint calculations, you can also
share those values with front-end Constraint Manager sessions. This is especially useful when
the logic engineers on your design team are interested in the actual values that are being
generated on the back end. This is also helpful for promoting general cohesion between design-
team members.
The team member who performs which of the actions in the procedure below will vary
depending on your design process. For a small design team, a single person might perform the
procedure in its entirety. For large design teams working on very complex designs, a schematic
designer would typically make a call or send an email to request that a PCB layout engineer
perform step 1 to export actuals. An alternative to that approach would be to adopt a process
where actuals are exported at multiple, scheduled times each day, or automatically each time
they are updated.

Tip: There are several settings you can enable to make the display of actuals a nearly
automatic part of your front-end Constraint Manager session. To do this, you must enable
unique settings in both front-end and back-end invocations of the tool, respectively. For
general information on these settings, refer to “Specifying Other Preferences” on
page 78. The procedure below points out each setting as it relates to streamlining the
manual process.

Procedure
1. In a back-end invocation of Constraint Manager, from the File menu, click Export, and
then click Actuals.
Alternative: You can have the tool do this automatically each time you update actuals
by enabling a setting in your back-end invocation. From the Setup menu, click Settings.
From the Settings dialog box, click Other, and then under Actuals, enable the following
option: Export actuals to front-end.
2. From the Output log window, verify that the actual values have been successfully
exported.
For example: “Xpedition actuals side file was exported on Thu Mar 08 16:22:22 2012.”
3. In a front-end invocation of Constraint Manager, from the Data menu, click Actuals,
and then click Import Layout Actuals. To include thermal values, click Import
Thermal Actuals as a second selection.

Constraint Manager Users Manual, X-ENTP VX.1.1 145


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

Tip: You can configure your front-end invocation of Constraint Manager such that you
are notified when updated actuals are available for import. To do this, from the Setup
menu, click Settings. From the Settings dialog box, click Other, and then under Actuals,
enable the following option: Show alert that new actuals can be imported.

Tip: To further facilitate the sharing of actuals data between the front-end and back-end,
you can enable an additional setting to automatically update actuals upon start up. When
used together with the settings mentioned in the above procedure, back-end Constraint
Manager automatically updates actual values when you load it, which in turn causes them
to be exported to front-end Constraint Manager. The next time you open front-end
Constraint Manager, the updated actual values from the back end are automatically pulled
in. You enable this setting separately in each invocation of the tool. To do this, from the
Setup menu, click Settings. From the Settings dialog box, click Other, and then under
Actuals, enable the following option: Auto update on start up.

Results
Actual values are displayed in the front-end invocation of Constraint Manager in the
appropriate actual cells of spreadsheet.

Related Topics
• PCB Actuals Comparison With Constraint Values

Viewing All Constraint Violations


Aside from locating constraint violations within specific pages of the Constraint Manager
Spreadsheet, you can quickly generate a list of all actuals that are producing constraint
violations.
The Constraint Violations dialog box is modeless, so you can conveniently keep it on screen for
prolonged periods of time. To update its display, click Refresh.

Procedure
1. From the Data menu, click Constraint Violations.
2. From the list of Constraint cautions and violations, refer to the Constraint and Object
columns to determine problematic constraints.
3. (Optional) Do any of the following:
• To display just violations, click to enable the “Show only violations” check box.
• To hide any revised constraint rows, click to enable the “Show only unrevised”
check box.

146 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
PCB Actuals Comparison With Constraint Values

• To mark a constraint as revised, click to enable its Revised check box. (You cannot
mark all data types as revised. For a list of restrictions, refer to “Constraint Violation
Revision Restrictions” on page 147.)
Alternative: To do this from the spreadsheet, right-click a constraint cell, click
Mark As, and then click Revised.
• To cross probe to the spreadsheet row to which a constraint caution or violation
refers, click a list row.
Alternative: To move up or down one row in the violations list while cross probing,
click or .

Related Topics
• PCB Actuals Comparison With Constraint Values

Constraint Violation Revision Restrictions


The Constraint Violations dialog box gives you the ability to mark specific caution or violation
rows as “Revised” so you can keep track of problems you correct in the spreadsheet. It is not
possible to mark every row in this way, though.
You cannot mark the following data types as “Revised”:

• Actuals and other read-only values


• Assignments (aggressor, constraint class, net class, parallelism rule, and victim)
• Hierarchical paths
• Layer indices
• Object types (parallelism rules and power nets)
• Pin counts
• Rule names

Related Topics
• PCB Actuals Comparison With Constraint Values
• # Pins
• Constraint Class or Electrical Net Name Aggressor
• Constraint Class or Electrical Net Name Victim
• Hierarchical Path
• Index
• Net Class
• Parallelism Rule
• Power Net

Constraint Manager Users Manual, X-ENTP VX.1.1 147


Constraint Spreadsheet Usage
Update of Electrical Net Data and Results

Update of Electrical Net Data and Results


After you assign IBIS models to parts, electrical nets are automatically updated to include
changes based on the technology information in your IBIS models. When a new IBIS model
requires two or more existing electrical nets to be joined, Constraint Manager resolves existing
constraint values.

Resolution of Existing Constraint Values


When two or more existing electrical nets are joined into a larger electrical net due to new IBIS
model assignments, Constraint Manager resolves the unique constraint values in each
constituent net based on the following rules:

• The minimum Simulated Delay Min constraint value is used; the maximum Simulated
Delay Max constraint value is applied.
• The minimum Ringback Low Max constraint value is used; the maximum Ringback
High Max constraint value is applied.
• The minimum Static Low Overshoot Max constraint value is used; the maximum Static
High Overshoot Max constraint value is applied.
• Dynamic Low Overshoot Max and Dynamic High Overshoot Max constraint values are
removed from the new electrical net.

Related Topics
• Constraint Spreadsheet Usage

Painting Rules to Reuse Constraints


You can quickly copy all constraint values that you define in a spreadsheet row into the rows of
other design objects that will benefit from these values. When painting rules to copy constraint
values, it is important to remember that the design object from which you copy must be the
same as the design object to which you copy.
For example, when reusing the constraint values of a specific net row, make sure that you apply
them to another net row. It is the same type of design object.

Prerequisites
• The leftmost column is enabled (Setup > Cross Probing).

Procedure
1. From the spreadsheet, click the leftmost cell of a scheme, net class, constraint class,
layer, or net row, and then from the Edit menu, click Rule Painter.

148 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Change Undo and Redo

2. Click the leftmost cell in the spreadsheet row for which you want to apply the copied
constraint values.
3. Continue clicking additional rows to paint these rules where appropriate.
4. To turn off the Rule Painter, from the Edit menu, click Rule Painter.
Examples
Example of Copying Board Layer Constraint Values to Another Board Layer
Use these steps:
1. From the spreadsheet Trace & Via Properties page, expand a scheme, a net class, and
then click the leftmost cell of the layer that holds the constraint values you want to
duplicate.
2. From the Edit menu, click Rule Painter.
3. From the spreadsheet, click the leftmost cell of the layer row to which you want to apply
the duplicate constraint values.
4. To apply these values to another layer, click its leftmost cell. When you finish, from the
Edit menu, click Rule Painter to disable rule painting.

Related Topics
• Constraint Spreadsheet Usage

Constraint Change Undo and Redo


Constraint Manager supports sequential undo and redo, both for single and multiple changes,
and undo of all constraint changes you make in a session.
Rolling Back and Undoing All Constraint Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Rolling Back or Redoing Specific Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Supported Undo/Redo Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Rolling Back and Undoing All Constraint Changes


You can revert all constraint changes made at any time during your current Constraint Manager
session. This includes all commands for which undo/redo is supported. For example, modifying
constraint classes and net classes, adding clearance rules, and creating differential pairs.
For a full listing of supported actions, refer to Table 3-3 on page 151. The procedure in this
topic affects all changes that you can revert. For reverting just specific changes, refer to the
appropriate topic in the related topics section at the end of this topic.

Constraint Manager Users Manual, X-ENTP VX.1.1 149


Constraint Spreadsheet Usage
Constraint Change Undo and Redo

Note
When rolling back constraint changes made in Constraint Manager, the forward and back
annotation indicator lights for your design flow do not reflect these undo actions. For
example, after you make a single change in back-end Constraint Manager and then
rollback that change, your back-end system will still indicate that you need to perform
back annotation.

Procedure
1. From the File menu, click Rollback Changes.
2. From the Rollback Changes dialog box, click Rollback.

Results
The Status column displays “Pending,” “In Progress,” “Conflict,” or “Restored” for each row.
Each entry starts out as pending. When the tool successfully rolls back a change, the field
displays “restored.” For undo actions that take longer to process you see “in progress” displayed
before they are moved to a resolved state. If a change can not be undone due to change conflicts,
the Status field indicates this condition.

Related Topics
• Constraint Change Undo and Redo

Rolling Back or Redoing Specific Changes


In addition to rolling back all changes, the tool also supports an enhanced interface for undoing
or redoing multiple changes, beginning with the most recent undo or redo action.
For example, after making three consecutive constraint changes, you can quickly use the
standard Constraint Manager GUI to undo all three changes without pressing Ctrl-Z multiple
times. This approach also gives you a visual indication of the most recent changes that can be
undone.

When undoing or redoing changes, all actions following the selected action are also reverted or
restored. For example, when you create three net classes, beginning with Net Class A and
ending with Net Class C, undoing the creation of Net Class B results in the deletion of Net Class
A as well.

Procedure
You can do the following things:

• Undo one or more changes — Use these steps:


a. From the General toolbar, next to , click the dropdown button.

150 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Constraint Change Undo and Redo

b. In the list of changes you can undo, hover over one or more changes, and then click.
• Redo one or more changes — Use these steps:
a. From the General toolbar, next to , click the dropdown button.
b. In the list of changes you can redo, hover over one or more changes, and then click.

Related Topics
• Constraint Change Undo and Redo

Supported Undo/Redo Actions


You can roll back, undo, and redo certain Constraint Manager changes.
Refer to the following table for a complete list,
Table 3-3. Supported Undo/Redo Actions
Design Object Actions
Clearance rule Add, remove, and rename.
Constraint Add, change, propagate,
rule painter, copy, and
paste.
Constraint class Net assignment to class,
add, remove, and rename.
Differential pair Add, remove, and auto-
assign.
Net class Net assignment to class,
add, remove, and rename.
Noise rule Add and remove.
Pin pair Auto pin-pair, manual pin-
pair, and remove.
Rule-area scheme Add, remove, and rename.
Template Rename.
Z-axis clearance rule Add, remove, and rename.

Related Topics
• Constraint Change Undo and Redo

Constraint Manager Users Manual, X-ENTP VX.1.1 151


Constraint Spreadsheet Usage
Viewing and Reverting to Parent Cell Values

Viewing and Reverting to Parent Cell Values


You can view the parent value of a constraint cell to determine the assigned value at the next,
upper level of hierarchy. For example, when you have a constraint class that includes a large
number of nets, and many of the values for a specific constraint differ from the value at the
constraint class level, you can view the value at that level without having to change your place
on the spreadsheet.
In addition to viewing parent values, you can also revert an overridden value to its parent value,
when it is appropriate to do so. In the event that you have filtered the listing of spreadsheet
rows, you can also show a parent row when it is hidden from view.

Procedure
From the spreadsheet, right-click the cell of interest, and then do one of the following things:

• To see what the cell value is at the next, upper level of hierarchy, click Show Parent
Value. As a result, the Output log window is updated to include a new line of text that
displays this value.
• To revert the cell value to value of the parent cell, click Reset to Parent Value.
• In the event that you are using row filtering and the row for a parent cell is hidden, you
can click Show Parent to enable display of the hidden parent row.

Results
Depending on the task you wanted to accomplish, you now know the value of a parent cell, have
reset an overridden cell to its parent cell value, or enabled display of a parent row that was
hidden due to row filtering.

Related Topics
• Constraint Spreadsheet Usage

Saving Constraint Changes


After you make constraint changes through the Constraint Manager spreadsheet and other
constraint-entry mechanisms, they are saved automatically in your front-end or back-end
constraint set; however, the changes may not persist unless you perform a save in the tool from
which you launched the tool (for example, your layout software).
Caution
Some design tools automatically save your design data (for example, xDX Designer).
Depending on the tool from which you launched Constraint Manager, you may not have
to explicitly save. Refer to the documentation for your design tool for information about
saving design changes in your invocation tool.

152 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Spreadsheet Usage
Saving Constraint Changes

Procedure
You can do this in the following ways:

• After you exit a Constraint Manager session, from the invocation tool, save your design
(if required).
• When working in a Constraint Manager session launched from the back-end, at the
bottom-right corner of your PCB layout tool, click the rightmost status indicator to load
the changes into the back-end, and then save your design in the PCB layout software.

Related Topics
• Constraint Spreadsheet Usage

Constraint Manager Users Manual, X-ENTP VX.1.1 153


Constraint Spreadsheet Usage
Saving Constraint Changes

154 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 4
Constraint Class Creation

You use constraint classes to group nets for the purpose of efficiently defining similar electrical
requirements in Constraint Manager. The number of constraint classes you create for a design
typically depends on design complexity, which can include the number of nets, technology
types, and other factors.
Creating Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Creating Constraint Class Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Adding Nets to a Constraint Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Defining Bus Constraint Classes Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Creating a Constraint Class From an Existing Constraint Class . . . . . . . . . . . . . . . . . . 162
Deleting Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

Creating Constraint Classes


You can create constraint classes to group specific nets and then define electrical and signal
integrity constraints. Constraint class constraints are located on the Nets spreadsheet page and
Noise Rules page.
After you create a constraint class, you can create more constraint classes below it to create
hierarchy among nets within a constraint class. By doing so, you can apply general constraints
to all nets within the constraint class hierarchy, and then apply more specific electrical, signal
integrity, and high-speed signal integrity constraints to the nets that make up the further
groupings of constraint classes.

When you want to create a constraint class that includes the constraint definitions of an existing
constraint class, you do so by creating a constraint class from an existing class instead of
creating a new constraint class. For more information, refer to “Creating a Constraint Class
From an Existing Constraint Class” on page 162.

Note
Initially, all nets are assigned to the (All) constraint class.

Procedure
1. From the Navigator, right-click Constraint Classes, and then click New Constraint
Class.

Constraint Manager Users Manual, X-ENTP VX.1.1 155


Constraint Class Creation
Creating Constraint Class Hierarchy

Alternative: From the Nets spreadsheet page, right-click a constraint class, and then
click New Top Level Class.
2. Replace the default name “<user>_New” with a name for the constraint class. Keep the
following things in mind:
• Constraint class names cannot include the following characters: ! \ “ or /
• Spaces are allowed in constraint class names.
• Use a name that reflects the purpose of the constraint class. For example, when
creating a constraint class that will contain only signal nets, replace “New” with
“Signal Nets”.

Results
The new constraint class is now available for selection and assignment throughout Constraint
Manager. When needed, you can rename it. To do so, from the Navigator, expand Constraint
Classes. Right-click a constraint class, click Rename, type a new name, and then press Enter.

Related Topics
• Constraint Class Creation

Creating Constraint Class Hierarchy


After you create a constraint class, you can create more constraint classes that are hierarchically
arranged below it. Constraint class hierarchy is very useful for certain types of high speed nets
(for example, DDR2 and DDR3) that require constraint values (for example, lengths) that must
match to each other in a mathematically-defined way.
For example, after creating a top-level class for all bus nets (for example, “Bus Nets”) in a
design that should share many of the same electrical rules, you could add hierarchy to the
constraint class by creating additional classes that sit below “Bus Nets” to further group the
collection of nets that comprise this constraint class. In the example below, the Bus Nets
constraint class contains two additional classes, which are “8-bit” and “16-bit.”

156 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Class Creation
Creating Constraint Class Hierarchy

Figure 4-1. Navigator Showing Bus Nets Constraint Class With Two Additional
Hierarchical Classes

Tip: From the Constraint Manager Navigator, you can drag and drop constraint classes
into other constraint classes to create or redefine hierarchy. When your goal is to drag
multiple constraint classes at the same time, after you use Ctrl-click to select them, you
must continue to hold the Ctrl key while you drag them.

Although you are not limited to the levels of hierarchy you can create under a constraint class, it
is important to understand that creating hierarchy is not always the best approach. In most cases
it is a best practice to create a new top-level constraint class or simply modify some constraint
values manually for certain nets in a constraint class.

Procedure
1. From the Navigator, expand Constraint Classes. Right-click a constraint class, and then
click New.
Alternative: From the Nets spreadsheet page, right-click a constraint class, and then
click New.
2. Replace the default name “<user>_New” with a unique name for the hierarchical
constraint class.
Note: You can create multiple levels of hierarchy.

Results
The new constraint class is now available for selection and assignment throughout Constraint
Manager. When needed, you can rename it. To do so, from the Navigator, expand Constraint
Classes. Right-click a constraint class, click Rename, type a new name, and then press Enter.

Constraint Manager Users Manual, X-ENTP VX.1.1 157


Constraint Class Creation
Adding Nets to a Constraint Class

Related Topics
• Constraint Class Creation

Adding Nets to a Constraint Class


After you create a constraint class, you can assign nets to it. By default, each constraint class
you create contains no nets or constraint definitions. When you want to create a constraint class
that includes the constraint definitions of an existing constraint class, you do so by creating a
constraint class from an existing constraint class instead of creating a new constraint class.
Note
Each net can belong to no more than one constraint class.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Assign Nets to
Classes.
Alternatives:
• From the Navigator, expand Constraint Classes, right-click a constraint class, and
then click Assign Nets.
• From the Nets spreadsheet page, select one or more nets, right-click a selected net,
and then click Assign Net(s) to Constraint Class. From the Select Constraint Class
dialog box, select a constraint class, and then click OK. When using this option, you
do not need to finish this procedure.
2. From the Assign Nets to Constraint Class dialog box, specify the constraint class from
which you want to select nets by clicking the Source Constraint Class dropdown, and
then clicking a constraint class.
Example: When you are adding nets to your first custom constraint class you can select
from all nets in the design by specifying the (All) constraint class as the source.
3. Specify the constraint class to which you want to add nets by clicking the Target
Constraint Class dropdown, and then clicking a constraint class.
4. (Optional) Limit the source and target net listings to just physical nets. To do so, click to
enable Use physical nets.
5. Under the nets in source constraint class listing, specify the nets that you want to add to
the target class.
Tip: To select multiple nets, you can use Ctrl-click and Shift-click. To select nets by
name, in the field below the list of source nets, enter a search string, and then click .
The tool automatically highlights the matching nets. You can also move nets
individually by double-clicking a specific net.

158 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Class Creation
Defining Bus Constraint Classes Automatically

6. Click , and then click Apply or OK.


Tip: Before clicking OK, make sure that the list of target nets is accurate. To remove
any nets from the list of target nets, click to select them, and then click .

Results
The target nets are added to the constraint class; these nets are no longer a part of the source
class from which they originated.

Examples
Example of Adding All Available Nets in a Source Constraint Class to a Target Constraint
Class
Use the following steps:

1. From the Assign Nets to Constraint Class dialog box, specify a source constraint class,
and then specify a target constraint class.
2. Click , and then click OK.
Example of Swapping All Nets in One Constraint Class With All Nets in Another
Constraint Class
Use the following steps:

1. From the Assign Nets to Constraint Class dialog box, specify a source constraint class,
and then specify a target constraint class.
Note: When you create a new constraint class while the Assign Nets to Constraint Class
dialog box is displayed, the drop down lists are updated appropriately.
2. Click , and then click OK.

Related Topics
• Constraint Class Creation

Defining Bus Constraint Classes


Automatically
You can automate the process of defining and adding nets to unique constraint classes to group
all nets that comprise a bus. Automating this saves time and reduces the instance of error when
performing this task manually.
After you give Constraint Manager the approval to create each constraint class and move the
appropriate nets into the new classes, the Bus constraint for each resultant constraint class is
enabled.

Constraint Manager Users Manual, X-ENTP VX.1.1 159


Constraint Class Creation
Defining Bus Constraint Classes Automatically

Note
The Bus constraint is used to indicate that your PCB layout software should enable bus
planning and routing capabilities for a specific constraint class.

Depending on your constraint-entry process, you will define bus classes before or after creating
constraint classes. Regardless of the process you use, Constraint Manager makes it easy to keep
track of the previous constraint class to which you assigned a net by creating a bus class as a
sub-class of the original class. For example, when you automatically create bus classes for nets
that originate from the default constraint class, (All), each new constraint class is a sub-class of
the (All) class.

Note
After nets are assigned to newly created bus constraint classes, each net in the class is
assigned to a single net class.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Auto Bus.
2. From the Auto Assign Bus dialog box, in the Electrical Net Match String dropdown,
specify the match type you want to use, and then click . For more information, refer to
“Types of Net Matching for Bus Constraint Classes” on page 161/
Result: Under Proposed busses, Constraint Manager creates a row for each suggested
bus. The Suggested Bus Name cell indicates the new constraint class name that
appropriate nets will be moved into.
3. (Optional) To have Constraint Manager group bus nets into constraint classes that
contain no fewer than a specific number of nets, activate the Minimum Bus Width
checkbox, and then modify the numerical value in the field to the right to reflect your
requirement.
4. You should now verify the suggested nets for each proposed bus constraint class. To do
so, next to the Suggested Bus Name, click .
5. From the Assign Nets to New Bus Constraint Class dialog box, under Nets in new bus
constraint class, verify that the list of nets is appropriate (or make adjustments), and then
click OK. You can perform the following tasks with this dialog box:
• To move a suggested net out of the list, keeping it in its present constraint class,
click .
• To move a net from an existing constraint class into the list of nets that will comprise
the new bus constraint class, use the Existing Constraint Classes dropdown and the
Nets in existing constraint class list to select the appropriate nets, and then click .

160 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Class Creation
Types of Net Matching for Bus Constraint Classes

6. From the Auto Assign Bus dialog box, select the proposed bus constraint classes that
you want to create by placing a checkmark beside each appropriate Suggested Bus
Name.
Note: By default, all proposed bus constraint classes are marked for creation. To quickly
de-select all rows, click . To quickly select all rows, click .
Rule: The Net Classes cell for each proposed bus constraint class lists all net classes that
the proposed list of nets are currently assigned to. After a bus constraint class is created,
each net is moved into the first net class listed in the Net Classes cell.
7. For the proposed constraint classes you select, resolve any naming errors, which are
indicated by shading the background color of a Suggested Bus Name cell. In the
following example, the backslash character needs to be removed from the Suggested
Bus Name to satisfy syntax requirements.

Figure 4-2. Suggested Bus Name With a Syntax Problem

8. After you select the proposed bus constraint classes to create, and resolve any naming
errors, click OK.

Results
Constraint Manager creates a new constraint class for each proposed bus that you selected and
moves the appropriate nets into the new constraint classes.

Related Topics
• Constraint Class Creation
• Types of Net Matching for Bus Constraint Classes
• Bus

Types of Net Matching for Bus Constraint


Classes
Constraint Manager uses one of three methods to determine which nets it should suggest for
grouping as a new constraint class.
Refer to the following type information:

• Digit suffix — Constraint Manager suggests constraint classes using nets that include
numeric characters at the end of a net name (for example, MicroNet0 and MicroNet1).

Constraint Manager Users Manual, X-ENTP VX.1.1 161


Constraint Class Creation
Creating a Constraint Class From an Existing Constraint Class

The resultant constraint class name is the common part of the net name (for example,
MicroNet).
Default: The default match type is Digit suffix.
• Bus nets — Constraint Manager suggests constraint classes using nets that include
typical bus-net characters (for example, ~ and _) within a net name. The name of the
resultant constraint class includes a digit range at the end that indicates the number of
nets in this class. For example, Primary_Bus[3:0] means that this bus constraint class
includes four nets: net three, net two, net one, and net zero.
• Custom net match string — Enter a custom search string using letters, numbers and
wildcard characters like “*” and “?”. This method is especially useful when one of the
above methods cannot be used due to an uncommon naming convention for nets.

Related Topics
• Constraint Class Creation

Creating a Constraint Class From an Existing


Constraint Class
You can create a constraint class from an existing one to quickly duplicate the same electrical
and physical rules and use them as the starting point for a new constraint class.
For example, after creating a constraint class that defines many rules for signal nets, you can
duplicate it, add specific nets to it, and then modify the rules that were copied over from the
original constraint class to make them appropriate for another group of nets.

Note
When you create a constraint class from an existing constraint class, the nets in the
existing constraint class remain in that constraint class.

Procedure
1. From the Navigator, expand Constraint Classes, right-click a constraint class, and then
click Clone.
2. Right-click the name of the clone, click Rename, and then enter a different name.
3. Specify the group of nets that comprise the new class by adding nets to this constraint
class.
4. Modify the constraint values defined in this class such that they are appropriate for the
nets you added to this class in the previous step.

162 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Class Creation
Deleting Constraint Classes

Related Topics
• Constraint Class Creation

Deleting Constraint Classes


Deleting a constraint class removes the class object and constraint values, but not the contents
of the class itself (such as differential pairs and nets). Before deletion of a constraint class,
Constraint Manager prompts you to verify that you selected the appropriate constraint class.

Procedure
1. From the Navigator, expand Constraint Classes.
2. Right-click a constraint class, and then click Delete.
Alternative: Click a constraint class, and then press Delete.

Results
After you delete a constraint class, any nets that were assigned to it are returned to the (All)
constraint class.

Related Topics
• Constraint Class Creation

Constraint Manager Users Manual, X-ENTP VX.1.1 163


Constraint Class Creation
Deleting Constraint Classes

164 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 5
Net Class Creation

You use net classes to group nets and objects for the purpose of efficiently defining similar
physical requirements in Constraint Manager. Like constraint classes, the number of net classes
you create for a design typically depends on design complexity, which can include the number
of board layers, technology types, and other factors.
Creating Net Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Adding Nets to a Net Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Creating a Net Class From an Existing Net Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Deleting Net Classes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Creating Net Classes


You can create net classes to group specific types of nets and then define board-level
physical/manufacturing constraints for multiple nets at the same time. The major purpose of
these constraints is to define clearances between objects and specify trace widths. Net class
constraints are located on the Trace & Via Properties spreadsheet page.
When grouping nets into classes, you can group on their function, or level of importance within
a design. When grouping nets based on function, you might classify them to differentiate power
and ground nets from signal nets. When grouping nets based on their level of design
importance, you could classify them to differentiate critical nets in a design from non-critical
nets. For example, a net class for critical nets could contain data nets that serve as the
connections between microprocessors and other critical connections that require a high-degree
of signal integrity.

Note
Initially, all nets are assigned to the (Default) net class.

Constraint Manager Users Manual, X-ENTP VX.1.1 165


Net Class Creation
Creating Net Classes

Figure 5-1. Net Classes Created for a Design

In the example above, the ddr3_group* classes (ddr3_group0, ddr3_group1, ddr3_group2, and
ddr3_group3) all contain nets that are of the same technology type and function, but they have
slightly different current-carrying needs or sensitivity to crosstalk. For this reason, unique net
classes are being used instead of a single ddr3_group net class. Each of the net classes accounts
for the differences in width and spacing.

Tip: When you want to create a net class that includes the constraint definitions of an
existing net class, you do so by creating a net class from an existing class instead of
creating a new net class. For more information, refer to “Creating a Net Class From an
Existing Net Class” on page 169.

Procedure
1. From the Navigator, right-click Net Classes, and then click New Net Class.
Alternative: From the Trace & Via Properties spreadsheet page, right-click a scheme,
and then click New Net Class.

166 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Class Creation
Adding Nets to a Net Class

Note
To create a net class under an existing net class, from the Navigator, right-click a net
class, and then click New. Although you are not limited to the levels of net-class
hierarchy you can create, the recommendation is to use hierarchy sparingly. Doing so
helps to reduce complexity.

2. Replace the default name “<user>_New” with a name for the net class, keeping the
following things in mind:
• You cannot use the following characters: ! \ “ /
• You cannot use spaces in net class names.
• It is best practice to use a name that reflects the purpose of the class. For example,
when creating a net class that will contain only signal nets, replace “New” with
“Signal Nets”.

Results
• You can now move nets into the net class.
• The new net class initially takes on the constraint values of the (Default) net class if it is
a top-level net class. If it is a child net class, it takes on the constraint values of its parent
net class.
• You can rename the net class if needed. To do so, from the Navigator, expand Net
Classes. Right-click the net class, click Rename, type a new name, and then press Enter.
• You can create child classes under a top-level net class as you need to, but

Related Topics
• Net Class Creation

Adding Nets to a Net Class


After you create a net class, you must define the group of nets that should comprise the net
class. By default, each net class that you create contains no nets.
Note
Each net can belong to no more than one net class.

Procedure
1. With the Trace & Via Properties spreadsheet page active, from the Edit menu, click
Assign Nets to Classes.
Alternatives:

Constraint Manager Users Manual, X-ENTP VX.1.1 167


Net Class Creation
Adding Nets to a Net Class

• From the Navigator, expand Net Classes, right-click a net class, and then click
Assign Nets.
• From the Nets spreadsheet page, select one or more nets, right-click a selected net,
and then click Assign Net(s) to Net Class. From the Select Net Class dialog box,
select a net class, and then click OK. When using this option, you do not need to
finish this procedure.
2. From the Assign Physical Nets to Net Class dialog box, specify the net class from which
you want to select nets by clicking the Source Net Class dropdown, and then clicking a
net class.
Example: When you are adding nets to your first custom class you can select from all
nets in the design by specifying the (Default) class as the source.
3. Specify the net class to which you want to add nets by clicking the Target Net Class
dropdown, and then clicking a net class.
4. Under the nets in source net class listing, specify the nets that you want to add to the
target class.
Tip: To select multiple nets, you can use Ctrl-click and Shift-click. To select nets by
name, in the field below the list of source nets, enter a search string, and then click .
The tool automatically highlights the matching nets. You can also move nets
individually by double-clicking a specific net.
5. Click , and then click Apply or OK.
Tip: Before clicking OK, make sure that the list of target nets is accurate. To remove
any nets from the list of target nets, click to select them, and then click .

Results
The target nets are added to the net class; these nets are no longer a part of the source class from
which they originated.

Examples
Example of Adding All Available Nets in a Source Net Class to a Target Net Class
Use the following steps:

1. From the Assign Physical Nets to Net Class dialog box, specify a source net class, and
then specify a target net class.
2. Click , and then click OK.
Example of Swapping All Nets in One Net Class With All Nets in Another Net Class
Use the following steps:

168 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Class Creation
Creating a Net Class From an Existing Net Class

1. From the Assign Physical Nets to Net Class dialog box, specify a source net class, and
then specify a target net class.
2. Click , and then click OK.

Related Topics
• Net Class Creation

Creating a Net Class From an Existing Net


Class
You can create a new net class from an existing class to quickly create one that includes the
same constraint definitions as the source net class. For example, after creating a base net class
for most signal nets in your design, you can duplicate it, and then modify the constraint
definitions in the new class.

Tip: It is important to remember that creating a net class from an existing net class copies
constraints and not nets. After you create a copy, make sure you assign the appropriate
nets to it.

Procedure
1. From the Navigator, expand Net Classes, right-click a net class, and then click Clone.
2. Right-click the name of the clone, click Rename, and then enter a different name.
3. Specify the group of nets that comprise the new class by assigning nets to this net class,
and removing nets from it.
4. Modify the physical constraint values defined in this class such that they are appropriate
for the nets you added to this class in the previous step.

Related Topics
• Net Class Creation

Deleting Net Classes


Deleting a net class removes the class object and constraint values, but not the contents of the
class itself (such as nets, differential pairs, and constraint classes). Before deletion of a net class,
Constraint Manager prompts you to verify that you have selected the appropriate net class.

Procedure
1. From the Navigator, expand Net Classes.

Constraint Manager Users Manual, X-ENTP VX.1.1 169


Net Class Creation
Deleting Net Classes

2. Right-click a net class, and then click Delete.


Alternative: Click a net class, and then press Delete.

Results
After you delete a net class, any nets that were assigned to it are returned to the (Default) net
class.

Related Topics
• Net Class Creation

170 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 6
Physical Rule Definition

You define physical rules to constrain spacing between objects on a board. You can do so at the
net class level and the layer level. You define most physical rules through the Clearances
spreadsheet page and the Trace & Via Properties spreadsheet page, but there is also a set of
general clearance rules that you use to define minimum required distances between board
objects like testpoints.
Specifying General Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Rule-Area Scheme Creation and Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Specifying Trace and Via Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Clearance Rule Set Creation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Assigning Class-To-Class Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Assigning Z-Axis Class-To-Class Clearance Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Package Clearance Rule Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
3D Clearance Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

Specifying General Clearance Rules


You specify general clearance rules to define clearance values between design objects that you
do not specify through the Clearances spreadsheet page. Unlike spreadsheet clearance
constraints, general clearance rules are specified irrespective of net class relationships.
For example, the minimum distance between testpoint centers is a general clearance rule that is
set globally and not defined by relationships between net classes. For a complete listing of
general clearance rules, refer to Table 6-1 on page 172.

Procedure
1. With the Clearances spreadsheet page active, from the Clearances toolbar, click ; or,
from the Edit menu, click Clearances, and then click General Clearances.
2. From the General Clearance Rules dialog box, modify the rules that have an editable
value. Editable rule values are set against a white background. Refer to the table below
for explanations of each general clearance rule.

Constraint Manager Users Manual, X-ENTP VX.1.1 171


Physical Rule Definition
Rule-Area Scheme Creation and Management

3. After you finish modifying general clearance rule values, click OK.

Table 6-1. General Clearance Rules


Rule Purpose
Cavity Inside Edge to Parts Defines the minimum acceptable distance between the
inside edge of a cavity and all parts.
Cavity Outside Edge to Defines the smallest acceptable distance between the
Non-Plane Conductor outside edge of a cavity and all non-plane conductors.
Cavity Outside Edge to Defines the minimum acceptable distance between the
Plane Conductor outside edge of a cavity and all plane conductors.
Cavity Edge to Cavity Edge Defines the smallest acceptable distance between a cavity
edge and all other cavity edges.
Contour, Cavity & Defines the minimum acceptable distance between a
Mounting Hole to Mounting mounting hole (including contour and cavity) and all other
Hole mounting holes.
Contour & Mounting Hole Defines the smallest acceptable distance between a
to Non-Plane Conductor mounting hole and all non-plane conductors.
Placement Outline to Defines the smallest acceptable distance between a
Placement Outline placement outline and all other placement outlines.
Placement Outline to Defines the minimum acceptable distance between a
Placement Obstruct placement outline and all placement obstructs.
Placement Outline to Board Defines the smallest acceptable distance between a
Edge placement outline and all board edges.
Trace to Resistor Defines the minimum acceptable distance between a trace
segment and all resistors.
Pad to Resistor Defines the smallest acceptable distance between a pad
and all resistors.
Testpoint Center to Defines the minimum acceptable distance between the
Testpoint Center center of a testpoint and all other testpoint centers.

Related Topics
• Physical Rule Definition

Rule-Area Scheme Creation and Management


You use schemes to represent defined rule areas on a PCB. The (Master) scheme represents the
entire PCB area. Creating additional schemes gives you the ability to separate areas of a board,
and then manage constraint requirements for each board area independently from global rules.

172 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Rule-Area Scheme Creation and Management

Global rules can be heavily constrained due to the requirements of relatively small collections
of critical nets that cross through concentrated board areas.
Creating Rule Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Copying Rule-Area Schemes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Renaming Rule-Area Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Deleting Rule-Area Schemes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Resetting Clearance Rules to the Master Scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
(Minimum) Scheme Clearances and Widths. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

Creating Rule Area Schemes


You can create additional schemes (aside from the (Master) scheme) to correspond to rules
areas created in the PCB (or that you expect to create in the PCB). After you create a scheme,
you can define trace and via rules and clearance rule sets to which only nets crossing or within
that board area must adhere.

Procedure
1. From the Navigator, right-click Schemes, and then click New Scheme.
2. Replace the default name “<user>_New” with a unique name for the scheme, keeping
the following things in mind:
• You can use spaces when naming rule-area schemes.
• You cannot use the following characters: ! \ “ and /
3. Press Enter.

Related Topics
• Rule-Area Scheme Creation and Management

Copying Rule-Area Schemes


By copying a rule-area scheme for which you have defined trace and via rules and clearance
rule sets, you can rename the copy, and then make modifications to that rule-area scheme to
reuse the majority of its constraint definitions on another area of the board.

Tip: In addition to copying an entire rule-area scheme, you can copy specific clearance
rule sets contained within a scheme. This is useful when you want to duplicate only a
subset of a scheme, instead of an entire PCB rule area.

Constraint Manager Users Manual, X-ENTP VX.1.1 173


Physical Rule Definition
Rule-Area Scheme Creation and Management

Procedure
1. From the Navigator, expand Schemes.
Alternative: Locate a scheme using the Trace & Via Properties or Clearances
spreadsheet pages.
2. Right-click a scheme name, and then click Clone.
3. As a result, the scheme is copied and given the following default name:
“<user>_<scheme>_clone”
4. Hover over the clone, and then click once.
5. Modify the name of the scheme, keeping the following things in mind:
• You can use spaces when naming rule-area schemes.
• You cannot use the following characters: ! \ “ and /and then
6. Press Enter.

Related Topics
• Rule-Area Scheme Creation and Management

Renaming Rule-Area Schemes


You can rename rule-area schemes as needed.
Caution
When you rename a scheme, all rule areas within that scheme are automatically reset to
those in the (Master) scheme. You must go into the PCB system and reset the rule areas to
use the new scheme created as a result of renaming the scheme.

Procedure
1. From the Navigator, expand Schemes.
2. Right-click a scheme name, and then click Rename.
Alternative: You can also modify the name of a scheme by clicking it once, and then
waiting for it to become editable.
3. Modify the name of the scheme, keeping the following things in mind:
• You can use spaces when naming rule-area schemes.
• You cannot use the following characters: ! \ “ and /
4. Press Enter.

174 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Rule-Area Scheme Creation and Management

Related Topics
• Rule-Area Scheme Creation and Management

Deleting Rule-Area Schemes


You can delete rule-area schemes you created as needed. You cannot delete the (Master) and
(Minimum) schemes.

Procedure
1. From the Navigator, expand Schemes.
2. Right-click a scheme name, and then click Delete.

Related Topics
• Rule-Area Scheme Creation and Management

Resetting Clearance Rules to the Master Scheme


For rule-area schemes that you created, you can reset trace and via properties and clearances to
match the (Master) scheme. The (Master) scheme, which is also known as the default rule set,
typically represents the majority of the clearance and width values for a board. These values are
used by default for board areas that do not have user-created schemes and rule areas assigned to
them.
Resetting all or a subset of the constraints stored in a scheme to the (Master) scheme gives you
the ability to effectively “start over” by modifying values of a user-created scheme with the
default rules as the starting point.

Procedure
1. From the Navigator, expand Schemes, right-click a scheme, and then click Reset to
(Master).
2. Verify that the Area Scheme field lists the appropriate scheme.
3. By default, all constraint types are preselected. Click to de-select constraint types that
you do not want to reset to the (Master) scheme, and then click OK.
Example: To exclude resetting Minimum Widths and Typical Widths, click to de-select
these sets of constraint values.

Constraint Manager Users Manual, X-ENTP VX.1.1 175


Physical Rule Definition
Rule-Area Scheme Creation and Management

Figure 6-1. Reset to (Master) Selections

Examples
Example of Resetting Class-To-Class Clearances and Expansion Widths to Those of the
(Master) Scheme
In this example, you want to reset just the class-to-class clearance rules and expansion widths of
user-created scheme “SchemeA” to those of the (Master) scheme.

Use the following steps:

1. From the Navigator, expand Schemes, right-click SchemeA, and then click Reset to
(Master).
2. From the Reset to (Master) dialog box, click Unselect all, and then click to select the
following constraint types:
• Class to Class clearances
• Expansion Widths
3. Verify that the Area Scheme field lists the scheme that you want to reset to the
constraint values of the master scheme, and then click OK.

Related Topics
• Rule-Area Scheme Creation and Management

176 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Specifying Trace and Via Rules

(Minimum) Scheme Clearances and Widths


The constraints within the (Minimum) scheme reflect the minimum clearances and widths
defined across all net classes within each scheme. Because these constraints are generated
dynamically, you cannot edit any values in the (Minimum) scheme. Because each rule area can
have a different net class scheme, and because each net class scheme can have a full set of
widths and clearances, it may be difficult to tell if some of the rules have been set below the
minimum acceptable rules for manufacturing.
By referring to the minimum scheme, you can verify that the clearances constraints in a design
do not violate any manufacturing minimums within any of the schemes that you have created.

Note
Typically, you do not assign the (Minimum) net class scheme to a rule area on the board.

Due to the nature of the minimum scheme, it will not always include all class-to-class clearance
rules, but instead the clearance rule with the minimum constraint value among duplicates. For
example, when you have a clearance rule between class A and class B in the Master scheme,
and an additional scheme you created defines the same relationship between class A and class
B, the minimum scheme includes the clearance rule with the lowest constraint value.

Related Topics
• Rule-Area Scheme Creation and Management

Specifying Trace and Via Rules


After you create a scheme to represent a rule area on a PCB, you can specify the trace and via
rules to which nets within the rule area must adhere. You can simultaneously define trace and
via rules for all board layers for nets in a net class, or you can do so individually for each board
layer.
When specifying trace and via rules, you can define values such as minimal, typical, and
expansion trace widths, typical impedance, and differential pair spacing. You can also override
these values for from-tos that must be routed on specific board layers.

Note
When you change the value for typical trace width, the field solver uses the existing
board stackup to calculate typical impedance. When you change the value for typical
impedance, the field solver is used to calculate typical width.

Procedure
1. From the Trace & Via Properties spreadsheet page, expand a scheme.

Constraint Manager Users Manual, X-ENTP VX.1.1 177


Physical Rule Definition
Specifying Trace and Via Rules

Alternative: From the Navigator, expand Schemes, expand a specific scheme, and then
click Trace & Via Properties.
2. Expand the (Default) physical net class, or a unique physical net class that you created
previously, and then define trace and via rules in one of the two following ways:
• To simultaneously define trace and via rules for all board layers, in the physical net
class name row (for example, (Default)), specify Route, Trace Width, Typical
Impedance, and Differential Spacing rules.
Example: To specify a Trace Width Minimum value of 8 th for all board layers for
nets that are a part of the (Default) physical net class, enter 8 in the Minimum field,
and then press Enter. Constraint Manager updates each board layer to include this
Minimum Trace Width value.

Figure 6-2. Trace Width Constraints

• To individually define trace and via rules for each board layer, in the appropriate
board layer row (for example, SIGNAL_1), specify Route, Trace Width, Typical
Impedance, and differential pair spacing rules.
Rule: When specifying layers to route, you must do so in the (Master) scheme.
When working on a net class in the Master scheme and you change a net class via to
(None), all user-defined schemes automatically change to (None) for that net class.
Example: To specify a Trace Width Expansion value of 12 th for board layers one
and two of the (Default) physical net class, in the SIGNAL_1 and SIGNAL_2 rows,
enter 12 in the Expansion field.

178 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Trace Width Rule Propagation Through Layers for Hierarchical Net Classes

Figure 6-3. Trace Width Constraints at the Layer Level

Related Topics
• Physical Rule Definition

Trace Width Rule Propagation Through Layers


for Hierarchical Net Classes
When your constraint and object data for a design includes hierarchical net classes, you can
quickly assign unique trace width constraints to each instance of a signal or plane layer as it
appears in all child net classes. Doing so makes it easy to allow for deviations from net class
hierarchy when you need to allow for larger or smaller trace widths when traces are on a certain
board layer.
In the example illustration below, you can see that trace width constraints become more tightly
constrained at deeper levels of net class hierarchy. However, the Trace Width Minimum
constraint for layer SIGNAL_3 is even more tightly constrained through the entire net class
hierarchy. One reason for the usage you see below is for trace congestion on this layer. With a
smaller minimum value, it is easier to ensure that no traces will be routed any larger than
needed.

Constraint Manager Users Manual, X-ENTP VX.1.1 179


Physical Rule Definition
Trace Width Rule Propagation Through Layers for Hierarchical Net Classes

Example 6-1. Defining a Trace Width Rule for all Lower Levels of Net Class
Hierarchy

To replicate this, you would simply enter “0.02” within the Parent_Class row for SIGNAL_3.
After you press Enter, Constraint Manager gives you the option to apply that same value to each
instance of layer SIGNAL_3 within the lower levels of net-class hierarchy. This approach
becomes even more beneficial when you have many child-level net classes and need to quickly
and accurately define a constraint deviation without having to enter it multiple times.

Related Topics
• Physical Rule Definition

180 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Defining Via Assignments

Defining Via Assignments


You can assign a specific via to a net class when the default via is not suitable. When defining
via assignments, you can choose from the default, none, or any available vias. For all via
assignments other than default, the Constraint Manager spreadsheet indicates the specification
with "Custom" in the Via Assignments field.

Tip: The vias that are available for assignment are only those in your local library. To
make additional vias available, you must use Library Services in Library Manager to
export them from your Central Library to the local library.

Procedure
1. From the Trace & Via Properties spreadsheet page, expand a scheme.
2. In the Via Assignments field of the net class for which you want to define or modify a
via assignment, click .
Alternative: Click a net class spreadsheet row, and then from the Edit menu, click Via
Assignments.
3. From the Via Assignments dialog box, in the Net Class Via column, click the pulldown
to specify a different via assignment.
Tip: When defining multiple via assignments simultaneously, to set all to the default
assignment, click Set to Default.
Note: Optionally, you can use the dropdown buttons to change the Scheme and Net
Class you want to modify.
4. Repeat step 3 as needed. When you are finished, click OK or Apply.
Examples
Example of Net Class Via Assignments
In the example of the Via Assignment dialog box below, two of three rows have a Net Class Via
set to other than the default via. This custom via assignment is for the (Master) scheme. The net
class “DiffPair” is a sub-class of the (Default) net class.

Constraint Manager Users Manual, X-ENTP VX.1.1 181


Physical Rule Definition
Clearance Rule Set Creation

Example 6-2. Via Assignments per Via Span

Related Topics
• Physical Rule Definition
• Overriding Trace Width Constraints for From-Tos

Clearance Rule Set Creation


You can create clearance rule sets and then define their constraints to specify spacing
requirements between objects on a board. These constraints are located on the Clearances
spreadsheet page.
You use “standard” clearance rule sets to specify spacing constraints for objects on the same
board layer. For objects on adjacent board layers, you use z-axis clearance rule sets. Adjacent-
layer constraints are located on the Z-Axis Clearances spreadsheet page.

Note
The (Default Rule) and (Default Z-Axis Rule) clearance rule sets contain the default
clearances for a design. When assigning clearance rule sets between net classes, the
values in (Default Rule) are used by default; however, (Default Z-Axis Rule) values are
not used by default. You must explicitly assign them, or the rules of a different z-axis
clearance rule set, between net classes.

Creating Clearance Rule Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183


Creating Z-Axis Clearance Rule Sets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Defining Embedded Resistor Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Defining SMD Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

182 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Creation

Creating Clearance Rule Sets


After you create a scheme to represent a rule area on a PCB, you can specify clearance rules to
which net objects within the rule area must adhere. You can define clearance rules such as Trace
to Pad, SMD Pad to Trace, Resistor to Via, and Via to Plane.
Different net classes often require unique design rules in order to maintain signal integrity
during transmission. By creating clearance rule sets, you can address these requirements.
Because Constraint Manager handles conflicts between rule set constraints, when one does
occur, the larger clearance value is used.

Procedure
1. From the Navigator, expand Schemes, right-click a specific scheme, and then click New
Clearance Rule.
Alternative: From the Clearances spreadsheet page, right-click a scheme, and then
click New Clearance Rule.
2. Replace the default name “<user>_New” with a unique name for the clearance rule set.
Spaces are allowed in clearance rule set names.

Results
The rule set now exists for constraint definition and assignment between net classes.

Related Topics
• Clearance Rule Set Creation

Defining Clearance Rules for a Rule Set


You define clearance rules of a rule set to specify the amount of spacing you need between
objects on the same board layer.

Procedure
1. From the Clearances spreadsheet page, expand the (Master) scheme, or a previously
defined scheme.
2. Expand the clearance rule set for which you want to define clearance rules, and then
make your definitions in one of two ways:
• To simultaneously define clearance rules for all board layers, in the clearance rule
set name row (for example, (Default Rule)), specify any appropriate clearance rules.
Example: When your distance unit is thousandths, to specify a Trace To Trace
separation of 15 for all board layers, in the (Default Rule) row, enter 15 into the

Constraint Manager Users Manual, X-ENTP VX.1.1 183


Physical Rule Definition
Clearance Rule Set Creation

Trace field of the Trace To heading, and then press Enter. Constraint Manager
updates each board layer to include this Trace to Trace value.

Figure 6-4. Trace To Clearances

• To individually define clearance rules for each board layer, in the appropriate board
layer row (for example, PHYSICAL_2), specify any appropriate clearance rules.
Example: To specify a Trace To Trace separation of 12 for board layer two, in that
row, enter 12 in the Trace field of the Trace To heading.

Figure 6-5. Trace To Clearances Per Layer

184 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Creation

Note
Clearance rules are not applied to your design until you create associations between
specific net classes. To do so, refer to “Assigning Class-To-Class Clearance Rules” on
page 191.

Examples
Example of Defining Differential Pair Spacing Between Channels and Ports
In this example, you have two ports, each of which consist of four differential pairs (eight
channels). You want to define unique constraint values to control spacing between differential
pairs (a), spacing between differential-pair traces (b), and spacing between traces of each port
(c). The following illustration depicts these spacing requirements.

Example 6-3. Three Trace-Spacing Requirements for Differential Pairs

Use the following steps:

1. From the Trace & Via Properties spreadsheet page, define Differential Spacing as (a)
in each net class that includes one of these differential pairs.
2. Create separate net classes for each port, and then assign each set of respective
differential pairs into these new net classes (for example, Port_1 and Port_2).
3. Create two clearances rule sets. One for nets within a port (b), and another for nets
between ports (c).
4. From the Clearances spreadsheet page, perform the following tasks:
• For the nets within a port clearance rule set (for example, Within_Port), define Trace
to Trace as (b).
• For the nets between ports clearance rule set (for example, Across_Ports), define
Trace to Trace as (c).
5. Assign the following class-to-class clearances rules:
• Within_Port between net class Port_1 and net class Port_1.
• Within_Port between net class Port_2 and net class Port_2.
• Across_Ports between net class Port_1 and net class Port_2.

Constraint Manager Users Manual, X-ENTP VX.1.1 185


Physical Rule Definition
Clearance Rule Set Creation

Example 6-4. Class to Class Clearances

Related Topics
• Clearance Rule Set Creation

Creating Z-Axis Clearance Rule Sets


You can define z-axis clearance rules like Trace to Trace and SMD Pad to Trace. Unlike
standard clearance rules, which control spacing between design objects on the same signal
layer, z-axis clearance rules control spacing between design objects on different signal layers.
Z-axis clearance rules are especially important for high-speed designs where net density is very
tight.
It is important to note that z-axis clearance rules are absolutes based on just clearance. No
exceptions are made as a result of layer-direction bias. For example, when dielectric thickness is
smaller than a z-axis clearance constraint, no applicable trace is allowed to run over or under
another trace. This is still the case if the traces cross at right angles. Currently, z-axis clearances
are not applied between segments of the same net.

Procedure
1. From the Z-Axis Clearances spreadsheet page, right-click an existing z-axis clearance
rule set, and then click New.
2. Replace the default name “<user>_New” with a unique name for the clearance rule set.
Spaces are allowed in z-axis clearance rule set names.

Results
The rule set now exists for constraint definition and assignment between net classes.

186 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Creation

Related Topics
• Clearance Rule Set Creation

Defining Z-Axis Clearance Rules for a Rule Set


You define z-axis clearance rules of a rule set to specify the amount of spacing you need
between objects on adjacent board layers.

Procedure
From the Z-Axis Clearances spreadsheet page, expand the clearance rule set for which you
want to define clearance rules, and then make your definitions in one of two ways:

• Define clearance rules for all board layers — In the clearance rule set name row,
specify any appropriate clearance rules. Refer to the following example.

Figure 6-6. Z-Axis Clearances

• To individually define clearance rules for each board layer, in the appropriate board
layer row, specify any appropriate clearance rules. Refer to the following example.

Figure 6-7. Z-Axis Clearances per Layer

Note
Z-axis clearance rules are not applied to your design until you create associations
between specific net classes. To do so, refer to “Assigning Z-Axis Class-To-Class
Clearance Rules” on page 194.

Related Topics
• Clearance Rule Set Creation

Constraint Manager Users Manual, X-ENTP VX.1.1 187


Physical Rule Definition
Clearance Rule Set Creation

Defining Embedded Resistor Clearance Rules


When your design includes embedded resistive components like thick-film and thin-film
resistors, you can define spacing requirements between these parts and conductive board
elements (for example, traces, pads, vias), and other resistors. Embedded resistors are typically
located on internal board layers but can also be placed on external board layers.
The difference between thick-film resistors and thin-film resistors is the production process
used to create each type of resistor. Thin-film resistors are typically “subtractive” because they
are created through an etching process. Thick-film resistors are typically “additive” because
they are instead printed on metal electrodes.

188 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Creation

The clearance area that you define with each Resistor to <object> and EP Mask to <object>
constraint is depicted in the illustration below. As you can see, thick-film resistor clearance is
based on protective-mask/overglaze adjacency. Clearance of thin-film resistors is based on
production-mask adjacency.

Figure 6-8. Embedded Resistor Clearances Defined by These Constraints

Unlike embedded resistors, you do not need to define unique clearance rules for embedded
capacitive components. Standard pad clearance constraints (for example, Trace to Pad, Pad to
Pad, and Pad to Plane) handle their clearance requirements. Examples of embedded capacitive
components are mezzanine, screen-printed, and interdigitated capacitors.

Procedure
Define any of the following embedded resistor clearance rules:

• Thick-film resistor clearance rules — From the Clearances spreadsheet page, define
the following constraints for an entire clearance rule set, or individually for each board
layer of a rule set:
o “Embedded Resistor To Trace” on page 367
o “Embedded Resistor To Pad” on page 368

Constraint Manager Users Manual, X-ENTP VX.1.1 189


Physical Rule Definition
Clearance Rule Set Creation

o “Embedded Resistor To Via” on page 369


o “Embedded Resistor To Resistor” on page 370
• Thin-film resistor clearance rules — From the Clearances spreadsheet page, define
the following constraints for an entire clearance rule set, or individually for each board
layer of a rule set:
o “EP Mask To Trace” on page 371
o “EP Mask To Pad” on page 372
o “EP Mask To Via” on page 373
o “EP Mask To Resistor” on page 374

Note
“Mask” refers to the production mask of a thin-film resistor. It does not mean solder
mask.

Related Topics
• Clearance Rule Set Creation

Defining SMD Clearance Rules


When your design includes surface mount devices (SMD), you can define spacing requirements
between the pads of these devices and conductive board elements (for example, traces and vias).
SMDs are also commonly referred to as surface mount technologies (SMT).

Procedure
1. From the Clearances spreadsheet page, define the following constraints for an entire
clearance rule set, or individually for each board layer of a rule set:
• “Trace To SMD Pad” on page 359
• “Via To SMD Pad” on page 365
2. From the Z-Axis Clearances spreadsheet page, define the following constraints for an
entire clearance rule set, or individually for each board layer of a rule set:
• “Trace To SMD Pad” on page 381

Related Topics
• Clearance Rule Set Creation

190 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Assignment

Clearance Rule Set Assignment


After you create class-to-class clearance rule sets you must assign them between pairs of net
classes to make use of the constraint values you defined as part of a rule set.
Assigning Class-To-Class Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Deleting Class-To-Class Clearance Rule Assignments. . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Assigning Z-Axis Class-To-Class Clearance Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Deleting Z-Axis Class-To-Class Clearance Rule Assignments . . . . . . . . . . . . . . . . . . . . 196

Assigning Class-To-Class Clearance Rules


After you create clearance rule sets for a rule-area scheme, you can assign class-to-class
clearance rules that maintain certain clearances between specific net classes. By doing so, you
can apply the rules you defined in a clearance rule set to one or more pairs of net classes.
You use class-to-class rules to maintain very precise clearance requirements between specific
net objects. These requirements usually relate to electrical, safety, or manufacturability
concerns. For example, high voltage nets in a design that need certain spacing based on the
voltage level of each net.

As you make these assignments, it is important to be aware of the following things:

• Class-to-class clearance rules are obeyed between net classes to which you explicitly
assign them. Assignments do not include sub-level net classes. Any child net classes
under a parent net class do not obey the clearance rules of the parent net class.
• When selecting net classes to associate with a clearance rule, you can quickly specify all
other net classes by using the (All) column. Although this can be useful, the (All)
column does not provide for granular rule assignment between a net class and other net
classes.
• Cells that you do not explicitly define (empty cells) use (Default Rule). This assignment
in the matrix is hardcoded into the top-left cell as (All) to (All).

Prerequisites
• You created the clearance rule sets you want to assign between net classes. For more
information, refer to “Creating Clearance Rule Sets” on page 183.

Procedure
1. From the Clearances toolbar, click ; or, from the Edit menu, click Clearances, and
then click Class to Class Clearance Rule.
2. From the Class to Class Clearances dialog box, in the “Net Class to Class Clearance
Rules for Scheme” pulldown, select a scheme.

Constraint Manager Users Manual, X-ENTP VX.1.1 191


Physical Rule Definition
Clearance Rule Set Assignment

Tip: Many schemes use the same rule assignments and you can save time by
prepopulating a scheme with the assignments of another scheme. To do so, click .
From the Select source scheme dialog box, click a scheme, and then click OK.
3. Populate cells in any of the following ways:
• One cell at a time — Click within an editable cell to select the rule to use between
two specific net classes (for example, (Default) and (Default)).
• Assign the same rule to multiple cells — Use Ctrl-click and Shift-click to select a
group of cells. After selecting the last cell, continue holding Ctrl or Shift while you
use the dropdown to make the rule selection.
• Clone certain cell assignments of another scheme — Select one or more cells,
right-click, click Clone rules from scheme, and then click a scheme.
• Copy and paste — Select one or more cells, press Ctrl-C, click a single cell, and
then press Ctrl-V. For example, you could select all of the cells in the (All) column
and then quickly copy them into the (Default) column.
As you make changes, the dialog box updates to show them by highlighting the
background of these cells. This makes it easy for you to keep track of all your changes.

Figure 6-9. Highlighting Shows Cell Changes

4. Continue making rule assignments between net classes.

Tip: Optionally, to revert your changes to the scheme, click .

5. To assign class-to-class clearance rules for a different scheme, return to step 2.


6. After you finish, click Apply or OK.
Examples
Example of Clearance Rule Assignments
In the following example, there are four net classes (10th, 20th, 30th, and 40th), and the
(Default) net class. There are also four clearance rules of the same name. Each of the clearance
rules defines all clearance constraints to the same value as the name of the clearance rule set.
The clearance constraints defined for (Default Rule) are all set to 5 th.

192 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Assignment

Example 6-5. Clearance Rule Assignments by Net Class

The common names for net classes and clearance rule sets is only for the illustrative purposes of
this example, but you may find it useful to group nets into classes based on this style of naming.

Here is a listing of all clearance rule assignments based on the above dialog box example:

• (Default Rule) is the hardcoded assignment between all net classes, (All) and (All). If all
other cells in this picture where empty, (Default) would be the only rule assigned
between every possible pairing of net classes. The middle callout in the above picture is
an example of this. If it is blank, it uses (Default Rule).
• The clearance rule 10th is assigned between the net class 10th and all other net classes.
• The clearance rule 20th is assigned between the net class 20th and all other net classes.
• The clearance rule 30th is assigned between the net class 30th and all other net classes.
• The clearance rule 40th is assigned between the net class 40th and all other net classes.
• The clearance rule 10th is assigned between the net class 20th and itself. This means that
nets within this class can use smaller clearances (based on the definitions in the rule set).
• The clearance rule 20th is assigned between the net class 30th and itself. This means that
nets within this class can use smaller clearances (based on the definitions in the rule set).
• The clearance rule 30th is assigned between the net class 40th and itself. This means that
nets within this class can use smaller clearances (based on the definitions in the rule set).

Constraint Manager Users Manual, X-ENTP VX.1.1 193


Physical Rule Definition
Clearance Rule Set Assignment

Related Topics
• Clearance Rule Set Assignment
• Creating Clearance Rule Sets

Deleting Class-To-Class Clearance Rule


Assignments
You can delete rule assignments as needed. If doing so, you can delete single rules, multiple
rules at one time, or all rules.

Procedure
1. From the Clearances toolbar, click ; or, from the Edit menu, click Clearances, and
then click Class to Class Clearance Rule.
2. From the Class to Class Clearances dialog box, in the “Net Class to Class Clearance
Rules for Scheme” pulldown, select a scheme.
3. Do any of the following things:
• Delete a single rule assignment — Click a row, and then press Delete.
• Delete multiple rule assignments — Use Ctrl-click or Shift-click to select multiple
cells, and then press Delete.
• Delete all rule assignments — Click .

Tip: Optionally, to revert your changes to the scheme, click .

4. After you finish deleting rule assignments, click Apply or OK.

Related Topics
• Clearance Rule Set Assignment

Assigning Z-Axis Class-To-Class Clearance Rules


After you create z-axis clearance rule sets, you use the same spreadsheet page to assign class-to-
class clearance rules that maintain unique clearances between specific net classes. By doing so,
you can apply the rules you previously defined in a z-axis clearance rule set to one or more pairs
of physical net classes to control adjacency relationships between nets. When selecting net
classes to associate with a clearance rule, you can quickly specify all net classes by using the
(All) row.

194 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Clearance Rule Set Assignment

Note
When you update your PCB board stackup after already having defined z-axis clearances
in Constraint Manager, the clearance rules will become invalid. You must re-enter them
and assign them again.

When assigning these clearance rules between net classes, you can only create relationships for
the (Master) scheme; however, they are used for all rule areas (rule-area schemes). For example,
when your design includes ten user-created rule-area schemes, assigning a z-axis clearance rule
set between net class A and net class B results in those ten schemes and the (Master) scheme
using the assignment.

The following illustration shows z-axis trace to trace relationships for two net classes. Because
the net classes contain mostly high-speed nets, that by nature are driving fast edge rates, it is
important to specify adjacent layer clearances between their net objects.

Figure 6-10. Z-Axis Trace to Trace Minimums

Depending on the number of adjacent layers that separate two design objects, z-axis clearance
rules may not be necessary. For this purpose, you can disable these rules when the number of
layers between design objects exceeds a certain amount. For example, after applying a z-axis
clearance rule set named “Fast_Clocks” to net class A and net class B, you specify that the
maximum depth is 5 layers. As a result, Trace to Trace distances between nets in class A and B
will not be obeyed when validating z-axis distances between layers one and seven, two and
nine, and so on.

Note
Class-to-class clearance rules are obeyed between net classes to which you explicitly
assign them. Sub-level net classes are not included in the assignment. Any child net
classes under a parent net class do not obey the clearance rules of the parent net class.

Procedure
1. With the Z-Axis Clearances spreadsheet page active, from the Clearances toolbar, click
; or, from the Edit menu, click Clearances, and then click Z-Axis Class to Class
Clearance Rule.

Constraint Manager Users Manual, X-ENTP VX.1.1 195


Physical Rule Definition
Clearance Rule Set Assignment

2. In the grid display under Source Net Class(es), click within an editable cell to select the
rule to use between two specific net classes.
Tip: To simultaneously assign the same rule to multiple cells, use Ctrl-click and Shift-
click to select a group of cells. After you have selected the last cell, you must continue
holding Ctrl or Shift while you make the rule selection.
3. (Optional) To specify a maximum layer depth between design objects:
a. In the cell you just edited, click .
b. From the Setup Z-Axis Clearance dialog box, click the Max layer depth dropdown,
select a maximum value, and then click OK.
To specify a maximum layer depth that includes all layers, from the Max layer depth
dropdown, select 0. It is important to understand, though, that because of the shielding
effects of plane layers, as soon as a plane layer is encountered, all layers after the plane
layer are ignored. For example, when you define a rule for layer one of an eight layer
board and set the depth to 0, a plane layer that exists as layer four would cause the rule to
apply between just layers one and two, and layers one and three.
Example: When specifying a maximum layer depth of 3, nets within classes governed
by the clearance rule are not required to obey it unless they are separated by no more
than three board layers.
4. Continue making rule assignments between net classes.
Rule: Those that you do not explicitly define (empty cells) do not use (Default Z-Axis
Rule).
5. After you finish, click OK.

Related Topics
• Clearance Rule Set Assignment
• Creating Z-Axis Clearance Rule Sets

Deleting Z-Axis Class-To-Class Clearance Rule


Assignments
You can delete these rules as needed.

Procedure
1. With the Z-Axis Clearances spreadsheet page active, from the Clearances toolbar, click
.
2. Click the row of an existing class-to-class clearance rule assignment, and then click the
empty selection, which is the first in the list.

196 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Package Clearance Rule Assignment

3. After you finish reverting assignments, click OK.

Related Topics
• Clearance Rule Set Assignment

Package Clearance Rule Assignment


You use package clearances rules to specify required clearance distances between specific
packages types and other objects on a board. When doing so, you define package clearance type
rules to create general clearance rules for a certain package, and package-type-to-package-type
clearance rules to create more specific clearances rules for pairings of certain packages.
Assigning Package Clearance Type Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
Assigning Package-Type-to-Package-Type Clearance Rules. . . . . . . . . . . . . . . . . . . . . . 198

Assigning Package Clearance Type Rules


You can assign clearance rules to each package type to specify the required amount of clearance
distance between a package type and all other design components that come close to it on a
board layer.
Each package type clearance rule you define can be followed for the top of the board, its
bottom, or both the top and bottom sides. This gives you the ability to create more spacing or
less spacing between components depending on the assembly technique used when placing
components on the board, the soldering techniques used, or both. For example, you can define a
package type clearance rule for integrated circuit flip chips that requires a bottom-side clearance
of 200 th between this component type and all other design objects.

Note
When using xPCB Layout as part of your design flow, unique package types you create in
the Cell Editor of that PCB layout tool will show up in Constraint Manager as part of the
drop-down list of selectable package types. To create a unique package type in xPCB
Layout, you must use the Clearance Type field of the Cell Editor. For more information,
refer to the documentation for xPCB Layout.

Procedure
1. With the Clearances spreadsheet page active, from the Clearances toolbar, click ; or,
from the Edit menu, click Clearances, and then click Assign Package Type
Clearances.
2. From the Package Clearance Type Rules dialog box, to the right of Package type
clearance override rules, click to create a new rule.
3. In the Package Clearance Type cell, click .

Constraint Manager Users Manual, X-ENTP VX.1.1 197


Physical Rule Definition
Package Clearance Rule Assignment

4. From the Select Package Type dialog box, select a package type (for example, IC -
BGA), and then click OK.
5. In the Side cell, click to specify board layer side of top, bottom, or both sides.
6. In the Clearance cell, specify the required clearance distance for this package type.
Rule: This clearance defines the required distance between this package type and all
other design objects.

Related Topics
• Package Clearance Rule Assignment

Deleting Package Clearance Type Rules


You can delete these types of rules as needed.

Procedure
1. With the Clearances spreadsheet page active, from the Clearances toolbar, click .
2. From the Package Clearance Type Rules dialog box, under Package type clearance
override rules, click a row, and then click .
Tip: To select multiple rules, use Ctrl-click.

Related Topics
• Package Clearance Rule Assignment

Assigning Package-Type-to-Package-Type
Clearance Rules
In addition to defining package clearance type rules, you can also define package-type-to-
package-type rules. These rules give you the ability to specify directional component clearances
between specific package types for packages on the top, bottom or both layers.

Prerequisites
• You know how package side and end are defined for each of the packages you want to
select in the procedure below. For more information, refer to“Package Side and End
Determination” on page 201.

Procedure
1. With the Clearances spreadsheet page active, from the Clearances toolbar, click .

198 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Package Clearance Rule Assignment

2. If you have not done so already, create two package clearance type rules to associate
before you continue to step 3. For more information, refer to “Assigning Package
Clearance Type Rules” on page 197.
3. From the Package Clearance Type Rules dialog box, next to “Package type to package
type clearance override rules”, click to create a new rule.
4. In the Pkg Clr Type cell of the new row, click to select the first Package clearance type
override rule you created.
5. In the second Pkg Clr Type cell, click to select the second Package clearance type
override rule you created.
6. In the Side, Direction, and Clearance cells, specify the side, direction, and clearance
distance between package types, and then click OK.
Here are definitions for each direction you can choose:
• All — Top, bottom, left, and right sides of one component type to the top, bottom,
left, and right sides of another component type.
• Side to Side — Left and right sides of one component type to the left and right sides
of another component type.
• End to End — Top and bottom ends of one component type to the top and bottom
ends of another component type.
• Side to End — Left and right sides of one component type to the top and bottom
ends of another component type.
• End to Side — Top and bottom ends of one component type to the left and right
sides of another component type.

Caution
The direction types “Side to End” and “End to Side” are unique only if you define values
for both pairings. If you define a value for one but not the other, the undefined pairing
uses the value you specified for the defined pairing. For example, when you define a
value for “Side to End” but not “End to Side,” “End to Side” uses the “Side to End”
value, too.

Examples
Example of Assigning a Package-Type-to-Package-Type Rule for Both Layer Sides and All
Directions
In this example, you want to assign a package-type-to-package-type rule between Discrete -
Chip components and IC - Flip Chip parts. Each of these package types already has a package
clearance type rule that requires a clearance distance of 50 th between instances of these
components and all other board objects. However, when these components are in the same
vicinity of a board layer, you require a clearance distance of 500 th between them, and for all
directions.

Constraint Manager Users Manual, X-ENTP VX.1.1 199


Physical Rule Definition
Package Clearance Rule Assignment

Use the following steps:

1. With the Clearances spreadsheet page active, from the Clearances toolbar, click .
2. From the Package Clearance Type Rules dialog box, next to Package type to package
type clearance override rules, click .
3. In the first Pkg Clr Type cell of the new row, select Discrete - Chip.
4. In the second Pkg Clr Type cell, select IC - Flip Chip.
5. In the Side cell, select Both, and then in the Direction cell, select All.
6. In the Clearance cell, enter 500. After you finish, the bottom portion of the Package
Clearance Type Rule dialog box should look like the following illustration.

Example 6-6. Discrete - Chip to IC - Flip Chip Clearance Rule

Related Topics
• Package Clearance Rule Assignment

Deleting Package-Type-to-Package-Type Rules


You can delete these types of rules as needed.

Procedure
1. With the Clearances spreadsheet page active, from the Clearances toolbar, click .
2. From the Package Clearance Type Rules dialog box, under Package type to package
type clearance override rules, click a row, and then click .
Tip: To select multiple package type to package type clearance rules, use Ctrl-click.

Related Topics
• Package Clearance Rule Assignment

200 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
Package Clearance Rule Assignment

Package Side and End Determination


In order to define the appropriate directional clearance rules between packages, you need to
know which parallel “sides” of a package are defined in your layout system as the sides, and
which are defined as the ends.
The illustration below depicts the difference between side-to-side, end-to-end, side-to-end, and
end-to-side clearances between directional package type clearance rules based on the package
orientation within Cell Editor.

Figure 6-11. Package-Type-to-Package-Type Directional Clearances

How a package cell is oriented in Cell Editor controls what the sides and ends are. The sides are
always on the left and right, and the ends are always top and bottom. Therefore, if you change
the orientation of a cell, the definition changes accordingly. In Figure 6-11, the long sides are
left and right (sides), and the short sides are top and bottom (ends). In Figure 6-7, the orientation
on the right would correspond to the directional clearances above.

Constraint Manager Users Manual, X-ENTP VX.1.1 201


Physical Rule Definition
Package Clearance Rule Assignment

Example 6-7. Cell Editor Showing Different Orientations for the Same Package
Cell

You might be wondering why side-to-end and end-to-side are not the same. Although you can
define them as if they are, having the ability to define clearances based on “which side” and
“which end” give you greater flexibility. For example, when the end of an IC-BGA is next to
the side of an IC-SIC, you might want more clearance than when the side of an IC-BGA is next
to the end of an IC-SIC. Commonly, a distinction like this is used to provide a greater or lesser
amount of room depending on adjacency of component pins. Some components have the same
number of pins on sides and ends, while others have pins on just sides or ends. How you define
these clearances can vary greatly based on the unique footprint of each component, and the
clearance relationships you want to create between them.

When defining end-to-side and side-to-end rules, it is important not to define redundant rules.
For each pairing of package types, they only need a single end-to-side rule and one side-to-end
rule for the purpose of defining all clearance requirements. For two example packages A and B,
you would define just one of each set of the following rules, but not both:

• End A to side B, side A to end B


• Side B to end A, end B to side A

Note
When you assign a package-type-to-package-type rule, the package top and bottom
clearances you defined in each package clearance type rule are overridden by the
clearances defined in the package adjacency rule.

Related Topics
• Package Clearance Rule Assignment

202 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
3D Clearance Specification

3D Clearance Specification
3D clearances are generally the XY axis and Z axis distance requirements of the mechanical
designer. By defining them in Constraint Manager, you can check 3D clearances in your layout
system to ensure that no hazards are identified due to insufficient spacing between mechanical
and assembly objects.
Note
For information on how your layout system uses and checks these 3D clearances, refer to
“Setting Online Checking for Placement” in PCB Verification Guide.

By default, 3D clearances have a general definition that is used for all mechanical and assembly
objects. These default values are an Optimal XY of 10 th and an Optimal Z of 5 th. Minimum
XY and Minimum Z values are not defined by default.

You can define unique definitions for Optimal XY, Optimal Z, Minimum XY, and Minimum Z
to specify smaller or larger clearances between certain pairings of mechanical and assembly
objects. Before defining unique 3D clearances or changing the general definitions, it is
important to understand the difference between the two sets of values:

• Minimum — Lowest clearance value that does not produce an error.


• Optimal — Lowest clearance value that does not significantly affect production yield.

Figure 6-12. Relationship Between Minimum and Optimal 3D Clearance Values

Figure 6-12 depicts the difference between minimum and optimal values. Based on example
values of 5 th and 10 th, checking in the layout system would result with the following:

• Any clearance of 10 th or above would pass.


• Any clearance between 5 th and 9 th would issue a warning.
• Any clearance below 4 th would produce an error.
You define mechanical and assembly clearances through the “3D Clearances” add-in. It is
important to understand that clearances you define to control mechanical and assembly

Constraint Manager Users Manual, X-ENTP VX.1.1 203


Physical Rule Definition
3D Clearance Specification

constraints do not overlap the definitions of any other clearances that you can define in
Constraint Manager.

Defining 3D Clearances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204


3D Clearance Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

Defining 3D Clearances
You can define 3D clearances to specify the XY and Z constraints that should be checked by
your layout system to ensure that there is sufficient spacing between certain pairings of
mechanical and assembly objects.
Note
Minimum XY and Z clearances cannot be larger than Optimal XY and Z clearances. The
same is true in reverse. If you enter a minimum clearance that is greater than the optimal
clearance, or an optimal clearance that is less then the minimum clearance, both
clearances change to the new value. Constraint Manager does this automatically to keep
you from creating conflicts in the constraint set.

Procedure
1. From the Edit menu, click Clearances, and then click 3D Clearances.
2. In the Any to Any row, do the following things:
• Modify the values for Optimal XY and Optimal Z (if needed).
• Specify values for Minimum XY and Minimum Z (if needed).
3. To define unique clearances for a specific 3D object relationship, do the following
things:
a. Click Add Clearance, and then click the appropriate pairing (for example, Bond
Wire to Assembly).
b. In the row of the 3D clearance, change the values for both Optimal XY and Optimal
Z. (These values start out as the current definitions in the Any to Any row). You
must define values for both of the Optimal cells (or leave both blank).
c. If needed, specify values for Minimum XY and Minimum Z. (When defined, these
values start out as the current definitions in the Any to Any row). You must define
values for both of the Minimum cells (or leave both blank).

Note
To reset a 3D clearance to the “Any to Any” values, right-click it, and then click Delete
Clearances. Also, you can use Ctrl-click to highlight multiple rows.

4. Repeat step 3 to define unique 3D clearances as needed.

204 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
3D Clearance Specification

In the example illustration below, most 3D objects use the default clearances, but there are
several that have unique definitions.

Figure 6-13. General and Unique 3D Clearance Definitions

Results
The 3D clearances for the design are available for checking in your layout system after you
bring any pending changes into that system.

Related Topics
• 3D Clearance Specification

Constraint Manager Users Manual, X-ENTP VX.1.1 205


Physical Rule Definition
3D Clearance Descriptions

3D Clearance Descriptions
To access: Edit > Clearances > 3D Clearances
Each 3D clearance defines a distance constraint between two 3D objects. To understand the
relationships that you define with a specific 3D clearance, it is important to have a clear
understanding of each of the 3D objects that are part of a pairing.

Table 6-2. 3D Objects


Object Description
Active Board The current PCB project open in Constraint Manager.
Assembly The physical packaging (enclosure) in which the Active
Board (PCB) resides.
Bond Wire A conductive wire that forms a connection in one of the
following ways:
• By leaving the surface of the Active Board and returning
to another point on the Active Board.
• By leaving the Active Board and connecting to a die pad
on top of a die.
Board Edge Cavity wall or edge in the current Active Board.
Component Physical package placed within the layout system.
Mechanical One of the following things:
• A layout system mechanical cell.
• An imported mechanical cell from an MCAD system.
PCB Assembly A PCB design exported from the layout system that is used
for multi-board validation.

Table 6-3. 3D Clearances


Clearance Description
Any to Any Default clearances between any 3D object to any other 3D
object:
• Optimal XY clearance of 10 th
• Optimal Z clearance of 5 th
Minimum clearance values are not defined by default.
Active Board to Assembly Clearances between the board and imported assemblies.
Bond Wire to Assembly Clearances between 3D bond wires and imported assemblies.
Bond Wire to Board Edge Clearances between 3D bond wires and cavity walls/edges.
Bond Wire to Component Clearances between 3D bond wires and package cells.

206 Constraint Manager Users Manual, X-ENTP VX.1.1


Physical Rule Definition
3D Clearance Descriptions

Table 6-3. 3D Clearances (cont.)


Clearance Description
Bond Wire to PCB Clearances between 3D bond wires and imported PCB
Assembly assembly designs.
Component to Assembly Clearances between package cells and imported assemblies.
Component to Board Edge Clearances between package cells and cavity walls/edges.
Component to Component Clearances between package cells and other package cells.
Component to Mechanical Clearances between package cells and mechanical
cells/models.
Component to PCB Clearances between package cells and imported PCB
Assembly assembly designs.
Mechanical to Assembly Clearances between mechanical cells/models and imported
assemblies.
Mechanical to Mechanical Clearances between mechanical cells/models and other
mechanical cells/models.
Mechanical to PCB Clearances between mechanical cells/models and imported
Assembly PCB assembly designs.
PCB Assembly to Clearances between imported PCB assembly designs and
Assembly imported assemblies.
PCB Assembly to PCB Clearances between imported PCB assembly designs and
Assembly other imported PCB assembly designs.

Usage Notes
• To make a certain 3D clearance available for definition, click Add Clearance, and then
click the clearance.
• To reset a certain 3D clearance to the “Any to Any” values, right-click it, and then click
Delete Clearances. Also, you can use Ctrl-click to highlight multiple rows.

Related Topics
• 3D Clearance Specification

Constraint Manager Users Manual, X-ENTP VX.1.1 207


Physical Rule Definition
3D Clearance Descriptions

208 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 7
Net Constraint Definition

You define net constraints to characterize electrical and physical requirements for specific nets
that are in a design. You can do so at the net and constraint class level. You define all net
constraints through the Nets spreadsheet page. Some examples of these types of rules are
topology constraints, length rules, and power-supply constraints.
Specifying General Net Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Topology Specification for Nets and Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . . . 210
Net Pin Pair Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Defining Discrete Component Pin Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Length and Delay Rule Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Formula Creation and Error Checking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Constant and Variable Creation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Simulated Delay Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Defining Overshoot and Ringback Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Power-Supply Net and Constraint Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Modifying xDX I/O Designer FPGA Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Defining Constraints for Single-Pin Nets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

Specifying General Net Constraints


You can use Constraint Manager to specify general net constraints such as topology type and
the maximum number of vias that can be applied to a net. You can specify these constraints
individually for each net, or simultaneously by assigning a value to a constraint class.
When specifying a single constraint value for multiple nets through constraint class assignment,
each net in the constraint class is updated to include the single constraint value.

Tip: To view all constraints instead of only those that are of a specific type, from the
Filters - Groups toolbar dropdown, select All.

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click Net Properties.

Constraint Manager Users Manual, X-ENTP VX.1.1 209


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Note: These constraints are also displayed as part of the All group, but you may find
it easier to work with general net constraints when the Nets spreadsheet page displays
only them.
2. You can specify these constraints in one of two ways:
• To simultaneously define a constraint for all nets in a constraint class, in the
constraint class name row, enter a value into a constraint field (for example, # Vias
Max), and then press Enter.
Result: Each net in the constraint class is updated with this value.
• To individually define a constraint for a specific net, in the net row, enter a value
into a constraint field.

Related Topics
• Net Constraint Definition

Topology Specification for Nets and


Constraint Classes
You can assign pre-defined and custom topology types to specific nets and constraint classes.
When you assign a topology type to a constraint class, all nets within the class take on the
topology type designation.
When you assign a topology type to a net or constraint class, or manually create a unique
topology ordering, you are defining the order in which the router etches transmission lines and
other physical mechanisms that aid in the propagation of electrical signals.

Constraint Manager provides router instruction in the form of from-tos, each of which is
composed of two design or component pins that respectively designate the router to etch from
one pin to another pin.

Note
MST topology type disregards the Stub Length Max constraint. You do not need to define
this constraint when the topology type is MST (Minimum Spanning Tree).

Topology Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211


Specifying Topology Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Manually Defining Netline Ordering (From-Tos) for a Specific Net . . . . . . . . . . . . . . . 213
Changing Topology Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Overriding Trace Width Constraints for From-Tos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Advanced Topology Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

210 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Topology Considerations
You should be aware of certain things before specifying topologies.

Difference Between From-Tos and Pin Pairs


Often times, from-to relationships can be confused with pin pair designations. To better
understand these separate design attributes, refer to the following definitions:

• Net line ordering/from-tos — Ordered, physical pairings of component pins that


instruct the router where to etch from and to when creating physical transmission lines
(traces).
• Pin pairs — Electrical pairings of component pins that are created for the purpose of
defining electrical relationships between component pins in the form of constraints.

Multiple Load Handling


When there are at least two loads, a virtual pin is created to join all of the sources. The loads are
then balanced from the joining virtual pin. This procedure is followed for TShape, Star, and
HTree topology types.

Differential-Pair Topology Definition


When specifying topologies for differential pairs, both nets that make up the pairing ultimately
take on the same topology definition. This is whether you define topology type for one net in the
pair, or at the differential-pair level. After you make your selection, it is automatically applied at
each level.

Note
Differential pairs are typically used for high-speed signals, so you will want to order and
constrain them as such. The layout system will not order a net that has been defined as
MST or Chained, and can route these types of topologies anyway it needs to complete the
route. For this reason, MST and Chained are not selectable for differential pairs. The only
valid topology types are the remaining ones that force the layout system to order the
route. This is a layout limitation that Constraint Manager enforces.

When you manually define netline ordering, both nets result with the same ordering definition.
Whether in whole or as a starting point, it depends on net similarity:

• In the case of symmetrical nets, after you manually define netline ordering for one net, it
is automatically applied to the other net.
• When you have a differential pair that is comprised of asymmetrical nets, you would
first manually define netline ordering for the net with the most pins. After you complete
that process, the ordering is stored as a temporary constraint template, and you are

Constraint Manager Users Manual, X-ENTP VX.1.1 211


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

presented with the Constraint Template Matching dialog box. Through it you can
modify the ordering as needed for the other net that makes up the differential pair.
Constraint Manager applies this approach with the goal of making the netline ordering process
as efficient as possible. Due to the relative, common characteristics of nets used to create most
differential pairs, a strategy that leverages re-use of manual netline ordering is a natural
solution.

Related Topics
• Topology Specification for Nets and Constraint Classes

Specifying Topology Type


You can assign pre-defined and custom topology types to specific nets and constraint classes.
The available pre-defined topology types are MST , Chained , TShape , Star , and
HTree . When a pre-defined topology type is not appropriate for a specific net, you can
manually define netline ordering.

When creating a custom topology type for a net, you do so through the process of manual
netline order. For all pre-defined topology types, your layout system performs automatic netline
ordering during routing.

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click Net Properties.
Note: Topology constraints are also displayed as part of the All group, but you may
find it easier to work with topology constraints when the Nets spreadsheet page displays
only them.

Caution
When you change a topology type from Custom or Complex to a pre-defined topology
type, all pin pairs, from-tos, and virtual pins are deleted. When changing between Custom
and Complex topology types, you have the option of preserving pin pairs.

2. In the spreadsheet row of the net or constraint class to which you want to assign a
topology type, click the Topology Type field, and then select a pre-defined topology
type (MST, Chained, TShape, HTree, or Star), Custom, or Complex.
3. In the spreadsheet row of the net or constraint class to which you want to assign a
topology type, click the Topology Type field, and then select a pre-defined topology
type (MST or Chained), or Custom.
Alternative: From the Topology toolbar, click a topology type button to specify a pre-
defined topology type ( , , , , or ), or a custom topology ( ).

212 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Tip: To simultaneously specify a pre-defined topology type for multiple nets, use Ctrl-
click, and then from the Topology toolbar, click a topology type button.
Rule: After you choose Custom or Complex, the next step is to perform netline ordering
to define the custom topology type. When you include pin sets as part of a Custom
topology, it is automatically changed to Complex to indicate the usage of pin sets.

Related Topics
• Topology Specification for Nets and Constraint Classes
• Topology Type

Manually Defining Netline Ordering (From-Tos) for


a Specific Net
After you set the Topology Type constraint for a net to “Custom,” you must order the net.

Procedure
1. From the Nets spreadsheet page, click the row of the net for which you want to manually
define netline ordering, and then from the Topology toolbar, click .
Alternative: After you click a net row, from the Edit menu, click Netline Order.
Rule: Before you can define netline ordering for a net, you must set the topology type
constraint to Custom or Complex.
2. From the list of available pins, click a row to select the From pin.
Pin sets: When defining from-tos between pin sets, select pin sets instead of pins in both
the From and To fields. Also, you can select both types of objects.
3. From the list of available pins, click a row to select the To pin.
4. Verify the From pin and To pin fields, and then click .
Note: When the From pin and To pin fields do not contain the correct pins, click to
clear the designation.

Note
As you create from-tos, you may find that not enough source (S) pins or load (L) pins
exist, and you cannot create a valid topology. When this occurs, you must exit the dialog
box and switch to the Parts spreadsheet page. From there, you can change the Topology
Pin Type constraint of one or more relevant component pins, and then start this procedure
over again.

5. Repeat steps 2 through 4 for each from-to you want to create. After you finish, click
OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 213


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Tip: To automatically create pin pairs from each from-to, enable the “Automatically
create pin pairs from from-tos” checkbox. In the following example, five pin pairs were
created, each matching a from-to.

Figure 7-1. Automatically Created Pin Pairs

Related Topics
• Topology Specification for Nets and Constraint Classes

Changing Topology Type


Whenever you change the Topology Type constraint for a net or constraint class, any pin pairs,
from-tos, and virtual pins defined for the net, or individual nets in the constraint class, can be
lost. However, in the case of switching from Custom to Complex (or vice-versa), you can
preserve pin pairs that are not associated with virtual pins.
Changing topology type is not a concern when a net does not have unique definitions associated
with the topology type. In many cases, changing topology type is a simple action of just going
from one topology type to another.

In the event that changing the topology type will result with losses like those listed above,
Constraint Manager notifies you of this fact, and gives you the ability to choose which
Topology Type values to change to the new value, and which to keep with their current value,
therefore preserving the additional definitions that are part of the present topology type. The
procedure below explains the options you have in this case.

214 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Procedure
1. In the event that changing topology type will result with losses, the Net Topology
Change dialog box is presented. From it, select one of the following options:
• Prompt before changing the topology for each net — Prompt individually for
each net to specify whether to keep the current topology type or change to the new
one. As a result, a Yes/No dialog box will appear for each affected net.
• Change the topology type for all nets without prompting — Change the topology
type for all affected nets.
• Disregard the topology change for all nets without prompting — Cancel out of
the change, preserving the existing topology type for all affected nets.
Optional: When changing from Custom to Complex, or Complex to Custom, you can
preserve pin pairs. To do so, activate the following checkbox: Preserve pin pairs not
associated with virtual pins.
2. Verify your selection, and then click OK.

Results
The existing Topology Type value is changed or preserved for one or more nets depending on
your choices.

Related Topics
• Topology Specification for Nets and Constraint Classes
• Topology Type

Overriding Trace Width Constraints for From-Tos


You can optionally override the trace width constraints (for example, Trace Width Typical or
Trace Width Minimum) defined for the net as part of its trace and via rules. Doing so gives you
the ability to specify trace width on a pin-to-pin basis, in effect, overriding the net class trace
width for certain pin pairs.

Prerequisites
• The net's Topology Type must be Custom.
• The net must have gone through netline ordering.
• The net cannot be part of a differential pair.
• Filters > Levels > FromTo must be enabled in order to view spreadsheet rows for from-
tos.

Constraint Manager Users Manual, X-ENTP VX.1.1 215


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Procedure
1. From the Nets spreadsheet page, in the From To Constraints Layer cell, ensure that the
appropriate board layer has been selected.
2. In the From To Constraints Trace Width cell, enter the override value.

Results
Based on the trace width override you entered, the From To Constraints Z0 constraint is updated
to display the calculated impedance.

Related Topics
• Topology Specification for Nets and Constraint Classes
• From To Constraints Layer
• From To Constraints Trace Width

Advanced Topology Creation


You can use pin sets to construct advanced topologies for nets that require the characteristics of
multiple topology types.
Creating Pin Sets to Construct Advanced Topologies . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Changing the Order of Pin-Set Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Deleting Pin Sets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

Creating Pin Sets to Construct Advanced Topologies


When a net contains a large number of pins, sometimes the best approach to constructing an
advanced topology is to group pins into subsets called pin sets.
For example, a 16-pin net that requires characteristics of both T-shape and chained topology
types is a good candidate for pin sets. This would result in three pin sets, consisting of two 3-pin
T-shape topologies and one 10-pin chained topology. After you create pin sets, you can define
from-to relationships between pin sets, and pin sets and pins. You can also create higher-level
pin sets by grouping existing pin sets into new pin sets.

Procedure
1. From the Nets spreadsheet page, click the row of the net for which you want to create a
pin set, and then from the Topology toolbar, click .
2. From the Netline Order dialog box, click one of the following topology types:
• — T-shape, which automatically balances load branches, though the trunk branch
may not match. T-shape is used exclusively for constructs that include three objects
(pins or pin sets).

216 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

• — Chained, which chains all selected pins between the first and last pins you
select. No virtual pins are created for this type of pin set.
• — Minimum spanning tree, which connects selected pins in the best way possible
based on physical location. No virtual pins are created for this type of pin set.
• — Balanced, which requires the distance between the virtual pin and all pins in
the pin set to be equal.
• — Unbalanced, which performs no automatic balancing. This is especially useful
when you want to specify unequal constraints on branches of the pin set.
3. From the listing of available pins and pin sets, click each pin that should comprise the
pin set; then click Finish.
Rule: When defining a T-shape pin set, you can select no more than three pins. For
chained pin sets, make sure that you click the start pin first and the end pin last.
Result: The pin set is added to the listing of Available pins / pin sets. The Pin/Set and
Type columns indicate that a row is a pin set by including the topology type in their text
(for example, CH 1 or Chained). Also, the Set Contents column includes a button.
Examples
Example of a Complex Net Topology
In the following example, a complex net topology is constructed for a net that has nine pins.
This net topology is considered complex because it uses both pin sets and from-tos. This
complex net topology includes a T-shaped pin set, a chained pin set, and an MST pin set. It
connects each of the three pin sets, all of which include just three pins, with two from-tos.

First, here is a visual of the complex net topology that we are going to create. It is important to
note that the standard pins are shown as blue. The virtual pins created for the T-shaped pin set
are shown as green to distinguish them from the preexisting, or standard pins.

Constraint Manager Users Manual, X-ENTP VX.1.1 217


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

Example 7-1. Visual of a Complex Net Topology

Figure 7-2 on page 218 shows what the Netline Ordering dialog box would look like for the
purpose of defining this complex net topology. The steps you would use to create it are listed
after the picture of the dialog box.

Example 7-2. Netline Ordering of a Complex Net Topology

To create the above netline ordering, or one that is similar, you would have to use the following
steps:

218 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Topology Specification for Nets and Constraint Classes

1. Create a T-shaped pin set (T_1) using pins R3-2, RT1-2, and U1-14.
2. Create a chained pin set (CH_1) using pins U2-14, U3-14, and U4-20.
3. Create an MST pin set (MST_1) using pins U5-14, U6-1, and U7-8.
4. Connect pin sets T_1 and CH_1 by creating a from-to between pins RT1-2 and U2-14.
5. Connect pin sets T_1 and MST_1 by creating a from-to between pins U1-14 and U5-14.

Related Topics
• Advanced Topology Creation

Changing the Order of Pin-Set Pins


You can change the order of pins in a pin set as needed.

Procedure
1. From the Nets spreadsheet page, click the row of the net for which you want to do this.
2. From the Topology toolbar, click .
3. From the Netline Order dialog box, in the row of a pin set, click .
4. From the Pin Set Order dialog box, click a pin to move, and then click or .
5. Repeat step 2 for each pin for which you want to change its order; then click Apply.

Related Topics
• Advanced Topology Creation

Deleting Pin Sets


You can delete pin sets as needed.

Procedure
1. From the Nets spreadsheet page, click the row of the net for which you want to do this.
2. From the Topology toolbar, click .
3. From the Netline Order dialog box, you can do this in one of the following ways:
• Click the row of an individual pin set, and then click .
• To delete all pin sets, click .

Constraint Manager Users Manual, X-ENTP VX.1.1 219


Net Constraint Definition
Net Pin Pair Creation

Related Topics
• Advanced Topology Creation

Net Pin Pair Creation


You create pin pairs so that you can define constraints for specific connections that result from
the linking of two pins. Although pin pairing can be thought of as a physical coupling, a pin pair
only defines a relationship that governs electrical net constraints.
For example, you can define a pin pair between an output pin of a microprocessor and an input
pin of another microprocessor that are part of the same net. You can then constrain the signal
delay or length between these pins such that it stays within a specific threshold, or minimum
and maximum. Here is an example of this.

Example 7-3. Pin Pair Constraints Definition

Note
You can define pin pairs for nets that are of topology type TShape , HTree , Star ,
Custom , or Complex. You cannot define pin pairs for nets that are of topology type
Chained or MST .

Tip: After you define specific pairs of pins, the Constraint Manager spreadsheet column
referring to a pin pair designation is preceded with a icon. Be careful not to confuse
this icon with the resultant icon of non-graphical netline ordering ( ), which you use to
create from-to relationships.

You can define pin pairs manually, semi-automatically, and automatically for each net. When
automating the pin pair definition process for one or more nets, you should always verify the
accuracy of the pin pair definitions that Constraint Manager produces. When a specific pin pair
definition is not appropriate, you can instead manually define a pin pair.

Internal Component-Pin Delay Inclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

220 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Net Pin Pair Creation

Creating All Pin Pairs Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221


Creating Only Source-Load Pin Pairs Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Creating Pin Pairs Semi-Automatically. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Creating Pin Pairs Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Deleting One or More Pin Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

Internal Component-Pin Delay Inclusion


If you want to constrain signal delay such that it includes internal component-pin delays, you
can construct pin pairs using electrical board description (EBD) pins.
When using EBD pins, both pins of the pin pair must be of this pin type. Depending on your
design methodology, you might begin the constraint process for some pin pairs by including
EBD pins at the start, or instead, later change some standard pin pairs to EBD pin pairs to solve
design challenges.

The following illustration depicts the physical difference between an external (that is, standard)
pin pair and an internal EBD pin pair.

Figure 7-2. Standard and EBD Pin Pairs

As you can see, the physical length of the connection between pin pairs is longer for EBD pin
pairs because internal component connections are included in addition to the trace segment
between external pins. After you create an EBD pin pair, you can specify delay and simulated
delay (signal edge rate) constraints.

Related Topics
• Net Pin Pair Creation

Creating All Pin Pairs Automatically


In addition to creating pin pairs manually and semi-automatically, you can have Constraint
Manager create all pin pairs for a net automatically.

Procedure
From the Nets spreadsheet page, click a net row, and then from the Pairs toolbar, click .

Constraint Manager Users Manual, X-ENTP VX.1.1 221


Net Constraint Definition
Net Pin Pair Creation

Alternative: After you click a net row, from the Edit menu, click Pin Pairs, and then click
Auto Pin Pair Generation.

Related Topics
• Net Pin Pair Creation

Creating Only Source-Load Pin Pairs Automatically


In addition to the other methods of pin pair creation, you can have Constraint Manager create all
source-load pin pairs for a net automatically.

Procedure
From the Nets spreadsheet page, right-click a net row, and then click Auto Source-Load Pin
Pair Generation.

Alternative: After you click a net row, from the Edit menu, click Pin Pairs, and then click
Auto Source-Load Pin Pair Generation.

Related Topics
• Net Pin Pair Creation

Creating Pin Pairs Semi-Automatically


In addition to creating pin pairs automatically or manually for a net, you can create them semi-
automatically. When you use this method, you define the start pin of a pin pair and then let
Constraint Manager determine the appropriate end pin.

Procedure
1. From the Nets spreadsheet page, click a net row. From the Edit menu, click Pin Pairs,
and then click Add Pin Pairs.
2. From the Define Pin Pairs dialog box, click to create a new pin pair relationship.
3. Click the Start Pin field, and then select a pin.
4. Click .
Result: Constraint Manager fills the End Pin field.
5. Repeat steps 2 through 4 for each pin pair you want to semi-automatically define.
6. After you finish defining pin pairs, click OK.

222 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Net Pin Pair Creation

Related Topics
• Net Pin Pair Creation

Creating Pin Pairs Manually


In addition to creating pin pairs automatically or semi-automatically for a net, you can create
them manually. You generally do this when the other methods of pin pair creation do not work
for certain pin pairs you need to be available in a design.

Procedure
1. From the Nets spreadsheet page, click a net row. From the Edit menu, click Pin Pairs,
and then click Add Pin Pairs.
2. From the Define Pin Pairs dialog box, click to create a new pin pair relationship.
Optional: To make any internal EBD pins available for pin-pair definition, click .
3. Click the Start Pin field, and then select a pin.
4. Click the End Pin field, and then select a pin.
Tip: To automatically create a pin pair, click instead of selecting the End Pin.
5. Repeat steps 2 through 4 for each pin pair you want to manually define.
6. After you finish defining pin pairs, click OK.

Related Topics
• Net Pin Pair Creation

Deleting One or More Pin Pairs


You can delete pin pairs as needed.

Procedure
1. From the Nets spreadsheet page, click a net row.
2. From the Edit menu, click Pin Pairs, and then click Add Pin Pairs.
3. From the Add Pin Pairs dialog box, click to select one or more pin pairs, and then click
.
4. After you finish deleting pin pairs, click OK.

Constraint Manager Users Manual, X-ENTP VX.1.1 223


Net Constraint Definition
Defining Discrete Component Pin Pairs

Related Topics
• Net Pin Pair Creation

Defining Discrete Component Pin Pairs


If your design includes complex discrete components like resistor packs, you can define pin
pairs for such components. You can define these pin pairs manually, or automatically based on
dual-inline (DIP) and single-inline (SIP) pin pairing. Constraint Manager uses discrete
component pin pairs when it generates electrical nets.
Standard dual-inline components have pins on two sides of the component. Standard single-
inline components have pins on just one side of the component. The buttons you use for
automatic pin pair generation show the general appearance of standard DIP and SIP
components.

Note
If using automatic SIP pin pair generation for components with an odd number of pins
(for example, 9 or 15), “1” is used as the start pin for each pin pair. Refer to Figure 7-5
for an example.

Restrictions and Limitations


• Automatic DIP pin-pairing is only supported for components that have an even number
of pins. For components with an odd number of pins, you must use automatic SIP pin-
pairing.

Prerequisites
• You must add the reference designator prefix your design uses for resistor packs (for
example, RP, RN, or both) to your settings for discrete component prefixes. To do so:
a. From the Setup menu, click Settings.
b. From the Settings dialog box, under Design Preferences, click Discrete
Component Prefixes.
c. In the Resistor cell, add your additional reference designators, and then click OK.
For example, when both RP and RN are used as reference designators for resistor
packs, and R is the one used for resistors, this cell will now contain all three (for
example: R, RN, RP).
• The component must have more than two pins.

224 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Defining Discrete Component Pin Pairs

Procedure
1. From the Parts spreadsheet page, right-click a top-level discrete part that begins with
the reference designator prefix you added above (for example, RN), and then click
Create Component Pin Pairs.
2. From the Define Discrete Pin Pairs dialog box, do one of the following things:
• To define pin pairs manually, click , and then click within the Start Pin and End
Pin cells to select each pin. Repeat this step until you create all pin pairs.
Tip: To delete a pin pair, click its row, and then click .
• To define pin pairs automatically, click or to create dual-inline (DIP) or single-
inline (SIP) pin pairings.
3. After you finish defining discrete pin pairs, click OK.
Examples
Example of Automatic DIP Pin Pair Generation
In this example, pin pairing for a dual-inline component is shown. In this case, automatic
generation results with low and high pins being paired (1 and 16, 2 and 15, and so on).

Figure 7-3. Automatic DIP Pin Pair Generation

Example of Automatic SIP Pin Pair Generation for Components With an Even Number of
Pins
In this example, pin pairing for a single-inline component with an even number of pins is
shown. In this case, automatic generation results with pins being paired in sequence (1 and 2, 3
and 4, and so on).

Constraint Manager Users Manual, X-ENTP VX.1.1 225


Net Constraint Definition
Defining Discrete Component Pin Pairs

Figure 7-4. Automatic SIP Pin Pair Generation (Even Pin Number)

Example of Automatic SIP Pin Pair Generation for Components With an Odd Number of
Pins
In this example, pin pairing for a single-inline component with an odd number of pins is shown.
In this case, automatic generation results with all pins being paired with the first pin (1 and 2, 1
and 3, and so on).

Figure 7-5. Automatic SIP Pin Pair Generation (Odd Pin Number)

As you can see, the automatic DIP pin-pairing button ( ) is unavailable because the component
has an odd number of pins.

Related Topics
• Net Constraint Definition

226 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Length and Delay Rule Definition

Length and Delay Rule Definition


You use length and delay rules to specify acceptable run lengths or signal transmission times for
traces that comprise a net. You can do this in both basic and complex ways.
The common approach to defining these values for nets is to do so explicitly by providing
acceptable minimum and maximum values for a net. Design complexity and technology dictates
the need for more complicated approaches, though. For example, you can match length or delay
rules among certain nets and specify a tolerance to provide room for accommodating routing
obstructions.

Specifying Length or Delay Rules for Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227


Net Length and Delay Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Tolerance Routing of Nets Within a Constraint Class . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Specifying Maximum Length as a Percentage Above Manhattan Length . . . . . . . . . . . 230
Matching Delay or Length Rules Among Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Matching Length or Delay Tolerance at the Constraint Class Level . . . . . . . . . . . . . . . 233

Specifying Length or Delay Rules for Nets


You can specify length or delay rules for nets, differential pairs, and pin pairs. When specifying
these rules, you can do so based on physical or electrical properties. For example, to specify it
from an electrical perspective, use time of flight instead of length. Time of flight is an electrical
observance that is defined by the duration of time for signal propagation between two points
(for example, pins).
Conversely, to specify these rules from a physical perspective, use length instead of time of
flight. Length is a physical rule that defines the minimum and maximum trace distance between
pins. When a rule of this type is put in place, the router uses these minimum and maximum
values to determine an acceptable trace distance between the minimum and maximum range.
For example, setting Length or TOF Delay Min to 100 th and Length or TOF Delay Max to 300
th would give the router a range of 200 th between these minimum and maximum values.

Note
When specifying these rules, you can use both types within Constraint Manager;
however, depending on your design requirements, you might use a single type
exclusively.

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click Delays and Lengths.

Constraint Manager Users Manual, X-ENTP VX.1.1 227


Net Constraint Definition
Length and Delay Rule Definition

Note: These constraints are also displayed as part of the All group, but you may find
it easier to work with delay constraints when the Nets spreadsheet page displays only
them.
2. In the row of the net for which you want to specify rules, use the available constraint
fields to define values based on length or time of flight. Here is a length example.

Figure 7-6. Length Rule

Note: When you want to include the length or time of flight of vias that are part of a net,
you can express those inclusions by entering larger values that approximate the
appropriate increases to the overall length or time. Based on the above example, you
might instead use 150 for Min and 350 for Max.
Examples
Example of Specifying a Length Rule for a Net Pin Pair
1. In the Type field of the pin pair for which you want to specify a length rule, click, and
then select Length.
2. In the Min field, enter a value for the minimum acceptable trace length between pins.
3. In the Max field, enter a value for the maximum acceptable trace length between pins.
Example: In the illustration below, the user chose a minimum value of 1000 th, and a
maximum value of 1500 th. Notice that this pin pair delay rule is a single instance that
does not have a match relationship or match tolerance associated with it.

228 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Length and Delay Rule Definition

Example 7-4. Net Pin Pair With a Length Rule

Related Topics
• Length and Delay Rule Definition

Net Length and Delay Calculations


When you define a time of flight delay or length constraint for an entire net instead of a pin pair,
length is calculated by combining the trace segment lengths between each pin in the net. When
the delay method is used, each trace segment length is converted to corresponding delay values
based on trace length and the propagation velocity associated with the board layer on which a
trace segment is located. When the calculated length or time of flight delay is less than the
minimum constraint for the net, one of the trace segments is increased to satisfy the specified
minimum delay.
Note
For electrical nets, the physical length of any devices that join physical nets is included in
the length calculation when available.

In order for delay to be calculated, the following requirements must be met:

• The layer stackup must have at least one plane layer (ground or voltage).
• The dielectric layers must have a valid thickness (greater than 0) and a valid dielectric
constant (greater than or equal to 1).
• The signal and plane layers must have a valid thickness (greater than 0).

Delay Value Default


When one or more of the above requirements is not met, a delay value based on the default
propagation velocity is used. This default value is 170 ps/inch (2.04 ns/ft).

Constraint Manager Users Manual, X-ENTP VX.1.1 229


Net Constraint Definition
Length and Delay Rule Definition

Related Topics
• Length and Delay Rule Definition

Tolerance Routing of Nets Within a Constraint


Class
Aside from defining general minimum and maximum delay or length constraints for nets within
a constraint class, you can also assign a tolerance to an entire constraint class through use of the
Length or TOF Delay tolerance (“Tol”) constraint. Doing so constrains the router to match the
nets in the constraint class to within the tolerance.
This means the router has greater room to increase or decrease the length of trace connections
during routing operations. It is important to understand that the tolerance is only displayed at the
constraint-class level, but it is by default used by all lower-level objects (for example, sub-level
constraint classes and electrical nets).

Child-level constraint classes within a parent constraint class use the defined tolerance of the
parent constraint class by default; however, you can define a tighter tolerance at the child-class
level. In the event that you want to specify a tighter tolerance at the net level, you can do so by
defining a match relationship and then specifying a tolerance for the matched group of nets. To
do so, refer to “Matching Delay or Length Rules Among Nets” on page 231.

Related Topics
• Length and Delay Rule Definition

Specifying Maximum Length as a Percentage


Above Manhattan Length
You can use a net's Manhattan length plus a fixed percentage to specify the value used for the
maximum length constraint (Length or TOF Delay Max). Manhattan length is calculated in your
associated PCB layout tool. You can specify a length of Manhattan plus 1% or greater (for
example, 1%, 200%, 400%, or larger).
Note
Manhattan length values used in Constraint Manager are not validated. Manhattan actual
values depend on component positions on the PCB so it is not possible to constrain them.

Procedure
In the Length or TOF Delay Max field, enter a value of 1 or more, and follow it with a
percentage symbol (%).

230 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Length and Delay Rule Definition

Example: To use a length that is 120% of the Manhattan length, enter 20%. To use a length that
is 500% of Manhattan length, enter 400%. To specify a length as close as possible to the
Manhattan length, enter 1%. This is depicted below.

Figure 7-7. Maximum Length as Manhattan Length

Related Topics
• Length and Delay Rule Definition

Matching Delay or Length Rules Among Nets


By creating match groups, you can use the delay rules you define for a single net or pin pair as
the delay rule for multiple nets or pin pairs. You can also create match groups that do not
include minimum or maximum delay rules, but instead are matched only within a range.
You accomplish delay matching by setting up a match relationship, and optionally, a match
tolerance. The match feature of Constraint Manager delay rule specification is especially useful
when you want to use the same time-of-flight delay or length range for bus nets. When using
match groups, all nets or pin pairs with the same group identifier are routed to the same length
or delay within the tolerance.

Be aware of the following rules:

• Match group identifiers that include multiple characters must begin with an alphabetical
character. After which, you can use any combination of alphabetical and numerical
characters, and underscores.
• A single match group can contain any combination of electrical nets, physical nets, and
pin pairs.
• When you do not set a tolerance for the matched group, the default tolerances for the
design are used. For information about how to review or set these values, refer to
“Specifying Design Configuration Preferences” on page 68.

Procedure
1. In the Match field of an electrical net, physical net, or pin pair row, enter a match
identifier (for example, 1, a2, or b_3).
2. (Optional) In the tolerance (“Tol”) field, specify a tolerance (that is, length or delay
range that design objects must be within).

Constraint Manager Users Manual, X-ENTP VX.1.1 231


Net Constraint Definition
Length and Delay Rule Definition

Example: To specify a tolerance of 100 th, type 100, and then press Enter. All design
objects that use this match relationship must be within 100 th of each other.
3. For each net for which you want to match this delay rule, in the Match field of each row,
type the match identifier (for example, 1, a2, or b_3) you specified in step 1, and then
press Enter.
Examples
Example of Specifying a Matched Time of Flight Delay for Several Pin Pairs
Use these steps:
1. In the Type field of the pin pair for which you want to specify a time of flight delay rule,
click, and then select TOF.
2. In the Min field, enter a value for the minimum acceptable time of flight between pins.
3. In the Max field, enter a value for the maximum acceptable time of flight between pins.
4. In the Match field, enter an alphanumeric identifier for this time of flight delay rule.
Optional: Enter a tolerance value.
5. In the Match field of the net pin pairs for which you want to use this time of flight delay
rule, type the match identifier you chose in step 4.
Example: In the illustration below, the user chose a minimum acceptable value of 40 ns,
and a maximum acceptable value of 80 ns. The match identifier is set_a and has a
tolerance value of 5 ns. The user assigned this time of flight delay rule to the three net
pin pairs below it by entering set_a in each Match field. This match relationship means
that each of the four pin pairs must have a time of flight between 40 ns and 80 ns, and
their respective values must be within 5 ns of each other (for example, 60 ns, 61 ns, 63
ns, and 64 ns).

232 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Length and Delay Rule Definition

Example 7-5. Net Pin Pair With a Time-Of-Flight Delay Rule

Example of Matching Length Only by Tolerance


In this example, you are not concerned with the minimum and maximum length values to which
several nets will be matched, just the tolerance of the match group. As you can see in the
illustration below, the length of each net must be within 50 th of each other.

Example 7-6. Matching Length by Just Tolerance

Related Topics
• Length and Delay Rule Definition
• Net Pin Pair Creation

Matching Length or Delay Tolerance at the


Constraint Class Level
In addition to matching these rules among nets, you can also match to a tolerance based on
constraint classes and their hierarchy. Doing so gives you the ability to easily ensure that all nets
within a constraint class end up with length or delay values that do not exceed a specific
tolerance.

Constraint Manager Users Manual, X-ENTP VX.1.1 233


Net Constraint Definition
Length and Delay Rule Definition

Furthermore, when you have parent constraint classes that include child constraint classes, or
even more extensive hierarchy, you can define a tolerance at each level. For example, at the
parent constraint class level, you might define a tolerance of 50 th, while at a child constraint
class level a tolerance of 25 th.

Matching length or delay tolerance at the constraint class level does not limit you from creating
tolerance matches among specific nets. This is regardless of whether the nets are part of the
same constraint class. For example, after matching delay tolerance within a constraint class to
100 th, you can then create a match group with a tighter tolerance (for example, 50 th), and
associate a subset of nets within the constraint class with the match group. You can also
associate nets that do not belong to the constraint class with the match group.

Prerequisites
• You must have one or more constraint classes and nets assigned to constraint classes.

Procedure
1. From the Nets spreadsheet page, in the Length or TOF Delay tolerance (“Tol”) cell of
the constraint class of interest, enter a tolerance value.
Note: Length or TOF Delay tolerance (“Tol”) cells are always editable for constraint
classes. Unlike net rows, you do not need to define a value in a Match cell in order to
make a tolerance (“Tol”) cell accessible.
2. (Optional) If there are child constraint classes for which you want to define tighter
tolerances, enter a value in the associated Length or TOF Delay tolerance (“Tol”) cell.
The tolerance value for a child constraint class must be smaller than that of the parent or
child constraint class above it.
Examples
Simple Example of Matching Length Tolerance by Constraint Class
In this example, all nets within a constraint class are specified to be matched to within 100 th of
each other. To provide tighter tolerance for a subset of nets, two match groups are created. One
requires ADDRESS0 and ADDRESS1 to be matched to within 75 th. The other requires PCS0
and PCS1 to be matched to within 50 th. The four other nets in the class respect the matching
requirement defined at the constraint class level.

234 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Length and Delay Rule Definition

Example 7-7. Simple Tolerance Matching by Constraint Class

Complex Example of Matching Length Tolerance by Constraint Class


In this example, a more complex usage of tolerance matching is shown. The parent constraint
class High_Speed_Nets has a tolerance requirement of 100 th. The child constraint class
High_Speed_Bus_Nets has a tighter tolerance of 50 th. To allow for even tighter tolerances
within the child constraint class, two match groups are created. The first requires that two nets
are matched within a tolerance of 30 th. The other requires that four nets are matched within a
tolerance of 15 th. All other nets in the parent or child class respect the matching requirement
defined at the relevant constraint class level.

Constraint Manager Users Manual, X-ENTP VX.1.1 235


Net Constraint Definition
Formula Creation and Error Checking

Example 7-8. Complex Tolerance Matching by Constraint Class

Related Topics
• Length and Delay Rule Definition

Formula Creation and Error Checking


You can create formulas to constraint delay or length relationships between net objects when
you require complex relationships that go beyond minimum and maximum values. By checking
formulas you create, you can ensure that no errors exist in the syntax you use.
Defining Formulas to Create Net Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Including Formula Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Tolerance Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Multiple Formula Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Solving Formulas to Check for Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
Complex Formula Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

236 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Formula Creation and Error Checking

Defining Formulas to Create Net Relationships


You can define formulas to create delay or length relationships between nets, pin pairs, or
differential pairs. By doing so, you can set up delay relationships among similar design objects
that would benefit from such associations.
For example, you can set one pin pair delay to equal the delay of another (=), specify that the
delay of one net must be greater than or less than the delay of another (> or <), add or subtract
the delay of one pin pair to or from the delay of another. You can also include constants and
variables to define net and pin pair delay with even more detail.

Procedure
1. From the Nets spreadsheet page, in the Formulas Formula cell of the net, pin pair, or
differential pair for which you want to define a formula, construct a formula using
available constants, variables, and accepted operators (=, >, <, +, -).

Note
All formulas must begin with one of the following operators: =, <, or >. When an
operator is missing, Constraint Manager precedes the formula with the “=” operator when
it solves the formula. The “=” operator is not visibly added to the content of the Formulas
Formula cell.

Refer to the following examples, which show common formula applications:


• A+3 — Length or delay equals constant A plus 3 units.
• B-2 — Length or delay equals constant B minus 2 units.
• >{\NET1\} — Length or delay must be greater than that of NET1.
• <{\NET01\} — Length or delay must be less than that of NET1.
• ={\NET01\} — Length or delay must be equal to another value.
Rule: Formulas assume ns unit of measure. When you are working with a different unit
of measure (for example, th), you must include it after the hardcoded value (for
example, 1000th).
2. After you enter an operator that requires a reference object (=, >, <), click the name cell
of the electrical net, physical net, differential pair, or other object that you want to use as
the reference. You can also type the object name, but clicking is recommended because
it is far more accurate and efficient when you have the option to do so.
Rule: The reference object must be same type as the object for which you are defining
the formula. For example, when you define a formula for a net, the reference object must
also be a net.

Constraint Manager Users Manual, X-ENTP VX.1.1 237


Net Constraint Definition
Formula Creation and Error Checking

Note: Constraint Manager distinguishes between electrical and physical nets that you
include in formulas by encasing them with bracket symbols or pipe symbols (for
example, {\<electrical net name\} or |\<physical net name>\|).
Note: When including virtual pins, they must appear in the form \VP#\-\VP#\. For
example, to include virtual pin number 12, enter the following: \VP12\-\VP12\

Related Topics
• Formula Creation and Error Checking

Including Formula Tolerance


You can include tolerance in your formulas to introduce the range around a formula value.
For example, when you require the length for several nets to be larger than 3000 th, but a
tolerance of 100 th is acceptable (that is, minimum value can be 2900 th), you can include the
tolerance in your formula.

Procedure
At the end of the formula, enter +/-, the tolerance, and then the unit of measure.

Example: =2000th+/-100th specifies that the length can be between 1900th and 2100th.

Note
When you do not include a tolerance, the default tolerances for the design are used. For
information about how to review or set these values, refer to “Specifying Design
Configuration Preferences” on page 68.

Related Topics
• Formula Creation and Error Checking

Tolerance Limitations
When you specify very small tolerances, it is important for these values to be no smaller than
0.012 th or 0.002 ps. Using tolerance values below these limitations can cause errors to occur
while Constraint Manager solves a formula. Tolerance limitations are a general rule, but there
are exceptions.
For example, in a net that is part of a match group, the tolerance limitation may need to be
divided by the number of netlines, effectively making the smallest possible tolerance much
larger (for example, 0.048 th).

238 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Formula Creation and Error Checking

Note
Formula errors associated with tolerances below the limitations do not affect tuning. The
layout system will always tune based on the provided tolerance. For example, entering a
tolerance of 0.01 th will cause Constraint Manager to report a formula error, but layout
tuning will use the tolerance.

Related Topics
• Formula Creation and Error Checking

Multiple Formula Entry


When you want to define two or more formulas for a net or pin pair, you must separate formulas
with the # character and include the net, pin pair, or differential pair name in each formula that
appears after the initial formula.
For example, when you want to set the delay constraint of a pin pair (for example, \U1\-
\3\@\U2\-\3\) to be equal to a pre-defined constant (for example, A) and less then a specific
value (for example, 800 th), the correct cell notation is =A#\U1\-\3\@\U2\-\3\<800th. The #
symbol defines an AND relationship between formula one (=A) and formula two (\U1\-
\3\@\U2\-\3\<800th).

Example 7-9. Multiple Formulas in Cell

Note
When entering multiple formulas, the net, pin pair, or differential pair name must
immediately follow the # symbol. When you type the # symbol, Constraint Manager
automatically adds the name. In the event that it does not, to quickly and accurately add
an object name to a formula, click its name cell.

Related Topics
• Formula Creation and Error Checking

Solving Formulas to Check for Errors


After you define formulas in Formulas Formula cells, you can check them for errors by solving
all formulas in your design.

Constraint Manager Users Manual, X-ENTP VX.1.1 239


Net Constraint Definition
Formula Creation and Error Checking

During the checking process, Constraint Manager attempts to compute net and pin pair delay
values for each formula. When it is finished, you are notified of any formulas that contain errors
through a log file. In addition, the tool highlights Formulas Violation cells that contain
erroneous results to make them easier to find.

Note
Variables that you do not explicitly define through the Constants and Variables List
dialog box do not generate errors during this process. For this reason, it is important to
ensure that your formulas include the variables that you intend to use.

Procedure
With Nets spreadsheet page active, from the Pairs toolbar, click ; or, from the Data menu,
click Solve All Formulas.

Related Topics
• Formula Creation and Error Checking
• Formulas Formula
• Formulas Violation

Complex Formula Examples


Refer to the following example formulas that show instances of complex usage.

Example of a Formula Matching Length Within a Bus and Between Busses


In this example, you want to match the length for eight pin pairs that comprise a bus with a
tolerance of +/- 1.27 mm. In addition, you want to match the length of this bus between specific
external bus pin pairs with a tolerance of +/- 12.7 mm.

Use these steps:

1. Create two variables. One for within bus (for example, withinbus) matching and the
other for between bus (for example, betweenbusses) matching.
2. In the Formulas Formula cell of the first pin pair, enter =withinbus+/-1.27mm#<pin pair
name>=betweenbusses+/-12.7mm
Rule: Constraint Manager automatically adds the pin pair name after you press #.
Example: When the pair name is C1\-\1\@\C1\-\5\, the formula would be =withinbus+/-
1.27mm#C1\-\1\@\C1\-\5\=betweenbusses+/-12.7mm
3. For the seven remaining pin pairs, enter or copy this formula in the Formulas Formula
cell.

240 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Constant and Variable Creation

4. For each external pin pair that you want to match between the pin pairs of this bus,
include =betweenbusses+/-12.7mm in the Formulas Formula cell.
Example: When a pin pair already includes its own length formula (for example,
>50mm), append it to the end (>50mm#<pin pair name>=betweenbusses+/-12.7mm).
This formula requires that the pin pair length be greater than 50 millimeters AND match
the betweenbusses value calculated during routing. The tolerance of the final value can
be +/- 12.7 millimeters. Here is a depiction of this formula in the cell.

Example 7-10. Complex Formula

Example of a Formula Where the Sum of Two Net Lengths Must be Less
Than a Certain Distance
In this example, you need the cumulative length of two nets to be less than 5000 th. The two
nets are B1 and B2.

Use these steps:

1. In Formulas Formula cell for net B1, type the following: < 5000th -
2. Click net B2. Doing so adds this net to the Formulas Formula cell for net B1, resulting
with the following, completed definition: < 5000th -{\B2\}

Related Topics
• Formula Creation and Error Checking

Constant and Variable Creation


You can create constants and variables and then include them in length or delay formulas to
constrain these values with even greater control, or flexibility, depending on the requirements of
the circuit.
Creating Constants and Variables for Delay Rules and Formulas . . . . . . . . . . . . . . . . . 242
Deleting Specific Constants or Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Finding Variable References. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244

Constraint Manager Users Manual, X-ENTP VX.1.1 241


Net Constraint Definition
Constant and Variable Creation

Creating Constants and Variables for Delay Rules


and Formulas
You can create constants and variables to use when defining length and delay formulas within
the Constraint Manager spreadsheet in the Formulas Formula field. Creation and application of
constants and variables is a way to provide delay rule consistency across multiple nets or pin
pairs within a design.
Unlike constants, you never associate a pre-defined value with a variable, nor do you set a
variable to a specific value within the Formulas Formula cell of a net, pin pair, or differential
pair row. Variables, also known as “free variables,” give you the ability to constrain delay of
several objects by group, with no regard for the delay value that is produced automatically, or
manually during routing. For example, when you want the length of 16 nets that comprise a bus
to route to the same length, but you do not care what the length is, you can set each net equal to
this free variable (for example, =samelength) and allow the router to determine the length to
which to match each net.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Constants and
Variables, and then click Edit.
2. From the Constants and Variables List dialog box, make sure that the tab that
corresponds to the data type you want to create is selected (Constants or Variables), and
then click .
3. In the Name field, enter a name for the new constant or variable.
Rule: Constant and variable names can contain alphabetic characters (a - z) and
numerals (0 - 9). They cannot contain only numerical characters.
4. When defining a constant, in the Value field, enter a value for the new constant.
In the example, three variables have been created. As you can see, variables do not have
assigned values.

242 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Constant and Variable Creation

Figure 7-8. Constants and Variables

5. After you finish creating constants and variables, click OK.

Related Topics
• Constant and Variable Creation

Deleting Specific Constants or Variables


After you create one or more constants or variables, you can delete specific entries that you no
longer need.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Constants and
Variables, and then click Edit.
2. From the Constants and Variables List dialog box, use the tabs at the bottom to view
available constants or variables.
3. Click the constant or variable row you want to delete, and then click .
Tip: To select multiple constants or variables, use Ctrl-Click.
In the example below, const_a and const_c are selected for deletion.

Constraint Manager Users Manual, X-ENTP VX.1.1 243


Net Constraint Definition
Constant and Variable Creation

Figure 7-9. Certain Constants Selected for Deletion

4. After you finish deleting constants and variables, click OK.

Related Topics
• Constant and Variable Creation

Finding Variable References


You can find variable references to view net and pin pair formulas that include variables.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Constants and
Variables, and then click Find Variables Reference.
2. From the Variables Reference dialog box, perform one of the following tasks:
• To expand or collapse the listing of nets or pin pairs for a variable, click the +/-
button.
• To select a net or pin pair within the Constraint Manager spreadsheet, double-click a
specific net or pin pair.

Related Topics
• Constant and Variable Creation

244 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Simulated Delay Specification

Simulated Delay Specification


You specify simulated delay rules to constrain the edge rates of individual electrical nets or
constraint classes by time. Unlike the constraints in the Delays and Lengths group of the Nets
spreadsheet page, which you use to define the total delay for a net, simulated delay constraints
control the switching times between signal states.
Specifying Simulated Delay Rules for Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Signal Edge Rates and Crosstalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Matching Simulated Delay Rules Among Nets or Constraint Classes . . . . . . . . . . . . . . 246

Specifying Simulated Delay Rules for Nets


When constraining delay through simulation, you can choose to constrain one or more signal-
edge properties with unique or identical minimum and maximum delay values. You can also
specify the maximum acceptable range between these minimums and maximums.
When you are constraining based on range, use Simulated Delay Max Range (without defining
minimum and maximum simulated delay values) to design source-synchronous busses where
the absolute delay is not important, but limiting the skew between bus nets is critical.

The signal states you define with these rules are formally referred to as the edge rates of a
signal, which are the following types:

• Rising edge — The amount of time it takes the signal to switch between low and high
signal states (off to on).
• Falling edge — The amount of time it takes the signal to switch between high and low
signal states (on to off).

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click Simulated Delays.
Note: These constraints are also displayed as part of the All group, but you may find
it easier to work with simulated delay constraints when the Nets spreadsheet page
displays only them.
2. In the row of the net or constraint class for which you want to specify simulated delay
rules, click within the Simulated Delay Edge cell and select the signal edge to constrain.
3. In the Simulated Delay Min and Simulated Delay Max cells, enter the target minimum
and maximum delays.
Rule: When the Simulated Delay Edge is set to Rise:Fall, enter unique minimum and
maximum delays by separating them with a colon (:).

Constraint Manager Users Manual, X-ENTP VX.1.1 245


Net Constraint Definition
Simulated Delay Specification

4. (Optional) To specify a maximum range between Simulated Delay Min and Simulated
Delay Max, in the Simulated Delay Max Range cell, enter a value.
Note: Specify unique Rise:Fall values with a colon (for example, 20:30). In the example
below, unique rise and fall values are being used.

Figure 7-10. Unique Rise and Fall Values for Simulated Delay Constraints

Related Topics
• Simulated Delay Specification

Signal Edge Rates and Crosstalk


Constraining edge rates is a crucial component of signal integrity. It is directly related to
crosstalk. The speed of transition as a signal switches between its low and high states causes a
spike in interference energy from the switching net (aggressor) to others net in its vicinity
(victims).
The faster a signal switches, the more interference energy it produces. Although you can space
parallel trace segments to account for strong EMI fields generated by fast edge rates, slowing
down edge rates is the best solution when adding extra trace length is not an option.

Related Topics
• Simulated Delay Specification

Matching Simulated Delay Rules Among Nets or


Constraint Classes
You can match the simulated delay constraints of a net or constraint class to use the same values
for another net or constraint class. When matching simulated delay values between a constraint
class and a net, the mean of the delay range for nets in the constraint class is used as the
matching simulated delay.
When matching simulated delay rules, the electrical net or constraint class to which you are
matching does not need to include defined constraints for Simulated Delay Min, Simulated
Delay Max, or Simulated Delay Max Range. By keeping these constraints undefined you can
specify edge rate commonality between multiple nets without constraining the common edge
rate to a specific value.

246 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Simulated Delay Specification

Procedure
1. From the Nets spreadsheet page, in the row of the net, differential pair, pin pair, or
constraint class for which you want to match simulated delay values, in its Simulated
Delay Match To cell, click to select the hierarchical level to which to match.
2. In the Simulated Delay Match cell, click .
3. From the Simulated Delay Match dialog box, click an appropriate hierarchical object,
and then click OK.
Result: The Simulated Delay Match cell now displays this design object, and the
Simulated Delay Offset and tolerance (“Tol”) constraints are accessible.
4. (Optional) Specify an offset and/or tolerance.
Examples
Example of Matching Simulated Delay Between Two Nets Without Defining Specific Delay
Values
In this example, you want to match both the rising and falling edges of two electrical nets, but
you are not interested in specifying appropriate minimum and maximum delay values, or the
maximum range between these values. Your concern is that the signal edges of these nets match
within a certain tolerance. The specific delay values are not of concern.

Use the following steps:

1. From the Nets spreadsheet page, in the row of the electrical net you want the other net to
match, click within the Simulated Delay Edge cell, and then click Both.
2. Make sure that the Simulated Delay Min, Max, and Max Range cells are empty.
3. In the row of the electrical net you want to match to another net, in the Simulated Delay
Match To cell, click to select Net.
4. In the Simulated Delay Match cell, click .
5. From the Simulated Delay Match dialog box, click the electrical net you used in step 1,
and then click OK.
6. In the Simulated Delay tolerance (“Tol”) cell that is now accessible, enter a tolerance.
Example: In the illustration below, electrical nets ADDRESS1 and ADDRESS2 are
matched. ADDRESS2 includes a tolerance of +/-10.

Constraint Manager Users Manual, X-ENTP VX.1.1 247


Net Constraint Definition
Defining Overshoot and Ringback Constraints

Figure 7-11. Simulated Delay Matching Between Two Electrical Nets

Related Topics
• Simulated Delay Specification

Defining Overshoot and Ringback Constraints


You can define overshoot and ringback constraints to specify voltage requirements that
maintain component operability and signal integrity. Static and dynamic overshoot are two
distinct types of overshoot that are often times confused with each other.
Static overshoot is unidimensional. The high and low values you use maintain component
operability for an infinite duration. Dynamic overshoot is bidimensional. Each extended high or
low value is accompanied by a precise duration. Specification of this duration is what makes
dynamic overshoot possible. Although these durations are usually extremely short, sometimes
they are the key to solving design problems.

The four overshoot constraints define the high point, low point, extreme high point, and extreme
low point voltage thresholds that the specific logic components (for example, microprocessors)
of a net can handle. Unlike logic thresholds, which dictate the voltage levels needed to switch a
component between logic states, voltage thresholds are maximums and minimums that must be
adhered to in order to maintain operability. Because of the small size and delicate nature of
electronic components, too little or too much voltage can cause irreversible damage, rendering
them useless.

In the illustration below, you can see that logic thresholds are between the overshoot thresholds,
with dynamic thresholds encapsulating both logic and static thresholds.

Figure 7-12. Static and Dynamic Overshoot in Relation to Logic Thresholds

248 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Defining Overshoot and Ringback Constraints

Ringback constraints, which are not depicted in the above illustration, give you the ability to
define the amount of ringback voltage a net can sustain while in its logic high or logic low state.
Too much ringback, also called feedback, can cause a component to haphazardly switch
between logic states. This is why it is important to define the maximum acceptable amount of
ringback energy individually for each logic state.

Note
Overshoot constraints must be rail-relative (rr) where rr = VLmin – abs for low and rr =
abs – VHmax for high.

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click Overshoot/Ringback.
Note: These constraints are also displayed as part of the All group, but you may find
it easier to work with simulated delay constraints when the Nets spreadsheet page
displays only them.
2. Navigate to the row of the net or constraint class for which you want to specify
overshoot and ringback constraints.
3. In the Static Low Overshoot Max and Static High Overshoot Max cells, enter minimum
and maximum operating voltages.
4. (Optional) In the Dynamic Low Overshoot Max and Dynamic High Overshoot Max
cells, enter a lower minimum and higher maximum operating voltage (from the static
values you entered in the previous step), followed by a : character and the duration of
time each voltage can be sustained before Constraint Manager should report an error.
Example: To define a Dynamic High Overshoot Max constraint of 6 volts for 3
nanoseconds, enter 6:3.
5. In the Ringback High Min and Ringback Low Min cells, enter the maximum amount of
ringback voltage that is acceptable for high and low signal states.
6. In the Non-Monotonic Edge cell, use the dropdown to specify whether transitions
between signal states must be non-monotonic for the rising edge, falling edge, or both
edges.
In the example below, ringback values have been defined, and both the rising and falling edges
must be non-monotonic.

Constraint Manager Users Manual, X-ENTP VX.1.1 249


Net Constraint Definition
Defining Overshoot and Ringback Constraints

Figure 7-13. Ringback Constraint Values

Examples
Example of Defining Dynamic Overshoot Constraints With a 5 ns Limit
In this example, you have already assigned static overshoot constraints to a net. Static Low
Overshoot Max is set to .5, and Static High Overshoot Max is set to 5. Now, you want to define
the net's dynamic overshoot constraints and apply a duration of 5 nanoseconds to both Dynamic
Low Overshoot Max and Dynamic High Overshoot Max. The 5 ns value means that Constraint
Manager will not report an error as long as the overshoot value is not met or exceeded for a
continuous time-period greater than 5 ns. The dynamic overshoot constraints you will define
here are 1 and 5.5.

Use the following steps:

1. In the Dynamic Low Overshoot Max cell, enter 1:5, and then press Enter.
2. In the Dynamic High Overshoot Max cell, enter 5.5:5, and then press Enter.
Result: The net now has a fully-defined set of static and dynamic overshoot constraints.
In the illustration below, you can see that both dynamic overshoot constraints are
applicable for a duration of no more than 5 ns.

Example 7-11. Dynamic Overshoots With a 5 ns Duration Limit

Related Topics
• Net Constraint Definition

250 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Power-Supply Net and Constraint Definition

Power-Supply Net and Constraint Definition


You can specify power-supply nets both manually and automatically to tell Constraint Manager
which nets in your design are power nets or ground nets. After you do so, you can define power-
supply constraints to characterize those nets. When you export nets from your layout system,
HyperLynx PI includes these constraints as part of the simulation.
Constraint Manager marks power-supply nets with the symbol . In the illustration below, nets
VCC and GND are power-supply nets. They were automatically flagged by the tool as power-
supply nets because of their names (see “Net Names Constraint Manager Automatically
Recognizes as Power-Supply Nets” on page 251 for a full list of net names).

Example 7-12. Nets Marked as Power-Supply Nets

Note
If you mistakenly specify that a net is a power-supply net, you can easily set it back to be
a net.

Net Names Constraint Manager Automatically Recognizes as Power-Supply Nets . . . 251


Specifying Power-Supply Nets Automatically. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Specifying Power-Supply Nets Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Defining Constraints for Power-Supply Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Changing Power-Supply Nets Back Into Nets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

Net Names Constraint Manager Automatically


Recognizes as Power-Supply Nets
Constraint Manager recognizes the following net names as power-supply nets by default:
• 0.9V
• +5V
• -5V
• +12V
• -12V
• GND
• GROUND

Constraint Manager Users Manual, X-ENTP VX.1.1 251


Net Constraint Definition
Power-Supply Net and Constraint Definition

• VCC
• VDD
• VEE
• VSS

As such, it automatically enables the Power Net constraint for any nets that match these names.
To set any other nets to power nets in the tool, you must do so explicitly.

Related Topics
• Power-Supply Net and Constraint Definition

Specifying Power-Supply Nets Automatically


You can specify power-supply nets in your design automatically. Doing so can save you time
when your design includes many nets of this type. Through this approach you enter search
criteria to match net names with a minimum pin count. When you are interested in only
matching against net names or pin count, you can set up your search to disregard the other
criterion.
For example, your design could contain a large number of nets but just a few power-supply nets.
By searching on pin count only, you could isolate all nets that have a certain number of pins or
greater. Because power-supply nets usually contain a large number of pins, using a high number
would provide you with a list of nets that should include power-supply nets and a minimum of
extra nets (for example, complex nets with many pins).

Procedure
1. From the Edit menu, click Power Nets, and then click Auto Create Power Nets.
2. From the Auto Create Power Nets dialog box, in the Net Name field, enter a search
string to use to find similar net names (for example, ENABLE?).
3. In the # Pins Threshold field, specify the minimum number of pins the nets must contain
(for example, 7).
4. Click . If any nets match your criteria, the Proposed power nets list displays them, and
they are automatically selected. In the example below, two nets were found.

252 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Power-Supply Net and Constraint Definition

Figure 7-14. Proposed Power Nets

Note
This dialog box works in an additive manner, which means that you can enter a new
search criteria, click , and any new matches are added to the existing list of results.You
can do this as many times as needed. In the example below, the Net Name field was
changed to “ADDR*”.

Constraint Manager Users Manual, X-ENTP VX.1.1 253


Net Constraint Definition
Power-Supply Net and Constraint Definition

Figure 7-15. Finding Additional Power Nets

Tip: To start over and clear the entire list of Proposed power nets, click .

5. Of the nets in the list of Proposed power nets, make sure that only the checkboxes of the
nets that you want to become power nets are selected. To select all proposed power nets,
click . To unselect them all, click .
6. Verify that your selections are correct, and then click OK.

Results
You can now define power-supply constraints for these nets. The Power Net constraint and
constraint for each net is now set to enabled.

Related Topics
• Power-Supply Net and Constraint Definition

254 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Power-Supply Net and Constraint Definition

Specifying Power-Supply Nets Manually


You can manually specify the power-supply nets in your design. Use this method instead of
automatic specification when your design includes only a few nets that you want to classify as
power-supply nets, or when automatic creation is not plausible.
Another approach is to first use the automatic method of specification for power-supply nets
that can be found that way, and then specify the remaining power-supply nets manually.

Prerequisites
• When you intend to do this from the Navigator, electrical nets must be visible. (Right-
click Constraint Classes, and then enable Show > Electrical Nets.)

Note
When using the Navigator to change a net to a power-supply net, it is recommended that
you have the display of power nets enabled in the Navigator. Otherwise, nets will seem to
disappear from the Navigator when you change them to power nets.

Procedure
You can do this in the following ways:

• To change a single net into a power-supply net:


o From the Nets spreadsheet page, right-click the name of a net, and then click
Change Net to Power Net.
o From the Nets spreadsheet page, click to enable its Power Net constraint.
o From the Navigator, right-click a net, and then click Change Net to Power Net.
• To change multiple nets into power-supply nets:
a. From the Nets spreadsheet page, select multiple net rows.
b. From the Edit menu, click Power Nets, and then click Change Nets to Power Nets.

Results
You can now define power-supply constraints for one or more nets. The Power Net constraint
and constraint for each net is now set to enabled.

Related Topics
• Power-Supply Net and Constraint Definition

Constraint Manager Users Manual, X-ENTP VX.1.1 255


Net Constraint Definition
Power-Supply Net and Constraint Definition

Defining Constraints for Power-Supply Nets


You can define power-supply constraints for nets marked in Constraint Manager as power-
supply nets. By defining these constraints, you can characterize your nets for power-integrity
analysis in HyperLynx PI. For example, you can define constraints like supply voltage and
maximum voltage drop.
When multiple power-supply nets in a constraint class need the same values for these
constraints, you can define them at that level instead of the net level. The only constraint of this
type that you cannot define at the constraint-class level is Power Net Constraints Supply
Voltage. You must define this constraint individually for each power-supply net.

Prerequisites
• The Power Net constraint of the nets for which you want to define these constraints must
be enabled. For more information, refer to “Power Net” on page 385.

Procedure
1. With the Nets spreadsheet page active, click the Filters - Groups toolbar dropdown, and
then click Power Nets to reduce the display to just these constraints.
2. In the row of the power-supply net for which you want to define these constraints, enter
or modify values for the following constraints:
• “Power Net Constraints Supply Voltage” on page 448 — Defines the operating
voltage for a power-supply net. You can define Power Net Constraints Supply
Voltage individually for each power-supply net.
• “Power Net Constraints Max Voltage Drop” on page 449 — Defines the
maximum acceptable decrease in voltage from Power Net Constraints Supply
Voltage. You can define Power Net Constraints Max Voltage Drop individually for
each power-supply net or for all power-supply nets in a constraint class.
• “Power Net Constraints Max Current Density” on page 450 — Defines the
maximum acceptable current that can flow across a power-supply net structure (such
as an area fill or trace). You can define Power Net Constraints Max Current Density
individually for each power-supply net or for all power-supply nets in a constraint
class.
• “Power Net Constraints Max Via Current” on page 451 — Defines the maximum
acceptable current for vias connected to power-supply nets. You can define Power
Net Constraints Max Via Current individually for each power-supply net or for all
power-supply nets in a constraint class.

Results
When you use HyperLynx PI to analyze these nets, their power-supply constraints are included
in the analysis.

256 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Modifying xDX I/O Designer FPGA Constraints

Related Topics
• Power-Supply Net and Constraint Definition

Changing Power-Supply Nets Back Into Nets


You can change power-supply nets back into nets as needed.

Prerequisites
• When you intend to do this from the Navigator, power-supply nets must be visible.
(Right-click Constraint Classes, and then enable Show > Power Nets.)

Note
When using the Navigator to change a power-supply net back into a net, it is
recommended that you have the display of electrical nets enabled in the Navigator.
Otherwise, nets will seem to disappear from the Navigator when you change them back
into nets.

Procedure
You can change a single power-supply net into a net in the following ways:

• From the Nets spreadsheet page, right-click the name of a net, and then click Change
Power Net to Net.
• From the Nets spreadsheet page, clear its Power Net constraint.
• From the Navigator, right-click a net, and then click Change Power Net to Net.

Results
The power-supply net is now a net. Any power-supply constraints that were defined for the net
are removed.

Related Topics
• Power-Supply Net and Constraint Definition

Modifying xDX I/O Designer FPGA Constraints


You can modify xDX I/O Designer field-programmable gate array (FPGA) constraints to define
technology standards. Because FPGA constraints are synchronized between front-end
Constraint Manager and xDX I/O Designer, modifications in either tool result in an update
across your schematic-capture design flow.

Constraint Manager Users Manual, X-ENTP VX.1.1 257


Net Constraint Definition
Defining Constraints for Single-Pin Nets

When you want to update these constraints across your entire design flow, you can do so with
standard forward-annotation processes. For more information about these constraints, refer to
the following constraint reference topics:

• “I/O Standard” on page 447

Procedure
1. With the Nets spreadsheet page active, from the Filters - Groups toolbar dropdown,
click I/O.
Note: Because most xDX I/O Designer constraints are defined by pin or pin pairs, make
sure that Filters > Levels > Pins and Pin Pairs are enabled.
2. In the row of the net, constraint class, pin, or pin pair for which you want to modify an
xDX I/O Designer constraint, select or enter a value.
In the following example, the I/O Standard constraint has been set to SMBUS for net
OUTPUT1.

Figure 7-16. I/O Standard Constraint Definition

Related Topics
• Net Constraint Definition

Defining Constraints for Single-Pin Nets


You can define a subset of constraint values for single-pin nets, which are referred to as Net0
nets. The constraints you can define are located on the Nets spreadsheet page. Constraint cells
that you cannot define are unavailable and not editable. In addition to defining constraint values
for Net0 nets, you can also assign this grouping of nets to a constraint class and net class.
Including them in a specific net class gives you the ability to define clearances.
Within Constraint Manager, all single-pin nets have one entry. Therefore, you define rules for
all Net0 nets as a group. Incidentally, all single-pin nets will be part of the same constraint class
and net class. Whether you have 200 single-pin nets, or just two, the tool refers to them as
“(Net0)-1:X”.

258 Constraint Manager Users Manual, X-ENTP VX.1.1


Net Constraint Definition
Defining Constraints for Single-Pin Nets

Prerequisites
• To give your layout system the ability to produce single-pin nets, from its Project
Integration dialog box, click to enable the following check box: Assign single pin nets to
unused pins, enabling fanout.
Note: After you enable this checkbox, you must run forward annotation before the net
“(Net0)-1:X” will be visible in any Constraint Manager sessions, those launched from
your front-end or back-end design system.
• Your design must contain at least one single-pin net.

Procedure
1. From the Nets spreadsheet page, locate the following net row: (Net0)-1:X
2. Modify the subset of constraint cells that are available to (Net0)-1:X for definition.
Available constraints are modifiable, and not displayed as blank or read-only.
In the example illustration below, the “(Net0)-1:X” row has been enabled. It is part of
the (All) constraint class.

Figure 7-17. Single-Pin Nets Spreadsheet Row

Results
The constraint changes you have made to (Net0)-1:X now apply to the entire grouping of
single-pin nets.

Related Topics
• Net Constraint Definition

Constraint Manager Users Manual, X-ENTP VX.1.1 259


Net Constraint Definition
Defining Constraints for Single-Pin Nets

260 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 8
Parallelism and Crosstalk Rule Creation

This section provides information about creating parallelism rules and crosstalk rules. Although
you can use both in a design, you might decide that one type of rule is more appropriate.
Density and complexity are two factors that can affect whether you need to use one type of rule
or both.
Overview of Parallelism and Crosstalk Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Defining Parallelism Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Assigning Parallelism Rules to Nets and Constraint Classes. . . . . . . . . . . . . . . . . . . . . . 264
Navigating to Assigned Parallelism Rules From the Nets Page. . . . . . . . . . . . . . . . . . . . 267
Defining Crosstalk Rules for Nets and Constraint Classes . . . . . . . . . . . . . . . . . . . . . . . 267

Overview of Parallelism and Crosstalk Rules


Before you define crosstalk rules for nets or constraint classes, or parallelism rules and then
assign them to nets or constraint classes, you should have an understanding of how parallelism
and crosstalk rules differ to determine which rule type you want to use with your design.
Here are definitions for each of these types of rules:

• Crosstalk rules — Give you the ability to specify the maximum amount of acceptable
interference energy (mV) for specific nets and constraint classes. Accordingly, the
hazard system displays violations that it encounters. Each crosstalk rule that you create
consists of two nets or constraint classes. The first object is the victim, and the second
object is the aggressor.
• Parallelism rules — Give you the ability to define pairings of net properties that
specify acceptable distances and parallelism run lengths between specific nets and net
classes. When Hazards identifies a distance/length pairing that has been breached, you
can have it resolve such violations through use of the Resolve button for the set of
hazards. For same layer parallelism rules, the router uses these rules to avoid creating
violations when running a Tune Crosstalk pass. The router does not use parallelism rules
with the Route pass or No Via Bias pass.

Note
If both are defined for a net, parallelism rules take precedence over crosstalk values.

Constraint Manager Users Manual, X-ENTP VX.1.1 261


Parallelism and Crosstalk Rule Creation
Defining Parallelism Rules

Parallelism Rules Hierarchy


When you assign multiple parallelism rules between nets, Constraint Manager uses the rule with
the lowest level of hierarchy. For example, you assign parallelism rule PR1 to Net A and Net B.
These nets are grouped into separate constraint classes. When you assign a different parallelism
rule (for example, PR2) between these two constraint classes, Net A and Net B will use the net-
to-net parallelism rule instead of the class-to-class rule.

Constraint Manager obeys parallelism rules between nets and classes based on the following
hierarchy:

1. Net to net
2. Net to (All Nets)
3. Class to class
4. Class to (All Classes)

Parallelism Rule Definition Methodologies


Depending on your design practices, you may define parallelism rules all at once, individually,
or as a mixture of these two methodologies as you work with the nets in a design. When
defining multiple rules, the method of parallelism rule creation explained in “Defining
Parallelism Rules” on page 262 gives you the ability to quickly define multiple rules, making it
best suited for this purpose. When defining or refining individual rules, you can use the Noise
Rules spreadsheet page (refer to “Assigning Parallelism Rules to Nets and Constraint Classes”
on page 264).

Related Topics
• Parallelism and Crosstalk Rule Creation

Defining Parallelism Rules


You can create rules that define parallelism for net segments that are on the same layer, adjacent
layers, or both. When you do so, you specify a combination of edge-to-edge spacing between
segments, and the maximum length that segments can run in parallel without violation.
By defining parallelism rules, you can help control the amount of crosstalk by restricting
excessive segment parallelism.When defining parallelism rules, you can create as many edge-
to-edge and maximum length combinations as you require. For example, a parallelism rule that
contains three edge-to-edge and maximum length combinations for net segments on the same
layer could specify the following rules:

• Segments with an edge-to-edge spacing of 10 th can run parallel for no more than 100
th.

262 Constraint Manager Users Manual, X-ENTP VX.1.1


Parallelism and Crosstalk Rule Creation
Defining Parallelism Rules

• Segments with an edge-to-edge spacing of 100 th can run parallel for no more than
1,000 th.
• Segments with an edge-to-edge spacing of 1,000 th can run parallel for no more than
10,000 th.

Figure 8-1. Example Parallelism Rule Definition

The above example illustration shows what this looks like in the tool. Because the layout system
interpolates the available parallelism rules to account for undefined Edge / Edge values, you can
define rules as broadly or narrowly as you require.

Note
Interpolation of these rules means that the layout system mathematically determines an
appropriate Max Parallel Len value for an undefined Edge/ Edge value that falls between
two defined Edge / Edge values. Using interpolation based on the above example rules, an
Edge Edge value of 50 th produces a Max Parallel Len requirement of 500 th.

Prerequisites
• You should have an understanding of when to use parallelism and crosstalk rules. For
more information, refer to “Overview of Parallelism and Crosstalk Rules” on page 261.

Procedure
1. With the Noise Rules spreadsheet page active, from the Pairs toolbar, click .
Alternative: From the Edit menu, click Parallelism Rules, and then click Define
Parallelism Rules.
2. From the Define Parallelism Rules dialog box, next to the Parallelism rules heading,
click , and then change the default name of the new rule (“New”) to a meaningful title.

Constraint Manager Users Manual, X-ENTP VX.1.1 263


Parallelism and Crosstalk Rule Creation
Assigning Parallelism Rules to Nets and Constraint Classes

Tip: Instead of creating a new rule, you can also use an existing parallelism rule as a
clone and then modify it to meet the needs of the unique rule. To do so, in the list of
existing parallelism rules, click one, and then click .

3. Define an edge-to-edge spacing and maximum length combination for each same layer
rule or adjacent layer segment rule you want this parallelism rule set to include by
performing one of the following tasks:
• To define a same layer segment rule, next to the Same layer segments heading, click
, and then enter an Edge / Edge value and a Max Parallel Len value.
• To define an adjacent layer segment rule, next to the Adjacent layer segments
heading, click , and then enter an Edge / Edge value and a Max Parallel Len value.

Tip: You can also create adjacent layer segment rules by cloning same layer segment
rules. To do so, next to Adjacent layer segments, click . When cloning, all rules are
recreated. You can remove rules that are not needed by clicking a row, and then clicking
.

4. After you finish entering edge-to-edge and maximum parallel length combinations, click
Apply.
Rule: The maximum length value associated with an edge-to-edge value can not be
greater than the maximum length value associated with a larger edge-to-edge value. For
example, after you define an edge-to-edge and maximum length combination of 10 th
and 1200 th, an edge-to-edge value of 8 th must be accompanied by a maximum length
value that is less than the maximum length value of the previous set (that is, 1200 th).
Note: When you enter incorrect values, the cell background is changed to red and the
data in the cell is not saved until you correct the value.

Related Topics
• Parallelism and Crosstalk Rule Creation

Assigning Parallelism Rules to Nets and


Constraint Classes
After you define parallelism rules, you can apply them to specific pairs of nets and constraint
classes by creating net-to-net or class-to-class parallelism rule assignments. Each parallelism
rule assignment includes two specific nets or constraint classes, and the parallelism rule to
which they must adhere. In addition, you can also apply all parallelism rules that you have
created to the nets or constraint classes that comprise a parallelism rule assignment.

264 Constraint Manager Users Manual, X-ENTP VX.1.1


Parallelism and Crosstalk Rule Creation
Assigning Parallelism Rules to Nets and Constraint Classes

Figure 8-2. Parallelism Rule Assignment

In the above example illustration, the noise rule Bus1 assigns parallelism rule PR1 between all
nets in the Memory constraint class.

Procedure
1. With the Noise Rules spreadsheet page active, from the Pairs toolbar, click .
Alternative: From the Noise Rules spreadsheet page, click , and then modify the
Noise Type, Constraint Class or Electrical Net Name Victim and Aggressor, and
Parallelism Rule fields using the appropriate field selector. For example, because Class-
Class is the default parallelism type, when assigning a net-to-net parallelism rule, click
to change this field to Net-Net. When assigning parallelism rules using the Assign
Parallelism Rules dialog box, you can access it from the Edit menu by clicking
Parallelism Rules, and then clicking Assign Parallelism Rules.
2. From the Assign Parallelism Rules dialog box, in the Noise rule type field, specify a net-
to-net or class-to-class assignment.
3. From the list of available electrical nets or constraint classes, select the nets or constraint
classes that will comprise the first half of the pairing (that is, reference nets or classes),
and then next to the Victim constraint class(es) or Victim electrical net(s) box, click .
Tip: To select multiple nets or constraint classes, you can use Ctrl-click, Shift-click, or
click-drag. To select nets or constraint classes by name, in the field below the list of
source nets or net classes, enter a search string, and then click .
4. From the list of nets or constraint classes, select the nets or constraint classes that will
comprise the second half of the pairing (that is, apply rules to nets or constraint classes),
and then next to the Aggressor constraint class(es) or Aggressor electrical net(s) box,
click .
Note: When assigning a parallelism rule to constraint classes, you can select all
constraint classes by using the (All Classes) selection. The selection (All) refers to the
default constraint class (All).
Tip: When you want to check for same net or same constraint class parallelism, select
the nets or constraint classes you chose in step 3.
5. In the Parallelism rule box, select a specific parallelism rule. To view detailed
information about each of the available rules, click .
6. (Optional) Define a maximum crosstalk value for these pairings of electrical nets or
constraint classes. To do so, in the Max crosstalk box, enter the maximum amount of

Constraint Manager Users Manual, X-ENTP VX.1.1 265


Parallelism and Crosstalk Rule Creation
Assigning Parallelism Rules to Nets and Constraint Classes

crosstalk that the victim nets or constraint classes can receive from the aggressor nets or
constraint classes.
7. Make sure that the lists of nets or constraint classes is accurate. To remove any nets or
constraint classes from either list, click to select them, and then click the corresponding
.
8. Click Apply.
Examples
Example of Assigning a Parallelism Rule Between a Single Constraint Class and All Other
Constraint Classes
In this example, you want to assign a parallelism rule between nets in a single constraint class
with nets in all other constraint classes. The parallelism rule includes same-layer and adjacent-
layer segment, edge-to-edge and maximum parallelism rule lengths. The nets in the single
constraint class are critical nets with strict net parallelism requirements.

1. From the Assign Parallelism Rules dialog box, in the Noise rule type field, make sure
Class to Class is selected.
2. From the list of Available constraint class(es), select the single constraint class to
associate with all other constraint classes, and then next to the Victim constraint
class(es) list, click .
3. From the list of Available constraint class(es), select the (All Classes) row, and then
next to the Aggressor constraint class(es) list, click .
4. In the Parallelism rule box, click the dropdown, and then select the parallelism rule to
assign between the single constraint class and all other constraint classes, and then click
OK.
In the illustration below the Noise Rules spreadsheet shows that parallelism rule
G10L100/G15L150 is assigned between constraint class HT_CONN_IN and all other
constraint classes.

Example 8-1. Single Constraint Class and All Other Constraint Classes
Parallelism Rule Assignment

Related Topics
• Parallelism and Crosstalk Rule Creation
• Navigating to Assigned Parallelism Rules From the Nets Page
• Noise Rules

266 Constraint Manager Users Manual, X-ENTP VX.1.1


Parallelism and Crosstalk Rule Creation
Navigating to Assigned Parallelism Rules From the Nets Page

Navigating to Assigned Parallelism Rules


From the Nets Page
As you work with the Nets spreadsheet page to define constraints for individual nets and
constraint classes, you can quickly navigate to the parallelism rules assigned to a net or
constraint class. By doing so, you can easily and accurately determine any parallelism-rule
assignments for a design object.

Procedure
From the Nets spreadsheet page, right-click a net or constraint class, and then click Navigate to
Parallelism Rule.

Results
The Noise Rules page becomes active, and any parallelism rules assigned to the design object
are highlighted.

Related Topics
• Parallelism and Crosstalk Rule Creation

Defining Crosstalk Rules for Nets and


Constraint Classes
You can define crosstalk rules for pairs of nets and constraint classes to specify the maximum
crosstalk value for nets and constraint classes as part of an aggressor-victim relationship. This
values defines the maximum acceptable amount of crosstalk a victim net can receive from an
aggressor net.
When you define a maximum crosstalk value, you can also specify the victim net's signal state
(for example, Low or High) that is most susceptible to crosstalk. Because crosstalk is a
complicated matter that presents unique challenges based upon signal state, you can define
multiple crosstalk rules to specify constraints for aggressor-victim net and constraint class pairs.
For example, when Net B is in a low state, you can restrict the maximum crosstalk from Net A
to 10 mV. However, when Net B is in a high state, you can require that the maximum crosstalk
from Net A is no more than 5 mV.

Prerequisites
• You should have an understanding of when to use parallelism and crosstalk rules. For
more information, refer to “Overview of Parallelism and Crosstalk Rules” on page 261.

Constraint Manager Users Manual, X-ENTP VX.1.1 267


Parallelism and Crosstalk Rule Creation
Defining Crosstalk Rules for Nets and Constraint Classes

Procedure
1. With the Noise Rules spreadsheet page active, right-click within the spreadsheet, and
then click New Rule.
2. In the Noise Type cell, click to specify whether the aggressor-victim relationship is Net-
to-Net or Class-to-Class (constraint class).
3. In the Constraint Class Or Electrical Net Name Victim field, click the browse button,
select the victim net or constraint class, and then click OK.
4. In the Constraint Class or Electrical Net Name Aggressor field, click the browse button,
select the aggressor net or constraint class, and then click OK.
5. In the Crosstalk Max cell, enter the maximum amount of crosstalk the victim net or
constraint class can receive from the aggressor.
6. (Optional) In the Crosstalk Level cell, click to select the signal state or states of the
victim net or constraint class using the following guidelines:
• High — The victim net is on (in its high state). The voltage level is at or above the
high threshold (for example, 5.1 V).
• Low — The victim net is off (in its low state). The voltage level is at or below the
low threshold (for example, 0.9 V).
• Tristate — The victim net is off, but a small voltage still flows from the receiver to
ground (for example, 0.5 V).

Results
The Crosstalk Max value is now the constraint for a specific net-to-net relationship, or for all
victim nets in a constraint class when receiving crosstalk from the aggressor nets in another
constraint class.

Examples
Example of Defining Two Nets as Both Aggressors and Victims
In this example, you want to define two net-to-net crosstalk relationships to specify how Net A
and Net B should be constrained when each net is an aggressor or victim of the other. In this
case when Net A is the aggressor of victim Net B, the maximum crosstalk value Net B can
receive from Net A is 5 mV. Conversely, when Net B is the aggressor of victim Net A, the
maximum crosstalk value Net A can receive from Net B is 10 mV. In addition, both victim nets
must meet this constraint during all signal states.

1. From the Noise Rules spreadsheet page, click , and then in the Noise Type cell, click
Net-to-Net.
2. In the Constraint Class Or Electrical Net Name Victim field, click the browse button,
select Net A, and then click OK.

268 Constraint Manager Users Manual, X-ENTP VX.1.1


Parallelism and Crosstalk Rule Creation
Defining Crosstalk Rules for Nets and Constraint Classes

3. In the Constraint Class or Electrical Net Name Aggressor field, click the browse button,
select Net B, and then click OK.
4. In the Crosstalk Max cell, enter 10. In the Level cell, click to select All.
5. Repeat steps 1 through 4, and this time specify Net B as the victim net, Net A as the
aggressor net, and a Crosstalk Max value of 5.
Example: In the following illustration, net $1N2 can be susceptible to 10 mV of
crosstalk from net $1N5. Conversely, when the aggressor-victim role is reversed, net
$1N5 can receive no more than 5 mV of crosstalk from net $1N2.

Example 8-2. Two Nets Defined As Both Aggressor and Victim Nets

Related Topics
• Parallelism and Crosstalk Rule Creation
• Noise Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 269


Parallelism and Crosstalk Rule Creation
Defining Crosstalk Rules for Nets and Constraint Classes

270 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 9
Differential Pair Creation and Pair Rule
Definition

You can designate two nets as a unique differential pair for the purpose of defining constraints
that are only applicable to this type of net pairing. When creating differential pairs, you can do
so manually and automatically.
Note
When any previously defined differential pairs now include a “push pin” icon next to
them, refer to “Differential Pairs Conversion” on page 60.

Defining Differential Pairs Manually. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271


Defining Differential Pairs Automatically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Assigning Rules to Differential Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

Defining Differential Pairs Manually


You can manually define differential pairs by selecting the two electrical nets to define as the
differential pair. After you define a differential pair, the Nets spreadsheet page is updated to
include the designation.
When you can match differential pairs by net name, you should consider creating differential
pairs automatically. By doing so, you can create differential pairs more efficiently. For more
information, refer to “Defining Differential Pairs Automatically” on page 272.

Prerequisites
• Nets that you define as differential pairs must be part of the same constraint class and
net class.
• The nets must be electrical nets.
• The nets must not be power nets.

Procedure
1. From the Nets spreadsheet page, use Ctrl-click to select two electrical nets ( ), and then
from the Pairs toolbar, click .

Constraint Manager Users Manual, X-ENTP VX.1.1 271


Differential Pair Creation and Pair Rule Definition
Defining Differential Pairs Automatically

Alternative: After you select two electrical nets, right-click either net, and then click
Create Differential Pair; or, from the Edit menu, click Differential Pairs, and then
click Differential Pair from Selected Nets.
2. (Optional) To give the differential pair a unique name instead of its system-defined
name, right-click the differential-pair cell, and then click Rename. Now that the cell is
editable, type a new name (but exclude the following characters: ! \ “ and /), and then
press Enter.

Figure 9-1. Differential Pair

Results
• Topology Type is set to Custom for the differential pair and the nets that comprise it.
• After you create a differential pair, delay cells at the pair level could be highlighted to
indicate errors. This happens when each of the nets you used to create the differential
pair had different delay values defined previously. To remove the error highlighting, you
need to define delay values at the differential-pair level.
• If you need to delete a differential pair, from the Nets spreadsheet page, click a
differential pair row ( ), and then press Delete. To select multiple rows for
simultaneous deletion, use Ctrl-click and Shift-click.

Related Topics
• Differential Pair Creation and Pair Rule Definition

Defining Differential Pairs Automatically


You can automatically define differential pairs to quickly construct them from specific nets.
After you have Constraint Manager automatically construct differential pairs based on a net
name criterion, IBIS model information, or regular expressions, you can select from the
proposed list of differential pairs to choose those that you want to create. After you create
specific differential pairs, the Nets spreadsheet page is updated to include them.
The process of automatically creating differential pairs is not always a viable method. It
depends on whether your nets have naming characteristics, or IBIS models assigned to
components, that allow for identification of complimentary nets.

272 Constraint Manager Users Manual, X-ENTP VX.1.1


Differential Pair Creation and Pair Rule Definition
Defining Differential Pairs Automatically

Prerequisites

• Nets that comprise a differential pair must be part of the same net class and constraint
class.

Procedure
1. With the Nets spreadsheet page active, from the Pairs toolbar, click .
Alternative: With the Nets spreadsheet page active, from the Edit menu, click
Differential Pairs, and then click Auto Assign Differential Pairs.
2. From the Auto Assign Differential Pairs dialog box, In the Assign by field, select one of
the following assignment methods:
• Net Name — Group nets into differential pairs based on net naming conventions.
• IBIS Models — Group nets into differential pairs based on differential pin
definitions in available IBIS models.
Note: After selecting this method, click , and then proceed to step 5.
• Regular Expression — Group nets into differential pairs based on regular-
expression search criteria. When using this assignment method, search results for the
Pair net name field (step #4) are not displayed when there are no search results for
the Net name field (step #3), even when they do exist.
The advantage of regular expressions is that you can use them to create more precise
net matching searches. In the event that the Net Name assignment method would not
work, you could create a regular expression that would identify certain pairs of
differential nets.
3. In the Net name field, enter a search criterion. For example, when assigning by net
name, you could use a search criterion of *_P when you know that each net with this
suffix should be paired with a net of the same name that uses a different suffix.
Tip: To view the list of electrical nets in your design, click Preview Nets. Doing so can
be helpful when you are entering criteria in the Net name field and Pair net name field.
After you are done reviewing the content of the Electrical Nets dialog box, click OK.
4. In the Pair net name field, enter an appropriate search criterion based on the Net name
search criterion you provided in step 3, and then click .
Example: When assigning by net name, a complimentary suffix to the example in step 3
(*_P) might be *_N. In the illustration below, you can see how the Net name and Pair
net name fields were used to discover five pairs of nets that may be candidates for
differential pair creation.

Constraint Manager Users Manual, X-ENTP VX.1.1 273


Differential Pair Creation and Pair Rule Definition
Defining Differential Pairs Automatically

Figure 9-2. Automatic Assignment of Differential Pairs

Note
It is important to understand that the Net name field takes precedence over the Pair net
name field. This comes in to effect when the net name string or regular expression string
you enter results in the same net showing up in both the Electrical Net column and Pair
Net column. In these cases, the nets show up in the Electrical Net column only.

5. Unless you chose to assign by regular expressions, skip to the next step. In this case, the
Match Differential Pairs dialog box appears. For each pair row that was proposed based
on your regular expressions, you can click within the Pair Net column to select an
alternate pair net, when appropriate. After you finish making adjustments, click Accept.
Note: When two electrical nets on the same row do not match, the Pair Net cell is
highlighted in red. You can hover over a red cell or refer to the Output window to
determine the cause of the conflict (for example, the two nets do not belong to the same
net class).
6. In the list of proposed differential pairs, click to select the differential pairs that you
want to use, and then click Apply.
Tip: To select all proposed differential pairs, click . To unselect all differential pairs,
click .
Result: Differential pairs that you define automatically are indicated on the spreadsheet
in the same manner as differential pairs that you define manually.

274 Constraint Manager Users Manual, X-ENTP VX.1.1


Differential Pair Creation and Pair Rule Definition
Assigning Rules to Differential Pairs

7. (Optional) To give one or more differential pairs unique names instead of their system-
defined names, from the Constraint Manager spreadsheet, right-click a differential-pair
cell, and then click Rename. Now that the cell is editable, type a new name (but exclude
the following characters: ! \ “ and /), and then press Enter.

Results
• Topology Type is set to Custom for the differential pair and the nets that comprise it.
• After you create a differential pair, delay cells at the pair level could be highlighted to
indicate errors. This happens when each of the nets you used to create the differential
pair had different delay values defined previously. To remove the error highlighting, you
need to define delay values at the differential-pair level.
• If you need to delete a differential pair, from the Nets spreadsheet page, click a
differential-pair row ( ), and then press Delete.

Related Topics
• Differential Pair Creation and Pair Rule Definition

Assigning Rules to Differential Pairs


After you manually or automatically define differential-net pairings, you can assign rules
(constraint values) to each differential pair. Although most rules you can define are at the pair
level, there are a few differential pair constraints that you can define at the constraint class level.
You can assign the following differential-pair constraints:

• “Differential Pair Tol Max” on page 435 — Length or delay tolerance of the pair. For
example, when you need a set of differential pairs routed to a matched length or time of
flight delay, you can use this rule to define a very tight pair tolerance, but also define a
more loose matched group tolerance.
• “Differential Pair Phase Tol Distance Max” on page 438 — Maximum allowed size that
a coupled piece of a differential pair can be when a length difference exists between the
coupled pieces.
• “Convergence Tolerance Max” on page 441 — Maximum allowed difference in trace
length distance from a pad to the point where the traces start routing differentially at
Differential Spacing.
• “Distance to Convergence Max” on page 442 — Maximum allowed trace distance from
a pad to the point where the traces start routing differentially at Differential Spacing.
• “Separation Distance Max” on page 443 — Maximum allowed distance that differential
traces are allowed to be routed at a spacing greater or less than Differential Spacing.

Constraint Manager Users Manual, X-ENTP VX.1.1 275


Differential Pair Creation and Pair Rule Definition
Assigning Rules to Differential Pairs

• “Differential Spacing” on page 444 — Spacing at which differential pair traces must be
routed. Differential spacing is defined per layer. This is a reference field (read only)
when accessed from the Nets. To modify this value, use the Trace & Via Properties
page, Differential Spacing constraint.
• “Differential Impedance Target” on page 445 — Defines the target differential
impedance. If this constraint can not be met, Differential Spacing is used.
• “Differential Impedance Tolerance” on page 446 — Introduces a tolerance around
Differential Impedance Target. You can define this constraint for each differential pair,
or individually for each net that comprises a differential pair.

Procedure
1. From the Nets spreadsheet page, click the row of the differential pair ( ) to which you
want to assign differential-pair rules.
Tip: To limit the Nets spreadsheet to a subset of constraints that includes only
differential pair constraints, from the Filters - Groups toolbar dropdown, click
Differential Pair Properties.
2. Click in a specific differential-pair rule field (for example, Separation Distance), and
then enter an appropriate value.
3. Repeat step 2 to define more differential pair rules.
Examples
Example of Defining a Matched Group Tolerance and Pair Tolerance
By defining both a matched group tolerance and differential pair tolerance, you can specify
length or delay tolerances for differential pairs at the individual net and pair level. For example,
for three differential pairs consisting of six total nets, you first define a matched group tolerance
of 100 th to give the router the ability to route each of these nets such that the difference
between the longest and shortest net is less than or equal to 100 th. Because these six nets
comprise three differential pairs, you are also concerned about the difference in length between
each pair of nets that makes up a differential pair. To account for this, you define a pair
tolerance of 20 th to ensure that the maximum difference between net lengths at the differential
pair level is no greater than 20 th.

276 Constraint Manager Users Manual, X-ENTP VX.1.1


Differential Pair Creation and Pair Rule Definition
Assigning Rules to Differential Pairs

Example 9-1. Differential Pairs With Two Types of Tolerances Defined

To Define a Matched Group Tolerance and Pair Tolerance:

1. From the Nets spreadsheet page, specify a Match and Tol for one net of the intended
matched group.
2. For the nets that will use this matched group tolerance, enter the match number you
choose in step 1 into the Match field of each appropriate net row.
Example: In the example above, specify the match and tolerance in the spreadsheet row
of one of the nets, and then enter the match number into the Match field of the remaining
nets.
3. From the Nets spreadsheet page, specify an acceptable Pair Tol for each differential pair
that is comprised of the nets for which you defined a matched group tolerance in step 2.
Example: In the example above, you would define a pair tolerance of 20 th for the three
differential pairs that are based upon the nets for which you defined a matched group
tolerance.
Example of Matching Physical Nets in a Differential Pair
You can use the Length or TOF Delay Match constraint to create matching relationships among
physical nets that are part of complex electrical nets (^^^) that make up a differential pair. You
can do this for any electrical net that contains multiple physical nets. By doing so, you ensure
that the lengths of physical nets that run parallel are the same, or within a certain tolerance. This
keeps the physical nets from being out of balance between series elements.

Constraint Manager Users Manual, X-ENTP VX.1.1 277


Differential Pair Creation and Pair Rule Definition
IBIS Model [Diff_Pin] Section Declarations

Example 9-2. Differential Pair Matched at the Physical Net Level

In the above illustration, $1N111 and $1N110 are the first physical nets in each electrical net.
ADDR2 and ADDR3 are the second physical nets in each electrical net. Each of the two match
groups matches each parallel physical net to within 50 th of the other. Although it is not
pictured, the differential pair itself has a defined tolerance for the overall electrical nets through
the Differential Pair Tol constraint.

Note
Matching at the physical net level is just one way to implement greater control over the
nets that comprise a differential pair. When you need to enforce exact lengths, you can
define minimum and maximum values, use formulas, variables, or a combination of
various constraints. You can do this at the physical net level or electrical net level.

Related Topics
• Differential Pair Creation and Pair Rule Definition

IBIS Model [Diff_Pin] Section Declarations


Nets that are connected to a receiver or bidirectional pin in the [Diff_Pin] section of an IBIS
model are always simulated as differential pairs. This is true regardless of whether you define
the nets as differential pairs within Constraint Manager. However, the router you use with
Constraint Manager only enables differential pair routing/constraints when you have defined a
pairing in Constraint Manager.

Related Topics
• Differential Pair Creation and Pair Rule Definition

278 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 10
Constraint Template Creation and Reuse

You create constraint templates to capture the constraints you define for a single net in a form
that gives you the ability to quickly apply those values to other nets. You can reuse constraint
templates in a design in which you create them and also externally in other designs.
Because constraint templates capture all constraints defined for a specific net, constraint
templates are an extremely powerful and efficient way to reuse constraint specifications that
have resulted in or will result in faster progression from design concept to market placement. At
any time during or after the design creation process, you can export constraint templates to a
common directory to build a library of reusable design constraint sets that will streamline the
design creation process for future designs that contain many of the same connection
requirements between parts.

Tip: When developing a library of constraint templates, consider making it accessible to


all designers within your group when appropriate. By doing so, you can leverage
common constraint values and promote consistency.

Creating Constraint Templates to Capture Net Constraints. . . . . . . . . . . . . . . . . . . . . . 279


Constraints and Values Stored With Each Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Constraint Template Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Updating Nets With Constraint Template Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Reusing Constraint Templates in External Designs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

Creating Constraint Templates to Capture Net


Constraints
You can create constraint templates to capture net constraints for reuse on similar nets within
your current design and external designs. Creating a constraint template for a single bus net is a
common application that could promote both design-internal and external constraint template
reuse.
For example, after specifying the constraints that promote signal integrity for one bus net within
a 64-bit bus (that is, 64 total bus nets), you can quickly create a constraint template based upon
that net, and then apply the template to the other sixty-three bus nets that comprise the bus. By
exporting this constraint template, you can then import it into designs that have a common bus
structure, and reuse the constraint template to duplicate characteristics that promote signal
integrity for similar nets.

Constraint Manager Users Manual, X-ENTP VX.1.1 279


Constraint Template Creation and Reuse
Creating Constraint Templates to Capture Net Constraints

Note
When you modify constraint values from the Constraint Templates spreadsheet page, just
the values in the template are changed. The originating values, which come from other
spreadsheet pages, are not modified.

Procedure
1. From the Nets spreadsheet page, right-click an electrical net ( ), and then click Create
Constraint Template.
Tip: Instead of creating a new template, you can clone an existing template to use its
constraint values as the starting point for another template. To do so, right-click a
template, and then click Clone.
2. From the Create Constraint Template dialog box, in the name field and optional
description field, enter suitable identifiers for this constraint template, and then click
OK.
Tip: Type a name and description that promotes the highest potential for proper reuse
among other designers and yourself.
3. If needed, modify specific constraint values defined in the constraint template.

Results
The constraint template is created and now available from the Constraint Templates spreadsheet
page for review or modification. At this point, you can do the following things:

• Define the Device Matching Pattern cell — You can do this for one or more devices in
the constraint template (for example, QU988*). It is a regular expression. By doing so,
you can create name matching requirements that are used when the constraint template
is applied to a net. For more information about this cell, and when you might use it, refer
to its description in “General Template Values” on page 281.
• Rename the constraint template — From the Constraint Templates spreadsheet
page, right-click the name of the constraint template, and then click Rename. Type a
new name, and then press Enter.
• Delete the constraint template — From the Constraint Templates spreadsheet page,
click the name of the constraint template you want to delete, and then press Delete.

Related Topics
• Constraint Template Creation and Reuse

280 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Template Creation and Reuse
Constraints and Values Stored With Each Template

Constraints and Values Stored With Each


Template
When you create a constraint template, it combines net values and constraints to produce the
template. It does so by using internal Constraint Manager database information, constraint
definitions you have made on the Nets, Parts, and Noise Rules spreadsheet pages, and
appropriate selections from specific Constraint Manager dialog boxes.
Refer to the following table, which includes a description of each template cell that does not
originate from another spreadsheet page. For all other cells (for example, Formulas Formula),
refer to “Quick Reference - Constraint Manager Spreadsheet” on page 32 or “Constraint
Reference” on page 339.

Table 10-1. General Template Values


Template Value Description
Template Name Name of the constraint template.
Description Description of constraint template, if provided.
Device Orig Name Name of the source object.
Device Matching Pattern Defines a regular-expression device name matching
pattern (for example, QU988*) that becomes a
requirement when you apply the constraint template to a
net. This is an optional value. Here are some examples of
when you might use it:

• When automatic pin matching does not work precisely


or produce the needed outcome.
• When a group of nets includes one or more of the same
component.

As a side note, you generally do not need to define this


value when all components in a net are unique. This is
because the automatic pin matching process has no issues
during application of the constraint template.
Device Type Part number of the source component.
Device Model IBIS model of the source object.
Device Value Discrete value of the source object, when available.
Pin Type Pin type of the source pin.
Pin Number Pin number of the source pin.
Pin Net Template net for the pin.
Pin Model Pin model of the source object.

Constraint Manager Users Manual, X-ENTP VX.1.1 281


Constraint Template Creation and Reuse
Constraint Template Application

Table 10-1. General Template Values (cont.)


Template Value Description
Pin Set Type Type of pin set (for example, balanced or unbalanced).
Pin Set Pins Pins included in pin set.
Net Constraint Class Constraint class to which the originating net belongs.

Related Topics
• Creating Constraint Templates to Capture Net Constraints

Constraint Template Application


After you create a constraint template to capture net constraints, you can apply it to one or more
nets. It is important to understand that all constraints that can be defined within a template are
overwritten for a net during the application process. This includes constraint values within a
template that are “blank” or undefined.
When you apply a constraint template to a net, make sure that the net to which you are applying
it is an appropriate candidate for the constraint set defined in the template. During the
application process, which includes the process of elaboration, Constraint Manager performs an
analysis to determine whether the target net is suitable for the constraint template. Depending
on the required level of similarity you defined while setting up the tool, the potential for net
application will vary. By modifying the Constraint Manager setting that dictates this similarity
requirement, you can specify how similar candidate nets must be to the net from which the
constraint template originated.

Tip: To modify the similarity requirement between constraint templates and net
candidates, from the Setup menu, click Settings, and then under Display, click General.
Now, change the Template match threshold. For example, to specify a lesser similarity
requirement, enter a smaller percentage value.

Guidelines for Applying Constraint Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282


Applying a Constraint Template to Multiple Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Applying Constraint Templates From the Constraint Templates Page . . . . . . . . . . . . . 284
Applying a Constraint Template to a Single Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Device Pattern Matching With Constraint Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Modifying Pin Matching for an Applied Constraint Template . . . . . . . . . . . . . . . . . . . . 286

Guidelines for Applying Constraint Templates


You should be aware of the following guidelines for differential pairs and virtual pins.

282 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Template Creation and Reuse
Constraint Template Application

Differential Pairs
When applying a constraint template to a differential pair, the constraint template must have
been created from a differential pair. For example, when you only have constraint templates
based off of single nets, trying to apply a constraint template to a differential pair results in no
available constraint templates for selection. In some cases, you might want to apply a single-net
constraint template to each net that will comprise a differential pair before you create the
differential pair.

Virtual Pins
When you apply a template that contains virtual pins, it is only applied correctly to nets when
the following conditions are met:

• They are of the same topology type.


• They contain the same number of virtual pins.
For example, you create a template from a net that is topology type star and has two virtual pins.
You then try to apply the template to a net that is topology type TShape and also includes two
virtual pins. Because both the topology type and the number of virtual pins do not match, the
template is applied incorrectly. In fact, the net’s two virtual pins and from-tos are deleted.

Related Topics
• Constraint Template Application

Applying a Constraint Template to Multiple Nets


Use this procedure when you want to apply a constraint template to a selection of nets and not
just a single net. This procedure provides application instructions that originate from the Nets
page of the spreadsheet and is useful when you already know which template you want to apply
to a net.
You can also use a slightly different interface that originates from the Constraint Templates
page of the spreadsheet. This procedure is useful when you do not know which template you
want to apply to a net and need to refer to the list of available templates in order to make that
decision. For more information, refer to “Applying Constraint Templates From the Constraint
Templates Page” on page 284.

Procedure
1. With the Nets spreadsheet page active, from the Edit menu, click Apply Constraint
Template.
2. From the Select Nets for Constraint Template Application dialog box, enter a Net Name
Filter to select the appropriate nets to which to apply the constraint template, and then
click .

Constraint Manager Users Manual, X-ENTP VX.1.1 283


Constraint Template Creation and Reuse
Constraint Template Application

3. In the Constraint Template field, use the pull down to select a constraint template.
4. Under the list of Proposed nets, use the checkbox next to each net to uncheck the nets to
which you do not want to apply the constraint template. While you are working with the
list of proposed nets, you can perform any of the following tasks:
• To apply the constraint template to all checked nets without exiting this dialog box,
to the right of the Proposed nets heading, click .
• To select all Proposed nets, click .
• To deselect all Proposed nets, click .
• To clear the list of Proposed nets and start over, click .
5. After you have tested and selected the nets to which you want to apply the constraint
template, click OK.

Results
After you finish, the Constraint Template Matching dialog box is displayed, which lets you
modify pin matching. For more information, refer to “Modifying Pin Matching for an Applied
Constraint Template” on page 286.

Related Topics
• Constraint Template Application

Applying Constraint Templates From the Constraint


Templates Page
You can use this procedure to assign a constraint template to one or more nets. This approach is
most useful when you do not know which template you want to apply and need to refer to the
list of available templates in order to make that decision.

Procedure
1. With the Constraint Templates spreadsheet page active, right-click a template name
row, and then click Assign nets.
2. From the Assign nets to template dialog box, use click and Ctrl-click to select one or
more nets.
Alternative: Use the search box, and optionally wildcard characters, to quickly select a
group of nets that match a name criteria.
3. After you finish highlighting the appropriate nets, click OK.

284 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Template Creation and Reuse
Constraint Template Application

Results
After you finish, the Constraint Template Matching dialog box is displayed, which lets you
modify pin matching. For more information, refer to “Modifying Pin Matching for an Applied
Constraint Template” on page 286.

Related Topics
• Constraint Template Application

Applying a Constraint Template to a Single Net


Constraint Manager provides multiple methods of applying constraint templates to nets. Most
procedures are generally more suitable for working with large numbers of nets. The method
described in the procedure below is useful when you want to work with a finite number of nets
by selecting individual nets on the Nets spreadsheet page.

Procedure
1. Right-click an electrical net ( ), and then click Apply Constraint Template. (You can
also select multiple nets by using use Ctrl-click or Shift-click.)
Tip: You can also apply a constraint template at the constraint-class level, but doing so
is only for propagation to the nets inside the constraint class. For this reason, the
constraint template is not directly applied to the constraint class. This is because
constraint templates are meant to be applied to nets and not object hierarchy.
2. From the Select Constraint Template dialog box, select the constraint template to apply
to one or more nets.
3. When applying constraint templates to nets, specify whether the nets should be moved
into the constraint (electrical and signal integrity) and/or net (physical) classes defined
in the template. To make these specifications, click the check boxes associated with
Apply Constraint Class and Apply Net Class, and then click OK.
Example: To move nets into just the net class defined in the constraint template, make
sure that only Apply Net Class is checked.
Result: The Constraint Template Application Report dialog box shows the
compatibility between a constraint template and nets. It also applies the constraint
template to the selected nets when you begin this procedure with the right-click, Apply
Constraint Template.

Results
After you finish, the Constraint Template Matching dialog box is displayed, which lets you
modify pin matching. For more information, refer to “Modifying Pin Matching for an Applied
Constraint Template” on page 286.

Constraint Manager Users Manual, X-ENTP VX.1.1 285


Constraint Template Creation and Reuse
Constraint Template Application

Related Topics
• Constraint Template Application

Device Pattern Matching With Constraint Templates


When automatic pin matching does not work as precisely as needed, you can define the Device
Matching Pattern value for one or more components in a constraint template. You can also
define this template value when you expect this to be the case. Here is a detailed example of
when you would use this value:
1. There is a set of nets that contain the following identical components: QU9881,
QU9882, and QU9883. These components have pins that are part of a netline topology.
2. You create a constraint template from the first net in the set. In the template, component
QU9881 is now defined as Dev1.
3. In the template, you define the Device Matching Pattern value for component Dev1 as
QU988*.
4. Now, when you apply the constraint template to the nets containing QU9882 and
QU9883, the Dev1 component is matched to these components. In essence, the pins
create the same netline topology.

Related Topics
• Constraint Template Application

Modifying Pin Matching for an Applied Constraint


Template
You can modify pin matching for each net that is associated with a constraint template. After
you apply a constraint template to a net, the Constraint Template Matching dialog box is
automatically displayed. You can also display this dialog box when you need to update pin
matching.
The Constraint Template Matching display uses both color coding and numbering to show how
well a constraint template matches the net to which it is applied. The following are important
fields of the dialog box:

• Pins Template — Displays the number of pins in the template.


• Pins Net — Displays the number of pins in the net.
• Pins Matched — Displays the number of net pins that have been matched to template
pins.
When matching constraint templates to nets, good matches are indicated with green color
coding of the Pins Net and Pins Matched fields. Red color coding indicates that there is not

286 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Template Creation and Reuse
Constraint Template Application

sufficient matching. Yellow is used to show that the matching is not good, but it may be
suitable. In the following example illustration, green color coding is used to indicate that all 5of
the pins in the constraint template have been matched. The matching table at the bottom shows
the objects that are matched to the template objects.

Figure 10-1. Pin Matching Between Template and Net

Procedure
1. From the Nets spreadsheet page, right-click the row of a net that is associated with a
constraint template, and then click Update Pin Matching.
2. From the Constraint Template Matching dialog box, in the table at the bottom, click the
right column of a pin row to change the net pin associated with one of the available
template pins.
Rule: Each template pin can only be associated with a single net pin.
3. After you finish making changes, click OK or Apply.

Related Topics
• Constraint Template Application

Constraint Manager Users Manual, X-ENTP VX.1.1 287


Constraint Template Creation and Reuse
Updating Nets With Constraint Template Changes

Updating Nets With Constraint Template


Changes
After you modify the constraint definitions in a constraint template, nets associated with the
constraint template may not be updated automatically to include the template changes. When
they remain static, they reflect the constraint values that were stored in the template at the time
the constraint template was applied to the net. In these cases, you must update one more nets
associated with the constraint template to include the current constraint values with each net.
Constraint Manager will only automatically update a net to actively reflect the template values
when you have it configured to do so. To modify this setting, from the Setup menu, click
Settings, and then from the Settings dialog box, click Other. Under Constraint Templates,
activate or clear the Automatically apply templates checkbox, based on the desired behavior.

Tip: To make it easier to determine when changes have occurred and a net does not
reflect the current constraint values stored in the associated template, refer to the Nets
spreadsheet page, Template Status constraint.

Procedure
From the Nets spreadsheet page, right-click the row of a net that is associated with a constraint
template, and then click Reapply Constraint Template.

Figure 10-2. Status Cell Indicates Differences Between Net and Template

Related Topics
• Constraint Template Creation and Reuse

Reusing Constraint Templates in External


Designs
After you create one or more constraint templates, you can reuse them by exporting them to a
file, and then importing that file into the external design you intend for reuse. Each .cts file
(encrypted XML format) you export includes all constraint template definitions associated with
a constraint set.
For example, after defining the physical, electrical, and signal integrity constraints for a net that
serves as the critical connection between two common components for a product line, you can

288 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Template Creation and Reuse
Reusing Constraint Templates in External Designs

make the constraint template available for reuse by storing it in a common or collaborative
network directory. You and the other designers in your group now have the ability to reuse this
constraint template in similar designs by applying it to specific nets that benefit from the
constraint set.

Procedure
1. Export Constraint Manager constraint templates (File > Export > Constraint
Templates) to a .cts file.
Alternative: To export a single template, from the Constraint Templates page, right-
click the template row, and then click Export Selection.
2. Launch Constraint Manager on the design for which you want to reuse these constraint
templates.
3. From the File menu, click Import, and then click Constraint Templates.
4. From the Import Constraint Template dialog box, select a file of the type you want to
import (based on the following guidelines), and then click Open:
• .cts files —Constraint templates you exported from Constraint Manager.
• .ctm files — Constraint templates you saved from within CTE, the constraint
template editor.

Results
You can now apply the imported constraint templates to nets as needed.

Related Topics
• Constraint Template Creation and Reuse
• Constraint Template Application
• Exporting Constraints in Encrypted ASCII Format
• Import of Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 289


Constraint Template Creation and Reuse
Reusing Constraint Templates in External Designs

290 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 11
Constraints Export and Import

This section covers the export and import of constraints, which give you the ability to reuse and
modify constraint information. It includes several topics, each of which provides procedures
you use to accomplish these tasks.
Export of Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Import of Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295

Export of Constraints
You can export constraints to capture constraints to a data file for the purpose of importing them
into Constraint Manager at a later time, or decrypting and viewing the constraint data in an
external program. You can export constraints in the proprietary encrypted XML format (.cts),
encrypted CSV format (.ecsv), and proprietary encrypted ASCII format (.cs_).
Exporting Constraints in Encrypted XML Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Exporting Constraints in Encrypted CSV Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
Exporting Constraints in Encrypted ASCII Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Decrypting and Encrypting Exported Constraint Data . . . . . . . . . . . . . . . . . . . . . . . . . . 294

Exporting Constraints in Encrypted XML Format


You can export constraints in encrypted XML format (.cts) for the purpose of later importing
the constraint set that you chose to export. Because you cannot decrypt this format, you would
use this method when you do not need to edit the data, but simply want to import it into the
same design or another design. Typically, you would export data in this format for the purpose
of creating constraint backups or making constraint templates available for reuse.
When exporting, you can either start with the entire constraint set and then reduce the total
amount of constraint data, or select just the spreadsheet rows you want to export. Depending on
the amount of data you want to capture, one of the two procedures below is more appropriate for
your purpose.

Note
You can also export constraints into proprietary encrypted XML format (.cts) using a
command-line tool. For more information, refer to “cons2xml” on page 483.

Constraint Manager Users Manual, X-ENTP VX.1.1 291


Constraints Export and Import
Export of Constraints

Procedure
Do one of the following things depending on the scope of the data you want to export:

• Choose from the entire set of constraint data — Use the following steps:
a. From the File menu, click Export, and then click Constraints.
b. From the Constraint Manager - Export Constraints dialog box, specify the following,
and then after you finish, click Export:
• Data scope as all data or just specific pages. To select the pages to export, click
to activate the Selected pages radio button, and then click to highlight one or
more spreadsheet pages.
Note: When exporting just specific pages, referenced objects between the Nets
page and the Constraint Templates page are not included unless both pages are
selected, or you enable the Include referenced objects check box.
• Whether you want to include Default Constraints, User constraints, Objects
hierarchy, and Attributes.
• (Optional) In the Description field, modify the textual description for the
exported data set. To do so, click to activate the Edit description check box, and
then modify the description.
c. From the Export Constraints dialog box, specify a filename and location for the
constraint data file you want to export, and then click Save.
• Export only selected nets or spreadsheet rows — Use the following steps:
a. From the Constraint Manager spreadsheet, use click or Ctrl-click to select the row or
rows you want to export.
b. After you finish making your selections, right-click, and then click Export
Selection.
c. From the Export Selected Constraints dialog box, specify the following options, and
then after you finish, click Export:
• When applicable, referenced objects between the Nets page and the Constraint
Templates page.
• Whether you want to include Default Constraints, User constraints, Objects
hierarchy, and Attributes.
• (Optional) In the Description field, modify the textual description for the
exported data set. To do so, click to activate the Edit description check box, and
then modify the description.
d. From the resultant Export Constraints dialog box, specify a filename and location for
the constraint data file you want to export, and then click Save.

292 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Export of Constraints

Related Topics
• Export of Constraints
• Import of Constraints
• Reusing Constraint Templates in External Designs

Exporting Constraints in Encrypted CSV Format


You can export constraints in encrypted CSV format (.ecsv) for the purpose of producing
constraint data files that are similar to the encrypted ASCII format, but simplified with regard to
the reading and sorting of data. The encrypted CSV format is more explicit and easier for
external programs to read and write. It is important to note that over time, the encrypted ASCII
format will eventually become obsolete. Encrypted CSV is the recommended format.
Note
You can also export constraints into the encrypted CSV format (.ecsv) using a command-
line tool. For more information, refer to “cons2csv” on page 481.

Prerequisites
• CES Diagnostics must report no issues in order for export to run.

Procedure
1. From the File menu, click Export, and then click Constraints to encrypted CSV.
2. From the Export Constraints to Encrypted CSV dialog box, specify a filename and
location for the constraint data file you want to export, and then click Save.

Results
• A single .ecsv file is created for all Constraint Manager data. The file uses the units
settings defined in the tool. The order of constraints is based on the default column order
in Constraint Manager for each page. When the file already exists, a new one is created
with an incremental suffix. For example, <filename>_1.ecsv, <filename>_2.ecsv, etc.
• The .ecsv file always contains actuals when they are available in the Constraint Manager
session from which you export constraints. Actuals are never exported when you use the
commandline utility (cons2csv).
• After the export finishes processing, a log file for the export is written to the following
location:

<design_folder>\CES\LogFiles\<snapshot_name>\<block_name>\<machine_name>\
<user_name>\csv_export_<date_time>.log

Example: C:\Tablet_design_1\CES\LogFiles\DxD\screen\psmith-

Constraint Manager Users Manual, X-ENTP VX.1.1 293


Constraints Export and Import
Export of Constraints

lt\psmith\csv_export_20121016_114536.log

In the event that the log file contains errors or warning, and is not clean, the File Viewer
automatically displays it for you to review.

Related Topics
• Export of Constraints
• Decrypting and Encrypting Exported Constraint Data
• Importing Constraints in Encrypted CSV Format

Exporting Constraints in Encrypted ASCII Format


You can export constraints in encrypted ASCII format (.cs_) for the purpose of producing
constraint data files that you can then decrypt and view in an external application. You cannot
re-import encrypted ASCII format.
Note
You can also export constraints into the encrypted ASCII format (.cs_) using a command-
line tool. For more information, refer to “cons2ascii” on page 480.

Procedure
1. From the File menu, click Export, and then click Constraints to encrypted ASCII.
2. From the Export Constraints to ASCII dialog box, specify a filename and location for
the constraint data files you want to export, and then click Save.

Results
Separate encrypted ASCII files are produced: one for each spreadsheet page and one for the
board stackup. Now that you have exported the file set, you can decrypt them as needed.

Related Topics
• Export of Constraints
• Decrypting and Encrypting Exported Constraint Data

Decrypting and Encrypting Exported Constraint


Data
After you export encrypted constraint data you can decrypt those data files. You would
commonly use the decrypted data to generate reports of your design, prepare design reviews, or
perform automated verification of constraint data with external programs.

294 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

The purpose of working with decrypted CSV data is to view or modify it in an external
spreadsheet application that supports the CSV format. In the event that you do modify the CSV
data, or create CSV files from scratch for import, you must encrypt the data files before
importing them into Constraint Manager.

Prerequisites
• You have the following license: cesencryption
• You have exported encrypted ASCII constraint data or encrypted CSV constraint data;
or, you have decrypted CSV data that you want to encrypt.

Procedure
1. Verify that you have met all of the above prerequisites.
2. Run the following command with the appropriate arguments: “csv2dat” on page 485

Related Topics
• Export of Constraints

Import of Constraints
You can import constraints for the purpose of reusing constraints and templates between
designs, when applicable, or to load a large number of constraints instead of entering them by
hand. When using import for the second purpose, you must be working in the CSV format. You
can import .cts data files and .ecsv data files.
Importing Constraints in Encrypted XML Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Importing Constraints in Encrypted CSV Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
CSV Format Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

Importing Constraints in Encrypted XML Format


You can import constraints and templates that you exported in encrypted XML format (.cts)
during an earlier Constraint Manager session. By importing constraints that are stored in a data
file, you can easily work with constraint data that you, or another engineer saved at a previous
time.
For example, when you are having trouble developing constraints for a specific net, you can
export your best-guess constraint data to a file, send it to another engineer (for example, a signal
integrity expert), and then that person can import your constraints in their Constraint Manager
environment to help create the appropriate constraint solution.

Constraint Manager Users Manual, X-ENTP VX.1.1 295


Constraints Export and Import
Import of Constraints

Note
You can also import constraints in the proprietary encrypted XML format (.cts) using a
command-line tool. For more information, refer to “cons2xml” on page 483.

Notes on import:

• Via definitions and settings are not updated during the import process.
• When name changes have occurred after you export constraints, constraint values may
not be properly imported.
• After you import, you may want to set the display units for the constraint set. For more
information, refer to “Setting Spreadsheet Units” on page 75.
When you import constraints from one design to another, it is important to understand that the
following requirements and implications exist:

• In order for a net to become updated with the constraints stored in the exported file, the
net name must be an exact match between constraint sets. For example, if the constraint
set into which you are importing constraints contains net A1 but the exported constraints
file does not, no updates are made to net A1 as a result of the import.
• For nets that have matching names between the constraint set and the exported
constraints file, all constraint values for those nets will be overwritten.

Procedure
1. From the File menu, click Import, and then click Constraints.
2. From the Import Constraints dialog box, select the constraint file (.cts) you want to load,
and then click Open.
3. (Optional) Set the display units for the constraint set. For more information, refer to
“Setting Spreadsheet Units” on page 75.

Related Topics
• Import of Constraints
• Exporting Constraints in Encrypted XML Format

Importing Constraints in Encrypted CSV Format


You can import constraints in encrypted CSV format (.ecsv) for the purpose of loading a large
number of constraints instead of entering them by hand. Typically, physical constraints such as
clearances, trace widths, and similar values. For example, you could import a large number of
package type clearance rules and overrides.

296 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

Encrypted CSV files you import can include just a single constraint table, or multiple tables. For
example, one file you might choose to import could include just general clearances and
clearances, while another could include all constraint tables that you can import.

Caution
You cannot undo the results of an ECSV import. You should create a backup or copy of
the project before you import. Doing so makes it easier to recover your data if you import
incorrect constraints. To create a backup, use the iCDB Project Backup utility.

Notes on import:

• During this process, Constraint Manager checks the syntax of the encrypted CSV file to
validate its components. This includes the CSV header, table names, display units,
columns (whether any are missing, redundant, or unknown), required values (whether
any are missing), unknown levels, and values.
• Integers and real numbers (“doubles”) are examined to determine if they fall within a
required range.
• When a file includes net constraint data or constraint template data, Constraint Manager
checks the content during import.

Prerequisites
• To use encrypted CSV import, you must set an environment variable called
CESENG_IMPORTCSV_ENABLE to 1.
• You encrypted the .csv file into an .ecsv file using the command “csv2dat” on page 485.
• CES Diagnostics must report no issues in order for import to run.
• The stackup must already be defined for the project. Stackup definition or updates are
not supported.
• The file does not contain any duplicate object definitions. You can define each
constraint just once in the file. When a constraint has multiple definitions, import does
not run.

Restrictions and Limitations


• Encrypted CSV import is not supported in an xDM Design flow.
• Concurrent import is not supported.
• Front-end snapshot import is supported.
• Via definitions are not updated during the import process.

Constraint Manager Users Manual, X-ENTP VX.1.1 297


Constraints Export and Import
Import of Constraints

• Although you can create many data objects directly in Constraint Manager, just a subset
of them are supported for creation through ECSV import. The currently supported
objects are the following:
o Class-to-class clearance rules
o Clearance rules
o Net classes
o Package type clearance rules
o Package type to package type clearance override rules
o Schemes
o Z-axis class-to-class clearances rules
o Z-axis clearance rules

Procedure
1. Verify that you have met the above prerequisites.
2. From the File menu, click Import, and then click Constraints from encrypted CSV.
3. From the Import constraints from encrypted CSV dialog box, select the .ecsv file you
want to import, and then click Open.

Note
To import from the command line, run the command “cons2csv” on page 481 with the
appropriate arguments.

Results
After the import finishes processing, a log file for the import is written to the following location:

<design_folder>\CES\LogFiles\<snapshot_name>\<block_name>\<machine_name>\<user_
name>\csv_import_<date_time>.log

Example: C:\Tablet_design_1\CES\LogFiles\DxD\screen\psmith-
lt\psmith\csv_import_20121017_122937.log

At this point, you may want to set the display units for the constraint set. For more information,
refer to “Setting Spreadsheet Units” on page 75.

Related Topics
• Import of Constraints
• Decrypting and Encrypting Exported Constraint Data
• Exporting Constraints in Encrypted CSV Format

298 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

• ECSV Importer Error and Warning Codes


• Example CSV Files
• Guidelines for CSV Files

ECSV Importer Error and Warning Codes


Refer to the table below for the full listing of ECSV importer code numbers and their
corresponding code names. You may find this information useful in the event that an import
operation does not complete, or even run at all, for a certain file.

Table 11-1. ECSV Importer Codes


Code Number Code Name
0 EIC_ResOk
1 EIC_ResOkWithErrors
2 EIC_ResOkWithWarnings
3 EIC_ResCmdSyntaxError
4 EIC_ResIOFileError
5 EIC_ResError
6 EIC_ResLicError
7 EIC_ResCesChkWarnings
8 EIC_ResCesChkErrors
10 EIC_ResCESPIError
11 EIC_DatabaseCannotOpen
12 EIC_DatabaseCannotLoad
13 EIC_DatabaseCannotLock
14 EIC_DatabaseCannotBeginTrans
15 EIC_DatabaseCannotCommitTrans
16 EIC_DatabaseCannotBackup
40 EIC_ResSyntaxValError
41 EIC_SyntaxQuoteMissing
42 EIC_SyntaxColumnMissing
43 EIC_SyntaxColumnRedundant
44 EIC_SyntaxColumnUnknown
45 EIC_SyntaxRequiredValueMissing
46 EIC_SyntaxLevelUnknown

Constraint Manager Users Manual, X-ENTP VX.1.1 299


Constraints Export and Import
Import of Constraints

Table 11-1. ECSV Importer Codes (cont.)


Code Number Code Name
47 EIC_SyntaxLevelNotAllowed
48 EIC_SyntaxValueInvalid
49 EIC_SyntaxValueRedundant
100 EIC_ContentError
101 EIC_ResContentNAWarning
102 EIC_ContentObjectMissing
150 EIC_ImportError

Related Topics
• “Importing Constraints in Encrypted CSV Format” on page 296

CSV Format Overview


Although you can edit CSV files with an ASCII text editor, the best way to modify them is with
a spreadsheet application that supports the CSV format. This method is recommended because
the display of constraint data looks more familiar through a spreadsheet display. In addition,
there is the chance that you could accidentally remove one or more delimiters when using an
ASCII text editor.
Note
The value separator/delimiter you must use in these CSV files is a semicolon (;).

Example CSV Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300


Guidelines for CSV Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

Example CSV Files


Refer to the example CSV files below, each of which represents what a CSV file looks like in a
spreadsheet application that supports the CSV format.
The first example is a CSV file that includes the following two constraint tables:

• Class to class clearances


• General clearances
Notice that one of the two constraint tables does not specify a value for “Display Units.” This
means that the constraints will be imported to match the unit type used for the constraints in
Constraint Manager, or the constraints specified in the table do not have an associated unit type.
For the other constraint table, the unit type specified is th. In the event that the tool does not use

300 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

the same unit type for those constraints, they are converted from th to the active Constraint
Manager unit type upon import. For example, 500 th is converted to 0.5 inches when the unit
type for linear is inches.

Example 11-1. CSV File That Includes Multiple Constraint Tables


Table Class to class clearances
Display Units
Date 2012-03-21 13:52
Description cons2csv - Export/Import constraints to encrypted CSV.
Copyright Copyright 2013 Mentor Graphics Corporation. All Rights Reserved.

Scheme From Net Class To Net Class Clearance rule


(Master) (All) (All) (Default Rule)
(Minimum) (All) (All) (Default Rule)
BGA_RULE1 (All) (All) (Default Rule)
(Master) (Default) (Default) 10th
(Master) CLOCKS (All) 10th
(Master) CLOCKS CLOCKS 5th
(Master) DIFF_PR (All) 5th
(Master) DIFF_PR DIFF_PR 20th
(Master) POWER (All) 20th
(Master) POWER POWER 35th
(Minimum) (Default) (Default) 10th
(Minimum) CLOCKS (All) 10th
(Minimum) CLOCKS CLOCKS 5th
(Minimum) DIFF_PR (All) 5th
(Minimum) DIFF_PR DIFF_PR 20th
(Minimum) POWER (All) 20th
(Minimum) POWER POWER 35th

Table General clearances


Display Units th
Date 2012-03-21 13:51

Constraint Manager Users Manual, X-ENTP VX.1.1 301


Constraints Export and Import
Import of Constraints

Example 11-1. CSV File That Includes Multiple Constraint Tables (cont.)
Description cons2csv - Export/Import constraints to encrypted CSV.
Copyright Copyright 2013 Mentor Graphics Corporation. All Rights Reserved.

Contour Cavity & Mounting Hole to Mounting Hole 10


Any to Any Optimal XY 10
Any to Any Optimal Z 5
Contour & Mounting Hole to Non-Plane Conductor 20
Placement Outline to Placement Outline 10
Placement Outline to Placement Obstruct 20
Placement Outline to Board Edge 20
Trace to Resistor 6
Pad to Resistor 6
Testpoint Center to Testpoint Center 50
Cavity Inside Edge to Parts 10
Cavity Outside Edge to non-Plane Conductor 10
Cavity Outside Edge to Plane Conductor 10
Cavity Edge to Cavity Edge 10
The next example is a CSV file that includes just one constraint table, General clearances.
Notice that this table does specify a value for “Display Units”.

Example 11-2. CSV File That Includes a Single Constraint Table


Table General clearances
Display Units th
Date 2012-03-21 13:51
Description cons2csv - Export/Import constraints to encrypted CSV.
Copyright Copyright 2013 Mentor Graphics Corporation. All Rights Reserved.

Contour Cavity & Mounting Hole to Mounting Hole 10


Any to Any Optimal XY 10
Any to Any Optimal Z 5
Contour & Mounting Hole to Non-Plane Conductor 20
Placement Outline to Placement Outline 10

302 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

Example 11-2. CSV File That Includes a Single Constraint Table (cont.)
Placement Outline to Placement Obstruct 20
Placement Outline to Board Edge 20
Trace to Resistor 6
Pad to Resistor 6
Testpoint Center to Testpoint Center 50
Cavity Inside Edge to Parts 10
Cavity Outside Edge to non-Plane Conductor 10
Cavity Outside Edge to Plane Conductor 10
Cavity Edge to Cavity Edge 10

Simple CSV File Shown in an ASCII Text Editor


Here is a CSV file consisting of just the Clearance rules tables shown as it would appear in an
ASCII text editor. Notice that the value separator/delimiter used is a semicolon (;) and not a
comma.

Example 11-3. Simple CSV File

Table;Clearance rules;Display Units;th;Date;2013-09-16T11:22:26;


Description;cons2csv - Export/Import constraints to encrypted CSV.
Version: 2013-09-10 12:07:35 (574839);Copyright;Copyright 2013 Mentor
Graphics Corporation. All Rights Reserved.;
Name;Level;Scheme;Clearance rule;Index;Type;Trace To Trace;Trace To
Pad;Trace To Via;Trace To Plane;Trace To SMD Pad;Pad To Pad;Pad To Via;Pad
To Plane;Via To Via;Via To Plane;Via To SMD Pad;Plane To Plane;
(Master);Scheme;;;;;;;;;;;;;;;;;
(Default Rule);ClearRule;(Master);;;;10;10;10;10;10;8;8;8;8;8;8;10;
SIGNAL_1;Layer;(Master);(Default Rule);1;Signal;5;5;5;8;5;8;8;8;8;8;8;10;
SIGNAL_2;Layer;(Master);(Default Rule);2;Signal;5;5;5;8;5;8;8;8;8;8;8;10;
PLANE_3;Layer;(Master);(Default Rule);3;Plane;5;5;5;8;5;8;8;8;8;8;8;10;
PLANE_4;Layer;(Master);(Default Rule);4;Plane;5;5;5;8;5;8;8;8;8;8;8;10;
SIGNAL_5;Layer;(Master);(Default Rule);5;Signal;5;5;5;8;5;8;8;8;8;8;8;10;
SIGNAL_6;Layer;(Master);(Default Rule);6;Signal;5;5;5;8;5;8;8;8;8;8;8;10;
HS_3W;ClearRule;(Master);;;;12;8;8;8;8;8;8;8;8;8;8;10;
SIGNAL_1;Layer;(Master);HS_3W;1;Signal;12;8;8;8;8;8;8;8;8;8;8;10;
SIGNAL_2;Layer;(Master);HS_3W;2;Signal;12;8;8;8;8;8;8;8;8;8;8;10;
PLANE_3;Layer;(Master);HS_3W;3;Plane;12;8;8;8;8;8;8;8;8;8;8;10;
PLANE_4;Layer;(Master);HS_3W;4;Plane;12;8;8;8;8;8;8;8;8;8;8;10;
SIGNAL_5;Layer;(Master);HS_3W;5;Signal;12;8;8;8;8;8;8;8;8;8;8;10;
SIGNAL_6;Layer;(Master);HS_3W;6;Signal;12;8;8;8;8;8;8;8;8;8;8;10;

Related Topics
• CSV Format Overview
• Importing Constraints in Encrypted CSV Format
• Guidelines for CSV Files

Constraint Manager Users Manual, X-ENTP VX.1.1 303


Constraints Export and Import
Import of Constraints

Guidelines for CSV Files


In order to import an encrypted CSV file that (.ecsv) you produced from a .csv file, it must
follow certain guidelines. This includes ensuring that all required fields are available for each
constraint table in the file, the proper separation between constraint tables is present, and more.
Before familiarizing yourself with the information provided in this topic, it is recommended that
you look at some “Example CSV Files” on page 300.

Note
The value separator/delimiter you must use in these CSV files is a semicolon (;).

CSV Files Contain Constraint Tables That Consist of Sections


The following illustration shows you the sections that are required for each constraint table in a
CSV file. The CSV file represented by this illustration consists of a single constraint table.

Figure 11-1. Structure of a CSV File Containing One Constraint Table

Here is a description of each section:

• CSV Information Section — Identifies the type of constraints supplied in the


constraints section, the display units used, the date, and a description.

Note
“Table” and “Display Units” are the only required values in this section, though you can
leave “Display Units” blank when you do not want to specify a unit type, or are not
required to. For examples of this usage, refer to “Example CSV Files” on page 300.

• CSV Separator (one or more new lines) — A visual separation in the file that is used
to separate the information section from the constraints section, or the constraints
section from the next information section.
• CSV Constraints Section — Contains the constraint values that you want to import.

304 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

You can also include multiple constraint tables in a single CSV file. The following illustration
depicts a CSV file that contains two constraint tables. Notice that a CSV separator is used
between the two constraint tables.

Figure 11-2. Structure of a CSV File Containing Two Constraint Tables

Table Name Field in CSV Information Section


One of the two required fields in the CSV Information Section is the type of constraint table.
This field is not only required but also must match precisely to one of the names in the reference
table below (for example, “Z-Axis class to class clearances”).

Note that currently not all constraint tables are supported for import at this time. Unsupported
constraint tables are indicated with an * in the listing of table names below.

Table 11-2. Constraint Tables


Valid Table Names
Class to class clearances
Clearance rules
Constraint templates *

Constraint Manager Users Manual, X-ENTP VX.1.1 305


Constraints Export and Import
Import of Constraints

Table 11-2. Constraint Tables (cont.)


Valid Table Names
Constants & variables *
General clearances
Nets * (Although import of most constraints in this table is
not yet supported at this time, you can import Net Class
assignments through it.)
Noise rules *
Package type clearance rules
Package type to package type clearance rules
Parallelism rules *
Parts *
Power & ground *
Stackup *
Traces
Via assignments
Z-Axis class to class clearances
Z-Axis clearance rules
Although the “Table” in a CSV Information section must be one of the above names, this does
not include case-sensitivity. For example, you could use either “Clearance rules” or
“CLEARANCE RULES”. Both would work.

Display Units Field in CSV Information Section


The second of the two required fields in the CSV Information Section is the “Display Units”
field. Although this field is required, you do not need to supply a value for some tables. When
you do want to provide a value, or are required to, you must use one (or more) of the display
units in the reference table below. For more information, refer to “Constraint Tables and
Required Unit Type Declarations” on page 307.

It is important to note that these values are case sensitive. Note that currently most unit types are
not supported for import. Unsupported unit types are indicated with an * in the table below.

Table 11-3. Valid Display Units


Unit Type Display Units (Case Sensitive)
Linear in th mm um nm
Angle * deg Rad ‘ “

306 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

Table 11-3. Valid Display Units (cont.)


Unit Type Display Units (Case Sensitive)
Capacitance * F mF uF nF
Voltage * V mV uV nV
Inductance * H mH uH nH
Power * W mW uW nW
Velocity * in/ns m/s %c
Resistance MOhm kOhm Ohm mOhm uOhm
Time * s ms us ns ps
Current * A mA uA nA pA
Temperature * degC
Theta * degC/W
When a constraint table includes constraints of multiple unit types, you can list them all by
separating them with a | character (for example, th|ns).

The table below shows you which constraint tables require you to declare one or more unit
types through the “Display Units;” statement. After the table, you can find a short list of
guidelines you must follow when making these declarations.

Table 11-4. Constraint Tables and Required Unit Type Declarations


Table Name Required Unit Types
Clearance rules <linear>

Example: Display Units; th;


Constraint templates <linear>|<resistance>|<voltage>|<time>

Example: Display Units; th|Ohm|mV|ps;


General clearances <linear>

Example: Display Units; in;


Nets <linear>|<resistance>|<voltage>|<time>

Example: Display Units; in|mOhm|V|ns


Noise rules <voltage>

Example: Display Units; mV;

Constraint Manager Users Manual, X-ENTP VX.1.1 307


Constraints Export and Import
Import of Constraints

Table 11-4. Constraint Tables and Required Unit Type Declarations (cont.)
Table Name Required Unit Types
Package type clearance <linear>
rules
Example: Display Units; th;
Package type to package <linear>
type clearance rules
Example: Display Units; in;
Parallelism rules <linear>

Example: Display Units; th;


Parts <time>|<temperature>|<power>|<theta>|<linear>

Example: Display Units; ns|degC|W|degC/W|in;


Stackup <linear>|<resistance>

Example: Display Units; th|Ohm;


Traces <resistance>|<linear>

Example: Display Units; Ohm|th;


Via assignments None.
Z-Axis clearance rules <linear>

Example: Display Units; in;


When specifying required unit type declarations, you must follow these rules:

• You can use whichever order you like for the unit types, but each required type must be
part of the declaration.
• You must only define a unit type once. Multiple declarations for the same unit type will
cause import to fail.

CSV Constraints Section


The CSV Constraints Section is the largest section in a constraint table. This is because it
specifies the constraint values that you want to import. When modifying the data in one or more
of these sections, be aware of the following things:

• You have the option of using engineering/scientific notation for constraint values (for
example, 1.25E+6).
• For boolean values, you have the option of using “true” for 1/on and “false” for 0/off.

308 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraints Export and Import
Import of Constraints

• You can assign a different display unit to any constraint value simply by putting it after
the value. For example, when the constraint table specifies “Display Units” of th, you
can put a value like 0.1mm in one or more cells.
• Constraint Manager does not create a data object (for example, scheme, net class, or
clearance rule) just because you reference it in the file. It either must already exist in the
tool or be something that you define for creation in the file. For example, when working
with net classes, any net class that you reference must already exist in Constraint
Manager or be defined in the ECSV file.
• The order of columns is not important, but all column headings must be present. You
cannot import a table with any missing column headings.
• The order of rows is not important, but each row must contain all values. You cannot
import a table with any missing values; however, you can import empty values
(semicolon only) to preserve the current data.
• You can enclose data in double quotes when it makes sense to do so. For example:
Description;“Net Class Template for ““10-layer stackup”””;

Related Topics
• CSV Format Overview
• “Importing Constraints in Encrypted CSV Format” on page 296
• “Example CSV Files” on page 300

Constraint Manager Users Manual, X-ENTP VX.1.1 309


Constraints Export and Import
Import of Constraints

310 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 12
Stackup Display and Modification

From Constraint Manager, you can view the characteristics of the board stackup used in a
printed circuit board design. Depending on your design flow, you may also be able to modify
the stackup in this environment.
Viewing or Modifying Stackup Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Layer Name Correlation Among Design Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
Stackup Editing Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

Viewing or Modifying Stackup Properties


You can view or modify the properties of the stackup associated with a Constraint Manager
design to visualize a cross section of the PCB and evaluate the effects of changing parameters of
the materials used in the board construction.
A stackup is the layering of conductive and dielectric materials that make up a printed circuit
board. The characteristics of these materials (for example, thickness, dielectric constants, and
conductivity) and how they are ordered determine the electrical characteristics (for example,
nominal impedance) of the PCB's traces.

Caution
Because the Stackup Editor is designed to give you the ability to analyze the effects of
changing parameters on the electrical characteristics of traces, it allows for the entry of
any value for the material properties. There are a limited number of materials available
for the actual construction of a PCB. The list of materials and their actual characteristics
should be available from the PCB manufacturer. This list of materials limits the material
parameters available and also constrains the order in which they may be stacked. For a
useful stackup analysis, the material properties used should come from the
manufacturer’s supplied information.

Prerequisites
• Read and understand the information in “Layer Name Correlation Among Design
Tools” on page 312.
• Read and understand the information in “Stackup Editing Limitations” on page 312.

Procedure
From General toolbar, click , or, from the Edit menu, click Stackup.

Constraint Manager Users Manual, X-ENTP VX.1.1 311


Stackup Display and Modification
Layer Name Correlation Among Design Tools

Tip: You can also import a stackup through the use of an .stk file. For more information,
refer to “ImportStk” on page 488.

Results
Stackup changes affect only the front-end or back-end design until you forward annotate or
back annotate. At that time, the changes are synchronized between the schematic and layout
design representations based on the constraint synchronization process. For more information,
refer to “Synchronization of Constraint Sets” on page 332.

Related Topics
• Stackup Display and Modification
• Layer Name Correlation Among Design Tools

Layer Name Correlation Among Design Tools


The Constraint Manager spreadsheet, Stackup Editor, and your PCB layout system use slightly
different nomenclature when referring to unique board-layer types. Refer to the following table
for an understanding of how these names correlate among design tools.
Table 12-1. Board-Layer Name Correlation
Constraint Manager Stackup Editor PCB Layout System
Spreadsheet
Signal Signal Signal
Solid Plane Solid Plane Plane
Mixed Split/Mixed Signal
Flood Signal Flooded Signal Flooded

Because Constraint Manager deals with just signal-layer nets, dielectric layers displayed in the
Stackup Editor do not appear in the constraint spreadsheets.

Related Topics
• Stackup Display and Modification

Stackup Editing Limitations


The Mentor Graphics PCB layout tool you are using determines the level of functionality
available in the Stackup Editor. In the Xpedition Enterprise and PADS Professional flows,
stackup changes are propagated to the layout tool.

312 Constraint Manager Users Manual, X-ENTP VX.1.1


Stackup Display and Modification
Stackup Editing Limitations

When changing the stackup in Constraint Manager after the board has already gone through
routing in the PCB tool, there can be serious consequences on the work done in the layout tool.
For example, removing layers from the stackup could easily result in lost routing if there are
traces on the layer removed.

Related Topics
• Stackup Display and Modification

Constraint Manager Users Manual, X-ENTP VX.1.1 313


Stackup Display and Modification
Stackup Editing Limitations

314 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 13
Part-Model Assignment Verification and Part
Constraints Definition

This section provides information about how to make models and libraries of models available
to Constraint Manager for the purposes of satisfying existing model assignments and also
making new assignments.
Automatic Assignment of IBIS Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
IBIS Models or Technology Models? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
IBIS Models Delivered With Constraint Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Part Model Availability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Verifying Default Model Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Assigning Models to Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Overriding IBIS Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Defining Thermal Constraints for Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Importing Pin Package Length Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
PinPkgLengths.txt File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325

Automatic Assignment of IBIS Models


IBIS models you selected from within in your schematic capture or PCB layout design tool are
automatically assigned in Constraint Manager when certain conditions are met.
The conditions are the following:

• The model matches the pinout of the part.


• The model parses without error.
• The PART_NO property for the part matches an IBIS Component name in an (.ibs) file
that resides in one of the SI Library search paths. For more information, refer to “Part
Model Availability” on page 317.

Hierarchical Assignment Process


Constraint Manager uses the following assignment hierarchy to set the default IBIS Component
Name value for each part:

Constraint Manager Users Manual, X-ENTP VX.1.1 315


Part-Model Assignment Verification and Part Constraints Definition
Automatic Assignment of IBIS Models

1. When you provide the IBIS component attribute on a symbol that is contained in a part
instance, it is used as the default IBIS component name. If this attribute is set on more
than one symbol that maps to a particular part instance, Constraint Manager decides
which wins based on its established rules.
2. User provided IBIS component name for the entry in the PDB corresponding to the part
instance.
3. Constraint Manager searches the IBIS library for a component with the same name as
the PCB part name. When it finds a case insensitive match, it uses this value.
4. Constraint Manager searches the IBIS library for a component with the same name as
the symbol name for the part instance in the PDB. When it finds a case insensitive
match, it uses this value.
5. When the part instance has a Technology value, Constraint Manager searches for an
IBIS component that matches the technology. When it finds a match, it uses this value.
6. When the part instance is a simple passive component that is included in the list below,
the IBIS component name is set to one of the following values:
• R_by_value (resistor)
• C_by_value (capacitor)
• L_by_value (inductor)
• RC_by_value (RC terminator)
• RThev_by_value (thevenin terminator)
7. When the part instance is not a simple passive component, diode, or connector, the
default IBIS component name is set to “generic”. The IBIS library provided with the
release always contains a supporting IBIS component named “generic” to support this
type of assignment.

Note
The only case where Constraint Manager sets IBIS Component Name to reference a
component that does not exist is when you explicitly set a name in the schematic or PDB,
and it does not exist.

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

316 Constraint Manager Users Manual, X-ENTP VX.1.1


Part-Model Assignment Verification and Part Constraints Definition
IBIS Models or Technology Models?

IBIS Models or Technology Models?


Although you can assign an IBIS model and a technology model to a single part, when both are
present, the IBIS Component Name model is used. IBIS models provide greater detail than
technology models, which model pins based on pin type.
IBIS models include dedicated pin models for each component pin. For example, an IBIS model
for a sixteen pin component will include sixteen individual pin models. A technology model
used for the same component may include three or four pin models (that is, one for each type of
pin for the sixteen pin set).

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

IBIS Models Delivered With Constraint


Manager
Constraint Manager comes with a set of IBIS models that you can use to model an array of
component technologies.
This collection of over ten thousand model files is available within your installation tree at the
following location:

• <Mentor Graphics install location>\EEVX.x\mgc_ibis_lib


In addition, there are other IBIS models available at the following location:

• <Mentor Graphics install location>\EEVX.x\SDD_HOME\hssd\models\ibis\tech


You can also search your Mentor Graphics software installation for other .ibs files.

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Part Model Availability


You must make part models available within Constraint Manager for part assignment. When
doing, so you can add entire directories of models, or single models. You can choose from
folders and files throughout your network.
Constraint Manager supports IBIS (I/O Buffer Information Specification) component models.
In addition to the standard IBIS model file format (.ibs), you can also use IBIS EBD (electrical
board definition) model files (.ebd).

Specifying Model Libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318

Constraint Manager Users Manual, X-ENTP VX.1.1 317


Part-Model Assignment Verification and Part Constraints Definition
Part Model Availability

Specifying Individual Model Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319


Reloading Model Directories and Individual Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

Specifying Model Libraries


You can add directories, remove existing directory entries, and change the order of directories
searched and displayed within the IBIS Model Browser. It is important to understand that
Constraint Manager treats a file system directory containing IBIS models as a library.
When you enter a relative path, an attempt is made to fully resolve the path. On Windows®, this
includes pre-pending the current drive letter from which Constraint Manager was launched.
When the path does not exist, you are prompted with a dialog box asking whether you want to
keep the path as it is, or reject it. When you keep it, the unresolved path is used.

Use the procedures below to make libraries available for model assignment and determine the
order in which they are searched.

Procedure
1. You specify model libraries through the IBIS Model Browser. To access it, from the
Parts spreadsheet page, click the browse button in any IBIS Component Name cell or
Technology cell.
The IBIS Model Browser displays.
2. From the IBIS Model Browser, at its top right, click , and then do any of the following
things:
• Add a directory to the model search path — In the new row that appears in the
IBIS Libraries listing, enter the directory path, or click the browse button to navigate
to the path, and then select it.
• Remove a directory from the model search path — From the SI Library Search
Paths dialog box, in the listing of IBIS Libraries, click the directory you want to
remove, and then click .
• Change the search order of model directories — From the SI Library Search
Paths dialog box, in the listing of IBIS Libraries, click the directory for which you
want you to change its order, and then click or to move the directory up or down
within the list.

Related Topics
• Part Model Availability

318 Constraint Manager Users Manual, X-ENTP VX.1.1


Part-Model Assignment Verification and Part Constraints Definition
Part Model Availability

Specifying Individual Model Files


When you want to make one or more single model files available to Constraint Manager, you
can add individual IBIS and EBD files to the group of available models.
You can use both methods of model specification interchangeably. For example, after
specifying one or more model file directories (libraries), you can add a dozen individual model
files to complete the overall selection of available models.

Procedure
1. With the Parts spreadsheet page active, in any IBIS Component Name or Technology
cell, click .
The IBIS Model Browser displays.
2. From the IBIS Model Browser, click .
3. From the Open dialog box, browse to the model file (.ibs or .ebd), select it, and then
click Open.

Results
All models included in the model file are now available within Constraint Manager for
assignment.

Related Topics
• Part Model Availability

Reloading Model Directories and Individual Models


If one or more of your model directories or models are located in a network folder, it is best
practice to occasionally reload those model directories or individual models. By doing so, you
can make sure that the model data available to Constraint Manager is the most current.
You should also reload model information when you make changes to any model directories or
individual models on your local machine. Reloading a model directory refreshes all individual
models contained within it.

Procedure
1. With the Parts spreadsheet page active, in any IBIS Component Name or Technology
cell, click .
The IBIS Model Browser displays.
2. Do any of the following things:
• Reload model directories — Complete these steps:

Constraint Manager Users Manual, X-ENTP VX.1.1 319


Part-Model Assignment Verification and Part Constraints Definition
Verifying Default Model Assignments

i. From the IBIS Model Browser, under Directories / Components, select one or
more model directories:
Select all model directories by clicking the All row.
Select two or more model directories by using Ctrl-click and Shift-click to
highlight the appropriate rows.
Select just a single model directory by clicking it.
ii. Click .
• Reload an individual model — From the IBIS Model Browser, in the list of
available models, click a row, and then next to the Search component field search
button, click .
Tip: To adjust the list of available models, use the directory selections under
“Directories / Components.” For example, to list all available models, click All.

Related Topics
• Update of Electrical Net Data and Results
• Part Model Availability

Verifying Default Model Assignments


The first time you launch Constraint Manager on a design, it automatically assigns models to
parts by matching design components with part models located in model directories that are
available to the tool. In order to ensure that these assignments are correct, you should verify
them using the content generated by the Model Audit Report. When one or more assignments
are incorrect or unavailable, you must manually assign the correct model.

Procedure
1. From the Output menu, click Model Audit Report.
2. From the Model Audit Report that Constraint Manager produced, scroll its content to
locate instances of ERROR and WARNING lines.
3. For each instance, locate its row on the Parts spreadsheet page, and then do one of the
following things:
• Assign the correct model to the part.
• Specify additional available part models, and then assign the correct model to the
part.

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

320 Constraint Manager Users Manual, X-ENTP VX.1.1


Part-Model Assignment Verification and Part Constraints Definition
Assigning Models to Parts

Assigning Models to Parts


You can assign models to parts to specify the component technology they should represent. In
most cases, each part will already include a model assignment. When an assignment is
incorrect, you can change the model associated with a part.
Because pin information is stored in each part model, these designations are also used by
Constraint Manager to construct accurate electrical nets.

Procedure
1. From the Parts spreadsheet page, in the row of the component to which you want to
assign a model, in its IBIS Component Name or Technology cells, click .
The IBIS Model Browser displays.
2. From the IBIS Model Browser, under Directories / Components, click a specific
directory, or click All to display models in all directories that are available to Constraint
Manager.
Tip: To select multiple directories but not all directories, use Ctrl-click and Shift-click.
To search for a directory, in the Search directory field, enter a search string, and then
click .
3. In the Component list, click the model you want to assign to the component.
Tip: To search for a model when the Component list includes a large number of models,
in the Search component field, enter a search string, and then click .
4. The above three steps define the IBIS model for the part. Many parts are configurable,
and the pin characteristics change depending upon how they are configured. To
accommodate this, the IBIS model may contain multiple pin models for a given pin. To
ensure accurate simulations, it is important that the correct pin model be selected for
these pins. The IBIS Model Browser indicates pins for which multiple models are
available by coloring the Pin cell yellow in the Pin Model Types table. To change a pin
model:
a. In the Pin Model Types field, click the dropdown, and then click a specific pin type
you want to view or change (for example, Output), or All to display all pins of the
part.
b. In the table below the Pin Model Types field, click in the Model cell of the pin you
want to change, and then select the pin model from the drop down list.
Tip: To change the display of this table, use the Select by Pin and Select by Model
radio buttons.
5. Click OK to apply the model assignment.

Constraint Manager Users Manual, X-ENTP VX.1.1 321


Part-Model Assignment Verification and Part Constraints Definition
Editing Model Files

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Editing Model Files


You can edit model files using the HyperLynx Visual IBIS Editor or the Quick Model Wizard.

Procedure
1. With the Parts spreadsheet page active, in any IBIS Component Name or Technology
cell, click .
The IBIS Model Browser displays.
2. From the IBIS Model Browser, select a model file from the Component list.
3. Do one of the following things based on the editor you want to use:
• To use the HyperLynx Visual IBIS Editor, click .
• To use the Quick Model Wizard, click .

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Updating Part Model Constraints


You can update the IBIS Pin Type part model constraint to reflect accurate pin designations.
Doing so also updates default values.

Procedure
1. With the Parts spreadsheet page active, from the Data menu, click Update.
2. Click IBIS Pin Type & Defaults.

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Overriding IBIS Values


For discrete components, Thevenin terminators, and AC terminators that reference IBIS
models, you can override the discrete values stored in them by entering values directly into
Constraint Manager.

322 Constraint Manager Users Manual, X-ENTP VX.1.1


Part-Model Assignment Verification and Part Constraints Definition
Defining Thermal Constraints for Parts

For example, although the IBIS model for a resistor specifies resistance as 50 ohms, you want to
temporarily change the value to 60 ohms.

Procedure
1. From the Parts spreadsheet page, in an appropriate IBIS Component Name cell, enter
one of the following override types:
• C_by_value — Capacitance by value.
• L_by_value — Inductance by value.
• R_by_value — Resistance by value.
• RC_by_value — AC terminator by value.
• RThev_by_value — Thevenin terminator by value.
2. In the Value cell, enter one or more override values based on the following guidelines:
• For C_by_value, L_by_value, and R_by_value, enter a single override value.
• For RC_by_value, enter a resistance and a capacitance value, and separate them with
a colon (for example, 75:5).
• For RThev_by_value, enter two resistance values, and separate them with a colon
(for example, 75:75).
In the following illustration, a resistor model has been changed to a Thevenin terminator
with resistance values of 75 ohms and 50 ohms.

Figure 13-1. Thevenin Terminator by Value

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Defining Thermal Constraints for Parts


You can define thermal constraints within Constraint Manager for the purpose of defining
constraint values that must be adhered to within your HyperLynx Thermal testing environment.
Presently, these constraints are only supported by that simulation tool. For more information

Constraint Manager Users Manual, X-ENTP VX.1.1 323


Part-Model Assignment Verification and Part Constraints Definition
Importing Pin Package Length Values

about a specific thermal constraint, refer to one of the constraint reference topics listed in the
procedure below.

Prerequisites
• To make use of any values you define for these constraints, you must be using
HyperLynx Thermal as part of your design flow.

Procedure
From the Parts spreadsheet page, you can define constraint values for each of the following
thermal constraints:

• “Thermal Power Dissipation” on page 466


• “Thermal Power Scaling Factor” on page 467
• “Thermal Theta-jc” on page 468
• “Thermal Casing Temperature Limit” on page 469
• “Thermal Junction Temperature Limit” on page 470

Results
Any thermal constraints you define for the design are included as requirements in your
HyperLynx Thermal simulation environment.

Related Topics
• Part-Model Assignment Verification and Part Constraints Definition

Importing Pin Package Length Values


You can import pin package length values from a side file instead of manually entering values
for one or more Pin Package Length constraints.
This task shows you how to use the Constraint Manager GUI to import the side file, but you can
instead use a command-line utility to do so. For more information, refer to
“ImportPinPackageLengths” on page 486.

Note
In some cases, an IC vendor provides a ready-to-use side file for one or more ICs. In any
event, the pin package length data always come from the IC vendor.

Prerequisites
• You must have the appropriate side file: PinPkgLengths.txt

324 Constraint Manager Users Manual, X-ENTP VX.1.1


Part-Model Assignment Verification and Part Constraints Definition
PinPkgLengths.txt File Format

Procedure
1. From the File menu, click Import, and then click Pin Package Lengths.
2. From the Import Pin Package Lengths dialog box, navigate to and select a
PinPkgLengths.txt file.
3. Optionally click to enable the following checkbox: Set 0 when pin package lengths are
not specified. This checkbox set values to 0 for any pin package lengths that are not
specified in the side file. This only applies to pins of part numbers defined in the side
file. Otherwise, the existing values in Constraint Manager are kept, when defined.
4. Review your selections, and then click Import.

Results
The Parts spreadsheet page is updated to display the imported values.

Related Topics
• Pin Package Length
• Part-Model Assignment Verification and Part Constraints Definition

PinPkgLengths.txt File Format


Input for: Constraint Manager “Pin Package Length” constraint values.
Use the PinPkgLengths.txt file to define pin package lengths on a per-pin basis for specific
parts. The sum of a pin package length value and the associated trace length determines if the
trace length meets the length rule defined in Constraint Manager.
Format
A PinPkgLengths.txt file must conform to the following restrictions:
UNITS <unit>
PART_NUMBER <part_name>
<pin_number> <value>

Parameters
• UNITS <unit>
A required keyword at the top of the file specifying the units of the map file. Valid values
for units: Thousandths (th), microns (um), millimeters (mm), and inches (in). This value is
case-insensitive.
• PART_NUMBER <part_name>
A required keyword that specifies the name of the part.

Constraint Manager Users Manual, X-ENTP VX.1.1 325


Part-Model Assignment Verification and Part Constraints Definition
PinPkgLengths.txt File Format

Note
If any <part_name> contains a space, all characters after the <part name> are considered
part of the part name until the next PART_NUMBER keyword.

• <pin_number> <value>
A single line for each pin number and its associated length value.
Note
Comma symbols are not supported, even if you have Constraint Manager configured to
use commas instead of periods for decimal points.

Examples
This example shows a PinPkgLengths.txt file that contains definitions for two part numbers.
Units are in thousandths of an inch, and this is specified with the first line. As you can see, the
pin package length definitions do not need to be ordered chronologically. The first part number
lists them out of order while the second part number lists them in chronological order.
UNITS TH
PART_NUMBER ASIC_AS_0_SOIC_28P_25_394X236_I
5 100
8 200
1 100
7 200
3 200
4 100
2 100
6 200
PART_NUMBER AT25HP512_SOIC_8P_50_197X236_IC
1 100
2 100
3 100
4 100
5 150
6 150
7 150
8 150

Related Topics
• Importing Pin Package Length Values
• ImportPinPackageLengths
• Pin Package Length

326 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 14
Signal Integrity Exploration

This section covers signal integrity exploration and enhancement with HyperLynx® LineSim®.
It presents the entire process of sending nets to HyperLynx LineSim for analysis and
enhancement, and then bringing changes into Constraint Manager.
Sending Nets to HyperLynx LineSim. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Exporting Constraint Enhancements From HyperLynx LineSim . . . . . . . . . . . . . . . . . 328
Updating Constraint Manager With Constraint Enhancements . . . . . . . . . . . . . . . . . . 329

Sending Nets to HyperLynx LineSim


You can export one or more electrical nets from the Nets spreadsheet page to a LineSim free-
form schematic. In LineSim, you can run “what if” experiments to find physical and electrical
net properties that satisfy signal integrity and other performance requirements.
When you send a net from Constraint Manager to HyperLynx LineSim, the board stackup for
the design is included to ensure simulation accuracy. From LineSim, you can dynamically
update Constraint Manager with LineSim constraint templates; or, export a constraint template
file that you can import back into the tool at a later time.

It is important to note that some information can be lost when transitioning your net data from a
free-form schematic to a constraint template file. For instructions regarding exporting a
constraint template file from LineSim, refer to HyperLynx LineSim documentation or search
the InfoHub to locate this information.

Figure 14-1. Constraint Manager-HyperLynx LineSim Design Flow

Passive component model support when sending nets to HyperLynx LineSim:

• Resistor and capacitor packages modeled as IBIS models in Constraint Manager are
supported in HyperLynx.
• HyperLynx supports series elements described in IBIS/EBD files for IC components.
This means that resistors and capacitors with three or more pins, and assigned IBIS/EBD
models, are exported to the free-form schematic as IC components with assigned

Constraint Manager Users Manual, X-ENTP VX.1.1 327


Signal Integrity Exploration
Exporting Constraint Enhancements From HyperLynx LineSim

models. Only those signal pins of passive network packages that are connected inside it
(that is, belonging to the same electrical net) are exported.

Prerequisites
• HyperLynx 8.0 or newer must be installed on the same computer as Constraint Manager.
• HyperLynx must use or include the same IBIS search paths as Constraint Manager.
• The front-end and back-end design representations are synchronized. This ensures that
the nets you want to export are complete and not missing any information (for example,
from-tos automatically generated in layout that do not show up in front-end Constraint
Manager until you back annotate).

Restrictions and Limitations


• Unconnected pins on the net have no topology information. These pins are connected in
a “chained” routing topology that you can verify and edit in the free-form schematic.
• Exported connectors are modeled in the free-form schematic as ICs with no model
assignment.

Procedure
From the Nets spreadsheet page, right-click a single electrical net ( ) or multiple highlighted
electrical nets (ten maximum), and then click Display Net in HyperLynx LineSim.

Results
When HyperLynx 8.0 or newer is installed on the same computer, LineSim automatically opens
and displays the net in the free-form schematic editor. The exported free-form schematic (FFS)
and HyperLynx project (PJH) files are written to
\<projects_folder>\<project_name>\HighSpeed\HyperLynx\PreLayoutLineSim<net_name>.
For example,
C:\mentor_projects\test_project\HighSpeed\HyperLynx\PreLayoutLineSim\data1.ffs.

Related Topics
• Exporting Constraint Enhancements From HyperLynx LineSim
• Signal Integrity Exploration

Exporting Constraint Enhancements From


HyperLynx LineSim
After you enhance a net in HyperLynx LineSim, you have to export those enhancements to
make them available for import into Constraint Manager. You also have the option of updating

328 Constraint Manager Users Manual, X-ENTP VX.1.1


Signal Integrity Exploration
Updating Constraint Manager With Constraint Enhancements

the tool dynamically as part of the export process. Doing so makes the changes available to
Constraint Manager immediately but you still need to manually apply the changes to nets.

Prerequisites
• You must be using HyperLynx version 8.2 or newer.
• The Constraint Manager session from which you exported one or more nets must be
active.

Procedure
1. From the HyperLynx LineSim Export menu, click Constraint Template.
2. (Optional) Activate the “Update CES with generated template” checkbox to update
Constraint Manager dynamically with the constraint template.
3. Click OK.

Related Topics
• Updating Constraint Manager With Constraint Enhancements
• Signal Integrity Exploration

Updating Constraint Manager With Constraint


Enhancements
After you make a constraint template available to Constraint Manager, you can apply it to one
or more nets. You make a template available to the tool by importing it manually or updating
Constraint Manager dynamically.
After applying a constraint template to one or more nets, you complete the signal integrity and
enhancement process by updating the tool with the work that you performed in HyperLynx
LineSim.

Procedure
Note
When you used the “Update CES with generated template” checkbox as part of the
procedure in “Exporting Constraint Enhancements From HyperLynx LineSim” on
page 328, skip to step 3.

1. From the Constraint Manager File menu, click Import, and then click Constraint
Template.

Constraint Manager Users Manual, X-ENTP VX.1.1 329


Signal Integrity Exploration
Updating Constraint Manager With Constraint Enhancements

2. From the Import Constraint Template dialog box, select the path and filename of the
constraint template file (.ctm) that includes your net topology enhancements, and then
click Open.
3. From the Nets spreadsheet page, select one or more electrical nets ( ) to update, right-
click, and then click Apply Constraint Template.
4. From the Select Constraint Template dialog box, click the constraint template of the net
you enhanced in HyperLynx LineSim, and then click OK.

Related Topics
• Signal Integrity Exploration

330 Constraint Manager Users Manual, X-ENTP VX.1.1


Chapter 15
Design Tool Update

Constraints are part of most of the design tools in a PCB design flow. This section helps you
understand how and when constraints are synchronized between a tool and the Constraint
Manager invocation you launched from it. It also provides instructions for sending constraint
and design changes from a front-end design representation to a back-end design representation.
Constraint and Design Change Management Between Tools . . . . . . . . . . . . . . . . . . . . . 331
Synchronization of Constraint Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Sending Schematic Data to Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Sending Layout Data to Schematics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Schematic Constraints Conflict Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

Constraint and Design Change Management


Between Tools
For tools on one end of the design flow, precisely when Constraint Manager and the tool from
which you launch it become synchronized depends on whether you are using a front-end tool or
a back-end tool.
Refer to the following synchronization rules:

• Front-end — Synchronization occurs automatically as you make changes in Constraint


Manager or a schematic capture tool.
• Back-end — Synchronization occurs after you exit Constraint Manager or use the
rightmost light in the layout tool to send pending constraint changes to layout.
When you want to update changes between the front-end and back-end tools that comprise your
flow, you can perform forward annotation by sending schematic data to layout, or back
annotation by updating schematic designs with changes from layout. During these processes,
constraint synchronization occurs, resulting in full updates of both the front-end and back-end
constraint sets. For more information, refer to “Synchronization of Constraint Sets” on
page 332.

Communication of Design Changes Between Schematic and Layout


Constraint Manager provides several constraint-driven design flows that bring together front-
end design systems (schematic) with back-end design systems (layout). Depending on the
design systems that make up your design flow, you communicate design changes between

Constraint Manager Users Manual, X-ENTP VX.1.1 331


Design Tool Update
Synchronization of Constraint Sets

schematic and layout using the forward and back-annotation commands provided by your
design systems.

Constraint-Driven Design-Flow Manuals


For proper usage of these design annotation commands within the constraint-driven design flow
that you use, refer to the following design-flow manuals:

• Constraint Manager User's Manual for Xpedition Enterprise Flow


• Constraint Manager User's Manual for Xpedition Enterprise Flow: Design Capture

Related Topics
• Design Tool Update

Synchronization of Constraint Sets


The Constraint Manager synchronization process runs during forward annotation and back
annotation. This process is used to synchronize the separate constraint sets associated with your
front-end and back-end design representations.
When you forward annotate, both constraint sets are completely synchronized. Front-end
constraint changes are sent to the back-end constraint set, and back-end constraint changes are
sent to the front-end constraint set. Conversely, when you back annotate, only back-end
constraint changes are sent to the front-end constraint set.

Figure 15-1. Constraint Manager Synchronization Process Runs During Design


Annotation

332 Constraint Manager Users Manual, X-ENTP VX.1.1


Design Tool Update
Sending Schematic Data to Layout

How you set the winner for design annotation depends on the flow you are using. Refer to the
Constraint Manager flow manual for your design flow for more information. For the listing of
flow manuals, refer to “Constraint-Driven Design-Flow Manuals” on page 332.

Constraint Manager synchronization works in this manner to provide more opportunities for
constraint alignment in all of its flows. Because both forward annotation and back annotation
result in constraint synchronization, overall design state is less of an issue for update purposes.
For example, when your schematic data is changing less frequently as you move toward
manufacturing start, forward annotating to layout gives you more opportunities to acquire
constraint changes made in a layout invocation of Constraint Manager. Due to the large volume
of design changes that can occur in the back-end at the end of the PCB creation cycle, forward
annotating to get back-end constraint changes saves time because there are few or no schematic
changes to communicate to your layout design.

xPCB Team Layout


This tool gives multiple designers the ability to simultaneously work on a single layout project.
Because of this, Constraint Manager synchronization is also used as a back-end only process to
manage changes to layer and net constraints within your PCB design. The result is that all
constraint work performed by multiple designers is accurately stored in the back-end constrain
set.

During forward annotation and back annotation, the front-end and back-end constraint sets are
synchronized as explained above.

Note
When you run XDS Save from xPCB Team Layout, it back annotates when necessary. As
expected, this back-annotation process includes full Constraint Manager synchronization
between back-end and front-end constraint sets.

xPCB Static Team Layout


This tool gives you the ability to partition your layout design, but it does not incorporate
constraint changes made to a partition. For this reason, you should use xPCB Static Team
Layout to perform layout operations to partitions–not constraint modifications. After a partition
is rejoined to the main layout design, you can modify constraints in Constraint Manager.

Related Topics
• Design Tool Update

Sending Schematic Data to Layout


You can send schematic data to layout to update the layout design to reflect applicable changes
driven by the schematic. You do this through the process of forward annotation.

Constraint Manager Users Manual, X-ENTP VX.1.1 333


Design Tool Update
Sending Layout Data to Schematics

Prerequisites
• When sending constraint changes you made in xDX Designer to xPCB Layout, you
must first create a front-end Constraint Manager database by launching Constraint
Manager from xDX Designer. You must only do this once in order for the database to be
created. For example, after using only the xDX Designer Attributes add-in to enter or
modify xPCB Layout style constraints, you do not yet have a front-end Constraint
Manager database. To create it, from the xDX Designer Tools menu, click Setup
Constraints.

Procedure
From your front-end design tool, or in some cases your back-end design tool, forward annotate.

Note
For specific forward-annotation commands, refer to the constraint-driven design-flow
manual for your flow, or the documentation for your schematic-capture software.

Related Topics
• Design Tool Update

Sending Layout Data to Schematics


You can send layout data to your schematic design to update it to reflect applicable changes
driven by layout. You do this through the process of back annotation.

Prerequisites
• You synchronized constraint data between layout and Constraint Manager by exiting
Constraint Manager or using the rightmost light in the layout tool to send your pending
constraint changes to it.

Procedure
From your back-end design tool, back annotate.

Note
For specific back-annotation commands, refer to the constraint-driven design-flow
manual for your flow, or the documentation for your layout software.

Related Topics
• Design Tool Update

334 Constraint Manager Users Manual, X-ENTP VX.1.1


Design Tool Update
Schematic Constraints Conflict Resolution

Schematic Constraints Conflict Resolution


You must resolve constraint conflicts between sheets in a schematic design. Conflicts can occur
when you copy sheets between designs.
Resolving Schematic Constraint Conflicts Manually . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Viewing Constraint Resolution Statistics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

Resolving Schematic Constraint Conflicts Manually


You can use the Constraint Resolution Manager (CRM) mode of Constraint Manager to
manually resolve constraint conflicts that arise between sheets that you copy from a source
schematic design to a target schematic design.
Providing manual constraint resolution during this type of copy gives you the ability to specify
the aspects of net design reuse you want to apply, while keeping important constraint values that
are unique to your design. In some cases, you might want to use most of the constraint values in
the source sheet, and keep only a few of the values of the sheet in the target design. In other
cases, you might specify that more constraint values in the target sheet be used than those in the
source sheet.

Prerequisites
• Optional, but recommended, set up your schematic tool to launch CRM automatically
when needed. Refer to your schematic documentation to determine how to set up the
application to launch the Constraint Resolution Manager automatically for conflict
resolution when copying a sheet between two designs.
• You must have copied a schematic sheet from a source design to a target design.

Procedure
1. When CRM is not automatically displayed, from Constraint Manager, with the CRM
toolbar enabled, select the most recent item from the dropdown list.
2. Constraint Manager is now in CRM mode. It has the appearance of Constraint Manager,
but provides a limited subset of functions related to manual resolution of constraint
conflicts. At any time, to switch from CRM mode back to Constraint Manager, from the
CRM Tools menu, click Constraint Manager.
When there are conflicting constraint values between source and target objects, the Nets
and/or Trace & Via Properties spreadsheet page highlights each net and/or layer row that
has conflicting constraint values. Cells that do not conflict remain white.
3. For each conflicting cell, you can do the following:

Constraint Manager Users Manual, X-ENTP VX.1.1 335


Design Tool Update
Schematic Constraints Conflict Resolution

• To view the list of available values from which you can choose, click the dropdown
button. “S” refers to the source value, “T” refers to the target value, and “C” refers to
a concurrent value that is being entered in real time.
• To change the default conflict resolution by choosing a different constraint value,
right-click a cell, and then click the appropriate Restore to selection. For example,
to use the value already in a sheet which you are pasting, click Restore to Target.
4. Change appropriate constraint values as often as you like until the correct set of source,
target, and concurrent values are present.
5. After you have finished, close the CRM, or switch to Constraint Manager mode. To do
so, from the CRM Tools menu, click Constraint Manager.

Results
The set of appropriate constraint values is chosen. There are no longer any conflicting
constraints in the target sheet.

Related Topics
• Schematic Constraints Conflict Resolution

Viewing Constraint Resolution Statistics


While you are using the Constraint Resolution Manager, you may find it helpful to get a top-
level view of the source wins, target wins, or all constraint selections that you have made to
resolve each set of conflicting values.
Doing so is especially helpful when you want to quickly verify that the selections you have
made are correct. The alternative is to scroll through each affected page of the Constraint
Manager spreadsheet. In comparison, using that method can be error-prone and time-
consuming.

Prerequisites
• Constraint Manager must be in CRM mode.

Procedure
1. From the CRM Data menu, click Constraint Resolution.
2. From the Constraint Resolution dialog box, review the table of Source and target wins,
and the summary of win statistics located at the top of the dialog box.
3. (Optional) You can do any of the following:
• To display just target wins, click to enable the Show only target wins check box.
• To display only source wins, click to enable the Show only source wins check box.

336 Constraint Manager Users Manual, X-ENTP VX.1.1


Design Tool Update
Schematic Constraints Conflict Resolution

• To update the table to show the latest wins after you make changes within the CRM,
click Refresh.
• To cross probe to the spreadsheet row to which a win refers, click a list row.
Alternative: To move up or down one row in the wins list while cross probing, click
or .
4. After you finish reviewing statistics, click Close.

Results
The dialog box is no longer displayed on screen, leaving the CRM at the forefront of the screen.

Related Topics
• Schematic Constraints Conflict Resolution

Constraint Manager Users Manual, X-ENTP VX.1.1 337


Design Tool Update
Schematic Constraints Conflict Resolution

338 Constraint Manager Users Manual, X-ENTP VX.1.1


Appendix A
Constraint Reference

This section provides a full constraint reference for each constraint available in Constraint
Manager. This reference is organized to reflect the default ordering of constraints on each
Constraint Manager spreadsheet page.
Constraint Reference Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Trace and Via Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Clearances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Z-Axis Clearances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
Noise Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472

Constraint Reference Overview


The constraint reference includes information about each design constraint that appears on the
Trace & Via Properties, Clearances, Z-Axis Clearances, Nets, Parts, and Noise Rules pages of
the Constraint Manager spreadsheet. Constraints in each category are listed by their default
arrangement on a spreadsheet page.
Click within the section “Constraint Reference” of the table of contents to view the reference
topic associated with a constraint. In the illustration below, the graphic available in the
constraint topic Trace Width Minimum is shown.

Example A-1. Constraint Reference Illustration

Note
For illustrative purposes, components and other board elements may appear
disproportionately large relative to PCB size.

Constraint Manager Users Manual, X-ENTP VX.1.1 339


Constraint Reference
Constraint Reference Overview

Supported Design Components


Some constraints within this reference indicate that they are supported by design components
that may be included in your constraint-driven design flow. Refer to the following definitions
for an understanding of each design component:

• AutoActive® — Integrated place and route environment of xPCB Layout, Board Station
XE, and Board Station RE.
• Hazards — Dynamically updated design rule checking for placement and routing
constraint information. This component is available in xPCB Layout, Board Station XE,
and Board Station RE.
• High-speed routing (HSR) — Routing using estimation to determine how to adjust
routing to meet high-speed constraints (for example, time of flight delay or length). This
component is available in xPCB Layout, Board Station XE, and Board Station RE.

Related Topics
• Quick Reference - Constraint Manager Spreadsheet
• Constraint Definition Through Spreadsheet Pages
• Creating Constraint Groups

340 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Trace and Via Properties


Refer to the trace and via property constraint reference topics that follow. These constraints are
accessible from the Trace & Via Properties spreadsheet page.

Tip: For a quick reference on these constraints, refer to “Trace and Via Properties
Summary” on page 33.

Constraint Manager Users Manual, X-ENTP VX.1.1 341


Constraint Reference
Trace and Via Properties

Index
Displays the layer number for a board layer. This constraint is also displayed on the Clearances
page and Z-Axis Clearances page.

Tip: In the event that the stackup layer sequence is shown out of order in the spreadsheet,
you can click to sort by the Index heading to return the layer listing to its sequential order.

Constraint Type
Reference

Example
1

342 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Type
Displays the type of printed circuit board layer (for example, signal or plane). This constraint is
also displayed on the Clearances page.
Note
When Type is Flooded Signal, the Typical Impedance constraint is calculated based on
the test width and the Trace to Plane constraint for that layer in the (Master) scheme's
(Default Rule).

Constraint Type
Reference

Example
Signal

Related Topics
• Trace To Plane
• Typical Impedance

Constraint Manager Users Manual, X-ENTP VX.1.1 343


Constraint Reference
Trace and Via Properties

Via Assignments
Defines the via assignment for a net class.
The value “(default)” means that the net class is using the via assignment defaults defined in
Constraint Manager setup, which are general via settings for a design. Custom indicates that the
via assignment design defaults are not being used for this net class.

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
(default)

Related Topics
• Specifying Trace and Via Rules

344 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Route
Defines whether the board layer is routed during PCB fabrication. You can set Route
individually or for all board layers of a net class.

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Specifying Trace and Via Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 345


Constraint Reference
Trace and Via Properties

Trace Width Minimum


Defines the minimum acceptable trace width. You can define Trace Width Minimum
individually or for all board layers of a net class. Trace Width Minimum is used whenever the
router can successfully route at this trace width and a minimum width is needed.

Figure A-1. Trace Width Minimum

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
8 mil

Related Topics
• Trace Width Expansion
• Trace Width Typical
• Specifying Trace and Via Rules

346 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Trace Width Typical


Defines the typical acceptable trace width. You can define Trace Width Typical individually or
for all board layers of a net class. This trace width is used by the router whenever possible.

Figure A-2. Trace Width Typical

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
9 mil

Related Topics
• Trace Width Expansion
• Trace Width Minimum
• Specifying Trace and Via Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 347


Constraint Reference
Trace and Via Properties

Trace Width Expansion


Defines the expansion, or maximum acceptable trace width.You can define Trace Width
Expansion individually or for all board layers of a net class. When the router needs to increase
trace width to satisfy routing requirements, this trace width is used.

Figure A-3. Trace Width Expansion

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Trace Width Minimum
• Trace Width Typical
• Specifying Trace and Via Rules

348 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Typical Impedance
Defines signal impedance for the Trace Width Typical constraint. When you enter a value into
the Trace Width Typical cell, impedance at this width is calculated and placed into the Typical
Impedance cell.
Note
Typical Impedance is not calculated or able to be entered for traces that are on plane
layers. To indicate this, Constraint Manager grays out the cell and leaves it empty.

In order for this constraint to be calculated, your board stackup must include at least one
plane layer.

When you adjust this constraint, Trace Width Typical is always updated unless you do not have
a valid stackup or the trace is on a plane layer.

When calculating impedance, the following stackup properties are included as necessary:

• Layer thickness
• Dielectric constants
• Position of plane layers
• Copper thickness for metal layers

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Trace Width Typical
• Specifying Trace and Via Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 349


Constraint Reference
Trace and Via Properties

Differential Typical Impedance


Defines signal impedance for trace segments that are part of a differential pair. This value is
calculated and updated automatically when you modify Trace Width Typical, Typical
Impedance, or Differential Spacing.
Note
Differential Typical Impedance is not calculated or able to be entered for traces that are
on plane layers. To indicate this, Constraint Manager grays out the cell and leaves it
empty.

In order for this constraint to be calculated, your board stackup must include at least one
plane layer.

When you modify Differential Typical Impedance manually, Differential Spacing is updated as
well.

When calculating impedance, the following stackup properties are included as necessary:

• Layer thickness
• Dielectric constants
• Position of plane layers
• Copper thickness for metal layers

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Trace Width Typical
• Typical Impedance
• Differential Spacing
• Specifying Trace and Via Rules

350 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Trace and Via Properties

Differential Spacing
Defines the required parallel distance between trace segments that comprise a differential pair.
You can define Differential Spacing individually or for all board layers of a net class.

Figure A-4. Differential Spacing

Tip: When applied in conjunction with Differential Spacing, Trace Width Minimum
gives you the ability to define a smaller Differential Spacing constraint. As trace width
decreases, potential aggressor net interference between differential pairs reduces as the
total conductive surface area decreases.

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
0.5 mm

Related Topics
• Trace Width Minimum
• Specifying Trace and Via Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 351


Constraint Reference
Clearances

Clearances
Refer to the clearance constraint reference topics that follow. These constraints are accessible
from the Clearances spreadsheet page.
Note
By default, the clearance constraints defined in the (Defaut Rule) are used between all net
classes unless you create additional clearance rule sets and then assign them between
specific net classes.

Tip: For a quick reference on these constraints, refer to “Clearances Summary” on


page 35.

352 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Index
Displays the layer number for a board layer. This constraint is also displayed on the Trace &
Via Properties page and Z-Axis Clearances page.

Tip: In the event that the stackup layer sequence is shown out of order in the spreadsheet,
you can click to sort by the Index heading to return the layer listing to its sequential order.

Constraint Type
Reference

Example
1

Constraint Manager Users Manual, X-ENTP VX.1.1 353


Constraint Reference
Clearances

Type
Displays the type of printed circuit board layer (for example, plane). This constraint is also
displayed on the Trace & Via Properties page.

Constraint Type
Reference

Example
Signal

354 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Trace To Trace
Defines the minimum clearance distance between trace segments. You can define Trace to
Trace individually or for all board layers of a clearance rule.

Figure A-5. Trace To Trace

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 355


Constraint Reference
Clearances

Trace To Pad
Defines the minimum clearance distance between traces and pads. You can define Trace To Pad
individually or for all board layers of a clearance rule.

Figure A-6. Trace To Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
12 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

356 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Trace To Via
Defines the minimum clearance distance between traces and vias. You can define Trace To Via
individually or for all board layers of a clearance rule.

Figure A-7. Trace To Via

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
8 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 357


Constraint Reference
Clearances

Trace To Plane
Defines the minimum clearance distance between traces and planes. You can define Trace To
Plane individually or for all board layers of a clearance rule.

Figure A-8. Trace To Plane

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
20 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

358 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Trace To SMD Pad


Defines the minimum clearance distance between the pads of surface mount devices and traces.
You can define Trace To SMD Pad individually, or for all board layers of a clearance rule.

Figure A-9. Trace To SMD Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining SMD Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 359


Constraint Reference
Clearances

Pad To Pad
Defines the minimum clearance distance between pads. You can define Pad To Pad individually
or for all board layers of a clearance rule. This constraint definition includes SMD pads.

Figure A-10. Pad To Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

360 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Pad To Via
Defines the minimum clearance distance between pads and vias. You can define Pad To Via
individually or for all board layers of a clearance rule.

Figure A-11. Pad To Via

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
8 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 361


Constraint Reference
Clearances

Pad To Plane
Defines the minimum clearance distance between pads and planes. You can define Pad To
Plane individually or for all board layers of a clearance rule. This constraint definition includes
SMD pads.

Figure A-12. Pad To Plane

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
20 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

362 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Via To Via
Defines the minimum clearance distance between vias. You can define Via To Via individually
or for all board layers of a clearance rule.

Figure A-13. Via To Via

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 363


Constraint Reference
Clearances

Via To Plane
Defines the minimum clearance distance between vias and planes. You can define Via To Plane
individually or for all board layers of a clearance rule.

Figure A-14. Via To Plane

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

364 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Via To SMD Pad


Defines the minimum clearance distance between the pads of surface mount devices and vias.
You can define Via To SMD Pad individually, or for all board layers of a clearance rule.

Figure A-15. Via To SMD Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining SMD Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 365


Constraint Reference
Clearances

Plane To Plane
Defines the minimum clearance distance between planes. You can define Plane To Plane
individually or for all board layers of a clearance rule.
Note
In order to accurately check this rule using Batch DRC in your layout software, you must
set any “Static” planes to “Dynamic” in that tool. Because the layout software regards
static planes as archived, it uses Plane To Plane values assigned at the time a plane was
put into static mode instead of the values of the assigned scheme.

Figure A-16. Plane To Plane

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
20 mil

Related Topics
• Creating Clearance Rule Sets
• Assigning Class-To-Class Clearance Rules

366 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Embedded Resistor To Trace


Defines the minimum clearance distance between the resistive material of embedded thick-film
resistors and traces. You can define Embedded Resistor To Trace individually or for all board
layers of a clearance rule.

Figure A-17. Embedded Resistor To Trace

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 367


Constraint Reference
Clearances

Embedded Resistor To Pad


Defines the minimum clearance distance between the resistive material of embedded thick-film
resistors and pads. You can define Embedded Resistor To Pad individually or for all board
layers of a clearance rule.

Figure A-18. Embedded Resistor To Pad

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

368 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

Embedded Resistor To Via


Defines the minimum clearance distance between the resistive material of embedded thick-film
resistors and vias. You can define Embedded Resistor To Via individually or for all board layers
of a clearance rule.

Figure A-19. Embedded Resistor To Via

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 369


Constraint Reference
Clearances

Embedded Resistor To Resistor


Defines the minimum clearance distance between the resistive material of embedded thick-film
resistors. You can define Embedded Resistor To Resistor individually or for all board layers of
a clearance rule.

Figure A-20. Embedded Resistor To Resistor

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

370 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

EP Mask To Trace
Defines the minimum clearance distance between the production mask of embedded thin-film
resistors and traces. You can define EP Mask To Trace individually or for all board layers of a
clearance rule.

Figure A-21. EP Mask To Trace

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 371


Constraint Reference
Clearances

EP Mask To Pad
Defines the minimum clearance distance between the production mask of embedded thin-film
resistors and pads. You can define EP Mask To Pad individually or for all board layers of a
clearance rule.

Figure A-22. EP Mask To Pad

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

372 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Clearances

EP Mask To Via
Defines the minimum clearance distance between the production mask of embedded thin-film
resistors and vias. You can define EP Mask To Via individually or for all board layers of a
clearance rule.

Figure A-23. EP Mask To Via

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 373


Constraint Reference
Clearances

EP Mask To Resistor
Defines the minimum clearance distance between the production mask of embedded thin-film
resistors and the resistive material of embedded thick-film resistors. You can define EP Mask
To Resistor individually or for all board layers of a clearance rule.

Figure A-24. EP Mask To Resistor

Prerequisites
• You have acquired an xPCB Embedded Passive license in xPCB Layout.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining Embedded Resistor Clearance Rules
• Assigning Class-To-Class Clearance Rules

374 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Z-Axis Clearances

Z-Axis Clearances
Refer to the z-axis clearance constraint reference topics that follow. These constraints are
accessible from the Z-Axis Clearances spreadsheet page.
Note
By default, z-axis clearance constraints, even those defined in the (Defaut Z-Axis Rule),
are not used between any net classes. In order to use your values for these constraints,
you must assign z-axis clearance rule sets between specific net classes.

Tip: For a quick reference on these constraints, refer to “Z-Axis Clearances Summary”
on page 38.

Constraint Manager Users Manual, X-ENTP VX.1.1 375


Constraint Reference
Z-Axis Clearances

Index
Displays the layer number for a board layer. This constraint is also displayed on the Trace &
Via Properties page and Clearances page.

Tip: In the event that the stackup layer sequence is shown out of order in the spreadsheet,
you can click to sort by the Index heading to return the layer listing to its sequential order.

Constraint Type
Reference

Example
1

376 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Z-Axis Clearances

Trace To Trace
Defines the minimum clearance distance between trace segments located on different signal
layers. You can define Trace To Trace individually or for all board layers of a clearance rule.

Figure A-25. Trace To Trace

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
10 mil

Related Topics
• Creating Z-Axis Clearance Rule Sets
• Assigning Z-Axis Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 377


Constraint Reference
Z-Axis Clearances

Trace To Pad
Defines the minimum clearance distance between traces and pads located on different signal
layers. You can define Trace To Pad individually or for all board layers of a clearance rule.

Figure A-26. Trace To Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
12 mil

Related Topics
• Creating Z-Axis Clearance Rule Sets
• Assigning Z-Axis Class-To-Class Clearance Rules

378 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Z-Axis Clearances

Trace To Via
Defines the minimum clearance distance between traces and vias located on different signal
layers. You can define Trace To Via individually or for all board layers of a clearance rule.

Figure A-27. Trace To Via

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
8 mil

Related Topics
• Creating Z-Axis Clearance Rule Sets
• Assigning Z-Axis Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 379


Constraint Reference
Z-Axis Clearances

Trace To Plane
Defines the minimum clearance distance between traces and planes located on different signal
layers. You can define Trace To Plane individually or for all board layers of a clearance rule.

Figure A-28. Trace To Plane

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
20 mil

Related Topics
• Creating Z-Axis Clearance Rule Sets
• Assigning Z-Axis Class-To-Class Clearance Rules

380 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Z-Axis Clearances

Trace To SMD Pad


Defines the minimum clearance distance between the pads of surface mount devices and traces
located on internal signal layers. You can define Trace To SMD Pad individually, or for all
board layers of a clearance rule.

Figure A-29. Trace To SMD Pad

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Example
15 mil

Related Topics
• Defining SMD Clearance Rules
• Assigning Z-Axis Class-To-Class Clearance Rules

Constraint Manager Users Manual, X-ENTP VX.1.1 381


Constraint Reference
Nets

Nets
Refer to the net constraint reference topics that follow. These constraints are accessible from the
Nets spreadsheet page.

Tip: For a quick reference on these constraints, refer to “Nets Summary” on page 39.

382 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Hierarchical Path
Displays the hierarchical path to the object within the design.

Nets Spreadsheet Group


All

Constraint Type
Reference

Example
sheet1

Constraint Manager Users Manual, X-ENTP VX.1.1 383


Constraint Reference
Nets

# Pins
Displays the number of pins that comprise the net.

Nets Spreadsheet Group


Net Properties, Power Nets, and All

Constraint Type
Reference

Example
2

384 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Power Net
Defines the net as a power-supply net. You can define Power Net individually for each net. You
cannot define differential pair nets as power-supply nets.

Nets Spreadsheet Group


Power Nets and All

Constraint Type
Modifiable

Related Topics
• Analog
• Power Net Constraints Supply Voltage
• Power Net Constraints Max Voltage Drop
• Power Net Constraints Max Current Density
• Power Net Constraints Max Via Current
• Power-Supply Net and Constraint Definition

Constraint Manager Users Manual, X-ENTP VX.1.1 385


Constraint Reference
Nets

Analog
Defines the net as analog and prevents physical nets that comprise an electrical net from being
merged into an electrical net or differential pair. You cannot define differential pair nets as
Analog. You can define Analog individually or for all nets of a constraint class.
Note
To change a net from an electrical net to a physical net, you can enable Analog for the net
row. When electrical nets are automatically updated in Constraint Manager, the net will
now show as a physical net. To reverse the process, disable the Analog cell.

Nets Spreadsheet Group


Net Properties, Power Nets, and All

Constraint Type
Modifiable

Related Topics
• Overview of Electrical Nets and Physical Nets in Constraint Manager
• Specifying General Net Constraints

386 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Bus
Defines the constraint class as a bus. Nets within the constraint class should be limited to those
nets that comprise the bus.
The Bus constraint is also used to indicate that xPCB Layout should enable bus planning and
routing capabilities for a specific constraint class.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Specifying General Net Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 387


Constraint Reference
Nets

Net Class
Defines the name of the net class to which the net should belong.
When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Delays and Lengths, Differential Pair Properties, Net Properties, Power Nets,
and All

Constraint Type
Modifiable

388 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Template Name
Optionally, defines the constraint template to which the net is assigned. You can define
Template Name individually or for all nets of a constraint class.

Nets Spreadsheet Group


Template and All

Constraint Type
Modifiable

Constraint Manager Users Manual, X-ENTP VX.1.1 389


Constraint Reference
Nets

Template Status
Displays the synchronization status of the net with regard to the current values stored in the
constraint template.
When one or more constraints values of a constraint template are modified after it was assigned
to one or more nets, the Template Status cell will indicate that the net no longer includes the
latest template values.

Nets Spreadsheet Group


Template and All

Constraint Type
Reference

Related Topics
• Updating Nets With Constraint Template Changes

390 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Topology Type
Defines the topology type used for routing, which can be an automatic routing pattern, or
custom routing pattern that you define. You can define Topology Type individually or for all
nets of a constraint class.
You can choose from the following automatic topology types, each of which has a
corresponding Topology toolbar button:

• MST — Minimum Spanning Tree tells the router to connect the pins in any way
possible.
• Chained — Instructs the router to connect nets from pin to pin beginning with all
sources, all loads, and then all terminators.
• TShape — Tells the router to connect pins based upon a T-shaped physical model.
• Star — Instructs the router to connect pins based upon a star-shaped physical model.
• HTree — Tells the router to connect pins based upon a hierarchical tree model.
• Custom/Complex — When creating a custom topology type, you can define Topology
Type as either Custom or Complex. Custom is used for netline ordering that does not
include pin sets. Complex is used for netline ordering that does include pin sets. When
you begin the process of netline ordering a Custom topology, if you add a pin set, its
type is changed to Complex.
When you define Topology Type for a differential pair, it is applied to both nets that comprise
the differential pair. The same is true when you define it for a net that comprises a differential
pair. After you do so, the other net and the differential pair level all show the updated selection.

Note
Only a subset of the available topology types are available to differential pairs and the
nets that comprise them.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Manager Users Manual, X-ENTP VX.1.1 391


Constraint Reference
Nets

Constraint Type
Modifiable

Related Topics
• Topology Ordered
• Topology Specification for Nets and Constraint Classes

392 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Topology Ordered
For Topology Type Custom or Complex, displays whether the custom topology type has
undergone netline ordering, which is required for each user-specific topology type.
When defining netline ordering for a Complex topology, the Topology Ordered cell will not
update to state “Yes” until the next time you launch Constraint Manager from the PCB layout
system. This is because the PCB layout system needs to analyze your usage of pin sets and
from-tos to ensure that the Complex topology is in fact fully ordered.

Tip: Defining the order for all Custom or Complex nets, even those that contains just two
pins, is a good idea. After you define the order, any changes in connectivity cause this
constraint to be set back to “No.” For example, if another engineer adds a pin to a net,
Topology Ordered would be changed from “Yes” to “No,” alerting you to the change in
connectivity.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Reference

Related Topics
• Topology Type
• Manually Defining Netline Ordering (From-Tos) for a Specific Net

Constraint Manager Users Manual, X-ENTP VX.1.1 393


Constraint Reference
Nets

Stub Length Max


Defines the maximum length of shared copper allowed between two branches of a net when
routing it as a custom, complex, or chained Topology Type. You can define Stub Length Max
individually or for all nets of a constraint class.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR) and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Topology Specification for Nets and Constraint Classes

394 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

# Vias Max
Defines the maximum number of vias that can be created when routing a net. When specified,
this constraint value must be between 1 and 1000. You can define # Vias Max individually or
for all nets of a constraint class.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Specifying General Net Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 395


Constraint Reference
Nets

Max Restricted Layer Length External


Defines the maximum trace length that can be routed on external restricted board layers. You
can define Max Restricted Layer Length External individually or for all nets of a constraint
class.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Restricted layers are those that do not have routing enabled through the Route constraint, which
is located on the Trace & Via Properties spreadsheet page.

Figure A-30. Cross Section of a 6-Layer PCB (External)

An external layer is a surface layer, either the top or bottom layer of the board. In the above
example, the PCB has two external layers and four internal layers.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Max Restricted Layer Length Internal
• Specifying General Net Constraints

396 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Max Restricted Layer Length Internal


Defines the maximum trace length that can be routed on internal restricted board layers. You
can define Max Restricted Layer Length Internal individually or for all nets of a constraint
class.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Restricted layers are those that do not have routing enabled through the Route constraint, which
is located on the Trace & Via Properties spreadsheet page.

Figure A-31. Cross Section of a 6-Layer PCB (Internal)

An internal layer is a non-surface layer, sandwiched somewhere between the top and bottom
board layers. In the above example, the PCB has four internal layers.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Max Restricted Layer Length External
• Specifying General Net Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 397


Constraint Reference
Nets

From To Constraints Layer


Defines the board layer on which to route a from-to for a non-differential net that uses Topology
Type Custom. You can define From To Constraints Layer individually for each from-to that is
part of a non-differential net.
When you create a constraint template, this constraint is included.

Note
In order to apply this constraint, you must enable from-to rows on the Constraint
Manager spreadsheet. To do so, from the Filters menu, click Levels, and then click to
enable FromTo.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• From To Constraints Trace Width
• Overriding Trace Width Constraints for From-Tos

398 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

From To Constraints Trace Width


Optionally defines the trace width to which to route a from-to. You can only define this
constraint for non-differential nets that use a custom Topology Type. You also must define
From To Constraints Layer before you can enter a value for this constraint. You can define
From To Constraints Trace Width individually for each from-to.
From To Constraints Trace Width overrides any trace width constraints defined for a net on the
Trace & Via Properties page (for example, Trace Width Typical). When you define From To
Constraints Layer without defining an override width, the trace width constraints of the net class
are used.

When you create a constraint template, this constraint is included.

Note
In order to apply this constraint, you must enable from-to rows on the Constraint
Manager spreadsheet. To do so, from the Filters menu, click Levels, and then click to
enable FromTo.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• From To Constraints Z0
• Overriding Trace Width Constraints for From-Tos

Constraint Manager Users Manual, X-ENTP VX.1.1 399


Constraint Reference
Nets

From To Constraints Z0
Displays an impedance calculation based on the trace width override value defined in From To
Constraints Trace Width.
Note
In order to view this constraint, you must enable from-to rows on the Constraint Manager
spreadsheet. To do so, from the Filters menu, click Levels, and then click to enable
FromTo.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Reference

Related Topics
• From To Constraints Trace Width

400 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Length or TOF Delay Type


Defines the type for a net, which can be controlled electrically (TOF) or physically (Length).
You can define Length or TOF Delay Type individually, for pin pairs, for differential pairs, or
for all nets of a constraint class.
TOF delay gives you the ability to specify time of flight based upon how long it takes the signal
to propagate through the net. Length gives you the ability to set physical constraints that instruct
the router to keep the net length within a specific range.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths, Differential Pair Properties, and All

Constraint Type
Modifiable

Related Topics
• Length or TOF Delay Delta
• Length or TOF Delay Max
• Length or TOF Delay Min
• Specifying Length or Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 401


Constraint Reference
Nets

Length or TOF Delay Min


Defines the minimum acceptable physical routing length or signal propagation delay (for
example, time) between design connections. You can define Length or TOF Delay Min
individually, for pin pairs, for differential pairs, or for all nets of a constraint class.
Note
Length tuning in xPCB Layout and BoardStation XE/RE will not work when the length
value exceeds 55 inches. In board configurations with extremely long traces, ensure that
this constraint does not exceed 55 inches.

Figure A-32. Length or TOF Delay Min

When you create a constraint template, this constraint is included.

Length or TOF Delay Actual Calculations


The actual value for length or TOF delay is displayed in the Actual cell to the right. This value
is taken from the PCB design and will additionally include pin package length actuals and via
delay actuals when they are available. To include via delay actuals, you do so through the Setup
Parameters dialog box of xPCB Layout or BoardStation XE. From the Via Definitions tab,
define via delays using the cells of the Delay row.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths, Differential Pair Properties, and All

Constraint Type
Modifiable

402 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Related Topics
• Length or TOF Delay Delta
• Length or TOF Delay Max
• Length or TOF Delay Type
• Specifying Length or Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 403


Constraint Reference
Nets

Length or TOF Delay Max


Defines the maximum acceptable physical routing length or signal propagation delay (for
example, time) between design connections. You can define Length or TOF Delay Max
individually, for pin pairs, for differential pairs, or for all nets of a constraint class.
Note
Length tuning in xPCB Layout and BoardStation XE/RE will not work when the length
value exceeds 55 inches. In board configurations with extremely long traces, ensure that
this constraint does not exceed 55 inches.

Figure A-33. Length or TOF Delay Max

When you create a constraint template, this constraint is included.

Length or TOF Delay Actual Calculations


The actual value for length or TOF delay is displayed in the Actual cell to the right. This value
is taken from the PCB design and will additionally include pin package length actuals and via
delay actuals when they are available. To include via delay actuals, you do so through the Setup
Parameters dialog box of xPCB Layout or BoardStation XE. From the Via Definitions tab,
define via delays using the cells of the Delay row.

Manhattan Length
To derive maximum length from the Manhattan length computed during routing, enter a value
between 1 and 100, and follow it with a percentage sign (%). For example, to use 110% of
Manhattan length, enter 10%.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths, Differential Pair Properties, and All

404 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Constraint Type
Modifiable

Related Topics
• Length or TOF Delay Delta
• Length or TOF Delay Min
• Length or TOF Delay Type
• Specifying Length or Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 405


Constraint Reference
Nets

Length or TOF Delay Manhattan


Displays the Manhattan net length. The tool shows the actual length in the Length or TOF Delay
Actual cell if the net is routed.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Reference

406 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Length or TOF Delay Min Length


Displays the straight line length between two pin pairs when both components are placed. This
length is replaced with Length or TOF Delay Actual when the net is routed.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Reference

Related Topics
• Specifying Length or Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 407


Constraint Reference
Nets

Length or TOF Delay Match


Defines a match character or string (for example, a) you can use to group nets for similar length
or time of flight delay routing. You can apply Length or TOF Delay Match individually, for pin
pairs, or for differential pairs.
To duplicate the delay in a net row that has a defined match character, enter the match character
into the Length or TOF Delay Match cell of the net for which you have not defined delay.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Modifiable

Related Topics
• Formulas Formula
• Matching Delay or Length Rules Among Nets

408 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Length or TOF Delay Tol


Introduces a tolerance range around the net routing delay requirements for nets that duplicate a
Length or TOF Delay Match (for example, 1). You can also define this constraint at the
constraint class level without the pre-requirement of defining a match character or string.
When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Modifiable

Example
100 th

Related Topics
• Matching Delay or Length Rules Among Nets
• Matching Length or Delay Tolerance at the Constraint Class Level

Constraint Manager Users Manual, X-ENTP VX.1.1 409


Constraint Reference
Nets

Length or TOF Delay Delta


Displays the difference between the actual value for the net and the net with the largest actual
value in the match group. If there is no difference, this cell displays 0. The tool does not
includes Length or TOF Delay Tol values when it calculates this delta value.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Reference

410 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Length or TOF Delay Range


Displays the range of length or time of flight actuals for all nets and/or constraint classes that
are part of the same match group.
For example, a value of 3000:5000 indicates that the smallest actual among matched design
objects is 3000; the largest actual is 5000.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Reference

Related Topics
• Length or TOF Delay Match

Constraint Manager Users Manual, X-ENTP VX.1.1 411


Constraint Reference
Nets

Formulas Formula
Defines a formula that can be used to create delay relationships between nets and pin pairs. You
can define Formulas Formula individually or for pin pairs.
Note
All formulas must begin with one of the following operators: =, <, or >. When an
operator is missing, Constraint Manager precedes the formula with the “=” operator when
it solves the formula. The “=” operator is not visibly added to the content of the Formulas
Formula cell.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing (HSR), and by Hazards in the
AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Modifiable

Related Topics
• Length or TOF Delay Match
• Defining Formulas to Create Net Relationships

412 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Formulas Violation
Displays formula violation information based on the requirements of the Formulas Formula
constraint.
Formulas Violation cells are highlighted if a length or delay value does not adhere to the
associated Formulas Formula string. A violation cell always contains data regardless of whether
it meets the requirements of a formula. Only the highlighted cells are those you need to fix.

A highlighted Formulas Violation cell can show one of the following issues:

• Actual>formula — The actual is too small (for example, 0th>100th).


• Actual<formula — The actual is too large (for example 150th<100th).
• Actual=miminum:maximum — The actual does not fall between the acceptable low
and high values defined by the formula (for example, 40th=80:100th).

Note
This cell uses the most recent actuals data to determine if there is a violation. For this
reason, you must make sure that you synchronize your Constraint Manager changes with
layout using the rightmost indicator light in layout (it is amber when there are changes),
and then update actuals in Constraint Manager. Otherwise, there may be violations that
are not displayed until the next time you launch the tool. Conversely, old violations that
are no longer relevant may still be displayed when the actuals data is not up to date.

Supported Design Components


This constraint is supported by Hazards in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Delays and Lengths and All

Constraint Type
Reference

Related Topics
• Solving Formulas to Check for Errors

Constraint Manager Users Manual, X-ENTP VX.1.1 413


Constraint Reference
Nets

Static Low Overshoot Max


Defines the maximum low DC voltage (minimum) that a buffer can withstand without
permanent damage to the buffer. You can define Static Low Overshoot Max individually, for
differential pairs, or for all nets of a constraint class. This value is defined in an IBIS model
through the S_overshoot_low keyword.
You must enter rail-relative (rr) values, where:

• rr = VLmin – abs for low


• rr = abs – VHmax for high
By defining Dynamic Low Overshoot Max, you can specify an operating voltage limit below
this value. For more information, refer to “Dynamic Low Overshoot Max” on page 418.

Figure A-34. Static Low Overshoot Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Example
0.3 V

Related Topics
• Dynamic High Overshoot Max
• Dynamic Low Overshoot Max

414 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

• Static High Overshoot Max


• Defining Overshoot and Ringback Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 415


Constraint Reference
Nets

Static High Overshoot Max


Defines the maximum high DC voltage that a buffer can withstand without permanent damage
to the buffer. You can define Static High Overshoot Max individually, for differential pairs, or
for all nets of a constraint class. This value is defined in an IBIS model through the
S_overshoot_high keyword.
You must enter rail-relative (rr) values, where:

• rr = VLmin – abs for low


• rr = abs – VHmax for high
By defining Dynamic High Overshoot Max, you can specify an operating voltage limit above
this value. For more information, refer to “Dynamic High Overshoot Max” on page 420.

Figure A-35. Static High Overshoot Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Example
0.2 V

Related Topics
• Dynamic High Overshoot Max
• Dynamic Low Overshoot Max

416 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

• Static Low Overshoot Max


• Defining Overshoot and Ringback Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 417


Constraint Reference
Nets

Dynamic Low Overshoot Max


Defines an available, smaller low operating voltage (below minimum) limit for the signal that is
to not exceed a specific duration. This voltage limit should not be met or exceeded, but allow
for the signal to go lower than Static Low Overshoot Max, while never equaling Dynamic Low
Overshoot Max. You can define Dynamic Low Overshoot Max individually, or for all nets of a
constraint class. These values are defined in an IBIS model through the D_overshoot_low and
D_overshoot_time keywords.
You must enter rail-relative (rr) values, where:

• rr = VLmin – abs for low


• rr = abs – VHmax for high
Static Low Overshoot Max defines the standard low operating voltage. Dynamic Low
Overshoot Max give you the ability to define an exception-based low overshoot. This constraint
requires both a time and voltage value, which you separate with a : character.

Figure A-36. Dynamic Low Overshoot Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Example
0.6:5 (0.6 V for 5 ns)

418 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Related Topics
• Dynamic High Overshoot Max
• Static High Overshoot Max
• Static Low Overshoot Max
• Defining Overshoot and Ringback Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 419


Constraint Reference
Nets

Dynamic High Overshoot Max


Defines an available, larger high operating voltage (above maximum) limit for the signal that is
to not exceed a specific duration. This voltage limit should not be met or exceeded, but allow
for the signal to go higher than Static High Overshoot Max, while never equaling Dynamic
High Overshoot Max. You can define Dynamic High Overshoot Max individually, for
differential pairs, or for all nets of a constraint class. These values are defined in an IBIS model
through the D_overshoot_high and D_overshoot_time keywords.
You must enter rail-relative (rr) values, where:

• rr = VLmin – abs for low


• rr = abs – VHmax for high
Static High Overshoot Max defines the standard high operating voltage. Dynamic High
Overshoot Max give you the ability to define an exception-based high overshoot. This
constraint requires both a time and voltage value, which you separate with a : character.

Figure A-37. Dynamic High Overshoot Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Example
0.4:5 (0.4 V for 5 ns)

420 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Related Topics
• Dynamic Low Overshoot Max
• Static High Overshoot Max
• Static Low Overshoot Max
• Defining Overshoot and Ringback Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 421


Constraint Reference
Nets

Ringback Margin High Min


Defines the minimum allowed difference between the high switching threshold (Vinh) and a
ringback wave. You can define Ringback Margin High Min individually, for differential pairs,
or for all nets of a constraint class.
Excessive ringback voltage can cause a device to momentarily switch out of the intended logic
state.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Related Topics
• Defining Overshoot and Ringback Constraints

422 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Ringback Margin Low Min


Defines the minimum allowed difference between the low switching threshold (Vinl) and a
ringback wave. You can define Ringback Margin Low Min individually, for differential pairs,
or for all nets of a constraint class.
Excessive ringback voltage can cause a device to momentarily switch out of the intended logic
state.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Related Topics
• Defining Overshoot and Ringback Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 423


Constraint Reference
Nets

Non-Monotonic Edge
Defines a non-monotonicity requirement for the rising edge, falling edge, or both signal edges.
You can define Non-Monotonic Edge individually, for differential pairs, or for all nets of a
constraint class. For example, when you set Non-Monotonic Edge to Rising, an error is reported
only if the rising signal edge is non-monotonic.
A monotonic signal edge progresses toward the opposite signal state without any digression
back to the original signal state.

Figure A-38. Non-Monotonic Edge

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Overshoot/Ringback and All

Constraint Type
Modifiable

Related Topics
• Defining Overshoot and Ringback Constraints

424 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Single Ended Characteristic Impedance Value


Defines the single-ended characteristic impedance for net traces. You can define Single Ended
Characteristic Impedance Value individually, for differential pairs, or for all nets of a constraint
class.
When available, the minimum and maximum actual values for this constraint are displayed in
the Actual cells to its right.

When you define this constraint at the differential pair level, and the individual net level for nets
that comprise a differential pair, in the case of a conflict, the value at the differential pair level is
used.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Specifying General Net Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 425


Constraint Reference
Nets

Single Ended Characteristic Impedance Tol


Introduces a tolerance range around Single Ended Characteristic Impedance Value. You can
define Single Ended Characteristic Impedance Tol individually, for differential pairs, or for all
nets of a constraint class.
For example, a tolerance of 5 ohms allows a Single Ended Characteristic Impedance Value of
40 ohms to tolerate a value between 35 ohms and 45 ohms.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Net Properties and All

Constraint Type
Modifiable

Related Topics
• Specifying General Net Constraints

426 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Simulated Delay Edge


Defines the simulated delay edge to constrain, which controls the switching time between signal
states. You can define Simulated Delay Edge individually, for differential pairs, for pin pairs, or
for all nets of a constraint class.

Figure A-39. Simulated Delay Edge

Simulated Delay Edge can be one of the following signal-edge selections:

• Rise — Constrain the rising time between low and high signal states.
• Fall — Constrain the falling time between high and low signal states.
• Rise:Fall — Constrain both rising and falling times between signal states with unique
minimum and maximum values.
Example: A value of 100:120 in the Simulated Delay Min field constrains the minimum
rising delay to 100, and the minimum falling delay to 120.
• Both — Constrain both rising and falling times, between signal states, with the same
minimum and maximum values.
When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Specifying Simulated Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 427


Constraint Reference
Nets

Simulated Delay Min


Defines the minimum acceptable simulated delay for the Simulated Delay Edge value (for
example, Rise or Fall). You can define Simulated Delay Min individually, for differential pairs,
for pin pairs, or for all nets of a constraint class.
When Simulated Delay Edge is set to Rise:Fall, separate the rising and falling minimums with a
: character. To use the same minimum value for each switching delay, enter a single value. After
you press Enter, Constraint Manager completes the constraint value by duplicating the value
you entered and inserting a colon between them.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Edge
• Specifying Simulated Delay Rules for Nets

428 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Simulated Delay Max


Defines the maximum acceptable simulated delay for the Simulated Delay Edge value (for
example, Rise:Fall or Both). You can define Simulated Delay Max individually, for differential
pairs, for pin pairs, or for all nets of a constraint class.
When Simulated Delay Edge is set to Rise:Fall, separate the rising and falling maximums with a
: character. To use the same maximum value for each switching delay, enter a single value.
After you press Enter, Constraint Manager completes the constraint value by duplicating the
value you entered and inserting a colon between them.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Edge
• Specifying Simulated Delay Rules for Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 429


Constraint Reference
Nets

Simulated Delay Max Range


Defines a maximum acceptable range of difference between Simulated Delay Actual Min and
Simulated Delay Actual Max for the Simulated Delay Edge value (for example, Fall or Both).
You can define Simulated Delay Max Range individually, for differential pairs, for pin pairs, or
for all nets of a constraint class.
You can define this constraint with or without defined Simulated Delay Min and Simulated
Delay Max constraints. When Simulated Delay Edge is set to Rise:Fall, separate the rising and
falling maximum ranges with a : character.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Edge
• Specifying Simulated Delay Rules for Nets

430 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Simulated Delay Match To


Defines the hierarchical level of matching for the Simulated Delay Match constraint. You can
match to the constraint class, net, or pin-pair level. You can define Simulated Delay Match To
individually, for differential pairs, for pin pairs, or for all nets of a constraint class.
When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Match
• Matching Delay or Length Rules Among Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 431


Constraint Reference
Nets

Simulated Delay Match


Defines the electrical net, pin pair, or constraint class to which to match the Simulated Delay
constraints (for example, Simulated Delay Edge, Simulated Delay Min, and Simulated Delay
Max). You can define Simulated Delay Match individually, for differential pairs, for pin pairs,
or for all nets of a constraint class.
When matching a net to a constraint class that has unique Simulated Delay constraints for each
net, the mean of the delay range for nets in the constraint class is used as the matching simulated
delay. For example, a constraint class contains three nets with unique Simulated Delay Min
constraints of 100, 115, and 145. When assigning this constraint class to a net, the average value
of 120 is used for minimum delay.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Match To
• Simulated Delay Offset
• Simulated Delay Tol
• Matching Delay or Length Rules Among Nets

432 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Simulated Delay Offset


Introduces a positive or negative offset (for example, 50 ns or -50 ns) from Simulated Delay
Min and Simulated Delay Max when matching the simulated delay of an electrical net or
constraint class (Simulated Delay Match). You can define Simulated Delay Offset individually,
for differential pairs, for pin pairs, or for all nets of a constraint class.
This offset is used for all edge rates constrained through Simulated Delay Edge of the matched
net or constraint class.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Match
• Simulated Delay Max
• Simulated Delay Min
• Simulated Delay Tol
• Matching Delay or Length Rules Among Nets

Constraint Manager Users Manual, X-ENTP VX.1.1 433


Constraint Reference
Nets

Simulated Delay Tol


Introduces a tolerance range (for example, 5 ns) around Simulated Delay Min and Simulated
Delay Max when matching the simulated delay of an electrical net or constraint class
(Simulated Delay Match). You can define Simulated Delay Tol individually, for differential
pairs, for pin pairs, or for all nets of a constraint class.
This tolerance is used for all edge rates constrained through Simulated Delay Edge of the
matched net or constraint class.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Simulated Delays and All

Constraint Type
Modifiable

Related Topics
• Simulated Delay Match
• Simulated Delay Max
• Simulated Delay Min
• Simulated Delay Offset
• Matching Delay or Length Rules Among Nets

434 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Differential Pair Tol Max


Defines the maximum allowed difference in time of flight delay or length between electrical
nets in a differential pair. You can define Differential Pair Tol Max individually for each
differential pair.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
5 ns

Related Topics
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 435


Constraint Reference
Nets

Differential Pair Phase Tol Max


Defines the maximum allowed difference in length between two coupled segments of a
differential pair. You can define Differential Pair Phase Tol Max individually for each
differential pair and at the constraint class level.

Figure A-40. Differential Pair Phase Tol Max

In the above illustration, the legs of the differential pair start out in phase. One leg then becomes
longer for an allowed amount (defined through this constraint). Eventually that amount is
exceeded, as indicated above in red after point A, resulting with a hazard. It is important to note
that although the legs of the differential pair are in phase from beginning to end, the coupled
segments of the pair are not.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
50 th

436 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Related Topics
• Phase Tuning Differential Pairs in PCB Routing Solutions Guide
• Differential Pair Phase Tol Distance Max
• Differential Pair Phase Tol Actual
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 437


Constraint Reference
Nets

Differential Pair Phase Tol Distance Max


Defines the maximum allowed distance that a coupled segment of a differential pair can be
when the legs of the differential pair are out of phase. You can define Differential Pair Phase
Tol Distance Max individually for each differential pair and at the constraint class level.

Figure A-41. Differential Pair Phase Tol Distance Max

In the above illustration, this constraint allows for the legs of the differential pair to not be in
phase up to a certain point. Eventually, that distance is exceeded, as indicated above in red after
point A, resulting with a hazard. It is important to note that although the legs of the differential
pair are in phase from beginning to end, the coupled segments of the pair are not.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
500 th

438 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Related Topics
• Phase Tuning Differential Pairs in PCB Routing Solutions Guide
• Differential Pair Tol Max
• Differential Pair Phase Tol Actual
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 439


Constraint Reference
Nets

Differential Pair Phase Tol Actual


Indicates whether both Differential Pair Phase Tol Max and Differential Pair Phase Tol
Distance Max constraints are being exceeded. This actual only shows the word “Violation” if
both constraints are exceeded.
Note
This cell uses the most recent actuals data to determine if there is a violation. For this
reason, you must make sure that you synchronize your Constraint Manager changes with
layout using the rightmost indicator light in layout (it is amber when there are changes),
and then update actuals in Constraint Manager. Otherwise, there may be violations that
are not displayed until the next time you launch the tool. Conversely, old violations that
are no longer relevant may still be displayed when the actuals data is not up to date.

For information about precisely where along the differential pair the consttraints are is being
exceeded, refer to the Hazards system of your layout software.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Example
No Violation

Related Topics
• Phase Tuning Differential Pairs in PCB Routing Solutions Guide
• Differential Pair Tol Max
• Differential Pair Phase Tol Distance Max
• Assigning Rules to Differential Pairs

440 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Convergence Tolerance Max


Defines the maximum allowed difference in trace length from pads to the point where traces
start routing differentially at the Differential Spacing constraint. You can define Convergence
Tolerance Max individually for each differential pair.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Figure A-42. Convergence Tolerance Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
500 mil

Related Topics
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 441


Constraint Reference
Nets

Distance to Convergence Max


Defines the maximum distance that differential traces are allowed to route before they converge
as a differential pair. The distance value is the combination of segment lengths. Convergence is
met when traces start routing at the Differential Spacing constraint.You can define Distance to
Convergence Max individually for each differential pair and at the constraint class level.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Figure A-43. Distance to Convergence Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
5000 mil

Related Topics
• Assigning Rules to Differential Pairs

442 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Separation Distance Max


Defines the maximum allowed distance that differential traces are allowed to route at a spacing
greater or less than the Differential Spacing constraint. You can define Separation Distance
Max individually for each differential pair.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Figure A-44. Separation Distance Max

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Example
200 mil

Related Topics
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 443


Constraint Reference
Nets

Differential Spacing
Displays the required parallel distance between trace segments that comprise a differential pair.
When separate spacing values are defined for each board layer, Constraint Manager displays the
range of values as a colon-separated list. For example, "5:10" indicates a range of values where
5 is the smallest value and 10 is the largest value.

Figure A-45. Differential Spacing

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Reference

Example
30 mil

Related Topics
• Differential Spacing
• Assigning Rules to Differential Pairs

444 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Differential Impedance Target


Defines the target differential impedance. You can define this constraint for differential pairs.
When available, the minimum and maximum actual values for this constraint are displayed in
the Actual cells to its right.

If this constraint can not be met, Differential Spacing is used. Currently, routers do not obey
Differential Impedance Target, but Hazards displays violations.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported by Hazards.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Related Topics
• Differential Impedance Tolerance
• Differential Spacing
• Assigning Rules to Differential Pairs

Constraint Manager Users Manual, X-ENTP VX.1.1 445


Constraint Reference
Nets

Differential Impedance Tolerance


Introduces a tolerance range around Differential Impedance Target. You can define this
constraint for differential pairs.
If this constraint can not be met, Differential Spacing is used. For example, to allow a 5 ohm
tolerance range against a Differential Impedance Target value of 25 ohms, enter 5. This
tolerance value specifies an acceptable impedance range of 20 to 30 ohms.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


Differential Pair Properties and All

Constraint Type
Modifiable

Related Topics
• Differential Impedance Target
• Differential Spacing
• Assigning Rules to Differential Pairs

446 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

I/O Standard
Defines the technology standard for an FPGA signal net. You can define I/O Standard
individually, or for all nets of a constraint class.
In xDX I/O Designer, you can set this constraint through the Signals List or Pins List by
modifying the I/O Standard attribute.

When you create a constraint template, this constraint is included.

Nets Spreadsheet Group


I/O and All

Constraint Type
Modifiable

Example
PCI

Related Topics
• Modifying xDX I/O Designer FPGA Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 447


Constraint Reference
Nets

Power Net Constraints Supply Voltage


Defines the operating voltage for a power-supply net. You can define Power Net Constraints
Supply Voltage individually for each power-supply net.
Note
To define or use this constraint, you must enable the Power Net constraint for the net.

Nets Spreadsheet Group


Power Nets and All

Constraint Type
Modifiable

Example
5V

Related Topics
• Power Net
• Analog
• Power-Supply Net and Constraint Definition

448 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Power Net Constraints Max Voltage Drop


Defines the maximum acceptable decrease in voltage from Power Net Constraints Supply
Voltage. You can define Power Net Constraints Max Voltage Drop individually for each power-
supply net or for all power-supply nets in a constraint class.

Nets Spreadsheet Group


Power Nets and All

Constraint Type
Modifiable

Example
0.05 V

Related Topics
• Power Net Constraints Supply Voltage
• Power Net
• Analog
• Power-Supply Net and Constraint Definition

Constraint Manager Users Manual, X-ENTP VX.1.1 449


Constraint Reference
Nets

Power Net Constraints Max Current Density


Defines the maximum acceptable current that can flow across a power-supply net structure
(such as an area fill or trace). You can define Power Net Constraints Max Current Density
individually for each power-supply net or for all power-supply nets in a constraint class.

Nets Spreadsheet Group


Power Nets and All

Constraint Type
Modifiable

Example
10 mA/th^2

Related Topics
• Power Net
• Analog
• Power-Supply Net and Constraint Definition

450 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Nets

Power Net Constraints Max Via Current


Defines the maximum acceptable current for vias connected to power-supply nets. You can
define Power Net Constraints Max Via Current individually for each power-supply net or for all
power-supply nets in a constraint class.

Nets Spreadsheet Group


Power Nets and All

Constraint Type
Modifiable

Example
1A

Related Topics
• Power Net
• Analog
• Power-Supply Net and Constraint Definition

Constraint Manager Users Manual, X-ENTP VX.1.1 451


Constraint Reference
Parts

Parts
Refer to the part constraint reference topics that follow. These constraints are accessible from
the Parts spreadsheet page.

Tip: For a quick reference on these constraints, refer to “Parts Summary” on page 48.

452 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Hierarchical Path
Displays the hierarchical component path, when applicable.

Constraint Type
Reference

Constraint Manager Users Manual, X-ENTP VX.1.1 453


Constraint Reference
Parts

Part Number
Displays the part number for a design component.
When you create a constraint template, this constraint is included.

Constraint Type
Reference

454 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Qty
Displays the number of times a part is used throughout your design.

Constraint Type
Reference

Constraint Manager Users Manual, X-ENTP VX.1.1 455


Constraint Reference
Parts

Part Type
Displays the part-type value associated with a design component.

Constraint Type
Reference

456 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Series
Defines whether a series-class component (for example, resistor) should actually be considered
a series element (“connected in series”), and therefore not used for electrical net generation.
You can define Series for parts and part instances.

Tip: You can also modify the series specification for a part instance from the Nets tab of
the spreadsheet. To do so, expand a physical net, right-click a pin instance (for example,
R1-1), and then click Make series or Make non-series. This change affects only the part
instance.

When an extensive electrical net includes other electrical nets that should not stay grouped into
the top-level, extensive electrical net, you can disable the Series checkbox of any
connecting/shared components to separate the electrical nets of interest. A common reason to do
this is when you need to define two electrical nets as a differential pair for the purpose of
constraint definition, but they do not show up as independent electrical nets (or a pre-defined
differential pair) because of their association with the comprehensive electrical net (for
example, power net).

For example, if there is a missing differential pair, Constraint Manager might not recognize a
differential pair that shares a series discrete component. Instead, the tool interprets the design
methodology of the net as an electrical net("^^^"). To change this recognition, you would
uncheck the Series checkbox, and then automatically or manually define the differential pair.

Constraint Type
Modifiable

Constraint Manager Users Manual, X-ENTP VX.1.1 457


Constraint Reference
Parts

IBIS Component Name


Defines the IBIS model used for a part. You can define IBIS Component Name individually, or
for all instances of a part.
IBIS models contain the greatest amount of part detail, including package information for each
pin, and represent parts most accurately. Constraint Manager uses your design information to
assign a default value to this cell. In most cases it will be correct, though, it is important to
understand the process that the tool uses to make the assignment. For more information, refer to
“Automatic Assignment of IBIS Models” on page 315.

Note
When both IBIS Component Name and Technology constraints are defined for a part,
IBIS Component Name is used.

Constraint Type
Modifiable

Related Topics
• Technology
• Assigning Models to Parts
• Overriding IBIS Values

458 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Technology
Defines the technology model used for a part. You can define Technology individually, or for
all instances of a part.
Because they model parts broadly by technological classification, technology models do not
provide as much detail as IBIS models. A common difference between technology models and
IBIS models is that technology models include information for each pin type, while IBIS
models include information for each pin.

Note
When both IBIS Component Name and Technology constraints are defined for a part,
IBIS Component Name is used.

Constraint Type
Modifiable

Related Topics
• IBIS Component Name
• Assigning Models to Parts

Constraint Manager Users Manual, X-ENTP VX.1.1 459


Constraint Reference
Parts

Value
Defines the electrical value associated with a discrete part, which can be resistance, inductance,
or capacitance. You can define Value individually or for all instances of a part.
The Value constraint can be used for two-pin resistors, capacitors, inductors, Thevenin and AC
terminators, and passive modules that contain multiple two-pin slots/gates.

Note
When assigning a Value constraint to a discrete part row, its reference designator (for
example, R, L, or C), must be defined. For more information, refer to “Specifying
Discrete Component Prefixes” on page 70.

Constraint Type
Modifiable

Related Topics
• Overriding IBIS Values

460 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

IBIS Pin Type


Displays the IBIS pin type for a pin instance.
IBIS Pin Type comes from library information in IBIS Component Name.

Constraint Type
Reference

Related Topics
• IBIS Component Name

Constraint Manager Users Manual, X-ENTP VX.1.1 461


Constraint Reference
Parts

Schematic Pin Type


Displays the schematic pin type for a pin instance.

Constraint Type
Reference

462 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Topology Pin Type


Defines the chaining pin type for a pin instance. Chaining pin types are source, load, or
terminator (S, L, or T).
When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Constraint Manager Users Manual, X-ENTP VX.1.1 463


Constraint Reference
Parts

Pin Package Length


Defines a pin's internal package length between the substrate and dielectric layers of the
component. You commonly use this constraint to define wire bonding length.
Pin package length constraints only affect net length values. The value you enter into this cell
must be less than 1968.5 th (5 cm). There is no default value for this constraint. When you do
not define it, pin package length is 0.

Having Constraint Manager Automatically Calculate Pin Package Length


When used in conjunction with Pin Package Delay, you can have Constraint Manager
automatically calculate Pin Package Length based on the pin package propagation delay (ns/th)
that is defined in your Constraint Manager settings. To do so, after you have defined Pin
Package Delay, right-click within the Pin Package Length cell, and then click Calculate
Length.

Supported Design Components


This constraint is supported during high-speed routing and in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Pin Package Delay
• Importing Pin Package Length Values

464 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Pin Package Delay


Defines a pin's internal package delay between the substrate and dielectric layers of the
component. You commonly use this constraint to define the delay for wire bonding.
Pin package delay constraints only affect net delay values. The value you enter into this cell
must be less than 0.35 ns. There is no default value for this constraint. When you do not define
it, pin package delay is 0.

Having Constraint Manager Automatically Calculate Pin Package Delay


When used in conjunction with Pin Package Length, you can have Constraint Manager
automatically calculate Pin Package Delay based on the pin package propagation delay (ns/th)
that is defined in your Constraint Manager settings. To do so, after you have defined Pin
Package Length, right-click within the Pin Package Delay cell, and then click Calculate Delay.

Supported Design Components


This constraint is supported during high-speed routing and in the AutoActive environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Pin Package Length
• Specifying Design Configuration Preferences

Constraint Manager Users Manual, X-ENTP VX.1.1 465


Constraint Reference
Parts

Thermal Power Dissipation


Defines a part’s power dissipation as a subset of the total amount of power needed to run the
component.

Constraint Type
Modifiable

Example
1W

Related Topics
• Defining Thermal Constraints for Parts

466 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Thermal Power Scaling Factor


Defines a part instance’s scaling factor with regard to power dissipation.

Constraint Type
Modifiable

Example
1

Related Topics
• Defining Thermal Constraints for Parts

Constraint Manager Users Manual, X-ENTP VX.1.1 467


Constraint Reference
Parts

Thermal Theta-jc
Defines a part’s junction-to-casing thermal resistance. This is also commonly referred to as die-
to-package heat resistance.

Constraint Type
Modifiable

Example
7 degC/watt

Related Topics
• Defining Thermal Constraints for Parts

468 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

Thermal Casing Temperature Limit


Defines a part’s maximum allowable temperature for the component casing or package.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Constraint Type
Modifiable

Example
60 degC

Related Topics
• Defining Thermal Constraints for Parts

Constraint Manager Users Manual, X-ENTP VX.1.1 469


Constraint Reference
Parts

Thermal Junction Temperature Limit


Defines a part’s maximum allowable temperature for component junctions. A component
junction is also commonly referred to as a die.
When available, the actual value for this constraint is displayed in the Actual cell to its right.

Constraint Type
Modifiable

Example
70 degC

Related Topics
• Defining Thermal Constraints for Parts

470 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Parts

I/O Standard
Displays the defined technology standard for an FPGA signal net. When on the Nets
spreadsheet page, you can define I/O Standard individually, or for all nets of a constraint class.
In xDX I/O Designer, you can set this constraint through the Signals List or Pins List by
modifying the I/O Standard attribute.

Constraint Type
Reference

Example
PCI

Related Topics
• Modifying xDX I/O Designer FPGA Constraints

Constraint Manager Users Manual, X-ENTP VX.1.1 471


Constraint Reference
Noise Rules

Noise Rules
Refer to the noise rule constraint reference topics that follow. These constraints are accessible
from the Noise Rules spreadsheet page.

Tip: For a quick reference on these constraints, refer to “Noise Rules Summary” on
page 50.

472 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Noise Rules

Noise Type
Defines the noise type for a specific parallelism rule and/or Crosstalk Max constraint and
Crosstalk Level.
Noise Type can be either net-to-net or class-to-class.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Differential Spacing
• Assigning Parallelism Rules to Nets and Constraint Classes
• Defining Crosstalk Rules for Nets and Constraint Classes

Constraint Manager Users Manual, X-ENTP VX.1.1 473


Constraint Reference
Noise Rules

Constraint Class or Electrical Net Name Victim


Defines the victim constraint class or electrical net of the aggressor-victim relationship.
You can use these relationships to define both crosstalk and parallelism rules.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Crosstalk Level
• Crosstalk Max
• Parallelism Rule
• Assigning Parallelism Rules to Nets and Constraint Classes
• Defining Crosstalk Rules for Nets and Constraint Classes

474 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Noise Rules

Constraint Class or Electrical Net Name Aggressor


Defines the aggressor constraint class or electrical net of the aggressor-victim relationship.
You can use these relationships to define both crosstalk and parallelism rules.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Crosstalk Level
• Crosstalk Max
• Parallelism Rule
• Assigning Parallelism Rules to Nets and Constraint Classes
• Defining Crosstalk Rules for Nets and Constraint Classes

Constraint Manager Users Manual, X-ENTP VX.1.1 475


Constraint Reference
Noise Rules

Parallelism Rule
Defines the parallelism rule for a class-to-class or net-to-net parallelism relationship.
The Parallelism Rule constraint can be one of the parallelism rules you defined previously. You
can also create a new parallelism rule by selecting New in the cell for this constraint.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Assigning Parallelism Rules to Nets and Constraint Classes

476 Constraint Manager Users Manual, X-ENTP VX.1.1


Constraint Reference
Noise Rules

Crosstalk Max
Defines the maximum acceptable crosstalk that a net or all nets within a constraint class can be
subjected to as victim nets. You can define Crosstalk Max individually or for all nets of a
constraint class.
Crosstalk results when another net (aggressor) causes electromagnetic interference on a victim
net. In the following illustration, the electromagnetic field produced by net A is strong enough
to interfere with net B.

Figure A-46. Crosstalk Max

In the Constraint Manager spreadsheet, you define aggressor nets using Constraint Class or
Electrical Net Name Aggressor. You define victim nets using Constraint Class or Electrical Net
Name Victim.

When you create a constraint template, this constraint is included.

Supported Design Components


This constraint is supported during high-speed routing and by Hazards in the AutoActive
environment.

For a definition of each supported design component, refer to “Supported Design Components”
on page 340.

Constraint Type
Modifiable

Related Topics
• Constraint Class or Electrical Net Name Aggressor
• Constraint Class or Electrical Net Name Victim
• Crosstalk Level
• Defining Crosstalk Rules for Nets and Constraint Classes

Constraint Manager Users Manual, X-ENTP VX.1.1 477


Constraint Reference
Noise Rules

Crosstalk Level
Defines the signal state of the victim net in a crosstalk relationship. Supported simulators like
HyperLynx use this constraint. Layout systems do not use this constraint.
You can define Crosstalk Level using one of the following choices:

• High & Low — Require Crosstalk Max to be met for both high and low signal states.
• High — The victim net is on (in its high state). The voltage level is at or above the high
threshold (for example, 5.1 V).
• Low — The victim net is off (in its low state). The voltage level is at or below the low
threshold (for example, 0.9 V).
• Tristate — Require Crosstalk Max to be met for just tristate signal states. During
tristate, the victim net is off, but a small voltage still flows from the receiver to ground
(for example, 0.5 V).
• High & Tristate — Require Crosstalk Max to be met for both high and tristate signal
states. During tristate, the victim net is off, but a small voltage still flows from the
receiver to ground (for example, 0.5 V).
• Low & Tristate — Require Crosstalk Max to be met for both low and tristate signal
states. During tristate, the victim net is off, but a small voltage still flows from the
receiver to ground (for example, 0.5 V).
• All — Require Crosstalk Max to be met for all signal states.
When you create a constraint template, this constraint is included.

Constraint Type
Modifiable

Related Topics
• Constraint Class or Electrical Net Name Aggressor
• Constraint Class or Electrical Net Name Victim
• Crosstalk Max
• Defining Crosstalk Rules for Nets and Constraint Classes

478 Constraint Manager Users Manual, X-ENTP VX.1.1


Appendix B
Command-Line Tools Reference

This section provides reference documentation for command-line tools that are available with
Constraint Manager. You use these tools to export, import, encrypt, and decrypt constraint data.

Table B-1. Conventions for Command-Line Syntax


Convention Example Usage
Bold cons2csv -import Bold font indicates a required
argument.
Normal cons2csv -export Normal font indicates an optional
argument.
Italic cons2csv -import -input file -prj Italic font indicates a user-supplied
.prj file argument.
{} cons2xml -export {-constempl | Brace enclose arguments to indicate
-pages list} grouping. Do not enter braces.
| csv2dat -input path {-decrypt | The vertical bar indicates an
-encrypt} -output path either/or choice between items. Do
not include the bar in the command.

cons2ascii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
cons2csv. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
cons2xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
csv2dat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
ImportPinPackageLengths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
ImportStk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488

Constraint Manager Users Manual, X-ENTP VX.1.1 479


Command-Line Tools Reference
cons2ascii

cons2ascii
Use to export Constraint Manager data in the encrypted ASCII format (.cs_).
Usage
..\SDD_HOME\common\<OS>\bin\cons2ascii -export -outputdir path -cns .cns file -prj .prj
file -snapshot name -topblock name
Arguments
• -export
Export argument.
• -outputdir path
Directory in which to place the exported constraint file.
• -cns .cns file
.cns file to use.
• -prj .prj file
.prj file for the design.
• -snapshot name
Snapshot name.
• -topblock name
Topblock name.
Description
This command exports the entire constraint set in encrypted ASCII format (.cs_). All arguments
for this command are required.

Tip: To determine the path to the iCDB database, snapshot name, topblock name, and
other similar information, you can use iCDB Server Manager. To access it, from the
Tools menu, click iCDB Server Manager.

Examples
cons2ascii -export -outputdir c:\OutDir -cns
c:\ee7.9.5\7.9.5EE\SDD_HOME\standard\ce_ee.cn
-prj c:\design\design.prj -snapshot DxD -topblock top

Related Topics
• Command-Line Tools Reference
• Exporting Constraints in Encrypted ASCII Format
• Decrypting and Encrypting Exported Constraint Data

480 Constraint Manager Users Manual, X-ENTP VX.1.1


Command-Line Tools Reference
cons2csv

cons2csv
Prerequisite: For this command to run, the design must show no problems in CES Diagnostics.
Use to export and import Constraint Manager data in the encrypted CSV format (.ecsv).
Note
To use encrypted CSV import, you must set an environment variable called
CESENG_IMPORTCSV_ENABLE to 1. Import is only supported in the Xpedition
Enterprise flow.

Usage
Export
..\SDD_HOME\common\<OS>\bin\cons2csv -export -prj .prj file -board name -snapshot name
-topblock name -frontend -output path -log path -pages -expact
Import
..\SDD_HOME\common\<OS>\bin\cons2csv -import -input file -prj .prj file -snapshot name
-topblock name -log path
Arguments
• -export
Export constraints argument. Export is the default mode for the command. As such, it is
does not require this argument for export.
• -import
Import constraints argument.
• -output file
Use only with the export argument. Directory and filename of exported constraint file(s).
When using the pages argument, this argument defines the suffix to use for each file. When
you do not use the pages argument, you should enter this argument as the full filename (for
example, c:\output\alltables.ecsv).
• -input file
Use only with the import argument. Directory and filename of the .ecsv file to import or
process.
• -prj .prj file
Directory and filename of .prj file.
• -board name
Export argument that is required if the design includes multiple boards.
• -snapshot name
Snapshot name. The command does not require this argument for export.

Constraint Manager Users Manual, X-ENTP VX.1.1 481


Command-Line Tools Reference
cons2csv

• -topblock name
Top block name. The command does not require this argument for export.
• -frontend
Export argument you use to export the front-end snapshot. By default, the command exports
the back-end snapshot.
• -log path
Use to create an export or import log file at the path you specify.
• -pages
Use with the export argument to create a separate .ecsv file for each table.
• -expact
Use to export the current set of actuals data (if available). Availability of actuals data
depends on whether you are exporting constraint data from the back-end snapshot, or if the
front-end snapshot includes an actuals side file.
Description
This command exports and imports constraint data in the encrypted CSV file format (.ecsv). If
exporting, you can choose to export all constraint data to a single file or multiple files.

Tip: To determine the path to the .prj file, snapshot name, topblock name, and other
similar information, you can use iCDB Server Manager. To access it, from the Tools
menu, click iCDB Server Manager.

Examples
Export
cons2csv -prj .\design.prj

Import
cons2csv -import -input c:\data\tables_Class2ClassClear.ecsv
-prj .\design.prj -snapshot DXD -topblock Schematic1

Related Topics
• Command-Line Tools Reference
• Exporting Constraints in Encrypted CSV Format
• Importing Constraints in Encrypted CSV Format
• Decrypting and Encrypting Exported Constraint Data
• Example CSV Files
• Guidelines for CSV Files

482 Constraint Manager Users Manual, X-ENTP VX.1.1


Command-Line Tools Reference
cons2xml

cons2xml
Use to export and import Constraint Manager data in the proprietary encrypted XML format
(.cts). You can also list detailed information about an iCDB database using this command.
Usage
Export
..\SDD_HOME\common\<OS>\bin\cons2xml -export -output path -icdb path -sn snapshot
-tb topblock -log path {-constempl | -pages list}
Import
..\SDD_HOME\common\<OS>\bin\cons2xml -import -input path -icdb path -sn snapshot
-tb topblock -log path
List
..\SDD_HOME\common\<OS>\bin\cons2xml -list -icdb path
Arguments
• -export
Export argument.
• -import
Import argument.
• -list
List argument. Provides detailed information about the iCDB database (for example,
snapshot names and block names).
• -output path
Use only with the export argument. Directory in which to place the exported constraint file.
• -input path
Use only with the import argument. Directory and filename of the .cts file to import.
• -icdb path
Path to the iCDB database.
• -sn snapshot
Snapshot name.
• -tb topblock
Top block name.
• -log path
Path to optional log file that can be created during import or export.

Constraint Manager Users Manual, X-ENTP VX.1.1 483


Command-Line Tools Reference
cons2xml

• {-constempl | -pages list}


Use with the export argument. Optionally, output just constraint template information or just
certain constraint information based on the following list of all available pages/constraint
data: CLASS_CLASS_RULE, ENET, LAYER, PACKAGE_CLEARANCE,
PARALLEL_RULE, PART, SCHEME_CLASS_LAYER, SCHEME_RULE_LAYER,
TOPOTMPL, ZAXIS_CLASS_CLASS_RULE, and ZAXIS_CLEARRULE.
Description
This command exports and imports constraint data in the proprietary encrypted XML (.cts)
format. You can also use it to list detailed information about an iCDB database (that you could
then use with the import or export functions of this command). When exporting, you can choose
which constraints/pages to include in the output file. When importing, all constraint data that
you exported to the file is imported back into Constraint Manager.

Tip: To determine the path to the iCDB database, snapshot name, topblock name, and
other similar information, you can use iCDB Server Manager. To access it, from the
Tools menu, click iCDB Server Manager.

Examples
Export
cons2xml -export -output c:\output\file.cts -icdb c:\mydesign\database
-sn Snapshot1 -tb Microtop -log c:\output\file_log.txt -pages ENET,PART

Import
cons2xml -import -input c:\files\file.cts -icdb c:\mydesign\database
-sn Snapshot1 -tb Microtop -log c:\files\file_log.txt

List
cons2xml -list -icdb c:\mydesign\database

Related Topics
• Command-Line Tools Reference
• Exporting Constraints in Encrypted XML Format
• Import of Constraints

484 Constraint Manager Users Manual, X-ENTP VX.1.1


Command-Line Tools Reference
csv2dat

csv2dat
Prerequisite: You must have a Constraint Encryption license. You can request this license free
of charge from the PCB Community: http://communities.mentor.com/mgcx/docs/DOC-
2533
Use to decrypt and encrypt data files exported from Constraint Manager. You can decrypt files
in encrypted ASCII (.cs_) format and encrypted CSV (.ecsv) format. You also use this
command to encrypt CSV files that you create from scratch into encrypted CSV (.ecsv) format.
Usage
..\SDD_HOME\common\<OS>\bin\csv2dat -input path {-decrypt | -encrypt} -output path
Arguments
• -input path
The path and filename of the file you want to process.
• {-decrypt | -encrypt}
Specifies whether you are decrypting or encrypting data. This argument is optional because
the command determines whether you want to encrypt or decrypt based on the extension of
the input file.
• -output path
The path and filename of the output file (.ecsv) you want to produce. If you do not specify
this argument, the command creates the file in the location of the input file.
Description
This command encrypts or decrypts a single file at a time. Upon completion, the command
outputs the location of the file it creates. The output file type is the opposite type of the input
file. For example, if you run csv2dat on an .ecsv file, the tool produces a .csv file.
Examples
Decrypt
csv2dat -input C:\files\design1_nets.ecsv

Encrypt CSV File


csv2dat -input C:\files\data.csv

Encrypt Text File


csv2dat -input C:\Files\design1_nets.txt

Related Topics
• Command-Line Tools Reference
• Decrypting and Encrypting Exported Constraint Data

Constraint Manager Users Manual, X-ENTP VX.1.1 485


Command-Line Tools Reference
ImportPinPackageLengths

ImportPinPackageLengths
Use to import values from a PinPkgLengths.txt side file.
Usage
..\SDD_HOME\common\<OS>\bin\ImportPinPackageLengths -icdb path -sn name -tb name
-ppl path -offline -zero_ppl -log path
Arguments
• -icdb path
Path to the iCDB database.
• -sn name
Snapshot name.
• -tb name
Topblock name.
• -ppl path
Path to a PinPkgLengths.txt side file
• -offline
Run import without an iCDB server.
• -zero_ppl
Sets values to 0 for any pin package lengths that are not specified in the side file. This only
applies to pins of part numbers defined in the side file. Otherwise, the existing values in
Constraint Manager are kept, when defined.
• -log path
Creates a log file at the specified path.
Description
This command imports Constraint Manager Parts page Pin Package Length constraint values
from a side file that you previously created or acquired. When a part number included in a side
file is missing definitions for one or more pins, you can use the zero_ppl argument to set Pin
Package Length to zero for those pins.

Tip: To determine the path to the iCDB database, snapshot name, topblock name, and
other similar information, you can use iCDB Server Manager. To access it, from the
Tools menu, click iCDB Server Manager.

Examples
ImportPinPackageLengths -icdb c:\micro_design\database -sn micro -tb top
-ppl c:\data\PinPkgLengths.txt

486 Constraint Manager Users Manual, X-ENTP VX.1.1


Command-Line Tools Reference
ImportPinPackageLengths

Related Topics
• Command-Line Tools Reference
• Importing Pin Package Length Values
• PinPkgLengths.txt File Format
• Pin Package Length

Constraint Manager Users Manual, X-ENTP VX.1.1 487


Command-Line Tools Reference
ImportStk

ImportStk
Use to import parameters of a board stackup into a front-end design or back-end design.
Usage
..\SDD_HOME\common\<OS>\bin\ImportStk -input path -prj path -board name -frontend
-log path
Arguments
• -input path
Location and filename of the .stk file.
• -prj path
Location and filename of the .prj file.
• -board name
Board name. This argument is required if multiple boards exist in the design.
• -frontend
Imports the .stk file into the front-end design. By default, the import affects the back-end
design.
• -log path
Creates a log file at the specified location.
Description
You can use HyperLynx to create stackup files (.stk) and then input their parameters into a
front-end or back-end design through the Constraint Manager ImportStk command. Constraint
Manager allows import of parameters in .stk files based on the following requirements:
• The design already has a defined stackup.
• The .stk file contains the same number of layers and layer types as the current stackup
for the design.
During an import, the command uses the following .stk file definitions:
• Basic — Er, layer name, thermal conductivity, thickness, and usage
• Dielectric — Loss tangent and technology
• Metal — Bulk resistivity and temperature coefficient
Examples
ImportStk -input c:\stackups\16_layer.stk
-prj c:\my_designs\design1\design1.prj

Related Topics
• Command-Line Tools Reference

488 Constraint Manager Users Manual, X-ENTP VX.1.1


Command-Line Tools Reference
ImportStk

Constraint Manager Users Manual, X-ENTP VX.1.1 489


Command-Line Tools Reference
ImportStk

490 Constraint Manager Users Manual, X-ENTP VX.1.1


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Index

Hierarchy, 156
Index

— Symbols — Constraint Class or Electrical Net Name


(Minimum) scheme, 177 Aggressor, 475
# Pins, 384, 385, 448, 449, 450, 451 Constraint Class or Electrical Net Name
# Vias Max, 395 Victim, 474
— Numerics — Constraint Manager, 55
2-pin, 70 Constraint quick-reference, 32
Constraint Reference, 339
—A— Constraint template
Analog, 386 Apply, 282
Assigning, 194 Convergence Tolerance Max, 441
Auto bus, 159 Cross probing, 66
Cross select, 66
—B— Crosstalk Level, 478
Back-end, 331
Crosstalk Max, 477
Before you begin, 57
Crosstalk rules, 267
Bus, 387
Customization, 80
Bus constraint classes, 159
—D—
—C— Default
Capture net constraints, 279
Rules, 175
Clearance rule sets
Delay
Assign, 191
Calculations, 229
Create, 182
Default value, 229
Clearances, 352
Delete
Colors, 74
Constraint class, 163
Command quick-reference, 15
Net class, 169
Commands, 15
Design
Component pin pairs, 220
Preferences, 68
Concurrent design, 56
Reuse, 288
Constraint
Setup, 68
Classes, 155
Design-flow manuals, 332
Groups, 124
Differential Impedance Target, 445
Templates, 279
Differential Impedance Tolerance, 446
Constraint class
Differential pair
Add nets, 158
Assign rules, 275
Auto bus, 159
Define automatically, 272
Copy, 162
Define manually, 271
Create, 155
Diff_Pin, 278
Delete, 163
Differential Spacing, 351, 444

Constraint Manager Users Manual, X-ENTP VX.1.1 491


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Discrete component prefixes, 70 Preferences, 68


Display Global rules, 173
Settings, 68 GUI quick-reference, 21
Units, 75
Distance to Convergence Max, 442 —I—
Dynamic High Overshoot Max, 420 I/O Designer I/O Standard, 447, 471
Dynamic Low Overshoot Max, 418 IBIS Component Name, 458
IBIS Pin Type, 461
—E— Import constraints, 295
EBD pin pairs, 224 Improve design accuracy, 55
Electrical Index (Clearances), 353
Preferences, 69 Index (Trace and Via Properties), 342
Rules, 155 Index (Z-Axis Clearances), 376
Units, 77 Intellectual property, 55
Embedded Resistor to Pad, 368 Interdigitated capacitors, 189
Embedded Resistor to Resistor, 370 Interface quick-reference, 21
Embedded Resistor to Trace, 367
Embedded Resistor to Via, 369 —L—
Embedded resistors, 188 Layout, 331
Engineering format, 78 Length or TOF Delay Delta, 410
EP Mask to Pad, 372 Length or TOF Delay Manhattan, 406
EP Mask to Resistor, 374 Length or TOF Delay Match, 408
EP Mask to Trace, 371 Length or TOF Delay Max, 404
EP Mask to Via, 373 Length or TOF Delay Min, 402
Export Length or TOF Delay Min Length, 407
Constraint Templates, 288 Length or TOF Delay Range, 411
Constraints, 291, 294 Length or TOF Delay Tol, 409
Length or TOF Delay Type, 401
—F—
Filters, 120, 124 —M—
Find, 119 Manhattan length, 230
Fonts, 74 Mask, 190
Formulas, 237 Matching delay, 231
Formulas Formula, 412 Max Restricted Layer Length External, 396
Formulas Violation, 413 Max Restricted Layer Length Internal, 397
FPGA constraints, 257 Mezzanine capacitors, 189
From To Constraints Layer, 398 Monotonic Edge, 424
From To Constraints Trace Width, 399 —N—
From To Constraints Z0, 400 Navigator, 81
From-tos, 211 Net Class, 388, 389, 390
Front-end, 56 Net class
—G— Add nets, 167
General Copy, 169
Clearance rules, 171 Create, 165
Options, 68 Delete, 169
Net line ordering, 211

492 Constraint Manager Users Manual, X-ENTP VX.1.1


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Nets, 382 Schematic Pin Type, 462


Noise Rules, 472 Screen-printed capacitors, 189
Noise Type, 473 Search, 119
Notation, 77 Separation Distance Max, 443
Series, 457
—O— Settings, 68
Options, 68 Signal edge rates, 245
Output, 81 Simulated Delay Edge, 427
Overshoot, 248 Simulated Delay Match, 432
—P— Simulated Delay Match To, 431
Pad to Plane, 362 Simulated Delay Max, 429
Pad to Via, 361 Simulated Delay Max Range, 430
Pair Tol Max, 435 Simulated Delay Min, 428
Parallelism, 261 Simulated Delay Offset, 433
Parallelism mode, 68 Simulated delay rules, 245
Parallelism Rule, 476 Simulated Delay Tol, 434
Parallelism rules, 262 Single Ended Characteristic Impedance Tol,
Assign, 264 426
Parallelism rules hierarchy, 261 Single Ended Characteristic Impedance Value,
Part Number, 454 425
Part Type, 456 SMD Pad to Trace, 359, 381
Parts, 452 SMD Pad to Via, 365
Pin Package Length, 464 Spreadsheet pages, 109
Pin pairs, 211 Stackup, 311
Plane to Plane, 366 Stackup layers, 262
Precision, 75 Static High Overshoot Max, 416
Production mask, 190 Static Low Overshoot Max, 414
Static overshoot, 248
—Q— Status Bar, 81
Qty, 455 Stub Length Max, 394
—R— —T—
Reuse, 288 Technology, 459
Ringback, 248 Thermal Casing Temperature Limit, 469
Ringback Margin High Min, 422 Thermal Junction Temperature Limit, 470
Ringback Margin Low Min, 423 Thermal Power Dissipation, 466
Roll back, 149 Thermal Power Scaling Factor, 467
Route, 345 Thermal Theta-jc, 468
Rules, 261 Thick-film resistors, 188
Thin-film resistors, 188
—S— Toolbars, 81
Same constraints
Topology Ordered, 393
Electrical rules, 162
Topology Pin Type, 463
Physical rules, 169
Topology Type, 391
Save, 152
Trace and Via Properties, 341
Schematic, 331
Trace and via rules, 177

Constraint Manager Users Manual, X-ENTP VX.1.1 493


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Trace to Plane, 358, 380


Trace to Trace, 355, 377
Trace to Via, 357, 379
Trace Width Expansion, 348
Trace Width Minimum, 346
Trace Width Typical, 347
Type, 343, 354
Typical Impedance, 349
—U—
User interface quick reference, 21
—V—
Validate constraints, 141
Value, 460
Via Assignments, 344
Via rules, 177
Via to Plane, 364
Via to Via, 363
—W—
Window customization, 80
—Z—
Z-axis clearance rule sets
Assign, 194
Z-Axis Clearances, 375

494 Constraint Manager Users Manual, X-ENTP VX.1.1


End-User License Agreement
The latest version of the End-User License Agreement is available on-line at:
www.mentor.com/eula

IMPORTANT INFORMATION

USE OF ALL SOFTWARE IS SUBJECT TO LICENSE RESTRICTIONS. CAREFULLY READ THIS LICENSE
AGREEMENT BEFORE USING THE PRODUCTS. USE OF SOFTWARE INDICATES CUSTOMER’S COMPLETE
AND UNCONDITIONAL ACCEPTANCE OF THE TERMS AND CONDITIONS SET FORTH IN THIS AGREEMENT.
ANY ADDITIONAL OR DIFFERENT PURCHASE ORDER TERMS AND CONDITIONS SHALL NOT APPLY.

END-USER LICENSE AGREEMENT (“Agreement”)

This is a legal agreement concerning the use of Software (as defined in Section 2) and hardware (collectively “Products”)
between the company acquiring the Products (“Customer”), and the Mentor Graphics entity that issued the corresponding
quotation or, if no quotation was issued, the applicable local Mentor Graphics entity (“Mentor Graphics”). Except for license
agreements related to the subject matter of this license agreement which are physically signed by Customer and an authorized
representative of Mentor Graphics, this Agreement and the applicable quotation contain the parties’ entire understanding
relating to the subject matter and supersede all prior or contemporaneous agreements. If Customer does not agree to these
terms and conditions, promptly return or, in the case of Software received electronically, certify destruction of Software and all
accompanying items within five days after receipt of Software and receive a full refund of any license fee paid.

1. ORDERS, FEES AND PAYMENT.

1.1. To the extent Customer (or if agreed by Mentor Graphics, Customer’s appointed third party buying agent) places and Mentor
Graphics accepts purchase orders pursuant to this Agreement (each an “Order”), each Order will constitute a contract between
Customer and Mentor Graphics, which shall be governed solely and exclusively by the terms and conditions of this Agreement,
any applicable addenda and the applicable quotation, whether or not those documents are referenced on the Order. Any
additional or conflicting terms and conditions appearing on an Order or presented in any electronic portal or automated order
management system, whether or not required to be electronically accepted, will not be effective unless agreed in writing and
physically signed by an authorized representative of Customer and Mentor Graphics.

1.2. Amounts invoiced will be paid, in the currency specified on the applicable invoice, within 30 days from the date of such invoice.
Any past due invoices will be subject to the imposition of interest charges in the amount of one and one-half percent per month
or the applicable legal rate currently in effect, whichever is lower. Prices do not include freight, insurance, customs duties, taxes
or other similar charges, which Mentor Graphics will state separately in the applicable invoice. Unless timely provided with a
valid certificate of exemption or other evidence that items are not taxable, Mentor Graphics will invoice Customer for all
applicable taxes including, but not limited to, VAT, GST, sales tax, consumption tax and service tax. Customer will make all
payments free and clear of, and without reduction for, any withholding or other taxes; any such taxes imposed on payments by
Customer hereunder will be Customer’s sole responsibility. If Customer appoints a third party to place purchase orders and/or
make payments on Customer’s behalf, Customer shall be liable for payment under Orders placed by such third party in the event
of default.

1.3. All Products are delivered FCA factory (Incoterms 2010), freight prepaid and invoiced to Customer, except Software delivered
electronically, which shall be deemed delivered when made available to Customer for download. Mentor Graphics retains a
security interest in all Products delivered under this Agreement, to secure payment of the purchase price of such Products, and
Customer agrees to sign any documents that Mentor Graphics determines to be necessary or convenient for use in filing or
perfecting such security interest. Mentor Graphics’ delivery of Software by electronic means is subject to Customer’s provision
of both a primary and an alternate e-mail address.

2. GRANT OF LICENSE. The software installed, downloaded, or otherwise acquired by Customer under this Agreement, including any
updates, modifications, revisions, copies, documentation and design data (“Software”) are copyrighted, trade secret and confidential
information of Mentor Graphics or its licensors, who maintain exclusive title to all Software and retain all rights not expressly granted
by this Agreement. Mentor Graphics grants to Customer, subject to payment of applicable license fees, a nontransferable, nonexclusive
license to use Software solely: (a) in machine-readable, object-code form (except as provided in Subsection 5.2); (b) for Customer’s
internal business purposes; (c) for the term of the license; and (d) on the computer hardware and at the site authorized by Mentor
Graphics. A site is restricted to a one-half mile (800 meter) radius. Customer may have Software temporarily used by an employee for
telecommuting purposes from locations other than a Customer office, such as the employee’s residence, an airport or hotel, provided
that such employee’s primary place of employment is the site where the Software is authorized for use. Mentor Graphics’ standard
policies and programs, which vary depending on Software, license fees paid or services purchased, apply to the following: (a)
relocation of Software; (b) use of Software, which may be limited, for example, to execution of a single session by a single user on the
authorized hardware or for a restricted period of time (such limitations may be technically implemented through the use of
authorization codes or similar devices); and (c) support services provided, including eligibility to receive telephone support, updates,
modifications, and revisions. For the avoidance of doubt, if Customer provides any feedback or requests any change or enhancement to
Products, whether in the course of receiving support or consulting services, evaluating Products, performing beta testing or otherwise,
any inventions, product improvements, modifications or developments made by Mentor Graphics (at Mentor Graphics’ sole discretion)
will be the exclusive property of Mentor Graphics.

3. ESC SOFTWARE. If Customer purchases a license to use development or prototyping tools of Mentor Graphics’ Embedded Software
Channel (“ESC”), Mentor Graphics grants to Customer a nontransferable, nonexclusive license to reproduce and distribute executable
files created using ESC compilers, including the ESC run-time libraries distributed with ESC C and C++ compiler Software that are
linked into a composite program as an integral part of Customer’s compiled computer program, provided that Customer distributes
these files only in conjunction with Customer’s compiled computer program. Mentor Graphics does NOT grant Customer any right to
duplicate, incorporate or embed copies of Mentor Graphics’ real-time operating systems or other embedded software products into
Customer’s products or applications without first signing or otherwise agreeing to a separate agreement with Mentor Graphics for such
purpose.

4. BETA CODE.

4.1. Portions or all of certain Software may contain code for experimental testing and evaluation (which may be either alpha or beta,
collectively “Beta Code”), which may not be used without Mentor Graphics’ explicit authorization. Upon Mentor Graphics’
authorization, Mentor Graphics grants to Customer a temporary, nontransferable, nonexclusive license for experimental use to
test and evaluate the Beta Code without charge for a limited period of time specified by Mentor Graphics. Mentor Graphics may
choose, at its sole discretion, not to release Beta Code commercially in any form.

4.2. If Mentor Graphics authorizes Customer to use the Beta Code, Customer agrees to evaluate and test the Beta Code under normal
conditions as directed by Mentor Graphics. Customer will contact Mentor Graphics periodically during Customer’s use of the
Beta Code to discuss any malfunctions or suggested improvements. Upon completion of Customer’s evaluation and testing,
Customer will send to Mentor Graphics a written evaluation of the Beta Code, including its strengths, weaknesses and
recommended improvements.

4.3. Customer agrees to maintain Beta Code in confidence and shall restrict access to the Beta Code, including the methods and
concepts utilized therein, solely to those employees and Customer location(s) authorized by Mentor Graphics to perform beta
testing. Customer agrees that any written evaluations and all inventions, product improvements, modifications or developments
that Mentor Graphics conceived or made during or subsequent to this Agreement, including those based partly or wholly on
Customer’s feedback, will be the exclusive property of Mentor Graphics. Mentor Graphics will have exclusive rights, title and
interest in all such property. The provisions of this Subsection 4.3 shall survive termination of this Agreement.

5. RESTRICTIONS ON USE.

5.1. Customer may copy Software only as reasonably necessary to support the authorized use. Each copy must include all notices
and legends embedded in Software and affixed to its medium and container as received from Mentor Graphics. All copies shall
remain the property of Mentor Graphics or its licensors. Customer shall maintain a record of the number and primary location of
all copies of Software, including copies merged with other software, and shall make those records available to Mentor Graphics
upon request. Customer shall not make Products available in any form to any person other than Customer’s employees and on-
site contractors, excluding Mentor Graphics competitors, whose job performance requires access and who are under obligations
of confidentiality. Customer shall take appropriate action to protect the confidentiality of Products and ensure that any person
permitted access does not disclose or use Products except as permitted by this Agreement. Customer shall give Mentor Graphics
written notice of any unauthorized disclosure or use of the Products as soon as Customer becomes aware of such unauthorized
disclosure or use. Except as otherwise permitted for purposes of interoperability as specified by applicable and mandatory local
law, Customer shall not reverse-assemble, reverse-compile, reverse-engineer or in any way derive any source code from
Software. Log files, data files, rule files and script files generated by or for the Software (collectively “Files”), including without
limitation files containing Standard Verification Rule Format (“SVRF”) and Tcl Verification Format (“TVF”) which are Mentor
Graphics’ trade secret and proprietary syntaxes for expressing process rules, constitute or include confidential information of
Mentor Graphics. Customer may share Files with third parties, excluding Mentor Graphics competitors, provided that the
confidentiality of such Files is protected by written agreement at least as well as Customer protects other information of a
similar nature or importance, but in any case with at least reasonable care. Customer may use Files containing SVRF or TVF
only with Mentor Graphics products. Under no circumstances shall Customer use Products or Files or allow their use for the
purpose of developing, enhancing or marketing any product that is in any way competitive with Products, or disclose to any
third party the results of, or information pertaining to, any benchmark.

5.2. If any Software or portions thereof are provided in source code form, Customer will use the source code only to correct software
errors and enhance or modify the Software for the authorized use. Customer shall not disclose or permit disclosure of source
code, in whole or in part, including any of its methods or concepts, to anyone except Customer’s employees or on-site
contractors, excluding Mentor Graphics competitors, with a need to know. Customer shall not copy or compile source code in
any manner except to support this authorized use.

5.3. Customer may not assign this Agreement or the rights and duties under it, or relocate, sublicense, or otherwise transfer the
Products, whether by operation of law or otherwise (“Attempted Transfer”), without Mentor Graphics’ prior written consent and
payment of Mentor Graphics’ then-current applicable relocation and/or transfer fees. Any Attempted Transfer without Mentor
Graphics’ prior written consent shall be a material breach of this Agreement and may, at Mentor Graphics’ option, result in the
immediate termination of the Agreement and/or the licenses granted under this Agreement. The terms of this Agreement,
including without limitation the licensing and assignment provisions, shall be binding upon Customer’s permitted successors in
interest and assigns.

5.4. The provisions of this Section 5 shall survive the termination of this Agreement.

6. SUPPORT SERVICES. To the extent Customer purchases support services, Mentor Graphics will provide Customer with updates and
technical support for the Products, at the Customer site(s) for which support is purchased, in accordance with Mentor Graphics’ then
current End-User Support Terms located at http://supportnet.mentor.com/supportterms.

7. LIMITED WARRANTY.

7.1. Mentor Graphics warrants that during the warranty period its standard, generally supported Products, when properly installed,
will substantially conform to the functional specifications set forth in the applicable user manual. Mentor Graphics does not
warrant that Products will meet Customer’s requirements or that operation of Products will be uninterrupted or error free. The
warranty period is 90 days starting on the 15th day after delivery or upon installation, whichever first occurs. Customer must
notify Mentor Graphics in writing of any nonconformity within the warranty period. For the avoidance of doubt, this warranty
applies only to the initial shipment of Software under an Order and does not renew or reset, for example, with the delivery of (a)
Software updates or (b) authorization codes or alternate Software under a transaction involving Software re-mix. This warranty
shall not be valid if Products have been subject to misuse, unauthorized modification, improper installation or Customer is not
in compliance with this Agreement. MENTOR GRAPHICS’ ENTIRE LIABILITY AND CUSTOMER’S EXCLUSIVE
REMEDY SHALL BE, AT MENTOR GRAPHICS’ OPTION, EITHER (A) REFUND OF THE PRICE PAID UPON
RETURN OF THE PRODUCTS TO MENTOR GRAPHICS OR (B) MODIFICATION OR REPLACEMENT OF THE
PRODUCTS THAT DO NOT MEET THIS LIMITED WARRANTY. MENTOR GRAPHICS MAKES NO WARRANTIES
WITH RESPECT TO: (A) SERVICES; (B) PRODUCTS PROVIDED AT NO CHARGE; OR (C) BETA CODE; ALL OF
WHICH ARE PROVIDED “AS IS.”

7.2. THE WARRANTIES SET FORTH IN THIS SECTION 7 ARE EXCLUSIVE. NEITHER MENTOR GRAPHICS NOR ITS
LICENSORS MAKE ANY OTHER WARRANTIES EXPRESS, IMPLIED OR STATUTORY, WITH RESPECT TO
PRODUCTS PROVIDED UNDER THIS AGREEMENT. MENTOR GRAPHICS AND ITS LICENSORS SPECIFICALLY
DISCLAIM ALL IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NON-INFRINGEMENT OF INTELLECTUAL PROPERTY.

8. LIMITATION OF LIABILITY. EXCEPT WHERE THIS EXCLUSION OR RESTRICTION OF LIABILITY WOULD BE VOID
OR INEFFECTIVE UNDER APPLICABLE LAW, IN NO EVENT SHALL MENTOR GRAPHICS OR ITS LICENSORS BE
LIABLE FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES (INCLUDING LOST PROFITS OR
SAVINGS) WHETHER BASED ON CONTRACT, TORT OR ANY OTHER LEGAL THEORY, EVEN IF MENTOR GRAPHICS
OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT SHALL MENTOR
GRAPHICS’ OR ITS LICENSORS’ LIABILITY UNDER THIS AGREEMENT EXCEED THE AMOUNT RECEIVED FROM
CUSTOMER FOR THE HARDWARE, SOFTWARE LICENSE OR SERVICE GIVING RISE TO THE CLAIM. IN THE CASE
WHERE NO AMOUNT WAS PAID, MENTOR GRAPHICS AND ITS LICENSORS SHALL HAVE NO LIABILITY FOR ANY
DAMAGES WHATSOEVER. THE PROVISIONS OF THIS SECTION 8 SHALL SURVIVE THE TERMINATION OF THIS
AGREEMENT.

9. HAZARDOUS APPLICATIONS. CUSTOMER ACKNOWLEDGES IT IS SOLELY RESPONSIBLE FOR TESTING ITS


PRODUCTS USED IN APPLICATIONS WHERE THE FAILURE OR INACCURACY OF ITS PRODUCTS MIGHT RESULT IN
DEATH OR PERSONAL INJURY (“HAZARDOUS APPLICATIONS”). EXCEPT TO THE EXTENT THIS EXCLUSION OR
RESTRICTION OF LIABILITY WOULD BE VOID OR INEFFECTIVE UNDER APPLICABLE LAW, IN NO EVENT SHALL
MENTOR GRAPHICS OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES RESULTING FROM OR IN CONNECTION
WITH THE USE OF MENTOR GRAPHICS PRODUCTS IN OR FOR HAZARDOUS APPLICATIONS. THE PROVISIONS OF
THIS SECTION 9 SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT.

10. INDEMNIFICATION. CUSTOMER AGREES TO INDEMNIFY AND HOLD HARMLESS MENTOR GRAPHICS AND ITS
LICENSORS FROM ANY CLAIMS, LOSS, COST, DAMAGE, EXPENSE OR LIABILITY, INCLUDING ATTORNEYS’ FEES,
ARISING OUT OF OR IN CONNECTION WITH THE USE OF MENTOR GRAPHICS PRODUCTS IN OR FOR HAZARDOUS
APPLICATIONS. THE PROVISIONS OF THIS SECTION 10 SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT.

11. INFRINGEMENT.

11.1. Mentor Graphics will defend or settle, at its option and expense, any action brought against Customer in the United States,
Canada, Japan, or member state of the European Union which alleges that any standard, generally supported Product acquired
by Customer hereunder infringes a patent or copyright or misappropriates a trade secret in such jurisdiction. Mentor Graphics
will pay costs and damages finally awarded against Customer that are attributable to such action. Customer understands and
agrees that as conditions to Mentor Graphics’ obligations under this section Customer must: (a) notify Mentor Graphics
promptly in writing of the action; (b) provide Mentor Graphics all reasonable information and assistance to settle or defend the
action; and (c) grant Mentor Graphics sole authority and control of the defense or settlement of the action.

11.2. If a claim is made under Subsection 11.1 Mentor Graphics may, at its option and expense: (a) replace or modify the Product so
that it becomes noninfringing; (b) procure for Customer the right to continue using the Product; or (c) require the return of the
Product and refund to Customer any purchase price or license fee paid, less a reasonable allowance for use.

11.3. Mentor Graphics has no liability to Customer if the action is based upon: (a) the combination of Software or hardware with any
product not furnished by Mentor Graphics; (b) the modification of the Product other than by Mentor Graphics; (c) the use of
other than a current unaltered release of Software; (d) the use of the Product as part of an infringing process; (e) a product that
Customer makes, uses, or sells; (f) any Beta Code or Product provided at no charge; (g) any software provided by Mentor
Graphics’ licensors who do not provide such indemnification to Mentor Graphics’ customers; or (h) infringement by Customer
that is deemed willful. In the case of (h), Customer shall reimburse Mentor Graphics for its reasonable attorney fees and other
costs related to the action.

11.4. THIS SECTION 11 IS SUBJECT TO SECTION 8 ABOVE AND STATES THE ENTIRE LIABILITY OF MENTOR
GRAPHICS AND ITS LICENSORS, AND CUSTOMER’S SOLE AND EXCLUSIVE REMEDY, FOR DEFENSE,
SETTLEMENT AND DAMAGES, WITH RESPECT TO ANY ALLEGED PATENT OR COPYRIGHT INFRINGEMENT
OR TRADE SECRET MISAPPROPRIATION BY ANY PRODUCT PROVIDED UNDER THIS AGREEMENT.

12. TERMINATION AND EFFECT OF TERMINATION.

12.1. If a Software license was provided for limited term use, such license will automatically terminate at the end of the authorized
term. Mentor Graphics may terminate this Agreement and/or any license granted under this Agreement immediately upon
written notice if Customer: (a) exceeds the scope of the license or otherwise fails to comply with the licensing or confidentiality
provisions of this Agreement, or (b) becomes insolvent, files a bankruptcy petition, institutes proceedings for liquidation or
winding up or enters into an agreement to assign its assets for the benefit of creditors. For any other material breach of any
provision of this Agreement, Mentor Graphics may terminate this Agreement and/or any license granted under this Agreement
upon 30 days written notice if Customer fails to cure the breach within the 30 day notice period. Termination of this Agreement
or any license granted hereunder will not affect Customer’s obligation to pay for Products shipped or licenses granted prior to
the termination, which amounts shall be payable immediately upon the date of termination.

12.2. Upon termination of this Agreement, the rights and obligations of the parties shall cease except as expressly set forth in this
Agreement. Upon termination, Customer shall ensure that all use of the affected Products ceases, and shall return hardware and
either return to Mentor Graphics or destroy Software in Customer’s possession, including all copies and documentation, and
certify in writing to Mentor Graphics within ten business days of the termination date that Customer no longer possesses any of
the affected Products or copies of Software in any form.

13. EXPORT. The Products provided hereunder are subject to regulation by local laws and United States (“U.S.”) government agencies,
which prohibit export, re-export or diversion of certain products, information about the products, and direct or indirect products thereof,
to certain countries and certain persons. Customer agrees that it will not export or re-export Products in any manner without first
obtaining all necessary approval from appropriate local and U.S. government agencies. If Customer wishes to disclose any information
to Mentor Graphics that is subject to any U.S. or other applicable export restrictions, including without limitation the U.S. International
Traffic in Arms Regulations (ITAR) or special controls under the Export Administration Regulations (EAR), Customer will notify
Mentor Graphics personnel, in advance of each instance of disclosure, that such information is subject to such export restrictions.

14. U.S. GOVERNMENT LICENSE RIGHTS. Software was developed entirely at private expense. The parties agree that all Software is
commercial computer software within the meaning of the applicable acquisition regulations. Accordingly, pursuant to U.S. FAR 48
CFR 12.212 and DFAR 48 CFR 227.7202, use, duplication and disclosure of the Software by or for the U.S. government or a U.S.
government subcontractor is subject solely to the terms and conditions set forth in this Agreement, which shall supersede any
conflicting terms or conditions in any government order document, except for provisions which are contrary to applicable mandatory
federal laws.

15. THIRD PARTY BENEFICIARY. Mentor Graphics Corporation, Mentor Graphics (Ireland) Limited, Microsoft Corporation and
other licensors may be third party beneficiaries of this Agreement with the right to enforce the obligations set forth herein.

16. REVIEW OF LICENSE USAGE. Customer will monitor the access to and use of Software. With prior written notice and during
Customer’s normal business hours, Mentor Graphics may engage an internationally recognized accounting firm to review Customer’s
software monitoring system and records deemed relevant by the internationally recognized accounting firm to confirm Customer’s
compliance with the terms of this Agreement or U.S. or other local export laws. Such review may include FlexNet (or successor
product) report log files that Customer shall capture and provide at Mentor Graphics’ request. Customer shall make records available in
electronic format and shall fully cooperate with data gathering to support the license review. Mentor Graphics shall bear the expense of
any such review unless a material non-compliance is revealed. Mentor Graphics shall treat as confidential information all information
gained as a result of any request or review and shall only use or disclose such information as required by law or to enforce its rights
under this Agreement. The provisions of this Section 16 shall survive the termination of this Agreement.

17. CONTROLLING LAW, JURISDICTION AND DISPUTE RESOLUTION. The owners of certain Mentor Graphics intellectual
property licensed under this Agreement are located in Ireland and the U.S. To promote consistency around the world, disputes shall be
resolved as follows: excluding conflict of laws rules, this Agreement shall be governed by and construed under the laws of the State of
Oregon, U.S., if Customer is located in North or South America, and the laws of Ireland if Customer is located outside of North or
South America. All disputes arising out of or in relation to this Agreement shall be submitted to the exclusive jurisdiction of the courts
of Portland, Oregon when the laws of Oregon apply, or Dublin, Ireland when the laws of Ireland apply. Notwithstanding the foregoing,
all disputes in Asia arising out of or in relation to this Agreement shall be resolved by arbitration in Singapore before a single arbitrator
to be appointed by the chairman of the Singapore International Arbitration Centre (“SIAC”) to be conducted in the English language, in
accordance with the Arbitration Rules of the SIAC in effect at the time of the dispute, which rules are deemed to be incorporated by
reference in this section. Nothing in this section shall restrict Mentor Graphics’ right to bring an action (including for example a motion
for injunctive relief) against Customer in the jurisdiction where Customer’s place of business is located. The United Nations
Convention on Contracts for the International Sale of Goods does not apply to this Agreement.

18. SEVERABILITY. If any provision of this Agreement is held by a court of competent jurisdiction to be void, invalid, unenforceable or
illegal, such provision shall be severed from this Agreement and the remaining provisions will remain in full force and effect.

19. MISCELLANEOUS. This Agreement contains the parties’ entire understanding relating to its subject matter and supersedes all prior
or contemporaneous agreements. Some Software may contain code distributed under a third party license agreement that may provide
additional rights to Customer. Please see the applicable Software documentation for details. This Agreement may only be modified in
writing, signed by an authorized representative of each party. Waiver of terms or excuse of breach must be in writing and shall not
constitute subsequent consent, waiver or excuse.

Rev. 140201, Part No. 258976

You might also like