I am trying to define a rule that will check connectivity between layer 18 and layer 3, via layer 14, but only when layer 27 is not present. I tried 18 / 14 / 3*-27 and 18 / 14 / 3*(-27) and a few other ways of writing it, but with no luck. Is it possible to do this, and if so, how?
Comments
Hi,
The following connection specification should do the job:
I have tested this on a simple example.
Matthias
Hi,
to be frank, I've neved had this request before.
The usual approach is to select different rules depending on additional mask layers. Since the physics of your connection must be somehow determined by the masks in a lithography process, it should be possible to select conductors based on the mask layers.
You have given one example already before: layer 14 is conductive only if 27 is not present. You can do the opposite by using an AND operation (14 is conductive only if 27 is present). It's quite common to have mask combination rules to select areas which are connected or not connected: salicide blocking turns poly into a resistor (basically disconnecting the attached parts), MIM cap marker layers block vias, poly gates separate drain and source area in a CMOS transistor's active area and so forth. Often you deal with design layers rather than mask layers. In that case the layers sometimes are marker layers and do not represent physical structures, but still they may serve as a feature to distinguish the various rules.
In KLayout, you can combine more than one boolean operations to achieve the desired result. Utilizing the symbols you can derive intermediate layers to simplify the formulas. Maybe this feature provides enough tooling to solve you problem?
Matthias
Hello,
if I understand you correctly, the same physical material (i.e. n doped substrate) is used both for resistors and for active area as well. That's probably legal but then it's only the dimension that makes a difference between a resistor. I imagine that a resistor is rather a thin, maybe folded line while the active area of a transistor is a single rectangle.
Maybe it's an option to generate a marker layer using a DRC runset?
A technology switch is a major feature change and surely nothing that's done quickly.
Matthias