rlar
b9c85ccf6a
ekv, use (*desc*) instead of (*info*), useless, they have none
2017-07-24 20:45:07 +02:00
rlar
c7f5aef10e
bjt504t, use (*desc*) instead of (*info*), useless, they have none
2017-07-24 20:45:07 +02:00
rlar
9ead7b0275
hicum2, use (*desc*) instead of (*info*)
2017-07-24 20:45:07 +02:00
rlar
c59dedd7e0
hicum0, no (*ask*), use (*desc*) instead of (*info*) and workaround HICUMtype
2017-07-24 20:45:07 +02:00
rlar
77e437ca98
psp102, drop (*ask*)
2017-07-24 20:45:07 +02:00
rlar
56737e0fd4
psp102, use (*desc*) instead of (*info*)
2017-07-24 20:45:07 +02:00
rlar
f334663d8a
enforce compiler warning/error, when (*desc*) variable usage not anticipated
2017-07-24 20:45:07 +02:00
rlar
0d73c09724
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.
2017-07-24 20:45:07 +02:00
rlar
bcd925db65
bsimcmg, edit benchmark_test files for first ngspice experiments
...
FIXME and beware,
parameter LSP has a different default !
2017-07-24 20:45:06 +02:00
rlar
fbfa4eabc0
bsimcmg, introduce benchmark_test files, from Berkeley's BSIMCMG110.0.0_20160101.tar.gz
2017-07-24 20:45:06 +02:00
rlar
749be07882
%bsim6.el, receipe for bsimcmg testbench files
2017-07-24 20:45:06 +02:00
rlar
334a132234
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
2017-07-24 20:45:06 +02:00
rlar
f50fa5089e
bsimcmg, adms workaround, transform Tempdep to a .va macro
2017-07-24 20:45:06 +02:00
rlar
4017e8b939
bsimcmg, adms workaround, transform hypmax to a .va macro
2017-07-24 20:45:06 +02:00
rlar
2230fb7d45
bsimcmg, adms workaround, transform hypsmooth to a .va macro
2017-07-24 20:45:06 +02:00
rlar
ecd8a1d019
bsimcmg, adms workaround, transform lln to a .va macro
2017-07-24 20:45:06 +02:00
rlar
da6993d490
bsimcmg, adms workaround, transform lexp to a .va macro
2017-07-24 20:45:06 +02:00
rlar
0302eff390
dev.c, inp2m.c, inpdomod.c, introduce bsimcmg (use level 17)
2017-07-24 20:45:06 +02:00
rlar
7fb7bf7a42
add bsimcmg.va to build system
2017-07-24 20:45:06 +02:00
rlar
2d5998d24f
bsimcmg, adms workaround, split T0 into two
2017-07-24 20:45:06 +02:00
rlar
82e3816a89
bsimcmg, adms workaround, split T1 into two
2017-07-24 20:45:06 +02:00
rlar
d0a3b27c05
bsimcmg, adms workaround, split T2 into two
2017-07-24 20:45:06 +02:00
rlar
1412df7bb7
bsimcmg, adms workaround, split T3 into two
2017-07-24 20:45:06 +02:00
rlar
f2b6d382ac
bsimcmg, work around block_local variables, use the emacs macro
2017-07-24 20:45:05 +02:00
rlar
953f61b3e4
bsimcmg, work around block_local variables
2017-07-24 20:45:05 +02:00
rlar
a307fbc535
add bsimcmg, from Berkeley's BSIMCMG110.0.0_20160101.tar.gz
2017-07-24 20:45:05 +02:00
rlar
a0a90cc762
implement "case"
2017-07-24 20:45:05 +02:00
rlar
9decf5bd60
*.va, use $simparam("gmin") instead of the _circuit_gmin workaround
2017-07-24 20:45:05 +02:00
rlar
a84592745b
implement $simparam("gmin")
2017-07-24 20:45:05 +02:00
rlar
b0fc16808f
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
2017-07-24 20:45:05 +02:00
rlar
fe43163b55
bsim6.va, disable __THERMAL_NODE__ and __SHMOD__
...
modify Benchmark accordingly,
there is no more "thermal" node
2017-07-24 20:45:05 +02:00
rlar
5f7b50c34b
ngspiceMODULEguesstopology.c.xml, $vt
...
fixme, only because some dependency detection fails to drop an expression
which might involve $vt ?
2017-07-24 20:45:05 +02:00
rlar
c081d4facd
minor, readability, missing newline
2017-07-24 20:45:05 +02:00
dwarning
b311163b77
add spice gmin parameter to drain and source junction current
2017-07-24 20:45:05 +02:00
dwarning
31ed75b9c8
remove obsolete sti and wpe model parameter
2017-07-24 20:45:05 +02:00
rlar
b821466202
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
2017-07-24 20:45:05 +02:00
rlar
cfb8140597
Benchmark_test, modify for ngspice
2017-07-24 20:45:05 +02:00
rlar
edfd25065d
add Benchmark_test for BSIM6 from Berkeley
2017-07-24 20:45:05 +02:00
rlar
020f6555d2
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
2017-07-24 20:45:04 +02:00
rlar
238091904b
temporary, make the failing nodes identifyable
2017-07-24 20:45:04 +02:00
rlar
ea2884e4ba
very first testcase, of course it fails
2017-07-24 20:45:04 +02:00
rlar
89e9e317f5
inptyplk.c, INPtypelook(), ignore case when comparing modelname
...
"bsim6" is in lower case in bsim6init.c
2017-07-24 20:45:04 +02:00
rlar
ae8c1b8e7d
ngspiceMODULEdefs.h.xml, add min max for the sake of XXXguesstopology.c
2017-07-24 20:45:04 +02:00
Guilherme Brondani Torri
c768f71ea3
fix callfunction
...
* handle $strobe
* handle $finish
* others throw error
2017-07-24 20:45:04 +02:00
rlar
1b134a7bc7
bsim6.va, macro for lln, to avoid derivatives of this function
2017-07-24 20:45:04 +02:00
rlar
c01ebb1783
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
2017-07-24 20:45:04 +02:00
rlar
fe985453bc
bsim6.va, macro for hypsmooth, to avoid derivatives of this function
2017-07-24 20:45:04 +02:00
rlar
7629cf83a8
dev.c and inp2m.c, bsim6 is level 16 ?!
2017-07-24 20:45:04 +02:00
rlar
4c31c768d7
r2_cmcguesstopology.c, r2_cmc.va, block local does not work
2017-07-24 20:45:04 +02:00
rlar
455e74cd4f
fix $given and $param_given
2017-07-24 20:45:04 +02:00