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