Corrected the patch file for the PNP transistor model, which needed to be updated after changing the monte carlo switch parameter name.
diff --git a/sky130/Makefile.in b/sky130/Makefile.in index 2d4b404..2072b50 100644 --- a/sky130/Makefile.in +++ b/sky130/Makefile.in
@@ -738,11 +738,6 @@ patch -p1 -f -d ${STAGING_PATH}/${SKY130A} \ < custom/patches/sky130_fd_pr_2.patch \ 2>&1 | tee -a ${SKY130A}_make.log || true - # Custom: Patch the models to remove the substrate pin from the PNP - # device, which has no independent substrate pin (collector=substrate) - patch -p4 -f -d ${STAGING_PATH}/${SKY130A}/libs.ref/${PR_SPICE} \ - < custom/patches/sky130_fd_pr_3.patch \ - 2>&1 | tee -a ${SKY130A}_make.log || true # Custom: Patch the ngspice models to add the HV diffusion resistor subcircuits patch -p2 -f -d ${STAGING_PATH}/${SKY130A}/libs.tech/ngspice \ < custom/patches/sky130_fd_pr_5.patch \ @@ -756,6 +751,11 @@ 2>&1 | tee -a ${SKY130A}_make.log || true ./custom/scripts/process_params.py \ 2>&1 | tee -a ${SKY130A}_make.log || true + # Custom: Patch the models to remove the substrate pin from the PNP + # device, which has no independent substrate pin (collector=substrate) + patch -p4 -f -d ${STAGING_PATH}/${SKY130A}/libs.ref/${PR_SPICE} \ + < custom/patches/sky130_fd_pr_3.patch \ + 2>&1 | tee -a ${SKY130A}_make.log || true # Custom: Add "mc" section to sky130.lib.spice head -n-1 ${STAGING_PATH}/${SKY130A}/libs.tech/ngspice/sky130.lib.spice \ | ${SED} -e '/^\.lib/a.param mc_pr_switch=0' \
diff --git a/sky130/custom/patches/sky130_fd_pr_3.patch b/sky130/custom/patches/sky130_fd_pr_3.patch index 2ea440c..ec6a262 100644 --- a/sky130/custom/patches/sky130_fd_pr_3.patch +++ b/sky130/custom/patches/sky130_fd_pr_3.patch
@@ -9,8 +9,8 @@ +.subckt sky130_fd_pr__pnp_05v5_W0p68L0p68 c b e + .param mult = 1.0 - + sky130_fd_pr__pnp_05v5_W0p68L0p68__bf_mm = {(19.35*dkbfpp*MC_SWITCH*AGAUSS(0,0.05537,1)/sqrt(mult))} - + sky130_fd_pr__pnp_05v5_W0p68L0p68__is_mm = {(1.5075e-018*dkispp*MC_SWITCH*AGAUSS(0,0.01662,1)/sqrt(mult))} + + sky130_fd_pr__pnp_05v5_W0p68L0p68__bf_mm = {(19.35*dkbfpp*MC_MM_SWITCH*AGAUSS(0,0.05537,1)/sqrt(mult))} + + sky130_fd_pr__pnp_05v5_W0p68L0p68__is_mm = {(1.5075e-018*dkispp*MC_MM_SWITCH*AGAUSS(0,0.01662,1)/sqrt(mult))} -qsky130_fd_pr__pnp_05v5_W0p68L0p68 c b e s sky130_fd_pr__pnp_05v5_W0p68L0p68__model +qsky130_fd_pr__pnp_05v5_W0p68L0p68 c b e c sky130_fd_pr__pnp_05v5_W0p68L0p68__model .model sky130_fd_pr__pnp_05v5_W0p68L0p68__model pnp level = 1.0