Reference design flow
=====================

This chapter describes the reference design flow for the Luceda PDK for ALUVIA, with its functionalities and tooling.

Several types of design actions and design intents are considered:

* Photonic IC circuit design based on pre-defined building blocks and subcircuits
* Photonic IC component design and exploration based on technology information
* Library management

The following tools are used in the reference design flow:

  +------------------------+-------------------------------+--------------------+
  | Function               | Tool                          | Versions supported |
  +========================+===============================+====================+
  | Circuit layout         | L-edit                        | 2019.x, 2020.x     |
  +------------------------+-------------------------------+--------------------+
  | Waveguide routing      | IPKISS                        | 3.9.1              |
  +------------------------+-------------------------------+--------------------+
  | Subcircuit layout      | IPKISS                        | 3.9.1              |
  |                        +-------------------------------+--------------------+
  |                        | L-Edit                        | 2019.x, 2020.x     |
  +------------------------+-------------------------------+--------------------+
  | Component layout       | IPKISS                        | 3.9.1              |
  +------------------------+-------------------------------+--------------------+
  | Component simulation   | IPKISS                        | 3.9.1              |
  |                        +-------------------------------+--------------------+
  |                        | CST Studio Suite (FDTD)       | 2017, 2018         |
  |                        +-------------------------------+--------------------+
  |                        | FDTD Solutions (FDTD)         |                    |
  +------------------------+-------------------------------+--------------------+

.. compound::

    Product licenses

    * IPKISS is a product of Luceda Photonics.
      Circuit design and waveguide routing from L-Edit requires a Luceda Link for Siemens EDA license.
    * L-Edit and Calibre are products of Mentor Graphics (Tanner), a Siemens company.
    * CST Studio suite is a product of CST - Dassault Systèmes.
    * FDTDSolutions is a product of Lumerical.

    Software licenses have to be procured from the separate vendors.

Circuit layout and routing
--------------------------

Circuit layout is performed from within L-Edit or from IPKISS python script, depending on the user's preferences.

* Using Luceda Link for Siemens EDA, PDK pcells as well as customer-defined cells are available within the L-Edit environment.
  From the L-Edit GUI, components can be instantiated using drag-and-drop, components can be connected conveniently with waveguides and metal wiring can be done.

* Using IPKISS, the same PDK pcells as well as customer-defined cells are available and can be laid out into a circuit using Python scripting.
  IPKISS provides features for semi-automated waveguide routing including fanout bundles and other convenience functions.


Component design
----------------

.. rubric:: Component and subcircuit layout

User-defined components and subcircuits can be created in IPKISS python script and made available in the L-Edit design environment.
IPKISS provides basic building block definition based on technology layers, as well as powerful macros for waveguide routing, device placement, fanouts, and so forth.

.. rubric:: Component simulation

Optical (electromagnetic) simulation of devices can be managed with IPKISS.
IPKISS provides a built-in 2D mode solver and propagation tool.
For more accurate simulations, CST Studio Suite as well as Lumerical FDTD Solutions can be driven in a semi-automated and reproducible way.
The simulation results can directly be imported in IPKISS and used as a compact model in the circuit simulation (Caphe).

.. rubric:: Device exploration

For the creation of device exploration masks, IPKISS provides features for creating component parameter sweeps and stacking on chip.

Library management
------------------

The customer can create his/her own library of components using the functionalities and tools described above.
IPKISS allows to keep a unified description of building blocks with layout, compact model and device simulation recipes.
The components can then be used from within IPKISS (python scripts) as well as L-Edit.
