.. _pdk_standards_overview: ============= PDK standards ============= Overview ======== When creating photonic integrated circuits, designers use CAD tools and `Process Design Kits (PDK) `_ for the selected technology. Currently, providing and supporting a PDK for multiple design tools requires a lot of effort and is error-prone due to absence of any standard workflow for this process. Most often a foundry has independent PDK support teams for each design tool. We are addressing the problem of PDK creation and validation by introducing a standardized PDK representation. In this representation, PDK constitutes of a single dataset, which is software-independent and is provided by the foundry. It can be imported and compiled into a software-dependent PDK (library, package, etc.) to be used with the desired design tool. openEPDA provides a set of standards for such PDK representation. A more detailed explanation of this approach is available in a conference presentation: `video `_ and `slides `_. The complete foundry PDK consists fo the following components: - design manual; - technology info; - `layout of the building blocks `_; - building blocks performance. In addition, we standardize the shapes of the `interconnects `_ to be used in the PIC layout. Description of each component is provided below. Design manual ============= Design manual is a text document which provides a user-friendly description of the complete platform, design submission process etc. We do not standardize this document as it is not intended to be machine-readable. However, when creating the design manual, we encourage foundries to use the same data source as for the data files to ensure information consistency ("single-source" methodology). Technology info =============== Technology information is diverse. It includes the logical and physical mask layers, material properties, layer stack description, basic cross-sections to be used in the design. The technology info specification is currently under development. Foundry building blocks - layout ================================ Building blocks are discrete components offered by the foundry; their combinations are used to build complex circuits. Therefore, the layout information of the building blocks provided by the foundry is an essential component of the PDK. The foundry building blocks standard, namely, updk, is a "black-box" description, meaning that only BB outline and connectivity are available, while the inner structure of the BBs remains the IP of the Foundry. See more details on :ref:`pdk_components`. Foundry building blocks - performance ===================================== To enable simulations of circuits combined of multiple building blocks, foundries provide relevant performance metrics for every building block. Examples of such data may be group index of waveguides, wavelength-dependent transmission of couplers, of gain spectra of amplifiers. The data files are meant to include both metadata and actual performance data. Also, the performance may be described by tabulated numeric values or by an analytic expression (i.e. compact models). openEPDA's approach to the data files is the following: - The data is represented as a list of `attribute-value pairs `_ . - The attributes to be used are taken from the vocabulary of standard terms (see :ref:`general_standards_overview`). - Which exactly attributes are required or optional in a data file (i.e. data file schema) is determined by the building block type and the performance characteristic to by described. - Data serialization is done using openEPDA data format, see :ref:`openepda_data_format` . The openEPDA's target is to provide schemas for the most commonly used performance data. This is currently under development. Interconnects ============= In addition to standard building blocks (see :ref:`pdk_components`), an electronic-photonic circuit typically contains interconnects, which are arbitrary-shape connectors in a given cross-section between the pins of standard building blocks. A simple example of an interconnect is straight or bended optical waveguide. We define several standard shapes for the interconnects. See more details on :ref:`openepda_interconnects`.