This is how the waveform looked earlier: After increasing the period in vpulse, this is how it looks: This is the updated testbench: // View name: schematic I2 (0 IN OUT net7) char V0 (IN 0) vsource dc=0 type=pulse val0=0 val1=350m period=10u delay=0 \ rise=100p fall=100p C0 (OUT 0) capacitor c=20f V1 (net7 0) vsource dc=350m type=dc simulatorOptions options psfversion="1.4.0" reltol=1e-3 vabstol=1e-6 \ iabstol=1e-12 temp=27 tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 \ maxnotes=5 maxwarns=5 digits=5 cols=80 pivrel=1e-3 \ sensfile="../psf/sens.output" checklimitdest=psf tran tran stop=20u write="spectre.ic" writefinal="spectre.fc" \ annotate=status maxiters=5 finalTimeOP info what=oppoint where=rawfile modelParameter info what=models where=rawfile element info what=inst where=rawfile outputParameter info what=output where=rawfile designParamVals info what=parameters where=rawfile primitives info what=primitives where=rawfile subckts info what=subckts where=rawfile saveOptions options save=all pwr=all This is the entire log file: Spectre ® Circuit Simulator Version 19.1.0.396.isr8 64bit -- 19 Jun 2020 Copyright © 1989-2020 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence and Spectre are registered trademarks of Cadence Design Systems, Inc. All others are the property of their respective holders. Includes RSA BSAFE® Cryptographic or Security Protocol Software from RSA Security, Inc. User: VLSI_ANALOG Host: cad19 HostID:Hidden PID: 29669 Memory available: 895.8935 MB physical: 3.9327 GB Linux : Red Hat Enterprise Linux Server release 6.9 (Santiago) CPU Type: Intel® Core™ i5-2320 CPU @ 3.00GHz All processors running at 1600.0 MHz Socket: Processors 0: 0, 1, 2, 3 System load averages (1min, 5min, 15min) : 4.2 %, 3.8 %, 1.5 % Simulating `./input.scs' on cad19 at 11:51:54 PM, Mon Nov 29, 2021 (process id: 29669). Current working directory: /home/VLSI_ANALOG/UMC180/Designkits/Cadence_6.1/lowpower28/spectremdl/new Command line: /home/installs/SPECTRE191/tools.lnx86/bin/spectre -64 =mdl \ input.mdl ./input.scs Loading /home/installs/SPECTRE191/tools.lnx86/cmi/lib/64bit/5.0/libinfineon_sh.so ... Loading /home/installs/SPECTRE191/tools.lnx86/cmi/lib/64bit/5.0/libphilips_o_sh.so ... Loading /home/installs/SPECTRE191/tools.lnx86/cmi/lib/64bit/5.0/libphilips_sh.so ... Loading /home/installs/SPECTRE191/tools.lnx86/cmi/lib/64bit/5.0/libsparam_sh.so ... Loading /home/installs/SPECTRE191/tools.lnx86/cmi/lib/64bit/5.0/libstmodels_sh.so ... Loading /home/installs/SPECTRE191/tools.lnx86/spectre/lib/64bit/mdl/libSpectreEH_sh.so ... Reading file: /home/VLSI_ANALOG/UMC180/Designkits/Cadence_6.1/lowpower28/spectremdl/new/input.mdl Reading file: /home/VLSI_ANALOG/UMC180/Designkits/Cadence_6.1/lowpower28/spectremdl/new/input.scs Reading file: /home/installs/SPECTRE191/tools.lnx86/spectre/etc/configs/spectre.cfg Reading file: /home/VLSI_ANALOG/UMCLib/pdk/UMC/28/_G-01-LOGIC_MIXED_MODE28N-HPC/Designkits/Cadence_IC6/G-9FD-LOGIC_MIXED_MODE28N-HPC_UM028FDKHCC0000OA-FDK-Ver.A14_PB/UM028FDKHCC0000OA_A14_DESIGNKIT/UM028FDKHCC0000OA_A14_PB/Models/Spectre/l28hpc_mm_v1201.lib.scs Reading file: /home/VLSI_ANALOG/UMCLib/pdk/UMC/28/_G-01-LOGIC_MIXED_MODE28N-HPC/Designkits/Cadence_IC6/G-9FD-LOGIC_MIXED_MODE28N-HPC_UM028FDKHCC0000OA-FDK-Ver.A14_PB/UM028FDKHCC0000OA_A14_DESIGNKIT/UM028FDKHCC0000OA_A14_PB/Models/Spectre/l28hpc_rf_v017.lib.scs Time for NDB Parsing: CPU = 4.75028 s, elapsed = 5.16018 s. Time accumulated: CPU = 4.90225 s, elapsed = 5.16019 s. Peak resident memory used = 213 Mbytes. Warning from spectre during hierarchy flattening. WARNING (SFE-1131): Scope option `scalefactor' specified with scope `TopCircuit' at line `680' has also been specified at line `729' in file `/home/VLSI_ANALOG/UMCLib/pdk/UMC/28/_G-01-LOGIC_MIXED_MODE28N-HPC/Designkits/Cadence_IC6/G-9FD-LOGIC_MIXED_MODE28N-HPC_UM028FDKHCC0000OA-FDK-Ver.A14_PB/UM028FDKHCC0000OA_A14_DESIGNKIT/UM028FDKHCC0000OA_A14_PB/umc28hpc/../Models/Spectre/l28hpc_rf_v017.lib.scs'. As a result, the last specified value will be used for simulation. Time for Elaboration: CPU = 71.988 ms, elapsed = 71.0611 ms. Time accumulated: CPU = 4.97424 s, elapsed = 5.23144 s. Peak resident memory used = 226 Mbytes. Warning from spectre during hierarchy flattening. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. Time for EDB Visiting: CPU = 1 ms, elapsed = 952.959 us. Time accumulated: CPU = 4.97524 s, elapsed = 5.23256 s. Peak resident memory used = 227 Mbytes. Global user options: psfversion = 1.4.0 vabstol = 1e-06 iabstol = 1e-12 temp = 27 gmin = 1e-12 rforce = 1 maxnotes = 5 maxwarns = 5 digits = 5 cols = 80 pivrel = 0.001 sensfile = ../psf/sens.output checklimitdest = psf save = all pwr = all scalefactor = 0.9 reltol = 0.001 tnom = 27 scalem = 1 scale = 1 Scoped user options: Circuit inventory: nodes 3 bsim4 2 capacitor 1 diode 1 vsource 2 Analysis and control statement inventory: info 7 tran 1 Output statements: .probe 0 .measure 0 save 0 Time for parsing: CPU = 3 ms, elapsed = 75.556 ms. Time accumulated: CPU = 4.97824 s, elapsed = 5.30823 s. Peak resident memory used = 229 Mbytes. ~~~~~~~~~~~~~~~~~~~~~~ Pre-Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ************************************************ Transient Analysis `trans': time = (0 s -> 1 us) ************************************************ DC simulation time: CPU = 1 ms, elapsed = 874.996 us. Opening the PSFXL file ./input.raw/trans.tran.tran ... Important parameter values: start = 0 s outputstart = 0 s stop = 1 us step = 1 ns maxstep = 20 ns ic = all useprevic = no skipdc = no reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = moderate method = traponly lteratio = 3.5 relref = sigglobal cmin = 0 F gmin = 1 pS Output and IC/nodeset summary: save 2 (current) save 10 (voltage) others 5 Notice from spectre at time = 533.602 ps during transient analysis `trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 963.045 ps during transient analysis `trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 1.82193 ns during transient analysis `trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 3.5397 ns during transient analysis `trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Notice from spectre at time = 6.28397 ns during transient analysis `trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Further occurrences of this notice will be suppressed. ......9......8......7......6......5......4......3......2......1......0 Number of accepted tran steps = 72 Notice from spectre during transient analysis `trans', during task `MDLControl'. Trapezoidal ringing is detected during tran analysis. Please use method=trap for better results and performance. Maximum value achieved for any signal of each quantity: V: V(I2.PM0:int_d) = 350.7 mV I: I(V0:p) = 613.3 nA If your circuit contains signals of the same quantity that are vastly different in size (such as high voltage circuitry combined with low voltage control circuitry), you should consider specifying global option `bin_relref=yes'. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post-Transient Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - To further speed up simulation, consider add ++aps on command line ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ During simulation, the CPU load for active processors is : 0 (5.3 %) 1 (92.2 %) 2 (4.8 %) 3 (2.5 %) Total: 104.8% Initial condition solution time: CPU = 1 ms, elapsed = 977.039 us. Intrinsic tran analysis time: CPU = 15.998 ms, elapsed = 50.0469 ms. Warning from spectre during transient analysis `trans', during task `MDLControl'. WARNING (MDL-2034): line `18': risetime - Rise Time Not Found Total time required for tran analysis `trans': CPU = 21.997 ms, elapsed = 55.702 ms. Time accumulated: CPU = 5.00624 s, elapsed = 5.37057 s. Peak resident memory used = 232 Mbytes. Notice from spectre during task `MDLControl'. 41 notices suppressed. Warning from spectre. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. Opening the PSF file ./input.raw/trans.optimize ... ********************************************************** Transient Analysis `trans-000_trans': time = (0 s -> 1 us) ********************************************************** DC simulation time: CPU = 1 ms, elapsed = 611.067 us. Opening the PSFXL file ./input.raw/trans-000_trans.tran.tran ... Important parameter values: start = 0 s outputstart = 0 s stop = 1 us step = 1 ns maxstep = 20 ns ic = all useprevic = no skipdc = no reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = moderate method = traponly lteratio = 3.5 relref = sigglobal cmin = 0 F gmin = 1 pS Output and IC/nodeset summary: save 2 (current) save 10 (voltage) others 5 Notice from spectre at time = 533.602 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 963.045 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 1.82193 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 3.5397 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Notice from spectre at time = 6.28397 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Further occurrences of this notice will be suppressed. ......9......8......7......6......5......4......3......2......1......0 Number of accepted tran steps = 72 Notice from spectre during transient analysis `trans-000_trans', during task `MDLControl'. Trapezoidal ringing is detected during tran analysis. Please use method=trap for better results and performance. Maximum value achieved for any signal of each quantity: V: V(I2.PM0:int_d) = 350.7 mV I: I(V0:p) = 613.3 nA If your circuit contains signals of the same quantity that are vastly different in size (such as high voltage circuitry combined with low voltage control circuitry), you should consider specifying global option `bin_relref=yes'. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post-Transient Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - To further speed up simulation, consider add ++aps on command line ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ During simulation, the CPU load for active processors is : 0 (5.7 %) 1 (90.5 %) 2 (5.0 %) 3 (2.7 %) Total: 103.9% Initial condition solution time: CPU = 1 ms, elapsed = 696.898 us. Intrinsic tran analysis time: CPU = 18.997 ms, elapsed = 46.9458 ms. Warning from spectre during transient analysis `trans-000_trans', during task `MDLControl'. WARNING (MDL-2034): line `18': risetime - Rise Time Not Found Total time required for tran analysis `trans-000_trans': CPU = 22.997 ms, elapsed = 51.2409 ms. Time accumulated: CPU = 5.07723 s, elapsed = 5.55397 s. Peak resident memory used = 233 Mbytes. Notice from spectre during task `MDLControl'. 41 notices suppressed. Warning from spectre. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. ********************************************************** Transient Analysis `trans-000_trans': time = (0 s -> 1 us) ********************************************************** DC simulation time: CPU = 0 s, elapsed = 340.939 us. Opening the PSFXL file ./input.raw/trans-000_trans.tran.tran ... Important parameter values: start = 0 s outputstart = 0 s stop = 1 us step = 1 ns maxstep = 20 ns ic = all useprevic = no skipdc = no reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = moderate method = traponly lteratio = 3.5 relref = sigglobal cmin = 0 F gmin = 1 pS Output and IC/nodeset summary: save 2 (current) save 10 (voltage) others 5 Notice from spectre at time = 533.602 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 963.045 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 1.82193 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 3.5397 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Notice from spectre at time = 6.2846 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Further occurrences of this notice will be suppressed. ......9......8......7......6......5......4......3......2......1......0 Number of accepted tran steps = 72 Notice from spectre during transient analysis `trans-000_trans', during task `MDLControl'. Trapezoidal ringing is detected during tran analysis. Please use method=trap for better results and performance. Maximum value achieved for any signal of each quantity: V: V(I2.PM0:int_d) = 350.7 mV I: I(V0:p) = 618.1 nA If your circuit contains signals of the same quantity that are vastly different in size (such as high voltage circuitry combined with low voltage control circuitry), you should consider specifying global option `bin_relref=yes'. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post-Transient Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - To further speed up simulation, consider add ++aps on command line ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ During simulation, the CPU load for active processors is : 0 (6.0 %) 1 (89.5 %) 2 (5.1 %) 3 (3.2 %) Total: 103.8% Initial condition solution time: CPU = 0 s, elapsed = 385.046 us. Intrinsic tran analysis time: CPU = 14.998 ms, elapsed = 50.4689 ms. Warning from spectre during transient analysis `trans-000_trans', during task `MDLControl'. WARNING (MDL-2034): line `18': risetime - Rise Time Not Found Total time required for tran analysis `trans-000_trans': CPU = 16.997 ms, elapsed = 52.7952 ms. Time accumulated: CPU = 5.11322 s, elapsed = 5.62573 s. Peak resident memory used = 233 Mbytes. Notice from spectre during task `MDLControl'. 41 notices suppressed. Warning from spectre. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. WARNING (SPECTRE-17101): The value 'psf' specified for the 'checklimitdest' option will no longer be supported in future releases. Use 'spectre -h' to see other recommended values for the 'checklimitdest' option. ********************************************************** Transient Analysis `trans-000_trans': time = (0 s -> 1 us) ********************************************************** DC simulation time: CPU = 0 s, elapsed = 352.859 us. Opening the PSFXL file ./input.raw/trans-000_trans.tran.tran ... Important parameter values: start = 0 s outputstart = 0 s stop = 1 us step = 1 ns maxstep = 20 ns ic = all useprevic = no skipdc = no reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = moderate method = traponly lteratio = 3.5 relref = sigglobal cmin = 0 F gmin = 1 pS Output and IC/nodeset summary: save 2 (current) save 10 (voltage) others 5 Notice from spectre at time = 533.637 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 963.115 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 1.82207 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 3.53998 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Notice from spectre at time = 6.29002 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Further occurrences of this notice will be suppressed. ......9......8......7......6......5......4......3......2......1......0 Number of accepted tran steps = 72 Notice from spectre during transient analysis `trans-000_trans', during task `MDLControl'. Trapezoidal ringing is detected during tran analysis. Please use method=trap for better results and performance. Maximum value achieved for any signal of each quantity: V: V(I2.PM0:int_d) = 350.7 mV I: I(V0:p) = 618.9 nA If your circuit contains signals of the same quantity that are vastly different in size (such as high voltage circuitry combined with low voltage control circuitry), you should consider specifying global option `bin_relref=yes'. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post-Transient Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - To further speed up simulation, consider add ++aps on command line ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ During simulation, the CPU load for active processors is : 0 (5.9 %) 1 (89.3 %) 2 (5.0 %) 3 (3.2 %) Total: 103.5% Initial condition solution time: CPU = 0 s, elapsed = 398.874 us. Intrinsic tran analysis time: CPU = 11.997 ms, elapsed = 43.3631 ms. Warning from spectre during transient analysis `trans-000_trans', during task `MDLControl'. WARNING (MDL-2034): line `18': risetime - Rise Time Not Found Total time required for tran analysis `trans-000_trans': CPU = 14.997 ms, elapsed = 45.732 ms. Time accumulated: CPU = 5.16421 s, elapsed = 5.70751 s. Peak resident memory used = 233 Mbytes. Notice from spectre during task `MDLControl'. 41 notices suppressed. ********************************************************** Transient Analysis `trans-000_trans': time = (0 s -> 1 us) ********************************************************** DC simulation time: CPU = 1 ms, elapsed = 353.813 us. Opening the PSFXL file ./input.raw/trans-000_trans.tran.tran ... Important parameter values: start = 0 s outputstart = 0 s stop = 1 us step = 1 ns maxstep = 20 ns ic = all useprevic = no skipdc = no reltol = 1e-03 abstol(V) = 1 uV abstol(I) = 1 pA temp = 27 C tnom = 27 C tempeffects = all errpreset = moderate method = traponly lteratio = 3.5 relref = sigglobal cmin = 0 F gmin = 1 pS Output and IC/nodeset summary: save 2 (current) save 10 (voltage) others 5 Notice from spectre at time = 533.637 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 963.115 ps during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 1.82207 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node I2.NM0:int_s. Notice from spectre at time = 3.53998 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Notice from spectre at time = 6.29002 ns during transient analysis `trans-000_trans', during task `MDLControl'. Found trapezoidal ringing on node V0:p. Further occurrences of this notice will be suppressed. ......9......8......7......6......5......4......3......2......1......0 Number of accepted tran steps = 72 Notice from spectre during transient analysis `trans-000_trans', during task `MDLControl'. Trapezoidal ringing is detected during tran analysis. Please use method=trap for better results and performance. Maximum value achieved for any signal of each quantity: V: V(I2.PM0:int_d) = 350.7 mV I: I(V0:p) = 618.9 nA If your circuit contains signals of the same quantity that are vastly different in size (such as high voltage circuitry combined with low voltage control circuitry), you should consider specifying global option `bin_relref=yes'. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Post-Transient Simulation Summary ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - To further speed up simulation, consider add ++aps on command line ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ During simulation, the CPU load for active processors is : 0 (6.2 %) 1 (88.7 %) 2 (5.0 %) 3 (3.2 %) Total: 103.1% Initial condition solution time: CPU = 1 ms, elapsed = 396.967 us. Intrinsic tran analysis time: CPU = 17.997 ms, elapsed = 50.3759 ms. Warning from spectre during transient analysis `trans-000_trans', during task `MDLControl'. WARNING (MDL-2034): line `18': risetime - Rise Time Not Found Total time required for tran analysis `trans-000_trans': CPU = 21.996 ms, elapsed = 54.163 ms. Time accumulated: CPU = 5.18721 s, elapsed = 5.76322 s. Peak resident memory used = 233 Mbytes. Notice from spectre during task `MDLControl'. 41 notices suppressed. Aggregate audit (11:52:00 PM, Mon Nov 29, 2021): Time used: CPU = 5.32 s, elapsed = 5.96 s, util. = 89.3%. Time spent in licensing: elapsed = 355 ms, percentage of total = 5.95%. Peak memory used = 233 Mbytes. Simulation started at: 11:51:54 PM, Mon Nov 29, 2021, ended at: 11:52:00 PM, Mon Nov 29, 2021, with elapsed time (wall clock): 5.96 s. spectre completes with 0 errors, 12 warnings, and 36 notices.
↧