Tim Edwards
04/30/2021, 1:04 AM<cellname>
has a namespace and device name. For starters, magic::gencell sky130::sky130_fd_pr__nfet_01v8
will give you an interactive window to enter parameters. That is probably not what you want. What you want is magic::gencell sky130::sky130_fd_pr__nfet_01v8 <instance> -spice <param> <value> ...
, for example, magic::gencell sky130::sky130_fd_pr__nfet_01v8 xm0 -spice W 2.0 L 0.18
. There is a Tcl scripted routine in the magic source code called toolkit.tcl
and it has a routine in it called magic::netlist_to_layout
which does more or less what you are attempting to do, except in a trivial way. It reads a SPICE netlist and creates a layout, seeding it with components from the netlist and generating subcircuits and ports. But no attempt to arrange anything; all devices are just placed end-to-end in a row. This procedure can be invoked from the Magic GUI as File->Import SPICE
(when using the setup files installed by open_pdks).Weston Braun
05/03/2021, 7:21 PMWeston Braun
05/03/2021, 7:21 PMmagic::gencell sky130::sky130_fd_pr__nfet_01v8 xm15 -spice W 5 L 0.5 nf 5 m 1 diffcov 100 polycov 100 poverlap 100 doverlap 100 topc 1 botc 0 guard 0 full_metal 0
still gives a guard ring and bottom gate contactsTim Edwards
05/03/2021, 7:27 PMTim Edwards
05/03/2021, 7:30 PMWeston Braun
05/03/2021, 7:30 PMWeston Braun
05/03/2021, 7:31 PMTim Edwards
05/03/2021, 7:31 PM