Finished implementing the three types of 20V extended drain devices
(for reading and extracting; writing not yet supported).
diff --git a/sky130/magic/sky130.tech b/sky130/magic/sky130.tech
index 3bb2f07..8faaa03 100644
--- a/sky130/magic/sky130.tech
+++ b/sky130/magic/sky130.tech
@@ -2337,20 +2337,31 @@
and-not mvrdpioedge
labels DIFF
- layer mvnfet DIFF
+ templayer mvnfetarea DIFF
and POLY
and-not PPLUS
and NPLUS
and-not LVTN
and THKOX
- labels DIFF
+ grow 1000
- layer mvnnfet DIFF
+ templayer mvnnfetarea DIFF,TAP
and POLY
and-not PPLUS
and NPLUS
and LVTN
and THKOX
+ and-not mvnfetarea
+
+ layer mvnfet DIFF
+ and POLY
+ and-not PPLUS
+ and NPLUS
+ and THKOX
+ and-not mvnnfetarea
+ labels DIFF
+
+ layer mvnnfet mvnnfetarea
labels DIFF
templayer mvnsdarea TAP
@@ -3811,20 +3822,31 @@
and-not mvrdpioedge
labels DIFF
- layer mvnfet DIFF
+ templayer mvnfetarea DIFF
and POLY
and-not PPLUS
and NPLUS
and-not LVTN
and THKOX
- labels DIFF
+ grow 1000
- layer mvnnfet DIFF
+ templayer mvnnfetarea DIFF,TAP
and POLY
and-not PPLUS
and NPLUS
and LVTN
and THKOX
+ and-not mvnfetarea
+
+ layer mvnfet DIFF
+ and POLY
+ and-not PPLUS
+ and NPLUS
+ and THKOX
+ and-not mvnnfetarea
+ labels DIFF
+
+ layer mvnnfet mvnnfetarea
labels DIFF
templayer mvnsdarea TAP
@@ -5914,7 +5936,7 @@
# Extended drain devices
device msubcircuit sky130_fd_pr__nfet_20v0_nvt mvnnfet *mvndiff dnwell \
pwell,space/w error l=l w=w
- device msubcircuit sky130_fd_pr__nfet_20v0 mvnfet *mvnndiff dnwell \
+ device msubcircuit sky130_fd_pr__nfet_20v0 mvnfet *mvndiff dnwell \
pwell,space/w error l=l w=w
device msubcircuit sky130_fd_pr__pfet_20v0 mvpfet *mvpdiff pwell,space/w \
nwell error l=l w=w