Transformer SPICE Model Edward Herbert February 14, 2008

Transformer SPICE Model Edward Herbert February 14, 2008
Transformer SPICE Model
Edward Herbert
February 14, 2008
I have been frustrated with currently available SPICE models for transformers,
particularly SPICE models that included the core losses and saturation for power when
applied to power converter applications. This paper presents new SPICE models that I
hope are useful.
The manufacturers' data for core loss parameters, both for real transformer designs and
for SPICE models, is woefully inadequate. This paper includes suggestions for more
useful data as well as hints to mine more information from present data.
This presentation includes an appendix "Core losses in SPICE models from core
manufacturers' data". The reader may wish to look over this section before studying the
SPICE models, as the relationships developed in the appendix are the basis for some of
the SPICE models.
Basic ideal transformer
Multiple winding ideal transformer
Magnetizing inductance, saturation and hysteresis, Simple model
Hysteresis loop
Curve fitting
Four turn transformer with hysteresis and core losses, simple model.
Winding resistance and leakage inductance, simple model.
Loss and energy test points
Core loss, part 2, low and high frequency effects
Curve fitting
High frequency effects in the windings
Eddy currents
Skin effect
Proximity effects
Multi-layer windings
Transformers with coaxial or interleaved windings
Basic ideal transformer:
The SPICE model above shows a basic ideal transformer model using a behavioral
current source and a behavioral voltage source. The voltage source V1 is used as a
current reference for the behavioral current source B1. V1 is set to 0 V so that it has no
effect on the circuit. The turns-ratio may be set in the behavioral functions, but I chose to
make it a parameter {N}, set using a SPICE parameter statement " PARAM N=1" so that
it is easy to vary without editing the SPICE model itself. The returns are common in this
model, but they may be isolated.
This is developed into a family of SPICE models and SPICE model components of
increasing complexity (multiple windings, saturation, core loses for high and low
frequency, winding losses). The simpler models are useful for many applications, and
simplicity is good if it does the job.
Multiple-winding ideal transformers
There are a number of ways to model a multiple-winding transformer in SPICE, but I
have chosen to normalize all windings to a one turn linking connection, terminal Vc.
The SPICE model below is for a four winding transformer having a 10 turn push-pull
primary winding and two 1 turn secondary windings. In the SPICE model, each section
of a multi-tap or split winding is modeled separately, with a separate turns parameter for
each ({N1}, {N2}, etc). Each is referred to a single turn "core" winding, connected by
the common terminations Vc. No distinction is made whether a winding is a primary or
secondary winding in the model, as transformers are reciprocal devices. Any external
interconnections are made after the winding sections are defined. The windings are
isolated, but in SPICE, having a connection to ground is preferred, so the isolated
windings are each connected to ground using very high value resistor, 1 MΩ in the
If the transformer being modeled has windings that are connected together to make a
tapped winding, it is preferred to connect sections through a low value resistance, so that
the node names are not altered, but that is discretionary. In the example, R13 (12 pΩ)
connects the nodes V1r and V2 to make the center-tap of the primary winding. Using the
example above, it is very easy to make an ideal SPICE model for a transformer having
any number of windings. Some care must be taken with nomenclature for "turns". The
windings may also be called a 20 turn center-tapped primary with a 2 turn split secondary
Magnetizing inductance, saturation and hysteresis,
Simple model:
The SPICE model core functions are coupled to the single turn linking connection Vc
through a single turn transformer model. A voltage source is needed to operate the
SPICE model, and a square wave ac is preferred.
The resistor Ri limits the current when the core saturates and also is the magnetizing
current measurement point for the hysteresis loop display. The voltage source Vim is the
current reference for the behavioral current source. Vim is set to 0 V so that it does not
affect the circuit.
Caution: Current can be measured in a component. DO NOT use a component as a
current measurement point if the measurement is used in the circuit in any way that might
feedback to change the current, even minutely. It will cause errors, slow the simulation
and may prevent convergence. Use a voltage source set to 0 V.
The inductor Lm models the magnetizing inductance and the resistor Rh1 models the
core losses. The core loss will be modeled with a more complex circuit later, but this is a
useful starting point and is sufficient for many applications.
The flux B is modeled as the volt-seconds on the inductor Lm, scaled appropriately. The
voltage Vm is integrated with respect to time with the behavioral current source B3. The
current charges the capacitor Cb to a voltage B. The value of Cb is the scaling factor to
convert volt-seconds to flux. Volt-seconds, flux and flux density differ only by scale
factors, so any of them may be modeled.
Core saturation is modeled as a coupling factor, Kc. The inductor value and current must
remain static in saturation to conserve energy, and the flux B is asymptotic to the
saturation flux {bsat}. For the current to remain static, the voltage Vm across the
inductor Lm must go to zero, and this is done by reducing the coupling factor Kc to 0 as
the flux B goes to {bsat}. There are many functions that can model this behavior, but the
following was chosen for its simplicity and versatility:
⎛ B ⎞
Kc =1 − ⎜
⎝ Bsat ⎠
For any exponent > 1 of the expression B/Bsat, Kc goes to 0 asymptotically, and the
exponent controls the sharpness of the "knee", a higher exponent making the knee
To model the hysteresis loop of a magnetic core using conventional units, scale factors to
convert the input current to coercive force and to convert volt-seconds to flux density can
be used. However, for modeling a transformer, it may be more useful to work with the
primary ampere-turns and volt-seconds per turn.
The SPICE model is repeated below, with small graphs that show some of the signals and
their timing. The parameter statements used are copied and pasted to the upper left
corner. The small graphs are made using the SPICE probe function, and they carry over
to a CAD program if the schematic is printed, copied and pasted, though they require
some editing in CAD for appearance.
Note that as v(B) approaches Bsat, the coupling factor Kc goes to zero asymptotically.
The voltage Vm goes to zero as the coupling factor Kc goes to zero, regardless of the
source voltage Vin, so B can never increase beyond Bsat. In a more elaborate SPICE
model, Bsat can be a variable, too, the output of a behavioral voltage source, perhaps to
include temperature as a parameter.
Although most power converter transformers do not saturate, it is important to include
saturation so that flux walking can be detected.
Hysteresis loop:
The hysteresis loop is displayed in SPICE using the oscilloscope function. The X axis is
the input current, Iin, and the Y axis is the flux or flux density B. The area within the
hysteresis loop is the core loss. The hysteresis loop may be copied to a CAD program,
where it may be cleaned up and scaled, if necessary, for presentation.
The importance of scaling correctly is illustrated by the above hysteresis loops: They are
the SAME hysteresis loop, scaled differently! Successful curve fitting requires
comparison of similar curves using the same scale factors.
Curve fitting:
The first parameter to be simulated is the magnetizing inductance. Rh1 is set to a high
value, such as 1 MΩ, and Lm is set to the measured or estimated magnetizing inductance
for a one turn winding. The figure below shows the magnetizing line as the inductor Lm
is varied from 10 uH to 40 uH.
Do not worry about the shape of the corners for now, look only the slope of the line near
the X axis. Be sure that the coordinate scale factors are correct or the curves cannot be
matched by visual comparison, and slope calculations will be necessary.
The "roundness" of the corners may be adjusted next. This is accomplished by varying
the exponent in the expression for Kc in the behavioral voltage source B12, with
reference to the SPICE model schematic above.
⎛ B ⎞
Kc =1 − ⎜
⎝ Bsat ⎠
As the exponent is increased, the corners get sharper. The graph below shows exponents
of 2, 4 and 8, using the 40 uH curve from the graph above.
Next the core losses are modeled by varying the value of the resistor Rh1. As the resistor
R1 is reduced in value, the hysteresis loop opens up.
As the SPICE model is refined, Rh1 will be replaced with a more complex function, but it
will be resistive in nature and represents a loss whenever a voltage is applied and the core
is not saturated.
The graph below shows the change in the model hysteresis loop as the value of the
resistance Rh1 changes, for Rh1 = 1 MΩ, 5 Ω and 2.5 Ω.
The parameters (L2, the exponent and R1) can then be tweaked to refine the match to be
as close a fit as possible. If the shape is not just right, at least ensure that the area
enclosed is as close a match as possible.
SPICE model, 4 turn transformer with
hysteresis and core losses, simple model:
The SPICE model below adds the core loss and hysteresis functions to the ideal four
winding transformer presented above. The loss and hysteresis functions join the
transformer at the node Vc.
Winding resistance and leakage inductance, simple model:
The SPCE model below is for a two winding transformer with the hysteresis and core
losses from the previous example, plus winding resistance and winding leakage
inductance. In this example, some of the component values are in SPICE parameter
statements, so that they can be changed without editing the schematic. This is
Note: This model has not been run and verified, since it does not have a voltage source
and loads, so there may be errors in the functions. It is included as an example for
discussion and qualitative analysis.
Loss and energy test points:
The test points and the behavioral functions that generate them (red box) are not a
functional part of the SPICE model. Their purpose is to provide a display of the
transformer's losses and stored energy: Core loss Pc, core energy Ec, winding loss Pw
and winding energy Ew1 and Ew2. They are calculated as I2R and ½ I2L, and may be
summed, if desired, when more than one component has losses or stored energy.
The test points for losses are obvious for a SPICE model that is concerned about
efficiency, but the test points for energy require an explanation. In understanding losses
in a power converter, it is important to account for stored energy and look for
discontinuities and reversals. If the energy changes abruptly, it very likely results in a
loss in another component. In the case of transformers, when the transformer switches
polarity, the stored energy is very likely to be dissipated in the MOSFETs and attributed
to "switching losses". While not entirely incorrect, it is more productive to identify the
origin of the losses as it may lead to improvements in efficiency
A transformer may seem to be very efficient, if only the core and winding losses are
identified, but a poorly designed transformer that has excessive leakage inductance may
cause the overall efficiency of a power converter to be quite poor.
Note that the behavioral equations for the energy test points Ec, Ew1 and Ew2 contain the
terms "Sgn(i(Lm))" "Sgn(i(L1))" and "Sgn(i(L2))". The purist may say that this is
incorrect, energy is always positive, but I believe that it is important to distinguish the
direction of current flow in the energy test points. Thus the magnitude of the signal is the
amount of stored energy and the polarity of the signal indicates the direction of current
flow. The importance of this is that we are looking for rapid changes in stored energy so
that we can account for the energy, and particularly where it goes. If the change is
between equal currents of opposite polarity, the transition is much less apparent if the
Sgn() term is not used.
More windings can be added to the transformer SPICE model simply by adding
additional similar SPICE winding sections. They can be copied and pasted, then edited.
I have chosen to give each winding its own SPICE parameter statement, but similar
windings, such as the two halves of a push-pull winding, can use the same SPICE
The SPICE models above are simple models, not including high and low frequency
effects except to the extent that they can be lumped into the simple components.
However, they will be useful for many applications. Once a model is validated for a
particular transformer, it can be converted to a SPICE sub-circuit so that it can be placed
as a component into higher order assemblies.
Caution: A SPICE model may have very limited range of usefulness in simulating a real
transformer. Be sure that the parameters of the model closely match the simulated
Core loss, part 2: low and high frequency effects:
Classic theory of magnetic core losses teach that at a given frequency, the maximum flux
density B̂ determines core losses. If this is true, pulse-width modulation (pwm) for
voltage regulation does not increase losses. Twice the voltage for half the time is the
same B̂ , so the losses are the same. Unfortunately, this behavior is a low frequency
phenomenon, and most present-day power converters operate at high frequency.
At high frequency, core losses are resistive in nature, that is, proportional to V2. Twice
the voltage has four times the losses. If the duty-cycle is 0.5, then the average losses are
one half of four, that is, doubled. The generalized expression for relative average loss at
reduced duty-cycle d is
Pd =
where Pd is the average power at a reduced duty-cycle d, and P1 is the power with
a duty-cycle of 1.0 (or 100 %).
This will be an unpleasant surprise to those who think that pwm is an efficient design.
Hint: To determine which loss model applies, look at the slope of the curve for the loss
density at the flux density B̂ and frequency of interest in the core material data curves. If
the slope on the log-log graph is nearly +2, the losses are resistive. If it is more nearly
+3, the more complex low frequency loss model is appropriate. If the slope is an
intermediate value, the SPICE model should have mixed characteristics with a frequencydependant cross-over.
The derivation of the following asymptotic models is in Appendix A. The units are from
that derivation, and do not follow MKS standards, so do not apply them generically.
For the low frequency case, the asymptote for the instantaneous power PL' is
PL′ =
where R =
for B > 0.
For the high frequency case, the asymptote for the instantaneous power PL' is
PL′ =
where R=256/a.
The "a" is from a Magnetics, Inc. approximation formulae, and it is different for the
different frequency ranges. B is the instantaneous volt-seconds/turn, flux or flux density
depending up the units and scaling for the model. E is a voltage per turn density
function, with units of volts / turn cm2, in the example. See Appendix A.
The low frequency function is modeled as a resistor R2 whose value is a function flux,
v(Vx), the output of a behavioral voltage source B5. The high frequency model is simply
a resistor Rh1. Lm is the magnetizing inductance, as in the simple model.
Generating v(Vx) requires two new flux generators, the behavioral current sources B1
and B2. Both depend upon the square wave being reasonably symmetrical, the positive
on time being comparable to the negative on time and the voltage not changing too much,
cycle to cycle. About a 2:1 difference in volt-seconds is the limit for the variance, so this
condition is not too restrictive.
In B1, the current charges the capacitor Cbp to model the volt-seconds since the last
negative to positive transition. If the core saturates, the voltage Vm goes to zero, thus the
flat top of the flux curve v(Bp) as the conditions modeled go far into saturation. When
the voltage reverses, the capacitor is discharged at two times the rate, but it cannot go
negative because of the ideal diode subcircuit X1. In the B5 voltage source, the correct
voltage VBp or VBn is used depending upon the polarity of Vm. and the function Rb/B is
generated to control the instantaneous value of the resistor R2.
Curve fitting:
The curve above shows the effect of varying the parameter Rb, which controls the value
of R2. The green curve is a baseline, with Rb set to a very high value. The green
hysteresis loop is the high frequency model, though it is artificial at the present
conditions, which are low frequency conditions. As Rb is decreased to 0.1 Ω, the blue
curve results, and the red curve is with Rb decreased further to 0.05Ω. Note that the
hysteresis curve fattens as a wedge, getting wider as B increases.
The SPICE model above includes the low and high frequency asymptote loss
characteristics. It will almost certainly need addition elements, as suggested in the model
below, to fill in the loss curve over the frequency range, with low, high and band-pass
filters, to tweak the curve. To begin this effort, it will be necessary to have data taken on
real components. I suggest a curve of average loss density for log steps of voltage vs. log
steps of on time for applied ac square waves, and a curve of instantaneous loss density for
step functions at log steps of voltage vs. log time, taken from negative saturation to
positive saturation.
If a SPICE model can reproduce both curves, I believe that it is successful.
High frequency effects in the windings:
Eddy currents:
While all of the "high frequency" effects are due to eddy currents, usual jargon applies
the term to losses in the core due to currents induced in the core by the changing flux.
These can be modeled as a winding on the core.
My interest is in high frequency transformers for power converters, and they usually use
ferrite cores. Everybody "knows" that ferrites do not have eddy currents, as their
resistivity is very high. This may be true, but should be revisited. A number of years
ago, George Schaller, of Ceramic Magnetics, made two sets of cores for me that were
designed to show if there were eddy current losses, and the loss curves fell on top of each
other, suggesting that there are no eddy current effects. I cannot remember the details of
the design, and perhaps the tests were not run to a high enough frequency.
Ferrites have an extremely high dielectric constant, of the order of 300,000 to 500,000,
which may allow reactive currents to flow around the core. The dielectric constant, and
thus the capacitance, is a complex number, and the imaginary part is lossy. I remember
reading somewhere that there seemed to be eddy currents in ferrites with paths that were
larger than a domain but far smaller than the core as a whole. I do not remember the
source, but this may explain why the core sets that Ceramic Magnetics made did not
show any difference.
Regardless, any eddy current losses in ferrites are lumped into the core losses, and they
may explain why the core losses look resistive at very high frequencies. The possibility
of eddy currents, which may be geometry dependent, suggest that core loss tests should
be performed on the actual core used, not just on a "standard core."
Because eddy current losses can be lumped into the core characteristics, I do not believe
that any special provisions are needed in the SPICE model.
Winding losses:
For low frequency transformers, the winding losses can be modeled simply as a resistor
with the same value as the resistance of the wire used to make the winding. The model
may include temperature as a parameter to correct the resistance for temperature rise.
At high frequency, skin effects and proximity effects are important and may dominate.
Both are due to eddy currents, but deserve individual consideration.
Skin effect:
When the current changes in a conductor, eddy currents are induced in the conductor.
For a super-conductor, these eddy currents are permanent, and they exclude all magnetic
fields. For a conductor having resistance, the eddy currents die out quickly, but while
they persist, they result in higher losses. The eddy currents limit the penetration of the
increased (or decreased) current into the conductor, forcing the current to flow initially
near the surface. This is often described as an increase in the "apparent resistance,"
sometimes called the "ac resistance".
High frequency effects should not be modeled as a change in resistance R, if the model
must be accurate for both voltage drop, I*R and power, I2*R. Nor should it be modeled as
a change in inductance L, or energy ½*I2*L will not be conserved. It must be modeled as
a change in current I or current distribution.
The SPICE model above simulates a wire, with skin effects. The R-L-R-L (etc.) concept
can be found in the literature and on line, but I think that this implementation is easier to
use. The parameters are either the AWG gauge {AWG1} or the diameter in mm
{Dmm1}, the wire length in meters {Lw1} and the wire temperature in ºC {Tw1}.
In its derivation, a conductor is divided into five concentric segments of equal area, thus
equal dc resistance per unit length. For a given round wire size, the dc resistance per unit
length of each segment is five times the resistance found in any wire table for the wire
size, and that resistance v(Rw1) is calculated in the B2 behavioral voltage source. If the
wire size is entered in AWG, the B1 behavioral source converts it to mm, as v(Dmm1).
If the temperature is different than 25 ºC, correction for temperature is also calculated.
The inductance is more complicated, but the value of each inductor is the inductance that
gives the correct time constant L/R for the penetration depth, given the resistance of a
layer. It appears to be independent of wire size, at least approximately. For larger wire,
the resistance R goes down, so the time constant L/R goes up. This is an approximation,
but it should be sufficiently accurate for most SPICE models. With more analysis and
real test data, this model will be refined.
An oscillograph of the current increments in the various layers is shown for a more
complex SPICE model later in this presentation. It is interesting that the inner currents
may flow in the "wrong" direction after a current transition, and may persist after the
source current goes to zero.
Note that the value of the resistances does not change (unless the temperature changes).
The current is redistributed by the L-R-L-R (etc.) function. The model will be suitable
for both voltage drop, I*R and power I2*R.
The wire may be converted into a SPICE subcircuit, and placed where the winding
resistance is located for each winding in the model for the winding resistance and
inductance. The winding leakage inductance can be lumped into the wire model, but it
may be preferred to keep them separate.
Proximity effects:
The proximity effect is harder to quantify, and there are several loss mechanisms that are
lumped under this title:
The effects of current crowding due to the current in adjacent conductors.
Apparent current multiplication in successive layers of a multi-layer winding.
Eddy current losses in adjacent conductors (windings, shields).
All are dependent upon di/dt in the winding, but the effect persists long beyond a step
change in current, so a function of di/dt alone will not suffice in the time domain. For
sine excitation, di/dt is a well behaved cosine term that is useful for ac analysis. A
SPICE model requires that the losses be modeled in the time domain.
An understanding of the loss mechanism points the way. A step change of current
induces an equal and opposite current in nearby conductors if the coupling is perfect. So,
the first step is to model a current equal to the difference current of the step change. This
current flows through a resistance, causing losses, and this current and the associated
losses decay exponentially with time.
The SPICE components above generate a waveform of the required shape. A current
generator I2 is programmed using the PWL function as in the chart. Note the 50 ns rise
times. The zero volt voltage source V1 is used to measure the current. The behavioral
voltage source B1 produces a voltage Vj that is the analog of the current. The high pass
filter C1, R1 produce the voltage Vjd that has the desired shape. If the time profile isn't
quite right, a different filter circuit can be used, and the signal v(Vjd) can be scaled to any
magnitude and combined with other functions in a behavioral source.
Traditionally, high frequency effects are described in terms of an increase in the apparent
resistance. That would be easy to implement, simply increase the resistance as a function
of Vjd. The problem with varying the resistance is that the SPICE model must use the
function to model both the correct voltage drop and the correct losses due to the eddy
currents. The voltage drop is IR, and the power is I2R. For both of the voltage drop and
power equations to work, it is the current I that must change, not the resistance R.
The eddy currents are generated and coupled back to the wire through an equivalent
coupled inductor, as shown below. However, I do not know what is in the SPICE
coupled inductor model, and it seemed to give anomalous and unpredictable results. A
transformer model could be used, incorporating inductors, but this approach rapidly
became quite complex.
The schematic at the left shows an eddy current
Ie, generated by the coupled inductors as a
function ƒ(I1) of the step current in the wire.
The eddy current Ie causes a voltage drop when
it passes through the resistor Re. The model for
the resistor Re should also reflect the skin
effects. Likely, it is the same or similar to Rw,
the resistance of the wire carrying the current I1
that induced the current Ie, or some portion of
it. Repeating that model as the load of a
transformer circuit, while more rigorous, is
awfully complex.
The SPICE model at the left can approximate
this simulation, and it is very simple. If n is
less than 1, that can be simulated as a linear
scale factor in ƒ(I1) in the behavioral current
source equation.
This model provides the correct voltage drop at
Vr1, Rw * (Ir1 + Ie). However, since this
circuit is a surrogate for the circuit above, the power in Rw requires careful interpretation.
It is NOT (I1 + Ire)2 * Rw or Ir12* Rw. The circuit is designed to reflect the correct
voltage drop to the rest of the circuit, and it depends upon the assumption that the wire
resistance, even with ac effects, is small compared to the load and other resistances in the
circuit. To calculate the power for the winding loss test point, the correct formula is
given by the equation Pw = (I12 + Ie2) * Rw. This is because in the more rigorous model,
there are two resistors, and the losses (power) must be calculated in the simple model as
if it were two separate resistors equal to Rw each with its own current.
The SPICE model for a wire, described above, with modification, is suitable for Rw, as it
uses unvarying resistors, with L-R filters to redistribute the currents for di/dt. To add
proximity effects, a behavioral current source is applied to the resistor that represents the
outer layer of the conductor, on the premise that eddy current losses occur near the
The SPICE model below is for a wire with proximity effects added. A behavioral voltage
source has been added to calculate the losses in the wire as sum of the products of the
voltage across each resistor and the current through it. Note the spikes in power
following a step in current, either direction. No attempt was made to scale the parameters
correctly at this time, it is an example showing the SPICE building blocks for qualitative
Spice model of wire with proximity effects
A simple model is preferred to one that is rigorous, as long as it can model the functions
and parameters seen and measured in a real transformer. It is acceptable and necessary to
tweak the parameters of the models as "fudge factors" to achieve this result.
The graph following shows the currents (input current i(V1), the currents in the shells of
the wire, i(R1), i(R2), i(R3), i(R4) and i(R5), and winding loss Pw using the SPICE
oscilloscope function. It was copied to a CAD program and edited for appearance.
Note that following a reversal of current in the wire, the currents in the core of the wire
may continue to flow in the wrong direction for a significant time. Note also that eddy
currents, and their losses, persist beyond the time that the input current goes to zero.
With zero current flow, a model that changed the "apparent resistance" by varying the
value of a resistor could not show this effect—with 0 current, the model would show 0
power regardless of the value of the resistor.
No representation is made that these values are accurate; they are for qualitative analysis
only. While some liberties were taken to make a simpler SPICE model of losses due to
the skin effect and proximity effects, I believe that it is adequate for most transformers.
Multi-layer windings:
This model should also be suitable for the layers of a multiple layer coil. Each layer
should be modeled as a separate wire, with all layers in series. The injected current for
each layer should have the same timing, but the magnitude of the injected current will be
much larger for each successive layer.
A model for eddy currents induced in a shield or another winding will likely affect only
the layer adjacent to the shield or the other winding. The loss should be reflected to the
winding causing the eddy-currents, not the shield or other winding in which the eddy
currents are induced, to be consistent with the model above. I am not trying to cover all
possible combinations of eddy currents at this time.
Transformers with coaxial
or interleaved windings:
The secondary of a coaxial transformer is made of
formed copper, inserted into a magnetic core. A
number of similar assemblies are placed with their
through holes aligned and the primary winding is then
threaded through. A transformer with an n : 1 turns
ratio has n assemblies, or "elements" with a single turn primary winding. The
secondaries are wired in parallel, essentially constituting a fractional turn of winding 1/n
The leakage inductance of the secondary windings is very low, and when they are used in
parallel, the inductance is effectively reduced further. Theoretically, it is reduced by 1/n,
being paralleled inductances, but there will
be some leakage inductance in the
interconnection even if it is planes in a
printed wiring board.
For more information on coaxial
transformers, see "Coaxial Push-Pull
Transformers", a pdf file at
Because the primary winding and the
secondary winding on the same side of the
transformer are coaxial, as shown by the
current flow in the top figure on the left, the
leakage inductance from a primary winding
to its coaxial secondary winding is
extremely low.
However, the leakage inductance to the
other secondary winding, as shown in the
second figure on the left, is much greater.
The leakage inductance from secondary to
secondary is low, as the windings have flat
parallel conductors close together in the
center, but it is not nearly as low as a
primary to its coaxial secondary.
Finally, the leakage inductance from
primary to primary is relatively quite high.
A similar disparity in leakage inductances is
true for an interleaved transformer.
While the SPICE transformer model shown at the beginning of this paper is
straightforward and easy to understand, it is not adequate to model the special properties
of coaxial and interleaved transformers in critical applications. For this, the following
SPICE model is suggested:
The behavioral current and voltage sources B1 and B2 are an ideal 1:1 transformer, and
model one primary winding to its coaxial secondary winding. Similarly, the behavioral
current and voltage sources B3 and B4 model the other primary winding to its coaxial
secondary winding. Each has winding resistance and winding leakage inductance
defined, and they are very low for coaxial (or interleaved) windings.
Next, the secondary windings are coupled with a leakage inductance and a winding
resistance, to represent the respective leakage inductance and winding resistance from
one secondary winding to the other. The resistance will be very low, but there will be
significant leakage inductance. For balance, each is center-tapped at nodes Vc and Vcr.
The "core winding", representing the core losses, attaches to these nodes.
In any transformer, the relationships between the windings should be reviewed, to see if
the simple model can be improved similarly if high frequency effects are important.
Interwinding capacitance may be important, and capacitors can be added between the
appropriate nodes. This is an untested model, as an example for discussion only.
Appendix A
Core losses in SPICE models from core manufacturers' data:
Loss curves and expressions are usually defined in terms of the maximum flux density B̂
and frequency. B̂ cannot be determined until the end of the switching cycle, thus it is
not an instantaneous term and is not useful for the SPICE model.
Magnetics, Inc. material F
Most manufacturers' core loss data are presented graphically. Occasionally, loss
expression approximation equations are given. See Magnetics Inc., Technical Bulletin
FC-S7, "Curve Fit Equations for Ferrite Materials." 1999, as an example. The
approximations appear to be quite accurate close to the points that were used to derive the
approximation parameters, but they appear to be quite bad at other operating conditions.
Magnetic, Inc.'s loss expression approximation is:
PL = a * f c * Bˆ d
Where a, c and d are constants, f is in kHz and B̂ is in kG.
For Magnetics Inc.'s F material, the constants are given as follows.
f ≤ 10 kHz
10 kHz < f < 100 kHz
100 kHz ≤ f < 500 kHz
f ≥ 500 kHz
(The colors key to the calculated loss curves in the graphs above and following).
A representative core loss vs. flux density curve is shown above. The basic curves,
shown in blue, are for Magnetics Inc.'s F material, transcribed from a Magnetics Inc. data
sheet that was found "on line."
Close to each of the lines representing Magnetics Inc.'s F material there is a dashed line
in color, showing the results of the core loss approximations using the formula above and
the parameters from the table above. Considering the log-log scales, some of the errors
are substantial, and I suspect that the base-line data itself is not very good at the extremes.
Real data tends not to be such perfect straight lines.
Occasionally, core loss data are presented as curves of peak flux B̂ versus frequency. I
could not find this data for Magnetic, Inc.'s F material, but the core loss equations can be
solved presented graphically that way by sweeping the frequency F for step increments
of B̂ . The result is the graph below, in which the solutions of the equations are the
dashed lines, colored to correspond with the frequency range in the parameter table. The
solid blue lines are arbitrary curves connecting the average values as best that I could.
The discontinuities in the solutions suggest how bad the approximations are at the limits
of each range. In most cases, the continuation is evident, but in the lower right corner,
the curve for 10 G looks as if it connects with the curve for 20 G, so I added dashed black
lines to show the connections across the discontinuities. The solid blue 10 G line could
not rationally relate to any of the solutions, so I placed it arbitrarily, sort of parallel to the
20 G line.
Magnetic, Inc. material F
Parsing the manufacturers' data for SPICE-friendly parameters:
To be useful in SPICE, a model for a transformer must use the parameters which are
available in SPICE, principally the voltages and currents of the transformer circuit. A
more complex model may have other parametric inputs that affect the analysis, such as
temperature. Parameters that cannot be know until after a cycle is finished are less useful
and should be avoided, such as frequency and the maximum flux density B̂ .
Parsing out an algorithm that is restricted to voltages and currents over time from the
manufacturers' core loss data is challenging and certainly will not produce accurate
results. However, a qualitative understanding of the losses may lead to new SPICE
models that embody useful relationships in the time domain. Then, given test specimens
and appropriate data for the new models, quantitative analysis will be possible.
Core losses are a function of the voltages in the circuit (including the instantaneous flux
density B, the integral of voltage with respect to time, an easily derived function in
SPICE). Winding current does not enter into the core loss equation. Provided that there
is sufficient current to excite the core, currents in the windings can be ignored for
calculating and modeling core losses.
Similarly, the winding losses are a function of the currents in the circuit. Voltage does
not enter into the winding loss equations. Provided that there is sufficient voltage to
overcome the circuit impedances and cause the magnetizing current to flow, voltages can
be ignored for calculating and modeling winding losses.
The loss mechanisms at low frequency are different than those at high frequency, and
many assumptions about transformer design are based upon low frequency transformer
design. Many of the problems of high frequency transformer design may have their root
in incorrectly applying low frequency loss mechanisms to high frequency designs,
particularly when pulse width modulation is used.
In the graph of loss vs. B̂ for differing frequencies above (the first graph in this
appendix), notice the slopes of the lines. Because it is a log-log graph, the slopes of the
lines are the exponent of the function, in this case, the exponent of the B̂ function, the
parameter d in the core loss approximation equations. The highest frequency line, 1000
kHz, has a much lower slope than the lowest frequency line, 1 kHz. This is reflected in
the value of d in the chart above, 2.85 for the lowest frequency range and 2.29 for the
highest. To make this more apparent, see the red line "A" on the graph near the 1 kHz
line, which has the same slope as the 1000 kHz data. Also see the two amber lines with
slopes of +3 and +2, for comparison.
Notice also the spacing of the lines. Being a log-log graph, the spacing is a function of
the exponent c of the frequency parameter f in the loss approximation, 1.06 for the lowest
frequency range and 1.88 for the highest. This is shown by the arrows "B" and "C". "B"
is the vertical space between 500 kHz and 1000 kHz, and "C" is the vertical space
between 5 kHz and 10 kHz.
For low frequencies, the approximation curve is nearly
PL = a * f 1 * Bˆ 3
For high frequencies, it is more nearly
PL = a * f 2 * Bˆ 2
These asymptotes confirm that there is a different loss mechanism at high frequencies.
It is taught and generally accepted that the energy expended to go around a hysteresis
loop is constant as long as B̂ is constant. In more advanced treatments, we learn that the
hysteresis loop may be fatter at high frequencies, an effect that is sometimes attributed to
"eddy currents." It is also taught and generally accepted that ferrites do not have eddy
currents. Taken to its logical conclusion, this "proves" that if pulse width modulation is
used to adjust for input voltage changes, the B̂ remains constant and so do the core
Unfortunately, this is not so. However, quantifying the actual losses and predicting them
has been daunting.
The graph following uses the same equations as the graph above showing core loss vs.
frequency, but the result is divided through by the frequency in Hz. The loss units are
shown as mW/Hz cm3, for consistency with the previous graph, but mW/Hz will be
recognized as the product of power and time (t = 1/f), milliwatt-seconds, or millijoules.
The graph thus shows the energy to go around the hysteresis loop with a constant B̂ at
different frequencies. As before, the dashed colored lines are the results of the
calculations using the Magnetics, Inc. approximation formula and parameters. The solid
blue lines are my attempt to smooth the curves. There is no representation of any
accuracy at all, but it may be useful as a qualitative analysis.
At lower frequencies, it can be seen that the energy remains fairly constant if B̂ is
constant, but above 10 kHz, the energy per cycle rises a lot. This confirms that the core
loss mechanisms are different at higher frequencies, and the classic relationship is not
useful in the higher frequency range used by many modern power converters.
Part of the problem of applying manufacturers' core loss data to power converter design
is that it is taken using sine wave excitation. Power converters use square wave ac or
pulse width modulated square wave ac pulses. Anecdotal evidence suggests that there is
at least a qualitative relationship between sine wave excitation and square wave
excitation and that the losses are lower using square waves.
Converting B̂ to applied voltage is possible with square wave excitation, given the
frequency, as the units of B̂ are a constant times volt-seconds, where the time is half the
period, 1/2F. Dividing by seconds leaves the voltage function. In other words, knowing
the maximum flux density B̂ and the time period over which the flux built up (one half
cycle), the applied voltage necessary to reach that B̂ can be determined.
In the Magnetics Inc. approximations, B̂ is given in kilogauss, and F is in kilohertz,.
Therefore, the staring point is the magnetic equation for voltage in CGS units.
E = 4 * Bˆ * Ac * F * N * 10 −8
Solving for B̂ :
Bˆ =
* 108 gauss
4 * Ac * F * N
Let N = 1, so the voltage is in Volts/turn, and let Ac = 1 cm2. B̂ , in kilogauss with F in
kilohertz, becomes:
Bˆ =
*102 kilogauss
4 * FkHz
Plugging that into the Magnetics, Inc. approximation should yield curves that
qualitatively approximate the loss vs. frequency for various applied square wave voltages.
Because the equations don't know about saturation, the results for low frequency are
unbounded, so I added a function to blank the result if B̂ is greater than three kilogauss.
The lines in the upper left corner show the three kilogauss limit, and they would be one
continuous line if the approximations were precise. The X axis is taken to 10 MHz, but
there is no illusion of any validity at that frequency. The graphs were extended to better
show the changing slope with frequency, and in particular, that it is tending to go flat.
This graph is interpreted as the loss per cm3 versus frequency with a constant voltage
square wave excitation, with a 1 turn winding and a 1 cm2 core area. Thus the curves are
for constant volts per turn density, V/N cm2. With 100 volts applied to a 10 turn winding
on a core having an area of 2 cm2, use the 5 V line (100 V / 10 * 2). The core loss for the
frequency on the X axis is the result in mW/cm3 read from the graph, multiplied by the
core volume in cm3.
Volts per turn cm2.
Notice the short lines A and B. The positions and coordinates are arbitrary, but their
slopes have significance. They are segments of graphs plotted for the two equations from
above, which noted the trends of the exponents of the Magnetics, Inc. approximation
equations at low and high frequency.
For low frequencies, the approximation curve is nearly
PL = a * f 1 * Bˆ 3
For high frequencies, it is more nearly
PL = a * f 2 * Bˆ 2
The latter is a straight horizontal line, which is the same as for a fixed value resistor. A
look at the equation for B̂ and plugging Bˆ 2 into the second loss approximation equation
B shows why.
Bˆ =
4 * FkHz
Bˆ 2 =
*10 4
16 * FkHz
When this expression for B̂ is plugged into the power loss equation B, FkHz
is the same
as f 2 , so they cancel, leaving
PL =
* E 2 *104
Thus the losses are independent of frequency, and a resistor may therefore be an
appropriate model for core losses at very high frequencies.
Applying similar substitutions for the low frequency model:
PL = a * f 1 * Bˆ 3
Solve for B̂ 3 :
Bˆ 3 =
64 * FkHz
FkHz is the same as f , so the f 1 is cancelled, leaving
a E3
* 2 *10 4
PL =
64 FkHz
Returning to the graph above, in view of these equations, we can begin to parse the
asymptotes. For the high frequency end, the spacing for the various voltages vertically
should be as E2, so each increment of 10 x in voltage should be two decades apart. This
is not really what is shown, but it is very roughly the pattern, if one visualizes the curves
extending further.
For the low frequency end, the slope is determined by the FkHz
in the denominator, so the
slope -2 on the log-log graph.
The line spacing is determined by the E3 in the numerator, Pl increases 3 decades for each
voltage increment of 10 x. The 0.1V curve and the 1 V curve are somewhat less than 3
decades apart, but agree with the pattern, approximately.
A graph was plotted showing a family of asymptotes that meet the criteria, and the
asymptotes as a set were moved around to make a "best fit" to the hypothetical data. The
match is not too bad for the lower voltages, but the hypothetical data is so uncertain that
it would be unwise to draw too many conclusions until there is confirming "real" data
from bench tests.
Frequency is not a useful parameter in SPICE, so it is desirable to find the losses as a
function of time, that is, in the time domain. Frequency is the inverse of time, the period
of an ac cycle. For calculating B̂ , one half the period is used, so t = 1/2F, and F = 2/t.
Substituting into the equation for B̂ gives:
E *t
Bˆ =
*10 −2 kG
where t is in milliseconds, to be consistent with the kHz used in the Magnetics, Inc.
approximations. Substituting into the approximation gives:
Pl = a * (
1 c E *t d
) *(
This transformation is easy, graphically, with a left-right mirror image of the curve for
loss vs. frequency. Match the 1 kHz line to the 500 ms line, so the time is the on time for
a half-cycle of the ac frequency.
Assuming that no math errors were made, this graph should predict losses in a waveform
expressed in terms of on-time just as well as the graph expressed in frequency. Because
the original equation is in terms of B̂ ( that is, Bmax at the end of the on-time), not B,
instantaneous, this does NOT give us the instantaneous power vs. time.
This curve makes a lot more sense as a presentation of core loss data for transformer
design, particularly pwm transformers. It is my theory that this graph is also useful for
duty-cycles less than 1. In the graph above, find the core loss for the actual voltage and
pulse width, then multiply by the duty-cycle. At this time, this is speculation, but if it is
confirmed, it will be a powerful new tool for pwm transformer and inductor design.
The curve below builds on the concept of the graph above of power density vs. the ontime voltage pulse. Each of the colored curves is a first half of a 100 mV ac square-wave,
with the positive going on-time shown, measured from t = 0, part of a continuous ac
square wave. In a log-log plot, 0 is infinitely far to the left, so all pulses are drawn from
the 10 ns line. The second half of each cycle is symmetrical negative going, part of a
continuous ac square wave, but this is shown only for the first pulse and the cross-over of
the last pulse, to reduce clutter.
The first pulse, the red line and red hatch, starts at t = 0 at a voltage of 100 mV, and ends
at 20 ns, continuing negative to – 100 mv, then starting the next cycle at 40 ns. Thus it
defines a square wave having a period of 40 ns or a frequency of 25 MHz. The average
power for a 25 MHz ac square wave is placed at the midpoint of the cycle, which is the
trailing edge of the positive pulse, and has the same color. The second pulse, the green
line and green hatch, starts at t = 0 and ends at 40 ns, so its period is 80 ns and its
frequency is 12.5 MHz. The average power for a 12.5 MHz square wave is placed at the
center of its cycle, the trailing edge of the positive pulse. The final pulse, a blue line,
starts at t = 0 and continues to t = 1.28 ms, for a period of 2.56 ms and a frequency of 390
Hz. The average power for that point is estimated and plotted.
This curve is actually a crude piece-wise integration, and the true instantaneous power
curve in the time domain may be the derivative of this curve. This would be a fortunate
result for the prospects of making a good SPICE model. Differentiating the curve is
daunting, but differentiating the asymptotes is easier.
For low frequencies, the curve of the asymptote is
PL = a * f 1 * Bˆ 3
For high frequencies, the curve of the asymptote is
PL = a * f 2 * Bˆ 2
Substituting f =
E *t
*10 −2 kG
and Bˆ =
For low frequencies, the asymptote is:
PL = a *
E *t
*10−2 )3 mW/cm3
PL = a *
1 E3 *t3
* 3 *10 −6
PL =
* E 3 * t 2 *10 −6
* E 3 * t *10 −6
PL′ =
To get rid of one of the Es in the E3 and the t,
E *t
E * t = 8 * B *102
PL′ =
* E 2 * ( E * t ) *10−6 mW/cm3
PL′ =
* E 2 * (8 * B *10 2 ) *10 −6
PL′ =
* E 2 * B *10−4 mW/cm3
PL′ =
where RB =
for B > 0.
This can be modeled in SPICE as the voltage across a resistor. The value of the resistor
RB is determined by a behavioral source as a function of the inverse flux or flux density
B. However, this is not the same flux or flux density B used in the saturation model. It
will have to be modeled separately, as it resets for each voltage reversal.
For high frequencies, the asymptote is:
PL = a * f 2 * Bˆ 2
Substituting f =
E *t
and Bˆ =
*10 −2 kG
PL = a * (
1 2 E *t 2
) *(
The t2s cancel, leaving
PL =
* E 2 mW/cm3
That is a constant, so the derivative is the same.
PL′ =
where Rh = 256/a,
Thus the high frequency SPICE model is simply the voltage across a resistor.
That is a lot of equations with many chances to make errors. If correct, then the core loss
function can be modeled as two resistors modeling the asymptotes for the low and high
frequency cases. The resistor that dominates at low frequency is a function of 1/B.
A real core has an inductance which is complex. The real part is purely inductive and the
imaginary part is resistive, that is, it is lossy. Both components have significant nonlinearity, so their counterparts in a SPICE model may need corrective curve-fitting
functions or step-wise approximations. It may not be possible to make a SPICE model
that is accurate over very much of a range of operation.
Low frequency core losses,
graphical solution:
(This analysis was done first, and provided
the insight for parsing the manufacturers'
Knowing the strong relationship between B̂
and the core loss, it is intuitively reasonable
that the core loss would be much higher at
low frequencies with a constant voltage
square-wave applied. However, it is not at all
intuitive, to me at least, what impedance
model, if any, would produce that result.
The graphs at the right show four waveshapes having the same period and having the
same B̂ , therefore all would have the same
core loss at low frequencies. Note: these
graphs show B̂ , the maximum flux density,
not B, the instantaneous flux density.
It seems reasonable that core losses would
occur only when there is voltage applied to
the winding. In the second graph, 1 volt is
applied for 1 unit of time. The core loss
presumable occurs over the entire pulse
width, say 1 watt.
In the third graph, 2 volts are applied for half
the time. Since the average loss is the same,
the loss during the pulse must be 2 watts.
Similarly in the fourth graph, 4 volts are
applied for one fourth the time, and the power
must be 4 watts to make the average correct.
Thus, the core loss is directly proportional to the voltage, V/Y, where Y is a yet to be
defined resistance function. With a fixed resistor, the power relationship is the voltage
squared, V2/R.
Power is the product of current and voltage. With a resistor, it can also be expressed as
V2/R or I2R. With a uniform voltage, a varying power could be modeled using a variable
current source or a variable resistor. If the instantaneous power is uniform with time, a
resistor X that varied as the voltage would produce the power suggested above, V2/X, if
X = V*R1, where R1 is the value at V = 1 volt.
We still do not know if the losses are uniform over
the time that voltage is applied, and other data
suggests that it is not. Whatever the curve, though,
to produce the result observed at low frequency, it
must scale with voltage and compress with time
uniformly across the examples.
In SPICE models, the values of resistors (and other
components) can be variable, defined by
expressions. Rather than put a complicated
expression in the resistance definition, I prefer to
generate a voltage in a behavioral voltage source,
and set the resistance by entering R=v(Rx), where
Rx is the voltage of the behavioral source.
This allows different parameters to be brought into
the expression for the value of the resistance, which
can be useful for curve fitting. The power in the
resistor is calculated as the current times the voltage
and the product can be summed with the power of
other resistors in the core loss model to give the total
core loss as a test point. (In a similar manner, the
value of inductors and capacitors can be controlled
by expressions, but that is not recommended if the
energy stored in the component must be conserved.)
If pulses are viewed in isolation, are the losses the
same? Or are there some history phenomena? At the
right are five graphs of different waveforms. For the
same voltage and time (volt-seconds, or B), are the
losses always the same? What happens with losses
at the beginning of a pulse? The voltage is applied,
and the core starts to dissipate power, but at what
level? The duration of the pulse is not yet known, so
it could be 500 ns (1 MHz) or 500 ms (1 Hz), the initial conditions are the same. It seems
that the losses in the initial 500 ns must be those consistent with a 1 MHz frequency, that
is, quite low. After 5 us, the power must be at a level consistent with a 100 kHz
frequency, and after 50 us, the power must be at a level consistent with a 10 kHz
frequency. That is, after voltage is applied, the losses must be quite low at first and rise
as time goes on.
The graphs below show four waveforms. With a constant voltage applied, they have an
binary relationship, 8xB, 4xB, 2xB and B, also F/8, F/4, F/2 and F. The green and blue
lines show the relative power if the graphs represent low frequency excitation (blue) and
high frequency excitation (green). Note: These graphs show B̂ , the maximum flux
density, not B, the instantaneous flux density.
Frequency, excitation, power density
1 kHz, 100 mV, 10 mW/cm3.
1 MHz, 500 mV, 0.17 mW/cm3.
2 MHz, 500 mV, 0.15 mW/cm3.
2 kHz, 100 mV, 3.0 mW/cm3.
4 MHz, 500 mV, 0.13 mW/cm3.
4 kHz, 100 mV, 0.8 mW/cm3.
8 MHz, 500 mV, 0.12 mW/cm3.
8 kHz, 100 mV, 0.33 mW/cm3.
The values are from the graph of loss vs. frequency for
various applied voltages, above. Note that the average
power does not change very much at high frequency,
but changes dramatically at low frequency for the same
relative changes in B and F.
The graphs below show the voltage and time for maximum flux densities of B, 2xB, 5xB
and 10xB at 10 kHz and 10 MHz. The data is very uncertain at 10 MHz, but is included
for qualitative purposes. For each condition, the voltage and the power is given, both on
the curve and for the asymptote (with reference to the graph above of loss density .
For the lower frequency, 10 kHz, a 10 times increase in B results in about a 1000 times
increase in the loss power density, or three orders of magnitude. At 10 MHz, a 10 times
increase in B results in about a 100 times increase in the loss power density.
Note: These graphs show B̂ , the maximum
flux density, not B, the instantaneous flux
Frequency Voltage
10 M
10 k
100 m
100 m,
10 M
10 k
200 m
200 m
10 M
10 k
500 m
500 m
10 M
10 k
Returning to the consideration of the low frequency power loss relationships, with fixed
B̂ and variable frequency, the power density varied as V/X, where X is an undefined
resistance function. By contrast, the usual voltage relationship to power is V2/R.
With fixed frequency and a variable B̂ , the power density varies as B̂ 3 , while the voltage
varied as V. Since B̂ is volt-seconds, and the time is constant, then the power was
varying as V3. If the power varies as V with B̂ fixed and as V3 with B̂ varying, it seems
that V2 is attributable to the varying B̂ . Thus it seems that assuming that the core loss
varied as B̂ 3 is incorrect, it has to be:
PL =
V * Bˆ 2
where X is a constant, a scale factor.
To express this as a function of time, so that it can be differentiated, consider that B̂ is
volt-seconds. Substituting B̂ =V * t, we get:
PL =
V 3 *t2
Taking the derivative:
2 *V 3 * t
PL =
This can be restated as
′ 2 *V * (V * t )
PL =
2 *V 2 * B
PL =
Note, having been differentiated, PL' is instantaneous power density and B is the
instantaneous flux density.
This has the form V2/R if R varies as 1/B.
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF