2
Virtuoso Schematic Editor UltraSim Interface
This chapter describes how to use the Virtuoso® Schematic Editor UltraSim™ interface. The procedures described in this chapter are deliberately broad and generic. Requirements for your specific design might dictate procedures slightly different from those described here.
This product provides a solution for digital circuit designers to netlist a Virtuoso schematic editor transistor-level schematic for the Virtuoso UltraSim circuit simulator. It also provides a batch and scripting solution for automating various tasks. Some of the key features are listed below.
-
UltraSim Netlister
This solution provides an open simulation system (OSS) netlister for the Virtuoso UltraSim simulator from the Virtuoso schematic editor. The netlister works on devices withultrasimviews in the Cadencesamplelibrary. The netlister produces a hierarchical parameterized netlist in native circuit simulator syntax. The netlister supports global parameters and design variables and netlist processor (NLP) inheritance of parameters. All devices are netlisted using native circuit simulator syntax. For information on the Virtuoso UltraSim simulator, refer to the Virtuoso UltraSim Simulator User Guide. -
Updated Sample Library
Thesamplelibrary provided by Cadence for OSS netlisters has been enhanced for the Virtuoso UltraSim simulator. The devicesiprobe,phyres,phyresgnd,nmes, andpmeshave been added to the sample library to support additional circuit simulator models. In addition, most of the circuit simulator instance parameters have been added to the symbol cellview to aid in design creation. -
Improved Simulation Environment
The OSS simulation environment (SE) has been enhanced for the Virtuoso UltraSim simulator, which now appears on the menu bar. You can now directly edit netlisting and support files. You can enter model files and design variables through the graphical user interface (GUI). The combination of the netlist and support files is controlled by the environment. -
Access to Analog Waveform Display for Waveform Display
This solution provides access to the analog waveform display (AWD) tool from the analog design environment (ADE). The circuit simulator default format for writing data out is parameter storage format (PSF), which is read in by the AWD tool. The simulation environment provides access to this tool and the Results Browser and Waveform calculator. You can choose which signals you want to plot using the Results Browser. For more information about these tools, refer to the analog circuit design environment documentation. -
OCEAN Batch and Scripting Capabilities
The Virtuoso schematic editor UltraSim interface uses the OCEAN batch and scripting tool to control the simulator with scripts or interactive commands. It also gives you access to the AWD tool, which allows you to measure waveform data and print the measurements to the screen or a file. All of the standard measurement capabilities of a signal calculator are available from the OCEAN command prompt, as are any macros that you create. You can output data files with either thefprintforocnPrintcommands. For more information about OCEAN, refer to the OCEAN Reference.
Starting the Virtuoso Schematic Editor UltraSim Interface
To start the Virtuoso Schematic Editor UltraSim interface,
- Start the Cadence software.
- From the command interpreter window (CIW), do one of the following:
-
After setup, click OK.
The Virtuoso schematic editing window appears. -
Choose Launch – Simulation – UltraSim.
The UltraSim menu is added to the main menu bar.
If you have not accessed another design during this session or you have never created a circuit simulator run directory for this design, all but one of the commands in the UltraSim menu are grayed Initout. -
Choose UltraSim – Initialize.
The Initialize Environment form appears. -
In the Simulation Run Directory field, type the path to the directory where you want to place all of the simulation-related files.
By default, the files are placed inUltraSim.run1in your startup directory.
If the path defines a new directory, the Initialize Environment form expands. You can change the name of the run directory or specify a different design. The Browse button brings up the Library Browser, which automatically fills in the Library Name, Cell Name, and View Name fields when you select a new design. - Click OK.
Specifying Input for the Simulation
The Virtuoso schematic editor UltraSim interface offers you several ways to provide input to your simulation and to modify the input. Before simulation, you have the option of combining all of these files with the netlist file to create a run file.
After you set up your simulation options, you can specify all the input files for the simulation. The UltraSim – Stimulus menu lists each of these files. When you select these commands, a text editor window opens up displaying the file. If an empty text editor window appears, you need to create the file.
For more information about specifying inputs for simulation, see Chapter1, Virtuoso Schematic Editor Spectre Interface.
Specifying Input from a Stimulus File
To provide input from a stimulus file to your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Edit Stimulus File.
A text file opens in a text editor window, for exampleemacs. The file is saved asUltraSim.inpand is placed in the run directory. You do not have to add source statements if you have included sources in your designs. -
If you use the text file, connect the sources to the net names on the schematic.
Schematic names are mapped to lowercase. If you use circuit simulator syntax, you must use the lowercase form of net names you are connecting to. Connect to global nets such asgroundfrom the stimulus file. Global nets use a!at the end of the net name and that character must be escaped. In addition, any escaped characters entered in this file must be escaped twice (gnd\\!) because one escape is removed during the merging of netlist files. For more information, see Netlisting Overview.
\[ and \]. For example, a sweep function line must like this:sweep1 sweep param=slope values=\[0.5n 1.0n 1.5n\]
By default, the file should have UltraSim simulator syntax. If you use SPICE syntax, the line
simulator lang=spice
must precede the SPICE syntax.
Specifying Input from a Netlist File
To provide input from a netlist file to your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Edit Netlist File.
If you have already netlisted your design using this product, a text editor window opens to display the netlist file, which you can then modify. The netlist file produced in this way is located in the circuit simulator run directory you must create.
If the text editor window opens with an empty file, you have yet to netlist this design.
The file is called netlist and is located in the run directory. This is not the final netlist: it does not include any of the data from the other stimulus files. If netlisting has occurred, it will contain connectivity information for the associated schematic. If you modify this file, you might have to escape certain characters. Also, the next time you netlist this file, all modifications to this file will be lost.
Specifying Input from a Analyses/Options File
To specify circuit simulator analyses and output options for your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Edit Analyses/Options File.
A text file comes up in a text editor. The file starts with some suggested default values that you can use with most designs. You can keep these, delete them, or modify them. However, you must put at least one analysis statement into this file for a simulation to occur. This file is calledUltraSim.simand is placed in the run directory. This is the default sample file:// UltraSim Analyses and Output Options Statements // Output Options // simOptions options // + reltol = 1.00000000E-03 // + vabstol = 1.00000000E-06 // + iabstol = 1.00000000E-12 // + temp = 27 // + save = allpub // + currents = selected // Analyses // dc1 dc oppoint=logfile homotopy=all // tran1 tran stop=1 errpreset=moderate
\[ and \]. For example, a sweep function line must like this:sweep1 sweep param=slope values=\[0.5n 1.0n 1.5n\]
Specifying Input from a Model Include File
To provide input from a model include file to your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Model Include Files.
The Model Include Files form appears. -
Click Add File.
The File Name (Full Path) field is displayed. - Type the complete path to the model file.
- Repeat this process for each model file required.
The files that you specify in this form are placed in include statements in a file called UltraSim.include in the run directory.
Specifying Input from a Model Include Path
To provide input from a model include path to your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Model Include Paths.
The Model Include Paths form appears. - Enter the path to the files to be used for input into the simulation.
- Click the OK button.
Specifying Input from a Design Variable
To provide input from design variables to your simulation,
-
From the schematic editor window, choose UltraSim – Stimulus – Design Variables.
The Design Variables form appears. -
Click Add Variable.
A text field is added at the bottom of the form.
A file calledUltraSim.varis created in the run directory.
“Design variables” are global parameters that are used throughout your design. You must define all of the global parameters in this form. If you try to access these parameters in included data in SPICE format (.model), you need to limit your parameters to lowercase. Refer to Parameters for more information.
Specifying Input from a Configuration File
To provide input from a configuration file to your simulation,
The configuration file identifies the files the system uses to create the final run file for the simulation. The file, called control, starts with a default list of files from the run directory. You can add another file by copying the syntax shown and placing that file into the run directory for this design. You can also delete a file.
This is the default file content:
// Default UltraSim Simulation run title card.
[?netlist]
[?UltraSim.include]
[?UltraSim.inp]
[?UltraSim.sim]
// End of Netlist
The order listed in this file controls the order in which files are included in the final netlist.
Specifying Input from Other Files
To provide input to your simulation that is not covered by the other files provided,
This is a miscellaneous file. It can have any name, but if it is located outside of the run directory, you must provide the full path to its location.
Netlisting Your Design and Starting Simulations
To netlist your design and start simulations,
-
From the schematic editor window, choose UltraSim – Netlist/Simulate.
The Netlist and Simulate form appears.
The Simulation Run Directory field is not editable (displays the run directory you are working with).
To change to a different directory, - Verify that the Simulator Name cyclic field is set to UltraSim.
- Turn on the appropriate Run Actions buttons.
-
(Optional) Set the simulation job to run in the background or foreground of your machine or the remote machine you have selected. Select foreground by turning the Run In Background button off.
If you run the simulation job in background mode, you can use the Job Priority slider to control the job’s access to the processor. A job with a lower priority number gets run sooner. The system tells you when your simulation has finished by displaying a message box.
Showing Outputs
Once you have created a netlist or a run file, or run a simulation, the system produces the output files which are stored in the run directory.
For more information about specifying inputs for simulation, see Chapter1, Virtuoso Schematic Editor Spectre Interface.
Displaying Results
The Virtuoso schematic editor UltraSim interface includes a waveform display tool suite that includes a waveform window, a calculator, and a results browser. This is the same tool suite available in ADE.
The UltraSim – Waveform Tool menu varies according to the executable used to start the software. For more information on how to use these tools to select results and display them, refer to the
Checking Simulation Status
You can use the job monitor to track simulations, even if they are being run remotely. The job monitor identifies the location of the run directory; the day and time the simulation was started; on which computer the simulation is running; whether the simulation is running, has succeeded, or has failed; and what the simulation job priority is.
For more information about the job monitor commands, see Chapter1, Virtuoso Schematic Editor Spectre Interface.
Running a Simulation Remotely
To run simulations on a remote workstation, you must configure the remote host. For remote workstations made by different manufacturers, with different operating systems, additional steps are needed.
The Virtuoso schematic editor UltraSim interface can find and use all of the standard files in the local directory and run directory for each design, but special additions, such as include files, require that you provide a path to the location of the file. If you cannot specify a path from the target machine back to the source machine, you must copy the file to the target machine and specify a path local to that machine.
- Establish an account on the remote workstation.
-
From the schematic editing window, choose UltraSim – Options.
The Simulation Environment Options form appears. - Turn on Run Simulation Remotely.
- In the Simulation Host Name field, type the name of the remote workstation.
-
Turn on Simulation Host is Different Type if the remote workstation is not the same brand or operating system as the local computer.
You do not have to do this to simulate on another machine with a different version of the same operating system. -
If the remote workstation is a different type, create a
.rhostsfile in the remote workstation’s home directory and add this line to it:source_hostname user_name -
Test the remote connect by choosing any file on the local workstation and typing
rcp
Ifsome_fileremote_workstation:/tmprcpdoes not work, edit or disable your.loginfile and/or your shell file (such as.cshrc) on the remote workstation. Oncercpworks, remote simulation should work.-
If you get an error message similar to
account disabled
make sure you have an account on the remote workstation. If you have an active account, your password might have expired. -
If you get an error message similar to
login incorrect
make sure that you have the.rhostsfile in your account on the remote workstation and that it has the correct entry as described above.
-
If you get an error message similar to
Return to top