Photonics

Laylight vs SiEPIC EBeam and Cornerstone

Compare the built-in structure coverage in laylight core against two reference photonic PDKs.

Comparing Laylight core structures with the SiEPIC EBeam PDK and Cornerstone gdsfactory

This page compares the device-category coverage of all three using the same criteria:

  • laylight/packages/core currently provides a reusable set of layout structures.
  • SiEPIC EBeam PDK is an open-source PDK centered around KLayout, with both mature device libraries and publicly visible beta devices.
  • Cornerstone gdsfactory (cspdk) is a gdsfactory-based PDK covering multiple process variants such as si220, si500, and sin300, and it ships a more complete ready-to-use cell catalog.

Counting Method

To keep the comparison as fair as possible, the tables below use these rules:

  • For laylight, the count is based on packages/core/laylight/structure/*.py, not only on the modules currently re-exported by structure/__init__.py.
  • For SiEPIC EBeam, the count is based on public component documentation plus the pcells_EBeam and pcells_EBeam_Beta directories in the repository.
  • For Cornerstone, the count is based on the official cspdk cell libraries in si220/cband, si220/oband, si500, and sin300.
  • The comparison is about device-category coverage, not exact per-file counts.

Structures Currently Built into Laylight

The current laylight core provides a set of foundational, composable layout structures that are suitable for scripted assembly and manual composition:

CategoryCurrent laylight structures
Basic waveguide primitivesWGStraight, NeoTaper, ArcCurve, SCurve, WGUBend
Waveguide coupling / crossing / transitionDirectionalCoupler, AdiabaticCoupler, WaveguideCrossing, StripToRibTransition
Splitter / combiner primitivesYBranch
Fiber I/O / delay structuresRectangularGratingCoupler, FocusingGratingCoupler, EllipticalGratingCoupler, PolarizationSpecificGratingCoupler, BraggGrating, SpiralDelay, CutbackDelay
Periodic coupling / reflective devicesContraDirectionalCoupler
Extended resonator devicesRacetrack, RacetrackCoupled
Passive splitting / combiningMMI, which can form 1x2, 2x2, and 2x1; MMIFanOut
Interferometric devicesMZI
Resonator devicesRing, RingCoupled
Electrical / probe supportHeaterPad, Pad, GSGPad
Packaging / wrapper templatesFiberArrayWrapper, DieWithPads
Higher-level composition templatesMZIRectangularArray, MZITensor

This is already enough to support the following:

  • straight waveguides, taper transitions, and curved waveguide routing;
  • directional couplers, adiabatic couplers, Y-branches, crossings, and strip-to-rib transitions;
  • rectangular / focusing / elliptical / polarization-specific grating couplers, Bragg gratings, contra-directional couplers, and spiral / cutback delay structures;
  • MMI-based splitters / combiners and MZI modules;
  • heater-enabled rings and MZIs, plus racetrack resonator families;
  • simple pad / probe test structures, as well as metal / via / heater-routing primitives;
  • packaging templates such as fiber-array wrappers and die-with-pads;
  • higher-level MZI mesh-style compositions.

Device Category Comparison

Device categorylaylight coreSiEPIC EBeam PDKCornerstone cspdk
Straight waveguidesYesYesYes
Taper / width transitionYesYesYes
Basic bend / arc / S-bend / U-bendYesYesYes
Directional couplerYesYesYes
Broadband / adiabatic couplerYesYesPartial
Y-branch splitterYesYesNo first-class Y-branch cell
MMI splitter / combinerYesPartial / beta-visibleYes
MZI blockYesMostly assembled from primitives / examplesYes
Ring resonatorYesYesYes
Racetrack resonatorYesYesYes
Ring heater variantYesYesYes
Waveguide crossingYesYesYes
Spiral delay / cutback structureYesYes (beta)Yes
Grating couplerYesYesYes
Bragg gratingYesYesNo dedicated Bragg family in shipped cells
Contra-directional couplerYesYesNo dedicated contra-DC family in shipped cells
Strip / rib transitionYesPartialYes
Metal routing cellYesLimited in visible libraryYes
Via stack / heater interconnectYesPartialYes
Pad / die / packaging helperYesLimitedYes
Fiber-array / pad-array wrapperYesLimitedYes
Research / beta experimental devicesNo explicit beta libraryYesLimited

References

  • Laylight local source: packages/core/laylight/structure/
  • SiEPIC EBeam PDK repository: https://github.com/SiEPIC/SiEPIC_EBeam_PDK
  • SiEPIC EBeam component docs: https://github.com/SiEPIC/SiEPIC_EBeam_PDK/tree/master/docs/components/ebeam
  • Cornerstone cspdk docs index: https://gdsfactory.github.io/cspdk/
  • Cornerstone si220 cells: https://gdsfactory.github.io/cspdk/cells_si220_cband.html
  • Cornerstone si500 cells: https://gdsfactory.github.io/cspdk/cells_si500.html
  • Cornerstone sin300 cells: https://gdsfactory.github.io/cspdk/cells_sin300.html

On this page