Manuel M
04/14/2023, 10:15 AMsky130_fd_pr__cap_var_lvt
between the xschem netlist and the extracted magic netlist. The error message disappears when VM=1
is removed manually from the xschem netlist. Could it be that this is the same problem as in the linked thread? https://open-source-silicon.slack.com/archives/C016YSAP6TZ/p1663579046015189?thread_ts=1663541773.191169&cid=C016YSAP6TZ ?Manuel M
04/14/2023, 10:18 AMXC2 nmoscap_top nmoscap_bot pwell sky130_fd_pr__cap_var_lvt W=16.4 L=16.0 VM=1 m=1
magic netlist:
X49 VDD VSS VSS sky130_fd_pr__cap_var_lvt w=1.64e+07u l=1.6e+07u
Stefan Schippers
04/14/2023, 10:52 AM* SKY130 Spice File.
.subckt sky130_fd_pr__cap_var_lvt c0 c1 b w=5 l=0.5 *vm=1*
+ wc='w*1' lc='l*1'
...
...
you see there is a vm
parameter.
This parameter has the same meaning as the mult
parameter for mos transistors, it is the device multiplicity, it is assigned to m=...
in the spice netlist as well as vm=...
. The vm
alias is used to calculate device area for mismatch estimation, since the m
multiplicity parameter is not available from inside the spice models (@Tim Edwards may confirm ).
However I will fix that, xschem has the ability to differentiate netlists for simulation and for LVS. This is already done for mos transistors. Will push a correction so the vm
parameter will not be in netlists for LVS comparison.
I have fixed also mim caps and vpp perpendicular caps
You can get the updated symbols (if you don't want to reinstall open_pdks) here.
Personal rant:
I don't know why model card developers are so inconsistent with parameter naming. Why not use mult for multiplicity for capacitor as was done for mosfets.
This is not specific to skywater models, this is a problem common to all pdks used in all companies I have worked with. I really can't understand the reason.Manuel M
04/14/2023, 11:46 AMStefan Schippers
04/14/2023, 2:17 PMSimulation-> LVS netlist: top level is a subckt,
that will enable the LVS specific quirks in the netlist generation.