Product Documentation
Virtuoso ADE Assembler User Guide
Product Version IC23.1, November 2023

16


Performing Reliability Analysis

Reliability analysis can be performed using two modes: Spectre native and RelXpert. The reliability analysis analyzes the effect of time on circuit performance drift and predicts the reliability of designs in terms of performance. In ADE Assembler, you can run the reliability simulation for fresh test (when time is zero), stress test (to generate degradation data), and aged test (at specific intervals, such as 1 yr, 3 yrs, or 10 yrs). In the stress test, extreme environmental conditions are used to stress devices before aging analysis.

The RelXpert Reliability Simulator interface in ADE Assembler is supported with the Spectre Simulator in MMSIM 7.2 or a later version. For more information, see Virtuoso RelXpert Reliability Simulator User Guide.

This chapter describes how to set up and run reliability simulation in ADE Assembler.

See the following topics for more information:

Important Points to Note

Simulator Modes for Reliability Analysis

You can run reliability analysis in two simulator modes:

Specifying the Reliability Analysis Setup

Before you specify the reliability analysis setup, ensure that you do the following:

Follow these steps to set up reliability analysis:

  1. In the Data View assistant pane, expand the Reliability Analyses node and click where it says Click to add reliability analysis setup.
    The Reliability Analysis Editor form appears.
    The Aging Model Files command is displayed in the Reliability Analysis Editor form only if the defaultAgingModelFiles environment variable is set to true. You can click Aging Model Files to open the Aging/Self-Heating Model Setup form. In this form, you can specify the model files to be used for the stress and aged tests. Paths to the model files are added to the netlist used for simulation.
  2. The Analysis Name field is a read-only field. The default analysis name is Reliability0.
    You can edit the name of a reliability setup only after saving it. To rename a reliability setup, double-click its name in the Data View assistant
  3. In the Tests and Variables section, specify the following:
    1. From the Fresh Test drop-down list, select the name of the test you want to use for running fresh simulation.
    2. From the Stress Test drop-down list, select the name of the test you want to use for running stress simulation.
      The stress simulation generates a stress file. You can reuse the stress file if you do not want to run the stress test again. See the Reusing the Stress File section for more information.
    3. From the Aged Test drop-down list, select the name of the test you want to use for running an aging simulation.

    Note the following important points with respect to the selection of tests for the fresh, stress, and aged test:
    • It is possible to specify different test names for fresh, stress, and aged tests.
    • Simulation for an aged test uses the simulation data generated by the stress test. Therefore, a stress simulation must be run before an aging simulation is run.

    The table displayed at the bottom of the form shows the values of global and local variables to be used for fresh, stress, and aged tests.
  4. If required, you can modify the values of variables in this table. A variable can be set to a static value, as shown in the figure below, or to the name of a sweep variable whose values are substituted at the run time.
    The values of the design variables that are displayed in bold indicates that they have been used in the corner setup or in the testbench. Note that the values set in the reliability setup are used in simulation.
    You can also use the VAR() expression to specify design variables. In the following example, value of the variable myTemp is assigned to the design variable Temperature.
  5. Click Defaults to reset design variables to their original values.
  6. Click Options. The Reliability Options form appears.
  7. In the Reliability form, specify options for the simulation.
    These options for reliability analysis are saved in maestro.sdb setup database.
    For details of the Reliability form, refer to Reliability Options Form.
  8. After specifying the reliability options, close the Reliability form.
  9. Click OK to close the form.
    The reliability setup appears under the Reliability Analysis tree on the Data View assistant pane.
    If required, you can add notes to the reliability analysis setup you have created. For this, right-click the reliability analysis setup name on the Data View assistant pane and click Notes to open the Add/Edit Notes form. Add notes in the Notes field and click OK. These notes are displayed in the tooltip for the setup and saved in the setup database.
    For related information, see Adding Notes to a Test.

Variables and Temperature in the Reliability Setup

When you select fresh, stress, and aged tests in the Reliability Analysis Editor, the Design Variable Values for the Selected Tests section displays the default values of design variables and the simulation temperature for the selected tests.

These values are the same as defined for these tests in the Data View assistant and in the Setting Temperature form.

If you edit the values of the design variables and temperature in the Reliability Analysis Editor, these edited values are displayed in bold. When you hover over an edited value, a tooltip is displayed, indicating that the edited value is overriding the value defined in the test.

The following table shows how the values of cload and temperature are used in the fresh, stress, and aged simulations.

Corner Stress Simulation Fresh and Aged Simulation

Nominal

temperature = 80, cload = 1.2

temperature = 27, cload = 1.3

C0

temperature = 80, cload = 1.2

temperature = 30, cload = 1.3

C1

temperature = 80, cload = 1.2

temperature = 50, cload = 1.3

Note that the values defined and edited on Reliability Analysis Editor take priority over the values defined in the active setup.

Specifying Simulator Mode for Reliability Analysis

Before specifying the simulator mode, ensure that the following environment is set to
envSetVal("maestro.gui" "showNativeRelxpertSwitch" 'boolean t)

The default simulator mode to perform reliability analysis is Spectre native. However, you can choose RelXpert mode by selecting RelXpert from the drop-down list shown in the following figure.

Specifying Aging Model Files

Before specifying the aging model files, ensure that the following environment is set to true.
envSetVal("maestro.gui" "displayAgingModelFiles" 'boolean t)

Perform the following steps to specify the model files to be used for aging or self-heating analysis for the stress or aged tests:

  1. In the Reliability Analysis Editor form, click Aging Model Files, as shown in the following figure.
    The the Aging/Self-Heating Model Setup form appears.
  2. In the Model File column, type the path and file name of the model file you want to use.
    Alternatively, you can click the ellipsis button (...) to open the Choose Model File form. Select a valid model file and click Open.
  3. In the Section column, select a section from the drop-down list.
    A model file can have zero or more sections. If a model file contains no sections, there is no drop-down list available. The section you select determines which model definition the simulator uses.
  4. In the Placement of the Model Files in Netlist section, select one of the following options to define whether you want to print the aging-specific model file before or after the standard model files in the netlist:
    • Before Standard Model: Prints the aging model file before the standard model file in the netlist
    • After Standard Model: Prints the aging model file after the standard model file in the netlist
      You can also specify these options by setting the defaultAgingPlacementType environment variable.

Reusing the Stress File

When reusing a stress file between two reliability setups, ensure that Aging Options settings are identical in both the setups. If one reliability setup is configured to run a single age point, another setup must also run a single age point. Similarly, if one reliability setup is run with gradual aging configuration, another setup must also run with gradual aging.

To reuse a stress file from one reliability setup to another:

  1. From the Reliability Analyses node, right-click a setup in which you want to reuse the stress file, and select Open Setup.
    The Reliability Analysis Editor form opens the selected reliability setup.
  2. In the Reliability Analysis Editor form, clear the Stress Test check box.
    Note that the Stress Test column does not display any variables because no stress test is currently selected.
  3. To specify the stress file that you want to reuse, do one of the following:
    • Select Open file and click Stress File to select the stress file.
    • Select Configure and then click Stress File.
      The Configure Stress File form appears.
      Specify the following fields to configure the stress file that you want to reuse:
      • In the History Name field, select a history name.
      • In the Reliability Setup Name field, select the name of the reliability setup from which you want to reuse the stress file.
        You must have at least two reliability setups in the active setup to reuse the stress file. If you have only one reliability setup, an empty string is displayed in the Reliability Setup Name field.
      • In the Run Name field, select a run name used in the run plan from which you want to reuse the stress file.
      • In the Corner Name field, select a corner name.
      • In the Match Parameters field, enter a list of lists containing the name-value pairs of the sweep variables to identify the design point from which you want to reuse the stress file.
        For example, list(list("cload" "2f") list("vdc" "1.8")).
        See the maeGetStressFile function for more information.
      • Click OK to close the Configure Stress File form.
  4. Click Apply to save the changes.
  5. Click OK to close the Reliability Analysis Editor form.
You can watch a video demonstration on how to reuse a stress file at Reusing a Stress File in a Reliability Setup. You can also read the related blog at Virtuoso Video Diary: Enhancements in Reliability Analysis.

Reliability Options Form

In the Reliability Options form, you can specify the options for reliability analysis. The Reliability Options form contains the following four tabs:

Degradation and Output tabs are disabled if only Self-Heating analysis is selected on the Basic tab.

For detailed information about the fields on all four tabs of the Reliability Options form, see Spectre Reliability Analysis in Spectre Circuit Simulator and Accelerated Parallel Simulator User Guide.

You can watch a video demonstration on how to use the Reliability Options form at What's New in Reliability Setup. You can also read the related blog at Virtuoso Video Diary: What's New in Reliability Setup.

Basic

Using the Basic tab, you can specify analysis type, aging options, start and stop time of reliability analysis, device masking options, and various other options.

The options on the Basic tab are grouped in the following sections:

Analysis

This section is not available in the RelXpert simulator mode if AgeMOS model is selected as the Aging Model Type on the Modeling tab.

Select the following options to specify the type of analysis to be used for obtaining the reliability values of the devices.The following table describes the options available in the Analysis section of the Basic tab.

Field Description

Aging

Select this check box to use the aging flow to obtain the reliability values.

Self-Heating

Select this check box to use the self-heating flow to obtain the reliability values.

Environment variable: enableSelfheating

Aging Options

This section is available only if the Aging analysis is selected in the Analysis section of the Basic tab.

Field Description

Single Age Point

Select this option to specify a single age point.

Environment variable: agingPointsType

Gradual Aging

Select this option to enable gradual aging flow.

The gradual aging flow is not supported for self-heating analysis if Spectre native mode is selected.

Environment variable: agingPointsType

Age

Specify the time (age points) at which the device degradation is calculated.

For example, 10

If the aging option is set to Gradual Aging and mode is set to Age Points, you can specify more than one age points in a list of space-separated values. For example, 10 20 30

Environment variables: mosAgingTime and gaAgePoints

Age Unit

Select the unit for the age points.

Possible values are: Years, Days, Hours, Minutes, Seconds

Environment variables: mosAgingTimeUnit and gaAgePointsUnit

Mode

Select one of the following Gradual Aging modes:

  • Age Points: Select this option to define the selected age points to perform reliability analysis.
  • Age Sweep: Select this option to perform reliability analysis from the start time to the stop time. You then need to define the total number of age steps, start and stop time to perform reliability analysis, unit to measure the start and stop time of each step, and the type of age step.

Environment variable: gaMode

Dynamic Parameter

Select this check box to set different values of a design variable for different age points. After selecting this check box, double-click in the Variables cell to select a design variable, and then set the values in the <Age Points> columns. If you do not select this check box, the same value of the design variable is used for all the age points.

This check box is available only when Spectre 18.1 ISR6 or a later version is installed and the Age Points mode is selected in the Gradual Aging flow.

Save Intermediate Results

  • Select one of the following options to specify the age points for which gradual aging results are to be saved:
  • All: Saves the aging results for all the age points specified in the Age field.
  • Some: Saves the aging results for the age points based on the index values specified in the text field displayed next to it. After you select this option, specify the index values of the age points for which you want to save the aging results. You can specify any integer value greater than zero as the index.
    The index value for the first age point starts with 1. If you have specified 10 15 20 25 30 in the Age field, and want to save the aging results for the intermediate age points 15 and 25, specify 2 4 in the text field. The aging results for the last age point are always saved by default.
    Environment variable: gaSaveSome
  • None: Saves the aging results only for the last age point

Environment variable: gaSaveResults

Pass Param

Select this check box to pass the URI instance state to the next gradual aging step.

This field is applicable only for the gradual aging flow.

Profile

Enables profile gradual aging. In profile gradual aging, the age is calculated independently of the age points because all age points are run with reference to age = zero. This means that the result of an age point does not depend upon the results of previous age points. Therefore, the order of the age points is not important in profile gradual aging and the equivalent age is the sum of age values of all age points.

Type

Select one of the following options to specify the age step method for the Age Sweep mode of the gradual aging flow:

  • lin: Select this option if you want to use the linear method to calculate the time step. If you select this method, the time step is calculated using the following formula:
    (Stop Time – Start Time) / (Total Steps –1)
  • log: Select this option if you want to use the logarithm model to calculate the time step. If you select this method, the time step is calculated using the following formula:
    [log(Stop Time – Start Time)] / (Total Steps –1)

Environment variable: gaAgeStepType

Unit

Select the unit to measure the start and stop time for each step:

Possible values are: Years, Days, Hours, Minutes, Seconds

Environment variable: gaAgeStepUnit

Start Time

Specify the start time of the age step in gradual aging flow.

Environment variable: gaAgeStepStart

Stop Time

Specify the stop time of the age step in gradual aging flow.

Environment variable: gaAgeStepStop

Total Steps

Specify the total number of steps to perform the reliability analysis.

Environment variable: gaAgeStepTotalStep

Pass Param

Select this check box to pass the data structure of a URI instance state from a previous aging step to the next gradual aging step.
The data structure is copied to a temporary file before it is passed to the next aging step.

This option is available when you set up reliability options in the RelXpert mode.

Stress Test

The following table describes the options available in the Stress Test section of the Basic tab.

Field Description

Transient Time Window for Stress Test

Select this check box if you want to define the start and stop time for reliability analysis during transient simulation.
The start and stop time define the transient simulation range.

Environment variable: enableRelXTran

Single Window

Lets you specify a single time window for the stress test. You can then specify the time window in the Start Time and Stop Time fields

Start Time

Specify the start time of reliability analysis during transient simulation.

You can also specify the start time using the VAR function.

Environment variable: relxTranStart

Stop Time

Specify the stop time of reliability analysis during transient simulation.

You can also specify the stop time using the VAR function.

Environment variable: relxTranStop

Multiple Windows

Lets you specify multiple time windows for the stress test.

You must then specify space-separated value pairs for start and stop times in the Multiple Windows text field.

For example, if you want to specify three time windows in which the start and stop times of the first time window are 10n and 30n, those of the second time window are 50n 70n, and those of the third time window are 90n 110n, specify the following in this field:

10n 30n 50n 70n 90n 110n

Device Masking

The following table describes the options available in the Device Masking section of the Basic tab.

Field Description

Mask Device

Select this check box if you want to include or exclude:

  • models that belong to the subcircuits listed in the subckt list
  • devices that belong to the models listed in the model list
  • devices that are listed in the instance list

Environment variable: mosMaskDev

Include/Exclude Devices

Select one of the following options:

  • Include: Performs reliability analysis only on the specified devices, or the models that belong to the listed subcircuit, or devices that belong to the listed models.
  • Exclude: Excludes the listed devices, or the models that belong to the listed sub circuit, or the devices that belong to the specified model from the reliability analysis.

Environment variable: mosMaskDevInclude

Models List

Specify the name of the models for which the related devices are included or excluded when performing reliability analysis.

Subcircuit In Schematic

Select a subcircuit from the schematic and then click Add to add the selected subcircuit to Subcircuit List.

You can click Refresh to get the latest subcircuit list from the schematic. The time taken to refresh the subcircuit list depends upon the size of the schematic.

Subcircuit List

Specify the subcircuits for which the related models are included or excluded when performing the reliability analysis.

Devices List

Select to specify the instances that you want to include or exclude when performing the reliability analysis.

Environment variable: mosMaskDevInstance

See the Masking Devices section for more information.

Degradation Ratio

This section is available in the Spectre native mode only if the Aging analysis is selected in the Analysis section of the Basic tab. This section is not available in the RelXpert mode.

The following table describes the options available in the Degradation Ratio section of the Basic tab.

Field Description

Enable Degradation Ratio

Select this check box if you want to specify the HCI, BTI, NBTI, and PBTI weighting ratio in total degradation for the selected devices.

Hot-Carrier Injection (HCI)

Specify the HCI degradation weighting ratio in total degradation. The specified value must be between 0–1.

Bias Temperature Instability (BTI)

Specify the BTI degradation weighting ratio in total degradation. The specified value must be between 0–1.

Negative Bias Temperature Instability (NBTI)

Specify the NBTI degradation weighting ratio in total degradation. The specified value must be between 0–1.

Positive Bias Temperature Instability (PBTI)

Specify the PBTI degradation weighting ratio in total degradation. The specified value must be between 0–1.

The Degradation Ratio options are not available when you set up reliability options in RelXpert mode.

Lifetime Calculation

This section is available only if the Aging analysis is selected in the Analysis section of the Basic tab. This section is not available in RelXpert mode.

The following table describes the options available in the Lifetime Calculation section of the Basic tab.

Field Description

Calculate Lifetime of Devices

Select this check box if you want to calculate the lifetime of the devices.

Environment variable: mosCalcLifetime

Degradation Value

Specify the name-value pairs of the device names and threshold degradation values of the electrical properties (Idsat, Vtlin, Idlin) to calculate the lifetime of devices.

You can separate the name-value pairs of different devices by using either a comma or a semicolon.

For example:

If you set the nmos 0.1, pmos 0.2 value in this field, lifetime will be calculated for:

  • nmos devices whose electrical properties have degraded by 10% or more.
  • pmos devices whose electrical properties have degraded by 20% or more.

Environment variable: mosDeltad

Other Options

The following table describes the options available in the Other Options section of the Basic tab.

Field Description

Sub-Blocks Mapping File

Specifies the name of the file to which mapping information between the sub-block and the larger block of a design is saved. Using this mapping information, stress file generated from the stress simulation on the larger block or the full chip can be served as an input for the aging simulation of the sub-block.

The information of the mapping file is also printed in the aged netlist when you run reliability simulation:

rel reliability {
enable_ade_process value=yes
age time=[10.0000y]
deltad value=0.1
accuracy level=1
simmode type=aging file="../OSC_TEST/input.bs0" mapping="mapping_file"
tran tran stop=10u errpreset=conservative write="spectre.ic" \
writefinal="spectre.fc" annotate=status maxiters=5
finalTimeOP_aged info what=oppoint where=rawfile
}

Additional Analysis Arguments

Specify the additional arguments to be considered during reliability simulation. Use either a semicolon or a comma to specify more than one arguments.

For example, .agelevel_only value=[(113 nmos)];.vthmethod spice or .agelevel_only value=[(113 nmos)],.vthmethod spice

Environment variable: otherRXOptions

RelXpert Command Line Option

Specify the command-line options that you want to send to the simulator.

This option is available only for RelXpert simulator mode.

Modeling

Using the Modeling tab, you can specify the path to the Unified Reliability Interface (URI) libraries and methods to perform aging simulations.

The options on the Modeling tab are grouped in the following sections:

Aging Model Type

This section is available only for foundry-specific models.

Unified Reliability Interface (URI) Models

The following table describes the options available in the Unified Reliability Interface (URI) Models section of the Modeling tab.

Field Description

URI Libraries

Specify the full path to load the URI libraries or click the Browse (...) button to select the libraries.

  • If no URI library was earlier selected, clicking the Browse button redirects you to the current working directory.
  • If a URI library was earlier selected, clicking the Browse button redirects you to the directory of the previously selected URI library.

Environment variable: uriLibs

Age Calculation Approach

Select one of the following age calculation methods:

  • Scale Param Method
  • Append Age Method

Append Type

This option is available in the RelXpert mode only if the Append Age Method is selected as the Age Calculation Approach.

Select one of the following options to specify the type of circuit elements to which aging results are to be appended:

  • All Subcircuits: To append age values to all the subcircuits. However, the age is not appended to the primitive devices.
  • Standard Subcircuits Only: To append age values only to the standard subcircuits.
  • Inline Subcircuits Only: To append age values only to inline subcircuits.
  • Primitive Devices: To append age values only to the primitive devices.

Parameter Scale Mode

Specifies the parameter scaling mode for URI library.

Possible values are:

  • Effective: Effective parameter is passed to URI for scaling.
  • Original: Original parameter is passed to URI for scaling.

Bias Depend Type

Specifies the source on which the aging model is dependent.

Possible values are All, Voltage, and None.

The default value is All.

The following code shows an example of the statement printed in the netlist when you set this option to voltage.

uri_lib_file="/home/user/libURI.so" \
debug=0 scale_mode=effective bias_depend_type=voltage
minage value=1e-30

URI Debug Messaging

Select this check box to print the debug information.

Environment variable: uriDebugMode

Age Modeling

The following table describes the options available in the Age Modeling section of the Modeling tab.

Field Description

Age Modeling Effect

Select one of the following options:

  • Include: Includes the effects of the selected AGEMOS aging effect contributors and the specified URI age levels when calculating the device degradation results.
  • Exclude: Excludes the effects of the selected AGEMOS aging effect contributors and the specified URI age levels when calculating the device degradation results.

Aging Effect Contributors

  • AGEMOS: Select the following options to specify the aging effects that you want to include or exclude when calculating the device degradation results:
    • Hot-Carrier Injection (HCI): To calculate the transistor and circuit performance degradation due to HCI effect.
      If you clear this check box, Hot Carrier Injection Modeling section becomes unavailable on the Modeling tab.
    • Negative Bias Temperature Instability (NBTI): To calculate PMOSFET and circuit performance degradation NBTI effect.
    • Positive Bias Temperature Instability (PBTI): To calculate NMOSFET and circuit performance degradation due to PBTI effect.
      Environment variable: mosMode
  • URI Models: In the Age Levels field, enter the age level numbers corresponding to the aging effect defined in the URI models that you want to include or exclude when calculating the device degradation results. The default value is All.
    The URI Models and Age Levels fields are displayed only when you have selected the URI model to be used from the URI Libraries field.
See the Different Configurations of AGEMOS and URI Contributors section for more information.

Minimum Age

Specify the smallest Age value for which degraded SPICE model parameters are calculated. Use either decimal notation (xx.xx) or engineering notation (x.xxe+xx) to specify the value.

Environment variable: mosMinAge

Age Method

These options are available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Options in this group enables you to specify one of the following methods for calculating degraded SPICE model parameters for aged circuit simulation:

  • AgeMOS method: To select this method, choose AgeMOS from the Method drop-down list. This is the default method.
  • Method of interpolation from aged files in linear-linear domain: To select this method, choose Interpolation from the Method drop-down list and linlin from the Scale drop-down list.
  • Method of interpolation from aged files in linear-log domain: To select this method, choose Interpolation from the Method drop-down list and linlog from the Scale drop-down list.
  • Method of interpolation from aged files in log-log domain: To select this method, choose Interpolation from the Method drop-down list and loglog from the Scale drop-down list.
  • Method of regression from aged files in linear-linear domain: To select this method, choose Regression from the Method drop-down list and linlin from the Scale drop-down list.
  • Method of regression from aged files in linear-log domain: To select this method, choose Regression from the Method drop-down list and linlog from the Scale drop-down list.
  • Method of interpolation from aged files in log-log domain: To select this method, choose Regression from the Method drop-down list and loglog from the Scale drop-down list.

Age Method

  • Effective Model Calculation: By default, RelXpert performs aged parameter scaling using the effective parameters. Use this option to enable RelXpert perform scaling of aged parameters without using the effective parameters.

Environment variables: mosAgeDomain and mosAgeMethod

Append Device Age

Select this check box to append age value in the definition statements of all degraded devices in the netlist file.

This option is available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Modify Netlist Before Aging Starts

Select this check box to enable the user to review and edit the netlist before the aging simulation is run.

This option is available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Enable Maximum Number of Aged Models

Select this check box to specify the maximum number of aged models to be generated.

This check box is available only for the RelXpert simulator mode.

Maximum Number of Aged Models

Specify the maximum number of models (excluding the fresh model) to be generated based on the selected grouping method.

If the device degraded more than the last aged model, additional models will be generated using extrapolation from the last two aged model.

This options appears dimmed and becomes available when the Enable Maximum Number of Aged Models check box is selected. This option is available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Grouping Method

These options are available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Select one of the following methods to group devices with similar degradations. If the number of degraded devices is large, grouping devices with similar degradation reduces the size of degraded netlist file.

  • Age: Interpolates the models based on age values in log domain. This is the default.
  • Degradation: Interpolates the models based on degradation values using linear scale.

Show Unaged Devices

Select one of the following options to specify whether to list the unaged devices in the output:

  • First 20: Only first 20 unaged devices are listed in the ouput
  • All: All unaged devices are listed in the output
  • None: Unaged devices are not listed in the output
These options are available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Include Files

Specify the filename whose contents you want to include in the input netlist file. You can also click the ellipsis (...) button to select the file.

This option is available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

Compact Aged Netlist

These options are available only for the RelXpert simulator mode if AgeMOS (Spectre Internal) is selected as the Aging Model Type.

In RelXpert, a subcircuit is expanded if a model name is changed to an aged model name. If the subcircuit definition is large, it causes the netlist size to become huge after expansion and it becomes extremely difficult to open the netlist.

You can use the Analogmodel feature of Spectre in the aged netlist to change the model name. Therefore, the subcircuit is not expanded, which reduces the netlist size considerably.

You can also use the model-in-model feature of Spectre to output an aged netlist file in which the shared model parameters are listed only once for devices sharing the same model in the netlist. This also reduces the size of the netlist to a large extent.

Select one of the following options to specify which Spectre feature you want to use to reduce the size of aged netlist file:

  • Models: If you want to use the model-in-model feature of Spectre to output an aged netlist file.
  • Subcircuit Macromodels: If you want to use the Analogmodel feature of Spectre to change the model name in the netlist.
  • All: If you want to use both the Spectre features to reduce the size of netlist file.
  • None: If you do not want to use any of the Spectre features to reduce the size of the netlist file.

Different Configurations of AGEMOS and URI Contributors

The following table describes some examples of how you can include or exclude the aging effect contributors of the AGEMOS and URI models when calculating the device degradation results.

Age Modeling Effect Aging Effect Contributors Description
AGEMOS URI Models

Include

HCI

Age Levels field is left blank

Includes all the contributors of the AGEMOS and URI models when calculating the device degradation results.

NBTI

PBTI

Exclude

HCI

Age Levels field is left blank

  • Includes all the contributors of URI model when calculating the device degradation results.
  • Excludes all the contributors of the AGEMOS model

NBTI

PBTI

Exclude

HCI

103

  • Excludes only the contributor corresponding to the age level 103 defined in the URI model
  • Excludes all the contributors of the AGEMOS model

NBTI

PBTI

Hot-Carrier Injection Modeling

This section is not available if Hot-Carrier Injection (HCI) is not selected as one of the Aging Effect Contributors in the Age Modeling section.

The following table describes the options available in the Hot-Carrier Injection Modeling section of the Modeling tab.

Field Description

Accuracy

Select one of the following options to specify the method used in the reliability analysis when performing integration and substrate current calculation.

  • Liberal: Select this option if you want to use backward Euler integration. Sets Isub = 0, when Vgs < Vth. This is the default value.
  • Conservative: Select this option if you want to use trapezoidal integration. Calculates Isub, when Vgs > Vth.

Environment variable: mosHciAccuracy

Drain Current Calculation Method

Select one of the following options to specify how the simulator obtains the drain current to perform reliability analysis.

  • Ids Static Current: Select this option to use the static drain current, which is also called as the channel drain current. This is the default value.
  • Id Dynamic Current: Select this option to use the dynamic drain current, which is also called as the AC drain current.
  • Drain Terminal Static Current: Select this option to use the terminal static current.

Environment variable: mosHciIdMethod

Vth, Igate, and Isub Calculation Method

Select one of the following options to specify the method used for obtaining the gate terminal current or substrate terminal current:

  • From Model Parameters: Select this option to calculate the substrate or gate terminal current using the model parameters. This is the default value.
  • From Simulation Results: Select this option to calculate the substrate or gate terminal current using the simulation results.

Environment variable: mosHciOpMethod

Lifetime Parameter Calculation Method

This option is available only in the RelXpert simulator mode.

Select one of the following options to specify the method used for obtaining lifetime parameters for MOSFET Hot-Carrier simulation:

  • From Model Parameters: Select this option to calculate lifetime parameter values using lifetime model equations as described in Hot-Carrier Lifetime model.
  • From Table File: Select this option if you want to look up lifetime parameters and interpolate the results from the lifetime parameter file. The filename must contain values for lifetime parameters (that is, h, m, n, hg, and mg under different vgd, vbs, vds, vg/vd, vb/vs, or vd/vs bias conditions). Only one bias condition can be specified in the table file.

Lifetime Parameter File

This field is available only when you select the From Table File option from the Lifetime Parameter Calculation Method drop-down list.

Specify the filename relative to the directory from which the reliability simulator is invoked.

You can also specify the full path.

Degradation

Using the Degradation tab, you can specify the device degradation and subcircuit degradation options.

The options on the Degradation tab are grouped in the following sections:

Device Degradation

The following table describes the options available in the Device Degradation section of the Degradation tab.

Field Description

GUI, File, Setup, and Setup File

Specify these options to print device degradation (gm, gds, Idlin, Idsat, Vth degradation) information to a .bt0 file.

Refer to the Specifying Device Degradation Values section for more information.

Environment variable: enableOutputDevDegInFile

Devices to be Excluded from Degradation Check

Specify the models for which the related devices are included or excluded when performing reliability analysis.

Environment variable: degCheckException

Output the model names and bias conditions

Select this check box if you want to print the model names and bias conditions in the input.bt0 file.

Additional Arguments

Specifies additional arguments for output device degradation. You can specify multiple space-separated arguments.

For example, top_deg_num=1 op=[vth idsat idlin gm gds]

Environment variable: otherODDOptions

Subcircuit Degradation

The following table describes the options available in the Subcircuit Degradation section of the Degradation tab.

Field Description

GUI, File, Setup, and Setup File

Specify these options to print the subcircuit degradation (Idlin, Idsat, Vth degradation) information to a .bt0 file. Since a subcircuit is treated as a MOSFET device, it should have at least four terminals, which map to drain (D), source (S), gain (G), and bulk (B) of the MOSFET.

Refer to the Specifying Subcircuit Degradation Values section for more information.

Miscellaneous

The following table describes the options grouped in the Miscellaneous section on the Degradation tab.

Field Description

Negative Aging Check Level

Specify the type of message to be generated when negative aging occurs:

  • Error: Select this option if you want to generate an error message when negative aging occurs.
  • Warning: Select this option if you want to generate a warning message when negative aging occurs.
  • Ignore: Select this option to ignore all the errors and warnings when negative aging occurs.

Environment variable: checknegagingtype

Clamp Degradation Values for Negative Aging

Select this check box if you want Spectre to clamp the degradation values to be the same as fresh values and generates a warning message for negative aging.

Environment variable: checknegagingclamp

Check degradation positive feedback

Select this check box to print enable_bias_runaway value=yes in the netlist.

Degradation Calculation Method

Select one of the following options to specify the degradation calculation method to calculate the degradation results for a MOSFET. The degradation results are generated in the bt# file.:

  • Use Aged Model Card: To use the aged model card to calculate the degradation results. The results are generated in the bt# file.
  • Calculate HCI/BTI Contributions Separately: To use the HCI, NBTI, and PBTI reliability model's degradation results separately. The HCI and NBTI degradation results are added to calculate the degradation results for PMOSFET, and the HCI and PBTI degradation results are added to calculate the degradation results for NMOSFET. The results are generated in the bt# file.
These options are available only for RelXpert simulator mode.

Preset

The following table describes the options grouped in the Miscellaneous section on the Degradation tab.

Field Description

Preset Age/Degradation/Lifetime

Select this check box to preset the age, lifetime or degradation value for devices in the netlist file.

Preset Type

Select one of the following preset types for a device, model, or block:

  • Lifetime
  • Age
  • Degradation
If the preset is age, the simulator does not perform an age calculation for the specified devices, models, or blocks.If the preset is lifetime or degradation, the simulator derives age from the preset lifetime or degradation values to calculate degradation or lifetime for the specified devices, models, or blocks.

Preset Value

Specify the value for the selected preset type.

  • For the lifetime preset, specify the lifetime value of the device, model, or block.
  • For the age preset, specify the age value of the device, model, or block
  • For the degradation preset, specify the degradation value of the device, model, or block

Aging Contributor

Specify the age values for the following modeling types:

  • All
  • Hot-Carrier Injection (HCI)
  • Negative Bias Temperature Instability (NBTI)
  • Positive Bias Temperature Instability

Block/Model/device

Specify the blocks, models, or devices on which the preset values are enabled.

Follow these steps to specify the blocks, models, or devices:

  1. Click Select to open the schematic.
  2. Select one or more blocks, models, or devices in the schematic.
  3. Press the Esc key on the keyboard when you are done.
    Selected blocks or models are displayed in the Block/Model/device field, as shown in the following figure.
This section is available only for the RelXpert simulator mode.

Output

Using the Output tab, you can specify the degradation reports that you want to generate and methods to filter degradation results in the reports.

The options on the Output tab are grouped in the following sections:

Reports

The following table describes the options available in the Reports section on the Output tab.

Field Description

Detailed Device Degradation Report

Select this check box if you want to view the detailed device degradation report.

Subckt Degradation Report

Select this check box if you want to view the subcircuit degradation report.

This option is not available for the RelXpert simulator mode.

Model Changes Report

Select this check box if you want to print the fresh, effective, and aged parameter values to the .bm# file.

Environment variable: reportModelParamChanged

Save models for Aged Devices

Specify the name of the file in which you want the degraded models to be dumped.

Alternatively, you can click the ellipses (...) button to select an existing file. You can also create a new file by specifying its name in the File name field on the Choose a File form.

Environment variable: mosAgeModelFilePath

Filtering

The following table describes the options available in the Filtering section on the Output tab.

Field Description

Filter Degradation Results in Report

Select this check box if you want to filter the degradation results in the report.

Environment variable: enableDegSort

Filter Criteria

Select one of the following options to specify the method by which output of all MOS transistors is sorted in the order of descending degradation:

  • Degradation Threshold: Prints transistors having degradation values greater than the specified threshold value. Specify the degradation threshold value in the corresponding text field in decimal notation (xx.xx) or in engineering notation (x.xxe+xx).
  • Max Devices: Prints only the specified number of transistors that have the highest degradation. Specify the number of maximum devices in the corresponding text field.

Environment variables: degSortType and degSortValue

Specifying Device Degradation Values

The device degradation calculation is based on following fixed bias conditions:

You can specify the device degradation values for the models using one of the following methods:

Using GUI

Follow these steps to specify device degradation values through GUI:

  1. On the Degradation tab, in the Device Degradation section, choose GUI, and then click Setup, as shown in the following figure:
    The Device Degradation Setup form opens.
  2. In the Set V values section, do the following:
    • Specify the following values for calculating the device degradation values:
      • In the Vdd (V) field, specify the bias voltage for the device to obtain gm, gds, Idlin, Idsat, and Vth degradation.
      • In the Vgsat (V) field, specify the Vgs value for Idsat measurement.
      • In the Vdsat (V) field, specify the Vds value for Idsat measurement.
      • In the Vglin (V) field, specify the Vgs value for Idlin/Vt/Gm measurement.
      • In the Vdlin (V) field, specify the Vds value for Idlin/Vt/Gm measurement
    • For each voltage value, specify the corresponding models in the Model Names field. For example, pmos, nmos, and so on.

    The following example sets the Vdd values for nmos, pmos, and dio to 1.2, 1.3, and 1.8V respectively.
    The following example sets the Vdd values for nmos, pmos, and dio to 1.2, 1.2, and 1.8V respectively.
  3. Select the Output vthsat check box to print vthsat information in the input.bt0 file.
  4. Select the Simulator Path check box to specify the full path to the simulator that you want to use for aging simulation.
    This field is not available in the Spectre native mode.
  5. Click OK.

Using Setup File

Follow these steps to specify the device degradation values using a setup file:

  1. On the Degradation tab, in the Device Degradation section, choose File. The Setup File field is displayed, as shown in the following figure.
  2. In the Setup File field, specify the path to the setup file containing the device degradation values for the models in use. Alternatively, you can click the ellipsis (...) button to select the setup file.
  3. Click OK.

Specifying Subcircuit Degradation Values

The subcircuit degradation calculation is based on following fixed bias conditions:

You can specify the subcircuit degradation values using one of the following methods:

Using GUI

Follow these steps to specify subcircuit degradation values through GUI:

  1. On the Degradation tab, in the Device Degradation section, choose GUI, and then click Setup, as shown in the following figure.
    The Subcircuit Degradation Setup form opens.
  2. In the Vdd (V) field, specify the bias voltage for the subcircuit to obtain gm, gds, Idlin, Idsat, and Vth degradation. This field is mandatory.
  3. In the Vgsat(V) field, specify the Vgs value for Idsat measurement.
  4. In the VgIin(V) field, specify the Vgs value for Idlin/Vt measurement.
  5. In the VdIin(V) field, specify the Vds value for Idlin/Vt measurement.
  6. In the Ivth field, specify the constant current value for the specified model.
  7. In the corresponding Subcircuit Names field, specify the name of the subcircuits. For example, sub[1].
    The following example sets the Vdd values for nmos, pmos, and dio to 1.2, 1.3, and 1.8V respectively.
    The following example sets the Vdd values for nmos, pmos, and dio to 1.2, 1.2, and 1.8V respectively.
  8. In the Ivthp field, specify the constant current value for PMOS.
  9. In the Ivthn field, specify the constant current value for NMOS.
  10. In the Subcircuit Names field, specify the list of subcircuits for which degradation needs to be performed.
  11. In the Subcircuit Terminal Names field, specify the four-terminal node name in the order D G S B for each subcircuit. If a node is not specified, the first four terminals of the subcircuit are taken as D G S B by default.
  12. Select the Simulator Path check box to specify the full path to the simulator that you want to use for aging simulation.
    This field is not available in the Spectre internal mode.
  13. Click OK.

Using Setup File

Follow these steps to specify the device degradation values using a setup file:

  1. On the Degradation tab, in the Subcircuit Degradation section, choose File. The Setup File field is displayed, as shown in the following figure.
  2. In the Setup File field, specify the path to the setup file containing the subcircuit degradation values. Alternatively, you can click the ellipsis (...) button to select the setup file.
  3. Click OK.

Creating Outputs for Reliability Analysis

Similar to other analysis, you can create outputs for reliability analysis in the Outputs Setup tab. An output can be a signal or an expression.

To create an expression that is based on the output value of another reliability analysis from the same or another simulation history, use the calcVal function. Either you can type in the expression in the Expr column or use Expression Builder. When using the calcVal function in an output expression, you must specify different tests for stress and aged test to avoid cyclic dependencies.

Related Topics

calcVal

Adding or Modifying an Output Expression

Masking Devices

You can use the options in the Device Masking section to specify the devices that you want to include and exclude when calculating device degradation values.

To mask devices:

  1. In the Device Masking section on the Basic tab of the Reliability Options form, select Mask Devices.
    The options in the Device Masking section are enabled.
  2. From the Include/Exclude Devices drop-down list, select one of the following options:
    • Include: Device degradation values are calculated for the selected devices.
    • Exclude: Devices degradation values are not calculated for the selected devices.
  3. From the Models In Schematic drop-down list, select a model, and then click Add.
    The selected model is added to the Models List. Repeat this step to add another model to the list. Devices in these models are included or excluded when performing reliability analysis, depending on the selection you made in step 2.
  4. From the Subcircuit in Schematic drop-down list, select a subcircuit, and then click Add.
    The selected subcircuit is added the Subcircuit List. Repeat this step to add another subcircuit to the list. Devices in these subcircuits are included or excluded when performing reliability analysis, depending on the selection you made in step 2.
  5. Click Select next to the Devices List field to select the instances from the schematic. After selecting the instances, press the Esc key on your keyboard.
    The selected instances are added to the Devices List field.
  6. Click OK to close the form.

Copying Reliability Setup

You can reuse an existing reliability setup by creating its copies. You can then make certain modifications and see their effects on the simulation results. This way, you can not only save your time, but also retain the original setup.

Follow these steps to copy a reliability setup:

  1. In the Data View assistant pane, expand the Reliability Analyses node, and then select the reliability setup that you want to copy.
  2. Right-click the selected setup and then choose Create Setup Copy.
    The settings in the selected setup are copied to a new setup, which is created with the name, <Name_of_the_existing_reliability_setup>: 1.

Loading Reliability Settings

To your existing reliability setup, you can import the reliability settings from another reliability setup that is defined in an ADE L state or a maestro cellview.

Perform the following steps to import the reliability settings:

  1. In the Data View assistant, under Reliability Analyses node, select the reliability setup to which you want to import the reliability settings.
  2. Right-click the selected setup, and then choose Load Reliability Settings.
    The Load Reliability Options form appears.
  3. From the Library Name, Cell Name, and View Name drop-down lists, select the ADE L state or the maestro cellview where you have defined the reliability setup whose settings you want to import.
  4. Click OK to import the reliability settings to the selected reliability setup.

Setting Up Reliability Analysis for Scenarios with Varying Corner Conditions

You can run a reliability simulation with different corner conditions for stress and aged tests. For this, you can create stress corners in the Corners Setup form, and use those corners in the reliability setup for stress corners.

To use this kind of a setup for reliability analysis, you need to change the reliability mode by setting the defaultReliabilityMode environment variable to "AgingScenarios". When this setting is enabled, the Corners Setup form shows an additional row named Stress Corner at the bottom. You can create special stress conditions for certain corners and select the Stress Corner check box to identify those corners as stress corners.

In addition, the "AgingScenarios" setting also shows additional fields on the Reliability Scenarios Setup form to specify the stress corners to be associated with the stress simulation, as shown below.

This kind of setup enables consistent reliability signoff conditions across different setups.

Important Points to Note:

Enabling or Disabling a Reliability Scenario

To enable or disable a reliability scenario in the reliability scenario setup:

  1. Select or deselect the check boxes next to the reliability scenarios that you want to enable or disable.
  2. Click Apply and then click OK.

Alternatively:

  1. Select the reliability scenario row that you want to enable or disable. Hold down the Ctrl key to select multiple reliability scenarios.
  2. Right-click any of the selected rows and choose one of the following:
    • Enable: Selected reliability scenarios are enabled in the setup.
    • Disable: Selected reliability scenarios are disabled in the setup.
  3. Click Apply and then click OK.

Only the reliability scenarios that are enabled in the reliability scenario setup are simulated.

Exporting a Reliability Scenario Setup

You can export a reliability scenario setup to a CSV file. You can later import this CSV file to make a copy of this setup.

To export a reliability scenario setup:

  1. In the Data View assistant, click Reliability Scenarios to view a list of available reliability scenario setups.
  2. Right-click the reliability scenario setup that you want to export and then choose Open Setup. Alternatively, double-click the reliability scenario setup.
    The Reliability Scenarios Setup form opens.
  3. Edit the reliability scenario setup if required. You can add, remove, enable, or disable reliability scenario rows by using the Add, Remove, Enable, or Disable commands, respectively.
  4. Click Export to export the setup to a CSV file.
    The Export Scenarios to CSV form opens.
  5. Specify the path to the CSV file to which you want to export the setup.
    Alternatively, you can click the Ellipsis (...) icon to select the CSV file.
  6. Select one of the following options:
    • Export all rows as Read only: To export all reliability scenario rows in the setup as read-only.
    • Export Enabled Rows as Read only: To export only enabled reliability scenario rows as read-only.
  7. Click OK to export the setup.
    The reliability scenario setup is exported to the specified CSV file.

Related Topics

Importing a Reliability Scenario Setup from the CSV File

Contents of the Exported CSV File

Contents of the Exported CSV File

The contents of the CSV file are as follows:

t,Scenario_1,Nominal,C0,C1,r
nil,Scenario_2,C0,C1,C2,e
t,Scenario_3,C2,C0,C1,r
nil,Scenario_4,C1,C2,C0,e
t,Scenario_5,C0,Nominal,C1,r
t,Scenario_6,C2,Nominal,C0,r

The CSV file contains entries for each reliability scenarios in separate rows. Each row has six comma-separated values. The following table explains the attributes these values represent.

Attribute No Description

1

Indicates whether the reliability scenario row is enabled in the setup being exported.

Valid values are:

  • t: The corresponding reliability scenario row is enabled in the setup.
  • nil: The corresponding reliability scenario row is disabled in the setup

2

Name of the reliability scenario.

For example: Scenario_1 and Scenario_2.

3

Name of the fresh corner in the corresponding reliability scenario.

For example: Nominal and C0.

4

Name of the stress corner in the corresponding reliability scenario.

For example: Nominal and C0.

5

Name of the aged corner in the corresponding reliability scenario.

For example: Nominal and C0.

6

Indicates whether to export or import the corresponding reliability scenario row in read-only mode.

Valid values are:

  • r: The reliability scenario row is exported or imported in read-only mode.
  • e: The reliability scenario row is exported or imported in edit mode.

If you selected the Export all rows as Read only check box while exporting the setup, all reliability scenario rows have the value r for this attribute. If you selected the Export Enabled Rows as Read only check box, only the enabled scenario rows will have the value r for this attribute, whereas the disabled rows will have the value e for this attribute.

The reliability scenario rows with r values in the CSV file, when imported, are grayed out in the reliability scenario setup. These rows cannot be edited in the Reliability Scenarios Setup form.

Related Topics

Exporting a Reliability Scenario Setup

Importing a Reliability Scenario Setup from the CSV File

Importing a Reliability Scenario Setup from the CSV File

You can either create a new reliability scenario setup or edit an existing reliability scenario setup by importing the setup saved in a CSV file.

To import a reliability scenario setup:

  1. In the Data View assistant, click Reliability Scenarios to view a list of available reliability scenario setups.
  2. Right-click the reliability scenario setup that you want to edit and then choose Open Setup. Alternatively, double-click the reliability scenario setup.
    If there are no existing reliability scenarios setups, click Click to add reliability scenarios setup to create a new setup.
    The Reliability Scenarios Setup form opens.
  3. Click Import to import the setup from a CSV file.
    The Import Scenarios From CSV form opens.
  4. Specify the path to the CSV file from which you want to import the setup.
    Alternatively, you can click the Ellipsis (...) icon to select the CSV file.
  5. From the Operations drop-down list, select one of the following options:
    • overwrite: All existing scenarios are deleted from the Reliability Scenarios Setup form, and scenarios from the CSV file are added to the form. This is the default value.
    • retain: If a scenario name being imported from the CSV file already exists in the Reliability Scenarios Setup form, its import is discarded from the CSV file, and the existing scenario in the form is retained as is.
      When you select this option:
      • Scenarios that exist only in the Reliability Scenarios Setup form, but not in the CSV file being imported, are kept as is.
      • Scenarios that exist only in the CSV file, but not in the form, are appended.
    • merge: If a scenario name being imported from the CSV file already exists in the Reliability Scenarios Setup form, the existing scenario is deleted from the form, and its details are copied from the CSV to the form.
      When you select this option:
      • Scenarios that exist only in the form, but not in CSV file, are kept as is.
      • Scenarios that exist only in the CSV file, but not in the form, are appended in the form.
  6. Click OK to import the setup.

Related Topics

Exporting a Reliability Scenario Setup

Contents of the Exported CSV File

Running the Reliability Simulation

Before you run reliability simulation, ensure that the following prerequisites are met:

To run the reliability simulation:

Important Points to Note

Difference Between Reliability Mode And Aging Scenarios

The following table lists the differences between reliability mode and aging scenarios.

Reliability Mode Aging Scenarios
  • This is the default reliability mode.
    The default value of the environment variable maestro.gui defaultReliabilityMode is Reliability.
  • Corners and variables defined in the active setup are common to all fresh, stress, and aged tests.
  • Cannot run different corners for fresh, stress, and aged tests.
  • Supports Monte Carlo Sampling run mode.
  • Local sweep is not supported. If you want to sweep a temperature or a variable, you must define them in the Global Variables section or in the Corners Setup form.
  • You need to set the environment variable to maestro.gui defaultReliabilityMode to AgingScenarios to enable aging scenarios.
  • A Stress Corner must be defined in the Corners Setup form before setting up a reliability scenario.
  • Can run different corners for fresh, stress, and aged tests.
  • Does not support Monte Carlo Sampling run mode.

Working with Reliability Data

With reliability data, you can do the following:

Viewing Simulation Results

To view simulation results, do the following:

  1. On the Results tab, select the required test.
  2. Right-click the selected test and choose Reliability Data.
  3. Depending on the MMSIM version used to run the simulation, the following submenu is displayed:
    • If you have used MMSIM 11.1 to run simulation, the following submenu is displayed.
    • If you used MMSIM 12.1 to run simulation, the following submenu is displayed.
      Depending on the type of test: fresh, stress or aged; the simulator mode: native or RelXpert); and the reliability setup, only those commands are available in this submenu for which the corresponding results are available.
  4. Choose the result that you want to view.
    The Reliability Analysis Results Display form appears. The options displayed on this form depend upon the type of results that you chose. The following figure shows an example of the form when Reliability Data > Device Lifetime and Degradation is selected.
  5. In the Reliability Analysis Results Display form, do the following:
    Click... To...

    Display Lifetime and Degradation

    Display the lifetime and degradation values for all degraded devices.

    See the Displaying Lifetime and Degradation Results section for more information.

    Display Device Characteristic Degradation

    Display the device degradation for the specified aging time period.

    See the Displaying Device Characteristic Degradation Results section for more information.

    Display Model Parameter Changes

    Display fresh and aged parameter information.

    See the Displaying Model Parameter Change Results section for more information.

    Display Self-heating

    Display the temperature rise for each device.

    See the Displaying Self-Heating Results section for more information.

Displaying Lifetime and Degradation Results

The lifetime and degradation results display a list of devices whose electrical properties have degraded by at least the value specified in the Degradation Value field on the Basic tab of the Reliability Options form.

If you set the Degradation Value to 0.1, the lifetime and degradation results display a list of devices whose electrical properties have degraded by 10% or more.

Follow these steps to view the lifetime and degradation results of the devices:

  1. On the Results tab, right-click a result and select Reliability DataDevice Lifetime and Degradation.
    The Reliability Analysis Results Display form appears.
  2. Click Display Lifetime and Degradation to view the results.
    The Device Lifetime and Degradation Results form appears, displaying the results in a table.
    You can click the column headers to sort the values in ascending or descending order.

Exporting the Lifetime and Degradation Results

Follow these steps to export the lifetime and degradation results of the devices:

  1. In the Device Lifetime and Degradation Results form, select the cells in the table that you want to export to the CSV file, and then click Export.
    The Save results in csv format form appears.
  2. In the Save mode field, select one of the following options:
    • selected: Exports data for the selected cells
    • all: Exports data for all the cells
  3. In the Save as field, type the name of the CSV file to which you want to export the result data.
  4. Click OK.

Displaying Device Characteristic Degradation Results

Follow these steps to view the characteristic degradation results of the devices:

  1. On the Results tab, right-click a result, and choose Reliability DataDevice Characteristic Degradation.
    The Reliability Analysis Results Display form appears.
  2. Click Display Device Characteristic Degradation (input.bt0) to view the results.
    The Device Characteristic Degradation Results form appears, displaying the results in a table.
    You can click the column headers to sort the values in ascending or descending order.

Exporting the Device Characteristic Degradation Results

Follow these steps to export the device characteristic degradation results:

  1. In the Device Characteristic Degradation Results form, select the cells in the table that you want to export to the CSV file, and then click Export.
    The Save results in csv format form appears.
  2. In the Save mode field, select one of the following options:
    • selected: Exports data for the selected cells
    • all: Exports data for all the cells
  3. In the Save as field, type the name of the CSV file to which you want to export the result data.
  4. Click OK.

Displaying Model Parameter Change Results

Follow these steps to view the model parameter change results:

  1. On the Results tab, right-click a result, and choose Reliability Data > Model Parameter Changes.
    The Reliability Analysis Results Display form appears.
  2. Click Display Model Parameter Changes (input.bm0) to view the results.
    The Model Parameter Change Results form appears, displaying the results in a table.
    You can click the column headers to sort the values in ascending or descending order.

Exporting the Model Parameter Change Results

Follow these steps to export the model parameter change results:

  1. In the Model Parameter Change Results form, select the cells in the table that you want to export to the CSV file, and then click Export.
    The Save results in csv format form appears.
  2. In the Save mode field, select one of the following options:
    • selected: Exports data for the selected cells
    • all: Exports data for all the cells
  3. In the Save as field, type the name of the CSV file to which you want to export the result data.
  4. Click OK.

Displaying Self-Heating Results

Follow these steps to view the self-heating results:

  1. On the Results tab, right-click a result, and choose Reliability Data > Self-Heating Results.
    The Reliability Analysis Results Display form appears.
  2. Click Display Self-heating (input.bh0) to view the results.
    The self-heating results are displayed in a new window.

Viewing Aged Netlist

To view the aged netlist for a test:

  1. In the Virtuoso ADE Assembler window on the Results tab, select the result of an aged test.
  2. Right-click the selected test and choose Reliability Data – Aged netlist.
    The Aged netlist is available only in RelXpert mode. You can switch to RelXpert mode by setting the following environment variable:
    envSetVal("maestro.gui" "showNativeRelxpertSwitch" 'boolean t)
    The aged netlist generated by the reliability simulator is displayed in a new window. A sample is shown below.

Viewing Output Logs for Reliability Simulations

Perform the following steps to view the output logs for a reliability simulation result:

  1. In the Results window, select the test for which you want to view the output log.
  2. Right-click the selected test and then choose Output Log.
    The output log is displayed in a new window.

Plotting Results

You can plot the fresh, stress, or aged results in the Virtuoso Visualization and Analysis XL window.

To plot the results:

Plotting Results Across Corners

You can plot the fresh and aged results across corners.

To plot results across corners:

When you plot the results of Reliability analysis across corners, age is plotted on the x-axis.

Printing or Plotting Stress Results for Gradual Aging Run

If you had chosen to save the results data for gradual aging, you can print or plot the stress results for every age point for which data was saved.

Printing Stress Results for an Age Point

To print stress results for an age point:

  1. On the Results tab, select the result of that age point.
  2. Right-click and choose Print Stress Results.
    A text file containing the stress results is displayed, as shown below.

The Print Stress Results command is available only for the aging points of the gradual aging run. It is not available for fresh and stress points or age point of non-gradual aging run.

Plotting Stress Results for an Age Point

To plot stress results for an age point:

  1. On the Results tab, select the result of that age point.
  2. Right-click and choose Plot Stress Results.
    The results are plotted in the Virtuoso Visualization and Analysis XL window, as shown below.

The Plot Stress Results command is available only for the aging points of the gradual aging run. It is not available for fresh and stress points or age point of non-gradual aging run.

Annotating Simulation Results to Schematic View

To annotate the device lifetime and degradation results to schematic view:

  1. In the Virtuoso ADE Assembler window, on the Results tab, select the required test.
  2. Right-click the selected test and choose Reliability Data – Results.
    The RelXpert Results Display form is displayed.
  3. Select the RelXpert modes for which you want to backannotate the results.
    Results are backannotated based on the specified threshold values. For example, if the Lifetime (year) (<=) field specifies a threshold value of 10, results are backannotated only to those instances whose lifetime is less than or equal to 10 years.
  4. Select the threshold rules based on which you want to backannotate the results. The threshold rules corresponding to the selected modes are displayed in the form. The fields containing the default threshold values for the selected rules become available.
  5. Click the Annotate button. The instances to which the results are backannotated are highlighted in yellow in the schematic.
In a hierarchical design, a block is highlighted if results are backannotated to an instance in that block. When you descend into the block, the instances to which the results are backannotated are also highlighted.

Performing Reliability Analysis for Monte Carlo Run Mode

You can perform reliability analysis in the Monte Carlo Sampling run mode using the Standard Monte Carlo method.

After running the simulation, use the Detail view on the Results tab to view the detailed results for the reliability analysis.

In this view, the Age column displays the source of simulation results. The possible values are:

Limitations

The following features are not supported with reliability analysis in a Monte Carlo simulation:

Viewing Reliability Report

Reliability report works with Spectre version 20.1 ISR10 or later. This feature is not supported for third-party simulators, RelXpert mode, and Reliability Analysis in Monte Carlo run mode.

Reliability report lets you view reliability analysis results in a tabular format. The tabular format makes it easy to view, sort, and filter reliability results data.

To view reliability report, do one of the following:

The following figure shows an example of how the reliability report shows the results of Model Parameter Change for the Reliability Setup, Reliability0.

By default, the drop-down list in the top-right corner in the Reliability Report view of the Results tab displays only the main types of reliability reports, such as Device Characteristic Degradation, Device Lifetime and Degradation, and Model Parameter Change.

However, a new category, Custom Filters, is added at the top of this drop-down list. All the custom filters are listed under this category.

You can also open an instance in the schematic directly from the reliability report by clicking the hyperlink of that instance in the instance column.

In case of post-layout simulations, reliability report also supports annotations for out-of-context devices, which means that when you click the hyperlinks of such instances in the reliability report, it will open these instances in the schematic.

By default, reliability report shows instance names in post-layout format.

However, you can set the environment variable maestro.results postLayoutToSchematicInRelReport to t to view instance names in schematic format in the reliability report.

You can also read the related blog at Virtuosity: Reliability Analysis Report-Reliable Results Made Interactive.

Related Topics

Customize Reliability Data Filters Form

Annotating Degradation Parameters on the Schematic

Customizing the Display of the Reliability Report

Applying Filters to Columns

Creating a Custom Reliability Data Filter

postLayoutToSchematicInRelReport

Annotating Degradation Parameters on the Schematic

To annotate a degradation parameter on the schematic:

Related Topics

Viewing Reliability Report

Customizing the Display of the Reliability Report

You can customize the display of the reliability report in the following ways:

Related Topics

Viewing Reliability Report

Creating a Data Filter to Hide Selected Columns

To create a data filter to hide the selected columns in the Reliability Report view:

  1. Right-click the header name of the column that you want to hide, and choose Hide Column.
  2. Repeat step 1 for other columns you want to hide.
    For example: cornerName, instance, d_Vthsat, d_Gm, and d_Gds.
  3. Type the name of the data filter in the Select a reliability data filter field.
    For example: hiddenColumnFilter.
  4. Right-click anywhere in the field, and click Save.
    The filter is saved with the specified name. When you apply this filter, the columns you selected to hide are not displayed in the Reliability Report view.

Applying Filters to Columns

You can apply filter criteria to column to selectively view the results that match the specified filter criteria.

To apply filter criteria to columns:

  1. Right-click anywhere in the Filter field below the column header to which you want to apply the filter, and select the filter options.
  2. Enter the filter criteria in the Filter field and click Enter to filter the reliability results in the reliability report.
    The following example shows how multiple column filters have been used to view the reliability results only for the cornerName ff and instance I12, where the Fresh_value is between 0.01 and 0.4.
  3. In the drop-down list for the custom filter selection, type a name with which you want to save the filter, and right-click the drop-down list and choose Save.
    The filters are saved in the .cadence/dfII/maestro/reliability-filters directory and are available for use when you reopen the cellview later. You can reapply a saved filter by selecting it from the list of custom filters. If not required, you can delete a saved filter by using the Delete command in the context-sensitive menu of the drop-down list.
    The saved filters are also available in the Customize Reliability Data Filters form, where you can modify them further.

You can use the drop-down lists below the headers of the cornerName, age, and modelType columns to filter values in these columns.

Filter Options

The following table describes various filter options that can be applied on the column headers of the reliability report to filter the results.

Filter Options Description

Find With

Lets you specify a word-based filter criterion.

All Of The Words

Displays the results that contain all of the words specified in the Filter field.

Any Of The Words

Displays the results that contain any of the words specified in the Filter field.

The Exact Phrase

Displays the results that contain the exact phrase specified in the Filter field.

None Of the Words

Displays the results that do not contain the words specified in the Filter field.

Match Word

Lets you specify a string-based filter criterion.

Substring

Displays the results that contain the words specified in the Filter field.

Prefix

Displays the results that start with the words specified in the Filter field.

Exactly

Displays the results that exactly match the words specified in the Filter field.

Suffix

Displays the results that end with the words specified in the Filter field.

Using Case

Lets you specify a case-based filter criterion.

Insensitive Match

Filters the results regardless of the case specified in the Filter field.

Sensitive Match

Filters the results matching the case specified in the Filter field.

Related Topics

Viewing Reliability Report

Creating a Custom Reliability Data Filter

You can create your own custom reliability data filters with different filter criteria and save these custom filters so that they can be reused for the same or different reliability analysis reports and reliability setups.

To create a custom reliability data filter:

  1. In the Reliability Report view of the Results tab, click the Edit or create custom reliability data filter command.
    The Customize Reliability Data Filters form opens.
  2. In the Filter Name field, enter the name of the custom reliability data filter that you want to create.
  3. In the Description field, add a description for the custom reliability data filter.
  4. From the Shows list, select the type of reliability report to which you want to apply the custom filter.
  5. From the Available Fields list, select a column name and then click the left arrow (<-) to add it to the Where field.
  6. In the Where field, you can build expressions to define filter criteria using SQLite operators.
    The following example shows a custom filter named my_Custom_Filter that filters the results of the Model Parameter Change report in which delta_value is greater than 4.645217e-9 for the instance /IL7/M0.
  7. Click Save on the Customize Reliability Data Filters form to save these settings in the custom filter.
    The custom filters are saved as XML files in the .cadence directory under the dfII/maestro/reliability-filters subdirectory. You can configure the Cadence Setup Search File mechanism (CSF) to specify additional locations from where filters can be read. This allows you to create a library of filters that can be shared amongst multiple users.
  8. Click OK to apply the custom filter to the reliability report.
  9. The results of the reliability report are filtered based on the applied custom filter.

Related Topics

Creating a Custom Reliability Data Filter

Custom Filter Syntax

Query Operators for Custom Filters

Viewing Reliability Report

Custom Filter Syntax

Related Topics

Creating a Custom Reliability Data Filter

Query Operators for Custom Filters

Viewing Reliability Report

Query Operators for Custom Filters

The custom filters support all SQLite operators. The following table lists some of the commonly used operators.

Operator Definition Example

=, ==, !=, <>

Equal, not equal

"delta_value" = 4.645217e-9

IS, IS NOT, NOT

Equality operators. Use this to query the Status column

"instance" IS NOT "/IL7/M0"

>, <, >=, <=

Greater than, less than, greater than or equal, less than or equal

"delta_value" > 4.645217e-9

BETWEEN

Between an inclusive range

"delta_value" BETWEEN 4.645217e-9 AND 5.963147e-9

IN

List of possible values

"modelType" IN ('pmos', 'nmos')

LIKE

Searches for a case insensitive pattern. % is used to define wildcards before and after the pattern.

"User Message" LIKE '%exceeds%'

GLOB,

MATCHES

Case sensitive string matching that uses * and ? wildcards

"User Message" GLOB '*g45?1svt*VGS*'

"User Message" MATCHES '*g45?1svt*VGS*'

CONTAINS

Shortcut for GLOB '*foo*'

"instance" CONTAINS 'M0'

STARTSWITH,

ENDSWITH

Shortcut for GLOB 'foo*',

GLOB '*foo'

"instance" STARTSWITH 'I18'

"instance" ENDSWITH 'NM0'

AND, OR

Combines multiple search expressions

"delta_value" > 4.645217e-9 AND "instance" IS "/IL7/M0"

Related Topics

Creating a Custom Reliability Data Filter

Custom Filter Syntax

Viewing Reliability Report

Customize Reliability Data Filters Form

Use the Customize Reliability Data Filters form to create or edit filter criteria to selectively view the reliability results data.

Field Description

Filter Name

Name of the custom reliability data filter.

Description

Description of the custom reliability data filter.

Shows

Type of reliability reports to be displayed:

  • Device Lifetime and Degradation
  • Device Characteristic Degradation
  • Model Parameter Changes
  • Self-Heating Results

Available Fields

The list of fields or columns available for the selected reliability report type. This list varies with the type of reliability report selected in the Shows list.

Where

Builds the expression to create the custom reliability data filter.

Related Topics

Creating a Custom Reliability Data Filter

Custom Filter Syntax

Query Operators for Custom Filters

Viewing Reliability Report


Return to top
 ⠀
X