Updated sky130 tech file for magic and the setup file for netgen to add the two devices "sky130_fd_pr__special_nfet_01v8" and "sky130_fd_pr__special_pfet_01v8_hvt" which need to be split from the others because they have a width less than the DRC rule minimum for the process; the continuous models do not include this range, and so they need to be treated like the under-sized devices in SRAM by treating them as a unique model type. This update must be preceded by updates to the sky130_fd_pr and the sky130_fd_sc_hd repositories. The reference commits have been updated to match the repository updates.
diff --git a/VERSION b/VERSION index d1a7dfa..93ad932 100644 --- a/VERSION +++ b/VERSION
@@ -1 +1 @@ -1.0.469 +1.0.470
diff --git a/gf180mcu/gf180mcu.json b/gf180mcu/gf180mcu.json index b3c25a0..7934c61 100644 --- a/gf180mcu/gf180mcu.json +++ b/gf180mcu/gf180mcu.json
@@ -89,12 +89,12 @@ "magic": "MAGIC_COMMIT" }, "reference": { - "open_pdks": "392b92efc2a0be83c1381e739abaf48cc6135c7e", - "magic": "610c86a2340701e49ac23654f81233bedf6724fa", + "open_pdks": "30656fcd54fb8ba48caf1701f5b01b89f3f0c4fc", + "magic": "7f5571768f597c7746d125731d652aed6816cd5b", "gf180mcu_pdk": "a897aa30369d3bcec87d9d50ce9b01f320f854ef", - "gf180mcu_fd_pr": "9f7a3d4dcd4db06014f8cd648753ed1c8c69a1cf", + "gf180mcu_fd_pr": "a11222d681f2134ab28e97f97b9b99b6af188f88", "gf180mcu_fd_pv": "e9410df04da5b64a1053aa6e5180dc144b8a12a2", - "gf180mcu_fd_io": "2aeec51ea2824b6cc0b396acfc39f4535f40b23a", + "gf180mcu_fd_io": "f84fe10e67a5cb9002e9ae8210f58e570726c366", "gf180mcu_fd_sc_mcu7t5v0": "8743b6f9641eb8707179c4e51703380d4dc90f16", "gf180mcu_fd_sc_mcu9t5v0": "376ea56fa36ce7702595ce4e0e3c9357ee38c81c", "gf180mcu_fd_ip_sram": "9c411928870ce15226228fa52ddb6ecc0ea4ffbe",
diff --git a/sky130/magic/sky130.tech b/sky130/magic/sky130.tech index 9b98a84..e784bc3 100644 --- a/sky130/magic/sky130.tech +++ b/sky130/magic/sky130.tech
@@ -6454,11 +6454,17 @@ a1=as p1=ps a2=ad p2=pd device msubcircuit sky130_fd_pr__pfet_01v8_hvt pfethvt,scpfethvt \ *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w \ - a1=as p1=ps a2=ad p2=pd + w>=0.42 a1=as p1=ps a2=ad p2=pd + device msubcircuit sky130_fd_pr__special_pfet_01v8_hvt scpfethvt \ + *pdiff,pdiffres *pdiff,pdiffres nwell error l=l w=w \ + w<0.42 a1=as p1=ps a2=ad p2=pd device msubcircuit sky130_fd_pr__nfet_01v8 nfet,scnfet \ *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w \ - a1=as p1=ps a2=ad p2=pd + w>=0.42 a1=as p1=ps a2=ad p2=pd + device msubcircuit sky130_fd_pr__special_nfet_01v8 scnfet \ + *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w \ + w<0.42 a1=as p1=ps a2=ad p2=pd device msubcircuit sky130_fd_pr__special_nfet_latch npd \ *ndiff,ndiffres *ndiff,ndiffres pwell,space/w error l=l w=w \ a1=as p1=ps a2=ad p2=pd
diff --git a/sky130/netgen/sky130_setup.tcl b/sky130/netgen/sky130_setup.tcl index 62a5a4f..f278efa 100644 --- a/sky130/netgen/sky130_setup.tcl +++ b/sky130/netgen/sky130_setup.tcl
@@ -173,6 +173,8 @@ lappend devices sky130_fd_pr__special_nfet_pass lappend devices sky130_fd_pr__special_pfet_latch lappend devices sky130_fd_pr__special_pfet_latch +lappend devices sky130_fd_pr__special_nfet_01v8 +lappend devices sky130_fd_pr__special_pfet_01v8_hvt lappend devices sky130_fd_pr__cap_var_lvt lappend devices sky130_fd_pr__cap_var_hvt lappend devices sky130_fd_pr__cap_var
diff --git a/sky130/sky130.json b/sky130/sky130.json index 6a870c3..ce75316 100644 --- a/sky130/sky130.json +++ b/sky130/sky130.json
@@ -94,17 +94,17 @@ "magic": "MAGIC_COMMIT" }, "reference": { - "open_pdks": "369e64e543420707470300a2043c434c0347ea55", - "magic": "84af8016081eb5d433a910512a9ff0b6cd319aeb", - "sky130_fd_pr": "223af0cc415d8b22fc06e4943eacf3ccc63ba541", + "open_pdks": "30656fcd54fb8ba48caf1701f5b01b89f3f0c4fc", + "magic": "7f5571768f597c7746d125731d652aed6816cd5b", + "sky130_fd_pr": "be000a2f9122310e60ac30d762a91aef18e24b48", "sky130_fd_io": "979f0a09c39b12e195e5da872eeac62c9f49f8b1", "sky130_fd_sc_hs": "51e41a54135f6f345f415f1f7a19c59a4d363c23", "sky130_fd_sc_ms": "70ba6f4ac3cc06a1f740326556386baacf8aba7b", "sky130_fd_sc_ls": "9ab031f0d83a0e45c38391b421f94daed7638c12", "sky130_fd_sc_lp": "4a1f17641327a6cb02c185e29c336bf0016f05d9", - "sky130_fd_sc_hd": "0e82561ef77f179377b70654bf4a0e38c9a01eca", + "sky130_fd_sc_hd": "89492a051231edb799c330208ed48542eb6a29d7", "sky130_fd_sc_hdll": "3db78f5defcf0b6a5c85cfe10921852d504900be", - "sky130_fd_sc_hvl": "c7e80a4802fc1df49b007b99d4a1f61120e3a37f", + "sky130_fd_sc_hvl": "f02392c1ccee2bf51b9c32d18d0cf68550f06d90", "sky130_osu_sc_t12": "ac90ef0c622a9377a16b5218d9da3ac4169eeaaf", "sky130_osu_sc_t15": "95d1c19abb47e1b2945847acb4e817b1b8417c43", "sky130_osu_sc_t18": "aa2b509f3c8f32ea94fdb55ac9768754667c1658",