Commit Graph

7861 Commits

Author SHA1 Message Date
Brian Taylor 0513fb5c8f Add support for oa/oai compound gates. 2022-07-01 15:50:46 +02:00
Brian Taylor 63cec9668c Fix a memory leak. Cleanup the code a bit. All-digital Pspice subckts with U* devices for most used gates/ff can be handled. More extensive test cases are necessary. Also, interfacing subckts with analog ports is not implemented. 2022-07-01 15:50:34 +02:00
Brian Taylor 701ed7beb0 Replace Pspice U* and .model cards with their Xspice equivalent statements. There are still memory leaks which will be plugged next. The .subckts have only digital ports, which will need to addressed for mixed A/D designs. 2022-07-01 15:50:22 +02:00
Brian Taylor e27881fe44 Add translation of ao/aoi compound gates. 2022-07-01 15:49:52 +02:00
Brian Taylor 4de648c8de Trial run at scanning cards for Pspice U* devices and models. #define INTEGRATE_UDEVICES to turn it on. No new cards are created yet, just lots of debugging info. 2022-07-01 15:49:39 +02:00
Brian Taylor 4d52539765 Add brief usage notes and makefile. asserts will need to be removed after integration is complete. 2022-07-01 15:49:24 +02:00
Brian Taylor 3e86af3989 Add default zero delay models d0_gate, d0_eff, d0_gff, d0_tgate. Use tprintf. 2022-07-01 15:49:09 +02:00
Brian Taylor 5b332a1aba Initial files for translating Pspice u.. instances and timing models into Xspice equivalents. Standard gates, tristate gates, dff, jkff, dlatch are supported. Compound gates and pullup/down are not done. Makefile and frontend/inpcom.c changes have not been finished. These modifications will be needed to complete integration. 2022-07-01 15:48:43 +02:00
Holger Vogt 8ff547c5da No error message when Optran returned 0 2022-06-30 20:03:58 +02:00
Holger Vogt fdbef1f691 We are developing towards ngspice-38 2022-06-30 20:03:20 +02:00
Holger Vogt d02939580b Don't set interactive mode 2022-06-26 11:50:30 +02:00
Holger Vogt c9a864933b re-format indmask.c 2022-06-26 11:43:18 +02:00
Holger Vogt 8023402db8 Add missing parameter retrival 2022-06-26 11:40:10 +02:00
Holger Vogt a2d7c342dd Asl Lundin's correction only when suitable modelparameters are given. 2022-06-26 11:39:43 +02:00
Holger Vogt 5e60ef4644 Make warning message on missing init file more verbose. 2022-06-22 22:02:09 +02:00
Holger Vogt 5e1e2bb4b7 remove typo 2022-06-22 22:01:34 +02:00
Holger Vogt 33ec8dfc25 Write out the current in the old fashion
1	v1#branch	current
when keep#branch is set in .spiceinit.
To make the raw file compatible with ICCAP.
2022-06-22 15:32:40 +02:00
Holger Vogt 7d2ea36fdf Add a warning when Lundin's correction factor is not
calculated because the geometries are too small (< 1um).
2022-06-22 15:31:17 +02:00
Holger Vogt 8d2a6c2405 Add coil diameter dia to the inductor parameters.
dia (diameter) takes preference over csect (cross section)
2022-06-22 13:26:57 +02:00
Holger Vogt 10d4b34ec5 Add Lundin's geometry correction to the
inductance formula
2022-06-22 12:59:37 +02:00
Holger Vogt 5f0035ca91 Fix a bug in the inductance formula. 2022-06-20 14:22:55 +02:00
Holger Vogt 6818b52a87 Exit when executing the input fails,
if -o option (log file) is set and not in interactive mode.
Enables running the paranoia suite without hanging if
something goes wrong.
2022-06-19 17:29:05 +02:00
Holger Vogt d02f2feee4 If the 'source' command fails, fall back to the input
only if in interactive mode. Otherwise exit.
2022-06-19 17:25:32 +02:00
Holger Vogt 1da6cc249e Limit the number of messages 'Warning singular matrix: ...' to 6,
if not 'set ngdebug'
2022-06-18 19:56:12 +02:00
Holger Vogt 89fcc20570 Make error message more verbose:
State explicitely when transient op has failed.
2022-06-18 17:05:05 +02:00
Holger Vogt f78adce641 Prevent a crash when line is empty 2022-06-18 17:04:20 +02:00
Holger Vogt eaf8977ba2 Allow 'nulltype', which returns NULL pointer.
Thus prevent a crash in cieq.
2022-06-18 01:06:42 +02:00
Holger Vogt dea9de72dc Rename the internal circuit nodes generated by .probe
to probe_int_xxx to make it probe specific.
Don't save these nodes.
2022-06-18 00:29:48 +02:00
Holger Vogt facbf3b524 Don't save the internal device node collCX, added
for a new quasi-saturation model of bjt
2022-06-18 00:26:33 +02:00
Holger Vogt 1dda42c1a2 When plotting the phase, standard now is "Radiant".
Only with 'set units=degrees" we plot with unit Degree.
2022-06-14 23:14:39 +02:00
Holger Vogt 53e25b735a This is a fix to bug report 589 by Bohdan Tkhir:
Remove only mfg=something, icrating=, vceo=, type=,
not any combination of text like net_type=... .
Restrict this removal to compatibility modes ps or lt.
2022-06-10 15:35:21 +02:00
Holger Vogt f0789ce3e4 not only de-allocate the vector, but also remove it from the list.
This is to prevent a crash when after simulating with a buggy input like:
save all @q1[nonesense] (non-existing parameter) a command 'print all'
is given.
2022-06-10 15:31:52 +02:00
Giles Atkinson 935ed58ce6 Fix bugs found while investigating Bug #585 (convergence failure only
on Linux).  In dctran.c make it impossible for a transient simulation
to run far past its end time and fix an infinite loop attempting to remove
the automatically-inserted ending breakpoint.  In outitf.c fix memory
corruption if the simulation does over-run (change suggested by Holger Vogt).
2022-06-08 16:33:43 +02:00
Holger Vogt 519cb8392c dc sweep fails after transient sim:
keep MODEDCTRANCURVE as provided by commit
7d8236766 ("b3ld.c, b4ld.c, b3v32ld.c: enable capacitance calculation during dc sweep", 2012-10-03)
Instead exclude current integration when MODEDCTRANCURVE is selected.
Unify setting ChargeComputationNeeded in b4vdld.c,
make it as in other b4xxld.c.
2022-06-06 16:27:06 +02:00
Holger Vogt 78728d19ad Add multiplier flag 'm' to behavioral capacitor and inductor 2022-06-01 16:54:12 +02:00
Holger Vogt f16f24d6e8 Prevent crash by checking that the scale vector frequency in ac mode
is a complex vector.
2022-05-29 00:03:36 +02:00
Holger Vogt 75a6392b43 VIN 3 0 PULSE (-1 1 2NS 2NS 2NS 50 NS 100 NS) is now standard
(missing dc value).
So revert the warning message:
VIN 3 0 dc 0 PULSE (-1 1 2NS 2NS 2NS 50 NS 100 NS) yields
a note message (not a warning)
2022-05-19 12:04:44 +02:00
Holger Vogt 140d143ae8 Update, link on device models (public domain or TI)
Download adresses for TI models.
2022-05-16 16:31:15 +02:00
Holger Vogt a8b2d0b8f1 Remove headers: both are available in VS 2019 and VS 2022.
Local stdint.h will lead to a compile error in VS 2022.
2022-05-16 16:30:57 +02:00
Holger Vogt fa7ca4ad33 Update copyright info to 2022 2022-05-16 16:30:44 +02:00
holger 72d3f12ab5 add new header spardefs.h to noinst_HEADERS 2022-05-16 16:30:26 +02:00
holger 6b06b8ca0d add *.h to the source files
to allow 'make dist' distributing them
2022-05-16 16:30:17 +02:00
Holger Vogt 1140af3e8b Prepare ngspice-37 2022-05-16 16:30:09 +02:00
Holger Vogt be6595e168 Prepare ngspice-37 2022-05-16 16:30:02 +02:00
Holger Vogt 8f4e712a11 Preliminary fix to enable the core model with hysteresis.
Make error message more verbose.
2022-05-16 16:29:08 +02:00
Giles Atkinson fbebfb708c Two memory leaks found interactively with valgrind with safe fixes. 2022-05-10 08:29:54 +01:00
Giles Atkinson 4fd0a68fb2 Fix memory leak found by valgrind/paranoia. 2022-05-10 08:25:28 +01:00
Giles Atkinson 2821b24350 Fix filename case. 2022-05-09 10:51:26 +02:00
Giles Atkinson 55e8975124 Suppress warning from gcc 10.2.1. 2022-05-09 10:51:18 +02:00
Giles Atkinson 11d6c41a7d Fix memory leaks found by valgrind in the paranoia script. 2022-05-08 17:59:20 +02:00