¿ªÔÆÌåÓý

Date

Re: More on Burr Brown Models

 

--- In LTspice@..., "polapart" <sahawley@m...> wrote:
--- polapart <sahawley@m...> wrote:
I am trying to run a Burr Brown Op Amp, the OPA336.
The transient analysis "sort of" runs but LTSpice
notes a couple of problems, most notably
unrecognized parameters, jssw and vfb.
I couldn't find this model. Can you send it to me.

--Mike

Here's the link to the TI page. Thanks

genericPartNumber=OPA336&pfsection=models
Hello Steve,
the magic trick for the convergence problem in .AC analysis is the
latest 'gnin parallel current source' feature.
That was the only way I found to get convergence in .AC analysis for
this OPAMP.

Enable this feature in the control panel.
Control Panel->Hacks-> Add GMIN across current sorce
But this alone doesn't help. We have to add the command line
.OPTIONS gmin=1e-10 noopiter=1 into the schematic.

I have read in a book? that .TRAN analysis always does converge
better.

Hello Mike,
is that true?
Unfortunately this doesn't help anything when somebody has to make
a .AC analysis.

What's about this error message regarding JFET parameters?
Error on line 61 : .model nch nmos (level=3 tox=30e-9 cgdo=1.55e-10
cgso=1.55e-10 cj=6.300e-4 cjsw=3.83e-10 af=1.05 kf=2.6e-31 js=2.0e-7
jssw=5e-13 rsh=68 mj=.25 mjsw=.11 vfb=-0.784 phi=0.792 vto=.81 ld=34e-
9 wd=17e-9 tpg=-1 gamma=0.6)
Unrecognized parameter "jssw" - ignored
Unrecognized parameter "vfb" - ignored
Error on line 60 : .model pch pmos (level=3 tox=30e-9 cgdo=1.80e-10
cgso=1.80e-10 cj=7.199e-4 cjsw=3.40e-10 af=1.05 kf=1.0e-31 js=4.0e-7
jssw=3.0e-13 rsh=117 mj=.47 mjsw=.16 vfb=-0.34 phi=0.71 vto=-.892
ld=12e-9 wd=43e-9 tpg=+1 gamma=0.6)
Unrecognized parameter "jssw" - ignored
Unrecognized parameter "vfb" - ignored

I have my test files attached.

Best Regards
Helmut

The LTSPICE file for .AC analysis.

Version 4
SHEET 1 1372 1316
WIRE 320 320 320 352
WIRE 320 256 320 224
WIRE -16 368 -16 304
WIRE -16 96 80 96
WIRE 80 304 -16 304
WIRE 160 304 240 304
WIRE 160 96 240 96
WIRE 288 272 240 272
WIRE 240 272 240 96
WIRE 464 96 512 96
WIRE 512 96 512 288
WIRE 512 288 352 288
WIRE -16 480 -16 448
WIRE 240 480 240 512
WIRE 384 480 384 512
WIRE 240 592 240 624
WIRE 384 592 384 624
WIRE 512 288 544 288
WIRE 240 96 384 96
WIRE 240 304 288 304
WIRE 320 976 320 1008
WIRE 320 912 320 880
WIRE -16 752 96 752
WIRE 80 960 -16 960
WIRE 160 960 240 960
WIRE 160 752 240 752
WIRE 288 928 240 928
WIRE 240 928 240 752
WIRE 464 752 512 752
WIRE 512 752 512 944
WIRE 512 944 352 944
WIRE 512 944 544 944
WIRE 240 752 384 752
WIRE 240 960 288 960
WIRE -16 1024 -16 960
WIRE -16 1136 -16 1104
FLAG 320 224 Vcc
FLAG 240 480 Vcc
FLAG 384 480 Vss
FLAG 320 352 Vss
FLAG -16 480 0
FLAG 240 624 0
FLAG 384 624 0
FLAG 544 288 out
FLAG 240 96 in-
FLAG 240 304 in+
FLAG -16 96 0
FLAG 320 880 Vcc
FLAG 320 1008 Vss
FLAG 544 944 out1
FLAG 240 752 in1-
FLAG 240 960 in1+
FLAG -16 752 0
FLAG -16 304 in
FLAG -16 1136 0
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;x_models&#92;xopamp 320 224 R0
SYMATTR InstName U1
SYMATTR Value OPA336
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage 240 496 R0
SYMATTR InstName V1
SYMATTR Value 2.5
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage 384 496 R0
SYMATTR InstName V2
SYMATTR Value -2.5
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage -16 352 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR Value2 AC 1
SYMATTR InstName V3
SYMATTR Value 1
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;res 368 112 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R1
SYMATTR Value 1MEG
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;res 64 320 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R2
SYMATTR Value 1MEG
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;res 64 112 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R3
SYMATTR Value 1MEG
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;x_models&#92;xopamp 320 880 R0
SYMATTR InstName U2
SYMATTR Value OPA336
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;res 368 768 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R4
SYMATTR Value 1MEG
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;res 64 976 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R5
SYMATTR Value 1
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;cap 96 768 R270
WINDOW 0 32 32 VTop 0
WINDOW 3 0 32 VBottom 0
SYMATTR InstName C1
SYMATTR Value 1
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage -16 1008 R0
WINDOW 123 24 132 Left 0
WINDOW 39 0 0 Left 0
SYMATTR Value2 AC 1
SYMATTR InstName V4
SYMATTR Value 0
TEXT -432 40 Left 0 ;.op
TEXT -432 -128 Left 0 !.include opa336.mod
TEXT -440 -160 Left 0 !.AC DEC 100 1 100MEG
TEXT -432 -40 Left 0 !.nodeset V(out)=2 V(in-)=1 V(in+)=1
TEXT -400 1256 Left 0 ;.OPTIONS vntol=1e-2 reltol=1e-2 itl1=500
itl2=500 itl6=500 abstol=1e-4 gmin=1e-9 gminsteps=100 noopiter=1
pivtol=1e-6
TEXT -432 -8 Left 0 !.nodeset V(out1)=0 V(in1-)=0 V(in1+)=0
TEXT -432 -88 Left 0 !.OPTIONS gmin=1e-10 noopiter=1
TEXT -400 1288 Left 0 ;.OPTIONS itl1=500 itl2=500 itl6=500 vntol=1e-
3 abstol=1e-12 reltol=1e-3 trtol=1 pivtol=1e-13 pivrel=1e-3 gmin=1e-
12 gminsteps=100 noopiter=1







The model OPA336.mod:
Be carefully with the broken lines I see in this awful YAHOO-editor.


* -------------------------------------------------------------------
-----
* | NOTICE: THE INFORMATION PROVIDED HEREIN IS BELIEVED TO BE
RELIABLE; |
* | HOWEVER; BURR-BROWN ASSUMES NO RESPONSIBILITY FOR INACCURACIES
OR |
* | OMISSIONS. BURR-BROWN ASSUMES NO RESPONSIBILITY FOR THE USE OF
THIS |
* | INFORMATION, AND ALL USE OF SUCH INFORMATION SHALL BE ENTIRELY
AT |
* | THE USER'S OWN RISK. NO PATENT RIGHTS OR LICENSES TO ANY OF
THE |
* | CIRCUITS DESCRIBED HEREIN ARE IMPLIED OR GRANTED TO ANY THIRD
PARTY. |
* | BURR-BROWN DOES NOT AUTHORIZE OR WARRANT ANY BURR-BROWN PRODUCT
FOR |
* | USE IN LIFE-SUPPORT DEVICES AND/OR
SYSTEMS. |
* -------------------------------------------------------------------
-----
*
*
*
* SUBCIRCUIT MACROMODEL OPA336
* PSpice ver. 6.3
* REV A. CREATED Wednesday, June 18, 1997 RH
* REV B. 25 JUNE 97 NPA: COMPILED INTO OPA336.MOD
* REV C. 26 JUNE 97 NPA: EDITED NODE SYNTAX AND ADDED .OPTION NOTES
*
* Notes concerning using macromodel to simulate OPA336:
* 1) Model is actually a simplified schematic of OPA336.
* 2) Model was created with PSpice ver. 6.3, level 3 device models.
* 3) Operation of the circuit is assumed to be single supply
*

* Example: X_U1 1 2 3 0 5 OPA336
*

* Where U is the subcircuit name and
* connections: non-inverting input
* | inverting input
* | | positive power supply
* | | | negative power supply
* | | | | output
* | | | | |
* .subckt OPA336 1 2 3 4 5
*
* Note that node "4" may be connected to ground "0", i.e., single
supply operation.
*
* 4) ADD .OPTION ITL=40 AND .OPTION GMIN=10p TO NET LIST IF
SIMULATION DOES NOT
* CONVERGE
* 5) ADDING .NODESET STATEMENT (BELOW) TO NET LIST MAY HELP
CONVERGENCE IS CASES
* WHERE V+=5V AND V-=0V ; SINGLE SUPPLY OPERATION. ASSUMES
SUBCIRCUIT IS "U1".
*
* .NODESET
* +V(2) = 2.5 V(1) = 2.5 V(5) = 2.5 V(3) = 5.0
* +V(X_U1.20)= 3.8 V(X_U1.23)= 3.8 V(X_U1.25)= .834 V(X_U1.27)
= .833 V(X_U1.29)= .834
* +V(X_U1.32)= 2.03 V(X_U1.34)= 2.03 V(X_U1.43)= 4.065 V(X_U1.44)=
2.51 V(X_U1.45)= 1.93
* +V(X_U1.47)= 1.93 V(X_U1.51)= .848 V(X_U1.53)= 4.07 V(X_U1.54)=
1.58 V(X_U1.55)= 4.02
* +V(X_U1.60)= 1.94 V(X_U1.62)= .855 V(X_U1.64)= 3.17 V(X_U1.67)=
4.98 V(X_U1.76)= 2.51
* +V(X_U1.GNDS)= 0.0 V(0)= 0.0
*
*
* connections: non-inverting input
* | inverting input
* | | positive power supply
* | | | negative power supply
* | | | | output
* | | | | |
.subckt OPA336 1 2 3 4 5
*
M61 4 64 55 55 PCH W=20U L=0.8U M=1
M59 55 53 3 3 PCH W=15U L=5U M=4
M55 55 60 51 GNDS NCH W=5U L=0.8U M=1
M53 53 45 51 GNDS NCH W=5U L=0.8U M=1
M57 53 53 3 3 PCH W=15U L=5U M=2
C55 55 60 CP1P2 2P
M67 55 55 67 3 PCH W=5U L=5U M=1
M74 45 51 62 GNDS NCH W=5U L=1U M=1
R67 3 67 RNW 200K
R47 45 47 RPO2 2K
ITAIL 3 23 DC 6U AC 0
ITAIL2 27 4 DC 1.6U AC 0
ITAIL3 51 4 DC 0.8U AC 0
I60 3 60 DC 0.4U AC 0
RGNDS GNDS 4 0.01
M24 29 1 23 3 PCH W=90U L=2U AD=2560P PD=3328U AS=2688P
PS=3494U M=1
M26 29 27 4 GNDS NCH W=500U L=2U AD=1142P PD=1670U AS=1142P
PS=1670U M=1
I20 20 4 DC 1U AC 0
R20 3 20 1.2MEG
M20 4 20 23 3 PCH W=5U L=2U M=1
R32 32 25 1.2MEG
R34 34 29 1.2MEG
I34 3 34 DC 1U AC 0
I32 3 32 DC 1U AC 0
V64 3 64 DC 1.8302
V60 60 62 DC 1.0897
V62 62 4 DC .8547
M23 25 2 23 3 PCH W=90U L=2U AD=2560P PD=3328U AS=2688P
PS=3494U M=1
M47 43 43 3 3 PCH W=60U L=4U M=1
M43 43 34 27 GNDS NCH W=4U L=4U M=1
M45 45 32 27 GNDS NCH W=4U L=4U M=1
M73 76 51 4 GNDS NCH W=5U L=0.8U M=20
M25 25 27 4 GNDS NCH W=500U L=2U AD=1142P PD=1670U AS=1142P
PS=1670U M=1
M71 76 55 3 3 PCH W=20U L=0.8U M=20
M49 45 43 3 3 PCH W=60U L=4U M=1
RC1 44 76 RPO2 10K
R76 76 5 RPO2 100
CM1 29 44 CP1P2 200P
C45 47 76 CP1P2 22P
RC2 54 4 RPO2 10K
CM2 25 54 CP1P2 200P
.ENDS
* MODELS for LEVEL 3 PSpice
*
.MODEL PCH PMOS (LEVEL=3 TOX=30E-9 CGDO=1.80e-10 CGSO=1.80e-10
CJ=7.199E-4 CJSW=3.40E-10
+AF=1.05 KF=1.0e-31 JS=4.0e-7 JSSW=3.0e-13 RSH=117 MJ=.47 MJSW=.16
VFB=-0.34 PHI=0.71 VTO=-.892
+LD=12E-9 WD=43E-9 TPG=+1 GAMMA=0.6)

.MODEL NCH NMOS (LEVEL=3 TOX=30E-9 CGDO=1.55e-10 CGSO=1.55e-10
CJ=6.300E-4 CJSW=3.83E-10
+AF=1.05 KF=2.6e-31 JS=2.0e-7 JSSW=5e-13 RSH=68 MJ=.25 MJSW=.11 VFB=-
0.784 PHI=0.792 VTO=.81
+LD=34E-9 WD=17E-9 TPG=-1 GAMMA=0.6)

.MODEL RPO2 RES (R=1 TC1=6.3e-4 TC2= 1.1e-6)
.MODEL RNW RES (R=1 TC1=5.5e-3 TC2=-1.3e-5)
.MODEL CP1P2 CAP (C=1)
*.ENDS
*.ENDS OPA336
*


Re: models for triodes and pentodes

 

--- In LTspice@..., Bill Lewis <wrljet@y...> wrote:
Please post any replies to this question to the list.
I'm interested in vacuum tube modeling.

... and the obvious question: How do I relate the previous info
with
the symbol.
Hello Bill,
you will find the symbol in the "misc" directory.
A short description follows:
1. Load the triode symbol into your schematic.
2. Replace the value 'triode' with the model name used in the model
file. In this case it is '12AX7A'.
3. Put the model text into a file and store it in your working
directory. That is the directory where your schematic is.
4. Add the line .INCLUDE modelfilename in your schematic.
That's it. This procedure will work for any kind of part and you can
put as many models you want into one file.

It is important for any kind of symbol and model that the pin order
is matching. Let's take a look to the triode symbol. The provided
symbol has the pin order P(1), G(2), K(3). The model text
uses .SUBCKT 12AX7A P G K . This means that P is pin-1 G is pin-
2 and K is pin-3. We have luck, the pin order is the same. If it is
different, then we could either change the order in the model text or
in the symbol.

I have the ready to run example files attached.

By the way, the model isn't good at low Vpk voltages. Take a look to
the Ip(Vgk, Vpk) plot to see what I mean.

Best Regards
Helmut




The model file: triode_12ax7a.sub
---------------------------------

* 12AX7A Triode PSpice Model 8/96, Rev. 1.0 (fp)
*
* -------------------------------------------------------------------
* This model is provided "as is", with no warranty of any kind,
* either expressed or implied, about the suitability or fitness
* of this model for any particular purpose. Use of this model
* shall be entirely at the user's own risk.
*
* For a discussion about vacuum tube modeling please refer to:
* W. Marshall Leach, jr: "SPICE Models for Vacuum-Tube Amplifiers";
* J. Audio Eng. Soc., Vol 43, No 3, March 1995.
* -------------------------------------------------------------------
*
* This model is valid for the following tubes:
* 12AX7A/ECC83, 7025, 6EU7, 6681, 6AV6, 12DW7/7247 (Unit #1);
* at the following conditions:
* Plate voltage : 25..400V
* Grid voltage : 0..-3.5V
* Cathode current: 0..8mA
*
*
* Connections: Plate
* | Grid
* | | Cathode
* | | |
.SUBCKT 12AX7A P G K
E1 2 0 VALUE={45+V(P,K)+95.43*V(G,K)}
R1 2 0 1.0K
Gp P K VALUE={1.147E-6*(PWR(V(2),1.5)+PWRS(V(2),1.5))/2}
Cgk G K 1.6P
Cgp G P 1.7P
Cpk P K 0.46P
.ENDS 12AX7A.SUBCKT 12AX7A P G K


The circuit file: triode_test.asc
---------------------------------

Version 4
SHEET 1 1104 692
WIRE 336 384 336 496
WIRE 368 288 368 224
WIRE 368 224 512 224
WIRE 512 336 512 224
WIRE 512 416 512 496
WIRE 512 496 336 496
WIRE 336 496 176 496
WIRE 176 496 176 448
WIRE 176 368 176 336
WIRE 176 336 320 336
WIRE 176 528 176 496
FLAG 176 528 0
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;Misc&#92;triode 368 336 R0
SYMATTR InstName U1
SYMATTR Value 12AX7A
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage 176 352 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value 0
SYMBOL F:&#92;PROGRAMME&#92;LTC&#92;SWCADIII&#92;lib&#92;sym&#92;voltage 512 320 R0
SYMATTR InstName V2
SYMATTR Value 200V
TEXT 142 136 Left 0 !;dc V2 0 200 0.1 V1 -5 20 5
TEXT 136 176 Left 0 !.INCLUDE triode_12ax7a.sub
TEXT 592 136 Left 0 ;.dc V2 0 200 0.1 V1 -5 20 5 Ip(Vpk, Vgk)
TEXT 144 96 Left 0 !.dc V1 -5 20 0.1
TEXT 592 96 Left 0 ;.dc V1 -5 20 0.1 Ip(Vgk)


Re: Third party model usage - please help

Jim Stockton
 

kaplounovski wrote:

Hello,
I'm trying to use the National LMC6484A opamp model in LTSpice.
I've downloaded their model and placed it
into ..&#92;LTC&#92;SWCADIII&#92;lib&#92;sub directory under the name LMC6484A.sub.
Then I created a simple test schematic where I used opamp2 symbol with
Prefix = X, Spice Model = LMC6484A.sub, Value = LMC6484A.sub
properties.
I've also added the .inc LMC6484A.sub directive to the netlist.

Running the simulation produces the following error message:
Error: Unknown subckt called in: xu1 ...... lmc6484a.sub lmc 6484a.sub

What am I doing wrong?

Thanks,
Eugene.


To unsubscribe from this group, send an email to:
LTspice-unsubscribe@...



Your use of Yahoo! Groups is subject to
Try leaving model blank and using value = lmc6484a without the .sub
Good Luck
Jim Stockton


Third party model usage - please help

 

Hello,
I'm trying to use the National LMC6484A opamp model in LTSpice.
I've downloaded their model and placed it
into ..&#92;LTC&#92;SWCADIII&#92;lib&#92;sub directory under the name LMC6484A.sub.
Then I created a simple test schematic where I used opamp2 symbol with
Prefix = X, Spice Model = LMC6484A.sub, Value = LMC6484A.sub
properties.
I've also added the .inc LMC6484A.sub directive to the netlist.

Running the simulation produces the following error message:
Error: Unknown subckt called in: xu1 ...... lmc6484a.sub lmc 6484a.sub

What am I doing wrong?

Thanks,
Eugene.


Re: models for triodes and pentodes

Bill Lewis
 

Please post any replies to this question to the list.
I'm interested in vacuum tube modeling.

Thanks,
Bill

--- guille_bonh <guille_bonh@...> wrote:
I'd appreciate any help on modeling valves.
For example, I copy what I have for the triode 12AX7A:

* 12AX7A Triode PSpice Model 8/96, Rev. 1.0 (fp)
*
* -------------------------------------------------------------------
* This model is provided "as is", with no warranty of any kind,
* either expressed or implied, about the suitability or fitness
* of this model for any particular purpose. Use of this model
* shall be entirely at the user's own risk.
*
* For a discussion about vacuum tube modeling please refer to:
* W. Marshall Leach, jr: "SPICE Models for Vacuum-Tube Amplifiers";
* J. Audio Eng. Soc., Vol 43, No 3, March 1995.
* -------------------------------------------------------------------
*
* This model is valid for the following tubes:
* 12AX7A/ECC83, 7025, 6EU7, 6681, 6AV6, 12DW7/7247 (Unit #1);
* at the following conditions:
* Plate voltage : 25..400V
* Grid voltage : 0..-3.5V
* Cathode current: 0..8mA
*
*
* Connections: Plate
* | Grid
* | | Cathode
* | | |
.SUBCKT 12AX7A P G K
E1 2 0 VALUE={45+V(P,K)+95.43*V(G,K)}
R1 2 0 1.0K
Gp P K VALUE={1.147E-6*(PWR(V(2),1.5)+PWRS(V(2),1.5))/2}
Cgk G K 1.6P
Cgp G P 1.7P
Cpk P K 0.46P
.ENDS 12AX7A.SUBCKT 12AX7A P G K
E1 2 0 VALUE={45+V(P,K)+95.43*V(G,K)}
R1 2 0 1.0K
Gp P K VALUE={1.147E-6*(PWR(V(2),1.5)+PWRS(V(2),1.5))/2}
Cgk G K 1.6P
Cgp G P 1.7P
Cpk P K 0.46P


... and the obvious question: How do I relate the previous info with
the symbol. Thanks in advance,

Guillermo



To unsubscribe from this group, send an email to:
LTspice-unsubscribe@...



Your use of Yahoo! Groups is subject to


__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!


models for triodes and pentodes

 

I'd appreciate any help on modeling valves.
For example, I copy what I have for the triode 12AX7A:

* 12AX7A Triode PSpice Model 8/96, Rev. 1.0 (fp)
*
* -------------------------------------------------------------------
* This model is provided "as is", with no warranty of any kind,
* either expressed or implied, about the suitability or fitness
* of this model for any particular purpose. Use of this model
* shall be entirely at the user's own risk.
*
* For a discussion about vacuum tube modeling please refer to:
* W. Marshall Leach, jr: "SPICE Models for Vacuum-Tube Amplifiers";
* J. Audio Eng. Soc., Vol 43, No 3, March 1995.
* -------------------------------------------------------------------
*
* This model is valid for the following tubes:
* 12AX7A/ECC83, 7025, 6EU7, 6681, 6AV6, 12DW7/7247 (Unit #1);
* at the following conditions:
* Plate voltage : 25..400V
* Grid voltage : 0..-3.5V
* Cathode current: 0..8mA
*
*
* Connections: Plate
* | Grid
* | | Cathode
* | | |
.SUBCKT 12AX7A P G K
E1 2 0 VALUE={45+V(P,K)+95.43*V(G,K)}
R1 2 0 1.0K
Gp P K VALUE={1.147E-6*(PWR(V(2),1.5)+PWRS(V(2),1.5))/2}
Cgk G K 1.6P
Cgp G P 1.7P
Cpk P K 0.46P
.ENDS 12AX7A.SUBCKT 12AX7A P G K
E1 2 0 VALUE={45+V(P,K)+95.43*V(G,K)}
R1 2 0 1.0K
Gp P K VALUE={1.147E-6*(PWR(V(2),1.5)+PWRS(V(2),1.5))/2}
Cgk G K 1.6P
Cgp G P 1.7P
Cpk P K 0.46P


... and the obvious question: How do I relate the previous info with
the symbol. Thanks in advance,

Guillermo


Re: More on Burr Brown Models

polapart
 

--- polapart <sahawley@m...> wrote:
I am trying to run a Burr Brown Op Amp, the OPA336.
The transient analysis "sort of" runs but LTSpice
notes a couple of problems, most notably
unrecognized parameters, jssw and vfb.
I couldn't find this model. Can you send it to me.

--Mike

Here's the link to the TI page. Thanks

genericPartNumber=OPA336&pfsection=models

Steve H


Re: Defining expressions for resistor values

Jonathan Kirwan
 

By the way, here's my .ASC file. Sadly,

By the way, I'm including my .ASC version as an attachment. If
that doesn't work in these posts, I'll just add it as text (but
the darned word-wrapping will probably mess it up.)

In this example, what I'd like to do is set up R2 as an equation
so that it is calculated. But I do *not* want to have to
estimate Vbe. I want to use the exact value, computed by LT
Spice, if possible. Since LT Spice must be using matrices to
simulate, I figure it should be able to solve for the necessary
values. But I don't know.

Thanks!

Jon


Re: Defining expressions for resistor values

Jonathan Kirwan
 

On Tue, 18 Mar 2003 15:21:56 -0800 (PST), you wrote:

I'm interested in calculating iterative values for
resistors[...]
The .asc file below might get you started there.

--Mike
<snipped file>
Thanks, I took a look at that. But it uses a set Vbe, which I
have to estimate beforehand and then measure and then re-edit
into the .param and then re-run and then re-measure and ...

I was wondering if there was a way to enter into an expression
the equivalent of: V(N001,N003). Or some-such. Possible? Or
am I stuck iterating to a solution, manually?

Jon


Re: More on Burr Brown Models

 

--- polapart <sahawley@...> wrote:
I am trying to run a Burr Brown Op Amp, the OPA336.
The transient analysis "sort of" runs but LTSpice
notes a couple of problems, most notably
unrecognized parameters, jssw and vfb.
I couldn't find this model. Can you send it to me.

--Mike


__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!


Re: Defining expressions for resistor values

 

Jon,

I'm interested in calculating iterative values for
resistors[...]
The .asc file below might get you started there.

--Mike

Version 4
SHEET 1 892 900
WIRE 320 576 320 528
WIRE 320 448 320 400
WIRE 320 304 320 240
WIRE 320 240 128 240
WIRE 128 240 128 256
WIRE 128 336 128 352
WIRE 128 560 128 576
WIRE 128 464 128 480
WIRE 256 352 128 352
WIRE 128 352 128 368
WIRE 64 416 -304 416
WIRE -304 416 -304 448
WIRE -304 528 -304 560
WIRE 464 384 464 352
WIRE 464 272 464 240
WIRE 464 240 320 240
FLAG 128 576 0
FLAG 320 576 0
FLAG -304 560 0
FLAG 464 384 0
SYMBOL npn 64 368 R0
SYMATTR InstName Q1
SYMATTR Value 2N3904
SYMBOL pnp 256 400 M180
WINDOW 0 74 72 Left 0
WINDOW 3 76 34 Left 0
SYMATTR InstName Q2
SYMATTR Value 2N3906
SYMBOL res 112 240 R0
SYMATTR InstName R1
SYMATTR Value {R1}
SYMBOL res 112 464 R0
SYMATTR InstName R2
SYMATTR Value {R2}
SYMBOL voltage -304 432 R0
SYMATTR InstName V1
SYMATTR Value pulse(0 {Vdd} 0 10u 10u .5m 1m)
SYMBOL voltage 464 256 R0
SYMATTR InstName V2
SYMATTR Value {Vcc}
SYMBOL res 304 432 R0
SYMATTR InstName R3
SYMATTR Value {Rload}
TEXT -288 672 Left 0 !.param load=10m R2=500 Vdd=2
Vbe=.7
TEXT -288 736 Left 0 !.param R1=(Vdd -
Vbe)/(load/10+Vbe/R2+Ib)
TEXT -266 604 Left 0 !.tran 3m
TEXT -288 704 Left 0 !.param Ib=10u Rload = Vcc/load
Vcc=5


__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!


More on Burr Brown Models

polapart
 

I am trying to run a Burr Brown Op Amp, the OPA336. The transient
analysis "sort of" runs but LTSpice notes a couple of problems, most
notably unrecognized parameters, jssw and vfb.

The AC analysis fails to converge. The comments in the deck offer
some advice with regard to modifyng ITL and gmin via .OPTION which
doesn't seem to help. Are these more PSPICE problems?

Thanks


Defining expressions for resistor values

Jonathan Kirwan
 

I'm interested in calculating iterative values for resistors.
For example, an emitter resistor's value may be based on the
emitter voltage divided by some current I need to have.
However, the emitter voltage is, of course, dependent on the
emitter/collector current which will depend on the emitter
resistor value. An iterative process could track down this
value closely, but I don't know how to write the expression.

Here's an example of what I mean:

Vcc
|
,------x
| |
&#92; |
/ R2 |
&#92; |
| |
| |/e Q2
x----| PNP
| |&#92;c
| |
| '-----> to the load
|/c Q1
>-----| NPN
control |&#92;e
signal |
at Vdd |
or 0V, &#92;
not at / R1
Vcc &#92;
|
|
gnd

In this case, R1 needs to be:

R1 = (Vdd - Vbe(Q1))/(I(load)/10+Vbe(Q2)/R2+Ib(Q1))

I want to set up I(load) to some value and have R1 computed from
that.

When I type V(N001,N003) as part of the expression, in order to
get the Vbe(Q1) for example, it's rejected with "Unable to find
definition of model v - default assumed." This isn't what I
want, naturally.

Is there any way to set up the expression for R1, appropriately?

Jon


Re: Extending the model libraries for standard parts

Jonathan Kirwan
 

On Tue, 18 Mar 2003 09:16:19 -0800 (PST), you wrote:

Jon,
...But is it possible to extend the dialog box
list for the NPN transistors, for example, so
that I can simply select from the list rather
than overriding the "Value" on the schematic,
directly?
...
And if there is a way, can it be secure
against the automatic update process, so that
I keep my additions in the face of regular
updates?
The selection dialogs for bipolars, jfets, diodes,
and mosfets use the .model entries in the files
./lib/cmp/standard{.bjt,.jft,.dio,.mos} You can
edit these with a text editor(or LTspice) to add
new components. If you update with the menu item
Tools=>Sync Release, your versions of these files
should be merged with the new ones so you don't loose
your models.
Wonderful! That works better than I'd hoped. Glad you added
the extra code to make that happen during updating.

However, if LT now supplies a model
with the same name as one you've added, you will
loose your version of the model and it will be
replaced with the version from LT.
Okay. So this is a good reason why you might want to keep the
count of your models low -- less likely to kill someone's
personal models that they've added. In particular, I picked up
my own copy of the 2N3391A, for example, which is also in your
standard distribution. So if I placed it there in STANDARD.BJT,
it would be replaced during updating. Luckily, your version is
identical.

I also noticed that if I have a version of 2N3391A in my own
"BJT.LIB," for example, and your STANDARD.BJT also has that
model, as well, then your dialog's list does *not* include the
2N3391A in it, at all. It recognizes that there is a definition
in my own .LIB, so it removes it from its own list. Too bad it
doesn't just give priority to my definitions and compile a
composite list from both the STANDARD.BJT as well as my BJT.LIB,
for example. Then I wouldn't need to modify STANDARD.BJT, at
all.

That's because
the merge routine isn't smart enough to know which
one's you added and which ones are just old versions
from LT.
Makes sense to me. It would be tough to solve, generally. (I
suppose you could add a special parameter which only you'd use
in your models.)

That being said, I would like to recommend that you
keep a version of your own edited standard.* files
for safety.
Will do.

Note that if you don't use the Tools=>sync Release
feature but reinstall, then the standard.* files
will simply be replaced with those in the current
distribution.
Understood.

Or if I should decide to forget about the
standard components included with LT Spice
and start building my own large library
of parts with trusted parameters, can I get
them to be popped into these selection lists?
You'd have to maintain your own versions of
the standard.* files and copy them over into
the ./lib/cmp directory after every update.
Okay.

While I'm at it, it might be nice, someday, if you'd support
user designed .ASY's placed in lib&#92;sym which could have lists of
.SUBCKT attached to them which would be automatically supported
as a selection list for that .ASY. So that I could develop a
small list, for example, for the 2N6027 and 2N6028 or for other
custom X-type circuits I might develop.

(It's still incredible to me that I'm actually using and
learning from a simulator which doesn't eat up my system memory
or crash under WIN98 or otherwise complicate my life. So I'm
glad for everything I'm already using.)

BTW, only .model statements can be put in the
standard.* files. Subcircuits can't be parsed
there.
Thanks! I wouldn't have guessed about that limitation. I'll be
careful, then. (Chances are, and I'm guessing here, that this
probably means that allowing user-created X-type list generation
would be "difficult" under the current architecture. Oh, well.)

Thanks again for the active support. I'm already feeling
guilty.

Jon


Re: Extending the model libraries for standard parts

 

Jon,
...But is it possible to extend the dialog box
list for the NPN transistors, for example, so
that I can simply select from the list rather
than overriding the "Value" on the schematic,
directly?
...
And if there is a way, can it be secure
against the automatic update process, so that
I keep my additions in the face of regular
updates?
The selection dialogs for bipolars, jfets, diodes,
and mosfets use the .model entries in the files
./lib/cmp/standard{.bjt,.jft,.dio,.mos} You can
edit these with a text editor(or LTspice) to add
new components. If you update with the menu item
Tools=>Sync Release, your versions of these files
should be merged with the new ones so you don't loose
your models. However, if LT now supplies a model
with the same name as one you've added, you will
loose your version of the model and it will be
replaced with the version from LT. That's because
the merge routine isn't smart enough to know which
one's you added and which ones are just old versions
from LT.

That being said, I would like to recommend that you
keep a version of your own edited standard.* files
for safety.

Note that if you don't use the Tools=>sync Release
feature but reinstall, then the standard.* files
will simply be replaced with those in the current
distribution.

Or if I should decide to forget about the
standard components included with LT Spice
and start building my own large library
of parts with trusted parameters, can I get
them to be popped into these selection lists?
You'd have to maintain your own versions of
the standard.* files and copy them over into
the ./lib/cmp directory after every update.

BTW, only .model statements can be put in the
standard.* files. Subcircuits can't be parsed
there.

--Mike

__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!


Re: using vendor supplied P-spice op-amp models

 

--- In LTspice@..., Panama Mike <panamatex@y...> wrote:
John,

I was really puzzled by the complicated G-
source _expression. That all makes sense now.
Yeah. I just put up a version, 2.00l. It lets you
duplicate the leakage of PSpice current sources in
LTspice. Go to Tools=>Control Panel=>SPICE and
check "Add GMIN across current sources" Then you
will see the input bias drop to zero on the -E
models.

There's still a couple differences between PSpice
and LTspice even after checking the box. PSpice
does not report the current's gmin leakage current,
which is just a dumb mistake that I don't
duplicate. Also, in PSpice the current sources
don't leak in the .ac analysis, just .op and .tran.
Which is a complete inconsistency and just another
error I didn't duplicate in LTspice.

There's one other thing to keep in mind when
working with high impedance circuits. You might
want to tighten abstol. That controls the
absolute(vs. relative) acceptable current
error. It defaults to 1pA.

--Mike

_
Mike,

I downloaded the new release this morning and simulated my circuit
again. Sure enough, the input bias current is now reasonable and the
simulation behaves like the actual circuit. Thanks for looking into
this and getting a fix up so quickly.

- John


_________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your
desktop!


Extending the model libraries for standard parts

Jonathan Kirwan
 

I know that I can create my own library files and use .include
to specify them. But is it possible to extend the dialog box
list for the NPN transistors, for example, so that I can simply
select from the list rather than overriding the "Value" on the
schematic, directly? It's nice to look over the parameter list,
sometimes, to look for the best of some particular parameter,
without having to print out my library file.

And if there is a way, can it be secure against the automatic
update process, so that I keep my additions in the face of
regular updates?

Or if I should decide to forget about the standard components
included with LT Spice and start building my own large library
of parts with trusted parameters, can I get them to be popped
into these selection lists?

Jon


Re: using vendor supplied P-spice op-amp models

 

John,

I was really puzzled by the complicated G-
source _expression. That all makes sense now.
Yeah. I just put up a version, 2.00l. It lets you
duplicate the leakage of PSpice current sources in
LTspice. Go to Tools=>Control Panel=>SPICE and
check "Add GMIN across current sources" Then you
will see the input bias drop to zero on the -E
models.

There's still a couple differences between PSpice
and LTspice even after checking the box. PSpice
does not report the current's gmin leakage current,
which is just a dumb mistake that I don't
duplicate. Also, in PSpice the current sources
don't leak in the .ac analysis, just .op and .tran.
Which is a complete inconsistency and just another
error I didn't duplicate in LTspice.

There's one other thing to keep in mind when
working with high impedance circuits. You might
want to tighten abstol. That controls the
absolute(vs. relative) acceptable current
error. It defaults to 1pA.

--Mike

__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop!


Re: using vendor supplied P-spice op-amp models

 

--- In LTspice@..., Panama Mike <panamatex@y...> wrote:
John,

Are there any special considerations with using
P-spice op-amp macro models with LTspice? I'm
trying to simulate a circuit that uses a Burr
Brown/TI electrometer op-amp (OPA128 or OPA129)
and I'm getting incorrect results...
As has been pointed out, the non-E version of
the models do leak much more than the product.
That's the model. The E versions are supposed
model input bias current and it still leaked
too much in LTspice.

I just found out why the E models have large
bias currents in LTspice. It turns out that
all current sources in PSpice are shorted out
with a very small conductivity equal to GMIN
which defaults to 1e-12.

All versions of the models have use JFETs for
the input stage. The JFET supplies GMIN
conductivity between gate-source and gate-
drain. With +/-15V supply voltage this leads
to an input bias current of 15pA. In LTspice
you can set GMIN to zero, so you an turn off
this leakage. But PSpice can't converge with
GMIN=0.

So the -E versions of the models add a current
source to cancel the JFET leakage. So far
so good. Unfortunately, all current sources
in PSpice also supply their own additional GMIN
of conductivity. That is, PSpice shorts out
all current sources with a resistivity of 1e12
Ohms. There's no reason for this, it's just
bad SPICE design as far as I can tell. So the
additional current source to cancel the JFET
leakage has to cancel it's own leakage, too.
That's what makes the expression of the G-
sources so complicated. Also, when you run
the -E version in LTspice, the bias current
doesn't go to zero where if you run it in
PSpice, it will. I will probably and an
option in the control panel of LTspice to
duplicate this leakage as an option in the
near future.

Thanks to Helmut for help in isolating the
problem.

Below is a deck that shows the PSpice vs LTspice
leakage of currents. In LTspice you will get
the correct answer, but in PSpice, you will
get an error because the current sources don't
have infinite impedance.

--Mike

*
* V(y) should be 100KV
R1 Y 0 1e11
G1 0 Y N001 0 1
Vin3 N001 0 1u

* V(x) should be -100KV
R2 X 0 1e11
G2 X 0 value = { 1u }

* V(z) should be -100KV
I1 Z 0 1u
R3 Z 0 1e11
.tran 1m 1
.options gmin=1e-10
.probe
.end
Mike,

I was really puzzled by the complicated G-source expression. That
all makes sense now.

Thanks,
John




__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online


Re: using vendor supplied P-spice op-amp models

 

Brain,

On one hand, I'm frustrated to learn there are so many issues with
vendor supplied models. This sort of problem can send you down a rat
hole for quite some time, and leave you worrying about the soundness
of your design. On the other hand, I know that I'm going to only use
simulation to validate my initial design and analysis, and not use it
as a substitute for other analytical methods. This experience only
supports my convictions and helps keep me honest.
The golden rule in analogue design is that n simulators give n different
answers, you have to be able to hand-verify results to some extent.

I tell the engineers here, half-jokingly that simulation tools and models are
for amusement only since both the tool and device vendors don't guarantee the
accuracy of anything.

Brian

--
Brian Howie | Tel: 0131 343 5590
BAE SYSTEMS | Fax: 0131 343 5050
Sensor Systems Division | Email brian.howie@...
Silverknowes | bhowie@...
Edinburgh EH4 4AD | Web site www.baesystems.com


***
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
***