Key Features for OptiSPICE 5.2 (download)
OptiSPICE 5.2 includes several enhancements including new models and devices, improvements to the simulator performance and post processing features and a major documentation update. Key new features include:
NEW addition of linear network element (LNET) and optical S parameters (OPTAMPM) models to the Electrical and Optical libraries, respectively. These new models will provide users with greater flexibility to build scattering matrix models (compact models) for electrical and optical devices (such as filters and amplifiers).
NEW addition of several devices linked to the LNET and OPTAMPM models; including a universal 2 port network element, an electrical filter element, and OptiBPM and Optical S parameters multi-port elements
NEW enhancements to our Multilayer Filter and Transmission Line models to allow for the design and characterization of Si (Carrier depletion) and LiNbO3 (Pockels effect) travelling wave (TW) modulators.
NEW data post-processing feature based on the powerful Python scripting language (users will now be able to perform customized data post-processing on simulation results obtained from any number of probes and to organize and display results through Python-enabled 2D and 3D graphing utilities).
NEW support for the Intel® Math Kernel Library (MKL) sparse matrix solver to allow for multi-processor support
NEW addition of an apodization function to the Multilayer Filter model
NEW addition of a post-simulation filtering function to the OptiSPICE Waveform Viewer
NEW updates to the OptiSPICE documentation suite (including a new OptiSPICE Getting Started guide and a fully revised OptiSPICE Tutorials suite).
New devices and models
Linear Network Element Model: Network 2-port, Electrical Filter
A new linear network element (LNET) model has been added to the Electrical library. This flexible electrical model supports multiple formats to define customized filtering functions (pole-residue, zero-pole, transfer function, Touchstone and basic filters – Butterworth, Bessel, and Chebyshev).
Two new devices linked to the LNET model have been added to the Electrical library: a universal 2 port network element (Network 2-port) and an electrical filter element (Electrical Filter).
For further information please see the technical background for Linear Network Element Model in the OptiSPICE Model Library.
Several example circuits demonstrating the capabilities of these two new devices can also be found in OptiSPICE 5.2 samples\Circuit examples\Electrical circuits\Linear Network Element
Fig 1: Electrical Filter Device – In this example the Electrical Filter is configured as a first order low pass filter (Bessel filter shape) with a BW cutoff of 1.5 GHz. The white and turquoise lines represent the filter input and output, respectively.
Fig 2: Network 2 Port Device – In this example the Network 2 Port device is configured based on the pole-residue format (read in via a data input file). This device also supports zero-pole, transfer function and Touchstone formats. The turquoise and white lines represent the filter input and output, respectively
OPTAMPM Model: OptiBPM – 2 Port, OptiBPM – 4 Port, Optical SParam – 2 Port, Optical SParam – 3 Port (Cpl), Optical SParam – 3 Port (Spl), Optical SParam – 4 Port
A new optical S parameters (OPTAMPM) model has been added to the Optical library. Users can now import S parameters data from lab measurements and other simulation platforms (OptiBPM, etc.). It supports input files based on the Touchstone or OptiSystem OptiBPM scattering data file formats and can be used to model any arbitrary device with n inputs and m output ports.
Several new devices linked to the OPTAMPM model have been added to the Optical library. These include 2 port and 4 port devices for modeling imported scattering data from OptiBPM simulations (OptiBPM – 2 Port and OptiBPM – 4 Port) and multi-port Optical S Parameters devices for modeling imported scattering data from external measurements and/or simulations (Optical SParam – 2 Port, Optical SParam – 3 Port (Cpl), Optical SParam – 3 Port (Spl) and Optical SParam – 4 Port).
Fig 3: OptiBPM S-Parameters device – In this example scattering data information was imported from an OptiBPM simulation of a 5 port star coupler (1 input; 4 outputs). The 2D graph shows the output power as a function of wavelength for all four output ports.
For further information on this new optical model, please see the technical background for the OptAmpM Model in the OptiSPICE Model Library
Example circuits demonstrating the capabilities of the new optical S parameters feature can also be found in OptiSPICE 5.2 samples\Device examples\Optical\Optical S Parameters (OptAmp).
Fig 4: Optical SParam 4 Port – In this example the Optical SParam – 4 Port device is used to model the cross couplers of the upper and lower arms of a ring resonator. The scattering data for the Optical Sparam coupler is obtained from a Touchstone file and has been setup with a varying coupling coefficient as a function of wavelength. The wavelength sweep results show the resonance points for a ring resonator configured with a standard X Coupler (fixed coupling coefficient – red line) and a ring resonator configured with the new S Parameters device (varying coupling coefficient – black line). As expected, the resonator Q factor varies with wavelength for the black curve due to the changing coupling coefficient.
Si (Carrier depletion) and LiNbO3 (Pockels effect) travelling wave (TW) modulator devices
We have enhanced our Multilayer Filter and Transmission Line models to allow for the design and characterization of Si (Carrier depletion) and LiNbO3 (Pockels effect) travelling wave (TW) modulators. These new devices have been designed as ready-to-use sub-circuits and can be found in the Optoelectronic library (TW Modulator – Si and TW Modulator – LiNbO3).
Example circuits have also been included in this release and are located in OptiSPICE 5.2 samples\Circuit examples\Optoelectronic circuits\External modulators (under folders “TW MZM LiNb03” & “TW MZM Si Carrier Depletion”)
Fig 5: TW Modulator – Si – This example demonstrates a travelling wave implementation of a Si MZ modulator (depletion mode). The transmission line is divided into 100 sections. Each section is linked to one layer in the MultiLayer filter model (100 layers). The voltage input and output waveforms are shown on the top graph (output is turquoise line) and the optical signal output on the lower graph
Other product enhancements
Python Post Processing
We have introduced a new data post-processing feature based on the powerful Python scripting language. Users will be able to perform customized data post-processing on simulation results obtained from any number of probes and to organize and display results through Python-enabled 2D and 3D graphing utilities.
To setup and learn about this new anchor feature for OptiSPICE 5.2 please see the OptiSPICE Python Post Processing user guide under Help/Help Docs.
We have also included several template designs that include ready-to-use Python script files (see OptiSPICE 5.2 Samples\Python script examples and OptiSPICE 5.2 Samples\Tutorials\Advanced\Python Post Processing).
Fig 6: Python Post Processing 1 – After completing a simulation, users will now be able to optionally call a user-defined Python script that will access any active data ports, manipulate the data and create a variety of 2D and 3D views. This example shows eye diagram results for a time-domain simulation after being post-processed by a Python script and displayed using Python 2D graphing tools
Fig 7: Python Post Processing 2 – Python post processing utilities include the ability to access signal data in multiple formats, perform operations such as FFTs, and display data using customized plot designs. In this example a filtering operation is performed (via a ring resonator) on two modulated wavelength channels. Results in the Python graph display include both time domain and frequency domain data.
Apodization function for Multilayer Filter models
We have added a new apodization function to the Multilayer Filter model. Users will now be able apply apodization profiles (Gaussian, Cosine) to periodic structures such as Bragg gratings. For further information please see the OptiSPICE Model Library (MULTILAYERFILTER (WAVEGUIDE) Model)
Fig 8: Apodization – Example of Gaussian apodization profile (turquoise line) being applied to a high-low index Bragg filter with 3000 layers.
Intel® Math Kernel Library (MKL) sparse matrix solver
We have introduced support for the Intel® Math Kernel Library (MKL) sparse matrix solver to allow for multi-processor support. This optional feature can provide up to 2-3 times speed improvement compared to the UMFPACK sparse matrix solver.
OptiSPICE Waveform Viewer Results Filtering
We have added a new post-simulation filtering function to the OptiSPICE Waveform Viewer. This new feature will allow users to quickly search for specific probe data or data types. For further information on how to apply filtering to your simulation results please see the OptiSPICE Waveform Viewer user guide.
Fig 9: Filtering of Waveform Viewer results – In this example the output data is filtered to only show voltage probes by directly entering “voltage” in the Search box. Similarly, probe data for only “electrical”, “optical” and “current” can be displayed. Also by typing in the exact name of a probe only data associated with this probe will be displayed (for example “ic_x2” will only display ic_x2.q1 and ic_x2.q2). Please see the OptiSPICE Waveform Viewer user guide for further details on how to apply filtering to your simulation results.
Documentation and samples updates
We have completed a significant update of the OptiSPICE documentation suite. Changes include the following:
IMPROVED OptiSPICE Element and Model Library has been split into two separate documents: OptiSPICE Element Library and OptiSPICE Model Library
IMPROVED OptiSPICE Getting Started guide has been completely revised to help new users quickly learn how to setup, run and analyze circuit designs in OptiSPICE. We have also added a new User Tips section which provides guidance on dealing with common issues that may occur when designing and simulating circuits in OptiSPICE.
IMPROVED OptiSPICE Tutorials guide has been completed revised. New dedicated tutorials have been created to provide users with a step by step approach to learning about the core and advanced features included with OptiSPICE. These include OptiSPICE Tutorials – Basic, OptiSPICE Tutorials – Advanced, OptiSPICE Tutorials – Electrical Circuits
To help users to take advantage of the extensive features available from the Python scripting language we have introduced a new guide dedicated to the Python Post Processing feature (OptiSPICE Python Post Processing)
We have also re-organized the samples folder as follows:
New folders have been created to better match documentation with the source files, specifically new folders have been added to link examples from the OptiSPICE Getting Started guide (OptiSPICE 5.2 samples\Getting started), OptiSPICE Tutorials – Basic (OptiSPICE 5.2 samples\Tutorials\Basic), OptiSPICE Tutorials – Advanced (OptiSPICE 5.2 samples\Tutorials\Advanced) and OptiSPICE Python Post Processing (OptiSPICE 5.2 samples\Python script examples)
The Circuit examples and Device examples folders have been re-organized to allow users to more quickly find reference designs when starting a new project. The Circuit examples folder now contains dedicated folders for Electrical circuits, Optical circuits and Optoelectronic circuits.