From 3720f7f15796303372b10b384614c6fe944dd0f8 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Sun, 16 Jul 2023 16:40:27 -0400 Subject: [PATCH] Corrected the long-time problem with the erroneous name "pfet_pass", since the SRAM cells do not use pFETs as pass transistors and the device in question is the complement of "nfet_latch" and should be called "pfet_latch". This name change has been made throughout the repository, leaving only a subcircuit definition for "pfet_pass" that instantiates "pfet_latch", for backwards compatibility with legacy netlists. --- ...sky130_fd_pr__special_pfet_latch.pm3.spice | 351 ++++++++++++++++++ ...special_pfet_latch__mismatch.corner.spice} | 12 +- ...sky130_fd_pr__special_pfet_latch__iv.data} | 0 ...fd_pr__special_pfet_latch__pfet_vth.spice} | 4 +- ...0_fd_pr__special_pfet_latch_ids_v_vds.svg} | 2 +- ...0_fd_pr__special_pfet_latch_ids_v_vgs.svg} | 2 +- ...130_fd_pr__special_pfet_latch_results.json | 13 + .../sky130_fd_pr__special_pfet_pass.pm3.spice | 336 ----------------- ...y130_fd_pr__special_pfet_pass_results.json | 13 - combined_models/corners/all.spice | 6 +- .../corners/ff/specialized_cells.spice | 52 +-- .../corners/fs/specialized_cells.spice | 52 +-- .../corners/sf/specialized_cells.spice | 52 +-- .../corners/ss/specialized_cells.spice | 52 +-- .../corners/tt/specialized_cells.spice | 52 +-- combined_models/parameters/invariant.spice | 54 +-- combined_models/parameters/montecarlo.spice | 2 +- combined_models/test/baseline_results.txt | 2 +- combined_models/test/devices.txt | 2 +- combined_models/test/essential.txt | 2 +- combined_models/test/output.log | 2 +- combined_models/test/run_spice_tests.py | 2 +- models/all.spice | 6 +- models/corners/ff/specialized_cells.bin.csv | 2 +- models/corners/ff/specialized_cells.spice | 52 +-- models/corners/fs/specialized_cells.bin.csv | 2 +- models/corners/fs/specialized_cells.spice | 52 +-- models/corners/leak/specialized_cells.bin.csv | 2 +- models/corners/leak/specialized_cells.spice | 52 +-- models/corners/sf/specialized_cells.bin.csv | 2 +- models/corners/sf/specialized_cells.spice | 52 +-- models/corners/ss/specialized_cells.bin.csv | 2 +- models/corners/ss/specialized_cells.spice | 52 +-- models/corners/tt/specialized_cells.bin.csv | 2 +- models/corners/tt/specialized_cells.spice | 52 +-- models/corners/wafer/specialized_cells.spice | 56 +-- models/parameters/invariant.spice | 54 +-- models/parameters/montecarlo.spice | 12 +- 38 files changed, 766 insertions(+), 751 deletions(-) create mode 100644 cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch.pm3.spice rename cells/{special_pfet_pass/sky130_fd_pr__special_pfet_pass__mismatch.corner.spice => special_pfet_latch/sky130_fd_pr__special_pfet_latch__mismatch.corner.spice} (63%) rename cells/{special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__iv.data => special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__iv.data} (100%) rename cells/{special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__pfet_vth.spice => special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__pfet_vth.spice} (82%) rename cells/{special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_ids_v_vds.svg => special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_ids_v_vds.svg} (99%) rename cells/{special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_ids_v_vgs.svg => special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_ids_v_vgs.svg} (99%) create mode 100644 cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_results.json delete mode 100644 cells/special_pfet_pass/sky130_fd_pr__special_pfet_pass.pm3.spice delete mode 100644 cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_results.json diff --git a/cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch.pm3.spice b/cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch.pm3.spice new file mode 100644 index 00000000..1f44a74a --- /dev/null +++ b/cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch.pm3.spice @@ -0,0 +1,351 @@ +* Copyright 2020 The SkyWater PDK Authors +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* https://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. + +* SKY130 Spice File. +.param sky130_fd_pr__special_pfet_latch__tox_slope_spectre = 0.0 +.param sky130_fd_pr__special_pfet_latch__vth0_slope_spectre = 0.0 +.param sky130_fd_pr__special_pfet_latch__voff_slope_spectre = 0.0 +.param sky130_fd_pr__special_pfet_latch__nfactor_slope_spectre = 0.0 +* statistics { +* process { +* } +* mismatch { +* vary sky130_fd_pr__special_pfet_latch__tox_slope_spectre dist=gauss std = 1.0 +* vary sky130_fd_pr__special_pfet_latch__vth0_slope_spectre dist=gauss std = 1.0 +* vary sky130_fd_pr__special_pfet_latch__voff_slope_spectre dist=gauss std = 1.0 +* vary sky130_fd_pr__special_pfet_latch__nfactor_slope_spectre dist=gauss std = 1.0 +* } +* } + +.subckt sky130_fd_pr__special_pfet_latch d g s b ++ +.param l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 mult = 1 sa = 0 sb = 0 sd = 0.0 +msky130_fd_pr__special_pfet_latch d g s b sky130_fd_pr__special_pfet_latch__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} +.model sky130_fd_pr__special_pfet_latch__model.0 pmos ++ lmin = 1.495e-007 lmax = 1.505e-007 wmin = 1.395e-007 wmax = 1.405e-7 ++ level = 49.0 ++ ++ tnom = 30.0 ++ version = 3.2 ++ tox = {4.214e-009*sky130_fd_pr__special_pfet_latch__tox_mult+sky130_fd_pr__special_pfet_latch__tox_slope_spectre*(4.214e-09*sky130_fd_pr__special_pfet_latch__tox_mult*(sky130_fd_pr__special_pfet_latch__tox_slope/sqrt(l*w*mult)))} ++ toxm = 4.214e-9 ++ xj = 1.15e-7 ++ nch = 7.919257e+17 ++ lln = 1.0 ++ lwn = 1.0 ++ wln = 1.0 ++ wwn = 1.0 ++ lint = {0+sky130_fd_pr__special_pfet_latch__lint_diff} ++ ll = 0.0 ++ lw = 0.0 ++ lwl = 0.0 ++ wint = {0+sky130_fd_pr__special_pfet_latch__wint_diff} ++ wl = 0.0 ++ ww = 0.0 ++ wwl = 0.0 ++ mobmod = 1.0 ++ binunit = 2.0 ++ dwg = 0.0 ++ dwb = 0.0 +* Diode Parameters ++ +* + ldif = 0.0 +* + hdif = 0.0 +* + rd = 0.0 +* + rs = 0.0 +* + rsc = 0.0 +* + rdc = 0.0 ++ ++ rsh = 1.0 +* Threshold Voltage Parameters ++ vth0 = {-0.8866+sky130_fd_pr__special_pfet_latch__vth0_diff_0+sky130_fd_pr__special_pfet_latch__vth0_slope_spectre*((sky130_fd_pr__special_pfet_latch__vth0_slope/sqrt(l*w*mult)))} ++ k1 = 0.48313 ++ k2 = {-0.086211+sky130_fd_pr__special_pfet_latch__k2_diff_0} ++ k3 = {0+sky130_fd_pr__special_pfet_latch__k3_diff} ++ dvt0 = {0+sky130_fd_pr__special_pfet_latch__dvt0_diff} ++ dvt1 = 1.0e-10 ++ dvt2 = 0.0 ++ dvt0w = 0.0 ++ dvt1w = 10001.0 ++ dvt2w = 0.0 ++ nlx = 0.0 ++ w0 = 1.0e-10 ++ k3b = 0.0 ++ ngate = 1.0e+23 ++ vfb = -0.3872688 +* Mobility Parameters ++ vsat = {100410+sky130_fd_pr__special_pfet_latch__vsat_diff_0} ++ ua = -1.5724e-9 ++ ub = 1.0206e-18 ++ uc = -2.1234e-11 ++ rdsw = {659.8838+sky130_fd_pr__special_pfet_latch__rdsw_diff_0} ++ prwb = 0.0 ++ prwg = 0.0 ++ wr = 1.0 ++ u0 = {0.0038566+sky130_fd_pr__special_pfet_latch__u0_diff_0} ++ a0 = 1.6572 ++ keta = 0.032965 ++ a1 = 0.0 ++ a2 = 0.4 ++ ags = 0.01944 ++ b0 = 0.0 ++ b1 = 0.0 +* Subthreshold Current Parameters ++ voff = {-0.17082+sky130_fd_pr__special_pfet_latch__voff_diff_0+sky130_fd_pr__special_pfet_latch__voff_slope_spectre*((sky130_fd_pr__special_pfet_latch__voff_slope/sqrt(l*w*mult)))} ++ nfactor = {2+sky130_fd_pr__special_pfet_latch__nfactor_diff_0+sky130_fd_pr__special_pfet_latch__nfactor_slope_spectre*((sky130_fd_pr__special_pfet_latch__nfactor_slope/sqrt(l*w*mult)))} ++ cit = {-0.002+sky130_fd_pr__special_pfet_latch__cit_diff} ++ cdsc = {0+sky130_fd_pr__special_pfet_latch__cdsc_diff} ++ cdscb = {0.0005+sky130_fd_pr__special_pfet_latch__cdscb_diff} ++ cdscd = {0+sky130_fd_pr__special_pfet_latch__cdscd_diff} ++ eta0 = 0.001 ++ etab = 0.0 ++ dsub = 1.0e-10 +* Rout Parameters ++ pclm = 2.4129 ++ pdiblc1 = 0.0 ++ pdiblc2 = 0.023805348 ++ pdiblcb = -0.5 ++ drout = 1.0e-10 ++ pscbe1 = 7.0054e+8 ++ pscbe2 = 1.0e-20 ++ pvag = 0.0 ++ delta = 0.071729 ++ alpha0 = 1.3735e-6 ++ alpha1 = 0.0 ++ beta0 = 23.765 +* Temperature Effects Parameters ++ kt1 = {-0.50219+sky130_fd_pr__special_pfet_latch__kt1_diff_0} ++ kt2 = {-0.048934+sky130_fd_pr__special_pfet_latch__kt2_diff} ++ at = 3000.3 ++ ute = -0.8 ++ ua1 = -4.1272e-11 ++ ub1 = 4.0968e-19 ++ uc1 = 1.2689e-11 ++ kt1l = {0+sky130_fd_pr__special_pfet_latch__kt1l_diff} ++ prt = 0.49191 +* Capacitance Parameters ++ cj = {0.00074079*sky130_fd_pr__special_pfet_latch__ajunction_mult} ++ mj = 0.34629 ++ pb = 0.6587 ++ cjsw = {9.88e-011*sky130_fd_pr__special_pfet_latch__pjunction_mult} ++ mjsw = 0.29781 ++ pbsw = 0.7418 ++ cjswg = 2.3894e-10 ++ mjswg = 0.9274 ++ pbswg = 1.4338 ++ tpb = 0.0020386 ++ tpbsw = 0.001246 ++ tpbswg = 0.0 ++ tcj = 0.0012407 ++ tcjsw = 0.00037357 ++ tcjswg = 2.0e-12 ++ js = 2.1483e-5 ++ jsw = 8.040000000000001e-10 ++ nj = 1.3632 ++ xti = 5.2 ++ cgdo = {1.4045e-010*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgso = {1.4045e-010*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgbo = 0.0 ++ capmod = 3.0 +* + nqsmod = 0.0 ++ elm = 0.0 ++ xpart = 0.0 ++ cgsl = {1.0005e-011*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgdl = {1.0005e-011*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ ckappa = 0.6 ++ cf = 1.2e-11 ++ clc = 1.0e-7 ++ cle = 0.6 ++ dlc = {5.67e-009+sky130_fd_pr__special_pfet_latch__dlc_diff+sky130_fd_pr__special_pfet_latch__dlc_rotweak} ++ dwc = {0+sky130_fd_pr__special_pfet_latch__dwc_diff} ++ vfbcv = -0.14469 ++ acde = 0.401 ++ moin = 18.13 ++ noff = 3.9 ++ voffcv = -0.10701 ++ lwc = 0.0 ++ llc = 0.0 ++ lwlc = 0.0 ++ wlc = 0.0 ++ wwc = 0.0 ++ wwlc = 0.0 +.model sky130_fd_pr__special_pfet_latch__model.1 pmos ++ lmin = 0.245e-007 lmax = 0.805e-007 wmin = 1.395e-007 wmax = 1.405e-7 ++ level = 49.0 ++ ++ tnom = 30.0 ++ version = 3.2 ++ tox = {4.214e-009*sky130_fd_pr__special_pfet_latch__tox_mult} ++ toxm = 4.214e-9 ++ xj = 1.15e-7 ++ nch = 7.919257e+17 ++ lln = 1.0 ++ lwn = 1.0 ++ wln = 1.0 ++ wwn = 1.0 ++ lint = {-2.4825e-8+sky130_fd_pr__special_pfet_latch__lint_diff} ++ ll = 0.0 ++ lw = 0.0 ++ lwl = 0.0 ++ wint = {-5.522e-8+sky130_fd_pr__special_pfet_latch__wint_diff} ++ wl = 0.0 ++ ww = 0.0 ++ wwl = 0.0 ++ mobmod = 1.0 ++ binunit = 2.0 ++ dwg = 0.0 ++ dwb = 0.0 +* Diode Parameters ++ ++ ldif = 0.0 ++ hdif = 0.0 ++ rd = 0.0 ++ rs = 0.0 ++ rsc = 0.0 ++ rdc = 0.0 ++ ++ rsh = 1.0 +* Threshold Voltage Parameters ++ vth0 = {-0.8866+sky130_fd_pr__special_pfet_latch__vth0_diff_0} ++ k1 = 0.48313 ++ k2 = {-0.086211+sky130_fd_pr__special_pfet_latch__k2_diff_0} ++ k3 = {0+sky130_fd_pr__special_pfet_latch__k3_diff} ++ dvt0 = {0+sky130_fd_pr__special_pfet_latch__dvt0_diff} ++ dvt1 = 1.0e-10 ++ dvt2 = 0.0 ++ dvt0w = 0.0 ++ dvt1w = 10001.0 ++ dvt2w = 0.0 ++ nlx = 0.0 ++ w0 = 1.0e-10 ++ k3b = 0.0 ++ ngate = 1.0e+23 ++ vfb = -0.3872688 +* Mobility Parameters ++ vsat = {100410+sky130_fd_pr__special_pfet_latch__vsat_diff_0} ++ ua = -1.5724e-9 ++ ub = 1.0206e-18 ++ uc = -2.1234e-11 ++ rdsw = {659.8838+sky130_fd_pr__special_pfet_latch__rdsw_diff_0} ++ prwb = 0.0 ++ prwg = 0.0 ++ wr = 1.0 ++ u0 = {0.0038566+sky130_fd_pr__special_pfet_latch__u0_diff_0} ++ a0 = 1.6572 ++ keta = 0.032965 ++ a1 = 0.0 ++ a2 = 0.4 ++ ags = 0.01944 ++ b0 = 0.0 ++ b1 = 0.0 +* Subthreshold Current Parameters ++ voff = {-0.17082+sky130_fd_pr__special_pfet_latch__voff_diff_0} ++ nfactor = {2+sky130_fd_pr__special_pfet_latch__nfactor_diff_0} ++ cit = {-0.002+sky130_fd_pr__special_pfet_latch__cit_diff} ++ cdsc = {0+sky130_fd_pr__special_pfet_latch__cdsc_diff} ++ cdscb = {0.0005+sky130_fd_pr__special_pfet_latch__cdscb_diff} ++ cdscd = {0+sky130_fd_pr__special_pfet_latch__cdscd_diff} ++ eta0 = 0.001 ++ etab = 0.0 ++ dsub = 1.0e-10 +* Rout Parameters ++ pclm = 2.4129 ++ pdiblc1 = 0.0 ++ pdiblc2 = 0.023805348 ++ pdiblcb = -0.5 ++ drout = 1.0e-10 ++ pscbe1 = 7.0054e+8 ++ pscbe2 = 1.0e-20 ++ pvag = 0.0 ++ delta = 0.071729 ++ alpha0 = 1.3735e-6 ++ alpha1 = 0.0 ++ beta0 = 23.765 +* Temperature Effects Parameters ++ kt1 = {-0.50219+sky130_fd_pr__special_pfet_latch__kt1_diff_0} ++ kt2 = {-0.048934+sky130_fd_pr__special_pfet_latch__kt2_diff} ++ at = 3000.3 ++ ute = -0.8 ++ ua1 = -4.1272e-11 ++ ub1 = 4.0968e-19 ++ uc1 = 1.2689e-11 ++ kt1l = {0+sky130_fd_pr__special_pfet_latch__kt1l_diff} ++ prt = 0.49191 +* Capacitance Parameters ++ cj = {0.00074079*sky130_fd_pr__special_pfet_latch__ajunction_mult} ++ mj = 0.34629 ++ pb = 0.6587 ++ cjsw = {9.88e-011*sky130_fd_pr__special_pfet_latch__pjunction_mult} ++ mjsw = 0.29781 ++ pbsw = 0.7418 ++ cjswg = 2.3894e-10 ++ mjswg = 0.9274 ++ pbswg = 1.4338 ++ tpb = 0.0020386 ++ tpbsw = 0.001246 ++ tpbswg = 0.0 ++ tcj = 0.0012407 ++ tcjsw = 0.00037357 ++ tcjswg = 2.0e-12 ++ js = 2.1483e-5 ++ jsw = 8.040000000000001e-10 ++ nj = 1.3632 ++ xti = 5.2 ++ cgdo = {1.4045e-010*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgso = {1.4045e-010*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgbo = 0.0 ++ capmod = 3.0 +* + nqsmod = 0.0 ++ elm = 0.0 ++ xpart = 0.0 ++ cgsl = {1.0005e-011*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ cgdl = {1.0005e-011*sky130_fd_pr__special_pfet_latch__overlap_mult} ++ ckappa = 0.6 ++ cf = 1.2e-11 ++ clc = 1.0e-7 ++ cle = 0.6 ++ dlc = {-2.4825e-8+sky130_fd_pr__special_pfet_latch__dlc_diff+sky130_fd_pr__special_pfet_latch__dlc_rotweak} ++ dwc = {3.622e-8+sky130_fd_pr__special_pfet_latch__dwc_diff} ++ vfbcv = -0.14469 ++ acde = 0.401 ++ moin = 18.13 ++ noff = 3.9 ++ voffcv = -0.10701 ++ lwc = 0.0 ++ llc = 0.0 ++ lwlc = 0.0 ++ wlc = 0.0 ++ wwc = 0.0 ++ wwlc = 0.0 ++ noimod = 2.0 ++ noia = {5.3000000E+40*1.6e-21} ++ noib = {5.6400000E+22*1.6e-21} ++ noic = {6.0700000E+07*1.6e-21} ++ em = 4.1000000e+7 ++ ef = 0.88 +.ends sky130_fd_pr__special_pfet_latch + +* NOTE: "special_pfet_pass" was incorrect nomenclature and has been fixed to +* "special_pfet_latch". The original incorrect name is kept here to prevent +* breaking legacy netlists. ---Tim 7/16/2023 + +.subckt sky130_fd_pr__special_pfet_pass d g s b +.param l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 mult = 1 ++ sa = 0 sb = 0 sd = 0.0 +xsky130_fd_pr__special_pfet_pass d g s b ++ l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} ++ nrd = {nrd} nrs = {nrs} mult = {mult} sa = {sa} sb = {sb} sd = {sd} ++ sky130_fd_pr__special_pfet_latch +.ends sky130_fd_pr__special_pfet_pass + diff --git a/cells/special_pfet_pass/sky130_fd_pr__special_pfet_pass__mismatch.corner.spice b/cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch__mismatch.corner.spice similarity index 63% rename from cells/special_pfet_pass/sky130_fd_pr__special_pfet_pass__mismatch.corner.spice rename to cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch__mismatch.corner.spice index 1dccb714..8a992ed7 100644 --- a/cells/special_pfet_pass/sky130_fd_pr__special_pfet_pass__mismatch.corner.spice +++ b/cells/special_pfet_latch/sky130_fd_pr__special_pfet_latch__mismatch.corner.spice @@ -13,9 +13,9 @@ * limitations under the License. * SKY130 Spice File. -.param sky130_fd_pr__special_pfet_pass__tox_slope=5.567e-03 -.param sky130_fd_pr__special_pfet_pass__vth0_slope=5.567e-03 -.param sky130_fd_pr__special_pfet_pass__nfactor_slope=0.0 -.param sky130_fd_pr__special_pfet_pass__voff_slope=0.0 -.param sky130_fd_pr__special_pfet_pass__lint_slope=0.0 -.param sky130_fd_pr__special_pfet_pass__wint_slope=0.0 +.param sky130_fd_pr__special_pfet_latch__tox_slope=5.567e-03 +.param sky130_fd_pr__special_pfet_latch__vth0_slope=5.567e-03 +.param sky130_fd_pr__special_pfet_latch__nfactor_slope=0.0 +.param sky130_fd_pr__special_pfet_latch__voff_slope=0.0 +.param sky130_fd_pr__special_pfet_latch__lint_slope=0.0 +.param sky130_fd_pr__special_pfet_latch__wint_slope=0.0 diff --git a/cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__iv.data b/cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__iv.data similarity index 100% rename from cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__iv.data rename to cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__iv.data diff --git a/cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__pfet_vth.spice b/cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__pfet_vth.spice similarity index 82% rename from cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__pfet_vth.spice rename to cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__pfet_vth.spice index ef7cc9d7..a316aa69 100644 --- a/cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass__pfet_vth.spice +++ b/cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch__pfet_vth.spice @@ -5,7 +5,7 @@ * Gate bias Rg 1 2 680 -X1 3 2 5 5 sky130_fd_pr__special_pfet_pass W=0.14 L=0.15 M=1 +X1 3 2 5 5 sky130_fd_pr__special_pfet_latch W=0.14 L=0.15 M=1 Rd 3 4 100 * DC source for current measure @@ -18,7 +18,7 @@ Vdd 5 0 DC 3.3V dc Vdd 0 1.8 0.01 Vgb 0 1.2 0.01 let vgs = V(5) - V(1) let vds = V(5) - V(3) -wrdata sky130_fd_pr__special_pfet_pass__iv.data Vid#branch vgs vds +wrdata sky130_fd_pr__special_pfet_latch__iv.data Vid#branch vgs vds * Sweep Vgs from 0 to 1.2V dc Vgb 0 1.2 0.01 diff --git a/cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_ids_v_vds.svg b/cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_ids_v_vds.svg similarity index 99% rename from cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_ids_v_vds.svg rename to cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_ids_v_vds.svg index fb1432de..a1ddaddc 100644 --- a/cells/special_pfet_pass/tests/sky130_fd_pr__special_pfet_pass_ids_v_vds.svg +++ b/cells/special_pfet_latch/tests/sky130_fd_pr__special_pfet_latch_ids_v_vds.svg @@ -1271,7 +1271,7 @@ z - + - +