ALTERNATE IN-SITU ENVIRONMENTAL TESTING SYSTEM BY MATRIX DESIGN Except where reference is made to the work of others, the work described in this thesis is my own or was done in collaboration with my advisory committee. This thesis does not include proprietary or classified information. Jingyun Li Certificate of Approval: John L. Evans, Chair Associate Professor Industrial and Systems Engineering Pradeep Lall Thomas Walter Professor Mechanical Engineering George T. Flowers Dean Graduate School Robert Neal Dean Jr. Assistant Professor Electrical and Computer Engineering ALTERNATE IN-SITU ENVIRONMENTAL TESTING SYSTEM BY MATRIX DESIGN Jingyun Li A Thesis Submitted to the Graduate Faculty of Auburn University in the Partial fulfillment of the Requirements for the Degree of Masters of Science Auburn, Alabama May 9, 2009 ALTERNATE IN-SITU ENVIRONMENTAL TESTING SYSTEM BY MATRIX DESIGN Jingyun Li Permission is granted to Auburn University to make copies of this thesis at its discretion, upon request of individuals or institutions and at their expense. The author reserves all publications rights. Signature of Author Date of Graduation iii iv VITA Jingyun Li, daughter of Yuzhen Tu and Zhiqiang Li, was born on June 27th, 1985, in Nanchang, Jiangxi Province, P.R. China. She graduated high school from Nanchang Foreign Language School in July 2002. After that, she joined Huazhong University of Science and Technology located in Wuhan and then graduated with a Bachelor of Engineering degree in Control Science and Engineering during the summer of 2006. In August of the same year, she entered the Industrial and System Engineering Department of Auburn University as a research assistant for graduate study. v THESIS ABSTRACT ALTERNATE IN-SITU ENVIRONMENTAL TESTING SYSTEM BY MATRIX DESIGN Jingyun Li Master of Science, May 9, 2009 (B.S., Huazhong University of Science and Technology, 2006) 112 Typed Pages Directed by John L. Evans Compared with the existing in-situ environmental testing system, this alternative one got significant improvement on measuring capacity, total cost, as well as number of connections that must be made between the hardware configuration and devices in chamber. This research adopted an innovative matrix-designed hardware configuration by involving multiplexers to realize the transition from channel to channel and successive measurement. By this method, not only the measuring capacity has been increased to 2048, but also the cost has been cut down substantially. In the original system, every switching box with the capacity to monitor 400 channels costs $15,000, while the cost of the hardware in this new system to provide 2048 channels is no more than $300. Furthermore, only 96 wires will pass through the access port on chamber wall to make vi connections with the hardware design. The measurement software developed in Labview is also modified to cater for the new hardware configuration, thus new measuring mechanism. vii ACKNOWLEDGEMENTS The author would like to express sincere thanks and gratitude to Dr. John Evans, Dr. Pradeep Lall, and Dr. Robert Dean, for their guidance during her research. The author would also like to thank Dr. Fei Xie for his support and help for this research. The author would also like to thank her mother Yuzhen Tu, father Zhiqiang Li, and husband Fan Wang for their love and unconditional support. Thanks also to her baby, Lucas Wang, for the great joy he brings to the whole family. viii Style manual or journal used: Journal of Surface Mount Technology Computer Software used: Microsoft Word, Microsoft Excel, Microsoft Picture Manager, WinSMITH Weibull ix TABLE OF CONTENTS LIST OF TABLES???????????????????????????.xii LIST OF FIGURES?????????????????????????..?xiii CHAPTER 1: INTRODUCTION??????????????????????1 CHAPTER 2: LITERATURE REVIEW???????????????.???...12 2.1 Automotive Electronics and Harsh Environment????????????..12 2.2 Lead-free Solder Joint??????????????????????...16 2.3 Underfill????????????????????????????18 2.4 Measurement System???????????????????????20 CHAPTER 3: PREVIOUS MEASUREMENT SYSTEM????????????.23 3.1 Hardware Configuration??????????????????????24 3.1.1 Multimeter????????????????????????...25 3.1.2 Measurement Capacity????????????????????25 3.1.3 Connecting Cables?????????????????????...28 3.2 Software Development??????????????????????..30 3.3 Shortages of the Previous Measurement System????????????...31 CHAPTER 4: HARDWARE CONFIGURATION OF NEW SYSTEM?????. ?..33 4.1 Requirement of the New System??????????????????...33 4.2 Previous Configuration??????????????????????.35 4.3 The Concept of Matrix Design???????????????????..36 x 4.3.1 Previously Proposed Matrix Approach??????????????36 4.3.2 New Matrix Connection Design????????????????..38 4.4 Circuit Design and Components Selection???????????????45 4.4.1 Interface between Computer and Matrix Connection????????..45 4.4.2 Components Selection????????????????????.46 4.4.2.1 74LS244???????????????????????46 4.4.2.2 74LS245???????????????????????48 4.4.2.3 74LS373???????????????????????48 4.4.2.4 Digital I/Os (USB-6501)????????????????...49 4.4.3 Execution Process of the Circuit????????????????..50 4.5 Structure of the New System????????????????????.51 4.6 Build Circuit on Breadboard????????????????????..52 4.7 Circuit Testing?????????????????????????...56 CHAPTER 5: SOFTWARE MODIFICATION????????????????.61 5.1 Program Execution of the Previous Measurement System?????????61 5.2 Modifications to Previous Measurement System Software????????...62 5.3 Front Panel Setting Up??????????????????????...67 5.4 Example of Application??????????????????????.68 CHAPTER 6: PCB LAYOUT???????????????????????70 CHAPTER 7: BENEFITS????????????????????????..76 7.1 Increased Measurement Capacity??????????????????..76 7.1.1 Capacity of Previous Measurement System????????????76 7.1.2 Capacity of Current Research?????????..................................79 xi 7.2 Reduced Cost of Hardware Configuration???????????????.80 7.3 Wires Passing through the Access Port????????????????..81 CHAPTER 8: FUTURE WORK??????????????????????83 REFERENCES????????????????????????????..86 APPENDIX A: CONFIGURATION FILES ?.????????????????89 A.1 Markstart.txt???????????????????????.............89 A.2 Rlogset.txt???????????????????????????91 A.3 RTD.txt????????????????????????????.92 A.4 Name Files???????????????????????????93 A.5 Failure Value Files????????????????????????94 APPENDIX B: DATA FILES?????????????........................................95 B.1 Count Files???????????????????????????95 B.2 Failure Status Files????????????????????????96 B.3 Data Files???????????????????????????..96 B.4 Log Files???????????????????????????...96 xii LIST OF TABLES Table 1 ? Thermal Cycling Regimes????????????????????..18 Table 2 ? Resistance Readings Before and After the System is Applied???????57 Table 3 ? Resistance Readings Before and After All Channels are Connected????.60 Table 4 ? Cost of the New Matrix Hardware Configuration???????????...80 Table 5 ? Number of Wires Passing Through Access Port for Different Connection Methods???????????????????????????...81 xiii LIST OF FIGURES Figure 1 ?Solder Ball Crack???????????.....................................................4 Figure 2 ? Weilbull Plot of In-Situ vs. Periodic Measurement with Small Data Set???.6 Figure 3 ?Weilbull Plot of In-Situ vs. Periodic Measurement with Large Data Set???..7 Figure 4 ? Schematic of Previous Measurement System?????????????..9 Figure 5 ? Overmolding Test Vehicle????????????????????10 Figure 6 ? Layout of the Overmolding Test PCB???????????????...10 Figure 7 ? Fields of Application and Their Requirements on Electronic Devices???..14 Figure 8 ? Typical Automotive Under-hood Temperature????????????.15 Figure 9 ? Weibull Plot for 2512 Chip Resistors with Lead-free Solders??????...17 Figure 10 ? Possible Crack Propagation Routs??????????????...........18 Figure 11 ? Factors Affecting Flip Chip Reliability?????????????.......20 Figure 12 ? Test System Architecture????????????????................21 Figure 13 ? Previous Measurement System??????...............................................24 Figure 14 ? Switching Box Filled with Multiplexer Cards???????.....................26 Figure 15 ? Multiplexer Cards with Ribbon Cables??????????????...27 Figure 16 ? Multiplexer Cards with Connector Soldering Lugs??????????.27 Figure 17 ? Wires Crimped and Placed in Connector??????????????.28 Figure 18 ? Previous Measurement System Hardware Wiring??????????...29 xiv Figure 19 ? Wires Passing Through the Access Hole??????????????.35 Figure 20 ? Common Configuration Diagram?????????????????36 Figure 21 ? Diagram of Matrix Approach??????????????????..37 Figure 22 ? Circuit Diagram Equivalent to Matrix Approach???????????38 Figure 23 ? New Matrix Connection Method?????????????????.39 Figure 24 ? Functional Block Diagram of ADG706??????????????...41 Figure 25 ? Final Schematic of the Matrix Design???????????????.42 Figure 26 ? ADG706 Truth Table?????????????????????..44 Figure 27 ? Interface between Computer and the Matrix Connection????????45 Figure 28 ? 74LS244 Pin Configuration???????????????????.47 Figure 29 ? 74LS244 Function Table????????????????????.47 Figure 30 ? 74LS245 Function Table????????????????????.48 Figure 31 ? 74LS373 Function Table????????????????????.49 Figure 32 ? USB-6501 Features??????????????????????.50 Figure 33 ? Structure of the New System??????????????????...52 Figure 34 ? ADG706 Pin Configuration???????????????????.53 Figure 35 ? 74LS245 Pin Configuration???????????????????.53 Figure 36 ? 74LS373 Pin Configuration???????????????????.54 Figure 37 ? Complete Circuit Built on Breadboard???????????????55 Figure 38 ? Prototype of the New Measurement System?????????????56 Figure 39 ? Circuit of Device when all Resistances are considered????????..58 Figure 40 ? Example of Testing Result???????????????????.59 Figure 41 ? Acquire Address of Multimeter?????????????????...63 xv Figure 42 ? Acquire Address of Digital I/Os?????????????????..63 Figure 43 ? Flow Chart of the Program???????????????????..66 Figure 44 ? User Interface of the New Program????????????????.67 Figure 45 ? The Front Panel Setting Up???????????????????.68 Figure 46 ? Measurement Results of the Example Application??????????..69 Figure 47 ? First Layer of the PCB Layout??????????????????.71 Figure 48 ? Second Layer of the PCB Layout?????????????????72 Figure 49 ? Third Layer of the PCB Layout?????????????????...72 Figure 50 ? Fourth Layer of the PCB Layout?????????????????..73 Figure 51 ? Top Overlay of the PCB Layout?????????????????..73 Figure 52 ? Bottom Overlay of the PCB Layout????????????????.74 Figure 53 ? Keepout Layer of the PCB Layout????????????????...74 Figure 54 ? Final PCB Layout???????????????????????75 Figure 55 ? DaimlerChrysler?s 1-Pole Configuration??????????????78 Figure 56 ? Alternate 1-Pole Configuration?????????????????...79 1 CHAPTER 1: INTRODUCTION As technology ever advanced, electronic components and products are seen everywhere. They present themselves in devices small as your ipod nano or your cell phone and big as your car or the heavy manufacturing machines. The rapid development of this industry brings out opportunities as well as challenges. To hold existing customers and earn morn potential ones, those companies have to meet their customers? requirements and expectations. Smaller sizes, lighter weights, lower prices, more advanced features are always the directions they make effort to work towards; however, reliability issues are now becoming concerns too, especially when the electronic parts need to work in very harsh environments. Take automotive for instance, thanks to reliability issues, some electronic designs are located within the passenger?s compartment come along with long and often bulky wires and connectors. Because of the weight and wires in large volume, powertrain electronics are usually put under-the-hood near or on the engine, transmission, transfer case, and other locations where are conditioned as harsh environments due to high heat, humidity, liquid leakage, vibration, etc.. Moreover, many of the places where these devices are located have very limited air flow for convection, in this situation, reliability problems are surfaced and solutions are urgently required. Usually, the providers are trying to find way out from PC board and controller module designs, for example, by using conduction to maximize heat transfer, or take advantage 2 Of new technologies, novel materials, and various interconnect methods. However, design is mainly based on theories, and before these proposed implementations of new technologies can be put into production, they must be subjected to rigorous testing and finally survive according to the reliability standards, often in harsh environment chambers. A capable and dependable measurement system is a necessity to qualify the reliability of new implementations for formal utilization. Currently, accelerated life test (ALT) is an empirical method used across industry to qualify new technologies and products. Populated PC boards and whole electronic systems will be placed into an environment chamber which operates at cyclic increasing and decreasing temperature and may combine other stress mechanisms such as humidity, mechanical vibration, or ionizing radiation to simulate or exceed worst case application conditions. Throughout the duration of the test, the condition of all subjected test devices are monitored and evaluated to get the failure rate, so the estimated lifespan of the device in standard usage can be determined. If the devices are staying in the chamber all through the test, even the monitor and evaluation are conducted without taking them out of the chamber, this can be called in-situ testing. Typically, accelerated life test is performed on sampled products, and the size of the sample is determined by many factors including the size of the original population, the number of available samples, cost, time, capacity of the testing equipment, and so on. For example, some testing project involves hundreds of PC boards or electronic devices, and each of them may have more than ten individual components subjected to the test, so totally there can be as many as thousands of parts to be measured. In this situation, manual testing requires great labor and may generate inaccurate measurements, as this great number of components must be evaluated 3 frequently all through the testing period. Therefore, a dependable continuous automated measurement system is highly desired. Surface-mount technology is widely used across the current electronics manufacturing industry. Taking the place of through-hole technology, surface mounted components are mounted directly onto the surface of PC boards, so condition of the solder joint between components and the PC boards is the main reliability concern of surface-mount devices. Due to the mismatch between the coefficients of thermal expansion (CTE) attributed to the components and the PC boards, solder joints, acting as both mechanical and electrical connections, will suffer from the mechanical stress caused by expansion and contraction of both parts. After being exposed to this condition for a long time, the solder joints will finally get fatigue and crack, sometimes even break off, then the component fails. The crack of the solder joint will make its resistance increase, since the contact area gets smaller. And when the degree of crack increases, resistance of the solder joint becomes even higher. So normally during the test, resistance values are monitored to judge if the components get failed. Figure 1 shows a solder ball crack. Crack Figure 1 ? Solder Ball Crack Due to the high cost and cumbersome setup, some companies in electronic packaging industry do not perform in-situ testing; instead, they put the devices in environmental chambers and take them out periodically for measurement. Although a bias voltage can be applied on those components, the measurement is not taken during their exposure to harsh environment, which violates the original intention of testing [1]. In this way, since these components are not continuously monitored, their failures may not be found as soon as they present. A failure can not be detected until the time when periodic measurement takes place. For example, if the sample rate of a periodical measurement is every 500 cycles, all the failures can only be detected during 500 th cycle, 1000 th cycle, 1500 th cycle and so on; even actually some failures may happen during the 4 5 1145 th cycle, 1379 th cycle, etc.., they all will be presented on the weibull plot as they happened on 1500 th cycle, because the measurement is conducted at this point, therefore, the real information is lost. Figure 3 gives a clear illumination for this description. Comparison of in situation testing and periodic measurement in Weibull plots are shown in Figure 2 [1] and Figure 3. The coefficient of determination r^2 is a measure of goodness of fit, higher value of this parameter indicates better fit. From this stand of point, the comparison shows in-situ continuous measurement yields better fit than periodic measurement in both small and large data set. Moreover, these figures did prove that failure of component is discovered later in periodic measurement than in in-situ testing. Another concern is that some failures happened in high temperature may recover and wouldn?t present themselves when devices are taken out of the chamber and put in room temperature, thus these failures could not be detected. In addition, taking devices in and out of chamber frequently may cause damage to them. Therefore, in some circumstances when cost and labor are not concerns, in situation testing is performed to get more accurate results for qualification and reliability study. Figure 2 ? Weibull Plot of In-Situ vs. Periodic Measurements with Small Data Set [1] 6 Figure 3 ? Weibull Plot of In-Situ vs. Periodic Measurements with Large Data Set Center for Advanced Vehicle Electronics (CAVE) of Auburn University has been conducting this kind of in-situ testing for many years, and development work related to the automated measurement system never terminates. Previous system adopts scan mechanism by using Keithley 7002 switching boxes with ten 7011 multiplexer cards in each of them, so the capacity of one box is 400 2-pole channels (every multiplexer card has 40 2-pole channels). This system can be used for 2-wire resistance measurement. As for the software part, program is written in Labview from National Instrument to control the hardware. The schematic of previous measurement system is shown in Figure 4 [1]. As it shows, the communication between software and hardware part is realized by IEEE 488 bus (GPIB), which allows as many as 15 devices to share a single 8-bit parallel 7 8 electrical bus by daisy chaining connections [2]. Here, the fact that we don?t perform continuous monitoring but continuous sampling deserves to be paid attention, and sample rate is a concern. For example, there are 1000 subjected devices need to be tested, the system begins from the first device and takes measurements sequentially until the 1000 th channel is scanned, if the system is not stopped, this process cycles back from the first channel. Suppose it takes T seconds to take measurements from 1 st device to 1000 th device, then the sample rate should be 1/T. Normally a thermal cycle profile has low dwell, ramp and high dwell with the same dwell time for both low and high, say 15 minutes. To better evaluate the devices, it is desired that every device would be measured more than once during the dwell, and this puts in a requirement for sample rate. As described, the sample rate is determined by cycle time, which depends on the number of devices, measuring speed and transition speed from channel to channel. Furthermore, the measuring speed and transition speed are limited by capability of the hardware, and this gives some guidance in later hardware selection. Environmental Simulation Chamber IEEE-488 (GPIB) Trigger Link Output Positive Output Negative Wiring into Chamber Figure 4 ? Schematic of Previous Measurement System [1] Some overmolding projects were tested with the measurement system; Figure 5 [3] shows the test vehicles. There is one through-hole wiring connection in the center of the board and another locates along the side, both of which protrude traces to connect all components. Only surface-mount components are applied onto each board; 2512 ceramic resistors and 7mm CSPs are involved for testing. To make sure the molding material does not crack small traces or vias, two other components were also monitored; one is a four 9 millimeter copper trace which runs around the perimeter of the PC board on the top layer of the substrate, and the other is a through-hole 0.25mm diameter via daisy chain which runs along the side of the perimeter of the PC board [3]. Layout of the tested PCB is shown in Figure 6 [3]. Figure 5 ? Overmolding Test Vehicle [3] Figure 6 ? Layout of the Overmolding Test PCB [3] 10 11 This research was performed to achieve the improvement of cost, capacity, and feasibility of substantial wiring connection. Cost will be reduced by using multiplexer chips instead of expensive switching boxes; the measuring capability will be increased to 2048 channels by the matrix schematic design; there will be only 96 wires getting through the hole on the wall of the chamber, so airtight can be greatly guaranteed. 12 CHAPTER 2: LITERATURE REVIEW Compared with periodic measurement, in-situ testing detects failures of devices in an on-time manner and generates data with better goodness of fit as shown in previous chapter. However, although it has such advantages, only a few companies conduct in-situ testing [1]; due to this fact, not many publications can be found on the subject. Besides, the matrix design performed in this thesis is a newly developed concept, with little publications available. Nevertheless, there are many publications with regards to automotive electronics, reliability issues in harsh environment, lead-free solder joint, board-level component, automated measurement system applied on PCB components, etc. This chapter summarizes a general review of literature related to topics mentioned above. 2.1 Automotive Electronics and Harsh Environment In the 1970s, customers? demand for better radio receivers gave rise to the application of electronics in automobile, and this technological impetus served as a prelude to the huge automotive electronics expansion in the 1980s, nearly tripling the electronics content in U.S. vehicles [4]. In later decades, this industry continuously presented energetic growth, and now steps into a maturing phase. It is predicted that the percentage of electronics in automobiles will value up to 35 in next few years [5]. Auzins 13 et al. summarized the rapid evolution of automotive electronics. The author describes not only the technology turning points impelling automotive electronics? development, but also how social influences, law mandate and other elements result in the booming of this business. For example, environment issues and requirement for fuel economy are two important driving factors. The U.S. Clean Air Act requiring tight emissions and a continuous improvement in the miles per gallon rating by the U.S. CAF? (Corporate Average Fuel economy) drove innovation in electronic engine controls, which led to the automotive electronics expansion in 1980s. To reduce cost and improve product functional performance, the idea of integrating electronic system came into sight. As a result, microcomputers and high density circuit boars were employed, and this involvement put forth new requirement for devices? dimensions and reliability. Combined with temperature, vibration, shock and the presence of substances such as oil and exhaust emissions, the impacts on automotive electronic devices may be even more aggressive in the future. Figure 7 [5] shows electronic devices applied in different part and their corresponding requirements. Figure 7 - Fields of Application and Their Requirements on Electronic Devices [5] As the competition in automobile industry gets more and more fierce, some manufacturers are offering extended warranties to customers for 100,000 miles/10 years or even more to keep them still stay in the game. In this circumstance, excellent reliability and durability are highly desired. Michael Ohadi et al. [6] and T. Braun et al. [7] conducted research to look into the electronics performing in harsh environment. Comparing with consumer electronics? operating temperature from 0 to +70 , and industry electronics?-40 to +85 , electronics in vehicles operate in more severe conditions, especially those located under the hood. Under-the-hood temperatures in a car can be as low as -40 in some area of the world such as Alaska and above 200 in other 14 areas of the world such as Death Valley in the United States [6]. Typical automotive under-hood temperatures are shown in Figure 8 [6]. Figure 8 - Typical Automotive Under-hood Temperature [6] In the paper, Michael discussed several thermal management techniques which are involved in the design of harsh environment electronics to meet the market demand for smaller, lighter, lower cost, faster and more reliable products. The author indicated that currently the most used thermal issue solutions in automotive application are a combination of passive cooling such as conduction and active air/liquid cooling. As for conduction, many scholars put a lot of work into substrate materials, adhesives, pads, solder pastes, underfill and so on. Research found that at high temperatures the intermetallic phase formation of lead-free solders may be the reason of decreased reliability, where polymeric materials as substrate and encapsulant do potentially show mismatched thermo-mechanical properties or material degradation and consequently reliability is reduced. Braun examined the combination of two different underfill 15 16 materials and two different substrate finishes for the comparison of their reliability testing results. To further analyze the failures, intermetallic phase information was studied through shear testing and cross sectioning after thermal cycles. 2.2 Lead-free Solder Joint Lead is a harmful component in solders and as environmental concerns increase, many countries have taken steps against the use of lead; some even have passed or are going to pass laws to ban its use in electronics [8]. Many researches are done in order to find proper replacement of traditional tin-lead solders. Reliability of solder joints is a big issue in application, and as some reliability problems are caused by cycle temperature changes, many scholars have conducted studies and analysis in related aspects. Dr. Suhling et al. [9] studied the solder joints? reliability of different lead-free alloys under thermal cycling. The test results suggest possible substitute for standard 63Sn-37Pb alloy from the reliability standpoint. Although five different sizes of chip resistors are used in the test, only 2512 resistor solder joint?s reliability was discussed. This is because 2512 has the largest body size and highest rated power dissipation, thus poorest solder joint reliability. They used two thermal cycling profiles, -40-125 and -40-150 on test vehicles to investigate four lead-free alloys and standard 63Sn-37Pb, and then compare their performances. From -40 to 125 , SAC alloy has the similar reliability to that of standard 63Sn-37Pb; however, 63Sn-37Pb dramatically outperformed SAC alloy during the -40-150 testing. When small percentage of bismuth or indium is added to the SAC alloy, its reliability is significantly improved when subjected to -40-150 testing, as seen in Figure 9 [9]. Among them, SAC with indium addition gave the best performance. Figure 9 ? Weibull Plot for 2512 Chip Resistors with Lead-free Solders [9] Zhong et al. [10] pointed out that thermomechanical fatigue is a major cause of failure in electronic devices and solder joint reliability depends on temperature extremes, dwell times and the ramp rates; therefore, some researchers examined the impact of thermal cycling profiles on lead-free solder joints. Dusek et al. [11] involved six different thermal cycling regimes (as shown in table 1) in the study. Cycle B and cycle D both are common test regimes used in automotive industry, while the ramp rate of D represents a thermal shock. Cycle F is another example of thermal shock. Testing results indicate the worst damage was caused by cycle A. Moreover, from the comparisons between each regime?s testing results, Dusek et al. found it is the ramps rate but not the dwells that cause the damage in lead-free solder joints, and a slow ramp causes more damage than a 17 longer dwell time. The comparison also shows dwelling at high temperature causes more damage than dwelling at low temperature. Although thermal shock testing gives results about six times faster than thermal cycling condition, there is no big difference between the crack propagation modes caused by them. Their possible crack propagation routes are show in Figure 10 [11]. Cycle Low dwell (degree celsius) High dwell (degree celsius) Ramp (degree celsius/min) Dwell (min) Period (min) A -55 125 10 5 45 B -55 125 18 10 40 C -20 125 10 5 40 D -12 125 65 5 11 E -20 80 10 5 30 F -55 125 55 0 6.6 Table 1 ? Thermal Cycling Regimes [11] Figure 10 - Possible Crack Propagation Routes [11] 2.3 Underfill In Figure 11 [12], the factors exerting an influence on flip-chip joint reliability are presented in the cause and effect diagram. Among these branches, underfill has the 18 19 maximal number of sub-factors, making it a key issue. To overcome the mismatch between CTE of the chip and typical PCB substrates, underfill material is introduced into the gap between them. Actually, other than low CTE, with an underfill providing high T g and high Young?s modulus, the solder joint lifetime can be increased by one to two orders of magnitude [13]. Therefore, the underfill material?s properties are very important to reliability issues. The underfill technology functions not only in mechanically coupling the chip and substrate but also in redistributing the stresses in the solder joints. Moreover, underfill also changes the stress distribution within the whole assembly, thus introducing other failure modes such as delamination, die cracking, underfill cracking and so on [14]. Cheng et al. [14] also examined the distribution of solder joints crack, concluding that the solder joints under which glass fibers exist in close proximity have no cracks, while those with a greater distance to the glass fibers are cracked. This conclusion indicates that, after underfill is applied, it may not be proper to model the PCB as a homogeneous material any more. In another paper, Cheng et al. [13] examined five different underfill materials and discussed the failure mode, delamination. This work did prove that by using underfill materials, the solder joint lifetime is significantly prolonged. The author also suggested that stress induced crack initiation and propagation is the dominant failure mechanism, rather than delamination, but delamination still shows a clear influence on the solder joint reliability. Some solder joint cracks were noted to be accompanied by delamination at the underfill/chip passivation interface and fractures within the underfill material [15]. However, it is not a must that underfill delamination leads to crack, since some research indicates that crack initiation may happen prior to underfill delamination [16]. RELIABILITY OF THE FLIP CHIP SOLDERING TOOLING ACCURACY PLACEMENT VACUUM UBM VIBRATIONS Uniformity BUMPING BUMP HEIGHT ORIENTATION PAD GEOMETRY ATTACHMENT CONVEYOR SPEED SUBSTRATE Adhesion WARPAGE GAS inert PREHEA T Time TEMP PROFILE Max temp THICKNESS SOLDER MASK layout PAD GEOMETRY MOISTURE ARTWORK FLUX Tacky Young?s Modulus TCE UNDERFILL Viscosity SUBSTRATE MATERIALS no-clean Temperature REFLOW Figure 11 - Factors Affecting Flip Chip Reliability [12] TRANSPORTATION COMPONENTS PICK & PLACE 2.4 Measurement System To realize in-situ testing, a reliable automated measurement system is crucial. However, as mentioned before, in-situ testing is not widely used in industry, so there is deficient knowledge to use for reference. Only some simple models can be studied. Dr. Cordery et al. [17] proposed a methodology to evaluate the electrical performance of flip-chip devices and this method involved a dedicated test structure as well as a software platform written in Labview for the measurement system. Figure 12 [17] shows the system utilizing a computer combined with GPIB enabled measurement instruments and Labview virtual instruments application. This architecture has some common ground with the proposed testing system, which will be discussed in details in later chapters. However, the paper did not introduce what kind of multiplexer they chose and what 20 switching mechanism they used. Another important part of the Labview application here was to design a file structure to store the several thousands of files comprised of experimental data. Figure 12 ? Test System Architecture [17] Dr. Cordery presented the basic idea through a simple architecture in her paper while Sin et al. [18] introduced an application using the same concept. KentRidge Instruments Pte Ltd. developed an automated system named KRI Electromigration Tester ET-100, which uses stand-alone instruments controlled by GPIB and software written in Labview to measure and log resistance values for ion migration on PCB when they are placed in an environmental or thermal shock chamber. This tester measures up to 200 channels. The capacity can be increased, but the measure rate, maximum resistance and accuracy will be reduced. The hardware part of this system includes 1 desktop PC with National Instruments GPIB-PCII/IIA interface board, 1 or 2 DC power supply, 1 high-resistance meter HP 4339B, 2 or 3 IO Tech Digital 488/80A, 1 panel with 10/20 test 21 22 connectors, and 1 or 2 100-channel relay multiplexers. This architecture is more detailed and complicated than that of Dr. Cordery?s. The PC with Labview software controls all of the instruments through National Instruments GPIB-PCII/IIA interface board, and uses the digital 488/80A units and relays to realize the switching mechanism. In the software part, the Virtual Instruments Software Architecture (VISA) was utilized to develop instrument drivers for the HP4339B, Digital 488/80A, and relay multiplexer. 23 CHAPTER 3: PREVIOUS MEASUREMENT SYSTEM The original measurement system involved a computer connected to a multimeter and two switching boxes filled with multiplexer cards. The multimeter used was Keithley 2001, and the switching boxes were Keithley 7002. The software was developed in Labview 3. The capability of this system is limited, for example, it can only make two-wire measurements. In 2002, the measurement system was updated by Mark, who made some software modifications to the previous version. Figure 13 shows the previous measurement system. Figure 13 - Previous Measurement System 3.1: Hardware Configuration There is subtle difference lying in hardware configurations of the original measurement system and the updated one. Both of them are consisted of a computer, a multimeter and several switching systems. They shared the same idea of structure. Mark made some effort on the latter version to reduce cost and increase the system?s capacity. These changes will be discussed herein. 24 25 3.1.1: Multimeter At the beginning, only Keithley 2001 was used, and then Mark made some modifications to the software letting the system compatible with both Keithley 2001, and Keithley 2000. The incentive for this change was based on economical consideration: Keithley 2001 is rather expensive, with a price of nearly $3000, while Keithley 2000 is less than $1000. This modification brought a significant cost saving. The model 2001 has more precision than that of 2000, but most measurements do not require that much, so Keithley 2000 is competent for them. 3.1.2 Measurement Capacity To increase the measurement system?s capacity, Mark used four switching boxes instead of two in the new version. The switching boxes they used are Keithley 7002, which can be filled with as many as ten 7011 multiplexer cards, and each card has 40 two-pole channels. So if two-wire measurements are conducted, the capacity is increased from original 800 (40*10*2) to 1600 (40*10*4). However, this improvement is not gratuitous: each switching box cost about $15,000, introducing a large expenditure. Usually, two channels were given for temperature sensors, but sometimes when resistance measurements required full use of channels, Keithley 2000-SCAN would be employed to handle temperature sensors [1]. Figure 14 [19] shows the switching box full filled with multiplexer cards. Figure 14 - Switching Box Filled with Multiplexer Cards [19] There are three ways to get wires out of the multiplexer cards and connect to devices. One is using ribbon cables, the second is by soldering on the connector, and the last is through crimped wires and placed in the connector [19]. Following figures [19] show the details. 26 Figure 15 - Multiplexer Cards with Ribbon Cables [19] Figure 16 - Multiplexer Cards with Connector Soldering Lugs [19] 27 Figure 17 - Wires Crimped and Placed in Connector [19] 3.1.3 Connecting Cables In the system, computer, multimeter, and switching boxes are connected by stackable IEEE 488 (GPIB) cables. One GPIB cable connects the computer to the switching box, and another links the switching box to the multimeter. Also trigger-link cables are involved to realize the connection between switching box and the multimeter. The other ends of the red (output positive) and black (output negative) wires connecting to the multimeter link respectively to the high and low outputs of one bank in one multiplexer card in the box. Figure 18 [19] gives more details. 28 Figure 18 - Previous Measurement System Hardware Wiring [19] 29 GPIB devices such as the multimeter and switching boxes have specific addresses to be distinguished from each other. And these addresses can be detected automatically by the software, which cuts the setup time. After these devices? addresses are detected, their model numbers will be identified through the responses sent by them. When 2000 or 2001 is detected, the address will be set for multimeter, and if 7002 is detected, it will be added to the switching system list waiting for scanning. Usually, the address of multimeter is 14 and that of the first switchbox is 7. 30 3.2 Software Development The two versions of measurement system have the very similar hardware configurations; however, Mark put a lot of work into the software modification. He re-wrote much of the original software and developed many new sub-VIs to improve the whole system?s dependability and versatility. Mark did these in Labview 6, and compiled all sub-VIs into a single library file. To improve the software?s readability and make it more compact, the sequence loop structure was replaced by ?for? loops. Originally, there were twenty sequence frames in total to realize continuous scanning on each multiplexer card (two switching boxes with ten multiplexer cards in each of them), then two ?for? loops took their places, one was for switching boxes? cycling and the other was for multiplexer cards? cycling. As for dependability, Mark added some new functions such as error recovery and error reporting. The software has a specific mechanism to examine if the measurement is running properly, once some operation abnormities are detected, it will stop and restart the measurement, as well as report the errors. If it is the problem of chambers or temperature sensors, for example, equipment malfunction, error recovery won?t work out ok. Labor effort must be involved to repair or replace the equipment. As for versatility, Mark added many new measurement options. Users can choose the measurement type, multimeter range, digital filter, measurement threshold, close channels first list, and card number. Now except for two-wire resistance measurement, other available functions include four-wire resistance, DC and AC current, DC and AC voltage. Multimeter range should be set to cater for the possible largest value and the accuracy requirement. Digital filter should be activated when reactive parts are measured. 31 Measurement thresholds can be changed according to the definition of devices failure. The function of close channels first list is employed to allow mix measurement of two-wire resistance and four-wire resistance. The listed channels will be closed before others are scanned. Card number editing allows devices connected on different multiplexer cards to be measured sequentially. 3.3 Shortages of the Previous Measurement System Mark made some modifications to the original system to increase its capacity, reliability and capability. More available measurement options made the updated system competent for most of the in-situ testing. However, as the technology developed, advanced requirements are proposed, for example, larger capacity is desired. Of course, more switching boxes can be added in the hardware configuration as they did before; however, every increase of four hundred channels costs $15,000, really exorbitant. Not only cost, some other problems also emerge. For summarize, shortages of the measurement system are listed in the following: 1. Too many connection wires passing through the access hole of the environmental chamber: 401 wired needed for 400 channels. For some experiment, 1600 channels will be needed for measurement, so there will be 1601 connection wires coming out through the hole, which is not feasible for airproof requirement. 2. Limited measurement capacity: 400 channels per switching box. For the experiment requiring 1600 channels, it will need 4 switching boxes. 3. Expensive hardware configuration: $15,000 per switching box. For the experiment of 1600 channels, 4 switching boxes will cost $60,000. 32 4. Complicated software programming: A lot of subprograms were employed for controlling, reading and communicating with the switching boxes, which made the LabVIEW programming complicated and execution efficiency not desirable. 33 CHAPTER 4: HARDWARE CONFIGURATION OF NEW SYSTEM The updated measurement system has been in service for about five years, handling all the testing assignments well. However, as the higher testing requirements proposed, the previous system may not be competent anymore. For example, some testing requires greater capacity, may be as many as 2,000 resistors need to be measured. To save time and complete the assignment efficiently, one-time testing is desired, which means an extra switching box must be added if no new solution is available. Adding new equipment to increase capacity is very expensive, 400 channels cost $15,000. If continued with this method, the cost will be skyrocketing when capacity requirement gets even more advanced. Therefore, a new solution is urgent. 4.1 Requirement of the New System Based on the shortages of previous measurement system mentioned before, the requirements for new system are: lower cost, greater capacity, cheaper and easier for expansion, quick transition from channel to channel, less wires passing through the access hole of the chamber. Most of these requirements have been discussed, and as for the last one, it is brought forward according to the limited size of access hole as well as to achieve better airtightness. 34 As is well known, most accelerated life tests are conducted in environmental chambers, and these chambers imitate harsh environments such as high temperature, humidity, mechanical vibration, and ionizing radiation or combined conditions. For thermal cycling testing, which includes both cold step and hot step, airtightness of the chamber is a crucial factor to ensure the desired condition is achieved. As shown in Figure 19, there is an access hole on the wall of chamber, allowing wires coming out to make connections outside the chamber. Usually something like a rolled up sponge will be stuffed in the gap to make the chamber as airtight as possible. However, if too many wires are passing through the access hole, poor airtightness would be expected. Moreover, as shown in the figure below, the size of access port is limited, could not hold too many wires. Therefore, less wires passing through the access port is highly desired. In addition, compared with thermal cycle chamber, air shock chamber has even more strict requirement upon this point. This is because tested PCBs put in thermal cycle chamber are hold still, while samples in air shock chamber are moving up and down during the test, thereby it?s not feasible to have too many wirings in air shock chamber. Figure 19 ? Wires Passing Through the Access Hole 4.2 Previous Configuration In the previous system, to minimize the number of wires through the chamber wall, a common configuration was adopted, as shown in Figure 20 [1]. In this configuration, n+1 wires come out of the port if n channels are to be measured. One end of all devices will be connected together to the common, and the other ends will connect to the switching system respectively, thus one wire for one channel. Here comes the n+1 calculation. There are two ways to implement the common, do it either during the test vehicle design phase or during the test wiring phase. Designing a common wire into the board layout will speed the wiring process, allowing devices to be placed into chambers quicker thus save setup time; while implementing the common during the wiring phase allows boards not designed for this configuration can also take advantage of the wire reduction [1]. The following figure shows only 40 resistors for explanation, with 41 wires passing through 35 the chamber wall; when the capacity requirement is up to 1,600, then 1,601 wires will come out of the access port, may be a too many for the port size. Figure 20 ? Common Configuration Diagram [1] 4.3 The Concept of Matrix Design 4.3.1 Previously Proposed Matrix Approach In the last chapter of Mark?s thesis, he mentioned a matrix approach to increase the measurement capacity, whose diagram is shown in Figure 21 [1]. This proposal was dropped due to alternate current paths in the matrix. The sensing current from the multimeter may not flow in only one direction, thus alternate current paths may appear, and other devices except for the desired one may be measured. This can be illustrated well by Figure 22 [1]. Although diodes can be added to come along with tested devices, or can be built into the tested devices, leakage current through diodes in highly parallelled circuits is a big concern. Other approaches to rule out the influence of the 36 undesired devices, such as by solving a large mathematical matrix, are considered, but given up finally, because of the low feasibility. Figure 21 ? Diagram of Matrix Approach [1] 37 Figure 22 ? Circuit Diagram Equivalent to Matrix Approach [1] 4.3.2 New Matrix Connection Design The downside of the matrix approach mentioned above is the alternate current path, which makes it difficult to measure the exactly desired device. The key point is to limit the sensing current from the multimeter flowing in one direction through the desired devices in matrix. In this research, we try to achieve this by using multiplexer chips. They perform multiplexing by selecting one of many analog or digital input signals and outputs that into a single line. So every time, only the desired device will be measured, other paths are switched off. Moreover, the method of matrix connection is changed, as shown in Figure 23. Imagine in a matrix, if some particular element is specified, its row number and column number must be identified. Based on this concept, and as Figure 23 stated, two layers of multiplexer cards are involved, one for row selection, and the other for column selection. 38 Figure 23 ? New Matrix Connection Method At first, Analog Devices Inc.?s product, ADG732 was chosen for the new system. It is a monolithic CMOS 32-channel analog multiplexer, which switches one of 32 inputs (S1-S32) to a common output, D, as determined by the 5-bit binary address lines A0, A1, A2, A3 and A4. But, ADG732 was finally dropped due to the following reason. As seen in Figure 23, 5 bits are input to C1 to select a signal line, another 5 bits are input to C4 to choose between C2 and C3; final 5 bits are input to C2/C3 to choose a channel as the output, so totally 15 bits binary address are needed. 15 is not an exponential value of 2, and this may bring some inconvenience in the segmentation and transmission of the 39 40 control codes, so ADG732 is out. The number of binary bit being an exponential value of 2 is not a must, but is highly desired. In the final design, ADG 706, also from Analog Devices Inc., is adopted. Figure 24 [20] shows its functional block diagram. ADG 706 is a low-voltage, CMOS analog multiplexer comprising of 16 single channels. It switches one of 16 inputs (S1-S16) to a common output, D, as determined by the 4-bit binary address lines A0, A1, A2, and A3. ADG706 is a low-power consumption chip, and the operating supply range is 1.8V to 5.5V, ideally for our lab?s power supply equipment. As stated in its datasheet, all channels exhibit break-before-make switching action to prevent momentary shorting when switching channels, so undesired devices will not be measured. This multiplexer is designed on an enhanced submicron process which provides low-power dissipation, less than 0.01 ?W, yet gives high switching speed, very low ON resistance, and leakage currents [20]. The switching time of this chip is 40 ns, certainly meets the system?s requirement. Its ON resistance is in the region of a few ohms, typically 2.5 ohms, and is closely matched between switches and very flat over the full signal range; these will be verified later in this chapter. Figure 24 ? Functional Block Diagram of ADG706 [20] The final schematic is shown in Figure 25. In this research, a matrix connection of the solder joint resistors is designed for the new system in order to expand its capacity, measuring as many as 2048 resistors, as well as reduce the number of connection wires passing through the access port on the wall of environmental chamber. Eight 16-to-1 analog multiplexers ADG706 are employed to implement the 32?64 matrix design, as shown in the following figure. In this matrix, each of chip C1 and C2 chooses one of the 16 channels. Then C7 selects between C1 and C2. In a word, C7, C1 and C2 can choose one from 32 channels. As the same, C8, C3, C4, C5 and C6 can choose one of the 64 channels. For the connection of resistors inside the chamber, as the figure shows, each of the upper 32 channels has a group of 64 resistors connecting with the bottom 64 channels. So there are 32?64 = 2048 solder joint resistors in total which can be connected and 41 measured in this matrix design. Furthermore, only 32+64 = 96 wirings passing through the access hole are needed to link the inside and outside of the chamber. Figure 25 ? Final Schematic of the Matrix Design One important reason of choosing 16-to-1 multiplexers to implement the 32?64 matrix is that they make it easier to select control code. The 16-bit control code, D 15 D 14 ?..D 1 D 0 , is applied on these multiplexers to control the channel selection. As shown in Figure 25, D 3 D 2 D 1 D 0 controls the 16-to-1 channel selection for each of chip C3, C4, C5 and C6. Then D 7 D 6 D 5 D 4 controls the channel selection of chip C8, which chooses one 42 43 of those 4 chips. So for the low 8-bit control codes, any code in the range of 00H-3FH (H means Hexadecimal) can choose one of these 64 channels. It is similar for the high 8-bit control codes. D 11 D 10 D 9 D 8 controls the 16-to-1 channel selection for each of chip C1 and C2. And D 15 D 14 D 13 D 12 controls the channel selection of chip C7, which selects one from C1 and C2. Therefore, any code in the range of 00H-1FH can choose one of these 32 channels. Consequently, for the 16-bit control codes, each of 0000H-1F3FH can choose one of all connections in this 32?64 matrix design. In another word, each of 000H-1F3FH can choose certain one of these 2048 solder joint resistors. Control codes corresponding to certain channels are created according to ADG706?s truth table, as shown in Figure 26 [20]. Figure 26 ? ADG706 Truth Table [20] Since the circuit would be firstly built on breadboard, double in-line package (DIP) models of ADG706 were planned to order; however, no DIP ADG706 is available, so SMT packages were ordered, along with the corresponding adapters, which are DIP. Finally, ADG706 is soldered on the adapter, and the adapter is inserted into the breadboard. 44 4.4 Circuit Design and Components Selection 4.4.1 Interface between Computer and Matrix Connection Matrix design is the hard core of this system, since it represents a new measuring mechanism by realizing the transition from channel to channel to measure the corresponding solder joint resistors in succession. However, core part is not the whole story, to consummate the measurement system, complete circuit design is required. The principle of this circuit design is not complicated. Control codes will be written as input signals, after the multiplexer chips read these codes, they will select the particular channel, and then multimeter will finish the measurement. We just need to choose some components to help execute this process. To make sure the desired channel is selected, a check up mechanism is involved. Figure 27 is the sketch of the signal flow chart, related components are included. Meanwhile, it is also can be regarded as the interface between computer and matrix connection. Detailed components selection will be discussed next. 74LS245 74LS373 74LS244 D7-D0 Write low 8 bits Read low 8 bits 74LS245 74LS373 74LS244 D15-D8 Write high 8 bits Read high 8 bits Digital I/O Figure 27 ? Interface between Computer and the Matrix Connection 45 4.4.2 Components Selection 4.4.2.1 74LS244 74LS244 is an octal buffer and line driver designed specially to improve both the performance and density of three-state memory address drivers, clock drivers, and bus-oriented receivers and transmitters [21]. According to the datasheet, ?designer can choose from selected combinations of inverting and noninverting outputs, symmetrical, active-low output-control ( ) inputs, and complementary output-control (G and ) inputs.? There are many models of 74LS244, since the circuit would be first built on breadboard for trial, double in-line package (DIP) was ordered, for future formal PCB product, SMT models will be involved. The pin configuration of 74LS244 and its function table are shown in Figure 28 [22] and Figure 29 [22], respectively. __ G __ G 46 Figure 28 ? 74LS244 Pin Configuration [22] Figure 29 ? 74LS244 Function Table [22] 47 4.4.2.2 74LS245 74LS245 is an octal bus transceiver designed for asynchronous two-way communication between data buses, whose control-function implementation minimizes external timing requirements [23]. According to the description in its datasheet, 74LS245 ?allows data transmission in two directions, either from the A bus to the B bus or from the B bus to the A bus, depending on the logic level at the direction-control (DIR) input.? The output-enable ( ) input can disable the device so that the buses are effectively isolated. The same as 74LS244, DIP model of 74LS245 was selected to build trial circuit on breadboard. 74LS245?s function table is shown in Figure 30 [23]. ____ OE Figure 30 ? 74LS245 Function Table [23] 4.4.2.3 74LS373 74LS373 is used to implement buffer registers in this research. This 8-bit registers feature three-state outputs designed specially for driving highly-capacitive or relatively low-impedance loads [24]. Also as stated in the datasheet, ?the high-impedance third state and increased high-logic-level drive provide the register with the capability of being connected directly to and driving the bus lines in a bus-organized system without need for interface or pull-up components?. As 74LS373?s function table shows in Figure 31 [24], 48 the eight latches of it are transparent D-type latches, thus when the enable (C) is high the Q outputs will follow the data (D) inputs; while if the enable is set to low, the output will be latched at the level of the data that was set up. A buffered output control input can be used to set the eight outputs in either a normal logic state (high or low logic level) or a high-impedance state. While in the high-impedance state, the outputs neither load nor drive the bus lines significantly. Moreover, the output control does not affect the internal operation of the latches, which means the old data can be retained or new data can be entered even when the outputs are off. Figure 31 ? 74LS373 Function Table [24] 4.4.2.4 Digital I/Os (USB-6501) USB-6501 is a portable, low cost digital I/O device, which provides reliable data acquisition and control with plug-and-play USB connectivity for easy application. It is a full-speed USB (12 Mb/s) device with 24 digital I/O lines and one 32-bit counter. The 24 digital lines are arranged in three ports: P0.<0...7>, P1.<0..7>, and P2.<0..7>. P2.7 can function as a 32-bit counter. USB-6501?s features are summarized in Figure 32 [25]. All USB-6501 DIO lines can be programmed as a DI or DO line individually, and the DIO lines can be used to monitor or control digital signals. All samples of the DI lines and 49 updates of the DO lines are software-timed. This device is safe to use, since each DIO signal is protected against overvoltage, undervoltage, and overcurrent conditions, as well as ESD (electrostatic discharge) events; moreover, at system startup and reset, the hardware sets all DIO lines to high-impedance inputs [25]. Conveniently, the USB-6501 has built-in screw terminals for connectivity, so no additional accessories are required. Figure 32 ? USB-6501 Features [25] To use USB-6501, NI-DAQmx measurement services software must be installed. It is a high-performance multithreaded driver for interactive configuration and data acquisition. This driver can be used to develop customized data acquisition application with NI Labview or C-based development environments. 4.4.3 Execution Process of the Circuit After the introduction of these components, let?s now review the execution procedure of the circuit. The 16-bit control codes are written to and read from the matrix connection through digital I/Os (Inputs/Outputs) and several digital chips, the connections of which are shown in Figure 27. This part of circuit is located between the computer and the matrix connection and also acts as an interface. The computer writes a control code and sends it out through digital outputs. Then the control code goes through the 74LS245, an octal bus transceiver, to reach and then control the multiplexers. At the same time, the 50 51 control code is locked by 74LS373, an octal D-type transparent latch, and can be read back to the computer through the 74LS244, an octal buffer and line driver, and then through the digital inputs. The purpose of this read-back function design is to monitor the current control code in the circuit when the software program is running, making sure that the correct control codes is transmitted and the desired channel is selected. Currently, two USB-6501s from National Instrument (NI) Corp. are used as the digital I/Os. Other kinds of digital I/Os also can be adopted. 4.5 Structure of the New System All above circuit parts including the multiplexers, interface, and digital I/Os are designed to be made into a self-developed box. This self-developed box is connected with the computer by USB cables. It is also connected with the 2048 solder joint resistors which are inside of the environmental chamber through 96 connection wirings. A multimeter with an IEEE-488 (GPIB) interface is also involved in this new system. This multimeter is connected with the PCI-GPIB card, which is inserted into a PCI slot of the computer by a GPIB cable. Therefore, the computer can read the resistance values through this GPIB card and GPIB cable. The probe wires of the multimeter are connected with the outputs of the two multiplexers, which are the outputs of chips C7 and C8 in Figure 25. The schematic of new system structure is shown in Figure 33. 2048 resistors In matrix connection Control circuit + Digital I/O cards Multimeter USB Port GBIP Card Computer Self-developed boxChamber USB cable 96 connection wires Probe wires GPIB cable Figure 33 ? Structure of the New System 4.6 Build Circuit on Breadboard The trial circuit is built on breadboard according to the design schematic and all components? pin configurations. Pin configurations of ADG706, 74LS245, 74LS373 are shown respectively from Figure 34 to 36; 74LS244 pin configuration is shown before in Figure 28. The complete breadboard circuit is shown in Figure 37. 52 Figure 34 ? ADG706 Pin Configuration [20] Figure 35 ? 74LS245 Pin Configuration [23] 53 Figure 36 ? 74LS373 Pin Configuration [24] 54 Figure 37 ? Complete Circuit Built on Breadboard 55 4.7 Circuit Testing The prototype of this new measuring system was implemented by chips, breadboards and jumper wires, as shown in Figure 38. After checking the hardware operations of the new system, such as control code writing, control code reading, multimeter reading etc., they are all found properly functional. In addition to these tests, another two tests are also important and need to be done. The first is to test the difference of multimeter readings for a same resistor before and after the system is applied. The second is to test the change of multimeter readings for a resistor connected in one channel before and after all other resistors in the channels connecting to this channel. The reason to do the second test is because 64 resistors in total will be connected in one channel (see Figure 25 for the matrix connection of testing resistors). In these two tests, Keithely 2010 multimeter and four-wire resistance measuring mode is used for higher measurement accuracy. Figure 38 ? Prototype of the New Measurement System 56 57 A) The difference of multimeter readings before and after the new system is applied The purpose of this test is to indicate the effect of the hardware in the new system on the multimeter readings. Six different resistors including a jumper wire are selected. Firstly, their resistance values are directly measured by the multimeter. Then these resistors are put into the new system. Appropriate control codes are written to choose different resistors and the resistance values between the outputs of C7 and C8 in Figure 25 are measured. The multimeter readings of this test are listed in Table 2. Readings in direct measurement (Y0) Readings after the new system is applied (Y1) Change of readings (Y1-Y0) 1 0.2187k? 0.2286k? 9.9? 2 0.9906k? 1.0004k? 9.8? 3 2.6685k? 2.6785k? 10.0? 4 5.5476k? 5.5579k? 10.3? 5 14.7322k? 14.7430k? 10.8? 6: Jumper wire 0.006? 9.56? 9.55? Average: 10.06? Table 2 ?Resistance Readings Before and After the System is Applied The differences of these readings before and after the new measuring system is applied are caused by the channel ?on resistance? of the multiplexer ADG706, which is specified to be about 2.5? in its feature description. Four layers of multiplexers are used in the new system. For example, as shown in Figure 25, it goes through channel 1 of C7, channel 1 of C1, channel 1 of C3 and channel 1 of C8 to take measurement of R1. C7, C1, C3 and C8 are four layers multiplexers. So the total channel ?on resistance? of multiplexers should be about 10?, which matches our test results: the average change of reading is 10.06?. This ?10?? will not affect the test results, as explained herein. Figure 39 shows the circuit of a tested device when all resistances such as wire and PCB are considered. Usually for our testing, the total resistance of this circuit is about 5?, and the failure threshold is set to be 15?, means when resistance is measured above 15?, the device is said to be failed. When the device goes through the thermal cycle and works normally, its resistance value falls in the range from about 6? to 10?, while if it fails, the value will skyrocket to about 1000? in very short time, as shown in Figure 40. When the ?10? on resistance? is included, we just adjust the failure threshold to 25?; however, compared with 1000?, 25? is still a rather small order of magnitude, so 10? will not affect the testing results. From this stand of point, the measurement system may not be applied on connector testing, because the order of magnitude on the resistance value in this testing is very small, like 0.5?, and the ?on resistance? will have significant influence on the testing results. In our experiment, what we concern about is the resistance change of the solder joint resistors in environmental chambers. The drift of this channel ?on resistance? is less than 0.5? in the temperature range of -40 ?C ~ +85 ?C. Therefore, such channel ?on resistance? of multiplexers will not affect our test results. Figure 39 ? Circuit of Device when all Resistances are considered 58 Profile (-40 C degree - 150 C degree) -100 0 100 200 300 400 500 600 700 800 900 1000 1100 0 100 200 300 400 500 Time (Seconds) R es i s t a n c e M eas u r em en t s ( C el si us) Figure 40 ? Example of Testing Result B) The change of multimeter readings before and after all channels are connected 59 The purpose of this test is to check whether the resistor connections in other channels will affect the current resistance reading of one channel. For example, in Figure 25, the channel 1 of chip C1 totally has 64 resistors connected with all 64 channels of chips C3, C4, C5 and C6. In this test, six resistors from test A) are connected to channel 1 of C1, then we measure their resistance before and after all other channels of chips C3, C4, C5 and C6 are connected with channel 1 of C1. To make it simple and be the worst case, those other channels of chips C3, C4, C5 and C6 are directly shorted to channel 1 of C1 by using jumpers. The test results are listed in Table 3. 60 Readings before all other channels are connected (Y1) Readings after all other channels are connected (Y2) Change of readings (Y2-Y1) 1 0.2286k? 0.2288k? 0.2? 2 1.0004k? 1.0003k? -0.1? 3 2.6785k? 2.6785k? 0.0? 4 5.5579k? 5.5573k? 0.6? 5 14.7430k? 14.7423k? 0.7? 6: Jumper wire 9.56? 9.68? 0.12? Average: -0.2? Table 3 ? Resistance Readings Before and After All Channels Are Connected The test results shows the average change of multimeter readings is -0.2?, which indicates that there is hardly affect on the current resistance reading before and after the resistors from all other channels are connected to the current selected channel. This means the connection of all channels will not affect the resistance measurement of one particular channel, as we desired. 61 CHAPTER 5: SOFTWARE MODIFICATION In the last chapter, hardware configuration design of the new measurement system is discussed in details. This chapter will focus on the software part. In this research, multiplexers and matrix connection take the place of switching boxes filled with multiplexer cards, as a matter of course, measurement mechanism is also changed. Original scanning mechanism is substituted by channel selection according to control code. Consequently, some software modifications need to be made. In the following part, those changes and some matters of application will be introduced minutely. 5.1 Program Execution of the Previous Measurement System The updated software by Mark is contained within a single library file and developed in Labview 6. When executed, the library file opens a top level VI and starts the main measurement software automatically. The main structure of this software is a sequence loop comprised of three frames. In the first frame, the software starts with acquiring some information from the markstart.txt and rlogset.txt and then does some file setups, such as count file, data file, and fail count file. In the second frame, the software needs to identify the devices such as multimeter, switching boxes and then get their addresses. The software also needs to read the channel information to identify channel names, close first list, scan list, high failure 62 value, low failure value, temperature sensor pair, meter range, meter function, digital filter setting, first scan list, channel count, etc., and then perform corresponding setups. The last frame executes the main measurement, including check the temperature for thermal cycle counting to make sure RTD and chamber are properly functional, check voltages for humidity, takes measurements, and has logic for data logging and front panel output, also determine if the measurement is outside the thresholds range and whether or not to write it to the failure count file. Of course there are thousands of details in the program, here just some main processes are introduced. 5.2 Modifications to Previous Measurement System Software As mentioned before, the change of hardware configuration also alters the measuring mechanism, from scanning to channel selection by control code. So the main modification I made to the original program is in the measurement part. First of all, devices and their addresses must be identified in order to carry out the measurement. Multimeter must be included, however, distinguished from the original system, we need to acquire the addresses of digital I/Os instead of switching boxes, since control codes are written in and read from the ports of digital I/Os. The software ?NI-DAQmx Devices ? Measurement & Automation? is used to acquire those addresses, as shown in Figure 41 and Figure 42. In the new system, the address of multimeter is 22, and the addresses of digital I/Os are Dev1 and Dev2. Figure 41 ? Acquire Address of Multimeter Figure 42 ? Acquire Address of Digital I/Os As mentioned before, during the measurement process, firstly, the control codes will be written into the digital I/O, as the sub-VI ?Write Control Code to the Digital Port? functions. And in this sub-VI, it calls many other sub-VIs from DAQmx library. For example, the ?DAQmx Flatten Channel String.vi? first converts the array of high 8-bit 63 64 control code address and low 8-bit control code address into a single string, then ?DAQmx Create Channel.vi? creates channels to generate digital signals, and ?DAQmx Start Task.vi? transfers the task to the running state to begin generation, finally ?DAQmx Write.vi? writes the control codes to a task that contains a single digital output channel, and ?DAQmx Clear Task.vi? finishes the whole process. To make sure the correct control codes is written into the digital port and the desired channel is selected, the sub-VI ?Read Control Code from the Digital Port? is created. It has almost the same block diagram as ?Write Control Code to the Digital Port?, but just ?DAQmx Read.vi? appears instead of ?DAQmx Write.vi? to read the control code from the digital port. After affirm the desired channel is selected, it?s time to execute the sub-VI of ?Read Single Measurement from Multimeter?. This sub-VI calls some VIs from Agilent 34401 library. At first the ?Initialize.vi? is called, and we input the multimeter?s address as the ?VISA Resource Name?, meanwhile the baud rate, parity and data bits are set. Then we can make choice of manual resolution, function, enable auto range or not, and manual range according to the testing requirement in ?Configure Measurement.vi?. Then ?Read.vi? reads and returns a single measurement from the equipment, and the ?Close.vi? finishes up the whole process. Since the original software has been used for several years to conduct lots of testing, it is quite reliable, so we continue to use other parts of the original program in the new system and only the measurement mechanism is changed. Moreover, according to the users? demand and make it easier for software maintenance, some hardly used parts are deleted. After these operations, much effort is put into the debugging process. Data type plays a very important role in Labview programming. For example, in the original 65 measurement system, there are four switching boxes, each of which is filled with ten multiplexer cards, so Mark made the data structure of 10?4 matrix many places in the original program; however, as shown in last chapter, the new system implements a 32?64 matrix connection, so I need to do the corresponding transformations, and this is not easy, since many cycle structures are involved. In summary, the program initializes the system by performing some setting ups, for example file creation, and set the threshold range of resistance values and failure criteria, then check temperature for thermal cycling counting as original program did, and make the measurement of resistance. The program writes a control code through the digital I/O to the hardware to select a channel or solder joint resistor, and read back again to monitor the control code and the selected resistor. If the read-back control code is equal to the written one, it means the current control code transmitted in the circuit is the required code and the desired resistor is indeed selected now. Normally the first control code will be 0000H to select the first solder joint resistor. After that, the program will record the current number of thermal cycles and resistance value read from the multimeter. All information including the channel name, number of thermal cycle and the resistance value will be saved into a data file. The resistance value will then be compared with the threshold value and failure criteria, if it is determined to be a failure, all information will be saved into the failure count file. After finishing that, the program will check if the currently selected resistor is the last one or not. If it is not, the program will select the next channel by adding one into the previous control code. If it is, as long as the program is not stopped, it will select the first resistor again by reset the control code into 0000H, and the whole successive measuring process will repeat. The main flow chart of the program is shown in Figure 43. The user interface of the new program is shown in Figure 44. The program can be stopped at anytime by users. Initialize Create failure criteria Write control code (A) Read control code (B) A = B? No Yes Measure resistance (R) Save to data file R > criteria? Save to failure file Reset control code Last channel? Yes No Control code +1 No Yes Count thermal cycles Figure 43 ? Flow Chart of the Program 66 Figure 44 ? User Interface of the New Program 5.3 Front Panel Setting Up Many new setups are added in the front panel, and they are important for program execution. For example, the ?RTD Control Code? should be input and it is determined by which channel the RTD is connected in. Default value of ?initial control code? is 0000H, since normally we connect the solder joint resistor from the first channel; however, it is applicable to change according to the beginning channel of resistor connection. The ?Number of Group? and ?Number of Devices in a Group? are determined by how many devices are measured, if 2048 channels are fully employed, they should be set to 32 and 64, respectively. But if the use is less than full, new numbers should be assigned. According to the address information acquired by ?NI-DAQmx Devices ? Measurement 67 & Automation? as mentioned before, the ?VISA Resource Name? should be set to ?GPIB0::22::INSTR?; the ?Read from Low 8 bits? should be set to ?Dev1/port0?; the ?Read from High 8 bits? should be set to ?Dev1/port1?; the ?Write in Low 8 bits? should be set to ?Dev2/port0?, and ?Write in High 8 bits? should be set to ?Dev2/port1?. Of course, these values are applicable to change if the devices? addresses have been changed. Other settings related to the multimeter, such as baud rate, parity, data bits, function, enable auto range, manual resolution and manual range should be done according to users? requirement. The set ups discussed above are shown in Figure 45. Figure 45 ? The Front Panel Setting Up 5.4 Example of Application 68 To validate the software, 64 jumper wires are connected to the first 64 channels, and let the program executes the measurement. Figure 46 shows the measurement results. They are all about 10?, match the total channel ?on resistance? of multiplexers as discussed in Chapter 4. The measurement results and front panel output meet expectations, so the new program is properly functional. 69 Figure 46 ? Measurement Results of the Example Application 70 CHAPTER 6: PCB LAYOUT Currently, the circuit of hardware configuration is built on breadboard for test, to make the measurement system as a formal product, the circuit should be built on a PCB, and thus a PCB layout is required. Before begin to plan the PCB layout, some specifications should be decided. For example, we?d like to make it a PCI plug-in card, so the shape of the board is determined, and a 128-pin connector will be located at the edge of the board to realize connection with the matrix. Other specifications such as the size of the board, type of termination, IC packages etc. should also be decided. Therefore, a schematic should be prepared first. Normally, the steps to complete a PCB layout are listed in the following: 1. Develop a schematic drawing (build your component library); 2. Convert this schematic to layout file for PCB (make footprint for your component); 3. Place the devices on the board; 4. Finish the routing manually or automatically by software; 5. Process DRC (Design Rule Checking); 6. Generate Gerber files from the layout. Design rules are a series of parameters provided by semiconductor manufacturers that enable the designer to verify the correctness of their mask set. For instance, three basic DRC checks include width, spacing, and enclosure. A design rule set specifies particular geometric and connectivity restrictions to ensure sufficient margins to account for variability in semiconductor manufacturing processes, so as to ensure that most of the devices work correctly. There are also many other rules specified according to the practical requirement. As for Gerber file, it is a standard file format used by PCB fabrication houses which contains data necessary for computer controlled equipment to draw exact patterns for circuit boards. The patterns normally involve features such as land patterns, signal traces, drilled holes, milling and cutting information. And these patterns are typically used to electrically connect components in electronics assemblies. The software used to develop this PCB layout is Orcad. Figure 47 to Figure 53 shows the snapshots for each layer from the first to the fourth layer including top overlay, bottom overlay, and keepout layer. And Figure 54 has all the layers in one snapshot. Figure 47 ? First Layer of the PCB Layout 71 Figure 48 ? Second Layer of the PCB Layout Figure 49 ? Third Layer of the PCB Layout 72 Figure 50 ? Fourth Layer of the PCB Layout Figure 51 ? Top Overlay of the PCB Layout 73 Figure 52 ? Bottom Overlay of the PCB Layout Figure 53 ? Keepout Layer of the PCB Layout 74 75 Figure 54 ? Final PCB Layout 76 CHAPTER 7: BENEFITS The purpose of this research was to improve the existing in-situ measurement system by increasing the measuring capacity, reducing the cost, and decreasing the number of connection wirings passing through the access port of environmental chamber. These were achieved through novel hardware configuration design and modifications to the original measurement software. The Center for Advanced Vehicle Electronics (CAVE) will benefit from this research by performing reliability testing with greater capacity and lower cost. 7.1 Increased Measurement Capacity 7.1.1 Capacity of Previous Measurement System Compared with the first version of measurement system, Mark?s updated version has got some improvement on capacity by adding additional switching boxes as well as developing new techniques to utilize the switching systems with more efficiency. This measurement system involved four Keithley 7002 switching boxes to acquire a maximum capacity of 1600 2-pole measurements, double that of the original system. To further expand the measurement capacity, Mark brought forward two new techniques. For example, DaimlerChrysler discovered that the 2-pole multiplexer cards used in this system can be utilized in a 1-pole configuration to nearly double measurement capacity 77 [1]. Figure 55 [1] shows the connection structure under this method. One end of eachdevice to be measured is directly connected to one terminal of the multimeter, while the other end of each device is connected to either high or low of each channel. Channel 39 and 40 are used to connect the other terminal of the multimeter to high and low of other closed channels, respectively. Therefore, with the four switching boxes, the measurement capacity can be expanded to 3040 1-pole measurements. Under this configuration, to measure all the devices on one card, two scans are required. During one scan, channel 39 is closed, and then channels 1 through 38 are scanned, so devices connected to the highs of channels such as R1, R3, etc. are measured. The second scan is similar, but channel 40 is closed, so the remaining devices such as R2, R4, etc. are measured. The downside of this configuration is that having one end of all devices connected to the multimeter at all times may add some capacitance to the multimeter which may interface with some high precision measurements. The other technique discussed to expand the capacity is an alternate 1-pole configuration, which connects the outputs of a multiplexer card to the multimeter terminals, as shown in Figure 56 [1]. Figure 55 ? DaimlerChryslter?s 1-Pole Configuration [1] 78 Figure 56 ? Alternate 1-Pole Configuration [1] 7.1.2 Capacity of Current Research As stated before, in this research a 32?64 matrix connection is implemented, and 2048 devices in total can be measured, greater than the standard connection?s capacity of 1600. Moreover, in this matrix design, the system?s capacity can be expanded easily by adding more ADG706 multiplexers. For example, the 16 channels of chip C7 and C8 are 79 80 not full utilized, if one ADG706 is added and connected to the third channel of chip C7, the matrix will be expanded to 48?64; or if that additional multiplexer is connected to the fifth channel of chip C8, the matrix will be expanded to 32?80; if the 16 channels of chip C7 and C8 are fully used, the final matrix will be 256?256. Even greater capacity can be accomplished if additional layers of multiplexers are involved. 7.2 Reduced Cost of Hardware Configuration In the previous measurement system, up to four switching boxes are utilized. By those pieces of equipment, the measurement capacity is 1600 by standard connection, 3040 by DaimlerChrysler 1-pole configuration, and 3080 by alternate 1-pole configuration. The capacity of current matrix configuration is 2048. However, each switching box costs $15,000, so the price of a maximum capacity of 3080 is about $60,000. And the cost of new matrix hardware configuration is summarized in Table 4, which means the price of 2048 capacity is less than $300. As illustrated above, if one additional ADG706 is connected to the third channel of chip C7, the matrix capacity will be expanded to 3072, and this one multiplexer costs only $5.60. In a word, the cost of new hardware configuration is reduced significantly, and the expense for capacity expansion is also very low. Component Unit Price (dollars) Number of Unit Cost (dollars) ADG706 5.6 8 44.8 74LS244 5.06 2 10.12 74LS245 5.06 2 10.12 74LS373 4.6 2 9.2 USB-6501 99 2 198 Total Cost (dollars): 272.24 Table 4 ? Cost of the New Matrix Hardware Configuration 81 7.3 Wires Passing Through the Access Port All connections between the measurement system and the devices under test will pass through the access port on the wall of environmental chamber. At the same time of achieving the maximum measurement capacity, having a minimum number of wires through the access port is highly desired, and the reason for this is to maintain the chamber?s air tight seal, plus the size of the port is limited. In the new research, as shown in Figure 25, only 32+64=96 wires are passing through the access port to achieve the measurement capacity of 2048, which outperforms other connection methods distinctly. Table 5 shows the number of wires passing through the chamber wall for several different connection methods. Method Measurements Wires Through Access Port Standard 1600 3200 DaimlerChrysler 1-Pole 3040 3041 Alternate 1-Pole 3080 3083 Common 1600 1601 Series 1600 1601 Matrix Design 2048 96 Table 5 ? Number of Wires Passing Through Access Port for Different Connection Methods In summary, compared with the previous system, this new system has the following advantages: 1. This system increased the measuring capacity for the number of channels or solder joint resistors to 2048. 82 2. The matrix design reduced the number of wires making connection between inside and outside of the chambers to 96. 3. The design reduced the hardware cost dramatically. To monitor 1600 solder joint resistors, the hardware cost dropped from $60,000 for the previous system to less than $300 for the new system, and this saving will be even more considerable for greater capacity. 4. Both of the hardware design and software programming have been greatly simplified while the system?s capacity is improved. 83 CHAPTER 8: FUTURE WORK As shown in chapter 6, the PCB layout design is proposed. Next is to build several PCBs as product samples, and apply them to the testing to see if there is any respect need to be improved. The board is designed to be a PCI plug-in card so it can be involved in a computer conveniently. If the final PCB design is determined, we may further make the future formal product as a box, which includes the PCB, the multimeter, and the software to make it as an integrated measurement system easy for application. Certainly, there is still a lot of work to do before the formal product can come out. As for the software part, there is enormous room for improvement and requires future work. It is a good idea to tie this measurement system to the network, not only for long-distance real-time monitor, but also for some operations executed online. For instance, if the markstart.txt file, rlogset.txt file and name files are stored in some online drive, and every time the program starts with searching and reading these files from the online storage address, then the users can change the content of these files through network at any place instead of going to the lab, which saves time and be more convenient. Other possible operations include change the file creation path, file storage path, failure criteria etc., and all of these can be done online. Currently the control code has 16 bits, but if additional layers of ADG706 multiplexers are added to the hardware configuration for measurement capacity expansion, the number of bits for control code 84 will increase. In this program, control code is an input, and every input has its ownspecific data structure, which is related to the value of the parameter; to make the system more user-friendly, some work can be done to the program for easy setup of control code, even when it is extended to more bits. During the data acquirement phase in this system, there is a loop structure for the control code to increase one each time to switch to the next channel and take measurement automatically; by this loop structure, there is no need to input the control code manually for channel switching, and this is similar to the channel scan list of Mark?s system. One important fact is that if these control codes are numerically sequential, the simple rule of increasing by one is easily carried out by the loop structure. Therefore, to realize this automatic channel switching, the devices to be measured must be connected to the matrix channels in succession. This makes it difficult to distinguish variously featured devices during testing, like devices from different manufacturers, devices made from different materials, and so on. We hope that different featured devices can be connected to different groups for partition, rather than sequential connection without dividing. In current system we have 32 groups, each of which has 64 channels; when we have different featured devices, we hope they can be connected in various groups without full use of their capacities, which makes the control codes not continuous anymore. This respect can be improved by future works. This measurement system will be applied on future overmolding project, which is to investigate the subject of completely overmolding a fully populated PC board to be used in harsh environment applications. The information achieved from these testing can be used for future design of overmolding electronic components or provide better ideas in 85 this area. Two tests are either being completed or are in the beginning stages of design. The first study looks at the thermal reliability of different adhesive materials attaching FLEX and FR4 substrates to aluminum metal back planes. The second study uses only epoxy overmolding materials on both FR4 and Stablcor FR4 substrates included in the test matrix, and this test also involves two different board layouts, two different adhesives to attach the substrate to the aluminum back plane, three different epoxy overmolding materials, and two different solders. More testing assignments are required for the overmolding project in the future, and then this new measurement system will be put into application and displays its advantages. 86 References 1. Mark, Norris, E. ?Using National Instruments Labview for Monitoring Environmental Reliability Testing?, Masters Thesis, Auburn University, 2003. 2. IEEE-488 Bus (GPIB) Introduction. [Online], Available: http://en.wikipedia.org/wiki/GPIB. 3. Joshua, Ridenour, D. ?Overmolded Substrate on Aluminum Metal Backing for Harsh Environment Applications?, Masters Thesis, Auburn University, 2008. 4. Auzins, J.; Wilhelm, R. V. ?Automotive Electronics ? Getting in Gear for the 90s and Beyond?, IEEE Circuit and Devices Magazine, pp.14-18, Vol. 10, Issue 1, Jan. 1994. 5. Florian Sch??ler; Michael R?sch; Johannes H?rber; Klaus Feldmann. ?Reliability Aspects of Electronic Devices for Advanced Requirements?, Emerald Circuit World, 2008 General Review, pp.23-30, Vol. 34, No. 3, 2008. 6. Ohadi, M.; Jianwei Qi. ?Thermal Management of Harsh-Environment Electronics?, Semiconductor Thermal Measurement and Management Symposium, 2004, Twentieth Annual IEEE, pp. 231-240, 9-11, Mar. 2004. 7. Braun, T.; Becker, K.-F.; Sommer, J.-P.; Loher, T.; Schottenloher, K.; Kohl, R.; Pufall, R.; Bader, V.; Koch, M.; Aschenbrenner, R.; Reichl, H. ?High Temperature Potential of Flip Chip Assemblies for Automotive Applications?, Electronics Components and Technology Conference, 2005. Proceedings, 55 th , pp. 376-383, Vol. 1, 31 May ? 3 June 2005. 8. Lau, J.H.; Liu, K. ?Global Trends in Lead-free Soldering: Part I of a two-part Series on Lead-free?, Advanced Packaging, pp. 27-30, Vol. 13, 2004 9. Jeffrey C. Suhling; H.S. Gale; R. Wayne Johnson; M. Nokibul Islam; Tushar Shete; Pradeep Lall; Michael J. Bozack; John L. Evans; Ping Seto; Tarun Gupta; James R. Thompson. ?Thermal Cycling Reliability of Lead-free Chip Resistor Solder Joints?, Emerald Soldering & Surface Mount Technology, pp.77-87, Vol. 16, Issue 2, 2004. 87 10. Z.W. Zhong; T.Y. Tee; J-E. Luan. ?Recent Advances in Wire Bonding, Flip Chip, and Lead-free Solder for Advanced Microelectronics Packaging?, Emerald Microelectronics International, 2007 General Review, pp. 18-30, Vol. 11. Milos Dusek; Martin Wickham; Christopher Hunt. ?The Impact of Thermal Cycling Regime on the Shear Strength of Lead-free Solder Joints?, Emerald Soldering & Surface Mount Technology, pp. 22-31, Vol. 17, Issue 2, 2005. 12. Jarmo M??tt?nen; Petteri Palm; Aulis Tuominen. ?Reliability of Flip Chip Components Soldered on FR5 Board?, Emerald Microelectronics International, pp. 27-30, Vol. 17, Issue 1, 2000. 13. Cheng Bo; Wang Li; Zhang Qun; Gao Xia; Xie Xiaoming; Wolfgang Kempe. ?Flip Chip Solder Joint Reliability under Harsh Environment?, Emerald Soldering & Surface Mount Technology, pp. 15-20, Vol. 15, Issue 3, 2003. 14. Cheng Bo; Wang Li; Zhang Qun; Gao Xia; Xie Xiaoming; Wolfgang Kempe. ?Failures of Flip Chip Assemblies under Thermal Shock?, Emerald Soldering & Surface Mount Technology, pp. 27-32, Vol. 15, Issue 3, 2003. 15. Jicun Lu; Jianhua Wu; Yih Pin Liew; Thiam Beng Lim; Xiangfu Zong. ?The Impact of Underfill Properties on the Thermomechanical Reliability of FCOB Assembly?, Emerald Soldering & Surface Mount Technology, pp. 37-41, Vol. 12, Issue 2, 2000. 16. Zhang Qun; Xie Xiaoming; Chen Liu; Wang Guozhong; Cheng Zhaonian; Wolfgang Kempe. ?On the Degradation of the Solder Joints of Underfilled Flip Chip Package: A Case Study?, Emerald Soldering & Surface Mount Technology, pp. 24-28, Vol. 12, Issue 3, 2000. 17. A. Cordery, N. Kilbey, N. Suthiwongsunthorn. ?Tools for Evaluation of Electrical Performance of Chip-on-Board Devices?, Emerald Microelectronics International, pp. 8-12, Vol. 19, Issue 2, 2002. 18. Sin Kok Kee; Lim Khiang Wee. ?Measuring Electromigration on Printed Circuit Boards Using Labview?, [Online], Available: http://digital.ni.com/worldwide/singapore.nsf/web/all/86B19B4C16EF3E2886 25680200619279 19. Mark, Norris, E. ?MarkDano Hardware Wiring1?. 20. ADG706 Datasheet. [Online], Available: http://www.datasheetcatalog.org/datasheet/analogdevices/54632885ADG706_ 7_a.pdf 88 21. SN74LS244N Datasheet. [Online], Available: http://focus.ti.com/lit/ds/symlink/sn74ls244.pdf 22. SN74LS244 Detailed Pin Configuration and Truth Table. [Online], Available: http://www.elecfans.com/article/88/196/2007/200712196694.html 23. SN74LS245 Datasheet. [Online], Available: http://focus.ti.com/lit/ds/symlink/sn74ls245.pdf 24. SN74LS373 Datasheet. [Online], Available: http://focus.ti.com/lit/ds/symlink/sn74ls373.pdf 25. USB-6501 Datasheet. [Online], Available: http://www.ni.com/pdf/products/us/20054920301101dlr.pdf 89 APPENDIX A: CONFIGURATION FILES As the execution of software begins with reading in some setup information, the configuration files are needed to store these pieces of information. In the appendix part of Mark?s thesis, the format of these files were introduced in details; since the original software was modified to cater for new hardware design, some changes must be made. However, most of the appendix written in Mark?s thesis [1] is applicable in the current system, and many statements of those files are directly cited here. These setup files can be created in notepad or Excel. A.1: Markstart.txt This file contains necessary setup information to start the measurement software. Although the setup information we need in this measurement system is much less than before, I decided to still adopt the previous file format in order to not topple over the sub-VI?s structure. This file is located in the directory: C:\windows\desktop. The first line can be set as ?run? if the program is to start taking measurements when the computer boots, or be set as ?networkserver? if the computer starts the e-mail notification and web interface program. Since the network function is seldom used, so usually the first line of this file contains ?run?. The second line contains the directory in which all other configuration files, except rlogset.txt, are located. This directory is also the file path to 90 store test data. The third line is the scan speed or integration time in NPLC, or number ofpower line cycles per measurement, since we don?t need this information in the program, so just fill a number as you like. The fourth lien contains the temperature measurement type to be used for the test, and we need this information, so please fill in this line according to requirement. Up to three can be specified and are tab delimited. Values of zero (0) through three (3) are valid and represent as followed in order: no temperature sensors, 2 wire resistance of RTDs, 2 wire resistance of mechanical switches, and temperature in degrees Celsius using 4 wire RTDs with the 2001 multimeter. The mechanical switch option can be used instead of temperature sensors, this looks for a resistance less than 97 Ohms when the chamber is cold and resistance above 125 Ohms when the chamber is hot, but will not give errors if the switch reaches zero or infinite resistance. The fifth line gives cycle times for each chamber, tab delimited. And this is used to determine if the chamber does not cycle in an appropriate amount of time. The next line gives the box number, or switching system number of the temperature sensors and bias voltages. We don?t need this information, so just leave it as the default values. The seventh line is one (1) if one or more bias voltages are to be monitored, and zero (0) otherwise. The next line gives the range of values the bias voltage is considered good, with the upper limit followed by a tab and then lower limit. Then next comes the type of measurement log to be used, a value of zero (0) results in every measurement being logged, while a value of one (1) will result in measurements being logged twice per cycle and a value of two (2) will take measurement record approximately every 30 minutes. The following line specifies a name for the test and chamber. In the same line appears the computer name and separated by a tab is a list of e-mail address to which notifies will be 91 sent when errors occur. The last line specifies the TCP port on the network server to which this computer will send status packets. A sample Markstart.txt file is shown as below: run c:\temp\ 1.00 1 0 0 5400 0 0 1 0 4.000 6.000 0 TCblueleft/TV3c mitchcc@auburn.edu;jevans@eng.auburn.edu;davis14@auburn.edu 6342 A.2 Rlogset.txt This file determines which groups will have a measurement log kept for them. There are 32 rows, each representing a group containing 64 channels. The first row represents the first group while the last row represents the 32 nd group. The positions contain a one (1) or zero (0), with a one a measurement log will be kept for that group, with a zero a measurement log will not be kept. The following shows a sample rlogset.txt file: 1 1 1 1 1 1 1 1 1 1 1 1 1 92 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 A.3 RTD.txt This file contains information for the temperature sensors. One sensor is listed on each line with two sensors per chamber. Each line consists of the card number of a temperature sensor followed by a tab and the channel number of the sensor. Since the hardware configuration has changed, and switching card does not exist any more, we don?t need this kind of information, so just leave them as the default values. Two additional values after the card number are used for 4-wire RTD measurement of real temperature. These values are also tab delimited; the third and fourth values of each line are upper and lower temperature. These values will be used to determine when the chamber cycles, the chamber must reach 0.4 multiplied by these values to be counted as a cycle. If the chamber does not reach at least the temperatures given, an error will be 93 generated based on the fact that the chamber is not reaching the desired temperatures. A sample rtd.txt file is shown below: 2 40 125 -40 5 40 125 -40 A.4: Name Files The name file contains channel information and a device specific name for devices to be measured during environmental reliability testing. One file exists for each group to be measured. The name of the file follows this format: nameB.txt, where B is the group number, from one (1) to thirty-two (32). The file contains one line per device to be measured. Each line contains the following tab delimited information: name, channel, upper limit, lower limit. The name is used to identify the devices that fail in the data files. The channel determines to which channel in a group the device is connected. When the upper and lower limits are preset here, they are used instead of the values in the failure value file. All but the name and channel information are optional, which means can be blank. Empty lines should be removed from the bottom of this file. The following shows a sample name file: FLEX_1_R1 1 FLEX_1_R2 2 FLEX_1_R3 3 FLEX_1_R4 4 FLEX_1_R5 5 FLEX_1_R6 6 ? ? ? ? ? FLEX_1_R60 60 FLEX_1_R61 61 FLEX_1_R62 62 FLEX_1_R63 63 FLEX_1_R64 64 94 A.5: Failure Value Files The format of this file is bBfval.txt, where B represents the group number, from one (1) to thirty-two (32). The only line of the file contains up to nine elements which are tab delimited. The first element of each line is the upper limit, followed by the optional values: meter range, channels per scan, digital filter, lower limit, meter function, integration time devisor, temperature sensor pair, and close first list. Most of these values are not needed in current system, so just fill the default values. Most of the options are optional and the defaults are: 100 ohms for upper failure value, 1000 or 2000 ohm meter range, 40 channels per scan, digital filter off, -Inf for lower failure value, 2 -wire meter function, integration time divider of 1, first temperature sensor pair (0 indexed), and no close first list. The following is a sample failure value file: 40 2000 80 1 95 APPENDIX B: DATA FILES Data files are used to store measurement information generated by the system. These files are created and updated automatically by the measurement system once it starts. To reset any or all of these files, just delete them before opening the software. Since the format of these data files are the same as the previous system, so this part of appendix is directly cited from Mark?s thesis [1]. B.1: Count Files The count files are used to store the current cycle count when the measurement system is monitoring thermal cycling chambers. There are two files containing the cycle count, counta.txt and countb.txt in the /count subdirectory. Each file contains the cycle count for one temperature sensor per chamber. The files contain one number per line and are created automatically to start at cycle zero by the measurement software. In addition to the cycle count files there is a measurement count file in the same directory. This file, scount.txt, contains the total number of measurement performed by the software. 96 B.2: Failure Status Files The failure status files contain the number of times each device has been outside the allowable range. One of these files is kept for each group being measured, and all are located in the /failstat subdirectory. The name of these files has the format of failC.txt, where C represents the group number. The files contain many lines of numbers, with each number showing the number of times a device has been outside the allowed range. When the number reaches five the device is considered to have failed and a record is written to the data file. These numbers do not update after a device has failed, but will remain the same unless reset by users. B.3: Data Files Data files contain records of failures, with one file for each group. These files are located in the /datalog subdirectory and their names follow the format dataB.txt, where B represents the group number. These files contain the device names, times, dates, cycle number and values at which devices fail. B.4: Log Files The measurement log files can periodically save measurements of all devices. These files are also in the /datalog subdirectory and have the filename format logC.txt, where C represents the group number. Although the log files do not contain the most important data recorded throughout the test, they can be referenced for events that affect all devices being monitored. When the log files are set to save measurements twice every cycle they 97 will stop saving measurements when the environmental simulation chamber stops cycling, this giving an estimate of the time when the chamber stopped.