ASSURA
gate = geomAnd(gc_c active_c
hvgate = geomButtOrOver(gate area2_c)
a = geomSize(hvgate 0.34)
b = geomAnd(a active_c)
c = geomAndNot(b area2_c)
errorLayer(c “LA.X.3: Extension of AREA2 beyond HV gate, perpendicular to the transistor length, min 0.34”)
L48538=drc(area2_c wn_c 0<enc<0.62 shielded)
errorLayer(L48538 “LA.X.2: Extension of AREA2 beyond WN must be >= 0.62u or 0”)
L69400=drc(wn_c area2_c 0<enc<0.62)
errorLayer(L69400 “LA.X.1: Extension of WN beyond AREA2 must be >= 0.62u or 0”)
CALIBRE
@ Violation of this rule will result in an automatic rejection of your gds.
@M1.S.2: M1 to M1 spacing (Either metals with > 10), min 0.6 (M1.S.2)
M1_S5 = SHRINK ( SHRINK ( SHRINK ( SHRINK M1 RIGHT BY 5) LEFT BY 5) TOP BY 5) BOTTOM BY 5
M1_G5 = GROW (GROW ( GROW ( GROW M1_S5 RIGHT BY 5) LEFT BY 5) TOP BY 5) BOTTOM BY 5
M1_Wide = M1_G5 AND M1
M1_Exp = SIZE M1_Wide BY 1 INSIDE OF M1 STEP 0.161
M1_Branch = M1 Exp NOT M1_Wide
M1_Branch_edge = M1 Branch COIN INSIDE EDGE M1
M1_Check = M1 AND (SIZE M1_Exp BY 0.6)
M1_Else = M1 Check NOT INTERACT M1 Exp
M1_Extend = M1_Check NOT M1_Exp