An electro-absorption model based on the Franz-Keldysh effect. This device is assumed to be composed of an active region in the middle, connected to the input/output ports by identical tapers. The model is temperature and bias dependent.
For an example of component level modeling of a similar device, see the App gallery example: Electro-absorption Modulator.
Note: For legacy data format (2022 R2.4 and older) please visit following link:
Electro-absorption Modulator - Lumfoundry Template (Legacy)
Template: eam_te_c
Photonic Model: electro_absorption_modulator
Quality Assurance Test: electro_absorption_modulator QA
Parameters: None
Interoperability with Cadence Virtuoso:
- Circuit design flows using INTERCONNECT model: Yes.
- Circuit design flow using photonic Verilog-A model: Yes.
App Gallery Example: Electro-absorption Modulator.
Modeling Data
The source data template for a electro-absorption modulator element can divided into two sections.
- For new users (continue with following section: Basic data requirement section)
- Advanced users ( continue with section: Complete Data Requirement )
The electro-absorption modulator template can be used to create a very advanced compact model for a custom electro-absorption modulator. The template contains a lot of different modeling data to create an accurate model. However, not all these data need to be updated by the user. The fastest/ simplest way to modify the template data and create a custom compact model would be to only update the values of the data listed in the 'basic data requirement section' below, while all rest of the data (which is illustrated in detail in subsequent sections) can be left at their default value.
Note: Advanced users please jump start with Complete Data Requirement (for advanced users) section.
Basic data requirement section (for new users)
The basic or minimum data required to build the thermal phase shifter model is described below.
general
"general" is a struct with the following fields:
Field | Type | Description |
---|---|---|
description | string | A string containing a brief description of the model, which will be displayed to the end user. |
notes | cell |
A cell array that provides model notes which will be displayed to the end user. Each element of the cell is a struct with the fields:
|
ports
"ports" is a struct with the following fields:
Field | Type | Description |
---|---|---|
opt_1 |
struct with fields described in table below | Port definition corresponding to the optical ports |
opt_2 |
||
ele_an |
Port definition corresponding to the electrical anode and cathode. |
|
ele_cat |
Each struct above consists of the following fields:
Field | Type | Description |
---|---|---|
name | string | The name of the port, which will be visible to the end user. This name should be consistent with the name that will be used for netlisting. |
dir | string | The directionality of the port, either "Input", "Output", or "Bidirectional" |
pos | string |
The side of the model which the port will be displayed on, either "Left", "Right", "Top", or "Bottom" |
order | number |
The order at which the port is listed in a netlist. |
model_data
"model_data" is a struct with the following fields:
Field | Type | Description |
---|---|---|
mode_data |
cell |
1 x 1 cell array. Each element of the cell is a struct with fields:
Note: This model only supports a single mode. |
transmission_voltage_data
|
struct |
Transmission spectrum (dB) of the EAM at different bias (V) voltages at room temperature (300 K). The required fields are:
Note:
|
FOMs
"FOMs" is a struct with fields below. This data is required for CML Compiler to run quality-assurance tests on the final model. It is also optionally used by CML Compiler to fine-tune the internal model to provide the expected behavior.
If the source physical data provided for the model is not consistent with the figures of merit (FOMs) provided (meaning the actual FOM values resulting from physical parameters differ from provided FOM data), the model can tune the provided physical data to match the FOMs to the provided values. For more information, see Tuning Active Compact Models.
Field | Type | Description |
---|---|---|
IL |
struct with fields described in table below |
Insertion loss (dB) of the EAM at wavelength equal to wavelength_data under zero bias at 300 K. Note: IL must be provided as a positive number. |
ER
|
struct with fields described in table below |
Extinction ratio (dB) of the EAM at wavelength equal to "wavelength" measured between the voltage given by "ref1" and "ref2" in the struct at 300 K. Note: ER must be provided as a positive number. |
Each struct above consists of the following fields:
Field | Type | Description |
---|---|---|
value |
number |
The nominal value for the FOM in SI units. |
tuning |
boolean |
A flag to enable or disable tuning for the FOM. |
min
|
number |
Minimum allowed value in SI unit if visible_to_user is set to True. |
max
|
number |
Maximum allowed value in SI unit if visible_to_user is set to True. |
ref1 (if applicable) |
number |
Point(s) at which the nominal FOM was measured. This can be voltage or power data points depending on the FOM definition. |
ref2 (if applicable)
|
number |
Complete data requirement (for advanced users)
The complete data section provides a complete reference of data supported by the electro-absorption modulator model including the basic required data described in the previous section. The description of all the fields in the electro-absorption modulator source data template are described below.
general
"general" is a struct with the following fields:
[[snippet||11549514081811]]
ports
"ports" is a struct with the following fields:
[[snippet||12089067277075]]
Each struct above consists of the following fields:
[[snippet||11549759363603]]
parameters
"parameters" is a struct with the following fields:
[[snippet||11644750903571]]
Each struct above consists of the following fields:
[[snippet||11720299494931]]
model_data
"model_data" is a struct with the following fields:
[[snippet||12089197691027]]
FOMs
"FOMs" is a struct with fields below. This data is required for CML Compiler to run quality-assurance tests on the final model. It is also optionally used by CML Compiler to fine-tune the internal model to provide the expected behavior.
If the source physical data provided for the model is not consistent with the figures of merit (FOMs) provided (meaning the actual FOM values resulting from physical parameters differ from provided FOM data), the model can tune the provided physical data to match the FOMs to the provided values. For more information, see Tuning Active Compact Models.
[[snippet||12090766752019]]
Each struct above consists of the following fields:
[[snippet||11653867902995]]
QA
"QA" is a struct with the following fields:
[[snippet||12090859613587]]