<@U02UAUGSQ22>, <@U03UD67MX1T> I have created a <s...
# xschem
s
@Harald Pretl, @Steven Bos I have created a sample
test_multisim.sch
schematic (that is placed in the
top.sch
schematic page) showing how to include different commands depending on selected simulator. This schematic simulates unchanged in
ngspice
and
Xyce
. Conditionals allows you to generate netlist code depending on any condition (for example the content of a tcl variable or an environment variable or return value of a procedure as in this case). No changes in xschem were done, i have only added a convenience procedure
sim_is_ngspice
that is now paired with already existing
sim_is_xyce
. This is the only reason you should update xschem if you want to test this example.
s
Wow @Stefan Schippers! This works super, see a quick comparison between ngspice serial (22.3s) and xyce serial (3.3s). This time I added the .spiceinit file which improved ngspice simulation speed but it is still a (large) difference that increases with larger circuits. I will make and share a 1-bit DAC to 10-bit DAC simulator comparison at some point.
I added several launcher symbols but they are not functional. Would it be possible to switch to another simulator, create netlist and run it after each other when i press the launcher symbol? That would be a very fast workflow to compare all four simulators
I installed hspice on windows so need to run that manually.
Solved! I saw in one of your examples and simrc file you can use
Copy code
tclcommand="set sim(spice,default) 3; xschem netlist; xschem simulate"
Now i only have to press 1 button to select a simulator, create a simulator specific netlist AND run the simulation. After simulation i press the load waveview button for the result. Magical!