Hi <@U016EM8L91B>, I can't seem to get the resista...
# magic
t
Hi @User, I can't seem to get the resistance part of PEX to work. I have a simple test case consisting of two resistors connected in series by a long thin segment of
locali
. The poly resistors extract fine but the long
locali
connection doesn't produce a resistor element as I expect it to. I get lots of pcaps though just no `R`s. I've attached my
.mag
. The extraction script im using is as follows. I copied it from a post you made describing the method we should use to extract parasitic `R`s.
Copy code
load $MAG_CELL
flatten ${CELL_NAME}_flat
load ${CELL_NAME}_flat
extract all
ext2sim labels on
ext2sim
extresist tolerance 10
extresist
ext2spice lvs
ext2spice cthresh 0.01
ext2spice extresist on
ext2spice -o $OUTPUT_FILE_NAME
exit
And this is the resulting netlist:
Copy code
* NGSPICE file created from pextest_top_flat.ext - technology: sky130A


* Top level circuit pextest_top_flat

X0 a_2_0# a_2_532# VSUBS sky130_fd_pr__res_high_po_0p35 l=500000u
X1 a_2_0# a_2714_494# VSUBS sky130_fd_pr__res_high_po_0p35 l=500000u
C0 a_2_0# a_2_532# 0.04fF
C1 a_2_0# a_2714_494# 0.04fF
C2 a_2714_494# VSUBS 0.35fF
C3 a_2_0# VSUBS 2.23fF
C4 a_2_532# VSUBS 0.35fF
.end
t
Whoops. Running all the commands by hand instead of through the script shows that "extresist" wants the cursor box in the layout. That can't be a necessity, but that's what it wants. So just add the command "box values 0 0 0 0" after the "load" command and it should be okay. Fixing that looks good---I get one resistor between the two resistor devices, with R=874 ohms. Doing a quick calculation, the LI line is ~13um x 0.19um = ~68 squares at 12.2 ohms/square = 834 ohms, which is in the ballpark. The overestimate is due to the fact that extresist assumes the device terminal resistance is not included in the model, which would be correct for a transistor source/drain, but in this case the terminal resistance is part of the model, so I'll have to think about adding some additional information in the tech file to convey that to extresist. extresist already has a problem with extracting capacitors which I need to fix. The methods were all designed for transistors and I am just getting around to updating them for the numerous devices that magic knows how to extract now.
t
Hi @Tim Edwards, I've finally been able to do as you suggested and thank you it's now adding the resistors. Can you remind me what spice directive you use to weekly tie all nodes to ground to solve the "floating net" problem?
t
.option RSHUNT=1e20
(or some ridiculously large value).
t
Cheers, Tim