SCALABLE INTERCONNECT MODEL
FOR TOWER JAZZ SBC18
by
Erik Harker
A senior thesis submitted to the faculty of
Brigham Young University - Idaho
in partial fulfillment of the requirements for the degree of
Bachelor of Science
Department of Physics
Brigham Young University - Idaho
April 2014
Copyright © 2014 Erik Harker
All Rights Reserved
BRIGHAM YOUNG UNIVERSITY - IDAHO
DEPARTMENT APPROVAL
of a senior thesis submitted by
Erik Harker
This thesis has been reviewed by the research committee, senior thesis coordinator, and department chair and has been found to be satisfactory.
Date
Evan Hansen, Advisor
Date
David Oliphant, Senior Thesis Coordinator
Date
Richard Hatt, Committee Member
Date
Stephen McNeil, Commitee Member
ABSTRACT
SCALABLE INTERCONNECT MODEL
FOR TOWER JAZZ SBC18
Erik Harker
Department of Physics
Bachelor of Science
A scalable interconnect model of transmission lines specific to the SBC18
Tower Jazz process was created with the intent to be used at Maxim Integrated Products. The model has the ability to predict the series inductance
and resistance of the line and the shunt capacitance and conductance due to
the substrate. Both single ended and coupled lines were modeled. The model
allows one to select one of the 6 metal layers, set the line width and the line
separation in the case of the coupled lines. Simulations were done in Maxwell
Q2D to have a standard to compare the model to. The skin effect was taken
into account in order to improve reliability at higher frequencies. The single
ended line correctly prediced a rise in resistance, and conductance as with frequency, and a slight decrease in capacitance and inductance. The coupled line
model also accurately predicted the capacitance, resistance and conductance.
The model for the series and mutual inductance did not follow the predicted
v
frequency dependence, but the values given were within the accepted error.
ACKNOWLEDGMENTS
I would like to thank my mentor, Dr. Garth Sundberg, and those at Maxim
Integrated in Beaverton, OR, for this project and guidance and experience
I gained while working there. I also thank the faculty at Brigham Young
University-Idaho for their helpful feedback throughout the semester. And of
course I want to thank my wife, Ashley for all that she does for me.
Contents
Table of Contents
vii
List of Figures
ix
1 Introduction
1.1 Project Background . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Transmission Line Uses . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Why This Is Important . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
2
2
2 History
2.1 History of Maxim Integrated Products . . . . . . . . . . . . . . . . .
2.2 History of Semiconductor Devices . . . . . . . . . . . . . . . . . . . .
2.3 Transmission Line Theory . . . . . . . . . . . . . . . . . . . . . . . .
5
5
6
6
3 Process
3.1 Maxwell Q2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Circuit Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
9
11
12
4 Results
4.1 Single Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Coupled Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
15
15
17
5 Conclusion
5.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
21
22
Bibliography
23
A Matlab Code
25
vii
List of Figures
3.1
3.2
3.3
3.4
Single Ended Cross Section
Coupled Cross Section . . .
Single Ended Line Model . .
Coupled Line Model . . . .
.
.
.
.
.
.
.
.
.
.
.
.
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
Single 10µm Wide Metal Layer 6 Resistance .
Single 10µm Wide Metal Layer 6 Inductance .
Single 10µm Wide Metal Layer 6 Conductance
Single 10µm Wide Metal Layer 6 Capacitance
Coupled 10µm Wide with 10µm Metal Layer 6
Coupled 10µm Wide with 10µm Metal Layer 6
Coupled 10µm Wide with 10µm Metal Layer 6
Coupled 10µm Wide with 10µm Metal Layer 6
Coupled 10µm Wide with 10µm Metal Layer 6
Coupled 10µm Wide with 10µm Metal Layer 6
ix
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
11
12
13
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
Resistance . . . . .
Inductance . . . . .
Conductance . . . .
Capacitance . . . .
Mutual Inductance .
Mutual Capacitance
.
.
.
.
.
.
.
.
.
.
16
16
17
17
18
18
19
19
20
20
Chapter 1
Introduction
1.1
Project Background
While working for Maxim Integrated Products in Beaverton Oregon, a project arose,
to work on modeling transmission lines for the Tower Jazz SBC18 process. The
SBC18 process refers to a specific process that is used to make devices on silicon
wafers. One diffecence about this process was the specific dimensions that each layer’s
interconnects had.
The development of each new process costs the company millions of dollars, and
to make a test wafer just for transmission lines would be very expensive. To help
reduce costs the designers rely on computer simulations to tell them how a layout
will react before they are ever produced. The scalable model that was created would
help them know how the transmission lines would act under given frequencies.
1
2
Chapter 1 Introduction
1.2
Transmission Line Uses
In wafers that have devices built into the silicon, these devices are connected with
transmission lines in the interlayer dielectric (ILD). These lines are made of copper
because of its high conductivity. At low frequencies these transmission lines would
appear to have little or no reactance, but at the higher frequencies that are needed
for modern computing even the connecting transmission lines must be modeled. It
was important to know how these lines react because at high frequency the reactence
of a line could cause data to be lost.
The project was to create a scalable model for both single ended and coupled
transmission lines. The model would predict the conductance, resistance, capacitance
and, inductance. It was important that they be modeled up to 10GHz, not that these
lines would ever be used at those speeds but to make sure the model was accurate.
1.3
Why This Is Important
The model was scalable in that the designer would be able to enter the desired line
width, depth, length, and for the coupled lines, the separation. Extreme limits were
used to make sure all feasible options were available to the designer. We limited the
length of the line to 1mm, the width of the line to 50µm, and the separation of the
lines to 50µm. The depths of the transmission lines are set at specific heights that
are predetermined by the process specifications.
A project like this had been previously done to model another process’s transmission lines and the designers found the convenience of it enough that they requested
another model be made. Just as before, one needed to compare the predicted model
against something, but the whole point of this is to save money so having test wafer
made just for this would be too expensive. Instead it was decided that the model
1.3 Why This Is Important
3
would be compared to a trusted electromagnetic simulator made by Ansys called
Maxwell Q2D. It had previously been tested to be accurate within 10%, and ignoring
the ends of the lines had not been a problem before at Maxim. These simulations
would help build a Matlab code that would predict the behavior of the interconnect.
The final Matlab code was put into SPICE to be used by the engineers.
4
Chapter 1 Introduction
Chapter 2
History
2.1
History of Maxim Integrated Products
Jack Gifford and others founded Maxim Integrated Products in April 1983 in Sunnyvale, California. The founders felt that there was a market for a supplier of highquality analog and mixed-signal integrated circuits. By 1987 they were already turning a profit. Maxim now boasts annual revenues of more than 2 billion dollars [1],
and has locations throughout the world, with their headquarters located in San Jose,
California. [2]
Maxims products have been designed for use in a variety of products for companies
such as Apple, Samsung, and Cisco. A large portion of the company’s business in
the years leading up to 2013 came from Samsung, with 50% of the companys revenue
coming from that company alone. Maxim designed the no-touch swipe-to-answer
system that was used on the Samsung, Galaxy S4 cell phone.
5
6
Chapter 2 History
2.2
History of Semiconductor Devices
Michael Faraday was the first man known to see the effects of semiconductors. In 1833
he noticed that the resistance of silver sulfide decreased with temperature, which was
contrary to the reaction of metals. In 1878 Edwin Herbert Hall discovered the Hall
effect, in that he discovered that charge carriers in solids are deflected in magnetic
fields. And, in 1899 Eduard Riecke theorized that there were both positive and
negative charge carriers with different mobilities. These were important discoveries
that were necessary for the understanding of semiconductor devices. [3]
The most essential of all semiconductor devices are field effect transistors (FET).
A FET is built using doped semiconductors and uses electric fields to move charges
and build paths for current to flow. FETs are the basic building block of modern
computing, being needed for logic gates, as well for digital memory. All semiconductors must be connected to build a circuit, and they are connected using transmission
lines.
2.3
Transmission Line Theory
There are two types of transmission line that are used in modern in-wafer: single
ended lines, and coupled lines. Coupled lines are favored in many instances because
having two lines is a way to assure correct data transfer.
The capacitance per length of a single transmission line is:
C
w
= r 0 KCL ,
L
h
(2.1)
where r is the relative permittivity of the material, 0 is the relativity of free space,
KC1 is the capacitive fringing factor, w is the width of the transmission line and h is
the height between the bottom of the transmission line and the ground plane below.
2.3 Transmission Line Theory
7
The mutual capacitance per length of coupled transmission line is:
C
w2
= r 0 KCL KL1 2 ,
L
d
(2.2)
where KL1 is the inductive fringe factor and d is the distance between the two lines. [5]
The impedance, Z0 , of the of the line was calculated based on thickness of oxide
layer, oxide material, and line width assuming substrate is grounded. The equation
is:
s
Z0 =
L
,
C
(2.3)
The resistatance of in the shunt term, RSi is calculated using the conductivity of
the silicon,the relativity of free space and, relative permittivity of the material:
RSi =
ρr 0
,
CSi
(2.4)
The series inductance, L, is found using the Greenhouse equation [4]:
L=
N 2 µr µ0 A
,
l
(2.5)
With N being the number of turns (which will be a scaling factor), µr is the
relative permeability, µ0 is the permeability of free space, l being the length of the
coil, and A is the area.
8
Chapter 2 History
Chapter 3
Process
3.1
Maxwell Q2D
The modeling process started in Ansys Maxwell Q2D, a software that was made for
the purpose of modeling transmission lines. The process of creating a two-dimensional
model was fairly straightforward. Going into the pull down menus in the software,
one enters the oxide material, which will give the resistivity in Ωµm. The ILD is then
set in the same way. The dielectric constant for silicon, silicon oxide, silicon nitride,
and plastic need to be set or confirmed they are the correct values.
The next step is to set up the specific layout of the transmission lines to be
simlated. The first part was to create a box of silicon. It had to be 300µm in height
to meet specifics for the SBC18 process, and the width was set to be infinite. This
was done so we dont have complications caused by edge effects. The ILD was set
on top of the silicon and was set to be 11.51µm thick. Next, the nitride layer was
created on top of the ILD and was set to be 0.6µm thick. A copper layer was added
to the bottom to supply a constant ground reference. The thickness was set at 150µm
but the exact thickness of copper was inconsequential. The last thing that will be
9
10
Chapter 3 Process
Figure 3.1 A cross section of a metal layer 6 transmission line. This was
not drawn to scale.
constant for all the simulations was a cap layer of plastic over the top of the nitride;
the thickness of this is also unimportant.
The metal layers were then added. For the SBC18 process there are 6 different
layer options for our transmission lines, and each of these has a specific unchanging
height associated with it. The specific heights have been withheld for copyright, but
suffice it to say, metal layers 5 and 6 are thicker than 1 through 4. Metal layer 6 is
unique in that the ILD, nitride and plastic above had to be raised in order for it to
fit around it as seen in Figures 3.1 and 2. This is approximated by building a box of
each with the walls of the box being the same thickness as the layer is deep.
The simulations were run many times per metal layer, cycling through predetermined widths, never being thinner than the metal layer was tall. The range in widths
is far beyond what one would expect the designers to ever use, but it was done for the
sake of thoroughness. For the coupled transmission lines the spacing between then
lines was also scaled along with the line widths. After the tests were run, the data
were saved and then imported into Matlab to begin the fitting.
3.2 Circuit Analysis
11
Figure 3.2 A cross section of metal layer 6 coupled transmission lines. This
was not drawn to scale.
3.2
Circuit Analysis
But before the data in Matlab could be used, there had to be a circuit design that
would properly represent the circuit. A simple transmission line has series inductance
and series resistance with two capacitance terms. The transmission line model that
was used was more accurate, in order to take into account the addition of the substrate
between our transmission line and the copper ground. Being that this transmission
line will be used for high frequencies, terms that take skin effect into account must
be present.
The terms for skin effect were simplified into only having one additional set of
inductance and resistance terms. In order to make the model more accurate for very
high frequencies, more would need to be added in parallel. It has been shown and
approved by the engineers that this additional complication was not be needed.
12
Chapter 3 Process
Figure 3.3 The chosen layout for the single ended line.
3.3
Matlab
In Matlab, the constants were set first, the same as in Maxwell Q2D. We then set
up a selection of if-then statements that would change the height, widths, resistivity,
and separation (for the coupled lines). The first of the calculations was calculating
the series resistance and series inductance terms. As stated our model will take
into account skin effect, so those inductance and resistance terms were next to be
calculated. Our shunt terms were: the capacitance caused by the ILD, the capacitance
caused by the silicon, and the shunt resistance caused by the silicon. Figure 3.4 shows
this layout.
The coupled lines were a bit more complicated. The whole circuit was doubled
to represent each line and would have the addition of coupling, which brought linked
inductance and mutual capacitance between the lines. This was was put into Yparameters. The Y-parameters are then changed into Z-parameters, which will be
needed for translating this into SPICE, the desired language for the final product.
3.3 Matlab
13
Figure 3.4 The chosen layout for the coupled line.
Once the basic equation were made, the scaling terms in our equations were then
manually changed to best fit the imported data from Maxwell Q2D. There were two
scaling factor used: one that would be combined with our mutual capacitance and
another to help fit the DC resistance. Simple guess and check was used to fit these
scaling factors.
14
Chapter 3 Process
Chapter 4
Results
4.1
Single Lines
The model suggested the resistance of our single ended transmission line increased
almost to linearly with frequency for most metal layers and, inductance decreased as
frequency rose. Conductance also rose with frequency and capacitance tended to fall
as frequency increased.
These predictions stick close to the values that were accepted as reliable from
Maxwell Q2D. The model stayed consistently within 10% of the predicted values. In
Figures 4.1-4 one can see the results for the 10µm wide metal layer 6 single transmission lines:
4.2
Coupled Lines
The model of the coupled lines accurately predicted that the resistance would increase
linearly just as the single ended lines did. The modeling of the shunt capacitance correctly showed a decrease as frequency rose. Modeling the series inductance correctly
15
16
Chapter 4 Results
predicted the initial values within error, but the frequency dependence was unreliable.
The mutual inductance between the two lines were also off, the results from Maxwell
Q2D were approximately flat, but the model showed a rise as frequency increased.
The conductance was more accurate and showed an increase with frequency. The
mutual capacitance was also accurate, showing an increase with frequency.
Figure 4.1 Single 10µm wide 1000µm long metal layer 6, Resistance vs.
Frequencey
Figure 4.2 Single 10µm wide 1000µm long metal layer 6, Inductance vs.
Frequencey
4.3 Limitations
17
Figure 4.3 Single 10µm wide 1000µm long metal layer 6, Conductance vs.
Frequencey
Figure 4.4 Single 10µm wide 1000µm long metal layer 6, Capacitance vs.
Frequencey
4.3
Limitations
The limitations of the model for single and the coupled lines are; that the results
could be more accurate if the skin effect portion of the topology was improved. This
could be achieved by putting an inductor and resistor in parallel with the skin effect
resistor, R2 in Figure 3.4. This was not done in this model because at the time of
the experiment, the results would not need any more accuracy than what was already
achieved.
18
Chapter 4 Results
Figure 4.5 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Resistance vs. Frequencey
Figure 4.6 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Inductance vs. Frequencey
The values given by the model were within 10% of the simulated values, but with
many of the coupled lines the frequency dependence was lost. This was brought to
the attention of the engineers that would be implementing the model and it was said
that further work to improve the performance was unnecessary. With that the model
was called complete.
4.3 Limitations
Figure 4.7 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Conductance vs. Frequencey
Figure 4.8 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Capacitance vs. Frequencey
19
20
Chapter 4 Results
Figure 4.9 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Mutual Inductance vs. Frequencey
Figure 4.10 Coupled 10µm wide 1000µm long with 10µm separation metal
layer 6, Mutual Inductance vs. Frequencey
Chapter 5
Conclusion
5.1
Summary
While on an internship with Maxim Integrated Products, a multi-billion dollar integrated circuit designing company, the author constructed a scalable interconnect
model of the transmission lines for the Tower Jazz SBC18 process. This code contained models of single and coupled transmission lines. The model would be scalable
over width, depth and length, as well as separation for the coupled lines.
The process started on Ansys Maxwell Q2D, running hundreds of simulation,
systematically changing the width/depth/separation to have reliable data for comparison. A topology was then selected that would be an accurate approximation
for the transmission lines. Fitting the data was done by calculating the values for
the inductance, capacitance, resistance and conductance. Scaling factors were also
needed.
The model was deemed acceptable with the values being within 10% of the data
from Q2D. The frequency dependence was very close for single ended lines and coupled
lines except for the inductance on the couple transmission lines, where only the general
21
22
Chapter 5 Conclusion
values were close.
5.2
Future Work
There is a need for more scalable interconnect models for Maxim and other integrated
circuit companies. This was the second time that Maxim had a transmission line
model created for one of their processes and it stands to reason that they will continue
to need more. As speeds in computing increase the need for an understanding of how
each transmission line will react at high frequencies becomes more important.
As stated before the short-comings of the model made for the SBC18 process were
accepted, but as speeds increase the model will have to be refined to better match
the frequency dependence. Another problem that may arise is that there was no
comparing the model to a physical wafer. The whole point of the experiment was to
save money and creating a wafer of just transmission lines would not be cost effective.
But as time goes on it will be important to recalibrate the values given by Maxwell
Q2D.
Bibliography
[1] History of Maxim http://www.maximintegrated.com/company/profile.cfm
[2] History of Maxim http://web.archive.org/web/20080720003507/http://www.
sanjosemagazine.com/main/?p=450
[3] Lidia ukasiak and Andrzej Jakubowski. “History of Semiconductors,” Journal of
Telecommunications and Information Technology. (2010)
[4] Inductance equation picture http://www.allaboutcircuits.com/vol 5/chpt 1/6.
html.
[5] Charles S Walker. “Capacitanc, Inductance and Crosstalk Analysis,”(Norwood,
MA 1990), pg 57.
23
24
BIBLIOGRAPHY
Appendix A
Matlab Code
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Transmission lines for Tower Jazz SBC18 %
% June 6, 2011
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all;
%clear all variables
close all;
%close all figures
length=1000;
%Lenght of line in umeters
% user is to activate user interactive mode, set to 1 or 0
user =1;
%checkspek is used when checking SPECTRE values, set to 1 or 0
checkspek=0;
done=0;
if (user ==1)
25
26
Chapter A Matlab Code
P1orP2=input(’Ports 1&3 or 2&4 for Ls Rs Cs Gs, 1&2 for CM, 1&2 for LM [1 2 3 4]: )’
layer=input(’Enter Layer Number from 1 to 6:
’);
if (layer==1)
width=input(’Choose Width [.52 .8 1 2 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [.52 .8 1 2 5 8 10 20 50]:
’);
end
if (layer==2)
width=input(’Choose Width [.52 .8 1 2 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [.52 .8 1 2 5 8 10 20 50]:
’);
end
if (layer==3)
width=input(’Choose Width [.52 .8 1 2 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [.52 .8 1 2 5 8 10 20 50]:
’);
end
if (layer==4)
width=input(’Choose Width [.62 .8 1 2 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [.62 .8 1 2 5 8 10 20 50]:
’);
end
if (layer==5)
width=input(’Choose Width [1.59 2 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [1.59 2 5 8 10 20 50]:
’);
end
if (layer==6)
width=input(’Choose Width [2.81 5 8 10 20 50]:
’);
seperation=input(’Choose Seperation [2.81 5 8 10 20 50]:
end
’);
27
end
if (user==0)
layer=1;
width=5;
seperation=.52;
P1orP2=3;
end
% Enter constants here
c0=3e14;
%Speed of light in um/s
u0=4*pi*1e-13;
%permeability in H/um
e0=8.854e-18;
%permittivity in F/um
ICEo=e0;
ros_Al=2.67e1;
%conductivity of Al in S/um
ros_Cu=5.01e1;
%conductivity of Cu in S/um
er_Si=11.9;
%Dielectic constant of Silicon
ICEsi=er_Si;
ros_Si=12.5;
%conductivity of Silicon
er_Si02=4;
%Dielectic constant of Silicon Oxid
er_Si3N4=7;
%Dielectic constant of Silicon Nitr
er_Pst=4.2;
%Dielectic constant of plastic
ICEr=3.9;
% Rel permittivity of thermal SiO2
t_substrate=300;%Thickness of substrate
p_sub=80000;
%substrate resistivity
in ohm*um
28
Chapter A Matlab Code
%skewing parameters
rwaferx=1;
cwaferx=1;
%end skewing parameters
% Set case to account for up or down.
%up_or_down=-1;
up_or_down=0;
%up_or_down=1;
% Sheet Resistivities in Ohm/sqr
if (layer ==1)
ps_m = 0.082;
end
if (layer ==2)
ps_m = 0.082;
end
if (layer ==3)
ps_m = 0.082;
end
if (layer ==4)
ps_m = 0.066;
end
if (layer ==5)
Set up_or_down to -1,0, or +1.
29
ps_m = 0.018;
end
if (layer ==6)
ps_m = 0.0105;
end
%Thinkness of Metal Layers in umeters
if (layer ==1)
t_m = ###;
end
if (layer ==2)
t_m = ###;
end
if (layer ==3)
t_m = ###;
end
if (layer ==4)
t_m = ###;
end
if (layer ==5)
t_m = ###;
end
if (layer ==6)
t_m = ###;
end
30
Chapter A Matlab Code
% Min seperation of the two lines
s_min=t_m;
% Thinkness variance (up down)
if (layer ==1)
t_ud_m = 0.08 * up_or_down;
end
if (layer ==2)
t_ud_m = 0.08 * up_or_down;
end
if (layer ==3)
t_ud_m = 0.08 * up_or_down;
end
if (layer ==4)
t_ud_m = 0.08 * up_or_down;
end
if (layer ==5)
t_ud_m = 0.28 * up_or_down;
end
if (layer ==6)
t_ud_m = 0.30 * up_or_down;
end
.
. (Code left out to save space)
31
.
freq=frequency*1e-9;
w=2*pi*frequency;
%Convert S-parameters to Y-Parameters
Y=StoY(S);
Z=StoZ(S);
%Extract Simulated L, R, C, G
Rsim=real(-1./Y(:,3));
Lsim=imag(-1./Y(:,3))./(2*pi*freq1);
Gsim=2*real(Y(:,1)+Y(:,3));
Csim=2*imag(Y(:,1)+Y(:,3))./(2*pi*freq1);
Lmsim=imag(Z(:,3))./(2*pi*freq1);
Cmsim=imag(-Y(:,3))./(2*pi*freq1);
%metal drawn-to-finished feature size change
dm =t_ud_m;
lf_m=length+2*dm;
wf_m=width+2*dm;
32
Chapter A Matlab Code
% ILD thickness in um;
if (layer == 1)
tox= 1.14;
end
if (layer == 2)
tox= 2.46;
end
if (layer == 3)
tox= 3.78;
end
if (layer == 4)
tox= 5.1;
end
if (layer == 5)
tox= 7.72;
end
if (layer == 6)
tox= 11.31;
end
%use er=4.2 for plastic, er=2.85 for bcb, er_eff=2.5 for air since BCB is still
%5um thick over lines on unpackaged dice
if (layer == 1)
erair=3.9;
end
33
if (layer == 2)
erair=3.9;
end
if (layer == 3)
erair=3.9;
end
if (layer == 4)
erair=3.9;
end
if (layer == 5)
erair=3.9;
end
if (layer == 6)
erair=4.2;
end
%calculate p.u.l. C for ILD_global
er_eff_ILD = (ICEr+erair)/ 2 + (ICEr-erair) / 2 * (1/ sqrt(1 + 12 *tox/ wf_m));
Z0_ILD=120*pi/ (sqrt(er_eff_ILD) *(wf_m/ tox+ 1.393+ 0.667* log(wf_m/ tox + 1.444)
CILD = sqrt(er_eff_ILD)/(c0*Z0_ILD);
%calculate p.u.l. C for Si
w_eff_Si = CILD * tox/(ICEr*ICEo);
er_eff_Si = (ICEsi + ICEr) / 2 + (ICEsi - ICEr)/2 * (1 /sqrt(1 + 12 *
34
Chapter A Matlab Code
t_substrate/w_eff_Si));
Z0_Si = 120 * pi/ (sqrt(er_eff_Si) * (w_eff_Si/ t_substrate + 1.393 + 0.667 *
log(w_eff_Si/t_substrate + 1.444)));
CSi = cwaferx * sqrt(er_eff_Si) / (c0 * Z0_Si);
GSi = (1/rwaferx*1) * (1/p_sub) * CSi / (ICEsi*ICEo);
if (layer ==1)
CM_scale=0.773.*seperation.^0.214;
end
if (layer ==2)
CM_scale=0.757.*seperation.^0.167;
end
if (layer ==3)
CM_scale=0.769.*seperation.^0.141;
end
if (layer ==4)
CM_scale=0.778.*seperation.^0.090;
end
if (layer ==5)
CM_scale=0.955.*seperation.^-0.10;
end
if (layer ==6)
CM_scale=1.466.*seperation.^-0.16;
end
% modified based on TX09Z measurement data
35
xw=0.85*(0.95/(wf_m^(0.22)));
yw=0;
CM=CM_scale*(((2/t_m^0.43)*(135.7/((4*seperation/s_min)^xw)+yw)*
1e-18*(1.0+0.04)) *(lf_m/2)); %used to have "pack" in it. Combined Cm and CM into
%calculate shunt equivalent circuit parameters for substrate
f0pt25=.2;
f0pt2=.2;
f0pt4=.5;
CILD1=CILD*(lf_m/2)*(1-(1-(f0pt25*wf_m^(f0pt2)+f0pt4))*(s_min/seperation));
CSi1=CSi*(lf_m/2)*(1-(1-(f0pt25*wf_m^(f0pt2)+f0pt4))*(s_min/seperation));
RSi1=1/(GSi*(lf_m/2)*(1-(1-(f0pt25*wf_m^(f0pt2)+f0pt4))*(s_min/seperation)));
%calculate series inductance terms (internal and external)
eps = -0.008044;
x0 = -0.196224;
aa = 7.534187;
B1 = log(t_substrate/(1));
C1 = 1-(B1/aa-x0);
tscale=1-0.5*(C1+sqrt(C1*C1+4*eps*eps))+.051;
%tscale=1;
Ldc =( 2e-13 * lf_m * (log(2 * lf_m/ (wf_m +t_m)) +0.5005 +((wf_m+t_m)
/(3*lf_m))))*tscale;
Ldc500um_norm= (2e-13* 500* (log(2* 500 /(wf_m +t_m)) +0.5005 +
((wf_m+t_m)/ (3*500))))*tscale;
36
Chapter A Matlab Code
if (layer ==1)
Li = 0.01 *Ldc500um_norm;
end
if (layer ==2)
Li = 0.01 *Ldc500um_norm;
end
if (layer ==3)
Li = 0.01 *Ldc500um_norm;
end
if (layer ==4)
Li = 0.01 *Ldc500um_norm;
end
if (layer ==5)
Li = 0.15 *Ldc500um_norm;
end
if (layer ==6)
Li = 0.13* Ldc500um_norm;
end
Le = Ldc - Li;
GMD=wf_m+seperation;
Lm=2e-13*lf_m*(log((lf_m/GMD)+(1+(lf_m^2)/(GMD^2))^(0.5))(1+(GMD^2)/(lf_m^2))^(0.5)+(GMD/lf_m));
Km=Lm/Le;
37
%DC resistance
Rdc = ps_m * (lf_m/ wf_m);
if (layer == 1)
n0=100;
end
if (layer == 2)
n0=100;
end
if (layer == 3)
n0=100;
end
if (layer == 4)
n0=100;
end
if (layer == 5)
n0 = (1/((wf_m)^2.25)) + 5.2;
end
if (layer == 6)
n0 = (1/((wf_m)^2.25)) + 5.0633;
end
%calculate R1 and R2 for series branch
R2 = (n0+1) / n0*Rdc;
38
Chapter A Matlab Code
R1 = Rdc * R2 / (R2-Rdc);
% Calculations for Y21
Zcm=1./(j*w.*CM);
%Same as Zb0
Zsh=(1./(j*w.*CILD1))+(RSi1.*(1./(j*w.*CSi1)))./(RSi1+(1./(j*w.*CSi1)));
%Same as Zb2
Zs1=(j*w.*Le)+(((j*w.*Li+R2).*(R1))./((j*w.*Li+R2)+(R1)));
%Same as Zb1
Zb3=((Zsh.*(1./(j*w.*CM)))./(Zsh+(1./(j*w.*CM))))+Zs1;
%Check
Zb4=((Zsh.*Zb3)./(Zsh+Zb3))+(1./(j*w.*CM));
%Check
Zb5=(Zs1.*Zb4)./(Zs1+Zb4);
Zetotal=(Zb5.*Zsh)./(Zb5+Zsh);
%for Cases 1 and 2
y11=1./Zetotal;
y21=((-Zcm./Zs1)-(2.*Zsh./Zs1)-(2.*Zcm.*Zsh)./(Zs1.*Zs1)-(Zcm./Zs1)+
(y11.*Zcm.*Zsh./Zs1))./(Zcm+Zsh+(Zcm.*Zsh./Zs1));
%for case 3 (Compare CM with ports of P1&P2 open P3&P4)
ZCM1=((Zs1).*(Zsh))./((Zs1)+(Zsh))+Zcm;
ZCM2=((ZCM1.*Zsh)./(ZCM1+Zsh))+Zs1;
ZCM3=(ZCM2.*Zcm)./(ZCM2+Zcm);
ZCM4=(ZCM3.*Zsh)./(ZCM3+Zsh);
YCM11=1./ZCM4;
YCM21=-((2.*Zs1./Zsh)+2+(2.*Zs1./Zcm)-(YCM11.*Zs1))./(Zcm+(Zs1.*Zcm./Zsh)+Zs1);
39
%for case 4 (Compare LM with ports on P1&P2 short P3&P4)
ZLm=j*w.*Lm;
ZLe=j*w.*Le;
Zs0=(((j*w.*Li+R2).*(R1))./((j*w.*Li+R2)+(R1)));
YLM11=((1./Zcm)+(1./Zsh)+((Zs0+ZLe)./((Zs0+ZLe-ZLm).*(Zs0+ZLe+ZLm))));
%4
YLM21=((Zs0+ZLe)./((Zs0+ZLe-ZLm).*(Zs0+ZLe+ZLm)))-(1./Zcm)-(1./(Zs0+ZLe-ZLm));
%4
ZLM21=(-YLM21./(YLM11.*YLM11-YLM21.*YLM21));
%4
Y31=-YLM11+(1./Zcm)+(1./Zsh);
%4
Y41=-YLM21-(1./Zcm);
%4
Zs = (((w.* j* Li+ R2)* R1)./(R1 + R2 + j* w.* Li)) +(j* w.* Le);%Total Z for seir
Ys = 1 ./ Zs;
Zp = ((-j./(w.*2*CSi1))*(RSi1/2))./((RSi1/2)+j*(-1./(w.*2*CSi1)))+(-j./(w.*2*CILD1
%Total Z for shunt
Yp = 1 ./ Zp;
Z011maxwell=sqrt((Rpul+j*w.*Lpul)./(Gpul+j*w.*Cpul));
Z012maxwell=sqrt((Rmpul+j*w.*Lmpul)./(Gmpul+j*w.*Cmpul));
gammamaxwell=sqrt((Rpul+j*w.*Lpul).*(Gpul+j*w.*Cpul));
Z0DDmaxwell=2*(Z011maxwell-Z012maxwell);
Z0CCmaxwell=(1/2)*(Z011maxwell+Z012maxwell);
%Zmodel0DD11=sqrt(ZLM11(:,1)./(YLM11(:,1)));
%Z0DD11=sqrt(Z(:,1)./(Y(:,1)));
40
Chapter A Matlab Code
%%%%%%%%%%%%%%%%
% Plot results %
%%%%%%%%%%%%%%%%
fig=1;
if (P1orP2==1 || P1orP2==2)
figure(fig);fig=fig+1;
plot(1e-9*frequency,real(-1./y21));hold on
plot(1e-9*freq1,Rsim,’g-o’);
%axis([0 10 3 6])
plot(1e-9*frequency,length*1e-6*Rpul,’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
ylabel(’Resistance (\Omega)’)
title([’R vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long M’
,num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
boldify
figure(fig);fig=fig+1;
plot(1e-9*frequency,1e9*imag(-1./y21)./w);hold on
plot(1e-9*freq1,1e9*Lsim,’g-o’);
%axis([0 10 1.15 1.45])
plot(1e-9*frequency,1e9*length*1e-6*Lpul,’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
41
ylabel(’Inductance (nH)’)
title([’L vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long M’
,num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
boldify
figure(fig);fig=fig+1;
plot(1e-9*frequency,2e12.*((imag(y11)+imag(y21))./w));hold on
plot(1e-9*freq1,1e12*Csim,’g-o’);
%axis([0 10 .0 .5])
plot(1e-9*frequency,1e12*length*1e-6*(Cpul),’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
ylabel(’Capacitance (pF)’)
title([’C vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long M’
,num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
boldify
figure(fig);fig=fig+1;
plot(1e-9*frequency,2*(real(y11)+real(y21)));hold on
plot(1e-9*freq1,Gsim,’g-o’);
%axis([0 10 0 1e-3])
plot(1e-9*frequency,length*1e-6*Gpul,’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
ylabel(’Conductance (S)’)
title([’G vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long M’ ,
42
Chapter A Matlab Code
num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
boldify
end
%
figure(fig);fig=fig+1;
%
plot(1e-9*frequency,2e12.*imag(1./Zsh)./w);hold on
%
plot(1e-9*frequency,1e12*length*1e-6*(Cpul-Cmpul),’g-o’);hold off; grid on
%
legend(’Model’,’Q2D’);
%
xlabel(’Frequency (GHz)’)
%
ylabel(’Capacitance (pF)’)
%
boldify
if (P1orP2==3)
figure(fig);fig=fig+1;
%plot(1e-9*frequency,1e12*CM*2*ones(size(frequency,1),1));hold on
plot(1e-9*frequency,1e12*imag(-YCM21)./(2*pi*frequency));hold on
plot(1e-9*freq1,1e12*Cmsim,’g-o’);
axis([0 10 0 .2])
plot(1e-9*frequency,1e12*length*1e-6*(Cmpul),’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
ylabel(’Capacitance (pF)’)
title([’Mutual C vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long
M’ ,num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
43
boldify
end
if (P1orP2==4)
figure(fig);fig=fig+1;
%plot(1e-9*frequency,1e9*Lm*ones(size(frequency,1),1));hold on
plot(1e-9*frequency,1e9*imag(ZLM21)./(2*pi*frequency));hold on
plot(1e-9*freq1,1e9*Lmsim,’g-o’);
axis([0 10 0.8 1.4])
plot(1e-9*frequency,1e9*length*1e-6*Lmpul,’r--’);hold off;grid on
legend(’Model’,’SPECTRE’,’Q2D’);
xlabel(’Frequency (GHz)’)
ylabel(’Inductance (nH)’)
title([’Mutual L vs. f for two ’,num2str(width),’\mum wide by 1000 \mum long M
,num2str(layer), ’ lines with a ’ ,num2str(seperation), ’\mum seperation’])
boldify
end
if (checkspek==1)
close all;
Lsim(1)
end
44
Chapter A Matlab Code