rlar
9739f9983f
psp102, workaround adms ddx() translation
...
our adms .xml files do not support translation
of ddx() expressions, except at the toplevel in assignments.
foo = ddx(); is supported
foo = bar * ddx(); is not
2019-02-17 07:46:54 +01:00
rlar
9628249962
ekv, use (*desc*) instead of (*info*), useless, they have none
2019-02-17 07:46:54 +01:00
rlar
7f8a7f1382
bjt504t, use (*desc*) instead of (*info*), useless, they have none
2019-02-17 07:46:54 +01:00
rlar
cda2684857
hicum2, use (*desc*) instead of (*info*)
2019-02-17 07:46:54 +01:00
rlar
e37047f8f7
hicum0, no (*ask*), use (*desc*) instead of (*info*) and workaround HICUMtype
2019-02-17 07:46:53 +01:00
rlar
46bc909bff
psp102, drop (*ask*)
2019-02-17 07:46:53 +01:00
rlar
7a54ecf567
psp102, use (*desc*) instead of (*info*)
2019-02-17 07:46:53 +01:00
rlar
493e975d35
enforce compiler warning/error, when (*desc*) variable usage not anticipated
2019-02-17 07:46:52 +01:00
rlar
82d623a35a
try to allow access to (*desc*) exported values in the "state" vector
...
variables which are annotated with (*desc*) will be put into the "state"
vector. "OP" definitions for them will be emited, and the device_ask() function
will be extended to query these values.
issues:
save @instance[varname]
is required,
otherwise, only the very last value will be saved in a "scalar" instead of
all the results in a "vector"
there might well be issues with upper/lower case.
I lower-cased all variable names, because the ngspice frontend
does so as well. but I've seen some parameters which are not lower-cased.
it might be these can not be accessed even though they are present,
simply because it is not possible to "name" a non lower-cased thing.
this is merly a hack for bsimcmg,
there was pretty not testing at all, and no consideration
was given to the other models at all.
2019-02-17 07:46:52 +01:00
rlar
ac263f9cc7
bsimcmg, edit benchmark_test files for first ngspice experiments
...
FIXME and beware,
parameter LSP has a different default !
2019-02-17 07:46:52 +01:00
rlar
bf333b9956
bsimcmg, introduce benchmark_test files, from Berkeley's BSIMCMG110.0.0_20160101.tar.gz
2019-02-17 07:46:52 +01:00
rlar
10f6e1fa37
%bsim6.el, receipe for bsimcmg testbench files
2019-02-17 07:46:51 +01:00
rlar
822de236d2
bsimcmg, adms workaround, remove L from default definition for LSP
...
L is an instance parameter, and 'here' is NULL when needed
you will need to explicitely set LSP, instead of relying on the default
2019-02-17 07:46:51 +01:00
rlar
aee03ec266
bsimcmg, adms workaround, transform Tempdep to a .va macro
2019-02-17 07:46:51 +01:00
rlar
c4b8bc52f0
bsimcmg, adms workaround, transform hypmax to a .va macro
2019-02-17 07:46:50 +01:00
rlar
b3fd560190
bsimcmg, adms workaround, transform hypsmooth to a .va macro
2019-02-17 07:46:50 +01:00
rlar
61fac01631
bsimcmg, adms workaround, transform lln to a .va macro
2019-02-17 07:46:50 +01:00
rlar
b2f96c1c0a
bsimcmg, adms workaround, transform lexp to a .va macro
2019-02-17 07:46:50 +01:00
rlar
4f9431311a
dev.c, inp2m.c, inpdomod.c, introduce bsimcmg (use level 17)
2019-02-17 07:46:49 +01:00
rlar
e967175f61
add bsimcmg.va to build system
2019-02-17 07:42:42 +01:00
rlar
7979fa151c
bsimcmg, adms workaround, split T0 into two
2019-02-17 07:42:42 +01:00
rlar
5169fcb0d3
bsimcmg, adms workaround, split T1 into two
2019-02-17 07:42:42 +01:00
rlar
7e81a5e93f
bsimcmg, adms workaround, split T2 into two
2019-02-17 07:42:42 +01:00
rlar
3e62b23c08
bsimcmg, adms workaround, split T3 into two
2019-02-17 07:42:41 +01:00
rlar
0d7a3838f5
bsimcmg, work around block_local variables, use the emacs macro
2019-02-17 07:42:41 +01:00
rlar
1a150044ce
bsimcmg, work around block_local variables
2019-02-17 07:42:41 +01:00
rlar
6bf7af75f5
add bsimcmg, from Berkeley's BSIMCMG110.0.0_20160101.tar.gz
2019-02-17 07:42:40 +01:00
rlar
aa5009fbe4
implement "case"
2019-02-17 07:42:40 +01:00
rlar
b272e153c6
*.va, use $simparam("gmin") instead of the _circuit_gmin workaround
2019-02-17 07:42:40 +01:00
rlar
cc5f8b6f42
implement $simparam("gmin")
2019-02-17 07:42:40 +01:00
rlar
aa4f190f42
fix usage of template function:getname
...
this template exists in two variants,
one in ngspiceVersion.xml, which returns the value on the stack
one in ngspiceMODuLE.hxx.xml, which returns the value as a 'returned' path
This particular place got the two mixed up
2019-02-17 07:42:39 +01:00
rlar
60cddb4643
bsim6.va, disable __THERMAL_NODE__ and __SHMOD__
...
modify Benchmark accordingly,
there is no more "thermal" node
2019-02-17 07:42:39 +01:00
rlar
54e0bb988b
ngspiceMODULEguesstopology.c.xml, $vt
...
fixme, only because some dependency detection fails to drop an expression
which might involve $vt ?
2019-02-17 07:42:39 +01:00
rlar
5de9a90394
minor, readability, missing newline
2019-02-17 07:42:38 +01:00
dwarning
b18e214994
add spice gmin parameter to drain and source junction current
2019-02-17 07:42:38 +01:00
dwarning
00c32de1dc
remove obsolete sti and wpe model parameter
2019-02-17 07:42:38 +01:00
rlar
4f53f51ad9
ngspiceMODULEdefs.h.xml, disable EXIT_IF_ISNAN()
...
don't exit() on NaN
a NaN is not necessairily a desaster,
might be merely a sign for non-convergence,
which still might be overcome in another try.
The bsim6 testbench case inverter_transient.sp was
unnecessairily aborted do to NaN's
2019-02-17 07:42:38 +01:00
rlar
f6257eba84
Benchmark_test, modify for ngspice
2019-02-17 07:42:37 +01:00
rlar
fa4e123b53
add Benchmark_test for BSIM6 from Berkeley
2019-02-17 07:42:37 +01:00
rlar
7534ac394c
work around, 'define __TERMAL_NODE__ in bsim6.va, first successfull plot
...
to work around dangling "temper" node in bsim6
fixme, adms populates the termal node slot in the matrix even though
__TERMAL_NODE__ was not defined, leading to a singular matrix.
fixme, adms
$port_connected
is not supported, thus just claim it to be connected.
inp2m.c, upgrade to allow bsim6 with 5 nodes
2019-02-17 07:42:37 +01:00
rlar
ea4f5e165c
temporary, make the failing nodes identifyable
2019-02-17 07:41:24 +01:00
rlar
50b883dbc7
very first testcase, of course it fails
2019-02-17 07:41:23 +01:00
rlar
45575b2b1b
inptyplk.c, INPtypelook(), ignore case when comparing modelname
...
"bsim6" is in lower case in bsim6init.c
2019-02-17 07:41:23 +01:00
rlar
530d69f775
ngspiceMODULEdefs.h.xml, add min max for the sake of XXXguesstopology.c
2019-02-17 07:41:23 +01:00
Guilherme Brondani Torri
865bf55961
fix callfunction
...
* handle $strobe
* handle $finish
* others throw error
2019-02-17 07:41:23 +01:00
rlar
68b8614a35
bsim6.va, macro for lln, to avoid derivatives of this function
2019-02-17 07:41:22 +01:00
rlar
4f46cd20ee
bsim6.va, macro for lexp to avoid derivatives
...
fixme, adsmXml can't do
a ? b : c ? d : e
needs parentheses
a ? b : (c ? d : e)
bug in parser
2019-02-17 07:41:22 +01:00
rlar
37c5813d68
bsim6.va, macro for hypsmooth, to avoid derivatives of this function
2019-02-17 07:41:22 +01:00
rlar
fa13ee77d6
dev.c and inp2m.c, bsim6 is level 16 ?!
2019-02-17 07:41:21 +01:00
rlar
f87b32962a
r2_cmcguesstopology.c, r2_cmc.va, block local does not work
2019-02-17 07:41:21 +01:00