Kevin Pizarro
04/11/2024, 11:11 PMMitch Bailey
04/11/2024, 11:20 PMSimulation
-> LVS netlist: top level is a .subckt
option.
3. As a rule, it might be best to not put the .include
statements in LVS schematics. Make a test bench wrapper circuit for simulation and include them there. (that said, you’ll still need to add the standard cell spice to get LVS to pass - it’s just not recommended to do that in the schematic.)
4. The layout is missing sky130_fd_sc_hd__tapvpwrvgnd_1
cells so the nwell is not connected to power and the psubstrate is not connected to ground.aquiles viza
04/12/2024, 4:33 PMtapvpwrvgnd_1
instead of tap1
. I'm going to test it rn
• Should we make a schematic with the design and the .include
directives? Should we do this for each design in the project?
• If we use a tcl script for netgen that includes all the spices from the pdk before running lvs, could it be an alternative for the previous point?aquiles viza
04/12/2024, 7:33 PMTim Edwards
04/12/2024, 7:54 PMaquiles viza
04/12/2024, 8:01 PMinv_2
, Magic doesn't generate the same disposition.
Maybe I could use readspice
on stdcells when extracting the gds... In that case I should apply this on each PDK spice, just to mantain the port order.
What could be the side-effects of using readspice
with big spices? Is going to slow the procedure? Increment complexity?Tim Edwards
04/12/2024, 8:04 PMflatglob
or readspice
. As long as you include the standard cell SPICE library for the HD standard cells into the schematic-captured netlist, netgen should match the inv_2
cells against each other and match the port order.Tim Edwards
04/12/2024, 8:07 PMaquiles viza
04/12/2024, 8:36 PM.include <stdcell>.spice
statements on the INV.sch
could have any unwanted side-effect? I think it might require the only_toplevel=1
property to avoid problems.
I want a solution that doesn't require manual addition of the .import
statements on each xschematic extracted netlist, I think intermediate files should not be manually edited to get the expected results.
I though that the netgen tcl interface could help me with this (I was reading the 3rd presentation, a bit short on netgen but very useful) but if this can be solved at schematic level, it would be great.Mitch Bailey
04/12/2024, 10:47 PM.include
statements on every xschem schematic. I’m of the opinion that .include
statements should not be used on schematics used for LVS. The .include
statements should be used on test bench schematics that instantiate the LVS schematics.
When using standard cells in xschem, the output spice will not include the spice for each standard cell.
You can create a script
for running netgen like this
set layout [readnet spice <extracted_spice>]
set source [readnet spice <spice_library_from_pdk>]
readnet spice <xschem_netlist> $source
lvs "$layout user_analog_project_wrapper" "$source user_analog_project_wrapper" $env(PDK_ROOT)/$env(PDK)/libs.tech/netgen/$env(PDK)_setup.tcl lvs.report
and then netgen -batch source script
Tim Edwards
04/13/2024, 1:16 PM