[Magic-dev] Problems extracting parasitic resistors with Magic

Graham Petley graham.petley at vlsitechnology.org
Sun Dec 16 12:51:21 EST 2007


Hallo,

   Is anyone using the resistance extraction capabilities of Magic for
individual cell extraction? I cannot get it to work. My flow is in the script
below, where the commented parts should enable extracted resistors. I am using
my own tech file. The layout has explicitly drawn pwell. For the inverter
example, both the nwell and pwell are connected to vdd and vss with substrate
contacts.
   Below that are the results with and without resistance extraction for a
simple inverter.

   There are at least two problems with the resistance extracted spice deck.
1/ The nmos drain is connected to floating node vss.t0
2/ The nmos area and perimeter values haven't been extracted.
 
   I'm using version 7.5.95. Any help is appreciated.

Best regards, Graham Petley

magic -T../../etc/pharosc -dnull -noconsole <<EOF >/dev/null 2>&1
;load $1
# Delete well otherwise transistor substrates might not be connected to vdd/vss
;select cell
;select area well
;delete
# 1) Extract caps only to
#    cell.ext
;extract style pharosc200-55nm
;extract do capacitance
;extract do coupling
;extract do adjust
;extract do resistance
;extract all
# STEPS 2-4 FOR EXTRACTED RESISTANCES DOESN'T WORK
# 2) Convert extracted file to sim format to
#    cell.sim and cell.nodes
#;ext2sim labels on
#;ext2sim cthresh 0.001
#;ext2sim rthresh 1
#;ext2sim merge none
#;ext2sim extresist off
#;ext2sim -y 3
#    cell.ext,sim and cell,ext.nodes
#;ext2sim extresist on
#;ext2sim -y 3
# 3) Patch the extraction .ext files with detailed route resistance information
#    cell.res.lump and cell.res.ext
#;extresist tolerance 1000
#;extresist simplify on
#;extresist extout on
#;extresist lumped on
#;extresist all
# 4) Convert to spice format
#;ext2spice extresist on
#;ext2spice resistor tee on
#
;ext2spice cthresh 0.001
;ext2spice rthresh 1
;ext2spice merge none
;ext2spice -f spice3 -y 3 -d
;quit
EOF

   RESULT WITH R EXTRACTION

M1000 vdd a z.t0 vdd pmos w=0.99u l=0.11u
+ ad=0.553575p pd=3.3u as=0p ps=0u 
M1001 vss.t0 a z.t1 vss nmos w=0.495u l=0.11u
+ ad=0p pd=0u as=0p ps=0u 
C0 vdd a 0.015fF
R0 z.t1 z.t0 3
R1 z.n0 z.t1 3
C1 a gnd! 0.021fF **FLOATING
C2 vdd gnd! 0.016fF
C3 vss.t0 gnd! 0.086fF
C4 z.t0 gnd! 0.089fF
C5 z.t1 gnd! 0.114fF
C6 z.n0 gnd! 0.006fF **FLOATING

   RESULT WITHOUT R EXTRACTION

M1000 vdd a z vdd pmos w=0.99u l=0.11u
+ ad=0.553575p pd=3.3u as=0.3509p ps=2.75u 
M1001 vss a z vss nmos w=0.495u l=0.11u
+ ad=0.299475p pd=2.2u as=0.172425p ps=1.76u 
C0 vdd a 0.015fF
C1 vdd z 0.040fF
C2 a z 0.124fF
C3 a vss 0.034fF
C4 z vss 0.036fF
C5 vss gnd! 0.016fF
C6 z gnd! 0.009fF
C7 a gnd! 0.021fF **FLOATING
C8 vdd gnd! 0.016fF

end of message.



More information about the magic-dev mailing list