Complete implementation of monte carlo simulation. Enables the
scripts that convert the statistics blocks in the model files
into ngspice-compatible syntax, both for mismatch parameters
(inside the model definitions) and process variation (in .param
lines outside the model definitions). Added new block name "mc"
for use with the ".lib" command to enable the models with
process variation instead of a corner model. Use of ngspice
now requires that every testbench set ".param mc_mm_switch=0|1"
to disble or enable the parameter mismatch, since the mismatch
setting is independent of the corner model used.
diff --git a/sky130/custom/scripts/rename_cells.py b/sky130/custom/scripts/rename_cells.py
index 8057ad3..5692c41 100755
--- a/sky130/custom/scripts/rename_cells.py
+++ b/sky130/custom/scripts/rename_cells.py
@@ -33,7 +33,7 @@
for line in spilines:
# These substitutions are for files originating from cells/*/*.spice
- fixedline = re.sub('\.\./\.\./models/', '../../libs.tech/ngspice/', line)
+ fixedline = re.sub('\.\./\.\./models/', '../../../libs.tech/ngspice/', line)
fixedline = re.sub('\.\./[^/\.]+/', '', fixedline)
fixedlines.append(fixedline)