<@U01819B63HP> Getting `undriven node: #net1` err...
# xschem
v
@Stefan Schippers Getting
undriven node: #net1
error in my basic inverter testbench. Tried several ways but could not remove this error. Can you please check. Attaching my inverter TB for debugging.
m
@vks I was able to create a netlist with your data after removing the PDK references in xschem and adding a link to
sky130_fd_pr
.
Copy code
**.subckt inv_test
x1 vdd vout vin GND inv_1
Vdd vdd GND 1.8
V1 vin GND pwl(0 0 50n 0 52n 1.8 100n 1.8 102n 0)
**** begin user architecture code

.lib /usr/local/share/pdk/sky130A/libs.tech/ngspice/sky130.lib.spice tt



;.dc Vin 0 1.8 1m
.tran 100ps 200ns
.op
.save all


**** end user architecture code
**.ends

* expanding   symbol:  inv_1.sym # of pins=4
* sym_path: /$HOME/inv/inv_1.sym
* sch_path: /$HOME/inv/inv_1.sch
.subckt inv_1  Vdd Vout Vin VSS
*.ipin Vdd
*.ipin VSS
*.opin Vout
*.ipin Vin
XM1 Vout Vin VSS VSS sky130_fd_pr__nfet_01v8 L=0.15 W=1.05 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29'
+ pd='2*int((nf+1)/2) * (W/nf + 0.29)' ps='2*int((nf+2)/2) * (W/nf + 0.29)' nrd='0.29 / W' nrs='0.29 / W'
+ sa=0 sb=0 sd=0 mult=1 m=1 
XM2 Vout Vin Vdd Vdd sky130_fd_pr__pfet_01v8 L=0.15 W=2.1 nf=1 ad='int((nf+1)/2) * W/nf * 0.29' as='int((nf+2)/2) * W/nf * 0.29'
+ pd='2*int((nf+1)/2) * (W/nf + 0.29)' ps='2*int((nf+2)/2) * (W/nf + 0.29)' nrd='0.29 / W' nrs='0.29 / W'
+ sa=0 sb=0 sd=0 mult=1 m=1 
.ends

.GLOBAL GND
** flattened .save nodes
.end
What version of xschem are you using?
v
Using xschem 3.40.
What exactly was the reason for warnings. Is it just how pdk is referenced in netlist?
m
Not sure what commands and options your using to netlist. I added the PDK_ROOT and PDK definitions and it still worked, but I did get some warnings when I set the output to verilog or VHDL. The default location for output appears to be
~/.xschem/simulations
but you can change this with
Simulation->Set netlist Dir
. The warning I noticed were due to the unconnected voltage sources
V2
and
Vin
and the unconnected output
Vout
. V2 and Vin are unused and can be deleted, I think. You could add an output pin at
Vout
to get rid of that message.
Tools->Insert symbol
and choose
opin
.
s
if you have nets driven by some elements and not used anywhere else you can attach the noconn.sym to get rid of the
open net
warnings. The warnings about undriven net1, net2, net3, net4 are false flags due to the voltage sources with spice_ignore=true attribute. This should be fixed in xschem. Thank you for reporting this. The false flags do not affect the netlist which is correct.
v
Thanks @Mitch Bailey @Stefan Schippers
s
@vks Latest xschem commit fixes the false warning about undriven #net1 ...#net4 your test case showed. Thank you for reporting the issue.
👍 1
The problem was xschem creating nets attached to ignored devices. This does not affect the final spice netlist but gives false warnings.
👍 1
176 Views