summaryrefslogtreecommitdiffstatshomepage
path: root/nl_examples/congo_bongo.c
diff options
context:
space:
mode:
Diffstat (limited to 'nl_examples/congo_bongo.c')
-rw-r--r--nl_examples/congo_bongo.c45
1 files changed, 33 insertions, 12 deletions
diff --git a/nl_examples/congo_bongo.c b/nl_examples/congo_bongo.c
index d9f40c9859a..facd4054c00 100644
--- a/nl_examples/congo_bongo.c
+++ b/nl_examples/congo_bongo.c
@@ -1,3 +1,6 @@
+
+/* € */ // ABC
+
#include "netlist/devices/net_lib.h"
#include "netlist/devices/nld_system.h"
#include "netlist/analog/nld_bjt.h"
@@ -33,13 +36,15 @@ NETLIST_START(dummy)
// IGNORED O_AUDIO0: O_AUDIO0 64 0
// .END
- SOLVER(Solver, 24000)
- PARAM(Solver.ACCURACY, 1e-7)
- PARAM(Solver.NR_LOOPS, 90)
+ /* €€ */ SOLVER(Solver, 24000)
+ PARAM(Solver.ACCURACY, 1e-8)
+ PARAM(Solver.NR_LOOPS, 9000)
PARAM(Solver.SOR_FACTOR, 0.001)
PARAM(Solver.GS_LOOPS, 1)
//PARAM(Solver.GS_THRESHOLD, 99)
PARAM(Solver.ITERATIVE, "SOR")
+ PARAM(Solver.PARALLEL, 0)
+ PARAM(Solver.PIVOT, 0)
LOCAL_SOURCE(congob_lib)
INCLUDE(congob_lib)
@@ -50,8 +55,8 @@ NETLIST_START(dummy)
//CLOCK(I_CONGA_H0, 2)
TTL_INPUT(I_CONGA_L0, 0)
//CLOCK(I_CONGA_L0, 2)
- //TTL_INPUT(I_GORILLA0, 0)
- CLOCK(I_GORILLA0, 2)
+ TTL_INPUT(I_GORILLA0, 0)
+ //CLOCK(I_GORILLA0, 2)
TTL_INPUT(I_RIM0, 0)
//CLOCK(I_RIM0, 2)
@@ -70,17 +75,33 @@ NETLIST_START(dummy)
NET_C(RO.2, GND)
// FIXME: Same as 1N4148
- NET_MODEL(".model 1S2075 D(Is=2.52n Rs=.568 N=1.752 Cjo=4p M=.4 tt=20n Iave=200m Vpk=75)")
- NET_MODEL(".model 2SC1941 NPN(IS=46.416f BF=210 NF=1.0022 VAF=600 IKF=500m ISE=60f NE=1.5 BR=2.0122 NR=1.0022 VAR=10G IKR=10G ISC=300p NC=2 RB=13.22 IRB=10G RBM=13.22 RE=100m RC=790m CJE=26.52p VJE=900m MJE=518m TF=1.25n XTF=10 VTF=10 ITF=500m PTF=0 CJC=4.89p VJC=750m MJC=237m XCJC=500m TR=100n CJS=0 VJS=750m MJS=500m XTB=1.5 EG=1.11 XTI=3 KF=0 AF=1 FC=500m)")
+ NET_MODEL("1S2075 D(Is=2.52n Rs=.568 N=1.752 Cjo=4p M=.4 tt=20n Iave=200m Vpk=75)")
+ NET_MODEL("2SC1941 NPN(IS=46.416f BF=210 NF=1.0022 VAF=600 IKF=500m ISE=60f NE=1.5 BR=2.0122 NR=1.0022 VAR=10G IKR=10G ISC=300p NC=2 RB=13.22 IRB=10G RBM=13.22 RE=100m RC=790m CJE=26.52p VJE=900m MJE=518m TF=1.25n XTF=10 VTF=10 ITF=500m PTF=0 CJC=4.89p VJC=750m MJC=237m XCJC=500m TR=100n CJS=0 VJS=750m MJS=500m XTB=1.5 EG=1.11 XTI=3 KF=0 AF=1 FC=500m)")
INCLUDE(CongoBongo_schematics)
/* The opamp actually has an FPF of about 500k. This doesn't work here and causes oscillations.
* FPF here therefore about half the Solver clock.
*/
- PARAM(XU16.B.model, "MB3614_SLOW")
- PARAM(XU17.C.model, "MB3614_SLOW")
+ PARAM(XU16.B.MODEL, "MB3614(UGF=11k)")
+ PARAM(XU17.C.MODEL, "MB3614(UGF=11k)")
+
+ PARAM(XU17.A.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU17.B.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU17.D.MODEL, "MB3614(TYPE=1)")
+
+ //PARAM(XU16.A.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU16.C.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU16.D.MODEL, "MB3614(TYPE=1)")
+
+#if 0
+ PARAM(XU13.A.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU13.B.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU13.C.MODEL, "MB3614(TYPE=1)")
+ PARAM(XU13.D.MODEL, "MB3614(TYPE=1)")
+#endif
+#if 1
OPTIMIZE_FRONTIER(C51.1, RES_K(20), 50)
OPTIMIZE_FRONTIER(R77.2, RES_K(20), 50)
@@ -91,7 +112,7 @@ NETLIST_START(dummy)
OPTIMIZE_FRONTIER(R90.2, RES_K(100), 50)
OPTIMIZE_FRONTIER(R92.2, RES_K(15), 50)
-
+#endif
NETLIST_END()
NETLIST_START(CongoBongo_schematics)
@@ -390,8 +411,8 @@ NETLIST_START(opamp_mod)
NET_C(RP1.1, G1.OP)
NET_C(CP1.1, RP1.1)
- DIODE(DP,".model tt D(IS=1e-15 N=1)")
- DIODE(DN,".model tt D(IS=1e-15 N=1)")
+ DIODE(DP,"D(IS=1e-15 N=1)")
+ DIODE(DN,"D(IS=1e-15 N=1)")
#if 1
NET_C(DP.K, fUH.Q)
NET_C(fUL.Q, DN.A)