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

Command-Line Options for Spectre FX

The following table describes the command-line options that can be used for Spectre FX simulator:

Option Description

spectrefx

Enables the Spectre FX simulator.

-help

Lists the Spectre FX command options and their descriptions. You can use -h as an abbreviation of -help.

-V

Prints the Spectre version information.

-W

Prints the sub-version information.

+spectre

Ensures Spectre compatibility.

+spice

Ensures SPICE compatibility.

[+preset=mode]

Specifies the preset mode. Possible values are baseax, basemx, baselx, basevx, ax, mx, lx, and vx. The default mode is lx.

+optimize=value

Defines the parasitic optimization in Spectre FX. The most accurate parasitic optimization can be obtained using the value ax. The highest parasitic optimization can be obtained using the value vx. Possible values are ax, mx, lx, and vx.

+speed=value

Defines the simulation tolerance for voltage and current calculation. Possible values are ax, mx, lx, and vx. The default value is determined by the preset mode.

+multithread=N

+mt=N

Turns on the multithreading capability. N is the specified number of threads, up to a maximum of 64 threads. +mt can be used as an abbreviation of +multithread. By default, multithreading is disabled in Spectre FX.

You can use +mt as an abbreviation of +multithread.

This option also lets you run simulations in distributed mode with LSF.

Related topic: Multithreading in Spectre FX

+config file

Enables you to append all the Spectre FX commands defined in file to the netlist. file may contain one or more Spectre FX netlist lines. Multiple +config statements are supported on the same Spectre FX command line and are processed incrementally.

+pre_config file

Enables you to prepend all Spectre commands defined in file to the netlist. file may contain one or more Spectre netlist lines. Multiple +pre_config statements are supported on the same Spectre command line and are processed incrementally.

+echooptions

Dumps the options specified in the netlist and configuration files.

-format fmt

Generates the raw data in the specified format. Possible values are psfbin, psfascii, psfbinf, psfxl, sst2, and fsdb. You can use -f as an abbreviation of -format.

-outdir path

Changes the default location of the Spectre FX output files. However, this option neither changes the location of the raw directory if explicitly specified by using the -raw option, nor changes the location of the files that have slashes in their names. You can use -o as an abbreviation of -outdir.

+top value

When you specify +top with a subcircuit name, all elements, models, and so on, will be exposed to the top level and the subcircuit will not exist anymore. As a result, instantiation from this subcircuit will be illegal. Instances inside the subcircuit will automatically connect to the instance at the top level, if they connect to the same node.

-cmiversion

Prints CMI version information.

-cmiconfig file

Reads the specified file for information to modify the existing CMI configuration.

-dynchecks

Disables the dynamic checks capability.

-log

Displays the log information on the standard output (shell) only and does not copy it to a log file. You can use -l as an abbreviation of -log.

+log file

Displays the log information on the standard output (shell) and copies it to the specified log file. You can use +l as an abbreviation of +log.

=log file

Sends the log information to the specified file only and does not display it on the standard output (shell). You can use =l as an abbreviation of =log.

-raw raw

Saves the simulation results in the specified file or directory. If %C is specified in the file or directory name, it is replaced by circuit name. You can use -r as an abbreviation of -raw.

+savestate

Enables the savestate capability. You can use +ss as an abbreviation of +savestate.

-savestate

Disables the savestate capability. You can use -ss as an abbreviation of -savestate.

+recover[=filename]

+rec[=filename]

Restarts the simulation using a checkpoint or savestate file. If both checkpoint and savestate files exist and the file name is not specified, the savestate file is used. You can use +rec as an abbreviation of +recover.

-recover

Does not restart the simulation even if a checkpoint file exists. You can use -rec as an abbreviation of -recover.

-cols N

Sets the screen width based on the number of characters specified. This is needed only if the simulator cannot determine the screen width automatically or if the default value of 80 is not acceptable. You can use -c as an abbreviation of
-cols.

Spectre FX cannot determine the screen width if the output is redirected to a file or a pipe.

-colslog N

Sets the log file width based on the number of characters specified. The default log file width is 80 characters.

+error

Prints the error messages.

-error

Does not print the error messages.

+warn

Prints the warning messages on the screen.

-warn

Does not print the warning messages on the screen.

-maxwarns N

Specifies the maximum number of times a particular type of warning message will be issued per analysis. You can use
-maxw as an abbreviation of -maxwarns.

-maxnotes N

Specifies the maximum number of times a particular type of notice message will be issued per analysis. You can use
-maxn as an abbreviation of -maxnotes.

-maxwarnstolog N

Specifies the maximum number of times a particular type of warning message will be printed to the log file per analysis. You can use -maxwtl as an abbreviation of
-maxwarnstolog.

-maxnotestolog N

-maxnt N

Specifies the maximum number of times a particular type of notice message will be printed to the log file per analysis. You can use -maxntl as an abbreviation of -maxnotestolog.

+note

Prints the notice messages on the screen.

-note

Does not print the notice messages on the screen.

+info

Prints the informational messages.

-info

Does not print the informational messages.

+lqtimeout <value>

Specifies the duration (in seconds) for which Spectre FX should wait to retrieve a license. When set to 0, Spectre FX waits until the license is available. You can use +lqt as an abbreviation of +lqtimeout.

+lqsleep <value>

Specifies the wait duration between two attempts made by Spectre FX to check out a license when queuing. Setting the value to a positive number overrides the default wait duration of 30 seconds. You can use +lqs as an abbreviation of +lqsleep.

+lsuspend

Enables the license suspend/resume capability. When Spectre FX receives SIGTSTP, it checks in all the licenses before it gets suspended. The licenses are checked out again when SIGCONT is received. You can use +lsusp as an abbreviation of +lsuspend.

+liclog

Writes the license check-in and check-out information in the log file.

Related Topics

Multithreading in Spectre FX

Output Files of a Spectre FX Run

Managing Output Files Using Predefined Percentage Codes

Modes Compatible with Spectre FX

Spectre FX automatically sets spice or spectre compatible mode by detecting the input file format and prints an information message in the log file. However, you can add +spice or +spectre at the command line to ensure the compatible mode is used as you expect.

The following examples show the log file entries with different command-line options:

If you do not specify +spice or +spectre at the command line, Spectre FX checks the environment variable SPECTRE_COMPATIBLE_FX. If SPECTRE_COMPATIBLE_FX is set, Spectre FX enables Spectre compatible mode. This environment variable is ignored if you specify +spice or +spectre at the command line.


Return to top
 ⠀
X