diff options
Diffstat (limited to 'nl_examples/congo_bongo.c')
-rw-r--r-- | nl_examples/congo_bongo.c | 45 |
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) |