<@U016EM8L91B> We were failing LVS (<@U048Q65JF6E>...
# analog-design
j
@Tim Edwards We were failing LVS (@Thomas Figura @Emmi Wyttenbach) today due to the following error. We have four ESD protection diodes in our circuit. In schematic, there is no "pj" parameter. However, the spice netlist that is generated from Magic has a "pj" parameter for the diodes. This lack of "pj" parameter in the Xschem generated netlist caused an LVS issue. We removed the "pj" parameter manually from the Magic LVS netlist and we passed LVS. Is this right? Or are we missing some parameter?
t
Technically, the schematic should provide both area and perimeter (pj) for the diode devices. If not, then you can work around it either the way you did, or by creating a modified setup file that ignores the "pj" parameter for diodes.
In other words, what you did is perfectly fine, but if it is a pain to do manual edits on a regular basis, then either modifying the LVS setup file to suit your needs or modifying the xschem diode symbol is a more permanent solution (assuming a square diode, the schematic can generate the perimeter value from an expression 4*sqrt(area)). You can also just waive property errors if you have looked through them and understand that they are all false positive errors. Note that you are getting values like
area=400
for the diode area extracted from layout, which is going to cause property errors regardless of what you do about
pj
. This value (which comes from incorrect assumptions about how the SkyWater 1e-6 scalefactor gets applied in the case of model level 3 diodes) is from an earlier version of the PDK and has since been corrected (after a long discussion with Stefan Schippers about how those values operate in ngspice simulation). You probably want to update the PDK so that the extracted layout produces correct area and perimeter values (which are in bizarre units, as you can see from the schematic values, which are actually correct).
m
@Jon Ho You can catch up on the discussion here. I think the bottom line is that the new pdk should include xschem diode models with the
pj
parameters.
s
@Jon Ho (cc @Tim Edwards)Looks like your
xschem_sky130
installation (normally pulled in by open_pdks during installation) is rather old. The pj parameter was added for diodes in September 2022.
Copy code
commit 9da27783b3166b76f5e494df83567f1f9766454a
Author: Stefan Frederik <stefan.schippers@gmail.com>
Date:   Wed Sep 28 19:17:51 2022 +0200

    add pj (perimeter) in diodes, show area and pj next to symbol
j
Thank you very much for the help! @Stefan Schippers @Tim Edwards.