Brian Taylor
a7b6cb9af7
Create pin and port lists only when variable ps_pins_and_ports is set != 0.
2022-07-01 15:54:08 +02:00
Brian Taylor
01e988d604
Remove optional:, params:, text: before generating a ports list.
2022-07-01 15:53:56 +02:00
Brian Taylor
9b390c1ca9
Retain the param: section after removing the optional: section from a Pspice subckt declaration.
2022-07-01 15:53:47 +02:00
Brian Taylor
69ef28de4a
Add more comments. Move incompatible input name checks to add_..._inout_timing_model() functions for dff, jkff, dltch.
2022-07-01 15:53:19 +02:00
Brian Taylor
831f8b1dad
This test is equivalent to examples/xspice/xspice_c3.cir and uses Pspice subckts for the divider and nand gate.
2022-07-01 15:53:10 +02:00
Brian Taylor
3ca14e44ed
Add counter test. Check for usage of $d_lo, $d_hi, $d_nc usage with dff, jkff, dltch which will not translate to Xspice.
2022-07-01 15:53:02 +02:00
Brian Taylor
45c88edb77
All-digital U* device examples. No a/d or d/a interfaces on the subcircuits.
2022-07-01 15:52:52 +02:00
Brian Taylor
ff3a704710
Get rid of -Wpedantic warnings.
2022-07-01 15:52:39 +02:00
Brian Taylor
79625f10f5
Remove debugging asserts.
2022-07-01 15:52:14 +02:00
Brian Taylor
55a5c0cb0a
Generate lists of subckt ports indicating direction (in, out, inout.)
2022-07-01 15:52:01 +02:00
Brian Taylor
d41bff8373
Stopped memory leak in continuation cards when removing old cards.
2022-07-01 15:51:53 +02:00
Brian Taylor
fff87ebb81
Slight cleanup. Some work ensuring that generated names do not collide may be necessary.
2022-07-01 15:51:37 +02:00
Brian Taylor
93d067775f
For debug tracing, list the cards before and after udevice replacements.
2022-07-01 15:51:24 +02:00
Brian Taylor
de2dc6f1d5
Add pullup/down. Skip spurious '*' line.
2022-07-01 15:51:12 +02:00
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