Mitch Bailey
02/24/2021, 5:15 AMsky130_ef_io__com_bus_slice_10um
sky130_ef_io__com_bus_slice_1um
sky130_ef_io__com_bus_slice_20um
sky130_ef_io__com_bus_slice_5um
sky130_ef_io__connect_vcchib_vccd_and_vswitch_vddio_slice_20um
sky130_ef_io__corner_pad
sky130_ef_io__disconnect_vccd_slice_5um
sky130_ef_io__disconnect_vdda_slice_5um
sky130_ef_io__gpiov2_pad_wrapped
sky130_ef_io__vccd_lvc_clamped2_pad
sky130_ef_io__vccd_lvc_clamped_pad
sky130_ef_io__vdda_hvc_clamped_pad
sky130_ef_io__vddio_hvc_clamped_pad
sky130_ef_io__vssa_hvc_clamped_pad
sky130_ef_io__vssd_lvc_clamped2_pad
sky130_ef_io__vssd_lvc_clamped_pad
sky130_ef_io__vssio_hvc_clamped_pad
Ahmed Ghazy
02/24/2021, 11:32 AMAhmed Ghazy
02/24/2021, 11:33 AMAhmed Ghazy
02/24/2021, 11:33 AMsky130_ef_io__gpiov2_pad_wrapped
is the same as sky130_ef_io__gpiov2_pad
.Ahmed Ghazy
02/24/2021, 12:14 PMMitch Bailey
02/24/2021, 12:31 PMsky130_fd_io__top_gpiov2
sky130_fd_io__top_ground_hvc_wpad
sky130_fd_io__top_ground_lvc_wpad
sky130_fd_io__top_power_hvc_wpadv2
sky130_fd_io__top_power_lvc_wpad
I found the verilog, gds, etc. but no spice/cdl.Ahmed Ghazy
02/25/2021, 1:57 PMMitch Bailey
02/25/2021, 2:31 PMAhmed Ghazy
02/25/2021, 2:40 PMsimple_por
, it's an analog circuit that Tim designed; I believe https://github.com/efabless/caravel/blob/develop/ngspice/simple_por/simple_por.spice is the reference netlist, but he can confirm. The verilog GL netlist is not accurate Ahmed Ghazy
02/25/2021, 2:44 PMgl/simple_por.v
is unused for anything and I have just removed it.Tim Edwards
02/25/2021, 2:51 PMgds flatglob *__example_*
gds flatten true
gds read sky130_fd_io__top_gpiov2.gds
load sky130_fd_io__top_gpiov2
select top cell
expand
extract do local
extract no all
extract unique
extract all
ext2spice lvs
ext2spice
The "flatglob" is flattening all these cells with "example" in the name, which don't appear in the schematic hieararchy anyway. But the layout around these is separating nwells and deep nwells from the devices over them and causing magic grief when extracting. So flattening them makes the extraction go much better. The two (?) remaining issues with LVS on the pad cells is (1) there are metal resistor short
devices in the schematic that are extracted as sky130_fd_pr__ res_generic_m(1,2,3,...)
by magic. The extracted devices are intentional, and the netlists need to be changed. Unfortunately, the short
device is used for any metal resistor, and in some cases the same schematic subcell corresponds to either a res_generic_m1
or a res_generic_m2
in the layout, so those need to be teased apart in the schematic. (2) The grounds are shorted together through the substrate and magic does not currently have a way to fake a separation of the substrate into independent regions.Mitch Bailey
02/25/2021, 4:10 PMsimple_por
is referenced in verilog/gl/caravel.v
. Are you sure it's ok to remove it?Mitch Bailey
02/25/2021, 4:15 PMAmr Gouhar
02/25/2021, 4:15 PMMitch Bailey
02/25/2021, 5:02 PMverilog/gl/caravel.v
is intended to reference verilog/gl/simple_por.v
. Is it possible to mix gl and rtl verilog and then use the result for LVS?Ahmed Ghazy
02/25/2021, 6:45 PM