Creating calibrated compact models that perform accurately in circuit simulation comes with many challenges. The Ansys Lumerical CML Compiler™ software supports designers by providing auxiliary tools that easily compile model data into verified pre-built photonic models.
Choosing the suitable tool
There are two types of automated model data collection tools for CML Compiler, full data collection workflows and simple data collection wizards. While the best tool for you may depend on your specific use case, in general, if you have already simulated your photonic component, use data collection wizards. Otherwise, the full data collection workflows may be better suited for your goals.
The flowchart and table below summarize each tool, and subsections of this article gives further information for each tool.
Data collection workflows
Overview
The scripted automated data collection workflows make data collection easy and speed up your compact modeling process. Follow three easy steps to generate compact models:
- Update the template files with your data and run the automated workflow.
- Verify combined external and simulation data with diagnostics and visualization
- Import data directly to CML Compiler to generate compact model
The template includes:
Element configuration data: Settings that determine the look and feel of the compact model (element name, port names, visible parameters, etc).
External data: Files with data coming from external sources (e.g. measurements) in formats including comma-separated values (csv) and text files.
Simulation/process set-up: Simulation files and/or simulation set-up data (e.g. process file, gds) that are used in the automated workflow process.
Controls: Workflow settings, data combination options (when both external and simulation data are being used), plotting options, etc.
The workflow analyzes the input data and uses built-in methods to generate complete data for the CML Compiler model. This process includes running simulations, combining data sets and enforcing physical behaviour. It outputs the element data file for CML Compiler, as well as visualizations of the final data.
Available workflows
|
Note: The workflows are currently in a "Beta release" phase. You are welcome to reach out to us for:
|
S-parameter/passive workflow
- Processes noisy data for numerical stability in circuit simulation
- Enforces passivity and reciprocity
- Supplements experimental data with simulation data
- Automated simulation set-up by leveraging Layer Builder with process file + GDS file import
Waveguide workflow
- Generates parameterized straight, arc and s-bend waveguide and back-annotation waveguide data for CML Compiler in single workflow
- Automated simulation routine helps supplement sparse data sets
- Locks simulation data to experimental data
- Enforces self-consistency in noisy data sets
- Support statistical models (for parameterized waveguides only)
Electrical phase shifter workflow
- Packages your multi-physics data from different sources into a single data file for CML Compiler
- Optionally supplements measured data with simulation
- Automates the multiphysics simulation process using CHARGE and MODE solvers
- Supports statistical models
Thermal phase shifter workflow
- Packages your multi-physics data from different sources into a single data file for CML Compiler
- Optionally supplements measured data with simulation
- Automates the multiphysics simulation process using HEAT and MODE solvers
Workflow package
The workflow package consists of the following:
- src: Folder that contains all the necessary encrypted files to run the workflow.
-
templates: Folder contains example(s) for collecting the modeling data. Example folder(s) contains following:
- input_data: Folder that contains template input data to be updated.
- output_data: Folder that contains final data files for CML Compiler.
- working_dir: Folder that contains simulation project files and results.
- run_waveguide_collection.lsf: Configuration script to launch workflow.
Compact model library data folder
The data files generated by the automated workflows must be provided to CML Compiler to create the compact model library. For your convenience, here you can find an example foundry folder (see "workflow_library.zip" in "Associated Files", found in the upper right-hand corner of this page). Simply run CML Compiler to generate the compact model library.
For more information on running CML Compiler, please visit CML Compiler product reference manual. To get started with creating a custom library, visit the "My first INTERCONNECT CML (tutorial)" section.
Data collection wizards
Overview
The automated data collection wizards are Python-based GUI applications that takes completed simulation files as input and exports them either as files that CML Compiler can then compile, or as compiled INTERCONNECT models to be used directly.
In general, data collection wizards set many values of the underlying photonic model to their default values, extracting only the essential values from simulations. If you wish to fine-tune each model, you can adjust the generated JSON source file directly.
The general steps to use each wizard are as follows:
- Configure and run simulations as required by each data collection wizard.
- Launch data collection wizard and enter additional parameters.
- Run wizard to extract data and export compact model.
The wizards are compatible with the Lumerical bundled version of Python, and you can execute it either from command line or directly in the script editor inside Lumerical products. The Python path to the Lumerical Python API file must be specified in the configuration file, which is discussed below.
When executing from the command line, either ensure that you have installed numpy in your Python environment, or that you are running with Lumerical’s embedded Python environment by adding these directories to your PATH environment variable.
Windows
C:\\Program Files\\Lumerical\\[[verpath]]\\python\\
C:\\Program Files\\Ansys Inc\\[[verpath]]\\Lumerical\\python\\
Linux
Lumerical Installer (RedHat/Rocky Linux, SUSE Linux Enterprise Server, Ubuntu)
/opt/lumerical/[[verpath]]/python/
~/Ansys/ansys_inc/[[verpath]]/Lumerical/python/
Note: Running the wizards directly from the script editor consumes an extra GUI license for the script editor itself. Use the wizards from the command line when possible.
Configuration file
All wizards contain a JSON configuration file that specifies default parameters for various fields in the wizard, along with default values for the Lumerical Python API file specified by the lumapi_path variable and CML Compiler executable path specified by cmlc_path.
Note: Prior to using the wizards, you must ensure that the lumapi_path to point to the Lumerical Python API lumapi.py file for your operating system. The default installation of the file location is shown below.
Windows
C:\\Program Files\\Lumerical\\[[verpath]]\\api\\python\\lumapi.py
C:\\Program Files\\Ansys Inc\\[[verpath]]\\Lumerical\\api\\python\\lumapi.py
Linux
Lumerical Installer (RedHat/Rocky Linux, SUSE Linux Enterprise Server, Ubuntu)
/opt/lumerical/[[verpath]]/api/python/lumapi.py
~/Ansys/ansys_inc/[[verpath]]/Lumerical/api/python/lumapi.py
Available wizards
There are currently four data collection wizards available: