Hi, has anyone encountered the m2.5 drc error from...
# klayout
n
Hi, has anyone encountered the m2.5 drc error from Klayout (pls see the attached image)? In the layout, it clearly shows that m2 enclosure of via of 2 opposite edges is 0.085um but the tool still reports it’s an error?
m
@Nguyen Dao From
<https://github.com/laurentc2/SKY130_for_KLayout/blob/main/drc/drc_sky130.lydrc>
these appear to be the relevant rules.
Copy code
via_edges_with_less_enclosure_m2 = m2.enclosing(via, 0.085, projection).second_edges  opposite7 = (via.edges - via_edges_with_less_enclosure_m2).width(0.14 + 1.dbu, projection).polygons  
via.not_interacting(opposite7).output("m2.5", "m2.5 : min. m2 enclosure of via of 2 opposite edges : 0.085um")
I found a discussion on the rule development at
<https://www.klayout.de/forum/discussion/1204/contact-via-drc-min-enclosure-on-2-opposite-sides>
Is the via size 0.14umx0.14um? (The m1 via rules have a similar check, but use 0.18um as width size.) Looks like the via size should be 0.15um. Maybe change
width(0.14
to
width(0.15
and see what happens.
n
@Mitch Bailey Thanks. Yes changing via size to 0.15um fix the m2.5 error but there are still issues with m3.5 and m4.5. Seems there was a mistake in the original
sky130.lydrc
from Klayout that uses metal width instead of via width in opposite7 expression. The
sky130.lydrc
from open_pdks repo helps fix all those issues.