diff options
Diffstat (limited to 'nl_examples/congo_bongo.c')
-rw-r--r-- | nl_examples/congo_bongo.c | 94 |
1 files changed, 5 insertions, 89 deletions
diff --git a/nl_examples/congo_bongo.c b/nl_examples/congo_bongo.c index 0415b6f0746..f498293d250 100644 --- a/nl_examples/congo_bongo.c +++ b/nl_examples/congo_bongo.c @@ -50,7 +50,7 @@ NETLIST_START(dummy) #if USE_OPTMIZATIONS SOLVER(Solver, 24000) - PARAM(Solver.DYNAMIC_TS, 0) + PARAM(Solver.DYNAMIC_TS, 0 ) #else SOLVER(Solver, 24000) PARAM(Solver.DYNAMIC_TS, 1) @@ -367,97 +367,13 @@ NETLIST_START(CongoBongo_schematics) NET_C(C61.1, R94.2) NETLIST_END() -NETLIST_START(opamp_mod) - - /* Opamp model from - * - * http://www.ecircuitcenter.com/Circuits/opmodel1/opmodel1.htm - * - * MB3614 Unit Gain frequency is about 500 kHz and the first pole frequency - * about 5 Hz. We have to keep the Unity Gain Frequency below our sampling - * frequency of 24 Khz. - * - * Simple Opamp Model Calculation - * - * First Pole Frequency 5 Hz - * Unity Gain Frequency 11,000 Hz - * RP 100,000 Ohm - * DC Gain / Aol 2200 - * CP 0.318 uF - * KG 0.022 - * - */ - - /* Terminal definitions for calling netlists */ - - ALIAS(PLUS, G1.IP) // Positive input - ALIAS(MINUS, G1.IN) // Negative input - ALIAS(OUT, EBUF.OP) // Opamp output ... - - AFUNC(fUH, 1, "A0 1.2 -") - AFUNC(fUL, 1, "A0 1.2 +") - - ALIAS(VCC, fUH.A0) // VCC terminal - ALIAS(GND, fUL.A0) // VGND terminal - - AFUNC(fVREF, 2, "A0 A1 + 0.5 *") - NET_C(fUH.A0, fVREF.A0) - NET_C(fUL.A0, fVREF.A1) - - NET_C(EBUF.ON, fVREF) - /* The opamp model */ - - LVCCS(G1) - PARAM(G1.RI, RES_K(1000)) -#if 0 - PARAM(G1.G, 0.0022) - RES(RP1, 1e6) - CAP(CP1, 0.0318e-6) -#else - PARAM(G1.G, 0.002) - PARAM(G1.CURLIM, 0.002) - RES(RP1, 9.5e6) - CAP(CP1, 0.0033e-6) -#endif - VCVS(EBUF) - PARAM(EBUF.RO, 50) - PARAM(EBUF.G, 1) - - NET_C(G1.ON, fVREF) - NET_C(RP1.2, fVREF) - NET_C(CP1.2, fVREF) - NET_C(EBUF.IN, fVREF) - - NET_C(RP1.1, G1.OP) - NET_C(CP1.1, RP1.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) - NET_C(DP.A, DN.K, RP1.1) -#else - /* - * This doesn't add any performance by decreasing iteration loops. - * To the contrary, it significantly decreases iterations - */ - RES(RH1, 0.1) - RES(RL1, 0.1) - NET_C(DP.K, RH1.1) - NET_C(RH1.2, fUH.Q) - NET_C(fUL.Q, RL1.1) - NET_C(RL1.2, DN.A) - NET_C(DP.A, DN.K, RP1.1) - -#endif - NET_C(EBUF.IP, RP1.1) - -NETLIST_END() NETLIST_START(G501534_DIP) - AFUNC(f, 2, "A0 A1 0.2 * *") + //AFUNC(f, 2, "A0 A1 A1 A1 * * 0.01 * *") + //AFUNC(f, 2, "A0") + //AFUNC(f, 2, "A0 6 - A1 3 pow * 0.02 * 6 +") + AFUNC(f, 2, "A0 A1 3 pow * 0.02 *") /* * 12: VCC |