Hi, I tried to extract a two-finger pmos with and without the merge option in ext2spice command to see the difference. I find that the pmos will be extracted into two independent devices when no merge option added, just as expected, but the weird thing is the pin order of the extracted devices are different. Since they are just two fingers of the same pmos, the pin order should be exactly the same.
X0 *vdd A B vdd* sky130_fd_pr__pfet_01v8 ....
X2 *B A vdd vdd* sky130_fd_pr__pfet_01v8 ....
These are two fingers of the same pmos, whose gate is connected to A, drain to B, source and bulk to vdd.
t
Tim Edwards
06/19/2021, 2:02 PM
It is not possible to distinguish a gate source from a drain in a symmetric device, nor is it necessary. Eventually I hope to get magic to distinguish between fingered devices and multiple devices.
h
Hongzhe Jiang
06/20/2021, 4:26 AM
But there will be a problem with lvs. If I use the
ext2spice merge conservative
command to merge the finger, the pin order of the output netlist will be
X0 vdd A B vdd
, where the source and drain are flipped. Surely it won't have any impact on the function of the circuit, but that is considered as a mismatch between the schematic and layout, thus failing the lvs.... Is there a good way to do this?
m
Mitch Bailey
06/21/2021, 9:13 AM
@Tim Edwards Just to clarify, I think you intended to say that it is not possible to distinguish a source from a drain on a standard cmos device.
@Hongzhe Jiang I believe the netgen setup file specifies that the source and drain nodes terminals are interchangeable, so it should pass LVS.
t
Tim Edwards
06/21/2021, 12:42 PM
@Mitch Bailey: Whoops, yes, I need to pay more attention to what I'm typing.
Linen is a search-engine friendly community platform. We offer integrations with existing Slack/Discord communities and make those conversations Google-searchable.