Professional Documents
Culture Documents
Based on:
H.M. GREENHOUS, Senior Member, IEEE, "Design of Planar Rectangular Microelectronic
Inductors, IEEE Transactions on parts, Hybrids, and packaging, vol. PHP-10, no. 2,
June 1974.
Report: 1-08-10-04
Date: August 10, 2004
Wriiten by: Z. Gutman, M. Zontak, D. Razansky and Y. Nemirovsky
Table of contents
I. Introduction
12
16
IV.
17
20
I. Introduction
Under the assumption that the differential form of Maxwell's equations hold and that material
properties are uniform, then,
r
r
B = A
r r
H = J (1)
r
r B
H=
r
r
where A is the magnetic vector potential and B is the magnetic flux density.
r r
A = J (2)
r
r
A = 2 A + ( A ) (3)
123
=0
r r
A(r ) =
4
r r
J ( r ') dV '
rr rr ' (5)
E dl = dt
where
r r
B ds (6),
r r
E
dl sums the tangential component of the electric field around a closed path given
by contour C, and
r r
B ds sums the normal component of the magnetic flux density
r
true for any vector field A , yields
r
E dl
d
dt
A dl (8)
r
Under quasi-static conditions, substituting (5) to eliminate A gives
r r
r r
J ( r ') dV ' r
d
C E dl = dt C 4 V rr rr ' dl (9)
For a circuit consisting of thin wire and small components, the current density vanishes for
points of the contour C, and it travels in a direction tangential to the contour. Executing the
volume integral yields the simplified form:
r r
d
C E dl = dt
C 4
C'
r
i ( r ') r r
r r dl ' dl (10)
r r '
r r
E dl =
C
C 4
C'
r r di
1
(11)
r r dl ' dl
r r '
dt
The complexity of Maxwell's equations is then captured in a time-constant, geometricallydependent factor called inductance, define by
L=
4
r r
dl ' dl
C ' rr rr ' (12)
M ij =
4
Ci
C'j
r r
dl ' dl
r r (14)
r r '
5
Partial mutual inductance between Two Parallel Wires
Partial inductances are convenient when the geometry of the closed contour can be
segmented into pieces for which formulas are already available. Using the thin-wire
approximation and Neumann's formula, formulas for many useful structures can be derived.
For two parallel straight wire, the setup for the partial mutual inductance calculation is shown
in figure 1. For use in eq. (14), the various vectors are:
r
r = xx
r
r ' = x ' x + ay
r r
2
r ' r = ( x ' x ) + a 2
r
dl = dxx
r
dl ' = dx ' x
Y
dx
'
r
0 r
Wire 1
r dx
r'
Wire 2
b
Figure 1. Setup for partial mutual inductance calculation for two parallel thin wires.
b b
0 0
( x ' x )
b b
b
a a
ln
+ 1 + 1 + + (15)
2 a
a
b b
dxdx '
+ a2
Where the subscript p is used to emphasize that this is a partial mutual inductance.
Two integral formulas useful in this solution are:
ln ( u +
du
u +a
2
= ln u + u 2 + a 2 (16)
u 2 + a 2 du = u ln u + u 2 + a 2 u 2 + a 2 (17)
6
Prove of (16):
( (
d
ln u + u 2 + a 2
du
1
u + u2 + a2
)) = u +
1 2 u
1 +
=
u +a
2 u2 + a2
1
u2 + a2 + u
u +a
2
u + a2
2
Prove of (17):
1 ln ( u +
u 2 + a2
v '=1
=
{
u = ln u + u 2 + a 2
u ln u + u 2 + a 2 2u
1
2 u + a2
2
= u ln u + u 2 + a 2 u 2 + a 2
Now, let's prove equation (15):
y = x ' x 4
Mp =
{
dy = dx '
b
ln y + y 2 + u 2
2
2
4
y + a (16)
0
dxdy
0 0 x
ln b x +
4 0
b
b b x
=
{
(b x )
) (
+ a 2 ln x +
(x)
)
2
y =b x
y=x
(18)
+ a 2 dx
where,
ln ( b x + ( b x )
b
= b ln b + b + a
2
+ a 2 dx =
{ ( b x ) ln b x +
(17)
(b x )
+ a2
b
0
(b x )
+ a2
b
0
=
(19)
b +a +a
2
and,
ln ( x + ( x )
b
(b)
+ a 2 dx = b ln b +
+ a 2 + b 2 + a 2 a (20)
When combing Eq. (19) and (20) into Eq. (18) well obtain,
Mp =
b ln b + b 2 + a 2 b ln b + b 2 + a 2 b 2 + a 2 b 2 + a 2 + a + a
b + b2 + a 2
b ln
Mp =
b + b 2 + a 2
4
b + b2 + a2
ln
2
2
b + b + a
2 b 2 + a 2 + 2a
b + b 2 + a 2
= ln
2
2
b+ b +a
(21)
b + b2 + a2
b 2 + b 2 + a 2
=
2
ln
= ln
a
2
2
b+ b +a
(22)
7
2
2
b b
b
a a
2
(23)
Mp =
+ 1+ 1 + +
ln
2 a
a
b b
a x=
a
b
Teilor's series:
Let's use: 1 + x 2 1 +
x2
, so in our case we get:
2
1
1
2
1
ln + 1 + 2 = ln 1 + x 2 + 1 = ln ln 2 + ln 1 + x 2 + 1 (24)
x
x
x
x
let's look on:
x2
ln 1 + x 2 + 1 = ln 2 + = ln ( 4 + x 2 ) ln 2 (25)
2
1
1
2
ln + 1 + 2 = ln + ln ( 4 + x 2 ) ln 4 (26)
x
x
x
ln ( x )
{ ln 4 +
we know that:
x0 = 4
1
( x 4)
4
ln ( 4 + x 2 ) = ln 4 +
ln 1 + x 2 + 1
1 2
( x 4)
4
2
x2
2
2 x
ln ln 4 + ln 4 +
= ln +
4
x
x 4
b 2b a 2
1 a a
ln + 2 1 +
2 b b
a 2
a 4b
x=
2
Mp =
{
b 2b
a 1a
Mp =
ln
1
+ ....
2 a
b 4b
(27)
Now let's discuss other cases of mutual inductance which more complicated.
In calculating the mutual inductance of two conductances whose cross sectional dimension
are small compared with their distance apart, it suffices to assume that the mutual inductance
is sensibly the same as the mutual inductance of the filaments along their axes and to use the
equation (27) for filaments to calculate the mutual inductance.
8
For conductors whose cross section is too large to justify this simplifying assumption it is
necessary to average the mutual inductances of all the filaments of which the conductors may
be supposed to consist. That is, the equation (27) for mutual inductance is to be integrated
over the cross sections of the conductors.
Since the self-inductance of a conductor is equal to the sum of the mutual inductances of all
the pairs of filaments of which it is composed, the self- inductance of a straight conductor is
calculated by integration of all the mutual inductances of all the pairs over the cross section
of the inductor, using the equation (27).
Let's take a look on the case of a circular straight wire with radius a and length l (the first
example in the article).
B
B
r
rB
rA
rA
We should integrate the equation (27) over the circular cross section. First, we take one
filament and calculate its mutual inductance with all the other possible filaments, than we
average the result over all the possible filaments. In the circular coordinates we get:
r r
2 a 2 a
2l
rA rB
1 l
L=
ln r r 1 +
rA rB drA drB d A dB (28)
A 2 0 0 0 0 rA rB
l
'A' is defined to be the sum of all the pairs of filaments (the number of all the distances we
take in account):
2 a 2 a
A=
r r dr dr d d
A B
(29)
0 0 0 0
9
Thus, we obtain the self-inductance of the circular wire:
l 1 2 a 2 a 2l
ln r r
L=
2 A 0 0 0 0 rA rB
2 a 2 a
rArB
0 0 0 0
1
+
rA rB
A 3 l
1424
2 a 2 a
0 0 0 0
=1
r r
rA rB rA rB
(31)
A
r
rB rA rB drA drB d A dB . This expression is a sum
0 0 0 0
of the distances between all the possible filaments, so when we divide it by A we get the
arithmetical mean distance of the circular cross section
2 a 2 a
r
1
r
rB rA rB drA drB d A dB
0 0 0 0
1
l
(32)
A
rA rB
rA rB drA drB d A dB =
r r dr dr d d
1
r r
= ln 2l
ln ( rA rB ) rA rB drA drB d A dB
A
1444424444
3 A
A B
(33)
=1
r r
Now we have to solve ln ( rA rB ) rA rB drA drB d A dB . By doing so we will obtain :
r
ln ( r
r
rB ) rA rB drA drB d A dB = A ln R (34)
10
The calculation of R demands performing the integration of (33), which is not a very easy
task Using the previous knowledge, that was developed by Maxwell (see 'A Treatise on
Electricity and Magnetism' 690-693), we obtain that for circular area of radius a :
log R = log a
1
4
(35)
or
R = ae
1
4
= 0.7788a
All the above calculations could be performed on any arbitrary cross section, when the values
of 1 and R are properly calculated for the chosen form.
Finally in general
L=
l
2
1
2l
ln R 1 + l (36)
The last term is usually negligible, so for a round wire of radius a we get:
L=
l
2
2l
l 2l 3
ln 0.7788a 1 = 2 ln a 4 (37)
H (38)
cm
If however the material of the wire is magnetic, and has permeability , the formula (38)
becomes:
2l
L = 0.002l ln 1 + (39)
4
a
Of course the previous statement demands deeper examination and explanation. Meanwhile
let's assume that it's right, then if we don't neglect the third term of (36) and set it to its value
for circular cross section 1 =a, we get:
a
2l
L = 0.002l ln 1 + + (40)
l 4
a
11
Thus we achieved the third formula of the article. We must to emphasize that the more
general formula that is given as the first formula in the article is only an attempt to generalize
the formula (40), for all kind of cross sections and frequencies. We didn't find any support
for this generalization in other sources. So meanwhile we should not try to generalize the
formula (40).
12
The data required for each calculation are the number of segments Z, the length of the first
segment l1 , the length of the second segment l2 , the width of the conductor w, the thickness
of the conductor t, the edge-to-edge distance between conductors s, and the number of
complete turns n.
Matlab cod is attached (see Appendix B).
Parameters:
t = 0.00076 [cm]
13
0.8
10
10
l=0.127cm
l=508cm
l=0.254]cm
1
10
0.5
10
5
10
Number of Segments
10
20
20
40
10
l=1.016cm
10
l=2.032cm
10
20
40
60
10
20
40
60
To check the correctness of the suggested method we performed ADS simulation for
coils with: l1=l2=1270 [um] (arbitrary chose for easier ADS implementation), using
The simulation coil differs from the ideal coil, because it has ground reference which causes
parasitic capacities existence. However it is complicate to take those capacities in
consideration. That's why we assume that a simplified ADS model of the inductor is the
below lumped circuit. This model suggests simplified representation of the inductance, using
the simulation results (see derivation below).
14
Vout
100
= S12 =
100 + jwL
V 'in
100 + jwL =
100
S12
100
100
S12
L=
jw
We attach the simulation results at the end of the report (Appendix A).
15
Next table presents the summary of ADS simulations for coils with different Z (number of
segments) value in comparison to GH values:
Num. of seg.\Frequency
5GHz
7.5GHz
10GHz
GH values
4.13
4.25
4.45
3.95
4.36
4.46
4.59
4.75
4.57
4.61
4.66
5.51
5.28
5.82
6.68
5.67
5.57
5.98
6.71
6.15
We present the values at comparative high frequencies because at the low frequencies
1) jw 0
w 0
2) S12 1
w 0
L is not defined.
As we see from the table, the presented model is not accurate, and we can think about some
reasons for:
1. We neglected all the parasitic capacities.
2. The presentation of inductors at ADS isn't exactly the same as ideal inductor.
The main conclusion is that in range of 15% mistake, the results are close.
16
III.
Now, when we can assume that the high frequency doesn't influence too much on the
inductance, we can calculate the Quality Factor of the inductors:
Q=
Where:
R=
w L
R
(41)
l []
(42)
[ m]
f
(43)
= 4 107 H m
(44)
The following graph presents the Quality Factor for coils with different lengths of segments.
The optimization argument is the number of segments that build the coil.
The frequency is 1 [Ghz].
Quality Factor Optimization
110
l=0.254cm
l=0.127cm
100
Q
65
60
80
50
70
10
140
120
100
11
Z
Z
350
300
600
l=1.016cm
500
250
20
19
Z
40
l=2.032cm
400
200
300
150
100
l=0.508cm
160
90
55
180
70
200
20
43
Z
60
20
40
60
We can see from the graph above, that the optimization of the Quality Factor could be
made using the appropriate number of segments per each length.
17
S11
100
80
Phase [deg]
Mag. [dB]
-20
-40
-60
60
40
20
0
-20
-80
0
10
12
14
16
10
12
14
16
12
14
16
12
14
16
Frequency
Frequency
Z=6
S11
S11
100
80
Phase [deg]
Mag. [dB]
-20
-40
-60
60
40
20
0
-20
-80
0
10
12
14
16
10
Frequency
Frequency
Z=7
S11
S11
100
80
Phase [deg]
Mag. [dB]
-20
-40
-60
60
40
20
0
-20
-80
0
10
Frequency
12
14
16
10
Frequency
18
Z=8
S11
S11
100
80
Phase [deg]
Mag. [dB]
-20
-40
-60
60
40
20
0
-20
-80
0
10
12
14
16
10
12
14
16
12
14
16
Frequency
Frequency
Z=9
S11
S11
100
80
Phase [deg]
Mag. [dB]
-20
-40
-60
60
40
20
0
-20
-80
0
10
12
14
16
10
Frequency
Frequency
S12
0
Phase [deg]
Mag. [dB]
-20
-5
-10
-40
-60
-80
-100
0
-15
0
10
Frequency
12
14
16
10
Frequency
12
14
16
19
Z=6
S12
S12
Phase [deg]
Mag. [dB]
-20
-5
-10
-40
-60
-80
-100
-120
-15
0
10
12
14
16
10
12
14
16
12
14
16
Frequency
Frequency
Z=7
S12
S12
0
Phase [deg]
Mag. [dB]
-20
-5
-10
-40
-60
-80
-100
-15
0
10
12
14
16
10
Frequency
Frequency
Z=8
S12
S11
0
-20
Phase [deg]
Mag. [dB]
-20
-40
-60
-40
-60
-80
-100
-120
-80
10
12
14
16
10
12
14
16
12
14
16
Frequency
Frequency
Z=9
S12
S12
0
-20
Phase [deg]
Mag. [dB]
-5
-10
-15
-40
-60
-80
-100
-20
-120
-25
10
Frequency
12
14
16
10
Frequency
20
clear all
close all
NumSeg= [10, 21 ,41, 64,64]
len=[0.05,0.1,0.2,0.4,0.8]
for j=1:length(len)
Z=[4:NumSeg(j)];
inch2cm=2.54;
l1=len(j)*inch2cm;
l2=l1;
w=0.005*inch2cm;
s=0.005*inch2cm;
t=7.6000e-004;%0.0003*inch2cm;
for i=1:length(Z)
n=floor(Z(i)/4);
L(i)=CalcInd(n,Z(i),l1,l2,s,w,t);
R(i)=CalcRes(n,Z(i),l1,l2,1*10^(9),w,1.67*10^(-6));%f=1*10^(9) [Hz]
Q(i)=CalcQFactor(1,L(i),R(i));
end
figure(1);grid on;
subplot(2,3,j)
semilogy(Z,L);
axis([min(Z) max(Z) min(L) max(L)]);
figure(2);
subplot(2,3,j)
plot(Z,Q);
[m,ind_m]=max(Q);
hold on;
plot(Z(ind_m),m,'r*');
axis([min(Z) max(Z) min(Q) max(Q)*1.2]);
grid on;
hold off;
end
figure(1);
title('Inductance vs. Number of Segments');
figure(2);
title('Quality Factor Optimization');
21
Additional functions:
function L=CalcInd(n,Z,l1,l2,s,w,t,method);
%Input:
%n-the number of coil's full turns
%Z-the total number of segments
%l - vector of all the segments' lengths [cm]
%w - the segmemt's width [cm]
%t - the segment's thickness [cm]
%method- there are two options for this field: 'Grover'(default), 'Bryan'
%Output:
%L - inductance [nanaohenries]
if nargin<5
method='Grover';
end
l=calc_l(l1,l2,w,s,Z);
d=findDist(l(1),l(2),s,w,Z);
Lo=sum(CalcSelfInd(w,t,l));
M_minus=0;
for y=1:Z-2
for nn=1:n
if (y+4*nn-2) >Z
continue;
end
M(y,y+4*nn-2)=CalcM(l(y),l(y+4*nn-2),d(y,y+4*nn-2),w);
M_minus=M_minus+M(y,y+4*nn-2);
end
end
clear M;
M_minus=M_minus*2;
M_plus=0;
for y=1:Z-4
for nn=1:n
if (y+4*nn) >Z
continue;
end
M(y,y+4*nn)=CalcM(l(y),l(y+4*nn),d(y,y+4*nn),w);
M_plus=M_plus+M(y,y+4*nn);
end
end
M_plus=M_plus*2;
L=Lo+M_plus-M_minus;
22
function r= CalcRes(n,z,l1,l2,f,w,ro)
%Input:
%%%% n- number of curves
%%%% z-number of segments
%%%% l1,l2- the length of the coils sides [cm]
%%%% f-frequency [Hz]
%%%% w-the width of the inductor [cm]
%%%% ro- resistivity [Ohm-cm]
%Output:
%%%%% r- resistance [Ohm]
res=CalcResist (f,w,ro);
switch mod(z,4)
case 0
temp=0;
case 1
temp=l1;
case 2
temp=l1+l2;
case 3
temp=2*l1+l2;
end
r=res*(2*floor(z/4)*(l1+l2)+temp);
function Q= CalcQFactor(f,L,R)
%this function calculates the quality factor
%Input
%%%% f- frequency [GHz]
%%%% L-inductance [nanohenry]
%%%% R- resistance [Ohm]
%Output:
%%%%%Q-Quality Factor
Q=2*pi*f*L/R;
23
function Lo=CalcSelfInd(a,b,l);
%This function calculates the Self Inductance of the Rectangular Wire
% Assumptions:1) near-direct-current case
%%%%%%%%%%%%% 2) magnetic permeability = 1
%Input: a,b-cross section dimensions of the wire (one side has to be much greater than the
other)
%%%%%%% l-the length of the wire
%Output: Lo- self inductance of the wire
%Authors: Zivit Gutman & Maria Zontak
x=l/(a+b);
Lo=2*l.*(log(2*x)+0.50049+1./(3*x));
function M = CalcM(j,m,d,w);
p=abs(j-m)/2;
if p>0
M=CalcMutualInd(d,w,min(m,j)+p)-CalcMutualInd(d,w,p);
else
M=CalcMutualInd(d,w,m);
end
function M=CalcMutualInd(d,w,l);
%This function calculates the Mutual Inductance between two parallel conductors
%Input:
%d-the distance between track centers.
%w-the track width
%l-the length of the conductors
%Output:
%M-mutual inductance
GMD=CalcGMD(d,w);
M=2*l*Que(l/GMD);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function GMD=CalcGMD(d,w);
%Input:
%d-the distance between track centers.
%w-the track width
%Output:
%GMD- the geometric mean distance between two conductors.
temp=log(d)-(1/12/(d/w)^2+1/60/(d/w)^4+1/168/(d/w)^6+1/360/(d/w)^8+1/660/(d/w)^10);
GMD=exp(temp);
24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function Q=Que(x)
%Input:
%x- the ratio between the length of the wire and wire's GMD
%Output:
%Q - the mutual-inductance parameter.
Q=log(x+sqrt(1+x^2))-sqrt(1+1/x^2)+1/x;