0% found this document useful (0 votes)
41 views106 pages

Calbr Cmpanalyzer User

Uploaded by

无名
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views106 pages

Calbr Cmpanalyzer User

Uploaded by

无名
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Calibre® CMPAnalyzer User’s Manual

Software Version 2017.1

© 2007-2017 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: [Link]/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: [Link]
SupportNet: [Link]/

Send Feedback on Documentation: [Link]/doc_feedback_form


Table of Contents

Chapter 1
Introduction to Calibre CMPAnalyzer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Workflow with Calibre CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Requirements for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Chapter 2
CMP Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
CMP Analysis with the Calibre Interactive GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Using the Calibre CMPAnalyzer Batch Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Chapter 3
CMP Analysis Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Reviewing Analysis Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Recalculating Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Creating Scatter Plots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Exporting Hotspot Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Exporting CMPAnalyzer Thickness Data to File for Extraction Tools. . . . . . . . . . . . . . . . . 40
Exporting Analysis Results in Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Calculating User-Defined Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Tcl Script for User-Defined Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Running CMPAnalyzer with User-Defined Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Analyzing CMPAnalyzer User-Defined Hotspot Results . . . . . . . . . . . . . . . . . . . . . . . . . 50
Mapping Properties to Hotspot Rule Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Hot Spot Analysis Batch Procedure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Chapter 4
CMP Bucketing Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Running the CMP Bucketing Flow in Calibre Interactive for DFM . . . . . . . . . . . . . . . . . . . 55

Chapter 5
CMPAnalyzer Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Terms and Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
MGC Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Required Inputs for the MGC Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Thickness Parameters in the MGC Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Rule Output in the MGC Simulator Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
TSMC VCMP Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Required Inputs for the TSCM VCMP Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Thickness Parameters in the TSMC VCMP Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . 67
Rule Output in the TSMC VCMP Simulator Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Calibre® CMPAnalyzer User’s Manual, v2017.1 3


Table of Contents

Calibre Interactive GUI Items for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70


CMP Tab for MGC Simulator (Inputs Pane) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
CMP Tab for TSMC Simulator (Inputs Pane) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Simulator Options Tab on the Inputs Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
CMP Tab on the Outputs Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
CMP Tab in Calibre RVE for DFM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
CMP Batch Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Example MGC Batch Reporting Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Example TSMC VCMP Batch Reporting Configuration File . . . . . . . . . . . . . . . . . . . . . . 83
CMP YieldServer Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
CMP YieldServer Command Reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Calibre YieldServer Scripts for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Examples for CMP YieldServer Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Example Script to Save Reports for Calibre CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . 92
Example to Export Values to a Text File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Colormap Stipple Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Layer Number Specification Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Pre-Defined Layers File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Index
Third-Party Information
End-User License Agreement

4 Calibre® CMPAnalyzer User’s Manual, v2017.1


List of Figures

Figure 1-1. Calibre CMPAnalyzer GUI Analysis Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10


Figure 2-1. Displaying the CMP Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 2-2. Specifying Model Index (MGC Flow) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 2-3. Specifying Metal Types (TSMC VCMP Flow) . . . . . . . . . . . . . . . . . . . . . . . . . 16
Figure 2-4. Mapping Layers and Datatypes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Figure 2-5. Slot Optimization Example 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Figure 2-6. Slot Optimization Example 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Figure 2-7. Calibre Interactive Rules Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 2-8. Calibre Interactive Inputs Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 2-9. Calibre Interactive Outputs Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 2-10. Calibre Interactive Run Control Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 3-1. Setting the Calibre RVE for DFM Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Figure 3-2. Displaying a Colormap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Figure 3-3. Enable Zoom Synchronization for New Colormaps . . . . . . . . . . . . . . . . . . . . . . 26
Figure 3-4. Colormap Right-Click Submenu — Zoom Synchronization . . . . . . . . . . . . . . . 27
Figure 3-5. Colormap with Color Range Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figure 3-6. Displaying a Second Colormap. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figure 3-7. Comparing Colormaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figure 3-8. Displaying a Colormap — Method Two. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 3-9. Displaying a Histogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 3-10. Configuring Tooltip Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 3-11. Using Tooltip Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 3-12. Profile Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 3-13. Profile Plot with User-Defined Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 3-14. Profile Plot with Updated User-Defined Settings . . . . . . . . . . . . . . . . . . . . . . . 35
Figure 3-15. Viewing Individual Errors in Calibre RVE. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figure 3-16. Recalculate Hotspots Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figure 3-17. Scatter Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 3-18. Scatter Plot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Figure 3-19. Reports for Original Density Histograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Figure 3-20. CMPAnalyzer Batch Reporting Index Page . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Figure 3-21. User-Defined Hotspot on CMP Tab in Calibre RVE.. . . . . . . . . . . . . . . . . . . . 51
Figure 3-22. Hotspot Tiles Corresponding to Layout View . . . . . . . . . . . . . . . . . . . . . . . . . 52
Figure 4-1. Displaying a Colormap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Figure 4-2. Colormap with Color Range Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Figure 5-1. Depth of Focus (MGC Simulator Parameters) . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Figure 5-2. Dishing (MGC Simulator Parameters) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Figure 5-3. Erosion (MGC Simulator Parameters) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Figure 5-4. MGC Simulator Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Figure 5-5. MGC Simulator Rules in Calibre RVE for DFM . . . . . . . . . . . . . . . . . . . . . . . . 66

Calibre® CMPAnalyzer User’s Manual, v2017.1 5


List of Figures

Figure 5-6. TSMC VCMP Simulator Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68


Figure 5-7. TSMC Rules in Calibre RVE for DFM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figure 5-8. Calibre Interactive CMP Tab (MGC Simulator). . . . . . . . . . . . . . . . . . . . . . . . . 70
Figure 5-9. Calibre Interactive CMP Tab (TSMC Simulator). . . . . . . . . . . . . . . . . . . . . . . . 74
Figure 5-10. Calibre Interactive CMP Tab on the Outputs Pane. . . . . . . . . . . . . . . . . . . . . . 78
Figure 5-11. CMP Tab in Calibre RVE for DFM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Calibre® CMPAnalyzer User’s Manual, v2017.1


List of Tables

Table 1-1. Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10


Table 3-1. Zoom Shortcut Keys for CMP Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Table 3-2. Profile Plot Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Table 5-1. MGC Thickness Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Table 5-2. TSMC VCMP Thickness Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Table 5-3. Contents of CMP Tab (MGC Simulator) on the Inputs Pane . . . . . . . . . . . . . . . 70
Table 5-4. Layer Table Right-Click Menu (MGC Simulator) . . . . . . . . . . . . . . . . . . . . . . . 73
Table 5-5. Contents of CMP Tab (TSMC Simulator) on the Inputs Pane . . . . . . . . . . . . . . 74
Table 5-6. Layer Table Right-Click Menu (TSMC Simulator) . . . . . . . . . . . . . . . . . . . . . . 75
Table 5-7. Contents of the Calibre Interactive Outputs Tab . . . . . . . . . . . . . . . . . . . . . . . . . 78
Table 5-8. CMP Tab Contents in Calibre RVE for DFM . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Table 5-9. YieldServer Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Table 5-10. Stipple Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Table 5-11. Layer Number Specification Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Calibre® CMPAnalyzer User’s Manual, v2017.1 7


List of Tables

8 Calibre® CMPAnalyzer User’s Manual, v2017.1


Chapter 1
Introduction to Calibre CMPAnalyzer

Calibre® CMPAnalyzer is a software application that analyzes and improves a design with
respect to planarity and thickness requirements.
Chemical Mechanical Polishing (CMP) is a process that attempts to flatten the surface of a
wafer at each layer through both mechanical and chemical methods. It is not a perfect process,
and variations in a design lead to variations in surface heights. The Calibre CMPAnalyzer tool
reports these variations as hotspots if they are beyond certain threshold values. Metal fill is used
to compensate for the design variation to increase the final planarity. It is assumed that the
design already has metal fill in it before you run the Calibre CMPAnayzer tool.

A simulator is necessary to simulate surface heights for a particular manufacturing process. For
non-TSMC users, you must supply a model (called a recipe file) to the simulator. For TSMC
users, you must include DDK files. Details on each simulator flow can be found in the following
sections:

• “MGC Simulator Flow” on page 64


• “TSMC VCMP Simulator Flow” on page 67
After running an analysis, you can inspect the results using Calibre RVE™ for DFM running in
CMPA mode and a layout viewer such as Calibre DESIGNrev™. You can also output thickness
data for parasitic analysis using Calibre parasitic extraction tools or other extraction tools.

The Calibre CMPAnalyzer tool operates at the die-level — it divides the design into a
rectangular grid of tiles and calculates average values of features for each tile.

Workflow with Calibre CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9


Requirements for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Syntax Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Workflow with Calibre CMPAnalyzer


The workflow for with the Calibre CMPAnalyzer includes Calibre Interactive, Calibre RVE for
DFM, and a layout viewer.

Calibre® CMPAnalyzer User’s Manual, v2017.1 9


Introduction to Calibre CMPAnalyzer
Requirements for CMPAnalyzer

Figure 1-1. Calibre CMPAnalyzer GUI Analysis Flow

Requirements for CMPAnalyzer


To run the Calibre CMPAnalyzer tool, you must have either a recipe file (if you are using the
MGC simulator), or a DDK directory (if you are using the TSMC simulator).
Additionally, you must have the necessary licenses. Refer to the Calibre Administrator’s Guide
for more information on the licenses that the Calibre CMPAnalyzer tool uses.

Syntax Conventions
The command descriptions use font properties and several metacharacters to document the
command syntax.
You should enter literal text, that which is not in italics, exactly as shown.
Table 1-1. Syntax Conventions
Convention Description
Bold Bold fonts indicate a required item.
Italic Italic fonts indicate a user-supplied argument.
Monospace Monospace fonts indicate a shell command, line of code, or
URL. A bold monospace font identifies text you enter.

10 Calibre® CMPAnalyzer User’s Manual, v2017.1


Introduction to Calibre CMPAnalyzer
Syntax Conventions

Table 1-1. Syntax Conventions (cont.)


Convention Description
Underline Underlining indicates either the default argument or the default
value of an argument.
UPPercase For certain case-insensitive commands, uppercase indicates the
minimum keyword characters. In most cases, you may omit the
lowercase letters and abbreviate the keyword.
[] Brackets enclose optional arguments. Do not include the brackets
when entering the command unless they are quoted.
{} Braces enclose arguments to show grouping. Do not include the
braces when entering the command unless they are quoted.
‘’ Quotes enclose metacharacters that are to be entered literally. Do
not include single quotes when entering braces or brackets in a
command.
| or || Vertical bars indicate a choice between items. Do not include the
bars when entering the command.
… Three dots (an ellipsis) follows an argument or group of
arguments that may appear more than once. Do not include the
ellipsis when entering the command.
Example:
DEVice {element_name [‘(’model_name‘)’]}
device_layer {pin_layer [‘(’pin_name‘)’] …}
[‘<’auxiliary_layer‘>’ …]
[‘(’swap_list‘)’ …]
[BY NET | BY SHAPE]

Calibre® CMPAnalyzer User’s Manual, v2017.1 11


Introduction to Calibre CMPAnalyzer
Syntax Conventions

12 Calibre® CMPAnalyzer User’s Manual, v2017.1


Chapter 2
CMP Analysis

You use the CMP (chemical mechanical polishing) hotspot analysis flow with a physical
design. You run the analysis with Calibre Interactive, which can be run in interactive or batch
mode.
CMP Analysis with the Calibre Interactive GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Using the Calibre CMPAnalyzer Batch Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

CMP Analysis with the Calibre Interactive GUI


The GUI flow is recommended as a first step when doing Calibre CMP analysis.
It allows you to use the Calibre® Interactive™ GUI to set up a run and create a runset file, which
saves Calibre Interactive settings and is required in the Calibre CMPAnalyzer batch flow. It also
allows you to run the CMP analysis and launch Calibre RVE for DFM to view results.

The default flow for multi-layer (two or more layers selected) Calibre CMPAnalyzer runs,
performs extraction, simulation, and hotspot calculation for each layer sequentially. As soon as
the hotspot calculation for a layer finishes, you can access the dfmdb and analyze the layer data
and hotspots with Calibre RVE for DFM while extraction and simulation for the next (upper)
layer is in progress.

See “Using the Calibre CMPAnalyzer Batch Flow” on page 21 for information on the batch
flow.

Prerequisites
• Input files depending on which simulator you use:
o MGC simulator — You have a valid recipe file; see “Creating a Process Recipe
File” in the Calibre CMP Model Builder User’s and Reference Manual. Also see
“MGC Simulator Flow” on page 64.
o TSMC simulator — You have downloaded and unpacked the DDK directory for
your technology node from the TSMC website. See “TSMC VCMP Simulator
Flow” on page 67 for additional information.
• You have set CALIBRE_HOME or MGC_HOME to the path to the Calibre software
tree. Refer to the Calibre Administrator’s Guide for information on setting this variable.

Calibre® CMPAnalyzer User’s Manual, v2017.1 13


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Procedure
1. Invoke Calibre DESIGNrev:
calibredrv -m layout

where layout specifies the path to your layout file. Alternatively, you can open your
design by invoking DESIGNrev without the -m switch, choosing File > Open Layout
Files, browsing to or entering the path to your layout, then clicking Open.
2. If the layers are displayed using non-standard colors or fill patterns, choose Layer >
Load Layer Properties, select your layer properties file, and click Open.

Tip
When your layer properties file is named as follows, it is loaded automatically when
your layout is opened: layout_name.layout_extension.layerprops

3. In Calibre DESIGNrev, choose Verification > Run DFM.


This invokes Calibre Interactive in DFM mode. The Load Runset File dialog box also
opens, allowing you to specify a Calibre Interactive runset.
4. In the Load Runset File dialog box, click Cancel. The Calibre Interactive window will
refresh with the Inputs page displayed.
5. Click on the dropdown list for Run and select CMP Analyzer.
Figure 2-1. Displaying the CMP Tab

The CMP tab is added to the Inputs pane.


6. Click the CMP tab to display it.
7. Next to CMP Simulator, select the appropriate option depending on the input files you
are using. Refer to the “MGC Simulator Flow” on page 64 and “TSMC VCMP
Simulator Flow” on page 67 for more details.
8. Enter the Number of Metal Layers in your design.

14 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

The table updates to display one row for each layer in your design. If you are using the
MGC simulator, the table contains additional fields for dishing, erosion, and depth of
focus rules.
9. For each row in the table, modify the Model Index (MGC simulator) or Metal Type
(TSMC simulator) values as needed.
• MGC simulator — Allowed values for Model Index are 1 through 99, where the
index is the sequential number of the model in the recipe file, with the first recipe
having a Model Index of 1. Change the values of entries in the table as necessary.
(Optional) You can input an SVRF file in the Pre-Defined Layers File field to
specify user-defined layers using Calibre Boolean layer operations. See “CMP Tab
for MGC Simulator (Inputs Pane)” on page 70 and “Pre-Defined Layers File
Format” on page 95.
Figure 2-2. Specifying Model Index (MGC Flow)

• TSMC simulator — Allowed values for Metal Type are listed in order of increasing
thickness. Note that you must select the TSMC simulator flow and provide the
technology node before you can see the supported Metal Types. See “TSMC VCMP
Simulator Flow” on page 67 for the required inputs. The TSMC Metal Type is
hard-coded for the first and in some cases the second layer depending on the
technology node and layer types in your design.

Calibre® CMPAnalyzer User’s Manual, v2017.1 15


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Figure 2-3. Specifying Metal Types (TSMC VCMP Flow)

10. Edit other entries in the table as needed.

Note
Do not use the underscore (_) in layer names.

11. (Optional) You can edit the layer numbers in the table and specify subtractive (-) or
negative (~) layers and datatypes. Multiple layers are allowed for some entries.
Figure 2-4 shows how the layer number entry is converted to rule file statements. If you
specify a layer_number with no layer_datatype, all data types for that layer are mapped
to the same Calibre layer. If multiple layers are specified for OPC and non-OPC fill
layers, CMPAnalyzer chooses the first one when writing out the respective fills.
See “Layer Number Specification Format” on page 93 for the complete format and how
subtractive and negative layers are handled.

16 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Figure 2-4. Mapping Layers and Datatypes

12. If you are using the MGC simulator, choose the optimized or standard flow with
Optimize Analysis for Slotted Layers checkbox; the setting is checked by default.
• Standard (Positive) Flow — (checkbox cleared) In this flow, the negation with
DB_EXTENT is done in the rule deck file.
• Optimized for Slotted (Negative) Layers Flow — (checkbox checked) In this flow
(also referred to as the optimized flow), the negation with DB_EXTENT is done
when you run the DFM CMP command. The optimized flow allows you to postpone
the negation of negative and subtractive layers until you run the DFM CMP
command.

Note
The optimized flow is applied to those layers for which all of the layer numbers
for “Layer Definition”, “OPC Fill” and “Non-OPC Fill” fields are negative (~),
subtractive (-) or absent in GUI (empty field).

In Figure 2-5, the optimized and standard flows are identical for M1 layer. The slot
optimization does not affect the M1 layer because there are no negative, subtractive
layer numbers in corresponding fields.
Figure 2-5. Slot Optimization Example 1

In Figure 2-6, the optimized flow affects only layer M2 because the “Layer Definition”,
“OPC Fill” and “Non-OPC Fill” fields contain negative layers.

Calibre® CMPAnalyzer User’s Manual, v2017.1 17


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Figure 2-6. Slot Optimization Example 2

Note
The optimized flow exists for MGC Simulator only.

13. Provide recipe or technology information, depending on which flow you are running:
• TSMC Simulator:
i. Choose the technology node you are using in the Technology dropdown list.
Available technologies include N20, N28, N32, N40LP, N45GS, N55, N65, and
CMN65.
ii. Fill in the Technology File field. This is the DDK process file you downloaded
from the TSMC website.
iii. Fill in the DDK Directory field. This is the location of the top-level DDK
directory where files were unpacked.
• MGC simulator:
Provide the path to your recipe file in the Recipe File field.
14. (Optional) Click the Simulator Options tab to specify additional options, such as
window size and other processing options. See “Simulator Options Tab on the Inputs
Pane” on page 76.
15. One by one, click the buttons in the left vertical bar to control other aspects of the CMP
run, following the recommendations in the steps below.
Buttons in the left vertical bar become green when Calibre has enough information to
execute a run. Calibre CMPAnalyzer does not use all the data in these fields, so certain
settings may be incorrect. The important thing here is to make sure none of the buttons
appear red.
a. Click the Rules button.
A rule file is optional. If entered, it is included in the control file generated by
Calibre Interactive. Sections of the control file are encrypted.

18 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Figure 2-7. Calibre Interactive Rules Tab

b. Click the Inputs button, and select the Layout tab.


In the File field, enter the path to your layout. Enter the layout top cell next to the
Top Cell field.
The Simulator Options tab contains run specification and process flow options. See
“Simulator Options Tab on the Inputs Pane” on page 76 for a list of these options.
Figure 2-8. Calibre Interactive Inputs Tab

c. Click the Outputs button. If necessary, modify the name of the database in the
Directory field.
The database name is the name of a directory containing the results of the CMP
Analyzer run, which are output as a DFM database. CMPAnalyzer creates this
directory inside your working directory.
Select the Show Results in RVE button.
In the CMP tab, you can optionally enable the creation of a CMP summary report
file.

Calibre® CMPAnalyzer User’s Manual, v2017.1 19


CMP Analysis
CMP Analysis with the Calibre Interactive GUI

Figure 2-9. Calibre Interactive Outputs Section

d. Click the Run Control button. Select any additional items as necessary for your
design flow.
Figure 2-10. Calibre Interactive Run Control Tab

16. Choose File > Save Runset As to save the runset to a file. Enter “runset” for the file
name. If you are planning to run CMPAnalyzer through the command line, exit Calibre
Interactive and refer to “Using the Calibre CMPAnalyzer Batch Flow” on page 21.
17. Invoke CMPAnalyzer by clicking Run CMP. This invokes Calibre with the -dfm and
-cmp switches.
Run times increase as you increase the number of metal layers or the design complexity.
During the run, the density data is extracted from the layout and fed to the simulator for
analysis. The simulator calculates thickness data which is then analyzed for hotspots.
18. Calibre RVE for DFM displays automatically when the run is complete. Refer to “CMP
Analysis Results” on page 23 for instructions on how to interpret the CMP analysis
results.

20 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis
Using the Calibre CMPAnalyzer Batch Flow

Using the Calibre CMPAnalyzer Batch Flow


The CMPAnalyzer batch flow can be used to run the CMP analysis directly from the command
line, and output analysis data to the specified output directory.
This is the recommended method of running a CMP analysis after you have created a runset file.

Layout data for the procedure presented in this section is available on the following page in the
“Calibre examples” section:

[Link]/downloads/related/calibre_utilities/[Link]

Prerequisites
• Input files depending on which simulator you use:
o MGC simulator — You have a valid recipe file; see “Creating a Process Recipe
File” in the Calibre CMP Model Builder User’s and Reference Manual. Also see
“MGC Simulator Flow” on page 64.
o TSMC simulator — You have downloaded and unpacked the DDK directory for
your technology node from the TSMC website. See “TSMC VCMP Simulator
Flow” on page 67 for additional information.
• You have a valid runset file in your working directory named “runset.” You can create a
runset file by following the procedure in the “CMP Analysis with the Calibre Interactive
GUI” on page 13.
• You have set CALIBRE_HOME or MGC_HOME to the path to the Calibre software
tree. Refer to the Calibre Administrator’s Guide for information on setting this variable.
Procedure
1. Open a text editor and add the following lines to a new file named [Link]:
#!/bin/sh
# run CMPAnalyzer in batch mode
calibre -gui -dfm -runset ./runset -batch | tee [Link]
# run YS script (optional)
calibre -ys -cmp -exec [Link]
# run batch reporting (optional)
calibre -rve -dfm dfmdb -report ./[Link] -outputdir ./reports -cmp

This script runs Calibre Interactive in batch mode using the runset to set the GUI
options. The run creates a DFM database with the CMP analysis results. The script then
runs a Calibre YieldServer script and runs HTML batch reporting. You can optionally
change the default settings of the CMP profile plot in Calibre RVE for DFM by setting
the environment variable MGC_CMP_PROFILE_PLOT_SETTINGS in your batch
script. For example,
export MGC_CMP_PROFILE_PLOT_SETTINGS="{BG red} {LC green}"

Calibre® CMPAnalyzer User’s Manual, v2017.1 21


CMP Analysis
Using the Calibre CMPAnalyzer Batch Flow

See Table 3-2 on page 35 for a list of CMP profile plot settings.
2. (Optional) Create a new file named [Link] in your working directory. This file is
executed following a CMP analysis. It can use any of the CMP YieldServer Commands
to export parasitic extraction and hotspot reports, export rule values to a text file, and so
on. The following example script opens the DFM database, and saves Calibre xRC and
hotspot reports.
dfm::open_db dfmdb/[Link]
puts "\nSaving xRC Report..."
cmp::save_xrc_report -dir "xRC"
puts "\nSaving Hotspots Report..."
cmp::save_hotspots_report -file "Hotspots_Report.txt"

3. (Optional) Create a batch reporting configuration file named [Link] in your working
directory. Calibre RVE for DFM can read this file to automatically generate colormaps,
histograms, and tables in a specified output directory. The syntax of this file is detailed
in “DFM HTML Reporting” in the Calibre Interactive and Calibre RVE User’s Manual.
Refer to “CMP Batch Reporting” on page 81 for examples specific to CMPAnalyzer.
4. Run the batch file:
./[Link]

5. If you included batch reporting, open [Link] in the ./reports directory. The HTML
report is similar to Figure 3-20.
6. View the results in Calibre RVE, as discussed in “CMP Analysis Results” on page 23.
This section also has information on interpreting the results.

22 Calibre® CMPAnalyzer User’s Manual, v2017.1


Chapter 3
CMP Analysis Results

You can work with CMP analysis results using the Calibre RVE for DFM user interface.
Calibre RVE for DFM allows you to view actual scores, display histograms indicating the
distribution of scores, and generate colormaps illustrating how scores relate to specific locations
within your design. You can also use the Calibre RVE for DFM user interface in conjunction
with the Calibre DESIGNrev layout viewer to highlight and view specific problems within your
design. Additionally, you can run a DFM Fill algorithm to automatically apply fixes to hotspots
in your design.

Reviewing Analysis Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


Recalculating Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Creating Scatter Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Exporting Hotspot Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Exporting CMPAnalyzer Thickness Data to File for Extraction Tools . . . . . . . . . . . . . 40
Exporting Analysis Results in Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Calculating User-Defined Hotspots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Hot Spot Analysis Batch Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Reviewing Analysis Results


The easiest way to understand how the raw analysis data relates to your design is to view
histograms and colormaps.
The layout is broken up into a number of windows with data values assigned for each window.
The default color scheme is such that red represents the highest data values and dark blue
represents the lowest data values.

Prerequisites
• You have performed a CMP analysis as described in “CMP Analysis” on page 13, and
you have a DFM database containing the analysis results.
• Calibre DESIGNrev or another layout viewer that is supported by Calibre RVE is open
with your layout loaded. See “Communication with the Design Tool” in the Calibre
Interactive and Calibre RVE User’s Manual for information on communication between
Calibre RVE and the layout viewer.

Calibre® CMPAnalyzer User’s Manual, v2017.1 23


CMP Analysis Results
Reviewing Analysis Results

Procedure
1. Open Calibre RVE for DFM:
• From Calibre Interactive — Click Start RVE. Calibre RVE is opened and the
results database on the Outputs pane is loaded.
• From a layout viewer — In Calibre DESIGNrev, select Verification > Start RVE.
For most other viewers, select Calibre > Start RVE.
Specify the DFM database in the “Database” entry and select a “Database Type” of
DFM.
2. Set the results viewing highlighting options in the Calibre RVE for DFM user interface.
a. Choose Setup > Options from the Calibre RVE for DFM menu, then choose the
Highlighting category.
Figure 3-1. Setting the Calibre RVE for DFM Options

b. Select Zoom to highlights by and set the value to 0.7.


c. Make sure Clear existing highlights is selected.
d. Switch to the DFM Browser category, select Flat next to On double-click, browse
layer.
e. Click Apply, then Close.
3. Set the colormap display options.
a. Choose Setup > Options and click the Histograms & Colormaps category.
b. In the Colormaps (DFM Browser only) section of the pane, uncheck the Show
Borders checkbox to display colormaps without borders.

24 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

c. Click Apply, then Close.


4. Review the data displayed in the CMP tab.
When the CMP analysis is complete, a table appears, displaying metal layers (rows) and
hotspots (model-based checks) applied to these metal layers (columns). The values in
the table represent the number of unique violations for the hotspot and metal layer
combination corresponding to that column and row. If there is no value reported, that
hotspot is not applicable to that metal layer.
5. Right-click on the M1 row and choose Colormap > Density.
Figure 3-2. Displaying a Colormap

This creates a colormap for metal1 density inside Calibre RVE for DFM.
To zoom in on the colormap, click and hold the right mouse button, drag the mouse
down and to the right, and release the right mouse button. To zoom out, perform a
similar procedure except drag the mouse up and to the left. You can synchronize the
zoom regions for two or more colormaps by checking the Enable Zoom
Synchronization for New Colormaps checkbox under the Histogram & Colormaps
category of the Setup > Options tab and then clicking on Apply. If the Enable Zoom
Synchronization for New Colormaps option is disabled, you can zoom to a colormap
region independently in any newly opened colormaps.

Calibre® CMPAnalyzer User’s Manual, v2017.1 25


CMP Analysis Results
Reviewing Analysis Results

Figure 3-3. Enable Zoom Synchronization for New Colormaps

You can right-click on a colormap and use the Zoom Synchronization submenu to
control zoom synchronization between multiple colormaps. The submenu options are as
follows:
o Enable — Choose this checkbox to enable or disable zoom synchronization for the
current colormap.
o Enable for All — Choose this menu option to enable zoom synchronization for all
current colormaps.
o Disable for All — Choose this menu option to disable zoom synchronization for all
current colormaps.

26 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

Figure 3-4. Colormap Right-Click Submenu — Zoom Synchronization

For colormap color definition, you can use the Setup > Options menu and check the
Enable Autorange checkbox on the fast colormap to fit colors to the current visible
range of values.
Figure 3-5. Colormap with Color Range Enabled

Calibre® CMPAnalyzer User’s Manual, v2017.1 27


CMP Analysis Results
Reviewing Analysis Results

6. Right-click on a tile in the Density colormap and select Colormap Shapes by and
choose one of the three choices as shown in the figure.

7. Right-click in that row again and choose Colormap > Thickness Metal.

28 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

Figure 3-6. Displaying a Second Colormap

This step illustrates a way to display a second colormap.


The colormap on the left displays the densities; the one on the right displays the
thickness. The default color convention is such that the red color indicates the largest
values, and the dark blue color indicates the smallest values.

You can change the color scheme by choosing Setup > Options and selecting the
Histograms tab.
8. In either colormap, hold your mouse over a square of interest to display a tooltip
showing the value corresponding to that particular window.
9. Compare metal heights for metal2 and metal3.
a. Close both existing colormap windows.
b. Click on the lower edge of the Calibre RVE for DFM window and drag the edge
down to enlarge the window size.
c. Right-click the row for M2, and choose Colormap > Z2.
d. Repeat the previous step for the M3 row.

Calibre® CMPAnalyzer User’s Manual, v2017.1 29


CMP Analysis Results
Reviewing Analysis Results

e. Choose Window > Tile Vertical.


Figure 3-7. Comparing Colormaps

10. Create a colormap and a histogram displaying the results of the Dishing check.
a. From the menu, choose Window > Close All to close all existing colormap
windows.
b. To create a colormap quickly, double-click on the table cell that corresponds to the
row for M2 and column for Rule_Dishing. This creates a colormap of data values
color coded throughout the chip.

30 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

Figure 3-8. Displaying a Colormap — Method Two

The colormap for Dishing represents the difference between oxide and metal
heights. The color convention is such that the red color indicates the largest check
results values, and the dark blue color indicates the smallest check results.
Note the dotted lines near the top and right sides of the colormap. These dotted lines
represent the actual extent of the layout relative to the window grid. Extending the
colormap beyond the actual extent allows you to visualize hotspots and other data
for those portions of the design that might otherwise be represented as a tiny sliver.
You can click on the Oxide Height Min stipple pattern in the legend to highlight
these tiles on the colormap and in DESIGNrev. Click the stipple pattern a second
time to remove the highlighting.
c. Close the colormap. Right-click on the row for M2, then select Histogram >
Hotspot_Rule_Dishing. This creates a histogram of results sorted into 10 bins by
default, which you can change. The number above each bar in the histogram
represents the number of windows that fall within that data range. To narrow the
data range, right-click on the histogram and enable the Show Range Controls
option. Next to Range, select Custom Min:Max and enter 100 for the lower bound.
Click Update. The histogram is updated to reflect the new data range.

Calibre® CMPAnalyzer User’s Manual, v2017.1 31


CMP Analysis Results
Reviewing Analysis Results

Figure 3-9. Displaying a Histogram

If you have limited time and are interested in only the worst areas of a layout for a
particular rule, you can right-click on any histogram bar and choose Highlight This Bar
to display the corresponding windows in DESIGNrev.

11. Configure the tooltip display to report other values for that portion of the design.
Each square in a colormap represents a window (or rectangular area) within your design.
When you place your cursor over a particular square in the colormap, you display a tool
tip that reports the properties and coordinates for that window. By default, only the
original property of interest and the coordinates are displayed in the tooltip window.
Additional properties can be added from a property list.
a. Close the histogram from the previous step. Right-click on the M1 row and choose
Colormap > Thickness_Metal.
b. Right-click anywhere over the Colormap to display the colormap popup menu.
c. Choose Show Properties > Density.

32 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

Figure 3-10. Configuring Tooltip Display

Figure 3-11. Using Tooltip Displays

12. Display a profile plot that represents thickness versus the X or Y direction.
a. Right-click on the colormap and choose Show Profile > By X Direction. The
profile plot is displayed in a new window as shown in Figure 3-12 on page 34.
You can adjust the range of the plot by entering new values in the text field and
clicking Update.
To zoom in or zoom out on a profile, do one of the following:
o To zoom in, hold down the right mouse button and move the cursor left to right.
To zoom out, hold down the right mouse button and move right to left. Zooming
out returns the plot to the previous zoom in view.
o Hold down the right mouse button and choose Zoom In, Zoom Out, or Zoom
All from the available menu options.
o Use the keyboard shortcuts shown in Table 3-1.

Calibre® CMPAnalyzer User’s Manual, v2017.1 33


CMP Analysis Results
Reviewing Analysis Results

Table 3-1. Zoom Shortcut Keys for CMP Analysis


Shortcut Command
Ctrl + a Zoom all
Ctrl + z Zoom in
Z Zoom out

Figure 3-12. Profile Plot

You can change the profile plot settings using the text fields and dropdown lists.
Right-click in the lower-left corner of the profile plot window for a popup menu to
show or hide Plot Settings, Grid Settings, and Profile Settings. You can redefine the
default configuration of the profile plot settings by choosing Setup > Histograms &
Colormaps and specifying the Plot Settings and Grid Settings.
Figure 3-13. Profile Plot with User-Defined Settings

Plot colors may be specified as Tk symbolic color names or RGB hexadecimal color
codes (for example “blue” or “#0000FF”). Some valid color names are red, green,
black, grey, blue, yellow, magenta, cyan, darkblue, slateblue, turquoise, lightgray,
wheat, goldenrod, sandybrown, and coral.

34 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Reviewing Analysis Results

You can update the profile plot settings by changing the values for the profile plot
parameters. For example, Figure 3-14 displays a profile plot with a red plot line,
triangle symbol, green grid lines, and a gray background.
Figure 3-14. Profile Plot with Updated User-Defined Settings

The profile plot settings and values are shown in Table 3-2.
Table 3-2. Profile Plot Settings
Settings Name Values Description
Plot Settings Symbol Dropdown list selection. Set the type of symbol for
the plot.
Width Number of pixels. Set the width of the plot
line.
Color Color name or hexadecimal Set the color of the plot
code. line.
BG Color Color name or hexadecimal Set the background color of
code. the plot.
Grid Settings Dash Dropdown list selection. Set the dash style of the
grid lines.
Width Number of pixels. Set the width of the grid
lines.
Color Color name or hexadecimal Set the color of the grid
code. lines.
Profile Settings Profile at Coordinate in microns. Specify profile Y
Y= coordinate.
Range = Coordinate in microns. Specify the range of the
plot.

13. Find an area of interest and view the colormap in Calibre DESIGNrev.

Calibre® CMPAnalyzer User’s Manual, v2017.1 35


CMP Analysis Results
Reviewing Analysis Results

a. Move your mouse over the red areas in the colormap to view the check results
values.
b. When you find a window reporting a particularly high value for Thickness_Metal,
click the right mouse button to display the popup menu.
The first line of data displays the coordinates for that window.
c. Click on the coordinates in the popup menu.
Notice that the view in the Calibre DESIGNrev window changes. It now displays the
area in the design represented by that window.
d. In the Layers pane in Calibre DESIGNrev, hide all layers except layer M1 and the
rve highlight layer. The blue hash mark square highlights the window selection.

e. When you are done analyzing hotspot rule data, close the colormap in the Calibre
RVE for DFM window.
14. View detailed properties:
You can also get a good overview of how well the design is doing against all rules by
looking at rule statistics for all rules simultaneously.
a. In the Calibre RVE for DFM window, click on the Layer Browser tab.
b. Double-click on the row for M1_data_detail.
A Calibre RVE for DRC window appears as a new tab. Inside there is a list of
properties with minimum, maximum and mean values. You might be particularly
interested in these values when working with your own design. You can display a
colormap or a histogram for any particular rule by clicking on the Histogram or
Colormap options from the right-click menu.

36 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Recalculating Hotspots

Figure 3-15. Viewing Individual Errors in Calibre RVE

c. Once you are done looking at the statistics close the M1_data_detail.rdb tab and
switch back to the CMP tab inside the Calibre RVE for DFM window.

Recalculating Hotspots
You can change the constraint values on hotspot rules in Calibre RVE for DFM by using the
Recalculate Hotspots dialog box (Tools > CMP > Recalculate Hotspots).
This dialog box allows you to enter new threshold values for various layer and hotspot rule
name combinations. Refer to Figure 3-16.

Figure 3-16. Recalculate Hotspots Dialog Box

Prerequisites
• You have performed a CMP analysis as described in “CMP Analysis” on page 13, and
you have a DFM database containing the analysis results.

Calibre® CMPAnalyzer User’s Manual, v2017.1 37


CMP Analysis Results
Creating Scatter Plots

• Calibre RVE for DFM is running and the CMP analysis results are displayed in the CMP
tab.
Procedure
1. Choose Tools > CMP > Recalculate Hotspots. This displays the Recalculate Hotspots
dialog box with an empty table.
2. For each row, click in the Layer and Rule Name columns and select a value using the
dropdown menus. Enter a new threshold value by clicking on the Threshold column for
the row.
3. Click Recalculate then Close to display the new values in Calibre RVE for DFM.

Tip
To apply default threshold values to all layer and rule name combinations in the
design, click Restore Defaults. To apply defaults to only the Layer and Rule Name
combinations that you selected using the dropdown menus, enable Apply to Picked
Only before clicking Restore Defaults.

Creating Scatter Plots


You can plot the values of one property versus another for a single layer or across two layers
using scatter plots.
Figure 3-17 shows an example.

Figure 3-17. Scatter Plot

Prerequisites
• You have followed the steps described in “CMP Analysis” on page 13, and you have a
DFM database containing the analysis results.
• Calibre RVE for DFM is running and the CMP analysis results are displayed in the CMP
tab.

38 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Exporting Hotspot Reports

Procedure
1. Choose Tools > Scatter Plot to open the Plot Options dialog box.
2. Click in each column in the Data table to enter a value. The columns have the following
meaning:
• Layer X and Prop X — Specifies the layer and property names to plot on the X
axis. The layer names are normally _detail layers.
• Layer Y and Prop Y — Specifies the layer and property names to plot on the Y
axis. The layer names are normally _detail layers.
• Line Name — Specifies a name for the plot, which is shown in the legend.
3. Select a setting for Order By, which controls how lines are drawn connecting the data
points on the scatter plot.
4. In the Settings section, specify the title of the plot, names for the X and Y axes, and an
optional color set. Specify one color for each row in the Data table, separated with
spaces.
Figure 3-18 shows an example of the Plot Options dialog box.
Figure 3-18. Scatter Plot Options

5. Click Plot to generate the scatter plot. You can view the values for a particular data
point by moving your mouse over it.
6. To save the plot as either a GIF image or a text file, right-click on the plot and choose
Save Plot.

Exporting Hotspot Reports


After investigating the CMP analysis data, you can export the data as a hotspot report.

Calibre® CMPAnalyzer User’s Manual, v2017.1 39


CMP Analysis Results
Exporting CMPAnalyzer Thickness Data to File for Extraction Tools

Note
The following procedure describes how to save a hotspot report from Calibre RVE. You can
also instruct Calibre Interactive to save a summary report with the total hotspot count by
enabling the option “Write CMP Summary Report file” on the CMP tab of the Outputs pane in
Calibre Interactive.

Prerequisites
• A DFM Database containing the CMP analysis results; see “CMP Analysis” on page 13.
Procedure
1. Open the DFM Database in Calibre RVE for DFM.
2. Choose File > Save Hotspots Report and specify the filename for the report.

Tip
You can also use the YieldServer command “cmp::save_hotspots_report -file
filename” to save a hotspot report.

Results
You can view the hotspots report in a text editor. The report includes rule headings with a list of
failing windows (and corresponding hotspot values) for each rule.
Related Topics
CMP YieldServer Commands

Exporting CMPAnalyzer Thickness Data to File


for Extraction Tools
You can create input data for the Calibre parasitic extraction tools by exporting CMPAnalyzer
thickness data to a file.
You can export the file from Calibre RVE for DFM or by using the YieldServer command
cmp::save_xrc_report. The format of the output file(s) is described in the “Results” section.

Prerequisites
• You have a DFM database containing the CMP analysis results. See “CMP Analysis” on
page 13.
Procedure
1. Do one of the following, depending on whether you want to do the export from Calibre
RVE or with a YieldServer script:
• From Calibre RVE for DFM

40 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Exporting CMPAnalyzer Thickness Data to File for Extraction Tools

i. Choose File > Save Extraction Data to open a dialog box for the export.
ii. Specify the directory for the output data and click OK.
• With a YieldServer script
i. Create a YieldServer script with the cmp::save_xrc_report command similar to
the following:
dfm::open_db dfmdb/[Link]
cmp::save_xrc_report -dir export_dir
dfm::close_db

where the output files are written to the export_dir directory.


ii. Execute the YieldServer script from the command line as follows:
calibre -ys -cmp -exec export_xrc.ys

2. Use the exported files with your extraction tool. See the following topics:
“Varying Thickness with CMP Files” in the Calibre xRC User’s Manual
“Varying Thickness with CMP Files” in the Calibre xACT User’s Manual
PEX CMP Mode in the SVRF Manual
Results
The saved extraction data is dependent upon the simulator choice for the CMP analysis.
TSMC Simulator Output Files
• For a TSMC flow, the output consists of multiple files for each metal layer. The names
of the files are automatically generated based on the name of the metal layer as follows:
o <layer>[Link] — Average topology thickness data
o <layer>[Link] — Oxide thickness data
o [Link] — Thickness_Metal_Electrical for e_hotspots
o <layer>[Link] — Metal thickness data
where <layer> is replaced with the layer name. For example, files for the layer “metal1”
are named [Link], [Link], and [Link]. See “Thickness Parameters
in the TSMC VCMP Simulator Flow” on page 67 for additional information on the
thickness parameters.
MGC Simulator Output Files

Calibre® CMPAnalyzer User’s Manual, v2017.1 41


CMP Analysis Results
Exporting Analysis Results in Batch Mode

• For the MGC flow, the output consists of one file per metal layer. The file is named as
followed:
o <layer>_thk.txt — Metal thickness data (Z2-Z3)
where <layer> is replaced with the layer name. For example, the file for the layer
“metal1” is named metal1_thk.txt. See “Thickness Parameters in the MGC Simulator
Flow” on page 64 for additional information on the thickness parameters.
Output File Format
• The format of the output file(s) is the same for the TSMC and MGC flow. There is one
line of data for each window. The file has the following format:
x1_ll y1_ll x1_ur y1_ur thickness_value1
x2_ll y2_ll x2_ur y2_ur thickness_value2
...
xN_ll yN_ll xN_ur yN_ur thickness_valueN

where the parameters are defined as follows:

o xN_ll yN_ll — x- and y-coordinates for the lower left corner of the Nth window.

o xN_ur yN_ur — x- and y-coordinates for the upper right corner of the Nth window.

o thickness_valueN — The thickness value for the Nth window, where the value
reported depends on the simulator choice. For the MGC simulator, the value is the
metal thickness (Z2-Z3). For the TSMC simulator the value depends on the output
file; see “TSMC Simulator Output Files” in the preceding text.
Related Topics
CMP YieldServer Commands

Exporting Analysis Results in Batch Mode


If desired, you can export tables, charts, colormaps and histograms that can be viewed in HTML
format.
To do this, you must create a configuration file that follows the format described in “DFM
HTML Reporting” in the Calibre Interactive and Calibre RVE User’s Manual.

The “CMP Batch Reporting” on page 81 section contains example batch reporting
configuration files that you can modify for use with your design. The following procedure
assumes you are creating a new configuration file from scratch.

Prerequisites
• You have followed the steps described in “CMP Analysis” on page 13, and you have a
DFM database containing the analysis results.

42 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Exporting Analysis Results in Batch Mode

Procedure
1. Create a new file in your working directory named [Link]. This file will be used as the
batch reporting configuration file.
2. In the file, create a Common section. This section defines default values for key names
that are not specified in other sections. For example:
[Common]
GroupsToInclude = *
RulesToInclude = *
BinsToInclude = *
MetricsToInclude = *
Rows = *
Sort = Descending
GroupBy = Metrics
OutputFormat = html, csv, chart

3. Create a new section for each report that you want to output.
Section names are enclosed in brackets []. The ReportType key name specifies the type
of report that is generated. Filtering can also be applied in a number of ways, including
using the RulesToInclude, BinsToInclude, and MetricsToInclude key names.
For example, the following section:
; Create Density Histograms
[Original Density Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Density"

results in the report shown in Figure 3-19, which displays the Density histograms in the
Original bin for each metal layer.
Figure 3-19. Reports for Original Density Histograms

4. Create X and Y profile plots.

Calibre® CMPAnalyzer User’s Manual, v2017.1 43


CMP Analysis Results
Exporting Analysis Results in Batch Mode

Creating X and Y profile plots in batch reporting is unique to the CMP analysis flow.
You can specify the direction of the plot and location of the cut line, then generate the
plot.
To do this, you can include the following in your batch configuration file:
//For X direction
[REPORT_NAME]
ReportType = ByWindowColorMap
XProfileInclude = <profile line coordinate>

//For Y direction
[REPORT_NAME]
ReportType = ByWindowColorMap
XProfileInclude = <profile line coordinate>

For more information, refer “DFM HTML Reporting” in the Calibre Interactive and
Calibre RVE User’s Manual.
5. Run Calibre as follows:
calibre -rve -dfm dfmdb -report config_file \
-outputdir output_directory -cmp

where dfmdb is the name of the DFM database, config_file is the name of the batch
reporting configuration file, and output_directory is the name of the directory that is
created to contain the output files.
6. When the run is complete, open [Link] in the./reports directory, which looks similar
to Figure 3-20. This file contains links to tables and images of charts, colormaps and
histograms. These tables and images are the same ones that can be viewed using Calibre
RVE for DFM.

44 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Exporting Analysis Results in Batch Mode

Figure 3-20. CMPAnalyzer Batch Reporting Index Page

Calibre® CMPAnalyzer User’s Manual, v2017.1 45


CMP Analysis Results
Calculating User-Defined Hotspots

Calculating User-Defined Hotspots


You can calculate user-defined hotspots by running a Tcl script that calls the
cmp::register_hotspot_proc and cmp::register_hotspot_threshold_proc commands. The results
can be viewed in Calibre RVE for DFM.
Tcl Script for User-Defined Hotspots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Running CMPAnalyzer with User-Defined Hotspots. . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Analyzing CMPAnalyzer User-Defined Hotspot Results. . . . . . . . . . . . . . . . . . . . . . . . . 50
Mapping Properties to Hotspot Rule Names. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Tcl Script for User-Defined Hotspots


You can calculate user-defined hotspots by running a Tcl script that calls the
cmp::register_hotspot_proc and cmp::register_hotspot_threshold_proc commands. The Tcl
script calculates the hotspot metric and compares the value to a threshold. An example is given
which calculates a hotspot based on a perimeter metric.
Tcl scripts for user-defined hotspots are explained in the following sections with a description
of the basic contents, a summary of the example code, and an example.

Basic Contents
In general, a Tcl script for user-defined hotspots has the following elements:

• Procedure to calculate the hotspot metric for a layer and add the property to the layer.
This procedure is called with a detail layer as an argument.
• Procedure to calculate the hotspot threshold property. Typically, the hotspot threshold
property indicates the pass/fail status. This procedure is called with the detail layer and a
value used in computing the hotspot threshold property. By default, Calibre RVE
expects the hotspot threshold property to have the name “Hotspot_<metric>”, where
<metric> is the property name of the hotspot metric.
The return value of this procedure should be the number of failing tiles. The return value
is displayed in the column for the hotspot rule in the CMP tab of Calibre RVE.
• Call to cmp::register_hotspot_proc to register the procedure that calculates the hotspot
metric. The argument to the -rule_name option should be the property name for the
hotspot metric.
• Call to cmp::register_hotspot_threshold_proc to register the procedure that calculates
the hotspot threshold property. The argument to the -rule_name option should be the
property name for the hotspot metric. The -output_properties argument gives the name
of the hotspot threshold property, typically “Hotspot_<metric>”.

46 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Tcl Script for User-Defined Hotspots

Example Code Summary


The example code calculates a user-defined hotspot based on the perimeter metric. The code has
this basic outline:

• proc calc_perimeter( geom_layer )


Calculates a perimeter value from an input geometry layer. A temporary layer with the
property is created using DFM Analyze, then the property “Perim_Density” is added to
the _data_detail layer for the input geometry layer.
• proc perimeter_metric( detail_layer )
Gets the geometry layer from the input detail layer and calls the proc calc_perimeter() to
calculate the hotspot metric.
• proc perimeter_fails( detail_layer hs_value )
Gets the hotspot metric for the layer and compares it to the threshold value. It creates the
“Hotspot_Perim_Density” property, which is 0 or 1 to indicate pass/fail. The number of
failing windows is totaled and returned; this return value is displayed in Calibre RVE for
the hotspot rule.
• cmp::register_hotspot_proc -rule_name Perim_Density \
-proc perimeter_metric
cmp::register_hotspot_threshold_proc -rule_name Perim_Density \
-proc perimeter_fails values 5 -output_properties "Hotspot_Perim_Density"
Register the hotspot metric procedure and the hotspot threshold procedure so that they
are called during hotspot calculation. The rule name is Perim_Density, the same as the
property name for the metric. The -output_properties value is the hotspot threshold
property name, “Hotspot_Perim_Density.”

Calibre® CMPAnalyzer User’s Manual, v2017.1 47


CMP Analysis Results
Tcl Script for User-Defined Hotspots

Example Tcl Script for User-Defined Hotspot Calculation


# Tcl script to generate a perimeter property as a hotspot

proc calc_perimeter { geom_layer } {


# calculate perimeter metric Perim_Density
# use DFM Analyze to create the perimeter density on a temporary layer
# note, change window size to a variable passed to this function
# for MGC simulator as 20 only works for TSMC
set svrf "${geom_layer}_PD = DFM ANALYZE $geom_layer \
\[PERIMETER($geom_layer)/AREA()\] >=0 WINDOW 20 INSIDE OF LAYER \
DB_EXTENT "
dfm::new_layer -svrf $svrf
# this generate a _PD layer and a _PD_detail layer
#
# copy the DV property from _PD_detail layer to data_detail layer
dfm::add_property ${geom_layer}_data_detail "Perim_Density" 0 -double
set geos_source [dfm::get_geometries ${geom_layer}_PD_detail]
set geos_destination [dfm::get_geometries ${geom_layer}_data_detail]

# this works because the layers have the same window geometries
# and Calibre sorts them in the same default order
while { $geos_source ne "" } {
set s_data [dfm::get_data $geos_source -geometry_property "DV"]
dfm::add_property $geos_destination "Perim_Density" $s_data -double
dfm::inc geos_source
dfm::inc geos_destination
}
# delete the temporary layers
dfm::delete_layer ${geom_layer}_PD
dfm::delete_layer ${geom_layer}_PD_detail
}

proc perimeter_metric { detail_layer } {


# need to get geom data from detail layer name
set nameIdx [string first "_data_detail" $detail_layer]
set geom_layer [string range $detail_layer 0 [expr $nameIdx - 1]]
# calculate the perimeter property
calc_perimeter $geom_layer
# we should now have the Perim_Density property on the
# _data_detail layers
}

proc perimeter_fails { detail_layer hs_value } {


# Compare Perim_Density property to a threshold
# and count failing windows.
# By default, RVE expects a hotspot threshold property name of
# Hotspot_<property>
# Note, property added is "0" if pass and "1" if fail
#
# delete this property if it already exists
catch {dfm::delete_property $detail_layer "Hotspot_Perim_Density"} msg
dfm::add_property $detail_layer "Hotspot_Perim_Density" 0 -double
set geos [dfm::get_geometries $detail_layer]
#
# compare perimeter property to threshold and increment count if fails
set fails 0
while { $geos ne "" } {

48 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Running CMPAnalyzer with User-Defined Hotspots

set metric [dfm::get_data $geos -geometry_property "Perim_Density" ]


if { $metric > $hs_value } {
dfm::add_property $geos "Hotspot_Perim_Density" 1 -double
incr fails
}
dfm::inc geos
}
puts "Number of $detail_layer Hotspot_Perim_Density $fails"
return $fails
# the return value is displayed in RVE as the result of the rule
}

# register the calculation and hotspot comparison procs so that


# they are calculated with the normal hotspots
cmp::register_hotspot_proc -rule_name Perim_Density \
-proc perimeter_metric
cmp::register_hotspot_threshold_proc -rule_name Perim_Density \
-proc perimeter_fails -values 5 \
-output_properties "Hotspot_Perim_Density"

Related Topics
CMP YieldServer Commands

Running CMPAnalyzer with User-Defined Hotspots


You can run CMPAnalyzer with custom hotspot calculations.
Prerequisites
• You have a runset for CMP analysis. See “CMP Analysis with the Calibre Interactive
GUI” on page 13 for the steps to create a runset.
• You have a Tcl script to calculate the user-defined hotspot properties. See “Tcl Script
for User-Defined Hotspots” on page 46.
Procedure
1. Set the MGC_CMPA_UD_HOTSPOT_RULES environment variable to the path
relative to your working directory for the Tcl script that calculates the user-defined
hotspot. For example:
setenv MGC_CMPA_UD_HOTSPOT_RULES ./custom_hotspots.tcl

2. Launch Calibre DESIGNrev and load your layout:


calibredrv -m layout

3. In Calibre DESIGNrev, choose Verification > Run DFM.

Calibre® CMPAnalyzer User’s Manual, v2017.1 49


CMP Analysis Results
Analyzing CMPAnalyzer User-Defined Hotspot Results

This invokes Calibre Interactive in DFM mode. Specify the path to your CMPAnalyzer
runset in the Load Runset File dialog box.
4. Click Run CMP.
5. Click the Start RVE button if Calibre RVE does not start automatically after the run is
finished.
6. See “Analyzing CMPAnalyzer User-Defined Hotspot Results” on page 50 for
instructions on analyzing the results.

Analyzing CMPAnalyzer User-Defined Hotspot


Results
You can view the results of user-defined hotspot rules in Calibre RVE for DFM.
Prerequisites
• Results from a Calibre CMPAnalyzer run with user-defined hotspots. See “Running
CMPAnalyzer with User-Defined Hotspots” on page 49.
• The hotspot threshold property is named according to the standard practice or specified
with the -output_properties argument to cmp::register_hotspot_threshold_proc in the
Tcl script for user-defined hotspots. The standard practice is to name the hotspot
threshold property “Hotspot_<metric>”, where <metric> is the property name of the
hotspot metric. See “Tcl Script for User-Defined Hotspots” on page 46.
If the above statement is not true, see “Mapping Properties to Hotspot Rule Names” on
page 52.
Procedure
1. Open the DFM Database in Calibre RVE for DFM. Do one of the following:
• From Calibre Interactive, click Start RVE.
• From a layout viewer, choose Calibre > Start RVE or Verification > Start RVE,
depending on your viewer. Specify the DFM Database and click OK.
2. Select the CMP tab.
If the rule name for the user-defined hotspot does not appear as a column in the CMP
tab, right-click in the data table, select Show/Hide, and enable the custom metric.
3. To create a colormap select the desired metal layer on the CMP tab and double-click in
the column for hotspot rule.
The following figure shows an image of the CMP tab in Calibre RVE where the user-
defined hotspot metric is “Perim_Density.” See “Tcl Script for User-Defined Hotspots”
on page 46 for example code. The colormap is shown in the lower window.

50 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Analyzing CMPAnalyzer User-Defined Hotspot Results

Figure 3-21. User-Defined Hotspot on CMP Tab in Calibre RVE.

Results
Right-click in the colormap and select Colormap Windows to create a colormap in the layout
viewer. This maps the tiles shown in the colormap to corresponding tiles in the layout viewer.
Figure 3-22 shows an example of this mapping with the layout shown in Calibre DESIGNrev.

Calibre® CMPAnalyzer User’s Manual, v2017.1 51


CMP Analysis Results
Mapping Properties to Hotspot Rule Names

Figure 3-22. Hotspot Tiles Corresponding to Layout View

Mapping Properties to Hotspot Rule Names


You can use Calibre RVE for DFM to map a property name to a user-defined hotspot rule. This
is useful if the hotspot threshold property is not named according to the standard practice or is
not specified with the -output_properties argument to cmp::register_hotspot_threshold_proc in
your Tcl script for user-defined hotspots.
The standard practice is to name the hotspot threshold property “Hotspot_<metric>”, where
<metric> is the property name of the hotspot metric. See “Tcl Script for User-Defined
Hotspots” on page 46.

Prerequisites
• The Tcl script for user-defined hotspots does not use the -output_properties argument to
cmp::register_hotspot_threshold_proc.
• Results from a Calibre CMPAnalyzer run with user-defined hotspots. See “Running
CMPAnalyzer with User-Defined Hotspots” on page 49.
Procedure
1. Set the environment variable ALLOW_RULE_MAPPING to 1.

52 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Analysis Results
Hot Spot Analysis Batch Procedure

2. Open the DFM Database in Calibre RVE for DFM. Do one of the following:
• From Calibre Interactive, click Start RVE.
• From a layout viewer, choose Calibre > Start RVE or Verification > Start RVE,
depending on your viewer. Specify the DFM Database and click OK.
3. Select the CMP tab.
4. Right-click in the table on the CMP tab and choose Rule/Property Map to open the
Mapping Properties dialog box.
5. Click in the Property Name entry for the rule you want to map and select the correct
property name in the dropdown list.

6. Click Apply and Close.


Results
When you double-click in the hotspot rule column on the CMP tab, a colormap is created for
the rule using the correct property.
Related Topics
Analyzing CMPAnalyzer User-Defined Hotspot Results
Tcl Script for User-Defined Hotspots

Hot Spot Analysis Batch Procedure


You can perform hot spot analysis in batch mode.
Procedure
1. Write a Tcl script that defines a custom hotspot metric. This file must call the
cmp::register_hotspot_proc and cmp::register_hotspot_threshold_proc commands.

Calibre® CMPAnalyzer User’s Manual, v2017.1 53


CMP Analysis Results
Hot Spot Analysis Batch Procedure

Refer to “Tcl Script for User-Defined Hotspots” on page 46 for an example script. Place
this file in your working directory.
2. Set the MGC_CMPA_UD_HOTSPOT_RULES environment variable to the path
(relative to your working directory) to the Tcl script you created in the previous step. For
example:
setenv MGC_CMPA_UD_HOTSPOT_RULES ./custom_hotspots.tcl

3. Run CMPAnalyzer in batch mode:


calibre -gui -dfm -runset runset -batch | tee [Link]

4. Launch Calibre DESIGNrev and Calibre RVE for DFM:


calibredrv -m layout -rve -dfm dfmdb

5. See “Analyzing CMPAnalyzer User-Defined Hotspot Results” on page 50 for


instructions on viewing the results in Calibre RVE.
Note that batch reporting does not support metrics.
Related Topics
CMP Batch Reporting

54 Calibre® CMPAnalyzer User’s Manual, v2017.1


Chapter 4
CMP Bucketing Flow

The CMP bucketing flow is a pseudo feature-scale simulation option that provides extra
information about shapes with different widths for each tile, that is each window, or frame.
Based on the simulation results, different thicknesses will be reported for each bucket.
Note
The bucketing flow exists for the MGC simulator only.

You use Calibre Interactive for DFM to enable the bucketing, and view the results of the
bucketing in Calibre RVE for DFM and a layout viewer such as Calibre DESIGNrev or Calibre
WORKbench. Note that simulation with bucketing may involve longer run times due to the
extra calculations for buckets, especially for large designs.

You must enable bucketing simulation by setting the Width for Bucketing Range parameter in
Calibre Interactive for DFM using following method:

Running the CMP Bucketing Flow in Calibre Interactive for DFM . . . . . . . . . . . . . . . 55

Running the CMP Bucketing Flow in Calibre


Interactive for DFM
You use Calibre Interactive for DFM to enable and run the bucketing simulation. You can view
and analyze results using Calibre RVE for DFM and Calibre DESIGNrev or Calibre
WORKbench.
Prerequisites
• If you are using the MGC simulator, you have a valid recipe file. Refer to the Calibre
CMP Model Builder User’s and Reference Manual for details on creating a recipe file.
• You have set CALIBRE_HOME or MGC_HOME to the path to the Calibre software
tree. Refer to the Calibre Administrator’s Guide for information on setting this variable.
Procedure
1. In a shell, invoke Calibre Interactive for DFM using the following command:
calibre -gui -dfm

2. Set the simulation design and other settings. Refer to the procedure in “CMP Analysis
with the Calibre Interactive GUI” on page 13.

Calibre® CMPAnalyzer User’s Manual, v2017.1 55


CMP Bucketing Flow
Running the CMP Bucketing Flow in Calibre Interactive for DFM

3. Click Inputs and then click the Simulator Options tab.

By default, Calibre CMPAnalyzer uses a bucketing mechanism that defines the required
number of buckets automatically. You enable the bucketing flow by entering a 0 to 1
positive value in the Width for Bucketing Range field.
• Width for Bucketing Range — Specifies a value from 0 to 1 inclusive that is the
percentage (limit) used to calculate bucket widths for each tile. Use the following
guidance to determine this value:
Width for Bucketing Behavior
Bucketing Range
0 Maximum possible number of buckets.
Shapes with different widths are placed in different
buckets for each tile. Consequently, the tool
generates the maximum possible number of
buckets.
small (near 0) Large number of buckets.
large (near 1) Small number of buckets.
1 One bucket per tile.
All shapes are placed in a single bucket for each
tile. This is equivalent to a simple run without
bucketing.

See “Simulator Options Tab on the Inputs Pane” on page 76 for information about the
other options on this tab.
4. Clicking Run CMP to perform the simulation.

56 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Bucketing Flow
Running the CMP Bucketing Flow in Calibre Interactive for DFM

5. When the simulation is completed, invoke Calibre DESIGNrev or Calibre WORKbench


with your layout. For example:
calibredrv -m my_design

6. From Calibre DESIGNrev/WORKbench, choose Verification > Start RVE.

7. In the dialog box, choose the DFM database and click Open.
8. Right-click on the M1 row, choose Colormap, and choose a property to colormap.
Figure 4-1. Displaying a Colormap

Calibre® CMPAnalyzer User’s Manual, v2017.1 57


CMP Bucketing Flow
Running the CMP Bucketing Flow in Calibre Interactive for DFM

To zoom in on the colormap, click and hold the right mouse button, drag the mouse
down and to the right, and release the right mouse button. To zoom out, perform a
similar procedure except drag the mouse up and to the left.
If enabled through the Setup > Options menu, you can check the Enable Autorange
checkbox on the fast colormap to fit colors to the current visible range of values.
Figure 4-2. Colormap with Color Range Enabled

58 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMP Bucketing Flow
Running the CMP Bucketing Flow in Calibre Interactive for DFM

9. Right-click on a tile in the colormap and select Colormap Shapes by and choose one of
Thickness_Metal, Hotspot_Rule_Dishing, Thickness_Z2, or Thickness_Topology,
as shown in the following figure.

Calibre® CMPAnalyzer User’s Manual, v2017.1 59


CMP Bucketing Flow
Running the CMP Bucketing Flow in Calibre Interactive for DFM

The corresponding buckets are displayed in Calibre DESIGNrev as layers with different
colors.

Results
In Calibre DESIGNrev or Calibre WORKbench, the bucketing information is displayed as layer
names using the following format:
{metal layer}_W{window index}_BW={number}_{Property}={number}

where Property abbreviations are as follows:


• ThM — Thickness_Metal
• D — Hotspot_Rule_Dishing
• Z2 — Thickness_Z2
• ThT — Thickness_Topology
BW stands for bucket width.
The values of bucket properties are given in Angstroms.

60 Calibre® CMPAnalyzer User’s Manual, v2017.1


Chapter 5
CMPAnalyzer Reference

Reference material for the Calibre CMPAnalyzer tool is provided.


Terms and Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
MGC Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
TSMC VCMP Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Calibre Interactive GUI Items for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
CMP Tab in Calibre RVE for DFM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
CMP Batch Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
CMP YieldServer Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Colormap Stipple Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Layer Number Specification Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Pre-Defined Layers File Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Terms and Concepts


Definitions and explanations for a number of terms and concepts related to the CMP process
and Calibre CMPAnalyzer.
• Antidishing_Bridge — Applies to the TSMC VCMP Simulator Flow only. Anti-
dishing refers to dishing in the oxide caused by an oxide removal rate that is greater than
the copper removal rate. Advanced process nodes commonly use softer, low-k oxide
materials, resulting in an increased removal rate by abrasive action.
• Depth of Focus — Refers to the maximum distance from a focal plane over which an
acceptable pattern can be imaged. At each patterning step, the quality of the printed
image depends on the planarity of the underlying oxide. If the oxide height differences
are too large, images may fall out of the depth of focus range, which results in a loss of
pattern fidelity during resist exposure. This ultimately leads to undesirable variation in
wire width after etch. For the MGC Simulator Flow, depth of focus is defined as the
global maximum tile height minus the global minimum tile height, or Z4max - Z4min,
and is measured before etch. Refer to Figure 5-1. For the TSMC VCMP Simulator Flow,
depth of focus is defined as the maximum of the absolute metal or oxide height minus
the minimum of the absolute metal or oxide height. It is measured after CMP is
performed.

Calibre® CMPAnalyzer User’s Manual, v2017.1 61


CMPAnalyzer Reference
Terms and Concepts

Figure 5-1. Depth of Focus (MGC Simulator Parameters)

• Dishing — Refers to the result of a copper removal rate that is greater than the oxide
removal rate (positive dishing), or to the result of a copper removal rate that is less than
the oxide removal rate (negative dishing). In the MGC Simulator Flow, dishing is
defined as the difference between the oxide and metal heights, or Z1 - Z2, for a given tile
as in Figure 5-2. In the TSMC VCMP Simulator Flow, dishing is defined as |Z1 - Z2| for
a given tile. Dishing cannot be negative for the VCMP flow.
Figure 5-2. Dishing (MGC Simulator Parameters)

• Erosion — Occurs when the CMP process removes more oxide in one area compared
with another area due to pattern variation across the chip. This can lead to a reduction in
oxide height, which can contribute to systematic issues in the layers above. Values for
erosion are reported for the MGC Simulator Flow only. In this flow, erosion is defined
as the difference between a global reference oxide height and the maximum local tile
height, or Z1field - Z1tile. The value of Z1field is calculated from the average topography
heights of a range of tiles that contain minimal pattern density. Refer to Figure 5-3.

62 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Terms and Concepts

Figure 5-3. Erosion (MGC Simulator Parameters)

• Hotspot — An area that exceeds a specified threshold value of a metric calculated from
simulation results. Hotspots can be thought of as simulation-based DRC violations.
• Tile — A square section of a design. CMPAnalyzer divides designs into approximately
20 um by 20 um rectangular tiles, and the analysis is performed based on average values
for each tile—individual features within a tile are not simulated.
• Trench Bottom — The distance from the zero surface to the bottom of the metal. The
trench bottom value corresponds to parameter Z3 for the MGC Simulator Flow.

Calibre® CMPAnalyzer User’s Manual, v2017.1 63


CMPAnalyzer Reference
MGC Simulator Flow

MGC Simulator Flow


Running CMPAnalyzer with the MGC simulator requires a recipe file. The tool reports on
certain thickness parameters and rules.
Required Inputs for the MGC Simulator Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Thickness Parameters in the MGC Simulator Flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Rule Output in the MGC Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Required Inputs for the MGC Simulator Flow


To run the MGC simulator with CMPAnalyzer, you must provide a recipe file that defines a
surface topography model.
For details on creating a recipe file, see “Creating a Process Recipe File” in the Calibre CMP
Model Builder User’s and Reference Manual.

Thickness Parameters in the MGC Simulator Flow


The MGC Simulator Flow in CMPAnalyzer reports results on certain thickness parameters.

Table 5-1. MGC Thickness Parameters


Parameter Name Description
Z1 Thickness_Z1 The oxide height used for physical hotspot
calculations.
Z2 Thickness_Z2 The metal height used for physical hotspot
calculations.
Z3 Thickness_Z3 The height of the trench bottom. This is the
distance from the zero surface to the bottom
of the metal.
Z4 Thickness_Z4 The height of the oxide surface before trench
patterning.
Z2 - Z3 Thickness_Metal The metal thickness.

Figure 5-4 shows how these thickness parameters are represented in a design.

64 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Rule Output in the MGC Simulator Flow

Figure 5-4. MGC Simulator Parameters

Rule Output in the MGC Simulator Flow


CMPAnalyzer reports results in Calibre RVE for DFM for a number of rules.
The rules in the MGC simulator flow are defined as follows:

• Rule_Depth_Of_Focus — Z4max - Z4min (across the entire die).

• Rule_Dishing — Z1 - Z2 (for the local tile).


• Rule_Erosion — Z1field - Z1tile, where Z1field is defined as AVG(Z1*(1-D) + Z2*D)
for all tiles in the interval [Dmin, D(min+x)], where D is the pattern density and x <= 0.1.

Figure 5-5 shows how these rules are displayed in Calibre RVE for DFM.

Calibre® CMPAnalyzer User’s Manual, v2017.1 65


CMPAnalyzer Reference
Rule Output in the MGC Simulator Flow

Figure 5-5. MGC Simulator Rules in Calibre RVE for DFM

66 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
TSMC VCMP Simulator Flow

TSMC VCMP Simulator Flow


Running CMPAnalyzer with the TSMC Virtual CMP (VCMP) simulator requires a DDK
directory. The analysis reports results on certain thickness parameters and rules.
Required Inputs for the TSCM VCMP Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Thickness Parameters in the TSMC VCMP Simulator Flow . . . . . . . . . . . . . . . . . . . . . 67
Rule Output in the TSMC VCMP Simulator Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Required Inputs for the TSCM VCMP Flow


To run the TSMC VCMP simulator, you must have a DDK directory from the TSMC website
that corresponds to your technology node.
When unpacked, DDK directories from TSMC have the following directory structure:

/[DDK_Name]/VCMP
/[DDK_Technology_File]
/linux64/[VCMP_Lib]
/linux32/[VCMP_Lib]
...

In Calibre Interactive, you must specify the path to [DDK_Name] and


[DDK_Technology_File].

Thickness Parameters in the TSMC VCMP


Simulator Flow
The TSMC VCMP Simulator Flow in CMPAnalyzer reports results on certain thickness
parameters.

Table 5-2. TSMC VCMP Thickness Parameters


Parameter Name Description
Z0 Thickness_Topology A weighted average of Z1 and Z2.
Z1 Thickness_Oxide The oxide thickness used for physical hotspot
calculations.
Z2 Thickness_Metal The metal thickness used for physical hotspot
calculations.
Z2e Thickness_Metal_Electrical The metal thickness used for e-hotspot
calculations. The electrical hotspot feature
thickness value is Z2e + e1 + e2, where e1 and
e2 are values taken from lookup tables in the
TSMC VCMP simulator.

Calibre® CMPAnalyzer User’s Manual, v2017.1 67


CMPAnalyzer Reference
Rule Output in the TSMC VCMP Simulator Flow

Figure 5-6 shows how these thickness parameters are represented in a design.

Figure 5-6. TSMC VCMP Simulator Parameters

Rule Output in the TSMC VCMP Simulator Flow


CMPAnalyzer reports results in Calibre RVE for DFM for a number of rules in the TSMC
VCMP Simulator Flow.
The rules are defined as follows:

• Antidishing_Bridge — Defined as the absolute value of the metal thickness minus the
oxide thickness: |Z2 - Z1|.
• Depth_Of_Focus — Calculated for each 0.5 mm band in both the horizontal and
vertical directions. For each band, it is defined as the maximum of the absolute metal or
oxide height minus the minimum of the absolute metal or oxide height:
MAX[ Z1abs,Z2abs] - MIN[ Z1abs,Z2abs]

• Depth_Of_Focus_col — Number of failing windows in a 0.5 mm vertical band.

68 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Rule Output in the TSMC VCMP Simulator Flow

• Depth_Of_Focus_col_fails — Number of failing 0.5 mm vertical bands.


• Depth_Of_Focus_row — Number of failing windows in a 0.5 mm horizontal band.
• Depth_Of_Focus_row_fails — Number of failing 0.5 horizontal bands.
Figure 5-7 shows how these rules are displayed in Calibre RVE for DFM.

Figure 5-7. TSMC Rules in Calibre RVE for DFM

Calibre® CMPAnalyzer User’s Manual, v2017.1 69


CMPAnalyzer Reference
Calibre Interactive GUI Items for CMPAnalyzer

Calibre Interactive GUI Items for CMPAnalyzer


Calibre Interactive has tabs and options that are specific to CMPAnalyzer runs.
CMP Tab for MGC Simulator (Inputs Pane) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
CMP Tab for TSMC Simulator (Inputs Pane) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Simulator Options Tab on the Inputs Pane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
CMP Tab on the Outputs Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

CMP Tab for MGC Simulator (Inputs Pane)


To access: Click the Inputs button, choose the CMP tab, and select the “MGC” radio button for
“CMP Simulator”
The CMP tab on the Inputs pane of Calibre Interactive sets options for the Calibre
CMPAnalyzer run such as the number of layers and the recipe file for the MGC Simulator flow.
Tab contents are described in Table 5-3. A right-click menu makes it easy to adjust layer
parameters; the right-click menu is described in Table 5-4.

Figure 5-8. Calibre Interactive CMP Tab (MGC Simulator)

Table 5-3. Contents of CMP Tab (MGC Simulator) on the Inputs Pane
Element Description
CMP Simulator Allows you to select which simulator to use when
calculating CMP output.

70 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Tab for MGC Simulator (Inputs Pane)

Table 5-3. Contents of CMP Tab (MGC Simulator) on the Inputs Pane (cont.)
Element Description
Number of Metal Layers The number of metal layers in your design. The value you
supply in this field controls the number of layers (rows)
displayed.
Pre-Defined Layers File Optional entry field for an SVRF input file containing
predefined layers and layer operations. Use the “View”
button to review or edit the input file. Refer to “Pre-
Defined Layers File Format” on page 95 for file content
information and conventions.
Use Defaults Uses the default layer numbers.
Layer Type Column Displays the type of each layer. This field may be edited.
Layer Name Column The “name” of the layer. This is a customizable name used
to assign a readable string to the layer to be simulated. The
layer numbers represent the layer position within the layer
stack. Do not use the underscore (_) in layer names.
Predefined layer names can be entered if a Pre-Defined
Layers File is specified. Refer to “Pre-Defined Layers File
Format” on page 95.
Layer Definition Column Displays the GDS or OASIS layer number and datatype
associated with each layer in the rule file. The layer
numbers represent the layer position within the layer stack.
For the case of predefined layers, only one predefined
layer can be specified per cell. Do not mix predefined layer
names with GDS or OASIS layer number and datatype
names in the same cell. Predefined layers can be specified
with a positive (default) or negative (~) option. Refer to
“Pre-Defined Layers File Format” on page 95.
Pre-Etch Column Displays a layer number and datatype when pre-etching is
defined in the recipe file. Pre-Etch layers can be specified
with a positive (default) or negative (~) option. Multiple
input layers must be either all positive or all negative. By
default, this column is empty.
Etch-Back Selective Optional mask layer used with Etch-Back Layer to
Column selectively define the areas for etch-back. If not specified
(empty), etch-back is performed over the entire design
layer. Etch-Back Selective mask layers can be specified
with a positive (default) or negative (~) option. Multiple
input layers must be either all positive or all negative.
Predefined layer names can be entered if a Pre-Defined
Layers File is specified. Refer to “Pre-Defined Layers File
Format” on page 95. By default, this column is empty.

Calibre® CMPAnalyzer User’s Manual, v2017.1 71


CMPAnalyzer Reference
CMP Tab for MGC Simulator (Inputs Pane)

Table 5-3. Contents of CMP Tab (MGC Simulator) on the Inputs Pane (cont.)
Element Description
Etch-Back Layer Column Optional mask layer that defines features used for
etch-back. This mask layer may be used with Etch-Back
Selective. Predefined layer names can be entered if a
Pre-Defined Layers File is specified. Refer to “Pre-
Defined Layers File Format” on page 95. By default, this
column is empty.
DMx Layer Column Dummy metal exclusion layers. Dummy fill is not placed
inside of these layers. By default, this column is empty.
Via Layer Column Metal interconnect layers that connect a metal layer
upward to the next metal layer in the stack.
OPC Fill Column Layers used to specify any pre-existing dummy fill that is
processed by OPC. By default, this column is empty.
Non-OPC Fill Column Layers used to specify any pre-existing dummy fill that is
not processed by OPC. These layers normally obey larger
design rule values than OPC fill layers (which obey the
same design rules as the original metal). By default, this
column is empty.
Model Index Column Specifies the model used for the metal layer. Allowed
values for Model Index are 1 through 99, where the index
is the sequential number of the model in the recipe file,
with the first recipe having a Model Index of 1.
Layer Stack Topography Specifies the initial topography profile to use at the bottom
Column of a layer when simulating a stack of layers. Possible
single integer values per layer with thickness parameters
are as follows:
• 0 — Use Z1 (field, or non-trench height). This is the
default.
• 1 — Use an average of Z1(1-density) + Z2(density),
for each frame.
• 2 — Use the Z2 (trench height).
• 3 — Use max {Z1, Z2} for each frame.
• 4 — Use min {Z1, Z2} for each frame.
• 5 — Use a planar surface with max {Z1, Z2} over all
frames.
Refer to Figure 5-4 on page 65 to see how thickness
parameters are represented in a design.
Dishing Column Threshold value for the Dishing rule.
Erosion Column Threshold value for the Erosion rule.
DOF Column Threshold value for the Depth of Focus rule.

72 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Tab for TSMC Simulator (Inputs Pane)

Table 5-3. Contents of CMP Tab (MGC Simulator) on the Inputs Pane (cont.)
Element Description
Recipe File The path to the recipe file (used with the MGC simulator).
Table 5-4 describes the right-click menu elements available in the Layer Table. Use this menu
and its submenus to can change the sign (negative, subtractive, or positive) for the Layer
Definition, DMx Layer, Via Layer, OPC Fill, and Non-OPC Fill table entries.
Table 5-4. Layer Table Right-Click Menu (MGC Simulator)
Element Description
Make Table Changes the sign for all layers in the Layer Table.
Make Row Changes the sign for layers in the selected row.
Make Column Changes the sign for layers in a selected column.
Make Cell Changes the sign for one specific layer.
Show/Hide Select which columns are shown or hidden.

CMP Tab for TSMC Simulator (Inputs Pane)


To access: Click the Inputs button, choose the CMP tab, and select the “TSMC” radio button
for “CMP Simulator”
The CMP tab on the Inputs pane of Calibre Interactive sets options for the CMPAnalyzer run,
such as the number of metal layers and the DDK information for the TSMC simulator flow.
Tab contents are described in Table 5-5. A right-click menu makes it easy to adjust layer
parameters; the right-click menu is described in Table 5-6.

Calibre® CMPAnalyzer User’s Manual, v2017.1 73


CMPAnalyzer Reference
CMP Tab for TSMC Simulator (Inputs Pane)

Figure 5-9. Calibre Interactive CMP Tab (TSMC Simulator)

Table 5-5. Contents of CMP Tab (TSMC Simulator) on the Inputs Pane
Element Description
CMP Simulator Allows you to select which simulator to use when
calculating CMP output.
Number of Metal Layers The number of metal layers in your design. The value you
supply in this field controls the number of layers displayed
in the Layer Thickness table to the right of this field.
Layer Type Column Displays the type of each layer.
Layer Name Column The “name” of the metal layer. This is a customizable
name used to assign a readable string to the layer to be
simulated. The layer numbers represent the layer position
within the layer stack. Do not use the underscore (_) in
layer names.
Layer Number Column Displays the GDS layer number and datatype associated
with each layer in the rule file.
DMx Layer Column Dummy metal exclusion layers. Dummy fill is not placed
inside of these layers.
Via Layer Column Metal interconnect layers that connect a metal layer
upward to the next metal layer in the stack.
OPC Fill Column Layers used to specify any pre-existing dummy fill that is
processed by OPC.

74 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Tab for TSMC Simulator (Inputs Pane)

Table 5-5. Contents of CMP Tab (TSMC Simulator) on the Inputs Pane (cont.)
Element Description
Non-OPC Fill Column Layers used to specify any pre-existing dummy fill that is
not processed by OPC. These layers normally obey larger
design rule values than OPC fill layers (which obey the
same design rules as the original metal).
Metal Type Column Values that define a thickness for each metal layer.
Allowed values are M1, Mx, My, Mz, Mr, Mu, and so on.
The thickness values for the first two layers are hard-coded
to M1 and Mx, respectively.
My_inter is a thicker interlayer metal. If the metal stack
has top level metal that is thicker than My, then the My
layer is treated as an My_inter layer for simulation
purposes.
Technology The technology node to be used to manufacture the chip.
Technology File The pathname for the technology file to be used in
simulation.
DDK Directory The path to the top-level DDK directory (used with the
TSMC simulator).

Table 5-6 describes the right-click menu for the Layer Table right mouse. Use this menu and its
submenus to can change the sign (negative, subtractive, or positive) for the Layer Number,
DMx Layer, Via Layer, OPC Fill, and Non-OPC Fill table entries.
Table 5-6. Layer Table Right-Click Menu (TSMC Simulator)
Element Description
Make Table Changes the sign for all layers in the Layer Table.
Make Row Changes the sign for layers in the selected row.
Make Column Changes the sign for layers in a selected column.
Make Cell Changes the sign for one specific layer.
Show/Hide Select which columns are shown or hidden.

Calibre® CMPAnalyzer User’s Manual, v2017.1 75


CMPAnalyzer Reference
Simulator Options Tab on the Inputs Pane

Simulator Options Tab on the Inputs Pane


To access: Select the Inputs pane and click the Simulator Options tab. The run type must be
CMPAnalyzer.
The Simulator Options tab in Calibre Interactive has options for array recognition, the
bucketing flow, window size, saving grid files, and the processing flow.
Objects

Option Description
Array Recognition Radius Specifies the radius of the array recognition area. Specify a
(um) positive value in um or 0 to disable array recognition.
Width for Bucketing Range Specifies the percentage (limit) used to calculate bucket
widths for each tile. Enter a value from 0 and 1, inclusive, to
enable the bucketing flow. A value of 0 results in the
maximum possible number of buckets; a value of 1 results in
one bucket for each tile.
See “Running the CMP Bucketing Flow in Calibre
Interactive for DFM” on page 55 for complete details on
setting this value.
Window Size (um) Specifies the window size for the MGC Simulator. Enter a
single dimension or two space-separated numbers for the x
and y dimensions.
• Positive numbers — The window dimensions are
adjusted so that the analysis region is covered by equal-
sized windows. If a single dimension is specified, the
window may not be exactly square.
• Negative numbers — The exact window size is used. If
necessary, the simulator adds empty area to the windows
in the final row and column in order to use the exact
window size. If this occurs, the windows in the top row
and far right column of Calibre RVE colormaps appear
smaller than the other windows.
CMP Save Grid Specifies to save grid files during the simulation.

76 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Tab on the Outputs Pane

Option Description
Enable Smart Distribution for Specifies to enable Calibre CMPAnalyzer multi-processing
Multi-Threaded Run flow (runs extraction mode and simulation mode in parallel).
This option applies only to runs with multi-layer (two or
more layers selected) simulation and when the “Run Calibre”
“Multi-Threaded” execution mode is selected in the Run
Control pane Performance tab of Calibre Interactive.
The following limitations apply to the “Number of CPUs to
use for DFM:” specification in the Performance tab when
enabling the multi-processing flow:
• If the specified number of CPUs is “All”, the
multi-processing flow is enabled only if there are greater
than or equal to eight CPUs available.
• If the specified number of CPUs is “N”, the
multi-processing flow is enabled only if N number of
CPUs is greater than eight.
Note: Additional licenses may be required when
“Enable Smart Distribution for Multi-Threaded Run”
is selected for the multi-processing flow (parallel flow)
compared to the default flow (sequential flow).

Related Topics
Running the CMP Bucketing Flow in Calibre Interactive for DFM
CMP Analysis with the Calibre Interactive GUI

CMP Tab on the Outputs Pane


To access: Select the Outputs pane in Calibre Interactive and click the CMP tab. The run type
must be CMPAnalyzer.
The CMP tab on the Outputs pane of Calibre Interactive has options related to the CMP
Summary Report.

Calibre® CMPAnalyzer User’s Manual, v2017.1 77


CMPAnalyzer Reference
CMP Tab in Calibre RVE for DFM

Figure 5-10. Calibre Interactive CMP Tab on the Outputs Pane

Table 5-7. Contents of the Calibre Interactive Outputs Tab


Element Description
Write CMP Summary Writes a summary report to the specified file.
Report file
Replace file Selects whether to overwrites the summary report file or
Append to file append to it.

View CMP Summary If enabled, opens the summary report in a text window
Report after Calibre finishes when the CMP run completes.
View Property statistics Includes, for each layer, a summary of the attached
properties. This summary includes the minimum,
maximum, range, average, and standard deviation of the
property values.

CMP Tab in Calibre RVE for DFM


To access: Click the CMP tab in Calibre RVE for DFM with CMPAnalyzer results loaded. See
“Reviewing Analysis Results” on page 23.
The CMP tab displays the results of a CMPAnalyzer run. You can create histograms and
colormaps from the tab.

78 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Tab in Calibre RVE for DFM

Figure 5-11. CMP Tab in Calibre RVE for DFM

Table 5-8. CMP Tab Contents in Calibre RVE for DFM


Element Description
Table Displays one row for each metal layer analyzed.
Double-click in a result cell to create a colormap.
Right-click for a context-sensitive menu.
Colormap Button Displays the Colormap menu for the selected metal layer.
Histogram Button Displays the Histogram menu for the selected metal layer.

Usage Notes
To set colormap and histogram options, do one of the following:

• Right-click in the histogram or colormap display for an option menu.


• Choose Setup > Options to open the Options tab and select the Histograms and
Colormaps category.
To display the results in a connected layout viewer:

• For colormaps, right-click in the region of interest in the colormap and select Highlight
Window or Colormap Windows.
• For histograms, right-click in a histogram bar and select Highlight This Bar or Show
Color Map.
Refer also to “Using Calibre RVE for DFM” in the Calibre Interactive and RVE User’s
Manual.

Calibre® CMPAnalyzer User’s Manual, v2017.1 79


CMPAnalyzer Reference
CMP Tab in Calibre RVE for DFM

Related Topics
CMP Analysis Results

80 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP Batch Reporting

CMP Batch Reporting


Batch reporting can be used to output charts, colormaps, histograms and tables from Calibre
RVE for DFM to a specified directory.
It is used with the Calibre CMPAnalyzer batch flow. Refer to “Using the Calibre CMPAnalyzer
Batch Flow” on page 21.

The configuration file follows the format described in “DFM HTML Reporting” in the Calibre
Interactive and Calibre RVE User’s Manual.

The following are two sample configuration files that you can use with the MGC and TSMC
VCMP flows, respectively. These files are designed to output a CMP hotspot report, and
histograms and colormaps for all metrics.

To generate the reports, run Calibre as follows:

calibre -rve [-turbo] -dfm dfmdb -report config_file


-outputdir output_dir -cmp

where:

• dfmdb — The name of the DFM database directory.


• config_file — The name of the configuration file.
• output_dir — The desired output directory for the reports.
Example MGC Batch Reporting Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Example TSMC VCMP Batch Reporting Configuration File. . . . . . . . . . . . . . . . . . . . . 83

Example MGC Batch Reporting Configuration File


The batch reporting configuration file is used to create an HTML formatted report of
CMPAnalyzer results for the MGC flow.

Calibre® CMPAnalyzer User’s Manual, v2017.1 81


CMPAnalyzer Reference
Example MGC Batch Reporting Configuration File

The following provides an example MGC batch reporting configuration file:

; Example Batch Reporting Configuration File (MGC Flow)

[Common]
; Common Parameters

GroupsToInclude = *
RulesToInclude = *
BinsToInclude = *
MetricsToInclude = *
Rows = *
Sort = Descending
GroupBy = Metrics
OutputFormat = html, csv, chart
;FilterBin = "Original"
;FilterMetric = ""
;FilterOperation = >=
;FilterValue = 0

; Create Hotspot Report Card


[CmpHotspotReport]
ReportType = CmpHotspotReport

; Create Density Histograms


[Original Density Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Density"

; Create Density Colormaps


[Original Density Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Density"

; Create Depth_Of_Focus Histograms


[Original Depth_Of_Focus Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Depth_Of_Focus"

; Create Depth_Of_Focus Colormaps


[Original Depth_Of_Focus Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Depth_Of_Focus"

; Create Dishing Histograms


[Original Dishing Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Dishing"

; Create Dishing Colormaps


[Original Dishing Colormaps]
ReportType = ByWindowColormap

82 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Example TSMC VCMP Batch Reporting Configuration File

BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Dishing"

; Create Erosion Histograms


[Original Erosion Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Erosion"

; Create Erosion Histograms


[Original Erosion Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Rule_Erosion"

; Create Thickness_Metal Histograms


[Original Thickness_Metal Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"

; Create Thickness_Metal Colormaps


[Original Thickness_Metal Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"

; Create Thickness_Z1-Z4 Histograms


[Original Thickness_Z1-Z4 Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Z*"

; Create Thickness_Z1-Z4 Colormaps


[Original Thickness_Z1-Z4 Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Z*"

; Profile Plot
[XProfile Plot]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"
XProfileInclude = {130,285,305}

Example TSMC VCMP Batch Reporting


Configuration File
The batch reporting configuration file is used to create an HTML formatted report of
CMPAnalyzer results for the TSMC VCMP flow.

Calibre® CMPAnalyzer User’s Manual, v2017.1 83


CMPAnalyzer Reference
Example TSMC VCMP Batch Reporting Configuration File

Example TSMC VCMP batch reporting configuration file:

; Example Batch Reporting Configuration File (TSMC VCMP Flow)

[Common]
; Common Parameters

GroupsToInclude = *
RulesToInclude = *
BinsToInclude = *
MetricsToInclude = *
Rows = *
Sort = Descending
GroupBy = Metrics
OutputFormat = html, csv, chart
;FilterBin = "Original"
;FilterMetric = ""
;FilterOperation = >=
;FilterValue = 0

; Create Hotspot Report Card


[CmpHotspotReport]
ReportType = CmpHotspotReport

; Create Density Histograms


[Original Density Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Density"

; Create Density Colormaps


[Original Density Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Density"

; Create Antidishing_Bridge Histograms


[Original Antidishing_Bridge Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Antidishing_Bridge"

; Create Antidishing_Bridge Colormaps


[Original Antidishing_Bridge Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Antidishing_Bridge"

; Create Depth_Of_Focus_col Colormaps


[Original Depth_Of_Focus_col Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Depth_Of_Focus_col"

; Create Depth_Of_Focus_col Histograms


[Original Depth_Of_Focus_col Histograms]
ReportType = ByWindowHistogram

84 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Example TSMC VCMP Batch Reporting Configuration File

BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Depth_Of_Focus_col"

; Create Depth_Of_Focus_row Colormaps


[Original Depth_Of_Focus_row Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Depth_Of_Focus_row"

; Create Depth_Of_Focus_row Histograms


[Original Depth_Of_Focus_row Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Hotspot_Depth_Of_Focus_row"

; Create Thickness_Metal Histograms


[Original Thickness_Metal Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"

; Create Thickness_Metal Colormaps


[Original Thickness_Metal Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"

; Create Thickness_Metal_Electrical Histograms


[Original Thickness_Metal_Electrical Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal_Electrical"

; Create Thickness_Metal_Electrical Colormaps


[Original Thickness_Metal_Electrical Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal_Electrical"

; Create Thickness_Oxide Histograms


[Original Thickness_Oxide Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Oxide"

; Create Thickness_Oxide Colormaps


[Original Thickness_Oxide Colormaps]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Oxide"

; Create Thickness_Topology Histograms


[Original Thickness_Topology Histograms]
ReportType = ByWindowHistogram
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Topology"

; Create Thickness_Topology Colormaps

Calibre® CMPAnalyzer User’s Manual, v2017.1 85


CMPAnalyzer Reference
Example TSMC VCMP Batch Reporting Configuration File

[Original Thickness_Topology Colormaps]


ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Topology"

; Profile Plot
[XProfile Plot]
ReportType = ByWindowColormap
BinsToInclude = "Original"
MetricsToInclude = "Thickness_Metal"
XProfileInclude = {130,285,305}

86 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP YieldServer Commands

CMP YieldServer Commands


Certain commands can be used to run Calibre CMPAnalyzer directly from Calibre YieldServer.
To use these commands, you must invoke Calibre YieldServer with the -cmp switch to gain
access to the cmp:: namespace.

When writing Calibre YieldServer scripts and user-defined hotspot scripts, all procedure names,
rule names, and property names must use only alphanumeric characters, that is letters and
numbers, with the underscore (_) being the only allowable non-alphanumeric character.
Annotation and property string values may be any legal Tcl string.

CMP YieldServer Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87


Calibre YieldServer Scripts for CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Examples for CMP YieldServer Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

CMP YieldServer Command Reference


Calibre YieldServer includes commands specific to Calibre CMPAnalyzer.
Syntax conventions for the command descriptions are given in Table 1-1 on page 10.
Table 5-9. YieldServer Commands
Command Description
cmp::calculate_hotspots Runs hotspots calculation for the specified input layers
[-threshold_values '{' and hotspot name and threshold value pairs.
'{'layer_name hotspot_name Arguments:
hotspot_value [hotspot_name • -threshold_values '{' '{'layer_name hotspot_name
hotspot_value …] '}' …'}'] hotspot_value [hotspot_name hotspot_value …] '}' …
[-no_defaults] '}'
Specifies one or more input layers and a list of hotspot
name and threshold value pairs for each one.
Supported hotspot rule names are: Antidishing and
Depth_Of_Focus (TSMC simulator); Dishing,
Erosion, and Depth_Of_Focus (MGC simulator).
If this argument is not specified, all predefined rules
are calculated using default threshold values, and all
registered rules are calculated using threshold values
specified in the user-defined hotspots rule file.
• -no_defaults
Specifies when to omit default hotspot calculations.
Use this option when user-defined hotspot rules have
been specified. Do not use this option with
-threshold_values.

Calibre® CMPAnalyzer User’s Manual, v2017.1 87


CMPAnalyzer Reference
CMP YieldServer Command Reference

Table 5-9. YieldServer Commands (cont.)


Command Description
cmp::register_hotspot_proc Registers the procedure as a hotspot metric to be
-rule_name hotspot_rule_name- calculated for the specified rule during the hotspot
proc proc_name calculation phase.
Arguments:
• -rule_name hotspot_rule_name — specifies the
hotspot rule name. The rule name should be the same
as the property name for the hotspot metric.
• -proc proc_name — specifies the procedure name.
Example:
cmp::register_hotspot_proc -rule_name hs1
-proc hs1_metric

See “Tcl Script for User-Defined Hotspots” on page 46


for a complete example.
cmp::register_hotspot_rules Registers hotspot rules defined in the specified
-file hotspot_rule_file hotspot_rule_file. The file must contain definitions of
hotspot metric calculation and hotspot threshold checking
Tcl procedures. You must specify this command before
you specify cmp::run_cmp_analysis and
cmp::calculate_hotspots.
The hotspot metric calculation procedure should accept a
layer as its only input argument. For example:
proc hs1_metric { layer } {
...
}

The threshold procedure should take two arguments —


the layer name and the threshold value — and should
return the number of failed tiles. For example:
proc hs1_fails { layer value } {
# calculate the number of failing tiles

return $failCount

88 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
CMP YieldServer Command Reference

Table 5-9. YieldServer Commands (cont.)


Command Description
cmp::register_hotspot_threshold_ Registers a procedure that checks metric values against
proc specified threshold values.
-rule_name hotspot_rule_name Arguments:
-proc proc_name • -rule_name hotspot_rule_name — specifies the
-values threshold_value hotspot rule name. The rule name should be the same
as the property name for the hotspot metric.
[-output_properties • -proc proc_name — specifies the procedure name.
list_of_property_names ]
• -values threshold_value — specifies a threshold value.
• -output_properties list_of_property_names —
specifies list of property names generated by the
hotspot procedure.
Example:
cmp::register_hotspot_threshold_proc
-rule_name hs1 -proc hs1_fails -values 100

See “Tcl Script for User-Defined Hotspots” on page 46


for important information on writing the Tcl procedure.

Calibre® CMPAnalyzer User’s Manual, v2017.1 89


CMPAnalyzer Reference
CMP YieldServer Command Reference

Table 5-9. YieldServer Commands (cont.)


Command Description
cmp::run_cmp_analysis Runs CMP analysis (the current revision must be the
[-input_layers list] master revision). Used with the TSMC and MGC
simulators.
[-input_layers_types types]
Arguments:
[-no_save]
• -input_layers list
[-predict]
The list of layers to use (the default is all layers).
[-step {extraction | simulation | • -input_layers_types types
hotspot}]
A list of the types of the input layers to use
[-stop stop_layer_number] (corresponding to Model Index values in the GUI for
[-recipefile file] the MGC simulator).
• -no_save
When specified, does not save and freeze the database
after the analysis is complete. The default is to save
and freeze the database.
• -predict
Run prediction (Quick CMP mode). Applies to the
TSMC VCMP simulator only.
• -step {extraction | simulation | hotspots}
Run only the specified step of the CMP analysis flow
(extraction, simulation, or hotspot calculation). Note
that the extraction step can only be performed once. If
the simulation step is skipped (the extraction and
hotspot calculation steps are performed, in that order),
only user-defined hotspots are calculated after
extraction. Extraction is done automatically if you
specify the simulation step and extraction has not yet
been performed. Applies to the MGC simulator only.
• -stop stop_layer_number
Stop hotspot simulation at the specified number of
metal layers in the stack. This option enables partial
stack simulation. For example, if -stop 3 is specified,
hotspot simulation will occur for the first three metal
layers.
• -recipefile file
Runs the simulation step with the specified recipe file.
Applies to the MGC simulator only.

90 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Calibre YieldServer Scripts for CMPAnalyzer

Table 5-9. YieldServer Commands (cont.)


Command Description
cmp::save_hotspots_report Writes a file that for all hotspot rules, contains
-file filename coordinates of windows that violate thresholds for the
rules.
Arguments:
• -file filename
Specifies the path to the output file.
cmp::save_xrc_report Saves thickness data to a set of files.
-dir path Arguments:
• -dir path
Path to the output directory.

Calibre YieldServer Scripts for CMPAnalyzer


You can create a Calibre YieldServer script with CMP commands and commands in the dfm::
namespace.
A Calibre YieldServer script that operates on a DFM database created with Calibre
CMPAnalyzer can include, in addition to the commands shown in Table 5-9, any of the
commands in the dfm:: namespace (refer to the Calibre YieldServer Reference Manual for a
complete list of these commands).

When writing Calibre YieldServer scripts and user-defined hotspot scripts, all procedure names,
rule names, and property names must use only alphanumeric characters, that is letters and
numbers, with the underscore (_) being the only allowable non-alphanumeric character.
Annotation and property string values may be any legal Tcl string.

The script can be executed following a CMPAnalyzer run by entering the following at the
command line:

calibre -ys -cmp -exec script_file_name

Note that for this approach, you must include a dfm::open_db command in the script to open the
DFM database.

Alternatively, you can run a Calibre YieldServer script automatically as part of a CMPAnalyzer
run by adding the following lines to your runset file:

*dfmDFMUseYSScript: 1
*dfmDFMYSScript: script_file_name

where script_file_name is the name of the Calibre YieldServer script file. It is also possible to
run scripts by using “source filename” in the Calibre RVE for DFM terminal window.

Calibre® CMPAnalyzer User’s Manual, v2017.1 91


CMPAnalyzer Reference
Examples for CMP YieldServer Commands

Examples for CMP YieldServer Commands


Examples for use with Calibre CMPAnalyzer.
Also see “Tcl Script for User-Defined Hotspots” on page 46.

Example Script to Save Reports for Calibre CMPAnalyzer . . . . . . . . . . . . . . . . . . . . . . 92


Example to Export Values to a Text File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Example Script to Save Reports for Calibre CMPAnalyzer


A script can be used to save hotspot and Calibre xRC reports.
puts “\nSaving xRC Report...”
cmp::save_xrc_report -dir “xRC”
puts “\nSaving Hotspots Report...”
cmp::save_hotspots_report -file “Hotspots_Report.txt”

Example to Export Values to a Text File


Applies to the TSMC VCMP flow.
The following procedure can be used to export Antidishing_Bridge values to a text file.

proc export_prop {prop_layer prop_name filename } {


# write geometry vertices and property value to file
set outfh [open $filename w+]
set geos [dfm::get_geometries $prop_layer]
set precision [dfm::get_db_precision]
while { $geos ne "" } {
set verts [dfm::get_data $geos -vertices]
set bbx0 [expr [lindex $verts 0] / $precision]
set bby0 [expr [lindex $verts 1] / $precision]
set bbx1 [expr [lindex $verts 2] / $precision]
set bby1 [expr [lindex $verts 3] / $precision]
set value [dfm::get_data $geos -geometry_property $prop_name]
puts "$bbx0 $bby0 $bbx1 $bby1 $value"
puts $outfh "$bbx0 $bby0 $bbx1 $bby1 $value"
dfm::inc geos
}
close $outfh
}

export_prop M1_data_detail Hotspot_Antidishing_Bridge [Link]

This procedure first opens a file for writing, then writes the coordinates of the bounding boxes
and property value for each geometry. Note that the procedure assumes that all geometries on
the layer are rectangular.

92 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Colormap Stipple Patterns

Colormap Stipple Patterns


Explanation of the various stipple patterns that can appear on colormaps.
You can click on any stipple pattern in a colormap legend to toggle highlighting the stipple
pattern tiles on the colormap and in the layout viewer.
Table 5-10. Stipple Patterns
Pattern Name Description
Oxide Height Min Tiles of minimum oxide height.
Oxide Height Max Tiles of maximum oxide height.
Metal Height Min Tiles of minimum metal height.
Metal Height Max Tiles of maximum metal height.
Oxide and Metal Min Tiles of minimum oxide and metal height.
Oxide and Metal Max Tiles of maximum oxide and metal height.
DOF Fail Tiles that fail the Depth_Of_Focus rule.
Applies to the TSMC VCMP simulator only.
Band minld Tiles that are identified as too low. Applies to
the TSMC VCMP simulator only.
Band maxld Tiles that are identified as too high. Applies
to the TSMC VCMP simulator only.
Fix A Tiles tagged with Fix A. Applies to the
TSMC VCMP simulator only.
Fix B Tiles tagged with Fix B. Applies to the
TSMC VCMP simulator only.
Fix C Tiles tagged with Fix C. Applies to the
TSMC VCMP simulator only.
Fix D Tiles tagged with Fix D. Applies to the
TSMC VCMP simulator only.

Layer Number Specification Format


Calibre Interactive in CMP mode contains a table that allows you to enter information for the
metal layers in your design.

Calibre® CMPAnalyzer User’s Manual, v2017.1 93


CMPAnalyzer Reference
Layer Number Specification Format

Note
Optionally, you can specify user-defined layers in a Pre-Defined Layers File, which
supports Calibre Boolean layer operations. See “Pre-Defined Layers File Format” on
page 95 for the content and format of this file.

The table with layer information is on the Inputs pane in the CMP tab. Layer numbers follow
this format:

['-' | '~'] layer_number.layer_datatype


[,['-' | '~'] layer_number.layer_datatype] ...

where:

• layer_number — Specifies the layer number.


• layer_datatype — Specifies the layer datatype.
• - | ~ — Optional argument set that indicates if the layer is a subtractive layer (-) or a
negative layer (~). By default, the layer is a positive layer.
The following logic is applied to the final layer that is simulated:

result_layer = (OR_positive_layers OR (DB_EXTENT NOT AND_negative_layers))


NOT OR_subtractive_layers

where:
OR_positive_layers Result of OR operation between positive layers.
AND_negative_layers Result of AND operation between negative layers.
OR_subtractive_layers Result of OR operation between subtractive layers.

Table 5-11 lists examples of values and how they translate to the final layer.
Table 5-11. Layer Number Specification Examples
Layer Number Value Final Layer
31.0, 32.0 OR 31.0 32.0
31.0, -117.0 31.0 NOT 117.0
-32.0 DB_EXTENT NOT 32.0
-31.0, -32.0 DB_EXTENT NOT (OR 31.0 32.0)
10.1, ~11.2, -12.3 (10.1 OR (DB_EXTENT NOT 11.2)) NOT 12.3
10.1, ~11.2, ~11.3 10.1 OR (DB_EXTENT NOT (AND 11.2 11.3))

Also see “CMP Analysis with the Calibre Interactive GUI” on page 13.

94 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Pre-Defined Layers File Format

Pre-Defined Layers File Format


Input for: Calibre Interactive CMP mode for a Calibre CMPAnalyzer run (MGC Simulator
Flow).
You can use a valid SVRF file in the Pre-Defined Layers File field to specify user-defined
layers and Calibre layer operations for a CMP simulation and hotspot analysis.
Note
See “CMP Analysis with the Calibre Interactive GUI” step 9 (MGC Simulator Flow) for file
input information.

Format
SVRF and Conventions
Layer definitions and operations in the Pre-Defined Layers File must conform to SVRF and the
following conventions:

• Layers defined by the Calibre CMPAnalyzer Layer Name should not match any layer
name defined in the Pre-Defined Layers File. If a match exists, an error message is
generated.
• When all layers for analysis are specified in the Pre-Defined Layers File, the layout base
layer (lowest simulation layer) must be defined with the LAYOUT BASE LAYER
statement. If a layout base layer is not defined, a warning message is issued. You can
specify this statement in the Pre-Defined Layers File, or alternatively, in Calibre
Interactive as follows:
o In the Calibre Interactive GUI, select Setup > DFM Options, select the Include tab,
enable the checkbox “Include Rule Statements”, and enter the statement in the text
field.
o In the Calibre Interactive runset, use the “dfmSVRFCmds” parameter to specify the
statement.
• User-defined layer numbers in the Pre-Defined Layers File must start from 3001 and be
within the allowed range of CMP layer numbers from 3001 to 9999.
• Calibre supported Boolean layer operations can be used for defining layers for CMP.
Layer definition and operation syntax in the Pre-Defined Layers File is as follows:

LAYER name original_layer [original_layer …]


LAYER MAP source_layer DATATYPE source_type target_layer
LAYOUT BASE LAYER name
<layer derivation>

Calibre® CMPAnalyzer User’s Manual, v2017.1 95


CMPAnalyzer Reference
Pre-Defined Layers File Format

Parameters
• LAYER name original_layer [original_layer …]
Specifies the input layer names and numbers.
o name — Specifies the required name of an original layer or layer set.
o original_layer — Specifies the required original layer or layer set.
where possible choices are as follows:
• The layer number of an original layer within the allowed range of 3001 to 9999.
• The name of a layer or layer set defined by another Layer operation.
• LAYER MAP source_layer DATATYPE source_type target_layer
Specifies datatype maps from GDS or OASIS input to Calibre layer numbers. Multiple
LAYER MAP statements can be used to map several layer and datatype combinations to a
single layer number between 3001 and 9999.
o source_layer — Specifies the required positive integer that is a layer in the layout
database.
o DATATYPE — Specifies the required keyword that instructs the tool to create a
datatype map.
o source_type — Specifies the required positive integer that is a particular datatype in
the layout database.
o target_layer — Specifies the required positive integer that is the layer number to be
used by Calibre.
• LAYOUT BASE LAYER name
Specifies the required base layer when all layers for analysis are in the Pre-Defined Layers
File.
o name — Specifies the required name of an original layer. For example,
LAYOUT BASE LAYER M1x

The requirement for the base layer is as follows:


• The layer must be an original drawn layer, not a derived layer.
• The layer must be at the lowest level of the hierarchy.
Typically only one layer is needed for a LAYOUT BASE LAYER. For BEOL simulations,
M1 is typically used. For FEOL simulations, the original Diffusion layer may be used.
• <layer derivation>
Specifies a valid SVRF Boolean layer operation that derives a layer for CMP.

96 Calibre® CMPAnalyzer User’s Manual, v2017.1


CMPAnalyzer Reference
Pre-Defined Layers File Format

Examples
This example uses the following Boolean layer operation to define a layer AXL for CMP:

((2.0 AND 2.2) NOT 2.4) OR 2.3

This is the SVRF file content for a sample Pre-Defined Layers File ([Link]) that defines the
layer AXL:

LAYER AX 3001
LAYER AXFIN 3002
LAYER AXFILL 3003
LAYER AC 3004
LAYER MAP 2 DATATYPE 0 3001
LAYER MAP 2 DATATYPE 2 3002
LAYER MAP 2 DATATYPE 3 3003
LAYER MAP 2 DATATYPE 4 3004
AXL = ((AX AND AXFIN) NOT AC) OR AXFILL

Calibre® CMPAnalyzer User’s Manual, v2017.1 97


CMPAnalyzer Reference
Pre-Defined Layers File Format

98 Calibre® CMPAnalyzer User’s Manual, v2017.1


Index

—E—
Index

— Symbols — Erosion, defined, 62


[], 11 Extraction tools, exporting CMP data to, 40
{}, 11
|, 11 —H—
Heavy font, 10
—A— Histograms, creating, 32
Anti-dishing, defined, 61 Histograms, displaying, 79
—B— Hotspots
Batch (HTML) reporting, 81 defined, 63
Bold words, 10 recalculating, 37
Bucketing flow user-defined, 46
enabling, 56 HTML reporting, 81
overview, 55
—I—
results, 58 Italic font, 10
—C— —L—
Calibre Interactive, CMP tab, 70 Layer number, specification in Calibre
Calibre RVE, CMP tab, 78 Interactive, 94
CMP analysis, batch mode, 21 Layer properties file in Calibre DESIGNrev, 14
CMP analysis, running, 13
CMP Tab —M—
in Calibre Interactive, 70 MGC simulator flow, reference, 64
in Calibre RVE for DFM, 79 Minimum keyword, 11
CMPAnalyzer results, 23
Colormaps —P—
creating, 25, 79 Parentheses, 11
stipple patterns, 93 Pipes, 11
tooltips, 33 Profile plot, 33
Courier font, 11 Properties, viewing in Calibre RVE, 36
Custom hotspots, 46 —Q—
—D— Quotation marks, 11
Depth of focus, defined, 61 —S—
DFM Database, and CMPAnalyzer, 19 Scatter plots, 38
Dishing, defined, 62 Slanted words, 10
Displaying colormaps, 79 Square parentheses, 11
Displaying histograms, 79 Stipple patterns in colormaps, 93
Double pipes, 11

Calibre® CMPAnalyzer User’s Manual, v2017.1 99


—T—
Tile, defined, 63
Tooltip display, 33
Trench bottom, defined, 64
TSMC VCMP simulator flow, gui elements, 74
TSMC VCMP simulator flow, reference, 67
—U—
Underlined words, 11
—Y—
YieldServer commands, 87

100 Calibre® CMPAnalyzer User’s Manual, v2017.1


Third-Party Information
Open source and third-party software may be included in the Calibre products.

For third-party information, refer to Third-Party Software for Calibre Products.


End-User License Agreement
The latest version of the End-User License Agreement is available on-line at:
[Link]/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, setup files 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. Except for Software that is embeddable (“Embedded Software”), which is licensed pursuant to
separate embedded software terms or an embedded software supplement, 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 4.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. BETA CODE.

3.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.

3.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.

3.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 3.3 shall survive termination of this Agreement.

4. RESTRICTIONS ON USE.

4.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. Except for Embedded Software that has been embedded in executable
code form in Customer’s product(s), 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. Customer acknowledges that Software provided hereunder may contain source code which is proprietary and
its confidentiality is of the highest importance and value to Mentor Graphics. Customer acknowledges that Mentor Graphics
may be seriously harmed if such source code is disclosed in violation of this Agreement. Except as otherwise permitted for
purposes of interoperability as specified by applicable and mandatory local law, Customer shall not reverse-assemble,
disassemble, reverse-compile, or reverse-engineer any Product, or in any way derive any source code from Software that is not
provided to Customer in source code form. 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.

4.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, or as permitted for Embedded Software under separate
embedded software terms or an embedded software supplement. 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.

4.3. Customer agrees that it will not subject any Product to any open source software (“OSS”) license that conflicts with this
Agreement or that does not otherwise apply to such Product.

4.4. 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.

4.5. The provisions of this Section 4 shall survive the termination of this Agreement.

5. 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 [Link]

6. OPEN SOURCE SOFTWARE. Products may contain OSS or code distributed under a proprietary third party license agreement, to
which additional rights or obligations (“Third Party Terms”) may apply. Please see the applicable Product documentation (including
license files, header files, read-me files or source code) for details. In the event of conflict between the terms of this Agreement
(including any addenda) and the Third Party Terms, the Third Party Terms will control solely with respect to the OSS or third party
code. The provisions of this Section 6 shall survive the termination of this Agreement.

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. TO THE EXTENT PERMITTED 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. THIRD PARTY CLAIMS.

9.1. Customer acknowledges that Mentor Graphics has no control over the testing of Customer’s products, or the specific
applications and use of Products. Mentor Graphics and its licensors shall not be liable for any claim or demand made against
Customer by any third party, except to the extent such claim is covered under Section 10.

9.2. In the event that a third party makes a claim against Mentor Graphics arising out of the use of Customer’s products, Mentor
Graphics will give Customer prompt notice of such claim. At Customer’s option and expense, Customer may take sole control
of the defense and any settlement of such claim. Customer WILL reimburse and hold harmless Mentor Graphics for any
LIABILITY, damages, settlement amounts, costs and expenses, including reasonable attorney’s fees, incurred by or awarded
against Mentor Graphics or its licensors in connection with such claims.

9.3. The provisions of this Section 9 shall survive any expiration or termination of this Agreement.

10. INFRINGEMENT.

10.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.

10.2. If a claim is made under Subsection 10.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.

10.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; (h) OSS, except to the extent that
the infringement is directly caused by Mentor Graphics’ modifications to such OSS; or (i) infringement by Customer that is
deemed willful. In the case of (i), Customer shall reimburse Mentor Graphics for its reasonable attorney fees and other costs
related to the action.

10.4. THIS SECTION 10 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.

11. TERMINATION AND EFFECT OF TERMINATION.

11.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.

11.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 of this Agreement and/or any license granted under this Agreement, 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.

12. EXPORT. The Products provided hereunder are subject to regulation by local laws and European Union (“E.U.”) 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, E.U. and U.S. government agencies. If Customer
wishes to disclose any information to Mentor Graphics that is subject to any E.U., 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.

13. 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.

14. 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.

15. 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 15 shall survive the termination of this Agreement.

16. 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 or Japan, and the laws of Japan if Customer is located in Japan. 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, or the Tokyo District Court when the laws of Japan apply. Notwithstanding the foregoing, all
disputes in Asia (excluding Japan) 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.

17. 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.

18. MISCELLANEOUS. This Agreement contains the parties’ entire understanding relating to its subject matter and supersedes all prior
or contemporaneous agreements. Any translation of this Agreement is provided to comply with local legal requirements only. In the
event of a dispute between the English and any non-English versions, the English version of this Agreement shall govern to the extent
not prohibited by local law in the applicable jurisdiction. 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. 151102, Part No. 265968

You might also like