This is an advanced photonic model that is based on the compound element. It allows users to use the elements in their compact model library and create a custom more advanced compound element and add it to the same library. Building blocks of such compound element can be taken either from the compact model library under generation or the INTERCONNECT primitive library. This photonic model, offers two options to the user to specify the compound element details, “script” or “file”.
In the “script” option, the user can specify all the details of the compound element, including the building block elements, connections, parameters, etc. in the parameter script file (visit Compound Ring Modulator (Statistical) for more details). The model sets up the internal circuit and the structure (ports, parameters, name, description etc) of the compound element based on user-defined information and also loads the custom setup script if available. CML Compiler automates the process of configuring the "Compound Element" and adds it to the library. While building this compact model, CML Compiler also saves the generated compound element in an .icp file named <element_name>.icp in the element source directory.
In the “file” option on the other hand, the user provides the compound element in an .icp file named <element_name>.icp in the element source directory. When running CML Compiler, it opens up the .icp file and grabs the compound in the file and adds it to the library. To prepare this file and include elements from the same library into the compound element, the user should:
1. Build the library once without the compound element using CML Compiler.
2. Redirect INTERCONNECT "Custom" library to the generated library in the "artifacts" folder.
3. Use elements in the "Custom" library and the primitive elements to build a compound element and save the file.
For an example of this icp file, please run the compound_rm_stat element from lumfoundry_template with “script” option once and CML Compiler will generate an icp file containing the compound element that can serve as a template for the required icp file.
For both options described above, this photonic model offers a “debug” mode. In this case, right before CML Compiler adds the compound element to the library, an INTERCONNECT session will open up with changes already saved in the <element_name>.icp either from “script” or “file” option. If no file was provided for the “file” option, while “debug_mode” is set to True, a blank INTC session will be opened up and the user needs to build the compound element in this session from scratch. In debug mode, the user has a chance to make changes while CML Compiler is running and before the compound element is added to the library. When the user is finished editing, CML Compiler will resume, save the last changes that were made to the <element_name>.icp file and add the element to the library.
Lumfoundry Templates: Compound Ring Modulator (Statistical)
Quality Assurance Test: Custom QA
Statistical Modeling Support: user-defined
Supported Parameters: user-defined
Tuning Support: user-defined.
Interoperability with Cadence Virtuoso:
- Circuit design flows using INTERCONNECT model: Yes.
- Circuit design flow using photonic Verilog-A model: No.