Solder Fatigue Analysis

Solder fatigue is available to analyze and predict fatigue damage of the solder joint between a component and the base Printed Circuit Board (PCB).

Solder joint failure between components and the PCB due to thermal loading is a major cause of breakdown in electronic products. It is critical to estimate such fatigue failure due to cyclic loading of solder joints. You can predict the life of solder joints under thermal cyclic loads with solder fatigue. In order to perform solder joint fatigue, TYPE in FATPARM should be set to SOLDER. OptiStruct supports two different approaches for solder joint fatigue analysis.
  1. Damage due to mismatch of local thermal expansion coefficients.
Solder fatigue calculation due to mismatch of local thermal expansion coefficients (CTE) is available using the following solder joint types:
  1. Leadless solder joint
  2. Ball Grid Array (BGA) solder joint


Figure 1. Solder Joint

Fatigue damage due to local thermal expansion coefficient mismatch is assessed. The thermal expansion coefficient field (A) on the MAT1 Bulk Data Entry is mandatory.

The Strain range of the solder joint is calculated as:(1) Δγ=CLDhsΔαΔT
Where,
LD
Component length (PKGLEN field on the FATSDR entry).
α
Coefficient of thermal expansion (CTE) (A field on the MAT1 entry).
hs
Solder joint height. (PKGTHK field on the FATSDR entry).
Δα=CTEpCTEc
Difference between thermal expansion coefficients of the PCB and the component soldered onto the board.
T
Input temperature.
ΔT=TpTc
Difference between temperatures of the PCB and the component soldered onto the board.
C
Empirical model constant for solder fatigue (specified using the C4GAMMA field on the PFATSDR entry). It is equal to 12 for leadless joint type. For BGA type, you can define the empirical model constant.
The strain energy dissipation per thermal cycle is calculated as:(2) ΔW=0.5ΔγFAs
Where,
F
Shear force.
As
Cross-section area.
The fatigue life is calculated as:(3) Nf=(1WpΔW)
Where,
Wp
Creep energy density for failure defined on the Wp field of the MATFAT entry.

The default value is 0.0019. If a user defines a value for Wp', the value must be based on the stress unit in MATFAT. The default value for Wp' is based on MPa unit. If user-defined stress unit is not MPa in MATFAT, OptiStruct applies a conversion factor to the default value to get a correct value.

Correct default Wp'= default Wp' x factor that converts MATFAT stress unit to MPa.

Input

Supported solder joint input types for fatigue analysis.

Leadless Solder Joint

The Leadless solder joint is activated by setting the SDRTYP field to XLEAD on the FATSDR entry. The joint is modeled with solid elements. Similarly, the Component/Package and the PCB are idealized with solid elements.

The Element SET ID which defines the Component Package should be defined with the SIDPKG field on the FATSDR entry.

The Element SET ID which defines the PCB should be defined on the SIDPCB field on the FATSDR entry.

Only two SDRis should be specified on the SOLDER continuation line of the FATSDR entry.

Only two Solder joints per package/component are allowed. Multiple FATSDR entries are allowed on a single FATDEF entry.

The FATEVNT entry should only contain a single FATLOAD reference.

Loading should be a static load with Thermal Expansion Coefficient defined.

The input temperature should be the same between the Package and the PCB.

If DIM continuation line on FATSDR is not defined, OptiStruct will attempt to measure it based on the Finite Element mesh.

Ball Grid Array (BGA) Solder Joint

The BGA solder joint is activated by setting the SDRTYP field to BGA on the FATSDR entry. The joint is modeled with solid elements.

The Element SET ID which defines the Component Package should be defined with the SIDPKG field on the FATSDR entry.

The Element SET ID which defines the PCB should be defined with the SIDPCB field on the FATSDR entry.

A single SDRi is allowed on the SOLDER continuation line of the FATSDR entry.

Multiple solder joints per package/component are allowed.

The FATEVNT entry should only contain a single FATLOAD reference.

Loading should be a static load with Thermal Expansion Coefficient defined.

The input temperature should be the same between the Package and the PCB.

If DIM continuation line on FATSDR is not defined, OptiStruct will attempt to measure it based on the Finite Element mesh. For a BGA joint, unless a single solder SET is defined, it is recommended not to define PKGLEN on FATSDR. PKGLEN is assumed to be the distance between the centroid of the package and the solder.

In order to use the method, DIFFCTE must be chosen in the method field following a flag SOLDER in FATPARM.

Output

Supported solder joint output types for Fatigue Analysis.

General fatigue output for damage and life are supported.

Damage due to Creep Deformation of Solder Joint

This approach assumes that solder joint failure is caused by creep deformation. Damage to solder joints can be calculated using either creep strain or creep strain energy density. For creep-based solder fatigue, the NLOUT Subcase Information Entry should be defined for any nonlinear subcase that is used for subsequent fatigue calculations (that is, any nonlinear creep subcases referenced on the FATLOAD Bulk Data Entry used in Fatigue Analysis).

Damage Calculation using Creep Strain

OptiStruct supports a method proposed by Syed. Life (Nf) of solder is calculated using:(4) Nf=(C'εacc)b1e
Where,
εacc
Accumulated strain of a stabilized cycle.
C'
Inverse of creep ductility.
b1e
Exponent.

The value of b1e is -1 and set as a default value in OptiStruct.

In order to use the method, select SYEDEPS on the METHOD field following the flag SOLDER in the FATPARM Bulk Data Entry.

Damage Calculation using Creep Energy Density

  • Use the following equation to calculate life of a solder joint.(5) Nf=(W'wacc)b1w
    Where,
    wacc
    Accumulated creep energy density of a stabilized cycle.
    W'
    Creep energy density for failure.
    b1w
    Exponent.

    The value of b1w is -1 and set as a default value in OptiStruct. The creep energy density is obtained from the creep energy of an element divided by the element volume.

    It is important to note that the unit of creep energy density wacc is the same as stress. Thus, the unit of creep energy density wacc is defined as unit of stress in FATPARM. If you define a value for W', the value must be based on stress unit in MATFAT.

    The default value for W' is based on MPa unit. If user-defined stress unit is not in MPa for MATFAT, OptiStruct applies a conversion factor to the default value to get a correct value.

    Correct default W'= default W' x factor that converts MATFAT stress unit to MPa.

    In order to use the method, SYEDW should be chosen on the METHOD field following the flag SOLDER in the FATPARM Bulk Data Entry.

  • Darveaux 2 used the concept of crack growth to calculate life of a solder joint.
    • Crack initiation:(6) N0=K1ΔWK2ave
    • Crack growth:(7) dadN=K3ΔWK4ave
    • Life:(8) N=N0+ada/dN
    Where,
    a
    Joint diameter at the interface defined in FATSDR.
    K1, K2, K3, and K4
    Constants.
    ΔWave
    Averaged creep energy density.

    The 4 constants are dependent on the element size chosen in the FEA model. In order to minimize their dependency on element size, the Volume Averaging Technique is usually recommended which is explained in subsequent sections below. After applying the Volume Averaging Technique, K2 and K4 become element size independent quantities. The range of K2 is usually -1.4 to -1.6 and K4 is usually 0.98 to 1.25. K1 and K4 are still dependent on mesh size and creep material constitutive law. Since the four constants are not material constants, they are not defined in MATFAT but defined in PFATSDR. The final crack size, a is equivalent to joint diameter at the interface.

    Units of the averaged creep energy density is the same as unit of stress. Units for dimension of K1 and K3 should be consistent with those of length and stress in FATPARM. Dimension of K1 is cycles/stressK2. Dimension of K3 is (length/cycle)*(1/stressK4). For example, if length unit and stress unit in FATPARM are mm and MPa, respectively, unit of K1 and K3 must be cycles/MPaK2 and (mm/cycle)*(1/MPaK4), respectively.

    In order to use the method, select DARV on the METHOD field following the flag SOLDER on FATPARM. The joint diameter at the interface should be defined on FATSDR. K1 to K4 must be defined on PFATSDR.

Volume Averaging Technique

Strain energy density changes with respect to element size. In order to minimize the effect of element size on strain energy density, the Volume Averaging Technique is used. In Figure 2, the interface is modeled with two layers.


Figure 2. Solder joint
The averaged strain energy density is calculated by:(9) ΔWave=ΔWVV
Where,
ΔWave
Averaged strain energy density per cycle of the interface elements.
V
Volume of each element in the interface layers.
ΔW
Accumulated strain energy density of each element per cycle in the interface layers.
Likewise, the averaged strain Δεave is calculated by:(10) Δεave=ΔεVV

Where, Δε is the accumulated strain of each element per cycle in the interface layers.

The averaged creep strain energy density (SYEDW method and DARV method) and the averaged strain (SYEDEPS method) are used in life calculation.

Report Life/Damage of an Interface Element

Since the averaged quantity over the volume of interface layers is used in life calculation, calculated life/damage is not for a single element in layers. All the elements in the interface layers should have a uniform life/damage value. A disadvantage of uniform life/damage over the interface layers is that you cannot see which part of the interface layers failed until reviewing the strain/strain energy of each element. In order to provide the information of most damaged location of interface layers, OptiStruct reports life/damage of elements in the interface layers through the following process:
  • An element that has the most creep strain/creep energy density reports the life/damage calculated using the averaged quantity. This damage is the maximum damage/minimum life.
  • An element that has the least creep strain/creep energy density reports life/damage calculated using the least creep strain/creep energy density.
  • For the rest of the elements in the interface layers, logarithmic linear interpolation using the creep strains/creep energy densities of the two elements is performed to estimate their life/damage.
Through this process, the most damaged location of a solder joint can be viewed and the correct maximum damage/minimum life of the solder joint is still reported.


Figure 3. Damage contour that shows the most damaging location of a solder joint

Stablized Cycle

In Solder Fatigue Analysis using the Creep Analysis result, it is common practice to use the creep deformation result of a stabilized cycle. When a thermal cycle is applied repeatedly, creep deformation of the 2nd or 3rd cycle typically shows stable results. The first output time step and the last output time step of the stabilized cycle in FATLOAD must be specified so that OptiStruct can pick up creep deformation of the stabilized cycle.


Figure 4.

References

1
Syed A, Accumulated creep strain and energy density based thermal fatigue life prediction models for SnAgCu solder joints, in Proceedings - Electronic Components and Technology Conference, July 2004
2
Darveaux R, Solder Joint Fatigue Life Model, Design & Reliability of Solders and Solder Interconnections: proceedings of a symposium held during the TMS Annual Meeting, Feb. 1997
3
Craig H, Blattau N, and Lacy M, Predicting fatigue of solder joints subjected to high number of power cycles
4
Che FX and Pang JHL, Fatigue Reliability Analysis of Sn–Ag–Cu Solder Joints Subject to Thermal Cycling, IEEE Transactions on Device and Materials Reliability, March 2013