Hello all,
Last year, I dedicated some of my spare time to a long pending project: the development of reliable SPICE models for several once widely-used germanium bipolar transistors. Besides my personal interest in this ‘historical’ subject, this work was also inspired by the obvious demand for such simulation models, for example, in this forum as well as in several other places:
–
http://www.guitarscience.net/index.htm–
https://www.electrosmash.com/fuzz-face–
https://www.diyaudio.com/forums/solid-state/117257-ac128-pnp-germanium-transistor-spice-model-rare.htmlIn fact, it was Jarmo Lähdevaara's fascinating book
The Science of Electric Guitars and Guitar Electronics (first link above) which had brought this topic back onto my agenda…
Initially, I had tried to follow a more formal strategy similar to that described in Jarmo's book, with some, yet somewhat limited success. Therefore, I finally gave up these theoretical attempts and decided to go back to the roots, so to say, of this whole problem and perform a global optimization on all relevant model parameters using the entire datasheets as references for the respective objective functions.
For this, I took the Valvo and Mullard datasheets, digitized all relevant curves, added a couple of explicitly given characteristics, and put everything into a giant optimization. I used the squared relative deviations from all characteristics (one value per characteristic) plus the mean squared deviations from all digitized curves (one accumulated value per curve) as error function elements—and then let the MacSpice optimizer do most of the job.
I have been using MacSpice for years for such demanding research purposes because this free-ware tool combines a higher-level programming language (the MacSpice front-end) with an enhanced, highly reliable SPICE 3f5 circuit simulator, plus numerous useful built-in functions (see
http://www.macspice.com). Without such a powerful research tool, this whole project would have been impossible, or at least much harder, to do for me. One minor caveat particularly for novice users, however, might be that programming skills are indispensable for using MacSpice in this way most effectively.
Owing to the complexity of the above objective functions, roughly 300 lines of code were needed merely for the function evaluations, plus another 600–800 lines for controlling the corresponding optimizations. For the AC128, for example, each evaluation involved
– 53
OP analyses (2×25 for operating-point iterations)
– 15
AC sweeps for various frequency characteristics
– 8
DC sweeps for static curve characteristics
– 1
DC TEMP sweep for the leakage-current characteristics
and required roughly one second of CPU time on my older Mac—for each one of the hundreds of thousands function calls needed to reach my final results!
Everyone who has ever attempted such a complex, non-linear optimization of a function of so many variables might have observed that such optimizations often tend to converge merely to some local optima instead of the ‘true’ global optimum. To overcome this as far as possible, I picked ten randomized starting points in the vicinity of my initial guess, performed the corresponding ten independent optimizations, and then took the averaged results from these optimizations as the new starting point for the next round. This basic procedure was repeated until no further (significant) improvement could be obtained.
A few weeks (!) of CPU time later, I finally had really good SPICE models for seven Valvo/Mullard germanium transistors at hand: for the AC125, AC126, AC127, AC128, AC132, OC44, and OC45. The two OC models were mainly developed for the simulation of one of the first high-quality RIAA phono pre-amplifiers, published in 1965 by J. Dinsdale (Wireless World, January 1965); see also
http://www.douglas-self.com/ampins/discrete/2Q-RIAA/2Q-RIAA.htm.
And here are my finally obtained BJT models for the above five AC transistors:
*-------------------------------------------------
* AC125 Spice model
* Germanium PNP transistor in TO-1 metal case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model AC125 pnp (
+ is=25.1u
+ bf=122 nf=0.957 vaf=30 ikf=0.42 ise=0.3u ne=1.78
+ br=12.2 nr=0.957 var=30 ikr=0.42 isc=3.03u nc=2.07
+ rc=1.58 re=0.327 rb=93.4 rbm=13.5 irb=0.153m
+ cje=130p vje=0.3 mje=0.5
+ cjc=173p vjc=0.3 mjc=0.5
+ tf=86.2n tr=862n
+ eg=0.67 xti=8.27 xtb=1.5 fc=0.5
+ kf=4.25f af=1
+ tnom=25 )
*-------------------------------------------------
* AC126 Spice model
* Germanium PNP transistor in TO-1 metal case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model AC126 pnp (
+ is=25.7u
+ bf=178 nf=0.949 vaf=26 ikf=0.229 ise=0.3u ne=1.78
+ br=17.8 nr=0.949 var=26 ikr=0.229 isc=3.51u nc=1.8
+ rc=1.34 re=0.382 rb=91.2 rbm=19.1 irb=0.174m
+ cje=130p vje=0.3 mje=0.5
+ cjc=173p vjc=0.3 mjc=0.5
+ tf=62.8n tr=628n
+ eg=0.67 xti=9.93 xtb=1.5 fc=0.5
+ kf=4.9f af=1
+ tnom=25 )
*-------------------------------------------------
* AC127/AC127K Spice model
* Germanium NPN transistor in TO-1 metal case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model AC127 npn (
+ is=10.4u
+ bf=165 nf=0.875 vaf=50 ikf=0.383 ise=0.252u ne=1.22
+ br=16.5 nr=0.875 var=50 ikr=0.383 isc=5.58u nc=1.79
+ rc=0.94 re=0.271 rb=70.4 rbm=14.4 irb=1.33m
+ cje=220p vje=0.3 mje=0.5
+ cjc=294p vjc=0.3 mjc=0.5
+ tf=65.5n tr=655n
+ eg=0.67 xti=13.9 xtb=1.5 fc=0.5
+ kf=3.5f af=1
+ tnom=25 )
*-------------------------------------------------
* AC128/AC128K Spice model
* Germanium PNP transistor in TO-1 metal case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model AC128 pnp (
+ is=29.4u
+ bf=146 nf=1.095 vaf=39 ikf=5.7 ise=0.356u ne=1.29
+ br=14.6 nr=1.095 var=39 ikr=5.7 isc=1.38u nc=2.8
+ rc=0.299 re=0.061 rb=25.1 rbm=2.67 irb=2.37m
+ cje=315p vje=0.3 mje=0.5
+ cjc=420p vjc=0.3 mjc=0.5
+ tf=108n tr=1080n
+ eg=0.67 xti=5.08 xtb=1.5 fc=0.5
+ kf=5.7f af=1
+ tnom=25 )
*-------------------------------------------------
* AC132 Spice model
* Germanium PNP transistor in TO-1 metal case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model AC132 pnp (
+ is=34.9u
+ bf=154 nf=1.036 vaf=30 ikf=0.171 ise=0.595u ne=2.48
+ br=15.4 nr=1.036 var=30 ikr=0.171 isc=2.5u nc=1.74
+ rc=0.546 re=0.311 rb=90.8 rbm=10.9 irb=0.649m
+ cje=126p vje=0.3 mje=0.5
+ cjc=168p vjc=0.3 mjc=0.5
+ tf=72.7n tr=727n
+ eg=0.67 xti=7.26 xtb=1.5 fc=0.5
+ kf=4.7f af=1
+ tnom=25 )
The two OC models are a little bit simpler:
*-------------------------------------------------
* OC44 Spice model
* Germanium PNP transistor in all-glass case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model OC44 pnp (
+ is=2.54u
+ bf=111 nf=0.977 vaf=11.5 ise=56.9n ne=1.23
+ br=11.1 nr=0.977 var=11.5 isc=194n nc=2.21
+ rc=1.45 re=0.504 rb=109
+ cje=28.2p vje=0.3 mje=0.5
+ cjc=47p vjc=0.3 mjc=0.5
+ tf=8.69n tr=86.9n
+ eg=0.67 xti=8.26 xtb=1.5 fc=0.5
+ kf=27f af=1
+ tnom=25 )
*-------------------------------------------------
* OC45 Spice model
* Germanium PNP transistor in all-glass case
* Copyright (c) 2020 by Gert Willmann
*-------------------------------------------------
.model OC45 pnp (
+ is=1.23u
+ bf=76 nf=1.066 vaf=21 ise=62.6n ne=1.3
+ br=7.6 nr=1.066 var=21 isc=268n nc=1.33
+ rc=0.246 re=1.19 rb=75.8
+ cje=28.3p vje=0.3 mje=0.5
+ cjc=47.2p vjc=0.3 mjc=0.5
+ tf=25.7n tr=257n
+ eg=0.67 xti=7.07 xtb=1.5 fc=0.5
+ kf=15.5f af=1
+ tnom=25 )
Due to the lack of available data for the reverse mode of operation (which is of little practical importance anyway) and several other characteristics, I used the following simplifying, yet not quite unrealistic assumptions:
BR = BF/10 (from measurements made by Benjamin Holmes)
NR = NF (a reasonable assumption)
VAR = VAF (VAR may even be somewhat higher, according to Benjamin Holmes)
IKR = IKF (an estimate which is better than the default value infinity)
CJE = 0.75*CJC (for the AC models, borrowed from ASY76/77/80 datasheets)
CJE = 0.60*CJC (for the OC models, borrowed from ASY26/27 datasheets)
VJE = VJC = 0.3 (0.25–0.35 are typical values for low-power germanium BJTs)
MJE = MJC = 0.5 (typical value for abrupt, alloy junctions)
TR = 10*TF (a reasonable first-order estimate)
EG = 0.67 (the default value for germanium)
XTB = 1.5 (extracted from some other germanium BJT datasheets)
FC = 0.5 (SPICE default)
AF = 1 (SPICE default)
Note that ‘TNOM’, the parameter measurement temperature, is 25°C according to the datasheets instead of the SPICE default of 27°C; this can make a non-negligible difference for such leaky germanium transistors. Unfortunately, as far as I know, these genuine SPICE models may not be correctly understood by some other simulators. For instance, ‘TNOM’ is called ‘T_MEASURED’ in PSpice and ‘TREF’ in HSpice.
Three example plots for the above AC128 model (emitter current vs. base-emitter voltage, collector-base leakage current vs. temperature) are attached just for your information. Note, however, that any verification of the above models requires that the respective operating conditions are reproduced precisely as specified in the datasheets. With this, all seven models ought to reflect the relevant datasheet characteristics very well—and much better than any other models I've found elsewhere!
Finally, as regards the relatively high base-emitter and base-collector depletion capacitances (model parameters ‘CJE’ and ‘CJC’) particularly of the AC transistors, it is important to note that these are highly non-linear, voltage-dependent capacitances which can have a significant impact on the transient behavior at higher audio frequencies. This may be of particular interest in connection with effect devices based on such transistors.


