LM3886 LTSPICE моделька
#1

Я тут накидал простенькую модельку LM3886. Ну там петлевое посмотреть, шумы, искажения, скорость нарастания. И т.д. и т.п. Грубо и очень схематично конечно.
Тем не менее на мой взгляд в некоторых случаях достаточно полезно.


Файлы вложений
.zip LM3886.zip Размер: 4.27 KB  Загрузок: 82

Nobody Is Perfect
The following 6 users say Thank You to begemot for this post:
  • bobby_ii (03-03-2016), Nick (03-03-2016), flipper (03-04-2016), EDWARD (03-04-2016), баюн (03-04-2016), Rico (07-24-2016)
Ответ
#2

begemot Написал:Я тут накидал простенькую модельку LM3886. Ну там петлевое посмотреть, шумы, искажения, скорость нарастания. И т.д. и т.п. Грубо и очень схематично конечно.
Тем не менее на мой взгляд в некоторых случаях достаточно полезно.
моделька от TI хуже будет ?

художник творит для тех, кто имеет похожую/близкую конструкцию мозга, позволяющую воспринимать созданное
Ответ
#3

Я как-то её смотрел в Тине, там что то было кривовато, по моему петлевое. Точно не помню. Ну и Тину как и PSPICE
я не люблю. А из моделька закодирована
А эта-ну я знаю чего от неё ждать а чего -нет. Но конечно надо помнить что она на функциональном уровне.

Nobody Is Perfect
Ответ
#4

самый лучший симулятор это Microcap
Ответ
#5

Это кто тебе такое сказал?

Nobody Is Perfect
Ответ
#6

Рубальский, я почти уверен.

"Найкраще сало то ковбаса." (с)
Ответ
#7

А, ну да, он же учил Тета пользоваться тем чем сам не умеет.

Nobody Is Perfect
Ответ
#8

Это ты на ноль делить не умееш!

"The universal aptitude for ineptitude makes any human accomplishment an incredible miracle." John Stapp
Ответ
#9

Осмелюсь добавить в эту тему дешифрованную модельку усилителя LM3886 от Texas Instruments Inc для Микрокапа.
Ссылка для скачивания
https://yadi.sk/d/sfpv6wZO378DcK
Поместите ее в папку LIBRARY и добавьте стандартным способом. Т.к. микруха и соответственно модель работают с плавающей землей, то необходимо при запуске снимать флажок в строке Path_to_Ground глобальных установок. Любители Свечки (LTspice) могут попробовать воткнуть ее в этот симуль, благо там и там движок один и тот же Spice3.
Ответ
#10

Попробовал запустить в Микрокап модельку LM3886_ED для LTspice, которую во первых строках своего письма представил begemot. После устранения незначительного несоответствия синтаксиса заработала. Но вот столкнулся с другой проблемкой. Нашлась еще одна моделька этой же микрухи, которую один чел крякнул, как он сказал благодаря криворукости разработчиков TI, прямо из зашифрованного текста билиотечного файла. Так эта моделька почти нормально заработала в Микрокапе. Не действовала только сурдинка (MUTE). Но вот в LTspice работать не хочет. Пишет "Could not open library file LM3886.lib".
Ответ
#11

Вот моделька которую Вы выложили. Будет немного времени-гляну

Код:
*  LM3886  Decrypted Spice-Model
*****************************************************************************
* (C) Copyright 2012 Texas Instruments Incorporated. All rights reserved.    
*****************************************************************************
** This model is designed as an aid for customers of Texas Instruments.
** TI and its licensors and suppliers make no warranties, either expressed
** or implied, with respect to this model, including the warranties of
** merchantability or fitness for a particular purpose.  The model is
** provided solely on an "as is" basis.  The entire risk as to its quality
** and performance is with the customer.
*****************************************************************************
*
** Released by: WEBENCH (R) Design Center, Texas Instruments Inc.
* Date:             2012-02-28
* Model Type:       ALL IN ONE
* Simulator:        PSPICE
* Simulator:        TINA
* Simulator:        MICROCAP
* Simulator Version: Version 9.1.30.94 SF
* EVM Order Number: N/A
* EVM Users Guide:  N/A
* Model Version:    1.0
*
*****************************************************************************
*
* Updates:
*
* Version 1.0 :
* Release to Web
*
*****************************************************************************
* Notes:
* The LM3886 Macro Model represents the following parameters for
* split-supply operation (+/-28V):
* GBWP, input-referred voltage noise, the quiescent current,
* output swing, input offset voltage, input bias current, PSRR,  
* CMRR, and the slew rate.
*
*****************************************************************************
*$
.SUBCKT LM3886 INP INN VCC VEE GND OUT MUTE
*
V_Vos          INP2       INP_CMRR  -1056uVdc
R_Rinp         INP        INP1       1  
R_Rinn         INN        INN1       1  
C_Cinp         GND        INP1       200f  
C_Cinn         GND        INN1       200f  
E_E1           VCC_BUF    GND        VCC    GND  1
E_E2           VEE_BUF    GND        VEE    GND  1
R_RMUTE        VCC        MUTE       1e6  
X_UIcc         VCC        VEE        MUTE VIMON GND  INP2 INN1 HPA_PD_I
+  PARAMS:     VTH=1.4I   IMAX=50e-3  IMIN=0.444e-3 IIBP=210n IIBN=200n
G_G1           GND        N2B        INP_CMRR   GND  3.2u
E_Ecmrr        INN2       INN3       N2B        GND  1
R_Rcmr         N2B        N2         1  
L_Lcmr         N2         GND        560nH  
G_G2           GND        N1B        VCC_BUF    VEE_BUF 1u
L_Lpsr         N1         GND        2uH  
R_Rpsr         N1B        N1         1  
X_Upsrr        N1B        GND        INN1     INN2 VCVS_LIMIT
+  PARAMS:     GAIN=-1    VPOS=20M   VNEG=-20M
X_Uvn          INP1       INP2       VNSE
*
V_V1           VCC        N3         3.59Vdc
V_V4           N4         VEE        3.59Vdc
X_Ud2          INN3       N3         d_ideal
X_Ud1          INP_CMRR   N3         d_ideal
X_Ud3          N4         INP_CMRR   d_ideal
X_Ud4          N4         INN3       d_ideal
*
X_Ug0          INP_CMRR   INN3       GND   AV1        VCCS_LIMIT
+  PARAMS:     GAIN=10e-6 IPOS=0.5   INEG=-0.5
X_Ug4          AV1        GND        GND   OVER_CLAMP VCCS_LIMIT
+  PARAMS:     GAIN=26.5u IPOS=107.5u  INEG=-107.5u
GRU1           GND        AV1        VALUE={V(GND ,AV1       )/1e6}
GRU2           GND        OVER_CLAMP VALUE={V(GND ,OVER_CLAMP)/2.1e9}
C_Cc1          GND        OVER_CLAMP 5.3p  
C_Cc2          P0ZP1      GND        5e-15  
C_Cc3          CLAW_CLAMP GND        995f  
*
X_UIout        VCC        VEE        VIMON      GND  TRAN_IOUT
G_G3           GND        VSENSE     OVER_CLAMP GND  1u
G_G4           GND        P0Z        VSENSE     GND  1u
G_G5           GND        P0ZP1      P0Z        GND  1u
G_G6           GND        CLAW_CLAMP P0ZP1      GND  1m
G_G7           GND        CL_CLAMP   CLAW_CLAMP GND  1m
GRU3           VSENSE     GND        VALUE={V(VSENSE,GND )/1e6}
GRU5           GND        P0Z        VALUE={V(GND ,  P0Z )/1e6}
GRU6           P0ZP1      GND        VALUE={V(P0ZP1, GND )/1e6}
GRU7           CLAW_CLAMP GND        VALUE={V(CLAW_CLAMP,GND )/1e3}
GRU8           CL_CLAMP   GND        VALUE={V(CL_CLAMP,  GND )/1e3}
*
X_UpwrDn       CL_CLAMP   GND        MUTE   N90  GND  VCC VEE HPA_PD_SGNL
*

XVoclp         VCC        VEE        N90    N94  Vimon1 GND  VCLAMP_W_SENSE_0
+ PARAMS:      VMAXIO=1.55 VMINIO=2.45 SLOPE=0
XIoclp         VCLP       N94        RNOISE_LESS_WILIM_0
+ PARAMS:      RX=0.01    IMAX=11.5  IMIN=-11.5
XUA            VCLP       Uz_VZO_4   Vimon1 GND  AMETER_0
*
X_Uz_H1        Uz_VZO_4   OUT        VIMON GND  Zout_Uz_H1
E_Uz_E1        Uz_VZO_2   GND        Uz_VZO_1   Uz_VZO_4 -1
R_Uz_Ra        Uz_N106    Uz_VZO_4   10  
R_Uz_Rb        Uz_N104    Uz_VZO_4   10  
R_Uz_Rm        Uz_VZO_3   Uz_VZO_4   10  
X_Uz_S1        N92        GND        Uz_N106   Uz_VZO_3 Zout_Uz_S1
X_Uz_S2        N92        GND        Uz_N104   Uz_VZO_3 Zout_Uz_S2
GRUz_Rg1       GND        Uz_N100    VALUE={V(GND     ,Uz_N100)/10e6}
GRUz_Rf1       Uz_N100    Uz_VZO_1   VALUE={V(Uz_N100 ,Uz_VZO_1)/10e6}
GRUz_Rg2       Uz_VZO_2   Uz_N102    VALUE={V(Uz_VZO_2,Uz_N102 )/1e6}
GRUz_Rf2       Uz_N102    Uz_VZO_3   VALUE={V(Uz_N102 ,Uz_VZO_3)/1e6}
X_Uz_Uamp1     VCLP       Uz_N100    Uz_VZO_1   GND  VCVS_LIMIT
+  PARAMS:     GAIN=1e6   VPOS=6e4   VNEG=-6e4
X_Uz_Uamp2     GND        Uz_N102    Uz_VZO_3   GND  VCVS_LIMIT
+  PARAMS:     GAIN=1e6V  VPOS=6e4   VNEG=-6e4
*
.ENDS LM3886
*$
*
.subckt Zout_Uz_S1 1 2 3 4  
S_Uz_S1         3 4 1 2 _Uz_S1
RS_Uz_S1         1 2 1G
.MODEL         _Uz_S1 VSWITCH Roff=10e6 Ron=1.0 Voff=-0.1V Von=0.1V
.ends Zout_Uz_S1
*$
.subckt Zout_Uz_S2 1 2 3 4  
S_Uz_S2         3 4 1 2 _Uz_S2
RS_Uz_S2         1 2 1G
.MODEL         _Uz_S2 VSWITCH Roff=10e6 Ron=1.0 Voff=0.1V Von=-0.1V
.ends Zout_Uz_S2
*$
.subckt Zout_Uz_H1 1 2 3 4  
H_Uz_H1         3 4 VH_Uz_H1 1e3
VH_Uz_H1         1 2 0V
.ends Zout_Uz_H1
*
*$
.subckt rnoiseless a b PARAMS: R=1k
*H_H1 c b VH_H1 {R}
*VH_H1 a c 0
ERES a 3 VALUE = { I(VSENSE) * R }
Rdummy 30 3 1
VSENSE 30 b DC 0V
.ends
*$
*
.SUBCKT EPOLY1 1 2 3 4  PARAMS: Coeff1=0.0  Coeff2=0.0
*For distortion purpose
*EINT 3 4 POLY(1) (1,2) (0 1 Coeff1 Coeff2)
EINT 3 4 POLY(1) (1,2) (0 1 0 0)
.ENDS EPOLY1
*$
*
.subckt D_ideal A C
D1 A C DNOM
.MODEL DNOM D (IS=1e-16 RS=1e-3 N=1e-3)
.ENDS D_ideal
*
*$
.subckt VCCS_Limit VCP VCN IOUTP IOUTN PARAMS: Gain = 1.7e-3
+ Ipos = 0.100 Ineg = -0.165
G1 IOUTP IOUTN VALUE={LIMIT(Gain*V(VCP,VCN),Ipos,Ineg)}
.ends VCCS_Limit
*
*$
.subckt VCVS_Limit VCP VCN VOUTP VOUTN PARAMS: Gain = -1
+ Vpos = 20m Vneg = -20m
E1 VOUTP VOUTN VALUE={LIMIT(Gain*V(VCP,VCN),Vpos,Vneg)}
.ends VCVS_Limit
*$
*
.SUBCKT VNSE 1 2
**************************
* BEGIN SETUP OF NOISE GEN - NANOVOLT/RT-HZ
* INPUT THREE VARIABLES
* NLF - NV/RHZ AT (1/F) FREQ
* FLW - FREQ FOR (1/F) VAL
* NVR - NV/RHZ FLATBAND
**************************
* START CALC VALS
.PARAM NLF=20.2
.PARAM FLW=1
.PARAM NVR=1.99
.PARAM GLF={PWR(FLW,0.25)*NLF/1164}
.PARAM RNV={1.184*PWR(NVR,2)}
.MODEL DVN D KF={PWR(FLW,0.5)/1E11} IS=1.0E-16
* END CALC VALS
I1 0 7 10E-3
I2 0 8 10E-3
D1 7 0 DVN
D2 8 0 DVN
E1 3 6 7 8 {GLF}
R1 3 0 1E9
R2 3 0 1E9
GR3 3 6 3 6 1E-9
E2 6 4 5 0 10
R4 5 0 {RNV}
R5 5 0 {RNV}
R6 3 4 1E9
R7 4 0 1E9
E3 1 2 3 4 1
C1 1 0 1E-15
C2 2 0 1E-15
C3 1 2 1E-15
.ENDS VNSE
*$
*
.SUBCKT HPA_PD_I VCC VEE PD Vimon AGND Ninp Ninn PARAMS: Vth = 1.4 Imax = 1e-3  Imin = 3n
+       IIBP= 0.55u  IIBN= 0.56u
*GBIAS    VCC  VEE    VALUE = {IF(V(PD)   >= (V(VEE)+Vth),Imax,Imin)}
GBIAS     VCC  VEE    VALUE = {IF(V(PD)   >= V(VCC),Imax,Imin)}
Ebuf      VDD  0      VCC  0   1
Ginp      VDD  Ninp   VALUE = {IF(V(PD)   >= V(VCC),IIBP,0)}
Ginn      VDD  Ninn   VALUE = {IF(V(PD)   >= V(VCC),IIBN,0)}
.ENDS
*$
*
.SUBCKT HPA_PD_Sgnl  CP  CN  DIS  VP  VN  VCC VEE PARAMS:  GAIN = 1
EVCVS  VP  VN  VALUE = {IF(V(DIS,VEE) >= 1.4,V(CP,CN)*GAIN,0)}
.ENDS HPA_PD_Sgnl
*$
*
.SUBCKT Tran_Iout VCC VEE VIMON AGND
X_Siq1         N1 GND_FLOAT VIMON N2 Amp_Dyn_Iout_Siq1
X_Siq2         N1 GND_FLOAT VIMON N3 Amp_Dyn_Iout_Siq2
C_Ciq1         N1 GND_FLOAT  10e-12  
R_Riq1         N1 VIMON      10    
R_Riq2         N2 GND_FLOAT  10e3    
R_Riq3         GND_FLOAT N3  10e3    
G_Gsourcing    VCC GND_FLOAT N3 GND_FLOAT 0.001
G_Gsinking     VEE GND_FLOAT N2 GND_FLOAT 0.001
.ENDS Tran_Iout
*$
.subckt Amp_Dyn_Iout_Siq1 1 2 3 4  
S_Siq1         3 4 1 2 _Siq1
RS_Siq1        1 2 1G
.MODEL        _Siq1 VSWITCH Roff=1e6 Ron=1.0 Voff=0.0V Von=-0.10V
.ends Amp_Dyn_Iout_Siq1
*$
*
.subckt Amp_Dyn_Iout_Siq2 1 2 3 4  
S_Siq2         3 4 1 2 _Siq2
RS_Siq2        1 2 1G
.MODEL        _Siq2 VSWITCH Roff=1e6 Ron=1.0 Voff=0.0V Von=0.10V
.ends Amp_Dyn_Iout_Siq2
*$
*
.SUBCKT VCLAMP_W_SENSE_0   VCC  VEE  VI  VO VIMON  GNDF
+ PARAMS: VMAXIO = 0.1 VMINIO = 0.1 SLOPE = 0
EPCLIP  VCC_CLP 0   VALUE = {V(VCC,GNDF) - SLOPE*V(VIMON,GNDF) - VMAXIO}
ENCLIP  VEE_CLP 0   VALUE = {V(VEE,GNDF) - SLOPE*V(VIMON,GNDF) + VMINIO}
ECLAMP  VO     GNDF VALUE = {LIMIT(V(VI,GNDF), V(VCC_CLP), V(VEE_CLP))}
.ENDS
*
*$
.SUBCKT RNOISE_LESS_WILIM_0   P  N  PARAMS: RX = 1E-3  IMAX = 1M  IMIN = -1M
GRES  P N VALUE = {LIMIT(V(P,N)/RX, IMAX, IMIN)}
.ENDS
*
*$
.SUBCKT AMETER_0   VI  VO VIMON GNDF
+ PARAMS: GAIN = 1
VSENSE VI    VO1  DC = 0
R1     VO1   VO   1e-3
R2     VO1   VO   1e-3
R3     VO1   VO   1e-3
R4     VO1   VO   1e-3
EMETER VIMON GNDF VALUE = {I(VSENSE)*GAIN}
.ENDS
*
*$

.OPTIONS ACCT LIST OPTS ABSTOL=1uA CHGTOL=1nC DEFL=100u DEFW=100u DEFNRD=0
+ DEFNRS=0 DEFPD=0 DEFPS=0 DIGDRVF=2 DIGDRVZ=20K DIGERRDEFAULT=20 DIGERRLIMIT=0
+ DIGFREQ=10GHz DIGINITSTATE=0 DIGIOLVL=2 DIGMNTYMX=2 DIGMNTYSCALE=0.4
+ DIGOVRDRV=3 DIGTYMXSCALE=1.6 DIODE_MAX_IS=1e-6 GMIN=1n INTERPOLATION_ORDER=2
+ ITL1=200 ITL2=50 ITL4=50 PIVREL=1m PIVTOL=.1p RELTOL=10m SANDH_PRECISION=1e-4
+ SD=2.58 SEED=0 TEMP=27 TNOM=27 TRTOL=7 VNTOL=1m WIDTH=80 PRIVATEDIGITAL=0
+ PRIVATEANALOG PERFORM_M=2 RMIN=1u R_NODE_GND=1e6 PATH_TO_GROUND
+ VOLTAGE_LOOP_CHECK FLOATING_NODES_CHECK=0 NUMERIC_DERIVATIVE=0 LTHRESH=1.5
+ LONE=3.5 LZERO=.3 CSHUNT=0 RSHUNT=0 RP_FOR_ISOURCE=0 METHOD=GEAR
;$SpiceType=AMBIGUOUS


Файлы вложений
.zip lLM3886_decr.zip Размер: 3.6 KB  Загрузок: 37

Nobody Is Perfect
Ответ
#12

Dangyz Написал:Пишет "Could not open library file LM3886.lib"
Так у Вас же библиотечный файл называется "lLM3886_decr.LIB". Надо правильно указывать название.
Я кстати попробовал. В AC вроде работает а в Transiente - отказывается сходится.

У меня есть их библиотека для PSPICE. И она работает в LTSPICE. Но насколько я помню там что-то криво считалось. Поэтому я и сделал свою функциональную модель.


Файлы вложений
.zip LM3886_PS.zip Размер: 3.27 KB  Загрузок: 53

Nobody Is Perfect
Ответ
#13

Begemot пишет
Цитата:Я кстати попробовал. В AC вроде работает а в Transiente - отказывается сходится.
Как мне представляется несходимость в этой модельке только кажущаяся. В Микрокапе она элементарно устраняется снятием флажка "Path to ground" в установке глобальных параметров. Дело скорее всего в том, что микросхема работает с плавающим нулем, а эта опция устанавливает связь с потенциалом земли. Не знаю, есть ли что-то аналогичное в LTspice. Кстати, Ваша моделька в Микрокапе работает независимо от состояния этой опции. Третий (крякнутый) вариант модельки наверное кривой. От того он не и приживается в LTspice. Если есть время и желание взглянуть на него, можно скачать https://yadi.sk/d/4kyhPjvJ38CEVa
Ответ
#14

Евгений откуда ты взял данные о шумах 3886?

"The universal aptitude for ineptitude makes any human accomplishment an incredible miracle." John Stapp
Ответ
#15

Х.з. Скорее всего нигде. Меня интересовало петлевое. Остальное -скорее всего дефолты из моей универсальной модели.

Nobody Is Perfect
Ответ
#16

Вопрос к Назару - а нельзя ли из SPICE- модели реверсировать хотя бы упрощенную принципиальную схему на THS3491 и OPA1622, причина интереса- оба однокаскадные, тянут 25 Ом, но при этом у обоих реализовано усиление примерно миллион.
Ответ
#17

Нельзя, микромоделей никто не делает

"The universal aptitude for ineptitude makes any human accomplishment an incredible miracle." John Stapp
Ответ
#18

Xотя были немцы из Сoncept Engineering с софтом Spice Vision Pro, она якобы позволяла.
Ответ
#19

Они все позволяют, просто никто так не делает. По нескольким причинам.

Nobody Is Perfect
Ответ
#20

Вопрос не праздный. Некоторые схемные решения- например бутстрап зеркала Вильсона в AD797 либо H-bridge с токовыми зеркалами в RR Out в АD8027 делают их непригодными для качественного звука, а по измерениям все супер. Нынешняя дурная мода все шифровать заводит в тупик.Хотя бы огрызки схем пихали, Cпайс модели все равно корявые, и серьезные вещи все равно приходится допиливать вручную.
Ответ


Возможно похожие темы ...
Тема / Автор Ответы Просмотры Последний пост

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)