Product Documentation
Voltus-Fi Custom Power Integrity Solution XL User Guide
Product Version IC23.1, August 2023

9


Self-Heating Effect Analysis

Overview

The following topics are covered in this section:

Self-Heating Effect Analysis

As semiconductor technology scales down to sub-micron dimensions, power density increases, resulting in temperature increases—self-heating effect (SHE)—in devices. Semiconductor components are sensitive to temperature variations.

The main effects of self-heating are as follows:

In digital circuits, the key consequences are longer delays due to increased interconnect resistance and reliability issues due to electromigration. Analog circuits are more sensitive to temperature variations, which may degrade matching properties. Therefore, thermal simulations and modeling play an important role in the design of integrated circuits today.

The self-heating effect is driven by front-end-of-line (FEOL) self heat and back-end-of-line (BEOL) self heat.

Thermal-Aware DC EM Analysis

The thermal-aware DC EM flow considers the local thermal effect – this includes both joule-heating and self-heating – in DC EM checks.

The thermal-aware DC EM flow is enabled by setting the following variable:

In the Variables form on the EM tab of the IR/EM Results form by specifying the following variable:

coupledSH true

In batch mode by specifying the following command:

set_variable coupledSH true

Voltus-Fi-XL supports the SHE analysis flow and the thermal-aware DC EM flow visualization. You can view the results of the these analyses by plotting them on the Virtuoso layout to show the worst deltaT violations. You can then debug your design to reduce the self-heating effect. In this chapter, the subsequent sections will provide details of the SHE analysis flow that are also relevant to the thermal-aware DC EM flow. Additional parameters and commands for the latter flow will be highlighted within these sections.

Hierarchical SHE Analysis

Voltus-Fi supports the generation of reports that are used by Voltus for Hierarchical SHE analysis. For this, the following option of the emirutil command is specified in the configuration file:

emirutil selfheating_report=[type=mos-region | metal filename=<filename> layer=<layername> tile=<no.of divisions in y-direction, no. of divisions in x-direction>]

For details of the above command, see EMIR Control File Options. The SHE reports that are generated are specified while performing hierarchical SHE analysis, using the Voltus command, analyze_self_heat.

This feature is only available when the VTS-Fi-AA license is checked out. This is an advanced license that is not available as part of the Voltus-Fi-XL license.

Data Requirements

The table below lists the inputs that are required for, both the SHE analysis and the thermal-aware DC EM analysis in Voltus-Fi-XL:

Table 9-1 Data Required for SHE and Thermal-Aware DC EM Flow

Data Purpose Details

Model cards

Simulation

Spice model cards, which support SHE analysis for simulation

Detailed Standard Parasitic Format (xDSPF) file

Simulation

A detailed standard parasitic extraction file that contains x, y coordinates and l (length), and w (width) values. This file is required post simulation.

qrcTechFile or the ICT file

EMIR and SHE analysis

A file containing current limits for each process layer. This file is usually available through a foundry.

This file should contain the Irms equation.

EMIR control file (emir.config)

Simulation

A configuration file needed to run EMIR and SHE analysis with Spectre® APS solver run.

param.sh file

SHE analysis

File for deltaT FEOL and BEOL calculations.

The information contained in the param.sh file is proprietary. To use this file, you need a collateral from the foundry.

XML file

SHE analysis

A file created after simulation and provided as an input file for the Voltus-Fi-XL SHE flow. It contains deltaT information for all devices in the layout.

To run the self-heating flow and the thermal-aware DC EM flow in batch mode, it is mandatory to set the following environment variable:
setenv CDS_XVNC_TENBASE '+'

This variable is not required for run the SHE flow and the thermal-aware DC EM flow in the GUI.

This limitation will be removed in a future release of the software.

Compatible Software Versions

The table below lists the compatible software versions that are needed for running the SHE analysis flow and the thermal-aware DC EM flow:

Product Name Release Version

PVS/Pegasus

PVS 13.1.1 HF1 and later to Pegasus 18.20

EXT

EXT 13.2.0 and later

MMSIM/SPECTRE

MMSIM 13.1.1 ISR10 and later to SPECTRE 16.1.0 onwards

It is recommended that if any of the above release versions are not available, a later version of the product be used.

Flow Overview

The diagram below illustrates the Pegasus/PVS LVS – Quantus – Virtuoso® Analog Design Environment L for Netlist and Config file generation – Spectre® APS – Voltus-Fi-XL flow for SHE analysis and thermal-aware DC EM analysis.

Figure 9-1 The High-Level Flow

Performing the Analysis

The following key tasks are performed for the SHE analysis and the thermal-aware DC EM flow:

These steps are detailed in subsequent sections.

Running Pegasus or PVS LVS

This is the first step, which involves verifying the layout connectivity and creating an LVS database that is required for the subsequent Quantus parasitic extraction.

Pegasus, the new physical verification system, will be available in the 18.2 physical verification release.

Running Quantus Parasitic Extraction

This is the second step, which involves using the Quantus engine to create the xDSPF file for all the device parameters and interconnect parasitics.

Data Requirements for Extraction Setup

While setting up extraction for SHE analysis, ensure the following:

GUI Use Model

In the main menu of the Virtuoso Layout Suite, choose Quantus. Choose the Run Pegasus – Quantus or PVS – Quantus option. The Quantus Parasitic Extraction Run Form opens. Run extraction.

For detailed information about all the settings in the Quantus Parasitic Extraction Run form, see the “Quantus Graphical Interface” chapter in Quantus Extraction Users Manual.

Pegasus, the new physical verification system, will be available in the 18.2 physical verification release.

The output includes the following:

Running Post-Layout Simulation using Spectre APS

Once extraction is done, run post-layout simulation using the EMIR control file (emir.config) file to create the SHE analysis reports. Before performing simulation, ensure the following in the ADEL or the Simulation window:

Now, you can start the simulation either by using SimulationRun option or clicking the “run simulation” button provided in the right panel of the ADEL window.

For detailed information about how these options are set, see “Using the Reliability Simulator Interface” chapter in the Virtuoso Analog Design Environment L User Guide.
The EMIR control file options required to be specified for SHE analysis are detailed in the EMIR Control File Options section. These options can also be specified in the Variables form that opens from the EM tab of the IR/EM Results form.

Viewing the Analysis Plots in Voltus-Fi-XL

Once the simulation run is complete, the simulation database saved in the *.emir#_bin file is loaded into Voltus-Fi-XL to view the SHE analysis plots. The SHE analysis and thermal-aware DC EM analysis plots are available on the EM tab of the IR/EM Results form.

The steps for populating the EM tab of the IR/EM Results form are detailed in the Viewing the EM Analysis Results section of the “EM Analysis Results” chapter.

In addition, for the SHE analysis flow, ensure that the following inputs are provided on the EM tab of the IR/EM Results form:

This form is shown below.

Figure 9-2 The IR/EM Results Form

Types of Plots

The types of self-heating effect analysis and thermal-aware DC EM analysis plots that are available in the list are detailed below.

Figure 9-3 Plot Types

Thermal-DeltaT Regions

Reports the increase in temperature (deltaT) for all OD and metal layers in the entire design on the Virtuoso layout. This plot provides a detailed view of the temperature variations on the design. This is shown in the figure below.

Figure 9-4 The Thermal-DeltaT Regions Plot

Thermal-DeltaT Tiles

Reports the increase in temperature (deltaT) per tile based on the number of tiles, specified in the IR/EM Results form, on the Virtuoso layout. For this plot, specify the dimensions for the tiles in the Tiles text box on the EM tab of the IR/EM Results form. The design in the layout is divided into sections based on the number of tiles that are specified, for example, 15x20.

On the Virtuoso layout, the tiles are colored on the basis of the maximum temperature increase in each tile. This is shown in the figure below.

Figure 9-5 The Thermal-DeltaT Tiles Plot

RJ_SH - Current Density/Limit - max (SH)

Analyzes and reports the J/JMAX violations based on peak current after performing the SHE analysis.

This plot is not available for the thermal-aware DC EM flow

JAVG_SH - Current Density/Limit - avg (SH)

Analyzes and reports the J/JMAX violations based on the average currents after performing the SHE or thermal-aware DC EM analysis.

JACRMS_SH - Current Density/Limit - rms (SH)

Analyzes and reports J/JMAX violations based on the RMS value of the AC currents after performing the SHE analysis. To display the worst deltaT violations, specify the self-heating current limit using the shRmsLimitThreshold variable.

This plot is not available for the thermal-aware DC EM flow.

Re-Evaluation of EM Limit Based on dTemp

The EM effect is re-evaluated based on the new temperature. In the SHE flow, this temperature is the sum of the simulation temperature and the changed temperature due to the self-heating effect. In the thermal-aware DC EM flow, this temperature is the sum of the simulation temperature and the changed temperature due to joule heating and the self-heating effect.

The Current_Limit is calculated based on this new temperature and compared with the actual current flowing through the metal resistor to find the EM pass or fail.

The shEMEffect variable is used to re-evaluate the EM limit based on individual metal BEOL_T and tile BEOL_T temperatures. This variable is set using the set_variable command in the Voltus-Fi command file:

To re-evaluate EM on individual metal BEOL_T:

set_variable shEMEffect beolT

To re-evaluate EM limit based on tile BEOL_T temperature:

set_variable shEMEffect tiles_no.of divisions in y-direction X no. of divisions in x-direction

EMIR Control File Options

A complete list of the EMIR control file options that are supported in Voltus-Fi-XL is provided in the table, EMIR Control File Options Supported in Voltus-Fi-XL, in the “Data Preparation” chapter.

In addition, there are some options that are specific to the SHE flow and the thermal-aware DC EM flow. The table below provides a list of options that are specified in the emir.conf file for these analyses.

Table 9-2 Supported EMIR Control File Options for Self-Heating Effect Analysis

Keyword Option Set Explanation Default Value

net

analysis=[selfheating]

Turns on the self-heating effect analysis for the specified device under test (DUT).

Note: Ensure that the Irms option is specified in the control file.

none

selfheating_skipinst=[notDUT]

Specifies the instances on which SHE analysis will not be performed.

none

selfheating_skipmodels=[<models to skip>]

Specifies the models on which SHE analysis will not be performed.

none

emirutil

shParamFile=”param.sh”

Specifies the self-heating effect analysis parameter file, which is required for calculating the SHE analysis results.

A sample shParamFile format is provided in the “File Formats” chapter.

none

filter_em_sh_threshold=value

Defines the SHE EM analysis threshold value for the resistors being reported. The value for filter_em_sh_threshold is the J/Jlimit value.

filter_em_sh_threshold=1 reports only those resistors that have a J/Jlimit value above 1.

Note: Specifying this option is equivalent to filtering all resistors that have passed the EM analysis check.

none

shXMLFile=[<file>]

Specifies the XML file to be used in the SHE analysis flow. This file contains information about the temperature change for every instance.

From Spectre16.1 ISR7 release onwards, the path of the XML file need not be specified in the emir configuration file. The software is enhanced to automatically locate and use the file for SHE analysis.

Specify the shXMLFile option only when you want to override the existing XML file.

none

shEMEffect=[beolT | tiles_no.of divisions in y-direction X no. of divisions in x-direction]

Specifies the basis for the re-evaluation of EM effect.

beolT: specifies that re-evaluation will be done on the basis of individual metal BEOL_T.

tiles_no.of divisions in y-direction X no. of divisions in x-direction: specifies that re-evaluation will be done on the basis of tile BEOL_T.

For example: shEMEffect=tiles_10x15

none

extendSHRegion=[true | false]

Specifies whether or not the OD shape extension is to be done.

This parameter is applicable only to the thermal-aware DC EM flow.

false

extendODRange= value

Specifies the range of the OD shape expansion. The unit of this parameter is um (micro meter).

This parameter is applicable only to the thermal-aware DC EM flow.

1.8

extendJouleHeating=[true | false]

Specifies whether or not metal-shape expansion is to be done for joule-heating calculation.

This parameter is applicable only to the thermal-aware DC EM flow.

false

extendMetalRange=value

Specifies the number of metal pitch for metal expansion.

This parameter is applicable only to the thermal-aware DC EM flow.

0

extendHRRange=value

Specifies the range of the design resistor shape expansion. The unit of this parameter is um (micro meter).

This parameter is applicable only to the thermal-aware DC EM flow.

The default value may be different for different process nodes.

1.8

Tambient=value

Specifies the ambient temperature for self-heating analysis. If this value is not specified, the software calculates it as Tj-deltaT.

Tj-deltaT

disableODSH=[true | false]

When set to true, disables the self-heating effect of devices in the SHE flow.

false

disableHRSH=[true | false]

When set to true, disables the self-heating effect of design resistors in the SHE flow.

false

coupledSH=[true | false]

When set to true, specifies that the thermal-aware DC EM flow should be enabled.

false

view=[lib=<lib> cell=<cell> view=<layout>]

Specifies the Virtuoso Layout view.

For the software to recognize the cell, view and library, ensure that “cds.lib" is either present in the directory in which EMIR simulation is run or its path is specified using the cds.lib command described below.

none

cds.lib=”lib_path

Specifies the path of the cds.lib. It is used to specify the path when the cds.lib is not in the current working directory.

For example,

emirutil cds.lib="/home/test/cds.lib"

qrc_output=
[runDir=
dir_name runName=qrc_run_name]

Specifies the Quantus run directory and run name.

This parameter is required for self-heating effect analysis.

none

selfheating_report=[type=mos-region | metal filename=<filename> layer=<layername> tile=<no.of divisions in y-direction, no. of divisions in x-direction>]

Generates the self-heating effect report, which is a text file. You can specify whether the report should contain deltaT information for the specified mos-region or metal and resistor or tile-based by using the relevant parameters.

Example:

emirutil selfheating_report=[type=mos-region filename=mos-region-tiles.txt tiles=15x10]
To generate hierarchical SHE analysis reports using this command, the VTS-Fi-AA license is required to be checked out. This is an advanced license that is not available as part of the Voltus-Fi-XL license.

If you do not want to perform hierarchical self-heating analysis, ensure that this option is not specified in the configuration file.

The SHE EM analysis reports can be generated by specifying the print_em_report option in the configuration file with the required -type option. No special license is required for generating these reports. This option is detailed below.

none

print_em_report=[net=[all_nets | all_power | all_signal | netname] type=[acrms_sh | avg_sh | peak_sh | acpeak_sh]  filename= output_file_name]

Generates the EM report with the self-heating effect. You can specify the following:

filename: create report with the specified filename.

net: create report for specified nets - all power nets (all_power), all signal nets (all_signal), all nets (all_nets), or net (netname).

type - create report for specified analysis type; acrms_sh, avg_sh, acpeak_sh or peak_sh.

For example:

print_em_report=[net=all_nets type=acrms_sh filename= acrms_sh.txt]

none

genRthReport=[true | false]

Generates a thermal resistance report with cell name and its corresponding resistance (Rth) value.

This parameter is applicable only to the thermal-aware DC EM flow.

For example:

emirutil genRthReport=true

false

The options listed below are specified only for the SHE flow with heat-sink effect

emirutil

enableSHHeatSink=[true | false]

When set to true, specifies that the heat-sink effect should be included in the SHE analysis.

If this parameter is set to true, ensure that heat-sink models are available.

false

extendHeatSinkRange=value

Specifies the expanded region of the OD. The heat sink structure inside this region can only act as heat sink for the specified OD shape.

Example:

emirutil extendHeatSinkRange=0.5

0.4

connectingODLayers=”layer1 layer2 layer#”

Specifies the list of layers to identify connecting ODs for heat sink effect. The default value is shown below.

emirutil connectingODLayers=”M0_OD M0_OD1 M0_OD2 MVIA0_1 MVIA0_2 M1”

M0_OD M0_OD1 M0_OD2 MVIA0_1 MVIA0_2 M1

shParamFile=”param.sh”

Specifies the self-heating effect analysis parameter file, which is required for calculating the SHE analysis results with heat-sink effect.

For SHE with heat-sink effect, this file should include the heat-sink rules.

none

print_selfheating_report=[type=heatsink filename=filename]

When specified, generates the heat-sink self-heating factor report.

A sample report is provided below.

No special license is required for generating this report.

none

Heat-Sink Self-Heating Sample Report:

--------------------------------------------------------------------------
VERSION: <version>
HEADER:
OD_Name  llx  lly  urx  ury  od_area  od_dT  od_dT_p  od_dT_p_be  od_dT_p_fe
connecting_wire  layer  totalA_on_region
connecting_via  layer  totalA_on_region
connecting_OD  od_cell  od_dT  od_area  layer
-------------------------------------------------------------------------

Batch Mode Support for Running SHE Analysis and Thermal-Aware DC EM Analysis

You can run the SHE analysis and thermal-aware DC EM analysis in batch mode.

For SHE analysis, set the following variables using the set_variable command:

set_variable shParamFile param_sh.file
set_variable shXMLFile xml_file
set_variable shEMEffect {beolT | tiles_no.of divisions in y-direction X no.of divisions in x-direction}

For thermal-aware DC EM analysis, in addition to the above commands, specify the following:

set_variable coupledSH true
set_variable extendJouleHeating true
set_variable extendSHRegion true

For more information about the above variables, see the “Variables” chapter.

The commands listed below are common for both flows, SHE and Thermal-aware DC EM analysis:

For details of the above commands, see the “Batch Commands in Voltus-Fi-XL” chapter.

Example

The following set of commands report the results of SHE analysis for cell, cell1 of library, test_lib. The SHE analysis results will be reported in the ./acrms_sh.txt file. The OD regions temperature will be reported in the mos-region.txt file:

load_view
-libname test_lib \
-cellname cell1 \
-viewname layout

qrc_run_directory svdb
qrc_run_name design

load_em_results \
-tech_file qrcTechFile
-layer_mapfile contactmapfile/input.emir0_bin
print_em_report
-net all_nets \
-type acrms_sh \
-filename ./acrms_sh.txt
print_thermal_report \
-type mos-region \
-filename ./mos-region.txt

Command for Encrypting Data in param.sh File

Voltus-Fi supports encrypting the contents of the param.sh file to hide confidential data. Use the below command to encrypt the contents of the file using the vfibatch command:

vfibatch -cmd <cmd-file-name>

The contents of the cmd-file-name file are as follows:

encrypt_file
-input_file_name <
filename>
-output_file_name <
filename>

Where,

-input_file_name is the name of the file whose contents are to be encrypted

-output_file_name is the encrypted file as viewed by the user. It contains the contents of the input file with confidential data in encrypted form.

In the input file, the text to be encrypted is placed inside below tags:

<Encryption Start>...<Encrypton End>

A sample input file whose contents are to be encrypted is shown below:

line1
line2
line3
line4
<Encryption Start>
Encrypt line1
Encrypt line2
<Encryption End>
line5
line6

The output file for the above input file is shown below:

line1
line2
line3
line4
<Encryption Start>
   u   s   f   i’{BèŸô`¸ïá ×Ù û¢:#zšå„Và´-£¬?~   v   o   l   trcn3 tpeni  ä
Esُvš¬›ˆÐÞArÿù™   v   o   l*ª w±Ä›¯}1–³kB9dP…Ö
<Encryption End>
line5

line6

Generating Reports

The text reports for both SHE and thermal-aware DC EM analysis are only available in batch mode using the sequence of commands detailed in the above section. The types of reports that are generated are detailed below:


Return to top
 ⠀
X