drcMinSpaceType
Validate the space between the center of (healed) polygons.Value is the minimum space (um) between the centers.
Download the xsl/xml/xsd's and run the (bash) command line below to convert the XML to a SPT example in OptoDesigner (see short docu):
xsltproc --xinclude -stringparam standalone true -stringparam example drc0 xPDK_toOptoDesigner02.xsl layer_drcMinSpace.xml
full file
<layer name="layer1">
<gds_number>1</gds_number>
<gds_datatype>0</gds_datatype>
<grid>0.001</grid>
<purpose>Waveguide layer</purpose>
<color R="100" G="200" B="255"/>
<visible>true</visible>
<fillstyle>open</fillstyle>
<linestyle>fill</linestyle>
<SingleLayerOps>
<drcMinSpace value="2">DRC</drcMinSpace>
</SingleLayerOps>
</layer>
Spt:
Structure
This element does not have elements. The attributes are shown below, in a sorted per type fashion.<drcMinSpace measure="..." pdaDrcLayerArgumentDirection:direction="..." pdaDrcLayerArgument:value="..." pdaDrcGeneralRule:DFM="..." pdaDrcGeneralRule:drcExclude="..." pdaDrcGeneralRule:level="..." pdaDrcGeneralRule:rule="..." ... > ... <pdaDrcGeneralRule:doc> ... </doc> optional
<pdaDrcGeneralRule:groupRef> ... </groupRef> list
<pdaDrcGeneralRule:msg> ... </msg> optional
<pdaDrcGeneralRule:tex> ... </tex> optional
<pdaDrcGeneralRule:ticket> ... </ticket> list
</drcMinSpace>
XSD The schema file can be downloaded or viewed at xPDK_Layout.
Details
Type pdaDrcLayerArgumentDirection
Type pdaDrcLayerArgument
Define a single layer DRC test with argument.Type pdaDrcGeneralRule
Define a design rule that is not layer or "polygon" / "geometric" based.Design rules are available in different flavors, some of which can not be associated with layers; for example the name of the GDS cell that is required to be used for the design.
The rule is described in text and software may (or not) be able to implement them. Using the rule field gives designers an easy way to find more information on the DRC fail if it appears.
measure
Type pdaDrc_TestAttribute documentation: This optional attributes gives a edge/edge or center/center specification to a test.direction
Type pdaDrc_DirectionAttribute documentation: This optional attributes gives a direction to a test.The direction can be in 'global' coordinates, so with all (cell) data flattened onto the final chip locations, where [x=0,y=0,angle=0] is the design area relative to the foundry wafer (1:1 projection) or reticle placement (stepper projection).
Or it can be relative to the 'direction of the light' - so assuming the signal/light goes through the waveguide / building block in a normal 'signal' way.
- X This indicates a 'global' direction - west/east
- Y This indicates a 'global' direction - north/south
- XY This indicates a 'global' direction - north/south or west/south
- Transverse This indicates a 'relative' direction - orthogonal to the signal/light propagation. This relates to the 'widening' of xsection into layer data, see the grid context.
- Longitudinal This indicates a 'relative' direction - parallel to the signal/light propagation. This relates to the 'lenghtening' of a xsection into layer data, see the grid context.
value
Type pdaExpression documentation:Expression need to be commonly evaluated by many software, so having a restricted set of math / types and so on is key. In PDAFlow lib2/expr there is a yacc/lex parser available with some unit support as well as double / complex expressions. An alternative is tinyexpr, but this is more restrictive, so may be very unhandy for things like waveguide model expressions.
DFM
Type pdaExpression documentation:Expression need to be commonly evaluated by many software, so having a restricted set of math / types and so on is key. In PDAFlow lib2/expr there is a yacc/lex parser available with some unit support as well as double / complex expressions. An alternative is tinyexpr, but this is more restrictive, so may be very unhandy for things like waveguide model expressions.
doc
Short documentation on the why of the rule.This information is useful for a design manual but can also be used in the user interface as additional information, like a 'on-hoover mouse move'. Type pdaDocumentation documentation:
This field allows some (short, few lines) documentation to be written. It can be a long string, but the idea is not to replace a design manual.
This fields is like
tex
which allows documentation in LaTex format; doc
is restricted to plain text.drcExclude
Type pdaGDSlayerReference documentation:groupRef
Use this field to combined related topics into groups. Type pdaIdentifier documentation:Identifiers are used in the Python library for the
getName()
and
setName()
function and can thus be used to identify the different elements in list
s.In text the specification is a letter, followed by letters, numbers, underscore. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*
level
Type pdaDrcWarningLevel documentation: Error/warning level for a DRC message.Normal use is: warning / error.
msg
DRC message to display in the user interface.It is recommended that this is a short text as it may appear many times in the display (so much shorter then the 'doc' field).
rule
tex
Possibly long documentation on the why of the rule in LaTeX format. Type pdaTexDocumentation documentation:doc
, but tex
can be a long text in LaTex format to
document the layer in more detail if needed.You can document anything relevant for the topic you want to define.
Multiple paragraphs is fine. Format is Latex, so more complex content is possible.