RTimothyEdwards / open_pdks

PDK installer for open-source EDA tools and toolchains. Distributed with setups for the SkyWater 130nm and Global Foundries 180nm open processes.
http://opencircuitdesign.com/open_pdks
Apache License 2.0
292 stars 86 forks source link

SKY130 resistors do not cause thermal noise in ngspice #343

Open hpretl opened 1 year ago

hpretl commented 1 year ago

See https://sourceforge.net/p/ngspice/bugs/614

By default, ngspice does not simulate thermal noise for behavioral resistors, which are used in the SKY130 model files. Thermal noise can be enabled by adding the parameter noisy=1 to the respective resistors. This behavior is described in the ngspice manual, chapter 3.3.4.

As proper thermal noise modelling of resistors is essential for analog/mixed-signal circuit design, please patch the model files accordingly.

RTimothyEdwards commented 1 year ago

Which resistor models does this affect?

hpretl commented 1 year ago

At least res_high_po, res_high_po_[0p35|0.69|1p41|2p85|5p73], res_xhigh_po, res_xhigh_po_[0p35|0p69|1p41|2p85|5p73]. Maybe more.

hpretl commented 1 year ago

I fixed this on my end, see https://github.com/iic-jku/iic-osic-tools/commit/beaaa438b7d4b58b165106e8153fd94edb20187b.

It would still be good to add the noisy=1 flag to behavioural resistors in the SKY130 model files.