rlar
333aa3c8e2
adms workaround $port_connected
2017-07-30 18:19:48 +02:00
rlar
1c7157364f
actually incorporate bsimcmg code from the tar file
2017-07-30 18:18:45 +02:00
rlar
7c1db5c912
add bsimcmg, from Berkeley's BSIMCMG110.0.0_20160101.tar.gz
2017-07-30 18:17:14 +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
rlar
097a78c130
ngspiceMODULE.hxx.xml, add BOLTZMANN and ELECTON_CHARGE
2017-07-24 20:45:04 +02:00
rlar
8b2aa56cb0
ngspiceMODULE.hxx.xml, add asinh etc derivative (fixme acosh atanh incomplete)
2017-07-24 20:45:04 +02:00
rlar
3c90eef07a
ngspiceMODULE.hxx.xml, $finish and test with r2_cmc.va
2017-07-24 20:45:04 +02:00
rlar
0a7a34c869
bsim6.va, work around body local vars (topology.c)
...
again OPdependent related
2017-07-24 20:45:03 +02:00
rlar
db3e92ab1e
bsim6.va, split temporary variable T0 into two variables
...
to avoid a dependency related problem in the xml files.
T0 and T0y, one of them have the OPdependent flag set
which surpresses variable declarations to be emited.
2017-07-24 20:45:03 +02:00
rlar
198eb0fd6f
bsim6.va, split temporary variable T1 into two variables
...
to avoid a dependency related problem in the xml files.
T1 and T1y, one of them have the OPdependent flag set
which surpresses variable declarations to be emited.
2017-07-24 20:45:03 +02:00
rlar
7ea7c84a59
bsim6.va, split temporary variable T2 into two variables
...
to avoid a dependency related problem in the xml files.
T2 and T2y, one of them have the OPdependent flag set
which surpresses variable declarations to be emited.
2017-07-24 20:45:03 +02:00
rlar
fa538f4e84
bsim6.va, split temporary variable T3 into two variables
...
to avoid a dependency related problem in the xml files.
T3 and T3y, one of them have the OPdependent flag set
which surpresses variable declarations to be emited.
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
ca02cf3492
avoid escape sequence %M, show hierarchical name
...
* it will cause printf to fail
2017-07-24 20:45:03 +02:00
rlar
56355eca9e
bsim6.va, work around "case"
2017-07-24 20:45:03 +02:00
rlar
a6ce771ca2
bsim6.va, work around "for" (in guesstopology ?)
2017-07-24 20:45:03 +02:00
rlar
371de5f9ef
scrub analoffunction.xml, (anti cpp)
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
05101b96fb
analogfunction, rename generated file from .cpp to .c
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
f6c68e986e
analogfunction, rename included file from [module]defs.h
2017-07-24 20:45:03 +02:00
rlar
a83e21350c
analogfunction.xml, name collission, rename function:getname and c:math_h
...
these would shadow definitions in ngspiceVersion.xml
2017-07-24 20:45:03 +02:00
rlar
f6c477a617
extend "add analogfunction.xml from Qucs"
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
e7527781cf
add analogfunction.xml from Qucs
...
* This script creates a header and source [module].analogfuncion.[h.cpp]
containing functions defined on the body of the Verilog-A model
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
7565c3590a
add modulus symbol, multmod
2017-07-24 20:45:03 +02:00
rlar
b49c241e83
bsim6.va from bsim 6.1.1, see %bsim6.el
2017-07-24 20:45:03 +02:00
Guilherme Brondani Torri
2a97a67432
Add bsim6.va to build system
2017-07-24 20:45:02 +02:00
rlar
79c35a8813
avoid unneccessairy diff noise (due to currentdate) in the adms generated files
2017-07-24 20:45:02 +02:00
rlar
8719f03207
auxiliary my.mak files and %bsim6.el
2017-07-24 20:45:02 +02:00
Guilherme Brondani Torri
7aa137cba8
register BSIM6 on adms ngspice interface
...
$./autogen.sh --adms
...
[fatal..] bsim6: device not handled by the adms ngspice interface
[fatal..] see [../admst/ngspiceVersion.xml:2120]
2017-07-24 20:45:02 +02:00