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

7


Verifying the Design Against the Specified Setup

When you manage a project, before proceeding with the sign-off for each block, you need to ensure that all the blocks successfully meet the specified setup requirements, which include variables, corners, and so on.

The Setup Library assistant helps you define a project-specific (master) setup for the design blocks in ADE Assembler and then reuse the specified setup to create or modify the current simulation setup in the Data View assistant. The setup in this assistant is generic and can be applied on any design. The Setup Library assistant can be accessed using ADE Assembler and ADE Verifier.

Following are the main tasks that you can perform using this assistant:

The scope and capabilities of this assistant are defined based on your work requirements and the platforms you are working on:

For more information on how this assistant works in Virtuoso ADE Assembler, see Working with the Setup Library.

Related Topics

Setup Library Assistant Workflow

Graphical User Interface of Setup Library Assistant

Coverage Calculation in Virtuoso ADE Verifier

Running Simulations with Verification Spaces

Updating Implementation Cellviews with Verification Spaces

Setting ADE Verifier Preferences for Coverage

Setup Library Assistant Workflow

The following figure illustrates how you can use the Setup Library assistant in ADE Assembler and ADE Verifier.

The following figure describes the analog design verification workflow in ADE Verifier:

Opening the Setup Library Assistant

You can open the Setup Library assistant using ADE Assembler and ADE Verifier.

To open Setup Library assistant using ADE Verifier, do one of the following:

Graphical User Interface of Setup Library Assistant

The Setup Library assistant includes a toolbar and an interface for defining and displaying the setup elements. The figure below explains the graphical user interface of this assistant:

Setup Library Assistant Toolbar

The following table describes the buttons and options available on the toolbar of the Setup Library assistant.

Command Description

Creates a new Setup Library cellview or opens an existing Setup Library cellview in the Setup Library assistant.

Saves the changes made to the setup elements in the same or a different Setup Library cellview. This drop-down list includes the following two options:

  • Save – Saves the changes in the same cellview.
  • Save A Copy – Saves the changes in another cellview. When you click this option, the Save As Setup Library CellView form appears in which you can specify the library, cell, and view name to save the setup.


Controls the editing of setup loaded in Setup Library assistant. When the setup is loaded, by default a lock symbol is displayed on this button to indicate that the mode is read-only. If you have the permissions, you can edit the setup. When you click the Toggle Edit Mode button, the lock symbol disappears and mode is changed to edit.

In addition, this lock also prevents you to make changes simultaneously when someone else is editing the Setup Library cellview. If the cellview is being edited by someone, a warning message is displayed to inform you that you cannot edit the setup in the cellview.

When you switch the Setup Library assistant from edit mode to read-only mode, a message appears that suggest you to save the updates made in the Setup Library.


Refreshes the setup with the latest changes. A warning icon on this button indicates that the setup has been modified. When you click the button, the setup is updated to show the latest changes.

Opens the Task Assistant that provides quick help about the Setup Library assistant.

Creating or Loading a Setup Library Cellview

To open a Setup Library cellview:

  1. Click the folder icon ( ) on the toolbar.
    The Select Setup Library CellView form appears.
  2. In the Library and Cell lists, select a library and a corresponding cell.
  3. In the View list, all the existing cellviews of type setupLib are displayed. By default, the view type is displayed as setupLib when you open the form.
    • To create a new cellview, specify a cell name for the Setup Library view.
    • To load an existing cellview, select the cellview name from the View list.
  4. Click OK.

The specified Setup Library cellview is created or loaded in the Setup Library assistant.

The new Setup Library cellview you create is saved and displayed in the View section of Library Manager. For example, if you create a new cellview SetupLib for library Two_Stage_Opamp and cell OpAmp_AC_top, this cellview is displayed in the Library Manager window.

Modification of the Setup Library Cellview

When a new Setup Library cellview is created, it does not include any setup elements. You need to edit the setup to add elements to that cellview. You might also want to modify an existing setup to add, delete, or modify elements.

Before you proceed with editing, ensure that the cellview is enabled for editing. The lock symbol on the Toggle Edit Mode button ( ) on the toolbar indicates that the cellview is read-only. Click this button to enable the edit mode.

By default, all the corners or variables in the Setup Library Assistant are considered enabled even if the set of variables or corners that are dragged into or imported in the Setup Library Assistant are disabled.

In all operations related to creating or editing setups, valid characters must be used to specify the name of the sweep, corner, or simulation setup. Invalid characters include the following:

space, *, =, <, >, ?, |, ', \, ", ~, (, ), /, and ; .

You can create a new project-specific setup, which includes sweep and corners, using ADE Assembler. For information about how to add new sweep and corner combinations in ADE Assembler, see Editing the Setup.

Once the setup is created and saved in a Setup Library cellview, you can open the cellview in ADE Verifier and calculate the coverage to check the completeness of the project setup requirements.

Related Topics

Adding New Sweep Setups

Adding New Corner Setups

Adding New Simulation Setups

Adding New Simulation Setups

Importing Sweeps and Corners in the Setup Library

Adding New Sweep Setups

To add a new sweep setup, do one of the following:

The sweep setup is added and displayed in the node hierarchy. The default sweep setup name is SweepSetup1. You can also rename it if required.

Ensure that the sweep setup name is a non-empty string which is not '.' or '..' and does not contain whitespaces or the characters: '~\\*/<>'?|\"()=;&$'."

After the sweeps are added in the Setup Library assistant, you can edit them by double-clicking the sweep name and sweep value.

To add a sweep variable in this sweep setup:

The specified variable is listed under SweepSetup1 in a new row.

To delete a sweep variable:

To delete the entire sweep setup:

Adding New Corner Setups

To add a new corner setup, do one of the following:

The corner setup is added and displayed in the hierarchy. The default corner setup name is CornerSetup1. You can also rename it if required.

Ensure that the corner setup name is a non-empty string which is not '.' or '..' and does not contain whitespaces or the characters: '~\\*/<>'?|\"()=;&$'."

After the corner is added in the Setup Library Assistant, you can do one of the following:

To add a corner variable in this corner setup:

The Add Variable form appears in which you can specify the corner variable name and value.

The specified variable is listed under CornerSetup1 in a new row.

To add a model file in this corner setup:

The Choose Model File window appears in which you can specify the model file name.

To delete a model file:

To delete a corner variable:

To delete the entire corner setup:

Adding New Simulation Setups

Currently, the Setup Library assistant supports only Monte Carlo simulation setups. You can add a Monte Carlo simulation setup only when the currently opened setup library view is editable.

To add a new simulation setup, do one of the following:

You can specify custom values for the variables in the simulation setup that will let you run a Monte Carlo simulation.

To specify values for the variables in the simulation setup:

  1. Double-click the Number of Points variable row and specify the number of points.
  2. From the Variation list, select the method. Possible values are All, Mismatch, and Process.
  3. From the Sampling Method list, select the mode. Possible values are Random, Latin Hypercube, and Low-Discrepancy Sequence.
  4. Double-click the Seed variable row and specify the seed value.
  5. Double-click the Netlist Options variable row and specify the netlisting option.
  6. From the Reliability Mode list, select the reliability mode. Possible values are Single stress (1+N) and Multi stress (N+N).

The specified variable values are listed in the Monte Carlo Setup1 group. You can double-click the displayed variable value to change it directly in the variable row.

You can add more simulation setups in your setup library view.

When you drag a Monte Carlo simulation setup from the Setup Library assistant to the Data View assistant in ADE Assembler, the run mode changes to Monte Carlo Sampling. Accordingly, the run options are displayed in the Monte Carlo form. The form shows the values that you have specified in Monte Carlo Setup1.

To delete a specific simulation setup from the Setup Library assistant:

To view all the variables in a simulation setup:

To hide all the variables in a simulation setup:

Adding New Reliability Setups

To add a new reliability setup, ensure that the setup library cellview is editable and do one of the following:

A new reliability setup is added and displayed in the Reliability Setups section. The default name of the new reliability setup is ReliabilitySetup1, which you can rename as required. The second reliability setup that you create, is by default named ReliabilitySetup2, and so on.

Ensure that the reliability setup name is a non-empty string, which is not '.' or '..' and does not contain whitespaces or these unsupported characters: '~\\*/<>'?|\"()=;&$'."

To add reliability options to a reliability setup, do one of the following:

To enable or disable a set of reliability options, do one of the following:

The Enable and Disable commands are available for multiple selection when the setup library cellview is editable.

To edit the reliability options in a reliability setup:

The Reliability Options form is displayed.

This form is the same as the Reliability Options form that is opened from the Data View in ADE Assembler. The form name is suffixed with the names of the reliability setup and reliability options in the following format.

Reliability Setup_name:ReliabilityOptions_name

All options in this form are set to the default values that are read from the spectre/.cdsenv file. You can modify the values, if required.

To view the reliability options in the read-only mode:

The Reliability Options form is displayed in view-only mode. The OK, Defaults, and Apply buttons are disabled. This means that even if you modify any values in the form, the settings are not saved in the reliability setup.

To delete a specific reliability setup from the Setup Library assistant:

To view all the reliability options in a reliability setup:

To hide all the reliability options in a reliability setup:

Importing Sweeps and Corners in the Setup Library

To import a sweep setup:

The Open File window appears in which you can specify the CSV or SDB file containing the sweep setup. If the imported file contains parametric sets, the row containing the parametric set details must contain the same number of fields as those of the variables.

Similarly, to import a corner setup:

The Open File window appears in which you can specify the CSV or SDB file containing the corner setup.

Additional Information

Exporting and Importing SDB Setups

You can export the sweep setups, corner setups, simulation setups, and verification spaces from an open setup library view to an SDB file, which is also saved within the same setup library cellview. Similarly, you can import the sweep setups, corner setups, simulation setups, and verification spaces from an SDB file to an open setup library view.

To export all the setups:

  1. In the Setup Library assistant toolbar, click Export setups to SDB file.
    The Specify a File dialog appears.
  2. Specify the .sdb file to which the setups must be exported.
  3. Click Save.

All setups from the setup library cellview are exported to the specified SDB file.

To import setups:

  1. In the Setup Library assistant toolbar, click Import setups from SDB file.
    The Import from SDB File form appears.
  2. Specify a .sdb file from which the setups must be imported.
  3. Click Merge to merge the new and modified settings from the SDB file into the Setup Library. In this case, no visual indicators are displayed.
  4. Click Compare & Update to open the Compare and Update Settings form. This form displays a comparison of the Setup Library and the SDB file settings where differences are color-coded and appropriate tooltips are displayed.
  5. Do one of the following:
    • Click Update to make the following changes:
      • The settings highlighted in purple are added to the Setup Library.
      • The settings highlighted in green are removed from the Setup Library.
      • The settings highlighted in pink are updated or modified in the Setup Library.
    • Click Done to close the Compare and Update Settings form.

The Setup Library is updated with the setups imported from the specified SDB file.

Deleting a Setup Library Cellview

To delete a Setup Library cellview:

  1. Open the Library Manager window.
  2. In the Library and Cell drop-down lists, select the required library and a corresponding cell.
  3. In the View drop-down list, choose the required cellview of type setupLib that you want to delete.
  4. Do one of the following:
    • Choose EditDelete.
    • Right-click the required cellview in the View pane and select Delete.

The specified Setup Library cellview is deleted from the Library Manager.

If you open a setupLib cellview using the Setup Library Assistant, which has been deleted from the Library Manager, the default home screen is displayed in the Setup Library Assistant. To set up the association between the setupLib and Setup Library Assistant, you need to load the setupLib cellview again.

Adding or Deleting Verification Spaces

A verification space is a combination of sweeps, corner values, and simulation setups that you specify in the Setup Library assistant. You can assign these verification spaces to different design blocks and use them to calculate the coverage.

To create verification spaces, do one of the following:

To add a new verification space,

  1. Click Create New Space ( ).
    A new space row is added and named as Space1. You can double-click the space name and rename it if you want.
  2. Select the following, as required:
    • a corner setup from the Corners list
    • a sweep setup from the Sweeps list
    • a Monte Carlo simulation setup from the Simulation Setups list
    • a reliability setup from the Reliability Setup list
    The selected corner, simulation setup, sweep combinations, and reliability setup are added to the selected space and displayed in the Verification Spaces tree, as shown in the figure below:

Similarly, you can create more verification spaces and they are by default named as Space2, Space3, and so on.

To delete a verification space:

Alternatively, you can open the Verification Space Builder form by clicking the Click to add Verification Space text displayed under the Verification Spaces node. You can select a space row and click Delete.

In an existing setup, you might want to modify or rename the verification space. If you rename a verification space in the Setup Library Assistant, and this verification space is being used in ADE Verifier, the previous space name is displayed as struck out in ADE Verifier.

For example, you might rename Space1 to Space2 in Setup Library Assistant, and ADE Verifier contains a requirement assigned to Space1. ADE Verifier synchronizes with the changes in the Setup Library by displaying Space1 with a strike through in the cellview.

Parametric Sets in Setup Library Assistant

You can create parametric sets in the Setup Library Assistant when you need to run simulations for a specific set of sweep combinations for different parameters. These combinations are created by picking values from the same ordinal position of all variables or parameters in that parametric set. This reduces the number of design points, and therefore, reduces the number of simulations.

To know more on creating and removing parametric sets, see Working with Parametric Sets and Reusing the Setup from Data View and Setup Library Assistant.

Adding or Removing a Verification Space for Each Block

In ADE Verifier, first you need to add implementations in the Setup tab. For information about how to add implementations, see Implementations and Mappings in Virtuoso ADE Verifier.

Once the implementations are loaded, select the histories. You can add or modify the requirements if you want. Now, you can add verification spaces to each requirement.

To add verification spaces for one or more requirements:

  1. Ensure that the verification spaces are already created in the Setup Library assistant. For more information, see Adding or Deleting Verification Spaces.
  2. Right-click a requirement row in the Setup tab and choose Assign Space to RequirementsVerificationSpace.
    To specify a verification space for multiple requirements, select the requirements using the Ctrl key and choose Assign Space to RequirementsVerificationSpace.
    Assign Space to Requirements is disabled when:
    • The requirement is read-only or referenced
    • The requirement is of type Note, ExtRef, or its domain is NON-ANALOG
    • The setup library view is not defined

    ADE Verifier returns an error if you try to assign the verification space using SKILL functions.
    You can also assign a verification spaces to a statistical output from an implementation that uses a Monte Carlo simulation setup.
  3. In the Verification Space column, select a verification space from the drop-down list against each value where the specifications are applied.

To remove the verification spaces from one or more requirements:

Running Simulations with Verification Spaces

You can run simulations in ADE Verifier considering the sweeps and corners defined in the verification space, which saves time and ensures 100% coverage of the analog design.

To run such a simulation:

  1. On the Simulation toolbar, from the Run Mode list, choose Local with SPACE. To run multiple simulations in batch mode, choose Batch with SPACE.
  2. Click the Run Simulation button on the Verifier toolbar.
    The simulation for the selected implementation is run using the sweeps and corners specified in the verification space. The results are updated in the Results tab in ADE Verifier.

Additional Information

Updating Implementation Cellviews with Verification Spaces

After running a simulation in ADE Verifier, you can perform the following steps to directly update the current implementation cellview with a verification space:

  1. On the Run tab, right-click any Implementation row and choose Show Details.
  2. In the expanded implementation view, right-click a row and choose Push Assigned Space in Implementation CellviewCorner/Sweep/Simulation Setup/All.
    • Select Corner to update only the corner setup.
    • Select Sweep to update only the sweep setup.
    • Select Simulation Setup to update only the simulation setup.
    • Select All to update sweep, corner, and simulation setups.

    A message box appears confirming the action. When you click Yes, the ADE Assembler cellview is updated with the specified corner, sweep, and simulation setup from the verification space. The Data View assistant highlights the updated corner, sweep, and simulation setup in green, indicating that these are referenced.

The Verification Space column on the Run tab displays the verification space specified for the implementation. This column is read-only. You can edit the verification space in the Setup tab.

In addition, the summary of changes made to the sweep and corner setup for the selected cellview is also displayed in CIW.

Additional Information

Coverage Calculation in Virtuoso ADE Verifier

In ADE Verifier, you can load the history results, create verification spaces, and verify whether all the setup specifications have been met by calculating the coverage, and generate the coverage report in the Result tab of ADE Verifier.

The coverage measures the completeness of the verification setup, which means it identifies if all the project-specific setup requirements defined in the Setup Library cellview have been covered in the simulation results for each block.

The simulation results can include the pass and fail percentage of all the points that have been simulated during the simulation runs. When the coverage is generated in ADE Verifier, it calculates the percentage of points that are not simulated.

For example, if the specifications include 250 corners and only 100 of them are simulated, you get the coverage of 40% on the given design. This indicates that 60% of the corners have not been run, regardless of the number of outputs passing the specifications.

The coverage can be calculated as follows:

These coverage results are saved in and then loaded from the cellview_dir/results/coverages.json file.

You can also view the Overall Coverage in a progress bar on the Setup tab. The following illustration shows the number of requirements that have been successfully covered in the verification:

You can manually sign off failed requirements to increase the coverage of your verification project. However, failed requirements that are mapped to implementations with uncovered points are not included in the coverage calculation. For details, see Requirements Signoff in Virtuoso ADE Verifier.

To know more about Overall Coverage, see Overall Progress, Coverage, and Overall Coverage.

Calculating the Coverage Percentage

After the verification space is specified for each block requirement, you can generate the coverage report in the Result tab. To do this:

The coverage report is displayed in the Results tab. For example, the following figure shows the coverage report for the specified opamp requirement.

In this report, the bar on the top shows the overall coverage, which indicates that 33% of the points have passed the specifications, 18% failed, and the remaining 50% of the points have not run. This coverage information about pass, failed, and uncovered points are also displayed in a tooltip when you place the mouse pointer on the coverage bar.

In the figure above, the requirement swing of test TRAN covered only 50% of the simulation points and 50% of the points have not been covered in the simulation run. However, the requirement settlingTime covers 10% of passed points, 40% of failed points, and 50% of uncovered points. The coverage details are displayed in the Coverage Summary assistant. For more information, see Viewing the Coverage Summary.

The individual coverage report for the requirement is displayed in the Coverage column in the following colored bars:

Indicates the pass percentage

Indicates the fail percentage

Indicates the percentage of points that are not covered in the simulation run.

If the coverage report is not 100%, indicating that it includes the uncovered points, recreate the ADE assembler setup using the project-specific setup from Setup Library assistant and then rerun the simulation. You can also run the simulations in ADE Verifier for the project-specific setup. For more information, see Running Simulations with Verification Spaces.

Calculation of Coverage Percentage for Statistical Outputs

The statistical outputs from a Monte Carlo simulation in an implementation can be mapped to requirements. This allows a comprehensive and accurate calculation of coverage for the implementation.

The following figure shows a setup with the nominal and statistical output of Current mapped to requirements.

When the same verification space is specified for the requirements mapped to all outputs, the coverage of statistical outputs is the same as the coverage of the nominal outputs. This means that if the coverage for Current(Nominal) is 50% and the same verification space has been set for requirements mapped to the Current outputs, then all statistical outputs for Current, such as Current::StandardDeviation or Current::Yield in the implementation also report 50% coverage. The calculation of the coverage percentage for nominal outputs is based on the corner, sweep, or simulation setups specified in the Setup Library assistant and is applied to the related statistical outputs. Therefore, if the requirement Current is reported as 20% pass, 30% fail and 50% uncovered, the requirement Current::StandardDeviation will be 50%, where pass and fail statuses depend on the specification for the requirement, and 50% uncovered. If your setup does not have nominal outputs, the Overall Coverage is based on the individual coverage of the statistical outputs.

The following figure shows a setup where the nominal output Current is not mapped to a requirement and therefore, not included in the results, but the coverage has been calculated for the statistical outputs.

The Coverage column shows the color of the coverage percentage of requirements mapped to statistical outputs based on the Overall Status, where the passed requirements are shown in green and failed requirements are displayed in red. The overall status for the same kind of requirements is set after comparing its specifications with the simulation results of its statistical outputs.

Viewing the Coverage Summary

To view the coverage summary report to identify the setup values that have not been run for a particular block, choose one of these:

When the Coverage Summary assistant is open, you can select the requirements on the Results tab and the coverage summary is updated in the assistant.

The coverage summary helps you compare the setup that is run at the block-level with the setup specified in the Setup Library assistant and ensure that all the specified values are run.

Exporting the Coverage Report

To export the coverage report in an Excel sheet or a CSV file,

Once the report is exported, you can add it in the Documents section of the Setup Library assistant.

To add documents to the Setup Library cellview:

The Choose document to be added form appears in which you can browse and select a document you want to add.

Once the CSV file is added in the Documents section, right-click the filename and choose one of the following options:

Setting ADE Verifier Preferences for Coverage

To set the preferences to calculate and display the coverage:

The Preferences form appears.

In this form, in the Coverage section,


Return to top
 ⠀
X