mirror of https://github.com/VLSIDA/OpenRAM.git
Added method=gear back to ngspice simulation to fix convergence bug.
This commit is contained in:
parent
e8f658d356
commit
54c21f6282
|
|
@ -209,12 +209,14 @@ def write_control(stim_file, end_time):
|
|||
""" Write the control cards to run and end the simulation """
|
||||
# UIC is needed for ngspice to converge
|
||||
stim_file.write(".TRAN 5p {0}n UIC\n".format(end_time))
|
||||
# if OPTS.spice_name == "ngspice":
|
||||
# # ngspice sometimes has convergence problems if not using gear method
|
||||
# # which is more accurate, but slower than the default trapezoid method
|
||||
# stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n")
|
||||
# else:
|
||||
stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n")
|
||||
if OPTS.spice_name == "ngspice":
|
||||
# ngspice sometimes has convergence problems if not using gear method
|
||||
# which is more accurate, but slower than the default trapezoid method
|
||||
# Do not remove this or it may not converge due to some "pa_00" nodes
|
||||
# unless you figure out what these are.
|
||||
stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE method=gear\n")
|
||||
else:
|
||||
stim_file.write(".OPTIONS POST=1 RUNLVL=4 PROBE\n")
|
||||
|
||||
# create plots for all signals
|
||||
stim_file.write("* probe is used for hspice/xa, while plot is used in ngspice\n")
|
||||
|
|
|
|||
Loading…
Reference in New Issue