Conventional photolithography cannot accurately pattern the geometries required for the 20nm process node and below. Foundries have turned to various multi-patterning lithography techniques to address this issue. Shapes on the same layer manufactured with multi-patterned technology (MPT) are created through multiple exposures using multiple masks. Physical design tools must be able to assign shapes on an MPT process layer to a specific mask so that they can check mask-based physical design rule rules to ensure that the design can be fabricated.
This contribution includes OpenAccess extensions which enable physical design tools to represent MPT information. The extensions support assigning mask "colors" to shapes and vias. To enable different instances of a design to be colored differently, the color of the shapes in an oaInst can be shifted on a per-layer basis. Shapes and vias can be locked. This can be used to prevent hierarchical color shifting of instances containing those objects. An oaDesign itself can be locked as a whole to prevent applications from color shifting instances of that design. Color information can also be associated with track patterns to help routers efficiently assign color. Blockages can also be colored. At the technology level, one can model the number of masks associated with a given layer, as well as color patterns for the cut shapes in multi-cut vias. A detailed description of these extensions accompanies the contribution.
The contribution consists of the source code used to define the oaAppDefs used to extend OpenAccess for color, and documentation of the oaAppDefs' structure and semantics. Users are responsible for compiling this source code along with their application and any code they write to access and manipulate these oaAppDefs. The contributed code must be used with OpenAccess 22.43 or later.
|