azu_td_1330539_sip1_... - The University of Arizona Campus

advertisement
INFORMATION TO USERS
This reproduction was made from a copy of a document sent to us for microfilming.
While the most advanced technology has been used to photograph and reproduce
this document, the quality of the reproduction is heavily dependent upon the
quality of the material submitted.
The following explanation of techniques is provided to help clarify markings or
notations which may appear on this reproduction.
1. The sign or "target" for pages apparently lacking from the document
photographed is "Missing Page(s)". If it was possible to obtain the missing
page(s) or section, they are spliced into the film along with adjacent pages. This
may have necessitated cutting through an image and duplicating adjacent pages
to assure complete continuity.
2. When an image on the film is obliterated with a round black mark, it is an
indication of either blurred copy because of movement during exposure,
duplicate copy, or copyrighted materials that should not have been filmed. For
blurred pages, a good image of the page can be found in the adjacent frame. If
copyrighted materials were deleted, a target note will appear listing the pages in
the adjacent frame.
3. When a map, drawing or chart, etc., is part of the material being photographed,
a definite method of "sectioning" the material has been followed. It is
customary to begin filming at the upper left hand corner of a large sheet and to
continue from left to right in equal sections with small overlaps. If necessary,
sectioning is continued again—beginning below the first row and continuing on
until complete.
4. For illustrations that cannot be satisfactorily reproduced by xerographic
means, photographic prints can be purchased at additional cost and inserted
into your xerographic copy. These prints are available upon request from the
Dissertations Customer Services Department.
5. Some pages in any document may have indistinct print. In all cases the best
available copy has been filmed.
University
Miaofilms
International
300 N. Zeeb Road
Ann Arbor, Ml 48106
Order Number 1330539
APTMC: An interface program for use with ANSYS for thermal
and thermally induced stress modeling/simulation of Level 1 and
Level 2 VLSI packaging
Shiang, Jyue-Jon, M.S.
The University of Arizona, 1987
UM-I
300 N. Zeeb Rd.
Ann Arbor, MI 48106
PLEASE NOTE:
In all cases this material has been filmed in the best possible way from the available copy.
Problems encountered with this document have been identified here with a check mark V .
1.
Glossy photographs or pages
2.
Colored illustrations, paper or print
3.
Photographs with dark background
4.
Illustrations are poor copy
5.
Pages with black marks, not original copy.
6.
Print shows through as there is text on both sides of page
7.
Indistinct, broken or small print on several pages.
8.
Print exceeds margin requirements
9.
Tightly bound copy with print lost in spine
'
10.
Computer printout pages with indistinct print
11.
Page(s)
author.
12.
Pagefs) fin, Q 1 ,l ? r > seem to be missing in numbering only as text follows.
13.
Two pages numbered
14.
Curling and wrinkled pages
15.
Dissertation contains pages with print at a slant, filmed as received
16.
Other
lacking when material received, and not available from school or
. Text follows.
University
Microfilms
International
APTMC :AN INTERFACE PROGRAM FOR USE WITH ANSYS FOR THERMAL
AND THERMALLY INDUCED STRESS MODELING/SIMULATION
OF LEVEL 1 AND LEVEL 2 VLSI PACKAGING
by
Jyue-Jon Shiang
A Thesis Submitted to the Faculty of the
DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING
In Partial Fulfillment of the Requirements
For the Degree of
MASTER OF SCIENCE
WITH A MAJOR IN ELECTRICAL ENGINEERING
In the Graduate College
THE UNIVERSITY OF ARIZONA
19 8 7
STATEMENT BY AUTHOR
This
fulfillment of
University of
Library to be
the library.
thesis has
been submitted
in
partial
requirements for an advanced degree at the
Arizona and is deposited in the Universitymade available to borrowers under .rules of
Brief quotations from this thesis are allowable
without
special
permission,
provided
that
accurate
acknowledge of source is made. Requests for permission for
extended quotation form or reproduction of this manuscript
in whole or in part may be granted by the head of the major
department of the Dean of Graduate College when in his or
her judgement the proposed use of the material is in the
interests of scholarship. In all other instances, however,
permission must be obtained from the author.
SIGNED:
APPROVAL BY THESIS DIRECTOR
This thesis has been approved on the data shown below:
JOHN L. PRINCE
Professor of Electrical & Computer Engineering
DATE
ACKNOWLEDGEMENTS
The author wishes to express his appreciation for the
guidance, encouragement, enthusiasm, and support of his
advisor,
thesis
director,
Electronic
this
Dr. Z. J. Staszak, Visiting Professor, and his
Dr.
Packaging
investigation
expressed
to
J.
L.
Prince
Laboratory,
possible.
Semiconductor
III,
whose
Also,
Research
Director
assistance
appreciation
Corporation
funding the project upon which this report is based.
iii
of
made
is
for
TABLE OP CONTENTS
Page
LIST OF ILLUSTRATIONS
vii
LIST OF TABLES
viii
ABSTRACT
IX
CHAPTER
1. INTRODUCTION
1.1
1.2
1
Importance of Thermal/Mechanical
Problems in VLSI Packaging
Scope of the Work for Thermal and
Thermally Induced Stress Simulation
of VLSI Packaging
2. USE OF ANSYS FOR THERMAL/MECHANICAL
MODELING/SIMULATION
2.1
2.2
2.3
2.4
Introduction
Element Library, Material Characteriz­
ation
2.2.1 Element Library
2.2.2 Material Characterization
Thermal and Thermally Induced stress
Analysis Procedures
2.3.1 Thermal Analysis Procedure
2.3.2 Thermally Induced Stress
Procedure
Conclusions
3. ANSYS PACKAGING THERMAL/MECHANICAL
CALCULATOR (APTMC)
3.1
3.2
3.3
3.4
Introduction
Techniques Used in Developing APTMC...
Program Structure
Conclusions
4. THERMAL MODELING/SIMULATION OF LEVEL 1
AND LEVEL 2 VLSI USING APTMC
4.1 Defining the Problem : Model Genera­
tion and Preparation of Input Data,
iv
1
5
8
8
9
9
13
17
17
21
23
24
24
25
32
36
37
V
TABLE OF CONTENTS—continued
Page
4.2
4.3
4.4
4.5
I/O Formats
4.1.1 Model Generation arid Preparat­
ion of Input Data
4.1.2 I/O Formats
Implementation of APTMC
Examples of Thermal Simulation of
Selected Structures of VLSI Packages
4.3.1 Thermal Simulation of Forty Pin
Plastic Package
4.3.2 Thermally Induced Displacements
in Forty Pin Plastic Package.
4.3.3 Thermal Simulation of ThirtyEight Lead Multisource Hybrid
Package
4.3.4 Thermal Simulation of Thermal
Test Chip
...
Program Evaluation
4.4.1 Readability
4.4.2 Flexibility
4.4.3 Simplicity
4.4.4 Portability
4.4.5 Efficiency
4.4.6 Improvements to Limitations
Imposed by ANSYS
Conclusion
5. SUMMARY AND CONCLUSIONS
37
37
42
43
43
43
46
46
49
59
59
60
60
60
61
61
64
67
APPENDIX A: I/O FORMATS OF APTMC
70
APPENDIX B: EXAMPLE OF PROCESS OF THERMAL
AND THERMAL-MECHANICAL MODELING OF VLSI
PACKAGES AS COMPARED TO THE SAME PROCESS
USING APTMC
78
APPENDIX C: LISTING OF APTMC PROGRAM
90
APPENDIX D: TABLE OF PHYSICAL AND THERMAL
PARAMETERS OF SELECTED MATERIALS USED IN
VLSI PACKAGING APPLICATIONS (MEAN VALUES
0-100°C OR AT ROOM TEMPERATURE)
121
vi
TABLE OF CONTENTS—continued
Page
APPENDIX E: USE OF A FINITE ELEMENT METHOD
FOR THERMAL ANALYSIS
123
LIST OF ILLUSTRATIONS
Figure
Page
3.1
Linked List
29
3.2
APTMC Program Structure
33
4.1
Example of Node Numbering in
4.2
Example of Element Numbering in
4.3
Schematic Diagram of
Packages
APTMC
APTMC....
38
40
40-Pin Plastic
44
4.4
Forty Pin DIP Model used in APTMC
45
4.5
Two Dimensional Structure of APTMC for
40-Pin Plastic Package...,
47
Schematic Diagram of a 38 Lead Hybrid
Package
50
4.7
Hybrid Package
51
4.8
Thermal Test Chip Layout
54
4.9
Forty Lead Ceramic Package for Thermal
Test Chip
55
4.6
Model Used in APTMC
4.10 Thermal Model for 40-Pin Thermal Test
Chip
56
B.l
Example of Analyzed Structure...
79
E.l
Local Coordinate System for One Element...
•»
Vll
125
LIST OF TABLES
Table
Page
1.1
Typical Phases of ANSYS Analysis.....
10
2.2
Main Routines and Analysis Types
11
2.3
Element Summary Table
14
2.4
Thermal Elements of ANSYS
15
2.5
Material Properties
16
4.1
Selected Node Displacements for 40-Pin
Plastic Package
48
Selected Temperatures for Multisource
Hybrid Problems
52
Selected Node Temperatures On Silicon
Chip Surface for Steady-State Analysis
of Thermal Test Chip
57
Maximum Temperature Results for Thermal
Test Chip
58
4.2
4.3
4.4
viii
ABSTRACT
ANSYS
Packaging
Thermal/Mechanical
Calculator
(APTMC)is an interface program developed for use with ANSYS
(a
general
purpose
non-linear
systems
program)
and
specially designed to handle thermal and thermally induced
stress modeling/simulation of Level 1 (chip, carrier) and
Level
2
(board/modules)
assemblies.
VLSI
packaging
structures
and
APTMC is written in PASCAL and operates in an
interactive I/O format mode.
This user-friendly tool, leads an analyst/designer
through the process of creating appropriate thermal and
.thermally
induced
necessary to
stress
run
models
ANSYS. It
and
other
includes such
operations
steps
as the
following:
o
construction
of
ANSYS
commands
through
the
string process
o
creation
of
a
dynamic
data
structure
which
expands and contracts during program execution based on the
data storage requirements of the program
o
sets
input of control data which provides shared data
to control model generation
o
access
of
material
«
»x
data
and
model
parameters
from the developed INTERNAL DATABANK which contains: 1)
material data list, 2) heat transfer modes 3) library of
structures
o
forming ANSYS PREP7 and POSTn command files.
This thesis describes the program structure and
implementation on VAX 11/780 mainframe computers. Examples
of thermal and thermally induced stress analysis of VLSI
packages using the developed program are also presented.
CHAPTER 1
INTRODUCTION
1.1 Importance of Thermal/Mechanical Problems in VLSI
Packaging
Electronic packaging has a very important role in
providing
mechanical
electrical
support,
interconnection
integrated circuit chip.
environmental
and
heat
protection,
transfer
for
the
Technology that packs many chips
into a small volume is useless if the heat generated by the
chips cannot be effectively carried off.
If sufficient
heat is not removed, a chip either does not function at
all,
or
its
lifespan
components
of
system
affected
is
an
is
shortened.
integrated
when
Since
chips
are
system, the operation of a
chips
malfunction.
In
many
high-speed and high-density integrated circuit chips, the
thermal
limits
problem
is the
performance,
electronic
systems
main
cost,
are
factor that
and
determines
reliability. In
rapidly
shrinking
in
or
addition,
size while
their complexity and capability continue to grow.
As the
power has been increasing, the volume has been decreasing,
resulting in a dramatic increase in the heat density.
The
consequence of this enhanced heating dilemma is a large
increase in the number of failures of electronic systems.
Also, voids and cracks developed at the solder joints
during
die
attach
are
expected
1
to
increase
the
chip
2
junction
temperature
because the
voids reduce the
available for heat flow path [1].
semiconductor
devices strongly
area
Since reliability of
depends on the operating
junction temperatures, all packaging levels must.have the
ability to remove the heat adequately.
Failure in the
packaging performance causes a higher device temperature
which leads to a degradation in system performance.
The
packaging
of
microelectronic
chips
in
a
high-speed digital computer chip might seem only minor to
the machine's design.
One could
argue that the actual
processing of information is done entirely by the circuitry
on the chips themselves.
Every computer needs packaging,
but the nature of the packaging would not appear to have
much
influence
on the functioning of the machine.
The
facts are otherwise. Given the large number of different
materials that comprise a piece of electronic equipment,
and their differing thermal coefficients of expansion, it
is easy to see that heat dissipation within the electronic
equipment will lead to the creation of thermal stresses
which
may lead to eventual fatigue failures.
Such fatigue
failures have been observed in the solder joints of high
pin count leadless chip carriers surface mounted to circuit
boards.
Proper thermal management can aid materially in
alleviating such fatigue failures [2].
Let
integrated
us
These chip
examine
microelectronics
technology.
encapsulated
now
First,
one
within
a
carriers
the
special
imposes
or
more
sealed
in turn
on
heat
chips
package
may
demands
or
which
transfer
is
usually
chip .carrier.
be surface
mounted to
printed circuit boards which may be mounted parallel to the
surface
of
boards.
These stuffed printed circuit boards are inserted
parallel
to
a
second
one
level
another
of
larger
into the
printed
card
edge
circuit
guides
of
electronic chassis or racks and electrically connected via
edge connectors to a backplane or mother board.
Finally
these resulting assemblies may be installed in electronic
cabinets of fixed mobile plants.
task then consists of providing
The thermal management
efficient heat transport
paths to an ultimate heat sink outside the equipment while
maintaining
levels.
boards
internal
device
temperatures
at
acceptable
As soon as the heat flux density on the circuit
increases
significantly,
the
temperature
rise
resulting from the fortuitous flow of heat to the boundary
surfaces of the equipment becomes intolerable [3,4].
Thermal-electrical interactions are regarded as an
undesirable factors on circuit performance particularly in
power
operational
amplifiers,
D/A
multipliers and voltage regulators.
converters,
analog
For example, in an
4
operational amplifier power dissipation in the output stage
results in temperature gradient which is fed back to the
input stage.
This causes a temperature difference between
the input pairs.
This small signal in the input.stage is
then amplified and appears at the output stage [5].
Thermal-mechanical interactions become critical in
composite structures consisting of different materials in a
temperature fluctuating environment.
thermal
expansion
coefficient
The difference in the
induces thermal
stresses.
For example, a plastic encapsulated IC package consists of
a
silicon chip, the metallic leadframe and the molding
compound.
Large temperature variations will cause thermal
stress to develop in the molding compound and silicon chip.
These effects can be large enough to cause fracturing in
the structure or change the electrical properties of the
device [6].
The drive toward high functional density, extremely
high
speed
devices,
and
highly
circuits
and
reliable
system
is
operation
today
in
electronic
constrained
by
available thermal design and heat removal techniques.
A
clear understanding of thermal control technologies as well
as the thermal potential and limits of advanced concepts is
very important to the design and development of electronic
equipment.
Consequently, the choice of thermal control
5
technology and the particular decisions made in the course
of
evolving
the
thermal
packaging
design
often
have
far-reaching effects on both the reliability and cost of
the electronic system or assembly.
1.2
Scope of The Work for Thermal and Thermally
Induced Stress Modeling/Simulation
of VLSI Packaging
It
system
is
obvious that
performance.
thermal
In
problems will
addition,
interactions will be critical [7].
limit
thermal-mechanical
Thus a methodology to
optimize the thermal and thermal-mechanical performance of
a
package system
optimized
for
Existing
design
is required to provide designs
performance,
analytical
[8,9,10,11,12,13,14]
optimized
for
yield,
and
in
reliability.
numerical
their
addressing
and
present
thermal
and
programs
form
are
not
thermal-mechanical
problems of VLSI packaging or are proprietory, and thus
unavailable [19].
Only recently, a special program for
thermal analysis of Level l(chip) and Level 2 (boards and
modules) VLSI packaging structures and assemblies, called
Packaging
Thermal
implemented
in
Calculator
the
[15,16]
Electronic
was
developed
Packaging
and
Laboratory,
University of Arizona. An extended version of that program,
Packaging
development
Thermal-Mechanical
[17].
The
Calculator,
present
work
is
shows
under
an
6
alternative/parallel
effort
to
develop
and
implement
a
thermal/mechanical modeling/simulation tool for Level 1 and
Level 2 VLSI packaging.
It is based on a general nonlinear
code ANSYS [11] that coupled with a specially developed
interface program will provide a tool optimized for thermal
and thermal-mechanical (thermally induced stress) modeling
of VLSI packaging.
This user friendly tool, called ANSYS
Packaging Thermal-Mechanical Calculator (APTMC), leads an
analyst/designer
through
the
process
of
creating
appropriate thermal and thermally induced models and other
operations necessary to run ANSYS.
capabilities:
1)
ease
in
It has .the following
communicating
with
the
user
through a menu-driven interface I/O, 2) includes typical
features of packages like leads, pins, contacts, etc,
3)
an internal databank of thermal and mechanical parameters
such
as
density,
thermal
conductivity,
specific
heat,
Young's modules, Poisson's ratio, coefficient of thermal
expansion,
heat
exchange
modes
applicable
to
packaging
problems, and a library of analyzed structures, and
results
from
thermal
analysis
used
as
input
data
4)
for
structure analysis to obtain thermal and thermally induced
displacement, stress and strain fields.
The thesis will proceed as follows: first, the use
of ANSYS for thermal modeling/simulation will be discussed
7
and procedures to perform thermal and thermally induced
stress
modeling/simulation
of
VLSI
packaging
will
be
identified (chapter 2). Chapter 3 will focus on the program
structure
of
APTMC
and
techniques used
in the. program
development. In chapter 4, implementation of APTMC on DEC
VAX
11/780
mainframe
computers
will
be
discussed,
and
examples of thermal and thermally induced stress analysis
of VLSI packages will be given.
the
program
evaluation.
That will be followed by
Summary
conclude the main part of the thesis.
and
conclusions
will
CHAPTER 2
USE OF ANSYS FOR THERMAL MODELING/SIMULATION
2.1. Introduction
The
ANSYS
computer
program
is
a
large-scale,
general purpose numerical code for the solution of several
classes of engineering problems.
The matrix displacement
method of analysis based upon finite element method (FEM)
[Appendix
library
E]
of
is
employed
available
throughout
finite
the
elements
program.
numbers
The
more than
twenty for heat transfer analyses, and forty for structural
analysis.
the
This variety of elements gives the ANSYS program
capability
of
analyzing
two-
and
three-dimensional
thermal and structural systems. Both linear and nonlinear
heat transfer modes are used for the thermal systems. Loads
for
heat
transfer
generation,
convection
temperatures.
the
analyses
and
include
radiation,
internal
and
stresses,
strains
and
structures under the action of applied loads.
analysis
structural
specified
The structure analysis is used to solve for
displacements,
thermal
heat
can
analysis.
plastic conditions.
be
used
as
Capabilities
input
forces
in
Results from
data
include
for
the
elastic
and
Free or fixed boundary conditions can
be specified as well as initial displacements.
An engineering problem is usually solved in three
8
9
phases:
1)
preprocessing,
2)
solution,
and
3)
postprocessing. Table 2.1 shows these phases pictorially
along
with some of the operations in each phase.
The
solution phase refers to FEM. The ANSYS main routines and
analyses types associated with these phases as applied to
thermal/mechanical problems are shown in Table 2.2.
PREP7
is
used
for
the
majority
of
all
Pile
preprocessing
operations. This file prepares all data necessary for the
solution.
In
capability,
addition to
the extensive
material definitions,
mesh generation
and loading conditions
can also be prepared. POST27 is used for the majority of
all postprocessing operations. Once the solution phase has
j
been
completed,
the
user
may
progress
through
various
postprocessing steps.
2.2 Element Library. Material Characterization.
The
utilizing
approach
the
to
implement
existing
element
the
PREP7
library.
depends
on
Successful
selection of a proper element from the library and thorough
understanding of the material characterization will result
in adoption of realistic thermal and thermal mechanical
models.
2.2.1 Element Library
Table 2.1 Typical Phases of Analysis.
PREPROCESSING PHASE
MESH GENERATION,
GEOMETRY DEFINITIONS,
MATERIAL DEFINITIONS,
CONSTRAINT DEFINITIONS,
LOAD DEFINITIONS
SOLUTION PHASE
ELEMENT MATRIX FORMULATION,
OVERALL MATRIX TRIANGULARIZATION,
TEMPERATURE CALCULATIONS,
DISPLACEMENT CALCULATIONS,
STRESS CALCULATIONS, ETC.,
POSTPROCESSING PHASE
POST
POST
(FOR
POST
POST
SOLUTION OPERATIONS,
DATA PRINTOUT,
REPORTS)
DATA SCANNING,
DATA PLOTS
11
Table 2.2 Main Routines and Analysis Types as Applied to
Thermal/Mechanical Problems.
PREPROCESSOR
ANALYSIS TYPES
PREP7
ANALYSES TYPES (KAN)
(General Mesh Generation 0 -Linear and Nonlinear
and Model Definition)
Static
PREP6
(Additional Transient
Boundary Condition
PREP4
(Piping Mesh Generation
and Related Model
Definition
Printout)
POSTPROCESSOR
P0ST1,29,3<1
(Tabular
Printout,
Spatial Plots)
-1 -Heat Transfer
4 -Nonlinear Transient
Dynamic
5 -Linear Transient
Dynamic
P0ST26,28
Tabular
Graphic Plots)
POST27
(Solution
Combinations)
12
Table 2.3 gives a summary of the available elements
used for thermal/mechanical modeling. The table lists the
element identification number (STIF NO.), the name (NAME),
the number of dimensions (DIM), the number of degrees of
freedom per node (DOF), and the number of nodes (NODES).
Elements are referred to as STIFn, where n is the library
identification
dimensional
number.
or
ANSYS
models
three-dimensional,
may
be
either two-
depending
upon
the
element types used. Table 2.4 classifies the elements into
various
categories
to
aid
the
user
in
appropriate element for a given analysis.
selecting
an
The most useful
elements for thermal and thermal/mechanical models will be
mentioned below.
The isoparametric thermal
solid
(STIF70)
used to
create the conduction model, has three-dimensional thermal
conduction
capabilities.
The
element
has
eight
nodal
points with a single degree of freedom, temperature, at
each
node.
The
dimensional,
analysis.
should
be
(STIF45).
element
is
applicable
to
a
three-
steady-state or transient, thermal (KAN=-1)
For the thermal-stress
replaced
by
an
procedure, the element
equivalent
structural
element
Element surfaces have convection capabilities.
The convection link (STIF34) is a uniaxial element
with
convection abilities.
This element is applicable to
13
steady-state or transient thermal (KAN=-1) analysis. The
radiation link (STIF31) is a uniaxial element which defines
the radiation heat flow rate between two points in space.
Each
nodal
point
temperature.
has
a
single
degree
of . freedom,
The radiation element is applicable to a two-
dimensional or three-dimensional steady-state or transient
thermal
(KAN
=
-1)
analysis.
The
emissivity
may
be
temperature dependent. The radiation element can be omitted
for
the
thermally
dimensional
induced
conducting
stress
procedure.
bar (STIF33)
used
The three-
to create the
leads/pins model is a uniaxial element with the ability to
conduct heat between its nodal points.
The element has a
single degree of freedom, temperature, at each nodal point.
The
conducting
bar
is
applicable to
a
steady-state
or
each
of
transient thermal (KAN= -1) analysis.
2.2.2 Material Characteristics
The
material
properties
ANSYS are given in Table 2.5.
used
by
element
Default options may be used
to reduce the amount of material property data input. If
the following material labels are not defined, or if the
labels are defined with a zero property value, the defaults
are as follows:
EY and EZ
(Young's modules) default to
EX; ALPY and ALPZ (coefficients of thermal expansion)
Table 2.3 Element summary table used for thermal and
thermal/mechanical analysis.
STIF
NODES
DOF
DIM.
NAME
NO.
3
1
TO
6
4
SURFACE EFFECT ELEMENT
6
2
2 OR 3
1
RADIATION LINK
31
2
2
1
32
2-D THERMAL BAR
2
3
1
33
3-D THERMAL BAR
2
2 OR 3
1
34
CONVECTION LINK
3 OR 4
2 OR 3
1
37
CONTROL ELEMENT
2
2 OR 3
1
39
NONLIN. FORCE-DEFL. ELEM.
1
2
2 OR 3
COMBINATION ELEMENT
40
5
1
2 OR 3
TRANSV. THERMAL SHELL
47
1
4
2
55
2-D ISOPAR. THERMAL SOLID
1
4
57
ISOPAR. QUAD. THERMAL SHELL 3
2
67
2
4
2-D THERMAL-ELEC. SOLID
3
2
2
68
THERMAL-ELECTRIC LINE
8
3
2
THERMAL-ELECTRIC SOLID
69
8
3
1
70
ISOPAR. THERMAL SOLID
OR
2
3
71
LUMPED THERMAL MASS
1
1
4 TO 8
77
2-D MULT-NODE THERMAL SOLID 2
1
8 TO 16
89
16-ND ISOPAR. THERMAL SHELL 3
3
20
90
2 0-ND ISOPAR. THERMAL SOLID
1
Table 2.4
Thermal and thermal/mechanical element types used
for 2- and 3-dimensional systems.
Two-Dimensional
Line Elements
STIF31
STIF32
STIF34
STIF40
Area Elements
STIF55
STIF67 (E)
STIF77
Volume Elements
Point Elements
STIF37 .
STIF39
Three-Dimensional
STIF31
STIF33
STIF34
STIF40
STIF68 (E)
STIF6
STIF47
STIF57
STIF69 (E)
STIF70
STIF89
STIF90
STIF71
STIF71
NOTE: (E) stands for the electrical capabilities.
16
Table 2.5 Material properties
Property
Units
EX
EY
EZ
ALPX
Force/Area
Force/Area
Force/Area
Strain/Temp
ALPY
Strain/Temp
ALPZ
Strain/Temp
NUXY
NUYZ
NUXZ
DENS
Mass/Vol
Heat
C
Description
Young's modules in x direction
Young's modules in y direction
Young's modules in z direction
Coefficient of thermal
expansion in x direction
Coefficient of thermal
expansion in y direction
Coefficient of thermal
expansion in z direction
Poisson's ratio
(relates x strain to y strain)
Poisson's ratio
(relates y strain to z strain)
Poisson1 s ratio
(relates x strain to z strain)
Mass density
Specific heat
Mass*Degree
Heat*Length
KXX
Time*Area*Degree
Heat*Length
KYY
Time*Area*Degree
Heat*Length
KZZ
Time*Area*Degree
Heat
HF
Thermal conductivity in x
direction
Thermal conductivity in y
direction
Thermal conductivity in z
direction
Film coefficient
Time*Area*Degree
17
default
to
ALPX;
KYY
and
KZZ
(thermal
conductivity)
default to KXX; NUYZ and NUXZ (Poisson's ratio) default to
NUXY.
EX or KXX must be input with non-zero values.
NUXY
defaults to 0.3 if the label is not defined.
If the temperature dependent condition is involved,
we can define all material properties in terms of a fourth
order polynomial as a function of temperature,
Property(T) « C0 + CX(T) + C2(T)2 + C3(T)3 + C4(T)4
For this case, only the coefficients need to be defined.
2.3 Thermal and Thermally Induced Stress Analysis
Procedure.
The PREP7 preprocessor routine of ANSYS is used to
prepare
the
data
thermal/mechanical
for
the
analysis.
ANSYS
It
thermal
consists
of
and
several
modules. The following procedure is a guide for defining
data for a basic analysis.
in
any
logical
suitable.
function
available.
order,
Since commands may be inputted
other
procedures
may
be
equally
There now follows a short description of each
concentrating
on
the
features
that
will
be
The square brackets [] represent commands that
are used for that step.
2.3.1 Thermal Analysis Procedure
18
The
following
preprocessor
for
steps
thermal
assume
analysis
that
the
is selected
PREP7
with the
/PREP7 command.
1. Define initial analysis data.
1. Select analysis type [KAN,—] (see Table 2.2).
2. Select element type [ET,—] (input appropriate STIF
number; see Table 2.3).
2. Select analysis options [TREF,--] (absolute temperature
values; 460° for Fahrenheit system and 273° for centigrade
system).
3. Define real constant value [R,—] (defines the cross
section
area
parameter
of
pins/leads/contacts
and
the
radiation parameter such as effective radiation area, shape
factor, emissivity, and Stefan-Boltzmann constant).
4. Define linear material property values [KXX,—], [C,-],
and [DEN,—] retrieved from internal databank (see Table
2.5).
5. Generate model geometry.
1. Define coordinate system [CSYS,—] (coordinate system
type: 0: Cartesian, 1: cylindrical, and 2: spherical).
2. Define nodes [N,—] (generate a node by defining a
previous node and subdivision length), [NGEN,—] (generate
additional lines, areas or volumes of nodes from a given
node
pattern
by
defining
subdivision
length,
beginning
19
node,
ending
node,
node
numbering
increment
and
total
number of node repetitions).
3. Assign type reference number [TYPE,—] (has the same
reference number as the element type in step 1*2), real
constant
set
reference
number
[REAL,--] (has
reference number as in step 3),
and
the
same
material reference
number [MAT, — ] (has the same reference number as in step
4) to the elements that are to be generated.
4. Generate elements [E,—] (define element connection
by
defining
each
node
numbering
which
depends
on
the
element type: refer to Table 2.3), [EGEN,—] (generates
additional elements from a given pattern which consists of
any number of previously defined elements), and [EDELET,—]
(delete the elements from the model; deleted elements are
replaced by blank elements).
6. Repeat step 3 to step 5 to create the geometry.
7. Begin load step data.
1. Set number of iterations and print post data controls
[ITER,—] (define number of iterations within load step;
assign
a
negative
sign
for
time
procedures if it is to be necessary;
frequency
(lrprint
every
step
optimization
define the printout
iteration,
2:every
second
iteration) ).
2.
Set
time
value
in
seconds
[TIME,time]
if
time
20
dependent analysis (transient) is used (time represents the
end of load step).
3. If more than one iteration is defined, select ramp or
step
boundary
condition
change
[KBC,—]
(0:loads
are
linearly interpolated for each iteration from the previous
load step to present load step, 1: loads are step changed
at the first iteration of the load step).
4. Set reaction force output key [KRF,—] if reaction
forces are to be printed or postprocessed (0: no heat flux
calculation).
8. Define thermal constraints and loads.
1. Define temperature constraints [NT,—] (define the
beginning node and ending node at which temperature will be
assigned, and constant temperature value).
2. Define nodal convections [CV,—] (define the first,
second,
third
and
fourth
node
on
convection
surface;
additional convection surface can be specified by defining
the increment number ), if convection face is not unique,
use
alternate
element
convection
loads [EC,—] (defines
specified convections on element faces).
9. Define temperature of internal heat generation loads.
If internal heat generation is to be used, set key [KTEMP,-] (
0:
use
internal heat
nodal
internal
heat
generation to zero).
generation,
-1: set
Define internal heat
21
generation rates [Q,—] (define power : watts).
heat
generations
are
generations [QE,—].
defined,
issue
to
be
used,
define
If element
element
heat
(If more than one load step is to be
LWRITE
including the last.
command
after
each
load
step,
The LWRITE command can be omitted if
there is only one load step.)
10. Write analysis file [AFWRIT,—].
27 default.
Data written to FILE
Exit PREP7 by issuing FINISH command.
Reenter
PREP7 to continue the thermally induced stress analysis by
issuing the /PREP7 command followed by the RESUME command.
2.3.2
Thermally Induced Stress Procedure.
Structural
solutions
based
temperature distributions may be
analyses
in
series.
The
first
upon
calculated
solved with two ANSYS
analysis
solves
for the
temperature distribution within the model from the given
thermal
boundary
conditions.
Temperature
data
sets
are
consecutively written on FILE4 (temporary file) for each
iteration of the thermal analysis.
thermal
analysis
may
The
between
the
from
the
be directly inputted to any ANSYS
structural analysis (see [KTEMP]).
used
File4
thermal
analysis
The same model may be
and
the
structural
analysis, but thermal element types should be converted to
structural element types in the structural analysis.
The
22
following
steps
assume that
the PREP7 preprocessor for
structure analysis is selected with the /PREP7 command.
1. Define the RESUME command to reset the core data as it
was.
2. Define initial analysis data.
1. Select analysis type [KAN,—] (see Table 2.2).
2. Select element type [ET,—] (define 45 for structure
analysis).
3. Select the source of the temperature load [KTEMP,—]
(define where the temperature loads are to be found: 0: set
all
temperature
loads
to
uniform
temperature,
-3:
use
previous temperatures as load step).
4. Begin load step data.
1. Set number of iterations and
print and post data
controls [ITER,—] (section 2.3.1).
2. Set period of time value in seconds [TIME,—] if time
dependent analysis (transient) is used (section 2.3.1).
5.
Define
which
displacement
displacement
is
loads [D,—] (beginning
to
be
specified,
node at
direction
of
displacement (UX-x coordinate, UY-y coordinate, and UZ-z
coordinate), displacement value, end of node at which
displacement is to be specified, increment of node
numbering).
6.
Write
analysis
file
[AFWRIT,—].
Data
written
to
23
FILE27, default.
Exit PREP7 by issuing FINISH command.
The /PREP7 command followed by the RESUME command is issued
to reenter PREP7 to continue with the thermally induced
stress analysis.
2.4 Conclusion
Thermal,
and
thermally
induced
procedures as applied to VLSI-based
identified.
As
can
be
stress
analysis
packaging have been
concluded
from
the
previous
discussion, it is obviously tedious for the user to create
or modify the ANSYS preprocessing file.
friendly
interface
modeling/simulation
THERMAL/MECHANICAL
is
necessary
efforts.
CALCULATOR
in
Therefore, a user
order to
The
ANSYS
(APTMC)
guide
the
PACKAGING
following
the
described thermal and thermally induced stress procedures
will construct the various commands of the preprocessor
(PREP 7) through the following techniques:
1) construction
of ANSYS command using string process, and 2) creation of
dynamic
data
structure,
and
structure
3)
application
4) data type conversion.
of
A
recursive
menu-driven
interactive I/O mode and an internal EDITOR will assist the
user
in
creating/modifying
appropriate
thermal
thermally induced models of VLSI packaging structures.
and
CHAPTER 3
ANSYS PACKAGING THERMAL/MECHANICAL CALCULATOR (APTMC)
3.1. Introduction
ANSYS
Packaging
Thermal/Mechanical
Calculator
(APTMC)is an interface program developed for constructing
the preprocessor of ANSYS and specially designed to handle
thermal and thermally induced stress modeling/simulation of
VLSI
packaging
friendly
tool
structures
leads
a
and assemblies.
designer through
the
This userprocess
of
creating appropriate thermal and thermally induced stress
models and other operations necessary to run ANSYS.
APTMC has been written mainly in PASCAL.
PASCAL
programs tend to be more suitable than the other program
languages
primarily
because
of
following
advantages: 1)
strongly typed characteristic, 2) capability of structured
programming, 3) point variable capability, 4) application
of recursive procedure, and 5) richer set of data type.
For
strongly
typed
language,
type conversion
occurs by
converting a value from one type to another and conversion
does not occur by viewing the representation of a value as
a different type.
through
Any required type conversion occurs only
predefined
incompatible
types
functions.
can
be
Errors
avoided.
caused
by
Therefore
the
development of strongly typed language makes it difficult
24
25
to write a bad program. Experiments also have shown that
strongly
typed
language
reliability [18].
increases
Moreover,
program
clarity
PASCAL facilitates
writing
structured programs that are easy to maintain and
contain few initial errors.
and
that
Futhermore, the dynamic data
structure can be implemented by using
point variables.
Finally, the recursive technique makes it easy and simple
to develop error trapping and complicated loop control.
Under the VAX/VMS system, the PASCAL and FORTRAN
languages can communicate easily with each other through
the
external
internal
subroutine call.
databank that
Two
subroutines
were implemented
of
the
in UAPTC [15]
written in FORTRAN were used in the present version of
APTMC.
3.2 Techniques Used in Developing APTMC
APTMC
provides
an
interactive
interface
between
user and ANSYS. Successful implementation is conditional
upon using the proper algorithm.
To achieve this, the
approach to developing the APTMC tool depends on utilizing
four basic techniques: 1) construction of ANSYS commands
through the string process, 2) creation of dynamic data
structure, 3) recursive structure application, and 4) data
type conversion.
26
3.2.1 Construction of ANSYS Commands Through The String
Focess
Complex
structures
of
data
show
that
command
strings used for running ANSYS are often described by a
number of attributes with a variety of data types such as
real,
string
integer,
and string.
It
is convenient to use a
process to delete, insert, or update the attributes
of a command string for running ANSYS.
the string
process
for the APTMC
The basic part of
is composed
of
eight
procedures ( note: any command names and files used in
APTMC are given in bold ):
A. initialize a string (str_new).
B. combine two strings into one string (str_cat).
C. find the character specified by an index of string
(str_cha).
D. tell whether two strings are identical (str_same).
E. copy one string to another (str_copy).
F. put a string to the dynamic data structure (str_in).
G. get a string from a dynamic data structure (str_out).
H. return the length of the string (str_len).
3.2.2 Creation of Dynamic Data Structure
A
dynamic
data
structure
is
a
collection
of
elements (called nodes) that are normally referred to as
27
records.
Unlike
an
array
that
always
contains
fixed
storage space, a dynamic data execution based on the data
storage requirements of a program
allows for expansion or
contraction, if necessary.
Because some input parameters from user will affect
the command creation of ANSYS, it is necessary to update
command strings that are constantly changing.
If these
elements (nodes) were maintained in an array, it would be
necessary to
move
all
records that
follow a
new
input
command in order to make room for the new input record in
the array.
This would require using a loop to copy the
data
for
record
dynamic
data
command
record
each
structure
(not
a
command to the next
is
used
command)
instead,
can
array. If
the
simply
new
be
a
input
inserted
between two existing commands with a minimum of effort.
Dynamic data structure is extremely flexible.
described
above,
it
is
relatively
easy
to
add
As
new
information by creating a new node and inserting it between
two existing nodes.
It is also relatively easy to modify
dynamic data structures by removing or deleting an existing
node.
This is more convenient than modifying an array of
records, where each record is in a fixed position.
There are four dynamic data structures:
stacks, queues, and trees.
lists,
The linked list of a simple
28
list chosen, as the data structure to implement the APTMC,
is a sequence of nodes in which each node is linked or
connected to the node following it. A list with three nodes
is shown in Figure 3.1.
Each node in the figure has two
fields: the first field contains data ( KAN,-1 , KAN, , and
1 along the first item) and the second field is a pointer
(represented
element.
by
an
arrow)
directing
to
the
next
list
The ordering of the data (a record) in the list
representation
is
identified
by
the
point.
represents successor of the current data.
The
point
In addition, we
must declare a pointer variable directing to the first list
element or list HEAD.
Notice that the last field (TAIL)
has no successor (point) to next field.
Using this way, a
sequence of data (record) can be identified. In general
terms, we also can think of dynamic data structure as a
mathematical model with a collection of operations defined
on that model.
In order to implement a linked list using pointer
variables, we must declare a record with at least one field
that is a pointer.
The record type INFORMATION declared
below describes a node in the list of input command file.
TYPE
STRING
=
INFOPOINT
«
INFORMATION =
VARYING [80] OF CHAR;
AINFORMATION;
RECORD;
COMMAND
: STRING;
TITLE
: STRING;
29
HEAD
TAIL
KAN,-1
ET,1,70,,,,,,1
KAN,
1
Figure 3.1
TOFFST,
5
Linked list
TOFFST,273
3
30
REFERENCE :
INTEGER;
LINK
INFOPOINT
:
END; {INFORMATION}
A
point
type,
INFOPOINT,
that
points
to
elements (RECORD) of type, INFORMATION, is declared.
the
Each
element of type INFORMATION contains a field named LINK
that is also type INFOPOINT which can be used to connect
two records.
The above declaration is circular in that the
record
INFORMATION
type
INFORMATION.
Each
RECORD
appears
in
the
in
the
list
declaration
contains
of
data
as
follows:
1. COMMAND:
A string linking many parameters together
i
through string processing (refer to KAN,-1 , ET,1,70,,,, ,
and TOFFST,273 in Figure 3.1).
2. TITLE: A string which is used as a key to data search
(refer to KAN, , ET,,,,,,, , and TOFFST, in Figure 3.1).
3. REFERENCE: An integer which is used as the second key
to data search (refer to 1, 5, and 3 in Figure 3.1).
The dynamic data structure can be implemented by
applying the basic techniques to the program.
A CREATELIST
procedure is created using operations on a dynamic data
structure
INFORMATION.
The
operations
performed
INFORMATION follows:
1. Create the head of the list (CREATEHEAD)
on
the
31
2. Create a new node for the List (CREATENODE)
3. Link the node to the list (CREATELIST)
4. Store the list to the file (FILELIST)
3.2.3
Recursive structure Application
The recursive structure is the process of solving
problems which include the error trapping and complicated
loops for APTMC.
flexibility.
It takes advantages of simplicity and
In the error trapping case , the original
problems loop can decompose into simple recursive procedure
which
usually
procedure,
is
which
implemented
enables
by
the
loop.
error
This
trapping
trailing the loop, makes the program simple.
recursive
to
avoid
To modify the
old data, the program has to trace each input from the user
to
change
the
parameters
from
parameters
as
dynamic
data
the
data
structure,
structure,
I/O
formats.
and
to
to
retrieve the
displace
Recursive
the
structure
procedure makes it easy to analyze and to maintain such
complicated loops.
3.2.4 Data Type Conversion
When operands of different types, such as real,
integer, character or string, appear in expressions, they
should
be
converted
to
a
common type
according to the
32
requirement
strongly
of
typed
automatically
the
expression.
language,
transformed
Because
the
to
PASCAL
conversion
the
type
that
is
cannot
is
a
be
needed.
Simple conversions, such as converting a character to a
integer, have been constructed in the main program.
In
addition, the batch command file is created by strings.
Some operands of strings need to be converted into numeric
type, integer and real number, to proceed specific numeric
operations. These two procedures which convert
a string
into a real or an integer are implemented in one module
(TERM.PAS) [APPENDIX C].
3.3 Program Structure
The APTMC interface supports a number of functions
(as mentioned above) at each level of command creation in
the
design
sequence.
hierarchy.
A
functions of
design
APTMC
is
Design
flow
shown
proceeds
diagram
in
in
a
top-down
summarizing
Figure
3.2.
major
Interface
system design using APTMC can be divided into two sections
: build a NEW MODEL, or READ/EDIT the OLD MODEL from the
library.
The first decision to be made is whether a NEW or
OLD MODEL will be constructed.
If the NEW MODEL is chosen, the specifications will
be obtained from the input to create a new model.
33"
APTMC
PROGRAM
1
MAIN
MENU
NEW MODEL
OLD
MODEL
T
INITIALIZATION
-ANSYS COMMAND COPY
-DYNAMIC DATA
STRUCTURE
READ
=x=
DATA TYPE
CONVERSION
EDIT
INITIALIZATION
CREATE THERl-IAL MODEL
-ELEMENT GENERATION
-MATERIALS
-INITIAL CONDITIONS
-BOUNDARY CONDITIONS
-VERIFICATION OF
PARAMETER
DATABANK
HEAT
TRAHSFER
MODE
VERIFICATION OF
MODEL
OPTION
STRING
PROCESSING
INITIALIZATION
- TERMINAL
THERMALLY IHDUCED
STRESS MODEL
-ANALYSIS TYPE
CHANGE
-BOUNDARY CONDITIONS
VERIFICATION OF
PARAMETER
RUN
ANSYS
OUTFUT
Figure 3.2 APTMC program structure
34
INITIALIZATION includes COPY OP
from the prepared
following
CONDITIONS,
input.
and
OF ANSYS
file, and creation of the heading of
DYNAMIC DATA STRUCTURE.
model
BASIC COMMANDS
The next step is to create a new
ELEMENT
GENERATION,
BOUNDARY
CONDITIONS
MATERIALS,. INITIAL
based
on
the
user
If the input from the user does not conform to the
restrictions of the APTMC, the command can be modified and
the user input must be repeated through the VERIFICATION
OFPARAMETERS.
At
the
same
time,
the
DYNAMIC
DATA
STRUCTURE is developed and STRING PROCESSING is performed.
Finally,
the
THERMALLY
INDUCED
STRESS
MODEL
will
be
followed depending on the user's choice.
The program will
automatically
is necessary to
create the
command
continue the structure analysis.
which
The BOUNDARY CONDITIONS,
such as fixed or free load, will be accessed from the user.
From this data, the APTMC interface establishes the input
file PREP7 for the ANSYS.
If an OLD MODEL is chosen from the library, the edit
will access and display the geometry descriptions, material
definition and heat transfer mode from the dynamic data
structure
of
library
through
the
VERIFICATION
OF
MODEL
which will take advantage of the data type conversion to
change the string data type to an appropriate data type
(real or integer).
Then the user should choose an OPTION
35
to change the parameter.
INITIALIZATION
and
The change will be done by the
VERIFICATION
OF
PARAMATER
and
resulting model will be redisplayed on the screen.
the
The
user can continue changing any parameters until exit OPTION
is selected.
The last step is to run ANSYS.
The program has a built-in EDITOR that allows the
user to make changes in the library file.
EDITOR
,which
communicates
with
process a text using screen.
user
The screen
effectively,
can
All of main parameters such
as dimensional definition, material definition,
boundary
condition and initial condition will be displayed on screen
by fifteen identification numbers[APPENDIX A].
can choose
The user
one identification number to proceed second
level editor which will clear the screen and display the
details of the parameters.
changed, deleted, or added.
The parameters then can be
After the second level editor,
the main parameters of the new model will be displayed.
Such a screen-based implementation allows the user to save
engineering time and to handle the editor easily.
The APTMC interface contains:
a) a main program
(INTERFACE.PAS) to define the problem and to create the
model,
b) two modules which make up the heat exchange mode
(CONV.FOR
and
FCONVE.FOR),
material data (DATABANK.PAS)
c)
one module to access the
and two modules (REFRESH.PAS
36
AND CHANGE.PAS) to edit/read library models.
3.4. Conclusion
ANSYS Package Thermal/Mechanical Calculator (APTMC)
is a thermal and thermally induced stress analysis program
specially
optimized
packaging.
general
for
Level
1 and
Level 2
VLSI-based
It serves as interface program for ANSYS, a
purpose
non-linear
analysis
program.
APTMC
includes three basic blocks: 1) construction of new model,
2)
editor,
parameters
and
and
application
to
3)
an
internal
thermal/mechanical
packaging
databank
models
problems.
A
of
for
user
physical
ease
in
friendly
»
interface has been developed to meet the needs of thermal
and thermally induced stress analysis of Level 1 and Level
2 VLSI packaging.
APTMC creates various commands of the
preprocessor (PREP7) through following four techniques: 1)
construction of ANSYS commands through string process, 2)
creation
of
dynamic
data
structure,
3)
application
recursive structure, 4) conversion of data type.
of
CHAPTER 4
THERMAL MODELING/SIMULATION OF LEVEL 1 AND LEVEL 2 VLSI
USING APTMC
4.1 Defining The Problem: Model Generation and
Preparation of Input Data.and I/O Formats
4.1.1 Model Generation and Preparation of Input Data
All the data is inputted through an interactive
mode.
A desired model created by the APTMC is performed by
providing
initial
dimensions
and
and
boundary
materials
conditions,
of
the
structure,
specifying
power
dissipating and generating conditions. Some guidelines for
data input descriptions are provided below:
4.1.1.1 Mesh Generation
(A). Each dimension X, Y, Z has to be divided into a number
of subdivisions NX/ NY, NZ , respectively. Later the user
will be asked to input values of all these increments in an
interactive
dimensions
way.
are
The
procedure
specified.
After
will
the
continue until
last
increment
all
is
accessed from the standard input, the node structure will
be as for example in Figure 4.1. Nodes are numbered in a
uniquely predetermined way.
The first nodal point (node
number 1) is always at the left top front position.
The
node counting along X-direction proceeds from the left to
right by adding 1 to the left node number.
The maximum
number of nodes, which can be defined along the X-direction
37
38
204
LoT
2104
2001
4002
Figure 4.1 Sample of node numbering in the APTI1C
39
is up to 100.
The node counting along Y-direction proceeds
from front node to backward node by adding 100 to the front
node numbering.
defined
The maximum number of nodes, which can be
along the Y-direction,
is up to 20.
The node
counting along Z-direction proceeds from up node to the
bottom node by adding 2000 to the upper node numbering.
The maximum number of nodes, which can be defined along the
Z-direction, is up to 25.
Using this rule, X-direction
adjacent node can be found by adding 1 to any random node.
Y-direction adjacent node can be found by adding 100 to any
random node.
adding
2000
Z-direction adjacent node can be found by
to
any
random
node.
Each
represented by a combination of eight nodes.
structure
will
be
created
as
in
Figure
element
is
The element
4.2; then
the
procedure will automatically move to the next step.
(B). The user must then
the
elements
(thermal
are
specify the element material.
filled-in
conductivity,
with zero
thermal
material
expansion
If
constant
coefficient,
specific heat), the program will automatically delete the
element from the structure. Therefore, any shape of the
structure can be constructed using this procedure.
The
user only needs to define the beginning and ending element
with a given material.
Groups of elements must be
entered
Figure 4.2 Sample of element numbering in the APTMC
41
in an increasing order.
This procedure will proceed until
the last element is specified.
4.1.1.2 Unit System
In
order
to
use
the
data
from
the
material
databank, SI system with unit length in micrometers can
only be used.
If databank is not used, then any unit
sysytem can be used.
4.1.1.3 Materials
Each material has an assigned identification number
and is characterized in terms of thermal parameters such as
density, thermal conductivity, specific heat, coefficient
of
thermal
expansion
and
physical
parameters
such
as
Young's moduli of elasticity and Poisson's ratio. If the
free material is chosen, the user has to define all the
parameters? otherwise, the element will be deleted from the
structure.
4.1.1.4 Boundary Conditions
Boundary
connections
(like
conditions
include
leads/pins/contacts
all
external
and
constant
temperature connections) and heat exchange/transfer modes
(natural convection, forced convection and radiation). For
structure analysis, free or fixed boundary conditions can
be specified as well as initial displacements.
42
After specifying the number of leads/pins/contacts,
if any, the user should define the connections between any
two
nodes
and
the
cross
section
area
of
the
leads/pins/contacts.
For the convection case, the user has three choices
in creating the convection surface: two by constructing the
top and bottom convection surface automatically and one by
user specification.
entered
Convection coefficients can either be
by the user or calculated through heat exchange
subroutine.
The heat exchange mode for convection includes
both free convection over horizontal or vertical plates and
forced air cooling over plates.
For the radiation case, the radiation link is a
uniaxial element which defines the radiation heat flow rate
between two points in space.
The user has to define node
number and input all parameters (shape factor, emissivity,
radiation surface area).
Power rate (W/um3) can be entered
repeatedly for each element.
4.1.2
I/O Formats
APTMC
leads
the
commands.
is
user
a
menu-driven
through
the
interactive
complete
program.
sequence
of
It
I/O
The program does not allow the user to input
values that are not on the menu.
The entire menu of APTMC
43
r
is shown in appendix A.
It is not necessary to use the
entire menu in the actual input procedure.
4.2 Implementation of APTMC
The APTMC system meeting the criteria of ANSYS is
being
implemented
laboratory,
ECE
in phases at the Electronic Packaging
Department,
University
of
Arizona,
to
provide VLSI packaging design simulation capability for any
rectangular shapes.
11/780
The hardware is supported on a VAX
computer system
memory, and
containing 10 Meg bytes of
main
500 K bytes of virtual memory. A VT100 video
display terminals are connected to the VAX 11/780 system.
Translation from descriptions of user input to required
formatted command for simulation of ANSYS is performed by
the design procedure discussed in Chapter 3. Modification
for simulation of ANSYS is executed by the EDIT procedure.
4.3. Examples of thermal simulation of selected
structures of VLSI packages
Test
examples,
problems utilize a variety
the
results
of
thermal
of
packages. As
analysis
of
three
different packaging configurations are given below.
4.3.1 Thermal simulation of A Forty Pin Plastic Package
The first example shown in Figures 4.3
and 4.4
**- HEAT
SPREADER
LEADFRAME
Figure 4.3
Schematic diagram of 40-pin DIP plastic
package.
| hc (TOP PLATE)
MOLDING
COMPOUND
LEADFRAME.
.CHIP
HEATSPREADER
AIR GAP
TEFLON
COPPER RUNS
PC
F i g u r e 4.4
BOARD
F o r t y p i n D I P m o d e l u s e d i n APTMC
46
refers to 40-pin
plastic package plugged
into a single
teflon DIP socket soldered to a horizontal printed circuit
board.
Use of symmetry was utilized to minimize the total
number of node count.
Comparisons were made with UAPTC
[15] in free convection cooling conditions. The maximum
junction temperature for power dissipation of 0.5 watts was
61 *c for the simulation of UAPTC. The result of APTMC is
in excellent agreement with the value of 59.5 'C.
4.3.2 Thermally Induced Displacements of A Forty Pin
Plastic Package
Results from thermal analysis are used as input
data for structural analysis (elastic deformation).
The
model adapted for a package as in section 4.3.1, but with a
different chip-to-silicon area ratio, is chosen in Figure
4.5.
The bottom surface of the structure is kept with
fixed boundary conditions in x, y, and z coordinates.
The
left side surface is kept with fixed boundary conditions in
x and y coordinates.
The presented results refer to a
cross-section
(x-z)
possible
comparison
for
of
the
structure,
with
the
thus
Packaging
making
it
Mechanical
Calculator (PMC) based on two-dimensional finite element
method.
The displacement of critical nodes are displayed
in Table 4.1.
4.3.3 Thermal Simulation of A Thirty-eight Lead Multisource
Hybrid Package
47
SILICON
COPPER
MOLDING COMPOUND
Fiaure 4 . 5 Two dimensional structure of P M C for
40-pin plastic package.
48
Table 4.1
Selected node displacements for a 40-pin plastic
package
NODE
X-DISPLACEMENT(mm)'
Z-DISPACEMENT(mm)
APTMC
PMC
APTMC
PMC .
1
0
0
0.0049
0.0048
2
0.0007
0.0007
0.0048
0.0047
3
0.0029
0.0029
0.0038
0.0037
4
0.0031
0.0032
0.0037
0.0036
5
0.0033
0.0034
0.0036
0.0035
6
0.0037
0.0038
0.0032
0.0032
7
0.0042
0.0042
0.0025
0.0025
The next example deals with a thirty eight lead,
49
The next example deals with a thirty eight lead,
multi-source hybrid in a form of a ceramic-epoxy-ceramic
sandwich[15] reported under forced-air cooling conditions.
The geometry associated with the hybrid package, and the
adapted model are shown schematically in Figures 4.6 and
4.7, respectively.
The package contains layers of ceramic,
epoxy, eight heat source on the top, and 19 leads to each
side
of
the
lower
ceramic
layer.
A
few
selected
temperatures from the computer runs are listed in Table
4.2.
The results from APTMC and UAPTC shows maximum 6.4%
temperature difference.
252 elements are needed to construct the actual
structure.
It
would take 15
perform the analysis.
CPU
time,
elements.
the
As
minutes
of
CPU time to
To simplify the structure and save
number
result,
of
elements
the
was
distances
reduced
between
to
the
162
heat
sources of the structure in APTMC model will be larger than
that in the model adopted in [15].
The rearrangement of
heat sources results in the temperature differences.
4.3.4 Thermal simulation of thermal test chip
Finally, a specially designed thermal test chip is
available for
obtaining
experimental results
response of VLSI chips [16].
of thermal
A thermal test chip was
51
TOP PLATE
|bc«0.62 * IO"'2 W/pm2-t)eq
237*
—7L_
^27 ^27,/i/ZS^
1
BOTTOM PLATE
hcs7.75 x tO-tz W/pm^-deq
(CONVECTION SURFACE TO
AIR PLUS PCB CONDUCTION
PLUS PCB CONVECTION)
Figure 4.7-
Hybrid package model used in APTMC.
52
Table 4.2.
Selected temperatures for multisource hybrid
problems.
SOURCE
APTMC TEMP (C)
PTC TEMP (C)
1
108.38
115.4
2
145.58
154.1
3
116.98
124.1
4
107.16
114.8
5
119.22
126.8
6
124.29
132.6
7
123.88
130.5
8
118.13
127.0
53
designed and fabricated at the University of Arizona as a
part
of
research
project
Research Corporation.
supported
by
Semiconductor
Layout of the test chip is shown in
Figure 4.8. It contains an array of 16 heaters and source
cells (9 mils*ll mils each).
shown in Figure 4.9.
A 40 lead ceramic package is
Silver epoxy die attach was used
along with two thin layers of gold in bonding of silicon
chip.
The thermal model is shown in Figure 4.10.
Thermal
conductivities used in the modeling were 1.4E-4, 0.315E-4,
and 9E-6
W/0C*jum
for silicon, ceramic
and silver epoxy
materials, respectively.
Thickness of 280 and 60 um were
used
the
in
the
respectively.
model
for
chip
Simulations
and
were
the
die
performed
attach
for
a
configurations with 4 heaters dissipating 0.45 W per heater
and the bottom surface
kept at 19.6 °C.
The selected node temperatures on the silicon chip
surface
are
given
in
Table
4.3.
Comparison^ with
experimental results, performed at the Electronic Packaging
Laboratory at the University of Arizona, UAPTC results and
APTMC
modeling
results
are
shown
in Table
4.4.
The
maximum steady-state temperature calculated using APTMC was
found to be 56.129°C which is in excellent agreement with
the experimental value of 57*C.
The differences between
APTMC and UAPTC result can be attribuated to slightly
54
yen
VCB
@1]
Figure 4.8
Thermal test chip layout.
410 SQ
f- tlOTC. PATENTED
BREAKAWAY NOTCH
|W.«I
.400 SQ.
»0*,01©
lM.it z aai
HO.\ LEAD
IDENTIFIER
.040* ,0tS
1
11.01
,w» i .oot
~|p(1.WS.0J)
ilo.il
.31)
n n n.n n n n n^nHiimmuiliiiM
M Oil
Figure 4.9
Forty lead ccramlc package
56
HEAT SOURCE
CONSTANT TEMPERATURE «• 19.6 *C
SILICON
SILIVEE EPOX¥
CERAMIC
Figure 4.10 The thermal model for 40-pin thermal
test chip.
57
Table 4.3. Selected node temperatures on the silicon chip
surface for the steady state thermal test chip.
NODE NUMBER OF
CHIP SURFACE
APTMC
TEMP (C)
1
56.129
2
52.969
3
44.863
4
52.779
5
51.581
6
45.307
7
44.972
8
45.362
9
45.783
Table 4.4 Maximum temperature (#C) results for
thermal test chip model.
HEATING
UAPTC MODEL
4 CENTER
HEATERS
60.2
APTMC MODEL
56.129
EXPERIMENTAL
57
~tr
59
different^ models used in both programs.
4.4 Program Evaluation
4.4.1 Readability
The
because
it
APTMC
is
organization
composed
operational procedures,
of
a
is
easy
number
to
of
understand
self-contained
each of which can be understood
without reference to another procedures.
Main concepts of
a particular procedural operation can be read easily by
referring to the text and procedure only, without resorting
to subsidiary flowcharts and written description.
Finally, it should be accepted that an inevitable
cost incurred as a result of requiring high readability is
that
programs
will
be
lengthier.
Some
increase
in
structure procedure is a small price to pay for all the
other benefits gained, especially when a program is written
only once but may be read and modified many times.
4.4.2 Flexibility
The design of APTMC gives the programmer sufficient
flexibility to be able to change or add some procedures.
Through the data type conversion procedures and dynamic
data structure, there are no .limit in a number of data type
which can be used in the program.
Any required operation
60
can be solved through such high flexibility of abstract
data type [18]. Generally, the design will provide enough
flexibility to be useful in the complicated application
domain of VLSI packaging simulation.
The implementation of APTMC includes a problem of
how
an
object
of
the new data type
is represented
by
objectives of previously existing data type and a problem
of
how
such
an
object
is
manipulated
in
operations that have been defined for it.
conform
with
By using the
data type conversion procedures and dynamic data structure,
a number of data type allow to be used in the program.
4.4.3 Simplicity
The implementation of APTMC has only
one record
type which creates the dynamic data structure. Therefore,
simplicity is achieved by avoiding complex mechanisms to
implement complicated problems.
Simplicity also reduces
the possibilities for making programming errors resulting
from misinterpretation of language features.
4.4.4 Portability
The APTMC design which depends on the video display
terminal defaulting to VT 100 enables the software of a
terminal procedure to be modified from machine to machine.
61
But this will not cause much software modification to be
distributed over a number of installations.
been
implemented
by
Moreover, all
procedures
have
standard
PASCAL
language.
Therefore, portability is easy to achieve in
different systems.
4.4.5 Efficiency
APTMC allows the user to save the simulated package
in a library of analyzed structures, any of which can be
later recalled to be simulated under different conditions
by
the
use
of
a
built-in
editor.
In
addition,
APTMC
provides design engineers with an economic and rapid method
for a model of level 1 and level 2 VLSI packaging[APPENDIX
B].
The use of APTMC can significantly reduce the time
required to construct complex models of any rectangular
shape and leads/pins/contacts.
4.4.6 Improvements of limitation imposed by ANSYS
This
section
presents
the
improvements
of
limitations for the APTMC. Both the integration time step,
which depends on the geometry and material characteristic ,
and ANSYS storage allocations, which can be added by user ,
will be considered.
4.4.6.1 Limitation of integration time step.
62
In the transient thermal analysis, the integration
time-step size is related to the "conducting length" of the
element. The larger the thermal gradient to be resolved,
the smaller both the integration time step (ITS) and the
element
"length"
should
be.
The
following
guideline
is
intended to help the user select an initial ITS for a given
model:
(ITS)£ > D/(4h)
where (ITS)j[ is the initial integration time-step size.
In
this relationship, D is the material thermal diffusivity
(D=K/pc K-thermal conductivity, p- density, and c- specific
heat) and h is the conducting length of an element in the
region over which the largest gradient occurs (usually the
length parallel to the heat flow direction of the element
adjacent to the surface).
cause
temperature
Small ITS sizes (ITS < D/4h) may
oscillations
because
of
the
high
temperature of the adjacent node.
4.4.6.2 Limitation of ANSYS Storage Allocations
The
efficiently
ANSYS
program
is
designed
to
operate
on machines having both central and auxiliary
memory capability.
The total memory required for an ANSYS
run depends upon the analysis data which is overlayed in
central memory.
Every ANSYS run
prints the memory sizes
required during various stages of the run.
The printout is
63
under the title STORAGE REQUIREMENTS and lists the amount
of central
total
memory
memory
used, the auxiliary memory used, the
used
(central
plus
auxiliary),
and
the
auxiliary memory available.
During an ANSYS run the central memory is initially
loaded
with the required
portion of the ANSYS
program.
Data is predefined to be allocated to either the central or
the auxiliary memory.
The central memory data is first
loaded and then the auxiliary memory data is loaded.
If either the auxiliary memory or central memory
cannot allocate enough space for the ANSYS running program
and data, the amount of core storage is requested with a
system
control
command.
This
information
is
inputted
through the /CORE, SCM, LCM, VM commands. The values of
input for SCM, LCM, and VM will be the maximum small core
memory, the maximum
large core memory,
virtual memory, respectively.
only the SCM parameter is used.
and the maximum
On single memory machines
The maximum VM value for
VMS system is 5000 bytes.
If the result of ANSYS running prints: "PROBLEM TOO
LARGE, MATRIX EXCEEDS NWF ROWS AT ELEMENT ", either more
core should be added or the wave front should be lowered by
remodeling or reordering.
If the wave front of the problem
cannot be lowered and the maximum amount of core is already
64
requested, the out-of-core equation solver which uses the
auxiliary may be used.
Automatic
diagnosis
checking
intrinsically exists in ANSYS
fully utilized by APTMC.
the
errors
which
has been implemented and
This diagnosis procedure is to
find the error resulting from the integration time and the
storage allocation.
When the integration time error is
trapped, an interactive mode command will be displayed to
allow
the
user
change
the
conducting
diffusivity, and transient time period.
checked
and
solved
before
the
length,
thermal
The error will be
actual
execution.
The
another diagnosis to check the storage allocation will be
done before the ANSYS file is written.
When an error ,
"PROBLEM TOO LARGE, MATRIX EXCEEDS NWF ROWS AT ELEMENT ",
occurs,
the
program
will
insert
enough space for ANSYS run.
for
the
limitation
of
a
command
to
allocate
Therefore, both improvements
integration
time
and
storage
allocation will highly promote the performance of APTMC.
4.5 Conclusions
All the data is inputted through an interactive
mode.
A desired model created by the APTMC is performed by
providing
initial
dimensions
and
and
boundary
materials
conditions,
of
the
structure,
specifying
power
65
dissipating and generating conditions.
Using the present
version of APTMC, it is possible to analyze any structure
of
composed
combinations
materials
of
which
arbitrary
can
be
rectangular
approximated
shapes,
by
• Typical
features of packages like leads, pins, contacts, etc. are
included in the description of geometry of the model.
node-numbering
convention
is
used,
which
fixes
A
the
relative location (but not the actual spatial location or
size) of each node/element.
The program has been tested
for a variety of packages and
agreement
results obtained were in
with experimental and other thermal/mechanical
analysis programs.
The program design of APTMC is easy to understand
because
it
is
operational
without
composed
procedures
reference
to
of
each
a
number
of
another
of
which can
procedures.
self-contained
be understood
Any
required
operation of abstract data type can be solved due to high
flexibility of data type conversion.
All procedures of
APTMC have been implemented by standard PASCAL language,
thus
making
systems.
portability
The
easy
built-in
to
editor
achieve
also
in
different
achieves
high
performance and efficiency in communication with the user.
Automatic diagnosis for checking the errors, which exists
in
ANSYS
intrincally,
has
been
implemented
and
fully
66
utilized.
The improvements of limitations of integration
time
storage
and
allocation
performance of APTMC.
will
highly
promote
the
CHAPTER 5
Summary and Conclusion
ANSYS
Package
Thermal/Mechanical
Calculator
(APTMC) is a thermal and thermally induced stress analysis
program specially optimized to adress the needs of Level 1
and Level 2 VLSI-based packaging.
It serves as interface
program for ANSYS, a general purpose non-linear analysis
program.
APTMC
includes
three
basic
blocks:
1)
construction of new model, 2) editor, and 3) an internal
databank
of
physical
parameters
and
thermal/mechanical
models for ease in application to packaging problems.
The
thermal and thermally induced stress analysis procedures
have
been
interface
induced
identified
has
stress
been
in
Chapter
developed
analysis
packaging (Chapter 3).
of
2.
An
for thermal
Level
l
and
user
friendly
and thermally
Level
2
VLSI
APTMC creates various commands of
the preprocessor (PREP7) through following four techniques:
1) construction of ANSYS commands through string process,
2) creation of dynamic data structure, 3) application of
recursive
structure,
interactive
modes
4)
conversion
of
data type. APTMC
include creation of a new model, and
editing an old model.
The thermal model includes material
parameters, heat transfer coefficient for convection mode,
necessary parameters for radiation, boundary conditions and
67
68
internal heat generation.
Structural modeling
can give
maps of mechanical stress for given thermal and material
conditions.
Results from
thermal analysis are used as
input data for elasticity analysis.
conditions
can
displacements.
be
specified
Free or fixed- boundary
as
well
as
initial
Using the present version of APTMC, it is
possible to analyze any structure of composed materials
which
can
be
rectangular
approximated
shapes.
by
combinations
Typical
features
of
arbitrary
of packages like
leads, pins, contacts, etc. are included in the description
of geometry of the model.
used,
which
fixes the
A node-numbering convention is
relative
location (but
not the
actual spatial location or size) of each node/element.
The
program
and
has
been tested
for
a
variety
of
results obtained and results obtained were
with
experimental
and
packages
in agreement
other thermal/mechanical
analysis
programs.
The program design of APTMC is easy to understand
because
it
operational
without
is
composed
procedures
reference
to
of
each
a
number
of
another
of
which can
procedures.
self-contained
be understood
Any
required,
operation of abstract data type can be solved due to high
flexibility of data type conversion.
All procedures of
APTMC have been implemented by standard PASCAL language,
69
thus
making
systems.
portability
The
easy
built-in
to
editor
achieve
also
in
different
achieves
high
performance and efficiency in communication with the user.
Automatic diagnosis for checking the errors, which exists
in
ANSYS
utilized.
intrincally,
The
has
been
improvements
implemented
responding
and
fully
limitations
of
integration time and storage allocation will highly promote
the performance of APTMC.
APTMC could be subjected to new modification such
as including non-rectangular shape elements, changing the
numbering of nodes to fit some special case and expanding
the material databank.
APPENDIX A
I/O FORMATS
APTMC 1.0 is a menu-driven interactive ' program.
The sequence of I/O commands can be completed through the
interactive program. The program does not allow the user to
input values that are not on the menu. In such a case, due
to "error-trapping" capabilities, the program will respond
with an error message. The user is able to restart input
data. The entire menu of a APTMC 1.0 is shown below.
***********************************************************
* ANSYS PACKAGE THERMAL & THERMAL-MECHANICAL CALCULATOR
*
* (APTMC), PASCAL INTERFACE PROGRAM FOR USE WITH ANSYS, *
* VERSION 1.0, OCTOBER 1986 WRITTEN BY JYUE-JON SHIANG *
* UNDER DIRECTION OF DR. Z.J. STASZAK,
UNIVERSITY OF *
* ARIZONA, ECE DEPT., ELECTRONIC PACKAGING LABORATORY, *
* TUCSON, AZ 85721
*
***********************************************************
***** MAIN MENU ****
1) ENTER NEW MODEL
2) READ OLD MODEL FROM FILE
3) EDIT FILE
ENTER CHOICE: ?
PACKAGE FILE NAME: ?
** NOTE: IF NEW MODEL IS BEING ENTERED, THEN THE FOLLOWING
WILL APPEAR.
I.
PREPROCESSOR FOR THERMAL ANALYSIS
TYPE OF TEMPERATURE DEPENDENCE
OF MATERIAL PARAMETERS:
1) TEMP INDEPENDENT ANALYSIS
2) TEMP
DEPENDENT ANALYSIS
ENTER CHOICE: ?
TYPE OF HEAT TRANSFER ANALYSIS:
1) CONDUCTION
2) NATURAL/FORCED CONVECTION
3) RADIATION
NOTE: EACH ANALYSIS INCLUDES ALSO PREVIOUS SELECTIONS
ENTER CHOICE: ?
70
71
CREATE MODEL
NEW MODEL MESH-GENERATION (REGULAR):
# OF SUBDIVISIONS IN X DIRECTION NX: ?
# OF SUBDIVISIONS IN Y DIRECTION NY: ?
# OF SUBDIVISIONS IN Z DIRECTION NZ: ?
ENTER VALUE OF X INCREMENT XI: ?
ENTER VALUE OF Y INCREMENT Yl: ?
ENTER VALUE OF Z INCREMENT Zl: ?
MATERIALS AVAILABLE IN DATABANK:
1) FREE MAT 16) GOLD
31) RES INK
32) SILICON
2) AIR
17) GLASS
33) SILVER
3) ALUMINUM 18) IRON
34) sio2
4) ALUMINA
19) KOVAR
35) SOLDER
5) Ausi
20) LEAD
6) BERYLLIA 21) MOLD COM 36) STEATITE
7) BERYLLIUM 22) MOLYBDEN 37) TANTALUM
8) CADMIUM
23) NICHROME 38) TEFLON
39) TIN
9) CERAMIC
24) NICKEL
10) CHROMIUM 25) NITROGEN 40) TITANIUM
41) TITANIUM
11) Cu (pure) 26) OXYGEN
42) WATER
12) Cu (194) 27) PALLAD
13) EPOXY
28) PLASTIC 43) ZINC
14) EUTECTIC 29) PLATINUM
15) GaAs
30) PHENOLIC
ENTER ELEMENT
TO ELEMENT
MAT : ?
** NOTE: IF FREE MAT. IS CHOSEN, THEN THE USER CAN DEFINE
IT BY ANY VALUE, OTHERWISE ,THE ELEMENT WILL BE DELETED
FROM THE STRUCTURE.
BOUNDARY CONDITIONS
LEADS/PINS/CONTACTS
DEFINITION :
ENTER TOTAL # LEADS/PINS/CONTACTS : ?
MATERIALS AVAILABLE IN DATABANK:
31) RES INK
1) FREE MAT 16) GOLD
17) GLASS
32) SILICON
2) AIR
33) SILVER
3) ALUMINUM 18) IRON
34) sio2
19) KOVAR
4) ALUMINA
35)
AuSi
20)
SOLDER
5)
LEAD
MOLD
COM
36)
STEATITE
6) BERYLLIA 21)
37)
BERYLLIUM
22)
MOLYBDEN
TANTALUM
7)
8) CADMIUM
23) NICHROME 38) TEFLON
9) CERAMIC
39) TIN
24) NICKEL
10) CHROMIUM 25) NITROGEN 40) TITANIUM
41) TITANIUM
11) Cu (pure) 26) OXYGEN
12) Cu (194) 27) PALLAD
42) WATER
13) EPOXY
28) PLASTIC 43) ZINC
14) EUTECTIC 29) PLATINUM
30) PHENOLIC
15) GaAs
ENTER LEADS/PINS/CONTACTS MATERIAL _ .* ?
ENTER CROSS SECTION AREA OF LEADS/PINS/CONTACTS :(um2)
ENTER THE LEADS/PINS/CONTACTS BETWEEN NODE _ AND NODE
CONSTANT TEMPERATURE :
1) BOTTOM SURFACE
2) USER DEFINE
3) NO CONSTANT TEMPERATURE
ENTER CHOICE : ?
NOTE: IF 2 IS CHOOSEN THEN THE FOLLOWING WILL APPEAR.
ENTER NODE _ TO NODE _ VALUE OF TEMPERATURE _ [oC] : ?
HEAT EXCHANGE/TRANSFER MODE ! CONVECTION
1) DEFINE THE BOTTOM SURFACE
2) DEFINE THE TOP SURFACE :
3) DEFINE BY USER :
ENTER THE CHOICE :
73
** NOTE: IF THE NUMBER 3 IS CHOSEN
** THEN THE FOLLOWING WILL APPEAR
ENTER THE NODE
NODE
NODE_, AND NODE_OF CONVECTIVE
SURFACE : ?
DO YOU WISH TO ENTER VALUE OF HEAT TRANSFER COEFFICIENT hc
•
1) YES
2) NO
NOTE: IF VALUE OF HEAT TRANSFER COEFFICIENT
ENTERED, THEN THE FOLLOWING WILL APPEAR.
IS
TO
BE
ENTER THE hc ( Watts/°c*(um2) ) : ?
ENTER THE AMBIENT/ENVIROMENT TEMPERATURE [oC] : ?
DO YOU WISH TO CONTINUE FOR ANOTHER SURFACE :
1) YES
2) NO
HEAT EXCHANGE/TRANSFER MODE : RADIATION
ENTER NODE _ OF RADIATION SURFACE : ?
ENTER THE EFFECTIVE AREA OF RADIATIVE SURFACE : ?
ENTER THE SHAPE FACTOR : ?
ENTER THE EMISSIVITY : ?
ENTER THE TARGET TEMPERATURE : ?
DO YOU WISH TO CONTINUE FOR ANOTHER SURFACE : ?
1) YES
2) NO
ENTER THE ELEMENT # PRODUCING THE POWER : ?
ENTER VALUE OF POWER DISSIPATION PER VOLUMN ( Watts/um2 ) :
74
DO YOU WISH TO CONTINUE FOR ANOTHER ELEMENT : ?
1) YES
2) NO
TYPE OF ANALYSIS:
1) STATIC (STEADY-STATE)
2) TRANSIENT
ENTER CHOICE: ?
INITIAL TEMTERATURE : ?
DO YOU WISH TO
ANALYSIS (Y/N) ?
II.
CONTINUE
WITH
THERMALLY
STRESS
PREPROCESSOR FOR THERMAL-MECHANICAL STRESS ANALYSIS
LOAD OPTIONS:
1) EXTERNAL LOADS
2) THERMAL LOADS
3) BOTH
ENTER CHOICE: ?
EXTERNAL LOADS:
ENTER # OF NODES WITH EXTERNAL LOADS:
ENTER NODE
TO NODE
LOAD: ?
BOUNDARY CONDITIONS:
1) FREE
2) FIXED
ENTER CHOICE: ?
ENTER NUMBER OF FIXED NODES: ?
ENTER FIXED NODE
TO NODE : ?
END.
INDUCED
75
******************************************************
* ANSYS PACKAGING THERMAL/MECHANICAL ANALYSIS(APTMC) *
*
VERSION 1.0, SUMMARY OP INPUT DATA
*
******************************************************
NOTE: IF EDIT A OLD
FOLLOWING WILL APPEAR.
MODEL
WHICH
IS
CHOSEN,
1 )HEAT TRANSFER ANALYSIS :
2 )VALUE OF X INCREMENT :
3 )NUMBER OF SUBDIVIION IN X DIRECTION :
4 )VALUE OF Y INCREMENT :
5 )NUMBER OF SUBDIVIION IN Y DIRECTION :
6 )VALUE OF Z INCREMENT :
7 )NUMBER OF SUBDIVIION IN Z DIRECTION :
8 )ELEMENT #
TO ELEMENT #
IS MATERIAL
9 )CROSS SECTION OF LEAD FRAME :
10)LEAD FRAME MATERIAL :
11)LEAD FRAME NUMBER :
12)DC ANALYSIS
13)UNIFORM TEMPERATURE :
14)THE ELEMENT # :
DISSIPATING POWER(Watts/um*3) :
15)CONVECTION COEFFICIENT :
PRESS CRTL C TO ABORT THE EDIT
ENTER THE CHOICE ?
ARE YOU SURE TO CHANGE THE PARAMETERS ?
( 1. YES 2. NO )?
THEN
THE
1 )HEAT TRANSFER ANALYSIS : CONDUCTION CONVCTION
PRESS —> 1 ) ADD
PRESS —> 2 ) DELETE
ENTER THE CHOICE :
1) CONDUCTION
2) CONVECTION
3) RADIATION
ENTER THE CHOICE :
HEAT TRANSFER ANALYSIS :
VALUE OF X INCREMENT :
NUMBER OF SUBDIVIION IN X DIRECTION :
VALUE OF Y INCREMENT :
NUMBER OF SUBDIVIION IN Y DIRECTION :
VALUE OF Z INCREMENT :
NUMBER OF SUBDIVIION IN Z DIRECTION :
ELEMENT #
TO ELEMENT #
IS MATERIAL
CROSS SECTION OF LEAD FRAME :
LEAD FRAME MATERIAL :
LEAD FRAME NUMBER :
DC ANALYSIS
UNIFORM TEMPERATURE :
iTHE ELEMENT # :
DISSIPATING POWER(Watts/urn*3) :
15)CONVECTION COEFFICIENT :
PRESS CRTL C TO ABORT THE EDIT
ENTER THE CHOICE ?
ARE YOU SURE TO CHANGE THE PARAMETERS ?
( 1. YES 2. NO )?
EXIT.
END OF EDIT.
APPENDIX B
EXAMPLE OF PROCESS OP THERMAL/MECHANICAL MODELING
OF VLSI PACKAGES COMPARED TO THE SAME
PROCESS USING ANSYS
The
packages.
program
has
been
tested
on
a
verity
of
The example that is described below deals with a
simple package model, uses only 80 nodes, 36 elments, and
some of the features and capabilities of the program.
model is schematically depicted in Figure B.l.
uses
conduction,
natural
convection,
and
The
The example
steady-state
conditions. The bottom of the structure is placed on a
constant temperature kept at 47 °C.
Only one quater of the
structure has to be analyzed due to symmetry. Summary of
the input data and screen editor are listed. (NOTE: This
example serves only the purpose of illustrating some of the
capabilities of the program.)
******************************************************
* ANSYS PACKAGING THERMAL/MECHANICAL ANALYSIS(APTMC) *
*
VERSION 1.0, SUMMARY OF INPUT DATA
*
******************************************************
PACKAGE FILE NAME
TEST.DAT;
MAIN CONTROL PARAMETER :
TYPE OF HEAT TRANSFER ANALYSIS :
1) CONDUCTION
2) CONDUCTION AND CONVECTION
3) CONDUCTION, CONVECTION ,AND RADIATION
ENTER CHIOCE:
78
79
MOLDING COMPOUND
Figure B.l Example of analyzed structure.
NEW MODEL MESH-GENERATION
ENTER NUMBER OF SUBDIVISION IN X DIRECTION
3
ENTER VALUE OF X INCREMENT X[ 1 ]:(ultl) ?
1.50000E+03
ENTER VALUE OF X INCREMENT X[ 2 ]:(um) ?
2.68000E+03
ENTER VALUE OF X INCREMENT X[ 3 J:(urn) ?
2.68000E+03
ENTER NUMBER OF SUBDIVISION IN Y DIRECTION
3
ENTER VALUE OF Y INCREMENT Y[ 1]:(um) ?
1.00000E+03
ENTER VALUE OF Y INCREMENT Y[ 2]:(um) ?
6.00000E+03
ENTER VALUE OF Y INCREMENT Y[ 3]:(um) ?
1.85000E+04
ENTER NUMBER OF SUBDIVISION IN Z DIRECTION
4
ENTER
I.83000E+03
ENTER
2.00000E+02
ENTER
2.50000E+02
ENTER
1.83000E+03
VALUE OF Z INCREMENT Z[ 1 ]: ?
VALUE OF Z INCREMENT Z[ 2 ]: ?
VALUE OF Z INCREMENT Z[ 3 ]••
"?
•
VALUE OF Z INCREMENT Z[ 4 ]: ?
ENTER ELEMENT # _ TO ELEMENT # _
MATERIAL
ENTER ELEMENT # _ TO ELEMENT # _
MATERIAL
ENTER ELEMENT # __ TO ELEMENT # _
MATERIAL
ENTER ELEMENT # _ TO ELEMENT # _
MATERIAL
ENTER ELEMENT # _ TO ELEMENT # _
MATERIAL
1 9 38
10 10 32
11 13 38
19 27 12
28 36 38
81
LEADS/PINS DEFINITION :
ENTER TOTAL # LEADS/PINS
1) TRANSIANT ANALYSIS
2) STEADY-STATE
ENTER CHOICE
INITIAL TEMPERATURE :
27
CONSTANT TEMPERATURE
1) BOTTOM SURFACE
2) ENTER BY USER
3) NO CONSTANT TEMPERATURE
ENTER CHOICE?
2
ENTER
VALUE OF TEMPERATURE _ [oC]
47
HEAT EXCHANGE/TRANSFER MODE : CONVECTION :
1)DEFINE THE BOTTOM SURFACE :
2)DEFINE THE TOP SURFACE :
3)DEFINE BY THE USER :
ENTER THE CHOICE :
2
DO YOU WISH TO ENTER HEAT TRANSFER COEFFICIENT he
1) YES
2) NO
1
ENTER THE hc( Watts/°C*(urn2} ) : ?
1.1E-11
DO YOU WISH TO CONTINUE FOR OTHER SURFACE :
1) YES
2) NO
82
ENTER THE ELEMENT # PRODUCING THE POWER
10
ENTER VALUE OF POWER DISSIPATION PER
VOLUMN(watts/uia3)
4.2E-10
DO YOU WISH TO CONTINUE FOR OTHER POWER ELEMENT :
•p
1) YES
2) NO
2
DO
YOU
WANT
TO
CONTINUE
ANALYSIS
1) YES
2) NO
ENTER CHOICE?
ANALYSIS TYPE :
1) TRANSIANT ANALYSIS
2) DC ANALYSIS
ENTER CHOICE
BOUNDARY CONDITION :
1) FREE
2) FIXED
ENTER CHOICE
ENTER FIXED NODE _ TO NODE
8001 8304
.END
THE
THERMAL
STRESS
83
******************************************************
* ANSYS PACKAGING THERMAL/MECHANICAL ANALYSIS(APTMC) *
*
VERSION 1.0, SUMMARY OF INPUT DATA
*
******************************************************
NOTE: IF EDIT A OLD
FOLLOWING WILL APPEAR.
MODEL
WHICH IS
CHOSEN, .THEN
1 )HEAT TRANSFER ANALYSIS : CONDUCTION CONVECTION
2 )VALUE OF X INCREMENT : X[l] = 1.500E+03
X[2] = 2.680E+03
X[3] = 2.680E+03
3 )NUMBER OF SUBDIVIION IN X DIRECTION :
3
4 )VALUE OF Y INCREMENT : Y[l] = 1.000E+03
Y[2] = 6.000E+03
Y[3] = 1.850E+04
5 )NUMBER OF SUBDIVIION IN Y DIRECTION :
3
6 )VALUE OF Z INCREMENT : Z[l] = 1.830E+03
Z[2] = 2.000E+02
Z[3] = 2.500E+2 Z[4] = 1.830E+3
7 )NUMBER OF SUBDIVIION IN Z DIRECTION :
4
8 )ELEMENT # 1 TO ELEMENT # 9 IS MATERIAL 38
ELEMENT # 10 TO ELEMENT # 10 IS MATERIAL 32
ELEMENT # 11 TO ELEMENT # 18 IS MATERIAL 38
ELEMENT # 19 TO ELEMENT # 27 IS MATERIAL 12
ELEMENT # 28 TO ELEMENT # 36 IS MATERIAL 38
9 )CROSS SECTION OF LEAD FRAME : 0
10)LEAD FRAME.MATERIAL :
0
11)LEAD FRAME NUMBER : 0
12)DC ANALYSIS
13)UNIFORM TEMPERATURE :
27
14)THE ELEMENT # : 10
DISSIPATING POWER(Watts/um*3) : 4.20000E-10
15)CONVECTION COEFFICIENT :
1.1000E-11
PRESS CRTL C TO ABORT THE EDIT
ENTER THE CHOICE ? 1
ARE YOU SURE TO CHANGE THE PARAMETERS ?
( 1. YES 2. NO )? 1
THE
1 )HEAT TRANSFER ANALYSIS : CONDUCTION CONVCTION
PRESS —> 1 ) ADD
PRESS —> 2 ) DELETE
ENTER THE CHOICE : 2
1) CONDUCTION
2) CONVECTION
3) RADIATION
ENTER THE CHOICE :
2
CONDUCTION
1 )HEAT TRANSFER ANALYSIS
2 )VALUE OF X INCREMENT : X[l] = 1.500E+03
X[2] - 2.680E+03
X[3] = 2.680E+03
3 )NUMBER OF SUBDIVIION IN X DIRECTION :
4 )VALUE OF Y INCREMENT : Y[l] = 1.000E+03
Y[2] = 6.000E+03
Y[3] » 1.850E+04
:
5 )NUMBER OF SUBDIVIION IN Y DIRECTION :
6 )VALUE OF Z INCREMENT : Z[l] = 1.830E+03
Z[2] = 2.000E+02
Z[3] - 2.500E+2 Z[4] = 1.830E+3
DIRECTION :
7 )NUMBER OF SUBDIVIION IN
9 IS MATERIAL 38
8 )ELEMENT # 1 TO ELEMENT
10 IS MATERIAL 32
ELEMENT # 10 TO ELEMENT
18 IS MATERIAL 38
ELEMENT # 11 TO ELEMENT
27 IS MATERIAL 12
ELEMENT # 19 TO ELEMENT
36 IS MATERIAL 38
ELEMENT # 28 TO ELEMENT
9 )CROSS SECTION OF LEAD FRAME : 0
0
10)LEAD FRAME MATERIAL :
11)LEAD FRAME NUMBER : 0
12)DC ANALYSIS
27
13)UNIFORM TEMPERATURE :
14)THE ELEMENT # : 10
4.20000E-10
DISSIPATING POWER(Watts/um*3)
15)CONVECTION COEFFICIENT :
PRESS CRTL C TO ABORT THE EDIT
ENTER THE CHOICE ? 2
ARE YOU SURE TO CHANGE THE PARAMETERS ?
( 1. YES 2. NO )? 1
2 )VALUE OF X INCREMENT : X[l] « 1.500E+03
X[2] = 2.680E+03
X[3] = 2.680E+03
VALUE OF
1) X[l]
2) X[2]
3) X[3]
X
=
»
=
INCREMENT :
1.500E+03
2.680E+03
2.680E+03
ENTER THE CHOICE TO CHANGE VALUE OF X INCREMENT?
I
ENTER THE VALUE OF X[1]J 2000
DO YOU WANT TO CHANGE VALUE OF ANOTHER X INCREMENT?
1) YES
2) NO ? 2
1 )HEAT TRANSFER ANALYSIS : CONDUCTION
2 )VALUE OF X INCREMENT : X[l] • 2.OOOE+03
X[2] = 2.680E+03
X[3] = 2.680E+03
3 )NUMBER OF SUBDIVIION IN X DIRECTION :
Y[l] = 1.000E+03
4 )VALUE OF Y INCREMENT
Y[2] = 6.000E+03
Y[3]
1.850E+04
5 )NUMBER OF SUBDIVIION IN Y DIRECTION
6 )VALUE OF Z INCREMENT : Z[l] a 1.830E+03
Z[2] - 2.000E+02
Z[3] = 2.500E+2 Z[4] = 1.830E+3
7 )NUMBER OF SUBDIVIION IN Z DIRECTION :
8 )ELEMENT # 1 TO ELEMENT # 9 IS MATERIAL 38
ELEMENT # 10 TO ELEMENT # 10 IS MATERIAL 32
ELEMENT # 11 TO ELEMENT # 18 IS MATERIAL 38
ELEMENT # 19 TO ELEMENT # 27 IS MATERIAL 12
ELEMENT # 28 TO ELEMENT # 36 IS MATERIAL 38
9 )CROSS SECTION OF LEAD FRAME : 0
10)LEAD FRAME MATERIAL :
0
11)LEAD FRAME NUMBER : 0
12)DC ANALYSIS
13)UNIFORM TEMPERATURE :
27
14)THE ELEMENT # : 10
DISSIPATING POWER(Watts/um*3)
4.20000E-10
15)CONVECTION COEFFICIENT :
PRESS CRTL C TO ABORT THE EDIT
ENTER THE CHOICE ? CRTL C
ARE YOU SURE TO CHANGE THE PARAMETERS ?
( 1. YES 2. NO )? 1
EXIT.
END OF EDIT.
87
The
process
of
thermal
and
thermal-mechanical
modeling of VLSI packages improved as compared to the same
process done using ANSYS is shown above.
The same process
using ANSYS to create the PREP7 file is
shown below.
It
is obviously tedious for the user to create or modify the
ANSYS processing file.
/PREP7
KAN,-1
ET fl,70,,,,,,1
TOFFST,273
N, 1,
NGEN
1,1,,, 1.500E+03,,
NGEN
1,2,,, 2.680E+03,,
1,3,,, 2.680E+03,,
NGEN
100, 1, 4,,, 1.000E+03,
NGEN
NGEN
100,101,104,,, 6.000E+03,
NGEN
100,201,204,,, 1.850E+04,
2000,
1, 304,,,, 1.830E+03
NGEN
2000, 2001, 2304,,,, 2.000E+02
NGEN
2000, 4001, 4304,,,, 2.500E+02
NGEN
NGEN
2000, 6001, 6304,,,, 1.830E+03
E,l,: ,102,101, 2001, 2002, 2102,2101
EGEN 3,1,-1,
EGEN 3,100,1,3
EGEN 4, 2000,1,304
KXX, 1, 1.730E-07
DENS 1, 2.100E-12
C, 1 1.260E+00
EX, , 0.000E+00
ALPX 1, 0.000E+00
NUXY 1, 0 * 000E+00
NUYZ 1, 0.000E+00
NUXZ 1, 0.000E+00
MAT,
EMOD 1
EMOD 2
EMOD 3
EMOD 4
EMOD 5
EMOD 6
EMOD 7
EMOD 8
EMOD( 9
KXX, 2, 1.400E-04
DENS 2 , 2.330E-12
C, 2 7.300E-01
EX, / 1.130E-01
ALPX 2, 7.600E-06
NUXY 2 , 4.200E-01
NUYZ 2 , 4.200E-01
NUXZ 2 , 4.200E-01
MAT, 2
EMOD 10
KXX, 3, 1.730E-07
DENS 3, 2.100E-12
C, 3 1. 260E+00
EX, 5, 0.000E+00
ALPX 3, 0.000E+00
NUXY 3 / 0.000E+00
NUYZ 3, 0.OOOE+OO
NUXZ 3, 0.OOOE+OO
MAT, 3
EMOD 11
EMOD 12
EMOD 13
KXX, 4, 2.600E-04
DENS 4, 8.940E-12
C, 4 3.900E-01
EX, , 1.298E-01
ALPX 4 9 1.700E-05
NUXY 4, 3.430E-01
NUYZ 4, 3.430E-01
NUXZ 4, 3.430E-01
MAT, 4
EMOD 19
EMOD 20
EMOD 21
EMOD 22
EMOD 23
EMOD 24
EMOD 25
EMOD 26
EMOD 27
KXX, 5, 1.730E-07
DENS 5, 2.100E-12
C, 5 1. 260E+00
EX, , o.OOOE+OO
ALPX 5/ 0.000E+00
NUXY 5, 0.OOOE+OO
NUYZ 5, 0.OOOE+OO
NUXZ, 5, O.OOOE+OO
MAT, 5
EMOD,28
EMOD,29
EMOD,30
EMOD,31
EMOD,32
EMOD,33
EMOD,34
EMOD,35
EMOD,36
ITER,1,1
KTEMP,-1,
KBC,1
TUNIF,27
NT, 8001,TEMP,47,, 8304,1
cv, 1, 2, 1.100E-11, 0/ ,,102,101
cv, 2, 3, 1.100E-11, 0,,,103,102
cv, 3 / 4, 1.100E-11, 0/ ,,104,103
cv,101,102, 1.100E-11, 0,,,202,201
cv,102,103, 1.100E-11, 0,,,203, 202
cv,103,104, 1.100E-11, 0,,,204, 203
cv, 201, 202, 1.100E-11, 0,,,302, 301
cv, 202, 203, 1.100E-11, 0 , ,,303,302
cv, 203, 204, 1.100E-11, 0 , ,,304,303
QE,10, 4.200E-10
AFWRIT
FINISH
/INPUT,27
FINISH
/AUX3
DUMP,
FINISH
/PREP7
RESUME
KAN, 0
ET,1,45,,,,,,1
KTEMP,1,1
ITER,1,1
D,8001,ALL,0,,83 04,1
AFWRIT
FINISH
/INPUT,27
FINISH
APPENDIX C
LISTING OF APTMC OF MAIN PROCEDURES
{ ANSYS PACKAGING THERMAL CALCULATOR: APTMC, VERSION 1.0
OCTOBER
1986
DEPARTMENT
OF
ELECTRICAL
AND
COMPUTER
ENGINEERING, ELECTRONIC PACKAGING LABORATORY, UNIVERSITY OF
ARIZONA, TUCSON, AZ, 85721 COPYRIGHT (C) 1986 ARIZONA BOARD
OF REGENTS PROGRAM FOR LEVEL 1 ( CHIP AND CARRIER ) AND
LEVEL
2
(
CONNECTIONS
SUBSTRATE,
)
VLSI
BOARDS
PACKAGING
OR
SUBMODULES
STRUCTURES
AND
AN
INTER­
ASSEMBLIES
WRITTEN AND TESTED BY J.J. SHIANG UNDER DIRECTION OF DR.
Z.J. STASZAK }
NOTE:
EXTERN means the procedure must be called from the
other procedure.
{ MAIN PROGRAM (INTERFACE.PAS) INCLUDES SIX EXTERNAL PASCAL
MODULE CALL :
1) STRU1.PAS
4) NUMBER.PAS
5) TERM.PAS
FORTRN SUBROUTINE CALL :
2) REFRESH.PAS
6) BANK.PAS
1) CONV.FOR
3) CHANGE.PAS
AND TWO EXTERNAL
2) FCOV.FOR >
MAIN PROGRAM: INTERFACE.PAS
PROCEDURE INTERFACE
(select model to be run}
PROCEDURE INDATA;
{define thermal model}
CREATEHEAD; {define the first head: /PREP7}
CREATEICMD; {define the KAN command with integer command}
ETCREATE;
{define the ET command}
90
92
PROCEDURE FILELIST;
{store the list to the update file and running file; the
update file is specified by the package; the running file
is defaulted by WRUN.DAT;}
PROCEDURE PRINTLIST;
{print list}
PROCEDURE COMDCOPY;
{copy the command from the COMMAND.DAT file to the global
string }
FUNCTION COMLEN ;
{return the string length between the starting string and
the common specified by the COMCOUNT }
PROCEDURE REPLACE;
{replace the original SOURCE string with new string which
links a real VALUE , the position is specified by COMCOUNT}
PROCEDURE REPLACEI;
{replace the original SOURCE string with new string which
links
a
COMCOUNT}
integer
VALUE,
the
position
is
specified
by
93
PROCEDURE CREATEICMD;
{define the command,which include an insertion of integer
and put it in the link list}
PROCEDURE CREATEICMDM;
{define the command string which will go through multiple
concation? the input value which need to be changed should
be a integer; the last connand should use this command to
define the link list.}
PROCEDURE CREATERCMD?
{define the command which includes an insertion of real and
put it in the link list}
PROCEDURE CREATERCMDM;
{define the command string which will go through multiple
concation; the input value which needs to be changed should
be a real; the last connand should use this command to
define the link list.}
PROCEDURE ETCREATE;
{define the
ET
transfer type}
command
depending
on the
input
of
heat
94
PROCEDURE BACK;
{start over the present input step again}
PROCEDURE MANU?
{print the program title}
PROCEDURE NAMEINPUT?
{input the library name}
PROCEDURE MODEINPUT;
{chose the analysis type}
PROCEDURE XINPUT;
{input the number of subdivisions along the x-direction}
PROCEDURE XIN;
{input the value of subdivisions along the x-direction}
PROCEDURE XNCREATE?
{define node command along x-direction}
PROCEDURE YINPUT?
{input the number of subdivisions along the y-direction}
95
PROCEDURE YIN;
{input the value of subdivisions along the y-direction}
PROCEDURE YNCREATE?
{define node command along z-direction}
PROCEDURE ZINPUT?
{input the number of subdivisions along the z-direction}
PROCEDURE ZIN?
{input the value of subdivisions along the z-direction}
PROCEDURE ELCREATE?
{define the element command}
PROCEDURE MATINPUT?
{input the element material}
PROCEDURE DFMATER?
{define the element material? if the element is defined by
free element, the element will be defined by user}
PROCEDURE LDMATINPUT?
{input the leads/pins/contacts material}
96
PROCEDURE LDARINPUT?
{input the leads/pins/contacts cross section area}
PROCEDURE R2CREATE?
{define
the
command
of
the
leads/pins/contacts
cross
section area}
PROCEDURE LENUINPUT?
{input the number of leads/pins/contacts}
PROCEDURE LDNDINPUT;
{input the leads/pins/contacts nodes}
PROCEDURE DFLEAD?
{define conduction link command between two nodes defined
by the user}
PROCEDURE TMTYINPUT;
{input the initial condition choice}
PROCEDURE PERIOD?
97
{input
the
time
period
in
seconds
for
the
transient
condition}
PROCEDURE TIMESTEP;
{define the initial condition command}
PROCEDURE UNTPINPUT?
{input the uniform temperature}
PROCEDURE UNIFTEMP;
{define the uniform temperature command}
PROCEDURE NTOPTION; •
{input the choice for constant temperature capability}
PROCEDURE NTNODEINPUT?
{input the nodes which is kept with constant temperature}
PROCEDURE NTTEMPINPUT
{input the constant temperature}
PROCEDURE NTCREATE;
{define the constant temperature command}
98
PROCEDURE CONVNODE;
{input the nodes of convection surface}
PROCEDURE HCOPTION?
{get the he from the user or heat exchange mode)
PROCEDURE INPUTHC;
(input the he value)
PROCEDURE AMTEMP;
{input the ambient temperature)
PROCEDURE CONTINUE?
{repeat the input)
PROCEDURE COVCHOINPUT;
{chose the way to define the convection surface)
PROCEDURE TOPCREATE;
{define
the
convection
command
according
to
the
top
surface)
PROCEDURE BOTCREATE;
{define
the
convection
command
according to the
bottom
99
surface}
PROCEDURE CONVCREATE;
{define the convection command defined by the user)
PROCEDURE
MULCONVCREATE;
{define the convection command)
PROCEDURE FOWERINPUT;
{input the element which produce the power)
PROCEDURE CONTPWD?
{input the power dissipating per volum)
PROCEDURE PWCREATE ?
{define the command
defining the element
dissipating}
PROCEDURE RADINPUT?
{input the data for the radiation)
PROCEDURE RADCREATE?
{define the radiation element}
and the power
PROCEDURE CONV?
FORTRAN?
PROCEDURE STRUCTURE
EXTERN;
PROCEDURE HEADING?
EXTERN;
PROCEDURE DATABANK;
EXTERN;
PROCEDURE BANKLIST;
EXTERN;
PROCEDURE RUNCOPY?
EXTERN?
PROCEDURE EDIT;
EXTERN;
PROCEDURE CLEAR;
EXTERN;
101
PROCEDURE CURSOR;
EXTERN?
FUNCTION INTRA?
EXTERN?
CREATE STRUCTURE MODEL:STRU.PAS
MODULE STRUCTURE;
PROCEDURE TMTPINPUT;
{input the initial conditions :transient or steady state}
PROCEDURE TIMESTEP1;
{define the initial condition command}
PROCEDURE BOUNDINPUT?
{input the choice for boundary condition : fixed or free
boundary}
PROCEDURE STNODEINPUT?
{input the node sequence which define the fixed boundary}
PROCEDURE BOOUNDARY;
{define the boundary command)
PROCEDURE STRUCTURE?
{main procedure to define the structure analysis model)
PROCEDURE CLEAR;
EXTERN;
PROCEDURE CURSOR;
EXTERN;
f
PROCEDURE TERMINIT;
EXTERN;
PROCEDURE CREATELIST;
EXTERN;
PROCEDURE REPLACER;
EXTERN;
PROCEDURE REPLACEI;
EXTERN;
103
PROCEDURE CREATEICMD;
EXTERN;
PROCEDURE CREATERCMD;
EXTERN;
PROCEDURE CREATERCMDM;
EXTERN;
PROCEDURE PERIOD;
EXTERN;
PROCEDURE BACK;
EXTERN;
EDIT/READ AN OLD MODEL: REFRESH.PAS
MODULE EDTPROCESSOR;
PROCEDURE EDITLIST;
{copy the file to the link list)
FUNCTION SEARCHSUB;
{search the string between the position defined by COMCOUNT
104
and the position defined by COMCOUNT+1 ;
the string could originally be integer or real variable?
this procedure is only used for parameter display }
FUNCTION SEARCHLAST?
{search the string between the position defined by COMCOUNT
which is last character of the string?
The string could originally be integer or real variable?
This procedure is only used for parameter display }
*
FUNCTION SEARCHLIST?
{Searchs a list for a specified TARGET string.
Returns a pointer if found. Returns NIL if TARGET is not in
the list. }
PROCEDURE CONRADCHECK?
{check the conduction or radiation analysis}
PROCEDURE COVCHECK?
{check the conduction or convetion analysis}
PROCEDURE HEATANALYSIS;
{check the analysis type}
105
PROCEDURE HEATANALYSISPRINT;
{display the analysis type)
PROCEDURE
XCHECK;
{check the length of each subdivisions along x-direction}
PROCEDURE
XCHECKPRINT;
{display the length of each subdivision along x-direction}
PROCEDURE
XSUBCHECKPRINT;
{display total number of subdivisions along x-direction}
PROCEDURE YCHECK;
{check the length of each subdivision along y-direction}
PROCEDURE YCHECKPRINT;
{display the length of each subdivision along y-direction}
PROCEDURE YSUBCHECKPRINT;
{display total number of subdivisions along y-direction}
PROCEDURE ZCHECK;
{check the length of each subdivision along z-direction}
106
PROCEDURE ZCHECKPRINT;
(display the length of each subdivision along z-direction}
PROCEDURE ZSUBCHECKPRINT?
(display total number of subdivisions along z-direction}
PROCEDURE MATCHECK2;
PROCEDURE MATCHECK;
(check material definition)
PROCEDURE MATCHECKPRINT?
(display material definition}
FUNCTION SEARCHREFER;
(search a list title for a specified TARGET string
and
reference for a specified REFER string; return a pointer if
found; return NIL if TARGET is not in the list. }
PROCEDURE. CROSSCHECK?
(check the cross section area of pins/leads/contacts}
PROCEDURE CROSSCHECKPRINT;
(display the cross section area of pins/leads/contacts}
107
PROCEDURE LEADMATCHECK;
{check
material
of
the
cross
section
area
of
section
area
of
section
area
of
area
of
pins/leads/contacts}
PROCEDURE LEADMATCHECKPRINT;
{dispaly
material
of
the
cross
pins/leads/contacts}
PROCEDURE LEADNUCHECK?
{check
the
number
of
the
cross
pins/leads/contacts}
PROCEDURE LEADNUCHECKPRINT?
{display
the
number
of
the
pins/leads/contacts}
PROCEDURE TIMECHECK?
{check the initial conditions}
PROCEDURE TIMECHECKPRINT?
{check the initial conditions}
cross
section
PROCEDURE TEMFCHECK?
{check the uniform temperature)
PROCEDURE TEMPCHECKPRINT?
{display the uniform temperature)
PROCEDURE POWERCHECK?
{check the power element and the dissipating power)
PROCEDURE POWERCHECKPRINT;
{display the power element and the dissipating power)
PROCEDURE HCCHECK?
{check the convection coefficient)
PROCEDURE HCCHECKPRINT;
{display the convection coefficient)
PROCEDURE OPTION;
{chose the item to change the parameter)
FUNCTION MAKESURE;
{second check for the option)
PROCEDURE REFRESHCHECK
HEATANALYSIS ?
XCHECK;
YCHECK;
ZCHECK7
MATCHECK;
CROSSCHECK?
LEADMATCHECK?
LEADNUCHECK?
TIMECHECK?
TEMPCHECK;
POWERCHECK?
HCCHECK;
PROCEDURE REFRESH;
HEATANALYSISPRINT;
XCHECKPRINT;
XSUBCHECKPRINT;
YCHECKPRINT;
YSUBCHECKPRINT?
ZCHECKPRINT;
ZSUBCKECKPRINT;
MATCHECKPRINT;
CROSSCHECKPRINT;
LEADMATCHECKPRINT}
LEADNUCHECKPRINT;
TIMECHECKPRINT;
TEMPCHECKPRINT ?
PROWERCHECKPRINT;
HCCHECKPRINT;
PROCEDURE VIDEOCHANGE
HEATANALYSISPRINT ?
XCHECKPRINT;
XSUBCHECKPRINT;
YCHECKPRINT?
YSUBCHECKPRINT?
ZCHECKPRINT;
ZSUBCKECKPRINT;
MATCHECKPRINT;
CROSSCHECKPRINT;
LEADMATCHECKPRINT;
EADNUCHECKPRINT?
TIMECHECKPRINT;
TEMPCHECKPRINT;
PROWERCHECKPRINT;
HCCHECKPRINT;
PROCEDURE RUNCOPY?
PROCEDURE EDIT;
PROCEDURE COMDCOPY ?
EXTERN;
FUNCTION COMLEN;
EXTERN;
PROCEDURE REPLACER;
EXTERN;
PROCEDURE REPLACEI;
EXTERN;
PROCEDURE STEP2;
EXTERN;
PROCEDURE CREATEICMD;
EXTERN;
PROCEDURE CREATEICMDM
EXTERN;
PROCEDURE CLEAR;
EXTERN;
PROCEDURE REVERSE;
EXTERN;
PROCEDURE REGULAR?
EXTERN;
PROCEDURE CURSOR;
EXTERN;
PROCEDURE PARACHANGE;
EXTERN;
FUNCTION INTRA?
EXTERN?
FUNCTION REALTRA;
EXTERN;
CHANGE THE MODEL:CHANGE.PAS;
MODULE CHANGE;
PROCEDURE ANAPRINT?
{display the title of analysis type}
113
PROCEDURE ANAOPT;
{delete or insert any analysis}
PROCEDURE ANACHOICE;
{display all kinds of analysis type}
PROCEDURE
ANAPROCESS;
{change the status
of analysis type}
PROCEDURE ANALYSISCHANGE;
{change the analysis type}
>
PROCEDURE
XPRINT;
{dispaly all subdivision s along x-direction}
PROCEDURE XPROCESS?
{input the subdivision which need to be changed}
FUNCTION MORE;
{start over procedure}
PROCEDURE XCHANGE?
{all process to change x-subdivision along x-direction}
PROCEDURE XSUBCHOICE;
{input the new number of subdivision and values}
PROCEDURE XSUBCHANGE;
{finish changing the number of subdivision}
PROCEDURE
YPRINT;
{dispaly all subdivision along y-direction}
PROCEDURE YPROCESS;
{input the subdivision which need to be changed}
FUNCTION YMORE;
{start over procedure}
PROCEDURE YCHANGE;
{all process to change y-subdivision along y-direction}
PROCEDURE YSUBCHOICE ?
{input the new number of subdivision and values}
PROCEDURE YSUBCHANGE?
{finish changing the number of subdivision}
PROCEDURE
ZPRINT ?
{dispaly all subdivision s along y-direction}
PROCEDURE ZPROCESS;
{input the subdivision which need to be changed)
FUNCTION ZMORE;
{start over procedure)
PROCEDURE ZCHANGE?
{all process to change z-subduvision along z-direction)
PROCEDURE ZSUBCHOICE?
{input the new number of subdivision and values)
PROCEDURE ZSUBCHANGE?
{finish changing the number of subdivision)
PROCEDURE MATCHANGE?
{change the material definition)
PROCEDURE CROSSPRINT;
{display the cross section area of leads/pins/contacts}
PROCEDURE CROSSCHANGE?
{display the cross section area of leads/pins/contacts}
PROCEDURE LEADMATPRINT?
{display the leads/pins/contacts material}
PROCEDURE LEADMATCHANGE?
(change the material of leads/pins/contacts}
PROCEDURE LEADNUPRINT?
{display the leads/pins/contacts number}
PROCEDURE LEADNUCHANGE;
{change the leads/pins/contacts number}
PROCEDURE TIMEPRINT;
{display the initial conditions}
PROCEDURE TIMECHANGE;
{change the initial conditions}
PROCEDURE TEMPPRINT?
{display the uniform temperature}
PROCEDURE TEMPCHANGE;
{change the uniform temperature)
PROCEDURE POWERPRINT;
{display the element producing power)
PROCEDURE POWERCHANGE;
{change the element producing power)
PROCEDURE HCPRINT;
{display convection coefficient)
PROCEDURE HCCHANGEJ
{change convection coefficient)
PROCEDURE PARACHANGE;
{main procedure to change parameters)
FUNCTION INTRA;
EXTERN;
PROCEDURE CLEAR;
EXTERN;
PROCEDURE CURSOR?
EXTERN?
PROCEDURE BANKLIST?
EXTERN?
DATA TYPE CONVERSION:NUMBER.PAS
MODULE NUMBER?
FUNCTION INTRA?
{transfer the source string to an integer?
make sure no space exist before the string}
FUNCTION REALTRA?
{transfer the source string to a real number?
the source string cannot be
a double precision
make sure no space exists before the string}
TERMINAL PROCEDURE: TERM.PAS
119
MODULE THERMINAL?
PROCEDURE CLEAR?
(clear the screen; set the cursor to the position in row 1
and column 1}
PROCEDURE CURSOU 7
{set the cursor position}
PROCEDURE REVERSE?
{change the screen to the reverse video}
PROCEDURE REGULAR?
{change the screen back to original video}
APPENDIX D
TABLE PHYSICAL AND THERMAL PARAMETERS OP SELECTED MATERIALS
USED IN VLSI PACKAGING APPLICATIONS (MEAN VALUES 0-100 °C
OR AT ROOM TEMPERATURE)
MATERIAL
TYPE
ASSIGNED
NUMBER
DENSITY
THERMAL
CONDUCTIVITY
W/cm deg
g/cm3
FREE
AIR
ALUMINUM
ALUMINA
AuSi
(Die-Attach)
BERYLLIA (BeO)
BERYLLIUM
BRASS
CADMIUM
CERAMIC
CHROMIUM
COPPER (PURE)
COPPER (194)
EPOXY
EUTECTIC BOND
(Ag/Cu)
GaAs
GOLD
GLASS
IRON
KOVAR
LEAD
MOLDING COMP
MOLYBDENUM
NICHROME
NICKEL
NITROGEN
OXYGEN
PALLADIUM
PLASTIC
PLATINUM
PHENOLIC
POLIAMID
QUARTZ
RESISTOR INK
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
SPECIFIC
HEAT
W sec/g deg
0.0012
2.7
3.68
0.0003
2.38
0.35
1.0
0.917
1.0
8.94
2.9
1.85
2.97
2.5
1.94
1.31
1.03
0.315
0.913
3.97
2.6
0.0163
0.28
1.0
2.05
8.64
0.342
7.1
8.96
8.94
2.0
10.0
5.32
19.3
2.5
7.87
7.7
11.7
1.9
10.2
8.25
8.9
0.00125
0.001332
12.0
1.5
21.45
1.62
2.7
2.534
0.5
3.15
0.014
0.782
0.173
0.35
0.0063
1.37
0.13
0.075
0.000286
0.00025
0.075
0.002
0.0734
0.0016
0.00427
0.0197
0.01
121
0.233
0.08
0.416
0.39
0.39
0.6
0.255
0.322
0.13
0.75
0.456
0.52
0.13
1.7
0.25
0.45
0.45
1.04
0.912
0.25
0.134
1.03
0.93
122
Table.-"Continued
MATERIAL
TYPE
ASSIGNED
NUMBER
DENSITY
g/cm3
SILICON
SILVER
sio2
SOLDER (6C1-40)
STEATITE
STEEL
TANTALUM
TEFLON
TIN
TITANIUM
TUNGSTEN
WATER
ZINC
35
36
37
38
39
40
41
42
43
44
45
46
47
2.33
10.5
2.27
8.7
2.7
16.6
2.1
7.3
4.5
19.3
1.0
7.14
THERMAL
CONDUCTIVITY
W/cm deg
1.4
4.45
0.014
0.38
0.059
0.173
0.575
0.00173
0.0732
0.0216
1.74
0.00613
1.195
SPECIFIC
HEAT
W sec/g deg
0.73
0.234
1.0
0.17
0.84
0.142
0.226
0.528
0.138
4.18
0.394
APPENDIX E
USE OF A FINITE ELEMENT METHOD FOR THERMAL
ANALYSIS OF ELECTRONIC COMPONENT
A) STEADY-STATE PROBLEMS
Finite
element
method
(FEM)
is
one
of
the
numerical methods being used widely for the analysis of
various engineering problems.
the
finite
element
discretization
which
manageable elements.
are
The basic concept underlying
method
divides
is
a
the
principle
structure
into
of
smaller
The primary interests of this study
evaluating temperature and thermally
induced
stress
caused by forces such as applied thermal loads and internal
heat generation in a body.
the
application
of
the
The basic concepts involved in
FEM
to
thermal
problems
are
described in the following sections considering a simple
one dimension case.
Let us consider case of a metal rod
for thermal analysis.
STEP 1.
Choose element configuration
We
element.
number
idealize
The rod
of
small
intersections
are
the
metal
rod
as
a
one
dimension
is then discretized into an arbitary
units
called
called
nodes
finite
or
elements.
node
points.
The
The
coordinate system defined to describe the entire structure
is called
the global coordinate system.
To derive the
element equations a local coordinate system is used. The
123
124
purpose of its use is to make the required derivatives and
integrations simple to handle.
the global coordinate.
In the Fugure E.l, 'X' is
Let us have the origin of the local
system at the mid point (3) of an element.
Here the local coordinate is written as
L = (x - X3) / (1/2) = [X - (X! + X2 /2)] / (1/2) (2.0)
The values of L range from -1 to 1.
of
these
coordinates
is
that
An important property
they
are
in
a
nondimensionalized form and their values are expressed as
numbers and lie between -1 and 1. It is this property that
imparts simplicity to the subsequent derivations.
STEP 2.
Choose Approximation Function
An
approximation
function
which
is
continuous
within an element is chosen to describe the temperature
variation.
A linear approximation for temperature can be
expressed as
T = aj + a2x
( 2.1 )
T = NXT! + N2T2 = [N] {Tn>
( 2.2 )
L=1
x
3
x2
L=-l
X1
//////
Figure E.l local coordinate system for one element.
126
NX = 1/2 ( 1 - L )
( 2.3 )
N2 = 1/2 ( 1 + L )
( 2.4 )
where
and N2 are the interpolation functions, L is the
local coordinate , {T}^ = [T^ T2] is the vector of element
nodal
temperature.
An
interpolation
function
has
the
property that it has a value of unity for the degree of
freedom,
it pertains to and zero value corresponding to
all other degrees of freedom.
STEP 3.
Define the general equation for heat conduction.
It was J.B.J Fourier who proposed [22] that the
rate
of
heat
flow
by
conduction through
a
material
is
proportional to the area of the material normal to the heat
flow path and to the temperature gradient along the heat
flow path.
These facts may be written mathematically as
g = -kA(dT/dn)
=
heat flux in direction "n"
( 2.5)
where K = thermal conductivity (material property)
T - temperature
the negative sign inidcates that heat flow is opposite to
127
the direction in which the temperatures increase.
The value of temperature gradient can be obtained by
differentiating T in Eq.(2.2 ) with respect to X as
dT/dX = d [(1/2)(l-L)T! + (1/2)(1+L)T2] / dX ( 2.6 )
use of the chain rule of differentiation leads to
dT/dX - (dT/dL) (dL/dX) = (dT/dL) (2/1)
= (1/1) [-1 1] [Tx T2]t = [B] {Tn}
( 2.7 )
[B] is the transformation matrix, substitution of Eq. (2.7)
into
t
Eq. (2.5) gives
q = -K A [B] {Tn}
STEP 4.
Derive element equations
Derivation
principle
( 2.8 )
of
of
element
Minimum
equations
potential
is
energy.
based
The
on
the
potential
energy D of the element is composed of two parts,, internal
energy U and potential Wp of the external load
D = U + WP
x2
/
*1
/*x2
(1/2)K (dT/dX)2 dX -/
qT dX ( 2.9 )
J *1
substitution of dT/dX and T into Eq. (2.9) leads to
128
fX2(1/2)
I x1
'
D = A/
+
+
C x2qTdX
{Tnjt [B]* K [B] {Tn} dx - J
/
^
Using the
variational
potential
energy,
approach
we
of
minimize
X1
( 2.10 )
principle
of
the
(2.10)
Eq
minimum
by
differentiating £) with respect to Tn which yields
dD / d{Tn} = 0
( 2.11 )
or
Ak/
or
/
x2
f x2
r[B]dX{T J « /
[BjttBldXtTn}
[B]
J
n
X1
J
q[N]tr dX
q[N]
X1
[K] (Tn) = (Q)
( 2.12 )
( 2.13 )
where [K] = element stiffness
matrix
[K] = (Ak) /X2[B]t [B]dX
/>*
J'1
= (Akl/2) J
[B]c [B]dL
( 2.14 )
and {Q} = element nodal forcing parameter vector
fc dX
{Q> =1
q [N]
[N]fc
=J^2q
t
= d/2)
q [N]
) J+\
[Nit dL
( 2.15 )
129
Substituting [B] and [N] into Eqs. (2.14) and (2.15) and
integrating lead to
CB]fc [B]a:
[K] = (Akl/2)
/
= (Ak/1)
(Q) = (ql/2) I
u:i
{ (1/2)(1-L) (1/2)(1+L) )t dL
= (ql/2) { 1
STEP 5.
( 2.16 )
1 J1
( 2.17 )
Assembly global equations.
We use the direct stiffness approach [23] to obtain
the assemblage equations.
[K*] {r} = (R]
where
Eqs.
( 2.18 )
[K*] = assemblage stiffness matrix
{r}
= assemblage vector of nodal temperature
{R}
= assemblage vector of nodal
(2.18)
equations.
is
a
set
of
linear
simulataneous
algebric
Solution of these equations yields the nodal
130
temperatures r^, r21
rn.
Transient problem
When
the
rate
of
heat
flow
changes
within
an
electronic system, it will normally produce a temperature
change somewhere in that system.
rate
will
system.
be
associated
with
A change in the heat flow
temperature
change
in
a
Changes of these types are defined as transient
heat transfer conditons.
If no heat source or sinks are present and, if the
thermal properties of thermal conductivity, specific heat
and the material density are independent of temperature,
the transfer of heat by conduction can be represented by
the governing equation:
a (d2T/dx2) = (dT/dt) - q
( 2.19 )
where a = thermal diffusivity - (k/gc), where k - thermal
conductivity, g - density, c = specific heat, t = time and
q
=
heat
formulation
flux.
of
The
finite
different
elements
steps
involved
in
for the solution to the
governing equation (2.19) are as follows:
STEP 1.
the
Discretize and choose element configuration
131
The one-dimensional element, which is same as that
for steady-state condition, is chosen for the purpose of
simplicity for the finite element.
STEP 2.
A
Choose approximation model
linear
model
is
chosen
to
express
temperature
within an element as
T = (1/2)(l-LJTift) + (1/2)(l+L)T2(t)
= [ N ] { Tn(t) }
( 2.20 )
where {Tn(t)>, is the vector of unknown temperatures at
nodes 1
and
2,
respectively. Here, T^ and T2 are time
dependent, and [N] is dependent on the spatial coordinate.
STEP 3.
Derive element equations.
Use the following variational functional at a given
time level for obtaining the element equation [24,25]:
/*x2
,
r*2
D = A/
[(l/2)a(dT/dX)2 + (dT/dt)T] d x - I
qT dx
J xi
J
( 2.21 )
where D denotes the variational functional.
By using Eq.
(2.20), we have
dT / dx = (dT/dL) (dL/dx) = (dT/dL) (2/1)
132
=
(1/1)[-1
1]
{Ti
T
2
)
t
( 2.22 )
= CB) {Tn)
and
dT/dt - T« = [N] {dTx/dt
= [NHT!1
T2M* -
dT2/dt}t
( 2.23 )
[ N ] {T n »>
where {Tn'} denotes derivative with respect to time. Note
that [N] is a
constant
for
function of space coordinates, and hence
the
time
derivative. Substitution
of
Eqs.
(2.22) and (2.23) into Eg. (2.21) yields
D = (Aal/4)
+ (Al/2)
( 2.24 )
We now take differentiation of D with respect to T. Here,
the functional involves time derivatives, T'n.
During the
variations with respect to Tn, we make an assumption that
Tn remain constant. This assumption makes the variational
approach mathematically less rigorous. This differentiation
yields
dD/d{Tn) = (aAl/d)
133
+
(Al/2
/
J"1
[N]t[N]
dL) { T ' N } - 1/ 2
/
1
[ N ]t
J"1
q dL
= [KS](Tn)t + [KtHT'N>t " (Q) - 0
( 2.25 )
where
P
[Ka] = (aAl/2) I
« (Aa/1)
[Kt] = (Al/2) /
= (Al/6)
{Q>
[B]T[B] dL
[
]
( 2.26 )
[N]™[N] dL
[::]
- (ql/2) /
[ N ]t
=(ql/2)
[:]
( 2.27 )
q dL
( 2.28 )
In the case of time dependent problems, additional
derivations are required to obtain solutions in time.
This
can be done by using the finite difference [22] type of
discretization for the derivatives with respect to time.
The first derivative dT/dt can be written approximately as
134
( dT/dt )t = T(t) - T(t- t) /
( 2.29 )
t
where At = time increment. Eq. (2.29) essentially, give the
slope of the joining
points as an approximation to the
continuous derivative dT/dt. By using Eq. (2.29), we can
now write approximations to the time derivative at two
nodes of an element.
dTx/dt = T^t) -^(t -
t) /
t
( 2.30 )
dT2/dt = T2(t) - T2(t -
t) /
t
( 2.31 )
{T'n} = (1/ t) { [Ti T2]Tt " [Ti T2]Tt-
= (1/ t) {Tn}t - 1/ t{Tn}t_
t
t
>
( 2.32 )
Substitution of Eq (2.32) into (2.25) leads to
[Ka]{Tn}t = 1/ t [Kt] {Tn)t - 1/ t [Kt]{Tn}t„
t
( 2.33 )
= (Q)t
or
( {K^3 + 1/ t [Kt] ) {Tn}t
= (Q>t + 1/ t [kt] {Tn}t.
t
( 2.34 )
135
At any time t- t, the terms on the right- hand side in Eq.
(2.34) are usually known. Hence we can solve Eg. (2.34) for
T at t, since the T at previous time level is known. The
solution
process
for
the
time-dependent
problem
thus
involves two steps: (1) discretization in space and then
(2) propagation or marching in time at various time levels.
STEP 5.
Assembly for global equations
Direct stiffness aproach [23] is used to obtain the
global
stiffness
matrix
individual element matrices.
by
appropriately
adding
the
REFERENCE
1.
Oettinger, F. F., and R. L. Gladhill, "Thermal
Response Mesurement of Semiconductor Device Die
Attachment Evaluation," IEDM Technical Digest.1973.
pp, 47-50.
2.
Albert J. Blodgeet, Jr, "Microelectronic Packaging"
Scientific American, vol. 249. no.l, pp 86-96, July
1983.
3.
Kennedy K. J. and Kanehl J., " Free Convection in
Tilted Encloures, " Heat Transfer Division. Vol.28,
1983, PP. 43-47.
4.
Sloan, Joel 1., " Design and Packaging of Electronic
Equipment," Van Nostrand Reinhold, New York, 1983.
5.
Hamilton, D.J., and W.J. Kerwin, "Electrothermal
Effects in Integrated Circuits," Microelectronics
Journal. Vol. 11, No.2, 1980, pp. 5-12.
6.
Lewis, T.E., and D.L. Adams, "VLSI Thermal Management
in Cost Driven Systems," IEEE Transactions on
Components. Hybrids, and Manufacturing Technology.
Vol. CHMT-5, No.4, December 1982, pp. 166-173.
7.
Waller, D., Fox, L. and R. Hannemann "Analysis of
Surface
Mount
Thermal
and
Thermal
stress
performance," IEEE Trans. Components. Hybrids. and
Manufacturing Technology. Vol. CHMT-6, no.3, pp. 257266, Sep. 1983.
8.
TEMDIS, TRATEM, Staszak, Z.J., and M. Jafar,
University of Arizona, ECE Dept.
9.
TXYZ , Albers, J., NBS Special Publication 400-76,
April 1984
10.
TAMS, TNETFA, Ellison, 6.N., "Thermal Conputations
for Electronic Eguipment." Van Nostrand Reinhold
Company, New York, N.Y., 1984
11.
ANSYS, Swanson Analysis Systems, Inc., Houston, PA
12.
ADINAT, Adina Engineering, Inc., Watertown, MA
136
137
13.
NASTRAN: NASA Structural Analysis Program,
COSMIC Program Abstracts, Athens, GA
14.
NISA: Numerically Integrated Elements for Systems
Analysis, COSMIC Program Abstracts, Athens, GA
15.
Jafar, M.M. "Thermal Modeling/Simulation of Level 1
and Level 2 VLSI Packaging" M.Sc. Thesis, ECE. Dept,
University of Arizona, 1986.
16.
Staszak, Z.J., Jafar, M. and Prince, J.L.•"Packaging
Thermal Calculator ; UAPTC 1.0, Users Manual.11
University of Arizona , Department of Electrical and
Computer
Engineering,
Electronic
Packaging
Laboratory.
17.
Staszak, Z.J., Jafar, M., Chidambaram, N. and Prince,
J. L. "Packaging Thermal Mechanical Calcula
tor ; UAPTMC 1.0 Users Manual." University of
Arizona, in preparation.
18
Koffman, E. B., "Problem Solving and Structured
Programming in PASCAL," Adison Wesley, 1980.
19
Andrews, J.A., Mahalingam, L.M. and H.M. Berg,
"Thermal Characteristics of 16- and 40-pin Plastic
Dip's,"
IEEE
Trans
Components.
Hybrids.
and
Manufacturing Technology. Vol. CHMT-4, pp.455-461,
Dec. 1981.
20.
Ellison, G.E.,"Thermal
Analysis with Affordable
Programs"
Proceedings
of
the
Fifth
Annual
International
Electronics
Packaging
Conference.
Orlando, FL, Oct. 21-23, 1985.
21
Staszak,
Z.J.
"Thermal
Modeling/Simulation
and
Characterization in Level 1 and Level 2 VLSI
Packaging : An Approach," ECE. Dept, University of
Arizona, 1986.
22.
Fourier, J.B.J. "The Analytical Theory of Heat."
Translated by Alexander Freeman, Cambridge University
Press, London, 1878.
23
Desai, C,S., "Elementary Finite Element." PrenticeHall, New Jersey, 1979.
138
24.
Courant,
R.,
and
Hilbert,
D.,
"Methods
of
Mathematical Physics." Wiley-Nostrand Reinhold, New
York, 1972.
25.
Desai, C.S., and Abel, J.F., "Introduction to the
Finite Element Method." Van Nostrand Reinhold, New
York, 1972.
26.
Crandall, S.H., "Engineering Analysis," McGraw Hill,
New york, 1956.
27.
Turner, M.J., Clough, R. W., Matrin, H.C., and Topp,
L. C., " Stiffness and Deflection Analysis of Complex
structures," J. Aeronaut. Sci.. Vol 23, no9, Sept.
1956, pp. 196-200.
28.
Fried, E. and kelleg, M. J., " Thermal Conductance_of
Matallie Contacts in a Vaccum, " Thermophysics
Specialist Conference. Mouterey, CA, Sep. 1965, pp.
44-48.
29.
Ashiwake, N. and Nakayama, T. "Forced Convection Heat
Transfer From LSI Packages in an Air-cooled Wiring
Card Array
ASME HTD. Vol. 28, 1983, pp. 961-973.
Download