Skip to content

Commit

Permalink
Updating rule deck tolerance value to be 1.dbu
Browse files Browse the repository at this point in the history
  • Loading branch information
FaragElsayed2 committed Apr 5, 2023
1 parent 668b144 commit feaa04a
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions klayout/drc/rule_decks/lres.drc
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ if FEOL

# Rule LRES.3: Minimum space from Poly2 resistor to COMP is 0.6um.
logger.info('Executing rule LRES.3')
lres3_l1 = lres_poly.separation(comp, 0.6.um, euclidian).polygons(0.001.um).or(comp.not_outside(lres_poly))
lres3_l1 = lres_poly.separation(comp, 0.6.um, euclidian).polygons(1.dbu).or(comp.not_outside(lres_poly))
lres3_l1.output('LRES.3', 'LRES.3 : Minimum space from Poly2 resistor to COMP: 0.6.um')
lres3_l1.forget

Expand All @@ -50,7 +50,7 @@ if FEOL

# Rule LRES.5: Minimum Nplus implant overlap of Poly2 resistor is 0.3µm.
logger.info('Executing rule LRES.5')
lres5_l1 = lres_poly.enclosed(nplus, 0.3.um, euclidian).polygons(0.001.um)
lres5_l1 = lres_poly.enclosed(nplus, 0.3.um, euclidian).polygons(1.dbu)
lres5_l2 = lres_poly.not_outside(nplus).not(nplus)
lres5_l = lres5_l1.or(lres5_l2)
lres5_l.output('LRES.5', 'LRES.5 : Minimum Nplus implant overlap of Poly2 resistor: 0.3µm')
Expand All @@ -67,7 +67,7 @@ if FEOL
# Rule LRES.7: Minimum space from salicide block to contact on Poly2 resistor is 0.22.um.
logger.info('Executing rule LRES.7')
cont_lres7 = contact.and(lres_poly)
lres7_l1 = cont_lres7.separation(sab, 0.22.um).polygons(0.001.um)
lres7_l1 = cont_lres7.separation(sab, 0.22.um).polygons(1.dbu)
lres7_l2 = cont_lres7.interacting(sab)
lres7_l = lres7_l1.or(lres7_l2)
lres7_l.output('LRES.7', 'LRES.7 : Minimum space from salicide block to contact on Poly2 resistor: 0.22.um')
Expand Down Expand Up @@ -96,7 +96,7 @@ if FEOL
## and both side (X and Y) are greater than 80um.
## then the minimum spacing to adjacent RES_MK layer is 20µm.
logger.info('Executing rule LRES.9b')
lres9b = res_mk.with_area(15_000.001.um, nil).edges.with_length(80.001.um, nil)
lres9b = res_mk.with_area(15_000.um + 1.dbu, nil).edges.with_length(80.um + 1.dbu, nil)
lres9b_l1 = lres9b.separation(res_mk.edges, 20.um)
lres9b_l1.output('LRES.9b',
'LRES.9b : If the size of single RES_MK mark layer is greater than 15000um2
Expand Down

0 comments on commit feaa04a

Please sign in to comment.