ppt

advertisement
SEU Mitigation for FPGA-based
Systems
Roy Lee
Advisor: Lei He
royjylee@ucla.edu
http://eda.ee.ucla.edu
October 26, 2011
1
Outline
•
Introduction
•
In-Place Decomposition (IPD)
•
In-Place LUT Polarity Inversion (IPV)
•
Experimental Results
•
Conclusions & Future Works
Robustness in FPGAs
•
FPGAs are extensively used not only for prototyping but
also in a wide range of applications such as internet
networking and communication equipment, and
robustness is among the most important design objectives
•
An effective approach for reducing the impact of Single
Event Upset can lead to higher mean-time-tofailure(MTTF), increased quality of service, and reduced
maintenance cost
Single Event Upset (SEU)
•
Single Event Upsets (SEUs) : one of the main causes of
reliability reduction caused by charge particle strikes due
to cosmic radiation which create soft errors
•
Major effect on circuits : change the logic state of a static
memory element
•
Trend : SEU vulnerability is increasing with technology
shrinking
SEU in FPGAs
Thousands
•
Most of the commercial FPGAs employ SRAM as their
configuration memory elements for higher logic density
and programming flexibility
Three of the major memory elements in FPGAs : user
flip-flop, block RAM, and configuration RAM
Quantity
•
50000
45000
40000
35000
30000
25000
20000
15000
10000
5000
0
User Flip-Flop
Block RAM
xc5vlx220t
Configuration
RAM
Single Event Upset in FPGA
•
The circuit effect of SEUs in a FPGA is permanent until
the FPGA is re-programmed
 Interconnect :
 Logic :
LUT
I1
0
0
0
1
I2
I1
0
Configuration
Bits
MUX
I2
1
0
0
1
1
0
Configuration
Bits
SEU on Configuration RAM is much more critical!
Demand for In-Place Reliability Optimizations
•
Triple Modular Redundancy (TMR) is the most popular
fault tolerant technique, but it requires more than 3X
overhead on power, area, and cost
•
For non-mission critical applications, such as
communication systems, robustness improvement with
little or no overhead is highly demanded
•
In-place optimization techniques provide reliability
improvement while preserving circuit placement and
routing, and therefore the overhead is minimal
In-Place Resyntheses Flow
•
Mitigation after placement and routing without change of
placement and routing (and no change on design closure)
Design Entry
Logic Synthesis
In-Place Resyntheses
Map
In-Place Decomposition
(IPD)
Placement and Routing
Bitstream
In-Place LUT Polarity
Inversion (IPV)
Outline
•
Introduction
•
In-Place Decomposition (IPD)
•
In-Place LUT Polarity Inversion (IPV)
•
Experimental Results
•
Conclusions & Future Works
Fault Metrics
•
Soft Error Rate(SER) of a configuration SRAM bit:
1
SERb  n | {x | C ( x)  Cb ( x)} |
2
•
Mean-Time-To-Failure (MTTF)
•
System level measurement of reliability
•
For single fault model, MTTF  1/average(SERb)
In-Place LUT Decomposition
•
Leveraging the dual-output feature of LUT architecture
and the built-in carry chains
Dual-output 6LUT
Xilinx Virtex-5 6-input LUT architecture
LUT Decomposition
•
Decomposition : F = C( F1, F2, ……, Fn )
(C is the converging logic function)
Decomposition
Original LUT
Decomposed LUT
Example 1 : In-Place Duplication
Input
Output
SER
00000
0
S0
00001
0
S1
00010
0
S2
•
……
5-input AND function
……
……
5-input
11110
0
S30
11111
1
S31
The average SER of the LUT is : (S0+……+ S31)/32
Example 1 : In-Place Duplication
0 -> 1
Input
Output
SER
00000
0
S0
00001
0
S1
00010
0
S2
……
……
……
…...
Orig
11110
0
S30
11111
1
S31
Input
Output
SER
00000
0
S0
00001
0
S1
00010
0
S2
Covered
F
…...
Dup
0
……
……
……
•
11110
0
S30
11111
1
S31
Covered
The average SER of the LUT is reduced to (2*S31)/32
Example 2 : In-Place Decomposition
000
0
AS0
001
0
AS1
……
•
SER
……
F
•
Output
……
3LUT
2LUT
Input
110
0
AS6
111
1
AS7
Input
Output
SER
00
0
BS0
01
0
BS1
10
0
BS2
11
1
BS3
The number of SRAM bits used is reduced from 32 to 12,
and the SERs of unused bits are 0
The average SER is also reduced due to logic masking of
the converging logic
Outline
•
Introduction
•
In-Place Decomposition (IPD)
•
In-Place LUT Polarity Inversion (IPV)
•
Experimental Results
•
Conclusions & Future Works
Fault Masking for MUX
• Fault is masked when logic(i) = logic(j)
SEU on a routing MUX
b
…
…
b1
bm
MUX m
logic(i)
pin i
…
…
logic(j)
pin j
Example of Fault Masking
b1
MUX m
v(i)
v(j)
0 1 0 1 0 1 1 0 0 1 (+)
……
1 1 1 0 1 0 0 1 1 1 (+)
bm
MUX m
0 1 0 1 0 1 1 0 0 1 (+)
……
0 0 0 1 0 1 1 0 0 0 (–)
observ(m) 1 0 1 0 1 0 1 0 1 0
1010101010
soft error
0000000000
1010101010
bk
…
bm
…
bk
…
…
b1
SER(bk)=( v(i)  v(j) ) · observ(m)
observ(m) is the fault observability at MUX m : the
probability of the fault that can be propagated to
the primary outputs
LUT Polarity Inversion
a,+
b,+
a,+
b,+
c,+
(000) = 0
(001) = 1
(010) = 0
(011) = 1
(100) = 0
(101) = 1
(110) = 1
(111) = 0
c,+
(000) = 1
(001) = 0
(010) = 1
(011) = 0
(100) = 1
(101) = 0
(110) = 0
(111) = 1
o,-
(000) = 1
(001) = 0
(010) = 0
(011) = 1
(100) = 1
(101) = 0
(110) = 1
(111) = 0
o,+
LUT inversion
o,+
a,b,+
c,-
Fanout adjustment
Polarity can be determined independently
for each input and the output of an LUT
Inversion to Reduce SER
b1
MUX m
1 (90%)
0 (10%)
1 (20%)
0 (80%)
pin i, +
…
…
pin j, +
SER: 1-0.9*0.20.1*0.8=0.74
b
…
bm
…
b
…
…
b1
bm
MUX m
1 (90%)
0 (10%)
0 (20%)
1 (80%)
pin i, +
…
…
pin j, -
SER: 1-0.9*0.80.1*0.2=0.26
Outline
•
Introduction
•
In-Place Decomposition (IPD)
•
In-Place LUT Polarity Inversion (IPV)
•
Experimental Results
•
Conclusions & Future Works
Improvement by IPD
SER reduction for MCNC benchmarks mapped to 6-input LUTs
LUT-Level
ABC
Chip-level
IPD
ABC
IPD
alu4
0.34%
0.11%
0.45%
3.23%
apex2
0.29%
0.04%
0.33%
2.67%
apex4
1.16%
0.25%
1.41%
10.63%
des
1.42%
1.01%
2.43%
13.95%
ex1010
1.24%
0.29%
1.53%
11.60%
exp5p
0.73%
0.24%
0.97%
7.06%
misex3
0.55%
0.10%
0.65%
5.08%
pdc
0.91%
0.11%
1.02%
8.51%
seq
0.63%
0.11%
0.74%
5.78%
spla
1.14%
0.16%
1.30%
10.67%
SER Ratio
1.00
0.22
1.00
0.94
MTTF Imp.
1.00
4.52
1.00
1.07
IPV increase LUT-level MTTF by 4.52x, and
chip-level MTTF by 1.07x (due to
dominance of interconnects)
Improvement by IPV
SER for MCNC benchmarks mapped to 6-input LUTs
Interconnect
ABC
Chip-level
IPV
ABC
IPV
alu4
3.06%
1.54%
3.40%
0.88%
apex2
2.61%
0.70%
2.90%
1.04%
apex4
10.44%
2.13%
11.60%
6.37%
des
12.78%
11.71%
14.20%
13.03%
ex1010
11.16%
1.50%
12.40%
4.40%
exp5p
6.57%
3.46%
7.30%
4.10%
misex3
4.95%
1.66%
5.50%
2.20%
pdc
8.19%
0.65%
9.10%
1.24%
seq
5.67%
1.67%
6.30%
1.28%
spla
10.26%
0.73%
11.40%
1.47%
SER Ratio
1.00
0.25
1.00
0.33
MTTF Imp.
1.00
3.99
1.00
3.07
IPV on average increases chip-level MTTF
by 3.07X
Less than 50% LUTs need to be inverted
Improvement by Combined Algorithms
Averaged SER reduction for MCNC benchmarks mapped to 6-input LUTs
Combined
Algorithms
LUT Level
Chip Level
IPF + IPD
66.53%
19.63%
IPF + IPV
14.76%
65.30%
IPD + IPV
76.06%
67.48%
IPF + IPD + IPV
66.53%
70.53%
IPF+IPD+IPV reduces chip-level SER by 70.53%  3.39x chip-level MTTF increase
Zhe Feng, Naifeng Jing and Lei He, “IPF: In-Place X-Filling to Migrate Soft Errors in SRAM-Based FPGAS,” FPL 2011
Conclusions & Future Works
•
Proposed two robust resynthesis techniques, In-Place
Decomposition(IPD) for logic and In-Place LUT Polarity
Inversion(IPV) for interconnect, to improve circuit
robustness without global overhead
•
We show on average 3.39X MTTF improvement on the
MCNC benchmark circuits when combining IPD, IPV,
and IPF
•
In the future, we will develop more in-place resynthesis
techniques and investigate the interaction among different
techniques
Thank you!
Download