Aleksandar Pajkanovic
10/24/2023, 8:30 PMAleksandar Pajkanovic
10/24/2023, 8:37 PMngspice
complains and it won't do a reasonable simulation:
Warning: Model issue on line 46 :
.model sky130_fd_pr__diode_pw2nd_05v5 d level=3.0 tlevc=1.0 area=1.0e+12 ...
unrecognized parameter (vb) - ignored
unrecognized parameter (gap1) - ignored
unrecognized parameter (gap2) - ignored
unrecognized parameter (xw) - ignored
Doing analysis at TEMP = 27.000000 and TNOM = 27.000000
Warning: IKK too small - model effect disabled!
That leaves us with the situation where we have, say, a sine of +/- 20 V at the input - and at the output, the very same thing.
Obviously, we do have the path to models included (since ngspice actually does demonstrate it finds the model clearly), so model is there - hence, what else is wrong here?
ngspice is version 41.
Here is the complete netlist, as well:
**.subckt tb_esd_cell_tran
x1 net1 pad gate GND esd_cell
V1 net1 GND 3.3
V2 pad GND sine(0 1k 1k 0 0 0)
R1 gate GND 100MEG m=1
**** begin user architecture code
.lib "/usr/share/pdk/sky130A/libs.tech/ngspice/sky130.lib.spice" tt
.param mc_mm_switch=0
.param mc_pr_switch=0
*** ANALYSIS TO DO
.tran 10u 5m
.save pad gate
.control
set wr_vecnames
set wr_singlescale
run
******** results filename ************ nodes to write
wrdata $DEV_PATH/res/tb_esd_cell_tran.res pad gate
.endc
**** end user architecture code
**.ends
* expanding symbol: esd_cell.sym # of pins=4
* sym_path: /opt/uniccass/dev/esd_cell/tb/esd_cell.sym
* sch_path: /opt/uniccass/dev/esd_cell/tb/esd_cell.sch
.subckt esd_cell vsup pad gate vgnd
*.iopin vsup
*.iopin pad
*.iopin vgnd
*.iopin gate
D1 pad vsup sky130_fd_pr__diode_pd2nw_11v0 area=10
D2 vgnd pad sky130_fd_pr__diode_pw2nd_11v0 area=10
D3 gate vsup sky130_fd_pr__diode_pd2nw_05v5 area=0.203
D4 vgnd gate sky130_fd_pr__diode_pw2nd_05v5 area=0.203
XR1 gate pad vgnd sky130_fd_pr__res_high_po W=0.35 L=10 mult=1 m=1
D5 pad vsup sky130_fd_pr__diode_pd2nw_11v0 area=10
D6 pad vsup sky130_fd_pr__diode_pd2nw_11v0 area=10
D7 pad vsup sky130_fd_pr__diode_pd2nw_11v0 area=10
D8 pad vsup sky130_fd_pr__diode_pd2nw_11v0 area=10
D9 vgnd pad sky130_fd_pr__diode_pw2nd_11v0 area=10
D10 vgnd pad sky130_fd_pr__diode_pw2nd_11v0 area=10
D11 vgnd pad sky130_fd_pr__diode_pw2nd_11v0 area=10
D12 vgnd pad sky130_fd_pr__diode_pw2nd_11v0 area=10
.ends
.GLOBAL GND
** flattened .save nodes
.save pad gate
.end
Aleksandar Pajkanovic
10/24/2023, 8:46 PMAleksandar Pajkanovic
10/24/2023, 8:52 PMtest_nmos
works fine:Stefan Schippers
10/24/2023, 9:42 PMAleksandar Pajkanovic
10/24/2023, 10:32 PMMitch Bailey
10/24/2023, 11:46 PMD0 VNB DIODE sky130_fd_pr__diode_pw2nd_05v5 pj=2.64e+06 area=4.347e+11
As you can see, the parameters are in unexpected units (pm?). Will simulation work if you scale the diode parameters accordingly?
For more detailed discussions, search for diode parameters
in slack.Aleksandar Pajkanovic
10/25/2023, 6:20 AMarea=10e+18
everything seems in order - simulation results attachedAleksandar Pajkanovic
10/25/2023, 6:21 AMAleksandar Pajkanovic
10/25/2023, 6:23 AMStefan Schippers
10/25/2023, 11:18 AMdiode.sym
and lvsdiode.sym
already have a default area of AREA=1e12
(and perimeter PJ=4e6
). If you place a new diode in a schematic these will be the instance values (you can of course change these). I also came some time ago to the same conclusion that AREA=1e12 gives a reasonable I-V DC characteristic for -maybe- a 1um x 1um diode.
---HOWEVER---
Simulate this same diode in transient analysis and it behaves as an open circuit.
Applying a transient current waveform of +/-10uA leads the cathode voltage to +/-10GV. This means there is only the simulator default GMIN (1e-12 mho) across the diode terminals.Mitch Bailey
10/25/2023, 12:13 PMAleksandar Pajkanovic
10/25/2023, 12:15 PMStefan Schippers
10/25/2023, 12:44 PMTim Edwards
10/25/2023, 1:26 PMStefan Schippers
10/25/2023, 1:33 PMStefan Schippers
10/25/2023, 1:37 PMStefan Schippers
10/25/2023, 1:53 PMAleksandar Pajkanovic
10/25/2023, 2:38 PMAleksandar Pajkanovic
10/25/2023, 2:38 PMStefan Schippers
10/25/2023, 4:06 PMAleksandar Pajkanovic
10/27/2023, 7:45 AMHolger Vogt
10/27/2023, 12:08 PMHolger Vogt
10/27/2023, 12:09 PMHolger Vogt
10/27/2023, 12:12 PMoption SCALE= 1e-06
We probably have to check if the areas are calculated correctly (given: 2, calculated 2e-12).Aleksandar Pajkanovic
10/30/2023, 4:50 PMLinen is a search-engine friendly community platform. We offer integrations with existing Slack/Discord communities and make those conversations Google-searchable.
Powered by