The xyce simulator is much faster to start a simul...
# xyce
s
The xyce simulator is much faster to start a simulation job and do the simulation itself compared to ngspice. Is there a gotcha somewhere, different model or less accuracy? Hspice seems to be as fast as xyce. My comparison is limited with only an inverter and 3-bit DAC. Hspice might still be faster for more demanding circuits. I hope to see the same speedup when testing my 10-bit that took 10 hours with ngspice. BTW the integration with xschem is very convenient, see embedded post
👍 1
🌍 1
a
Slightly unrelated, but I've been having a hard time getting sky130 devices to simulate in xyce, would you mind sharing the netlist you used to run the sim in xyce?
s
Sure, you can see the netlist in the video (it is automatically generated). The most important bits are the .lib .print and .tran parts. Let me find the file
Note that the simulation file has two instruction sets for a transient analysis. The 5 instructions marked with * are for ngspice and the top 2 are for xyce (and need to be marked with * if you switch to that simulator)
I recommend to start with this inverter netlist btw which does a DC analysis
What is very important btw is to use the patched up version open_pdk from https://github.com/RTimothyEdwards/open_pdks/tags. Follow the instructions and after sudo make and sudo make install the pdk can be found found at /usr/local/share/pdk
a
@Steven Bos Thank you for sharing this… I was trying it before the open_pdks patch but with no success. I’ll try it with the patch and with your suggested .lib statement. Very much appreciate your help!
s
One thing still left out is a way to conditionally execute Xyce commands or ngspice commands depending on the selected target simulator. I need to find a convenient way to do this in Xschem, so we don't need to comment / uncomment lines. This was a feature request ftom @Harald Pretl (if i remember well) and still not done (need more time :-))
🙌 1
s
Ah yes that would be a very useful feature.