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

5


xDSPF Generation using Quantus

This section contains information about Detailed Standard Parasitic Format (xDSPF) files and how to generate an xDSPF file in Voltus-Fi-XL.

Overview of Detailed Standard Parasitic Format file

A Detailed Standard Parasitic Format (xDSPF) file is a third-party netlist file that is used to provide all the parasitic information of the design for performing simulations using the Spectre APS/XPS simulators.

The xDSPF file is created using an extractor. This file is then used as the input for performing a simulation. The simulation database that is generated is used to perform EMIR analysis in Voltus-Fi-XL. However, if you are using Quantus for extraction, you can also generate the xDSPF file from within Voltus-Fi-XL.

To create an xDSPF file, you can use either the GUI or batch mode. In batch mode, run the extract_xdspf command to create the file.

Related Topics

Generating xDSPF File

You can generate an xDSPF file using Quantus in Voltus-Fi-XL. This file is then used as the input for performing a simulation, and the generated simulation database is used to perform EMIR analysis in Voltus-Fi-XL.

Before generating the xDSPF file, ensure the following:

To generate an xDSPF file, perform the following steps:

  1. Specifying Input Data Information
  2. Specifying Process Node-Specific Information
  3. Specifying Technology Data Information
  4. Specifying Output Information

Specifying Input Data Information

  1. Choose Extraction Extract DSPF.
    The Extract xDSPF form is displayed.

  2. Select one of the Data Type options: PVS/Pegasus, Calibre, or Assura.
  3. Specify the Data Directory.
  4. Specify the Run Name.
  5. Specify values for Lib Name, Cell Name, and View Name.
    These options are available only when Assura is selected as the data type.
  6. Specify the Post Processing Script.
  7. Specify the Load Sharing Facility (LSF) options for a distributed run.

Specifying Process Node-Specific Information

  1. Select a Process Node.
  2. Select Signal EM if you want signal nets to be included in the xDSPF file.
  3. Specify the power and ground nets in the PG Net(s) field.
    You can specify a value here only when the Signal EM option is deselected.
  4. Specify the Nets File.
    If the Nets File is specified, the Signal EM and PG Net(s) options are ignored.
  5. Select an Extraction Type.
  6. Select a coupling mode in the Cap Coupling Model field.
  7. Select the following check boxes, if required: Parasitic RES Color, Compression, Reduce I-Cards, Comment Sub Ckt, Sub Conductor Model, and Filter RES Center.
  8. Select Filter RES By Layer if you want to specify the LVS layer name for which the minimum resistance value for the extracted parasitic resistors is to be applied.
  9. Specify the reference node in the Ref Node field.
  10. Specify the subnode identification character in the Sub-Node Char field.
  11. Specify the Fracture Via Count.
  12. Select Via Array Spacing and specify a value that will be used as the maximum distance criteria for grouping vias within the same array.
  13. Specify the Via Array Count.

Specifying Technology Data Information

  1. Specify either a Technology Library File or a Technology Directory.
  2. Specify the Technology Name and Corner if the Technology Library File is specified.
  3. Specify the Temperature at which the extraction will be performed.
  4. Specify the No of CPUs to be used during the Quantus extraction run.
  5. Specify the SubCkt Pin Order File.
  6. Specify the Customized Extract Commands File that contains user-defined commands. When you select Add Extract Command, the Voltus-Fi-generated extract commands override the user-defined extract commands.
  7. Specify the Parasitic blocking device cells file.

Specifying Output Information

  1. Specify the Directory in which the xDSPF file will be saved.
  2. Specify the xDSPF File Name.
  3. Select Autorun Spfchecker to automatically run the SPF Checker utility after the extraction run. This check box is selected by default.

After you specify the required values in the Input, Process, Technology, and Output group boxes of the form, click one of the following options to complete the task.

Related Topics

Extract xDSPF Form Description

Field

Description

Input

Data Type

Lets you specify whether the input data will come from PVS/Pegasus, Calibre, or Assura. By default, PVS/Pegasus is selected.

Data Directory

Provides the path to the directory in which the input data is stored.

Run Name

Specifies the name of the PVS/Pegasus or Calibre run.

Lib Name

Specifies the name of the library that contains the layout cellviews. This option is available only when Assura is selected as the data type.

Cell Name

Specifies the name of the block or cellview that contains the layout cellviews. This option is available only when Assura is selected as the data type.

View Name

Specifies the name of the layout view. This option is available only when Assura is selected as the data type.

Post Processing Script

Specifies the name of the post-processing script file.

LSF Number

Specifies the number of jobs that is submitted to parallel systems in a distributed run. The specified number must be greater than 1.

LSF Command

Specifies the command to use in a distributed run under LSF. The command "string" defines job groups and available hosts among other things. You must ensure that the LSF options are valid. The specified "string" must be enclosed in quotation marks.

Example:

"bsub -K -W 24:00 -q lnx64 -o bsub.lsf -P
QUANTUS:1911:RD:TEST -R 'OSNAME==Linux && (OSREL==EE60||OSREL==EE70) && OSBIT==64'"

Hierarchical EMIR flow

Enables hierarchical EMIR analysis.

This field is specific to the hierarchical EMIR flow.

PGV Library Name

Specifies the block PGV library that is used for the block-level extraction performed for the hierarchical flow.

This field is specific to the hierarchical EMIR flow.

Process

Process Node

Lets you specify the process node. The following options are available:

  • N3: for N3 process nodes
  • N6/N5: for N6 and N5 process nodes
  • N7: for N7 process nodes
  • N10-PG: for N10 process nodes with PG rules
  • N10: for N10 process nodes
  • N16/N12: for N16 and N12 process nodes
  • N20: for N20 process nodes
  • N14: for N14 process nodes
  • Others > =28: for process nodes greater than N28

Signal EM

Indicates that signal nets should be included in the xDSPF file.

When Signal EM is selected, the following command is added to the Quantus command file or the common command language (CCL) file, to perform decoupled RC extraction (rc_decoupled)for all nets.

In rc_decoupled extraction, an RC network for the specified nets with both parasitic resistance and capacitance decoupled to ground is extracted.
extract \
-selection "all" \
-type "rc_decoupled"

When Signal EM is not selected, you need to provide the names of the power or ground nets on which rc_decoupled extraction will be performed. For all other nets, c_only_decoupled extraction is performed.

In c_only_decoupled extraction, only parasitic capacitance between the specified nets and adjacent nets decoupled to the specified cap ground is extracted.

For example, when the following command is specified, c_only_decoupled extraction is performed on all nets:

extract \
   -selection "all" \
   -type "c_only_decoupled"

When the following command is specified, rc_decoupled extraction is performed on nets specified in the vfiQrc_nets file. For all other nets, c_only_decoupled extraction is performed.

extract \
   -selection "nets_file ./vfiQrc_nets"
   -type "rc_decoupled"

PG Net(s)

Provides information about the power and ground nets that should be included in the xDSPF file.

This field is enabled only when the Signal EM check box is deselected. If the Signal EM check box is not selected and PG Nets are not specified, a pop-up window opens asking for the list of power and ground nets.

Nets File

Displays the names of the nets to be included in extraction.

When the Nets File option is checked, the Signal EM and PG Net(s) options are ignored.

Extraction Type

Specifies the extraction type.

  • RC: Specifies that both parasitic resistors and capacitors will be extracted.
  • R only: Specifies that only parasitic resistors will be extracted.

When Extraction Type selected is R only, the simulation time is short. While selecting the extraction type, consider the type of simulation being run. For example, to run a DC operating point (DCOP) simulation, select R only as the Extraction Type because the capacitance values are not required.

Cap Coupling Model

Specifies the coupling mode.

  • De-coupled: Specifies that decoupled capacitance extraction will be performed.
  • Coupled: Specifies that coupled capacitance extraction will be performed.

By default, De-coupled mode is selected.

While specifying the coupling mode, ensure that there is no extract command defined in the additional CCL file. The extract command in the additional CCL file will override the above options.

Parasitic RES Color

Enables color-aware EM analysis.

Compression

Generates xDSPF in a compressed format.

Reduce I-Cards

Enables the reduce_i_cards option in the CCL file that is used for generating the xDSPF file. If a net is “capacitance only”, it is qualified for reduced I card or instance card treatment. This means that when this option is selected, the instance cards and the corresponding dummy resistors are not printed in the results.

Comment Sub Ckt

Comments out the top sub circuit statements from the xDSPF file.

Sub Conductor Model

Provides information about the parasitic resistor models for the subconductor layers that should be included during extraction. This is used to support different EM rules for poly layers during EM analysis.

Filter RES Center

Includes sub-nodes after eliminating resistors with small resistance values. When this option is selected, the survivor sub-nodes, among a group of sub-nodes that are formed by the filtered resistors, are chosen based on their proximity to the geometric center of the group. This field is specific to process nodes 5nm and below.

Filter RES By Layer

Lets you specify the LVS layer name for which the minimum resistance value for the extracted parasitic resistors is to be applied. If the layer name is not specified, the default value, RH_TN_6 0, is used. This field is specific to process nodes 5nm and below.

Ref Node

Specifies the reference node on which the extraction is to be performed. By default, 0 is specified.

Sub-Node Char

Indicates the subnode identification character. By default, # is specified.

Fracture Via Count

Indicates the number that will be used to divide pseudo vias into segments during extraction.

Via Array Spacing

Indicates the distance that will be used as the maximum distance criteria for grouping vias within the same array. This means that if the distance between vias is less than the specified maximum distance, they are grouped within the same array. The default value of the via array spacing is 0.35 times the via size for N10, N16, N12, and N20 processes. For other processes, the default is auto, in which case Voltus-Fi sets the via spacing automatically.

auto

Indicates that Voltus-Fi sets the via spacing automatically.

Via Array Count

Indicates the number of vias per side allowed in an array (without the per via layer count option). The default value is 4. For example, if the via array count is set to 2, the number of vias allowed per array side will be 2.

Bounding box options

Sets the conductor bounding box and the via bounding box by layer.

Technology

Technology Library File

Displays the location of the technology file to be used for reading the technology data.

Technology Directory

Displays the name of the directory that contains the technology file.

Technology Name

Displays the name of the technology file to be used for extraction.

This field is optional if the technology directory has been specified.

Corner

Displays the name of the technology corner to be picked from the library.

Temperature

Indicates the temperature at which the extraction will be performed.

By default, a temperature of 25 degree Celsius is used. The temperature specified for extraction is optional. The options, temperature and temp_coeff, specified in the CCL file are mutually exclusive. The following scenarios hold true.

  • If you specify a temperature for extraction in the Extract xDSPF form or by using the -temperature parameter of the extract_xdspf command in batch mode, the following option in the CCL file will be set to false:
    -include_parasitic_res_temp_coeff "false" \
    The software displays the following message:
    User specified temperature will be used for extraction. The option include_parasitic_res_temp_coeff will be set as false.
  • If you do not specify a temperature for extraction, the following option in the CCL file will be set to true:
    -include_parasitic_res_temp_coeff "true" \
    The software displays the following message:
    No user specified temperature value so the option include_parasitic_res_temp_coeff will be set as true

No of CPUs

Displays the number of CPUs to be used during the Quantus extraction run.

SubCkt Pin Order File

Provides the order of pins to be used during extraction.

The pin order is specified in the xDSPF file using the .SUBCKT and .ENDS statements. You can use this option to provide a file with a different pin order that will override the order specified using the default .SUBCKT statement in the xDSPF file.

Below are examples of pin orders in the xDSPF file before and after specifying the pin order file.

Without the sub-circuit pin order file

    .SUBCKT top In_001 VDD Out_001  VSS In_002 Out_002 In_003 Out_004 ...
    .ENDS

With the sub-circuit pin order file

    .SUBCKT top VDD VSS In_001 Out_001 In_002 Out_002 In_003 Out_004 ...
    .ENDS

Customized Extract Commands File

Lets you specify the file with user-customized extract commands.

Add Extract Command

Indicates that Voltus-Fi adds the extract commands to the CCL file.

By default, when a customextract file is specified, all commands, including the extract commands, from that file are added to the Voltus-Fi-generated CCL file. However, when you select Add Extract Command, Voltus-Fi adds the extract commands to the CCL file, and all other commands specified in the customextract file are added to the CCL file.

Parasitic blocking device cells file

Lets you specify the file containing parasitic blocking device cell names, if any.

Once a cell is declared a blocking cell, all the parasitic RCs inside the cell are not extracted. If the cell content overlaps top cell routing, then, the top cell routing's RCs in the overlapping regions are also not extracted.

Output

Directory

Specifies the output directory in which the xDSPF file will be saved. If this file is not specified, a pop-up window opens asking for the name of the directory.

xDSPF File Name

Specifies the name of the xDSPF file that will be generated. If you do not specify the filename, Voltus-Fi generates a file with the name, <runName>.dspf, by default.

Autorun Spfchecker

Runs the SPF Checker utility after the extraction run. SPF Checker checks the syntax of the DSPF/SPEF followed by opening the output log. It also compares the terminal names in the DSPF and the device models and populates the summary section with the recommended mapping statements or the spf aliasterm statements.

Generate CCL

Creates the CCL or the Quantus command file that will be used to run Quantus.

Generate and Run

Creates the CCL file and runs Quantus to create the xDSPF file in a single step.

Run

Selects the CCL file to use for running Quantus.

Reset

Displays all the default values.

Cancel

Closes the form without executing the command.

Save

Saves the xDSPF file.

Load

Loads the configuration file.

Help

Opens help information in Cadence Help.

Related Topic

Customized Extract Commands File

The customized extract commands file is a file in which you can specify extract commands as per your requirements. When this file is specified, the Voltus-Fi-generated common command language (CCL) file will not have any extract commands, and the commands from the customized extract commands file will be added in the Voltus-Fi-generated CCL file.

A sample customized extract commands file is as follows:

extract \
   -selection "all" \
   -type "rc_coupled"
extract \
   -selection nets_file "file.txt" \
   -type "none"
You can create a customextract file by using either single or multiple extract settings. Ensure that the commands are in the Quantus CCL file syntax because this file is added as is in the Voltus-Fi-generated CCL file.

Related Topic

Voltus-Fi Quantus Log File

The Voltus-Fi Quantus log file (vfiQuantus-<cellname>.log) stores all the common command language (CCL) commands and the info, warning, and error messages issued by Voltus-Fi during the extraction run. This file is saved in the output directory that is specified in the Extract xDSPF form.

With every successive extraction run, the name of the log file is updated to vfiQuantus-<cellname>.log.(n-1). Here, n-1 is the run number. Therefore, the greater the numeric value in the filename, the more recent or latest that file is.

For example, after three extraction runs, the following log files are created:

Related Topic

Voltus-Fi Extract xDSPF GUI Last File

The Voltus-Fi Extract xDSPF GUI last file (.vfiExtractDSPFGuiLast) is created by Voltus-Fi to save the settings of the Extract xDSPF form of the previous session. This file gets loaded automatically when the next session starts. If you do not want to load these settings, remove this file before starting the session. This file is created along with cds.lib.

The values specified in the .cdsinit file override the values of the .vfiExtractDSPFGuiLast file of the previous session.

Related Topic

Missing Number of Vias in Third-Party DSPF Files

The DSPF files are created using the parasitic extraction tools, and the content and format of these files are heavily dependent on the extraction tool and the extraction runset.

In the EM analysis flow, after you calculate the current density of a presistor, you can compare it with the current density limits from the qrcTechFile, the ICT file, or the emDataFile that you have provided in order to locate violations. The current density limit is width-based for the metal or diffusion layers and area-based for via layers. The value of $L or $W is used to select the current density limit for metal layers, and the value of $A is used to select the current density limit for via layers. In case of a via array, the total area of the via specified in the DSPF file is divided by the value of $N, which is the number of vias, in order to obtain the area of a single via, and the current density related to that area is selected from the technology file to check the EM violations.

You can view two examples below, one of a Quantus-extracted DSPF file and the other of a third-party-extracted DSPF file.

Examples

Quantus-Extracted DSPF

Rk173 AVSS#200 AVSS#201 0.020247 $metal1_conn  $L=0.17 $W=0.54 $X=13.301 $Y=0.43
Rw174 AVSS#44 AVSS#45 0.250000 $Via1  $A=0.0098 $N=2 $X=18.545 $Y=16.18

Third-Party-Extracted DSPF

Rg1 XR1#PLUS A#2 1.209331 $metal1  $L=0.56205 $W=0.1071 $X=5.582 $Y=0.13
Ro31 net06 net06#7 12.500000 $VIA1  $A=0.003969 $X=23.085 $Y=0.135

Information about the number of vias ($N) is missing in the third-party-extracted DSPF file example. The EMIR analysis performed using such files leads to erroneous results because the correct EM rules are not picked from the ICT file or the emDataFile.

As in the case of the example shown above, the resistance value, area, and coordinates of the via resistor are given, but the number of vias or $N is not mentioned. Without this information, Voltus-Fi fails to calculate the area of a single via and check the current density limit related to that via area.

Solution

To resolve the problem of missing number of vias or $N information in a third-party DSPF file, use one of the following options in batch mode:

Voltus-Fi-XL calculates the number of vias (without $N) from the following:


Return to top
 ⠀
X