Lecture 21: Soft Errors and Fault-Tolerant Design

Download Report

Transcript Lecture 21: Soft Errors and Fault-Tolerant Design

ELEC 7770
Advanced VLSI Design
Spring 2007
Soft Errors and Fault-Tolerant Design
Vishwani D. Agrawal
James J. Danaher Professor
ECE Department, Auburn University
Auburn, AL 36849
[email protected]
http://www.eng.auburn.edu/~vagrawal/COURSE/E7770_Spr07
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
1
Soft Errors
 Soft errors are the errors caused by the



operating environment.
They are not due to a permanent hardware fault.
Soft errors are intermittent or random, which
makes their testing unreliable.
One way to deal with soft errors is to make
hardware robust:
 Capable of detecting soft errors
 Capable of correcting soft errors
 Both measures are probabilistic
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
2
Some Early References
 J. von Neumann, “Probabilistic Logics and the Synthesis


of Reliable Organisms from Unreliable Components,” pp.
329-378, 1959, in A. H. Taub, editor, John von Neumann:
Collected Works, Volume V: Design of Computers,
Theory of Automata and Numerical Analysis,
Oxford University Press, 1963.
M. A. Breuer, “Testing for Intermittent Faults in Digital
Circuits,” IEEE Trans. Computers, vol. C-22, no. 3, pp.
241-246, March 1973.
T. C. May and M. H. Woods, “Alpha-Particle-Induces Soft
Errors in Dynamic Memories,” IEEE Trans. Electron
Devices, vol. ED-26, no. 1, pp. 2-9, 1979.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
3
Causes of Soft Errors
 Interconnect coupling (crosstalk).
 Power supply noise: IR-drop, delta-I.
 Effects generally attributed to alpha-particles:
 Charged particles: electrons, protons, ions.
 Radiation (photons): X-rays, gamma-rays, ultra-violet
light.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
4
Sources of Alpha-Particles
 Radioactive contamination in VLSI packaging


material.
Ionosphere, magnetosphere and solar radiation.
Other electromagnetic radiation.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
5
Alpha-Particle
 Helium nucleus: two protons and two

neutrons, mass = 6.65 ×10-27kg, charge =
+2e (e = 1.6 ×10-19C).
Energy = 3.73 GeV
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
6
Soft Error Rate (SER)
 Failures in time (FIT): One FIT is 1 error per

billion hours of operation.
Alternative unit is mean time between failures
(MTBF).
1 year MTBF
Spring 07, Apr 17, 19
=
109/(365×24) = 114,155 FIT
ELEC 7770: Advanced VLSI Design (Agrawal)
7
Particle Strike
Ion or
Charged particle
- +
n + +
+ - p - substrate
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
8
current
Induced Current
time
I(t) = I0(e– t/a – e– t/b),
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
a >> b
9
Voltage Induced at a Node
V = Q/C
Where Q = ∫ I(t) dt
C = node capacitance
Smaller node capacitance will result in
larger voltage swing.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
10
Effect on Digital Circuit
Charged
Particles
IN
Charged
Particles
Combinational
Logic
OUT
CK
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
11
An SRAM Cell
WL
VDD
0
bit
1
bit
BL
BL
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
12
SRAM Cell Struck by Alpha-Particle
Single-Event Upset (SEU)
WL
Charged
Particles
VDD
0→1
bit
1→0
bit
BL
BL
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
13
D-Latch
1
D
CK = 0
Spring 07, Apr 17, 19
Q
0
ELEC 7770: Advanced VLSI Design (Agrawal)
14
SEU in D-Latch
1→0
Q
D
CK = 0
Spring 07, Apr 17, 19
Charged
Particles
0→1
ELEC 7770: Advanced VLSI Design (Agrawal)
15
Single Event Transients in
Combinational Logic
1
0
1
1
1
CK
Charged
Particles
0
CK
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
16
Effects of Transients
 Error correcting effects

 Transient pulse is filtered by gate inertia
 Transient is blocked by an unsensitized path
 Transient is blocked by an inactive clock
Error enhancing effects
 Large number of gates can produce multiple
pulses
 Fanouts can multiply error pulses
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
17
SEUs in FPGA
 Parts that can be affected




Look-up table (LUT)
Configuration memory cell
Flip-flop
Block RAM
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
18
F1
F2
F3
F4
LUT
1
1
1
Memory cells
0
0
1
0
0
0
out
0
1
1
1
0
0
Spring 07, Apr 17, 19
1
ELEC 7770: Advanced VLSI Design (Agrawal)
19
F1
F2
F3
1
1
1
F4
SEU in
LUT
Memory cells
0
0
Charged
Particle
1 changed
to 0
Spring 07, Apr 17, 19
1
0
0
0
out
0
1
1
0
0
0
1
ELEC 7770: Advanced VLSI Design (Agrawal)
20
Four Types of SEU in FPGA
M
M M M M
FF
F1
F2
F3
F4
M
Type 3
Type 2
LUT
Type 1
M
Configuration
memory
cell
Spring 07, Apr 17, 19
Type 4
ELEC 7770: Advanced VLSI Design (Agrawal)
Block
RAM
21
SEU Detection Methods




Hardware redundancy
Time redundancy
Error detection codes (EDC)
Self-checker techniques
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
22
SEU Mitigation Techniques





Triple modular redundancy (TMR)
Multiple redundancy with voting
Error detection and correction codes (EDAC)
Hardened memory cells
FPGA-specific methods
 Reconfiguration
 Partial configuration
 Rerouting design
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
23
Hardware Redundancy for Detection
inputs
Combinational
Logic
Combinational
Logic
(duplicated)
output
Logic 1
indicates
error
Hardware overhead is high ~ 100%
Performance penalty is negligible.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
24
Time Redundancy for Detection
inputs
Combinational
Logic
DQ
output
CK+ d
DQ
Logic 1
indicates
error
CK
Hardware overhead is low.
Performance penalty ( ~ d) = maximum detectable pulse width.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
25
Repeat on Error Detection
inputs
Combinational
Logic
DQ
C
output
CK+ d
DQ
Logic 1
indicates
error
CK
Operation:
Spring 07, Apr 17, 19
If error is detected, then output retains its previous value.
Repeating the computation can produce correct result.
ELEC 7770: Advanced VLSI Design (Agrawal)
26
Muller C-Element
A
output
C
B
A
B
output
A
0
0
0
0
1
Old output
1
0
Old output
1
1
1
Spring 07, Apr 17, 19
B
ELEC 7770: Advanced VLSI Design (Agrawal)
S Q
output
R
27
Triple Modular Redundancy (TMR)
Combinational
Logic copy 1
inputs
Combinational
Logic copy 2
Majority
Voter
output
Combinational
Logic copy 3
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
28
Majority Voter Circuit
A
0
B
0
C
0
output
A
0
B
C
0
0
1
0
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
Spring 07, Apr 17, 19
Majority
Voter
output
A
B
output
C
ELEC 7770: Advanced VLSI Design (Agrawal)
29
Alternative Implementations of Voter
VDD
A
LUT
0
0
0
1
0
1
1
1
output
B
output
C
ABC
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
30
Triple Modular Redundancy (TMR)
inputs
Combinational
Logic
DQ
CK
DQ
Majority
Voter
CK+ d
DQ
output
CK+3d
DQ
CK+2d
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
31
TMR for Memory Cells
inputs
Combinational
Logic
DQ
CK
DQ
Majority
Voter
output
CK
DQ
CK
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
Problems:
1. Accumulation of
errors in flip-flops.
1. Voter is not protected.
32
FF Refresh and TMR for Memory Cells
r1
DQ
r2
CK
Majority
Voter
DQ
r3
Majority
Voter
CK
Majority
Voter
output
DQ
CK
Spring 07, Apr 17, 19
Majority
Voter
ELEC 7770: Advanced VLSI Design (Agrawal)
33
A Resistor Hardened SRAM Cell
WL
VDD
0
bit
1
bit
BL
BL
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
34
References
 F. L. Kastensmidt, L. Carro and R. Reis, Fault
Tolerant Techniques for SRAM-Based FPGAs,
Springer, 2006.
S. Mitra, N. Seifert, M. Zhang, Q. Shi, and K. S.
Kim, “Robust System Design with Built-In SoftError Resilience,” Computer, vol. 38, no. 2, pp.
43-52, February 2005.
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
35
Summary of Topics Covered (1)
 Nanotechnology devices
 Moore’s law
 System level design for testability and test scheduling


problem
Verification
 Logic equivalence
 Binary decision diagrams
Power consumption and low-power concepts
 Multi-core parallelism
 Microprocessors
 Memories
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
36
Summary of Topics Covered (2)
 Timing
 Timing verification
 Timing simulation
 Static timing analysis
 Timing optimization
 Linear programming and clock constraints
 Clock skew problem
 Zero skew design
 Retiming, constraint graph and performance
optimization
 Soft errors and fault-tolerant design
Spring 07, Apr 17, 19
ELEC 7770: Advanced VLSI Design (Agrawal)
37