Product Documentation
Spectre FX Circuit Simulator User Guide
Product Version 23.1, September 2023


Contents

Preface

Licensing

Related Documents for Spectre FX

Typographic and Syntax Conventions

1

Introduction to the Spectre FX Circuit Simulator

Features of Spectre FX

Starting a Spectre FX Simulation Run

Command-Line Options for Spectre FX

Modes Compatible with Spectre FX

Multithreading in Spectre FX

Enabling Distributed Mode with Multithreading

Output Files of a Spectre FX Run

Using the Command-Line Option -outdir to Specify the Output Directory

Using the Command-Line Option -outname to Specify the Names of the Output Files

Managing Output Files Using Predefined Percentage Codes

Creating Filenames by Modifying Input Filenames
Predefined Percent Codes
Creating Filenames from Parts of Input Filenames

Reviewing the Log File

File Reading and Parsing Related Information
Options from the Configuration File and Netlist
Partition Information
Output and IC/Nodeset Related Information
Transient Simulation Information

2

Netlist Compatibility and Support

SPICE Control Statements Supported by Spectre FX

.alter
.connect
.data
.end
.endl
.ends or .eom
.global
.ic
.if and .else
.include
.lib
.malias
.model
.nodeset
.op
.options
.param
.pat
.subckt or .macro
.temp
.tran

SPICE Options Supported by Spectre FX

autostop
geoshrink
gmin
measdgt
parhier
scale
scalm
search
tnom

3

Circuit Components, Models, Stimuli, and Verilog-A Support

Support for Circuit Components and Device Models

Support for Digital Vector File

Spectre Syntax
SPICE Syntax
Arguments

Support for Verilog Value Change Dump Stimuli

Spectre Syntax
SPICE Syntax

Support for Verilog-A Models

Spectre Syntax
SPICE Syntax

4

Analyses Supported in Spectre FX

DC Analysis

Syntax for DC Analysis

AC Analysis

Syntax for AC Analysis
AC Analysis Parameters Supported by Spectre FX
Examples

Transient Analysis

Simulation Interval Parameters for tran
Initial Condition Parameters for tran
Convergence Parameter for tran
State-File Parameters for tran
Strobe Output Parameters for tran
Dynamic Parameters for tran

Monte Carlo Analysis

Monte Carlo Parameters Supported by Spectre FX
Monte Carlo Analysis Parameters
Saving Process Parameters
Saving Mismatch Parameters
Flags
Annotation Parameters
Specifying the First Iteration Number
Specifying Parameter Distributions Using Statistics Blocks
Multiple Statistics Blocks
Specifying Distributions
Distributed Monte Carlo Analysis

Reliability Analysis

Reliability Parameters Supported by Spectre FX
Reliability Models for Spectre FX
Reliability Feature Support Matrix for Spectre FX

5

Spectre FX Simulator Options

Specifying Command-Line Options for Spectre FX

Loading Spectre FX Options from a Configuration File

Specifying Spectre FX Options with the options or .option Argument

Setting the Spectre FX Options Locally

Setting Up Different Speeds for Specific Periods of Transient Simulations

Viewing the Options in Log Files

Spectre FX Options for the options or .option Argument

High-Level Accuracy/Performance Tuning Options
Solver Related Options
RC Tuning Options
Device Model Options
Parsing Options
Probing and Measurement Options
Backannotation Flow Options
Miscellaneous Options
cmi_mosfet
dotprobefmt
duplicate_subckt
duplicateports
duplicatemodel
duplicate_measure
duplicateinstance
duplicate_module
mt_format
mt_separate_sweep_files
output_case
print_section
probe_global_term
probe_level
redefinedparams
sfx_accelerate_model_eval
sfx_ba_bus_delimiter
sfx_ba_ccap_min
sfx_ba_ccap_net
sfx_ba_ccap_net_file
sfx_ba_dspf
sfx_ba_dspf_instance
sfx_ba_dspf_net
sfx_ba_finger_delimiter_string
sfx_ba_gcap_net
sfx_ba_gcap_net_cth
sfx_ba_gcap_net_file
sfx_ba_ground_dangling_ccap
sfx_ba_hier_delimiter
sfx_ba_instance_scale
sfx_ba_probe_node
sfx_ba_probe_node_name
sfx_ba_rc_net
sfx_ba_rc_net_file
sfx_ba_remove_prefix
sfx_ba_rep_pin
sfx_ba_rmin
sfx_ba_skip_net
sfx_ba_skip_net_file
sfx_ba_unrecognized_subckt_action
sfx_ba_use_pre_layout_model
sfx_ccap_cut
sfx_ccap_esv
sfx_compress_waveform
sfx_cshunt
sfx_cut_floating_gate
sfx_dump_floating_gate_node
sfx_fast_mosfet_cap
sfx_floating_gate_gshunt
sfx_floating_node_gshunt
sfx_integ_method
sfx_lprobe_format
sfx_maxstep_window
sfx_optimize
sfx_optimize_power
sfx_optimize_signal
sfx_oscillator_node
sfx_preset
sfx_progress_percentage
sfx_rcr
sfx_rmin
sfx_rmax
sfx_separate_current_waveform
sfx_speed
sfx_speed_signal
sfx_speed_power
sfx_speed_window
sfx_support_nqs
sfx_time_step_errtol_factor
sfx_unit_time
sfx_waveform_flush_percentage
sfx_waveform_flush_minute
skip
soft_bin

6

Probing and Measuring Statements

Defining the Level or Depth Rules for Probing

Defining the Measurement Output Format

Probing Signals in the Backannotation Flow

.probe or.print

Syntax
Description
Arguments
Examples

.lprobe or .lprint

Syntax
Description
Arguments
Examples

save

.measure

Syntax
Description

Functions Supported by .measure in Spectre FX

current and power
Average, RMS, Min, Max, Peak-to-Peak, and Integral
Find and When
Rise, Fall, and Delay
Parameter with Expressions

7

EMIR Analysis and Post-Layout Simulations

EMIR Analysis

Spectre FX EMIR Technology, Product, and Flow Overview

Getting Started with Spectre FX EMIR Analysis
Power Gate Support
Handling the Complexity of DSPF/SPEF files
Advanced Analyses

Spectre FX EMIR Analysis Using Voltus-XFi

Post-layout Simulation Methodologies

The Parasitic Backannotation Flow

Control Options for the Parasitic Backannotation Flow

Guidelines for Parasitic Backannotation Options

Probing Signals for the Parasitic Backannotation Flow

Parasitic Backannotation Report

Example 1: Multiple Small SPF/DPF files
Example 2: A 20GB DSPF File
Example 3: A Small DSPF File with Discarded Nets

8

Circuit Checks

Circuit Check Scoping

Output Format of Circuit Checks

Circuit Check Syntax

Dynamic Checks

Dynamic Active Node Check (dyn_actnode)
Dynamic Capacitor Voltage Check (dyn_capv)
Dynamic DC Leakage Current Path Check (dyn_dcpath)
Dynamic Delay Check (dyn_delay)
Dynamic Diode Voltage Check (dyn_diodev)
Dynamic Excessive Element Current Check (dyn_exi)
Dynamic Excessive Rise and Fall Time Check (dyn_exrf)
Dynamic Glitch Check (dyn_glitch)
Dynamic Float Crosstalk Check (dyn_floatxtalk)
Dynamic Floating Gate Induced Leakage Check (dyn_floatdcpath)
Dynamic High Impedance Node Check (dyn_highz)
Dynamic MOSFET Voltage Check (dyn_mosv)
Dynamic Node Capacitance Check (dyn_nodecap )
Dynamic Pulse Width Check (dyn_pulsewidth)
Dynamic Setup and Hold Check (dyn_setuphold)
Dynamic Subcircuit Port Power Check (dyn_subcktpwr)

Static Checks

Static Always Conducting NMOS/PMOS Check (static_nmosvgs/static_pmosvgs)
Static Capacitor Check (static_capacitor)
Static Capacitor Voltage Check (static_capv)
Static Coupling Impact Check (static_coupling)
Static DC Leakage Path Check (static_dcpath)
Static Diode Voltage Check (static_diodev)
Static ERC Check (static_erc)
Static High Impedance Node Check (static_highz)
Static Highfanout Check (static_highfanout)
Static MOSFET Voltage Check (static_mosv)
Static NMOS to VDD Count Check (static_nmos2vdd)
Static NMOS/PMOS Forward Bias Bulk Check (static_nmosb/static_pmosb)
Static PMOS to GND Count Check (static_pmos2gnd)
Static RC Delay Check (static_rcdelay)
Static Resistor Check (static_resistor)
Static Resistor Voltage Check (static_resv)
Static Subcircuit Port Voltage Check (static_subcktport)
Static Transmission Gate Check (static_tgate)
Static Voltage Domain Device Check (static_voltdomain)

Return to top
 ⠀
X