diff options
author | 2019-04-11 19:37:28 +0200 | |
---|---|---|
committer | 2019-04-12 00:44:22 +0200 | |
commit | bd365f5eab3ff38fd4cc30b0bbd35b35cea280e0 (patch) | |
tree | 03b516f6c4e6ca0e4a51f333dede19d65e5b2a00 /src/lib/netlist/macro/nlm_opamp.cpp | |
parent | a4f59176e4801ea002c0cf50f30f2b2b93ab28c9 (diff) |
Adjusted LM3900 model, fixed clipping in zaccaria.
Diffstat (limited to 'src/lib/netlist/macro/nlm_opamp.cpp')
-rw-r--r-- | src/lib/netlist/macro/nlm_opamp.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/lib/netlist/macro/nlm_opamp.cpp b/src/lib/netlist/macro/nlm_opamp.cpp index 886345ec6c3..d671847abb0 100644 --- a/src/lib/netlist/macro/nlm_opamp.cpp +++ b/src/lib/netlist/macro/nlm_opamp.cpp @@ -290,18 +290,19 @@ NETLIST_END() static NETLIST_START(LM3900) OPAMP(A, "LM3900") - DIODE(D1, "D") - DIODE(D2, "D") + DIODE(D1, "D(IS=1e-14 N=1)") + CCCS(CS1) // Current Mirror ALIAS(VCC, A.VCC) ALIAS(GND, A.GND) - ALIAS(MINUS, A.MINUS) ALIAS(PLUS, A.PLUS) + ALIAS(MINUS, A.MINUS) ALIAS(OUT, A.OUT) - NET_C(D1.A, A.PLUS) - NET_C(D2.A, A.MINUS) - NET_C(D1.K, D2.K, A.MINUS) + NET_C(A.PLUS, CS1.IP) + NET_C(D1.A, CS1.IN) + NET_C(CS1.OP, A.MINUS) + NET_C(CS1.ON, A.GND, D1.K) NETLIST_END() #endif @@ -320,7 +321,7 @@ NETLIST_START(OPAMP_lib) NET_MODEL("UA741 OPAMP(TYPE=3 VLH=1.0 VLL=1.0 FPF=5 UGF=1000k SLEW=0.5M RI=2000k RO=75 DAB=0.0017)") NET_MODEL("LM747 OPAMP(TYPE=3 VLH=1.0 VLL=1.0 FPF=5 UGF=1000k SLEW=0.5M RI=2000k RO=50 DAB=0.0017)") NET_MODEL("LM747A OPAMP(TYPE=3 VLH=2.0 VLL=2.0 FPF=5 UGF=1000k SLEW=0.7M RI=6000k RO=50 DAB=0.0015)") - NET_MODEL("LM3900 OPAMP(TYPE=3 VLH=2.0 VLL=0.2 FPF=2k UGF=4M SLEW=0.5M RI=1M RO=2k DAB=0.0015)") + NET_MODEL("LM3900 OPAMP(TYPE=3 VLH=1.0 VLL=0.03 FPF=2k UGF=4M SLEW=0.5M RI=10M RO=2k DAB=0.0015)") #if USE_LM3900_MODEL == 1 NET_MODEL("LM3900_NPN1 NPN(IS=1E-14 BF=150 TF=1E-9 CJC=1E-12 CJE=1E-12 VAF=150 RB=100 RE=5 IKF=0.002)") |