Skip to content

Commit

Permalink
Modified the deep nwell generation routine to draw the nwell
Browse files Browse the repository at this point in the history
boundary in four separate rectangles, because the method of
drawing nwell over the area and erasing from the center causes
unexpected/unwanted interactions with any existing layout in
the center of the deep nwell region.
  • Loading branch information
RTimothyEdwards committed Apr 7, 2024
1 parent 533726f commit 37f2ddf
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 3 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.0.474
1.0.475
33 changes: 31 additions & 2 deletions sky130/magic/sky130.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -549,9 +549,38 @@ proc sky130::deep_nwell_draw {} {
pushbox
pushbox
box grow c 0.4um
# Note: Previous implementation was to draw nwell over the whole
# area and then erase it from the center. That can interact with
# any layout already drawn in the center area. Instead, draw four
# separate rectangles.
# -----------------
# paint nwell
# box grow c -1.43um
# erase nwell
# -----------------
pushbox
box width 1.43um
paint nwell
popbox
pushbox
box height 1.43um
paint nwell
popbox
pushbox
box move n ${h}um
box move n 0.8um
box move s 1.43um
box height 1.43um
paint nwell
popbox
pushbox
box move e ${w}um
box move e 0.8um
box move w 1.43um
box width 1.43um
paint nwell
box grow c -1.43um
erase nwell
popbox

popbox
box grow c 0.03um

Expand Down

0 comments on commit 37f2ddf

Please sign in to comment.