Lumicron Validation API
Use lumicron_validate to author fabrication rules and evaluate semantic design requirements.
import lumicron_validate as lvDRC checks physical geometry and layers: width, spacing, area and enclosure. DFX checks design requirements that depend on what an object is, such as the orientation of an explicitly addressed instance’s optical port. These are different evidence scopes.
The packages ship together in Lumicron’s bundled Python runtime. This guide does not imply a separately published PyPI distribution. Run examples with that runtime or an environment containing all three bundled packages and their dependencies.
| Task | Import | Guide |
|---|---|---|
| Design a PIC, place and route instances | import lumicron as lm |
Layout API |
| Author layers, PCells and PDK packages | import lumicron_pdk as lpdk |
PDK Development API |
| Author DRC and semantic requirements | import lumicron_validate as lv |
This guide |
The native DRC/LVS session’s binding and applicability rules are unchanged. A Python check result is evidence only for the inputs and scope it actually evaluated.
Reusable rule code can also be a two-file Lumicron engineering package: lumicron.toml plus checks.py, with validation = "checks.py" under capabilities. A declared process dependency describes the provider’s applicability; it does not implicitly run or combine its rules. See Examples/Packages/SimpleValidation and the Layout guide’s Packages and project environments chapter. Its semantic orientation check uses an authored instance and named port, not polygon proximity. The neighboring GratingTools example shows that ordinary utilities use the same package model.