Download presentation
Presentation is loading. Please wait.
Published byAndrea Quinn Modified over 9 years ago
1
Cross-layer Optimized Placement and Routing for FPGA Soft Error Mitigation Keheng Huang 1,2, Yu Hu 1, and Xiaowei Li 1 1 Key Laboratory of Computer System and Architecture Institute of Computing Technology Chinese Academy of Sciences 2 Graduate University of Chinese Academy of Sciences
2
2 Outline Background Motivation Cross-layer optimized placement and routing Experimental results Conclusions
3
3 Background Architecture of SRAM-based FPGAs
4
4 Background Architecture of SRAM-based FPGAs Segments
5
5 Background Architecture of SRAM-based FPGAs Segments
6
6 Background Architecture of SRAM-based FPGAs Configuration bits (>98% of all SRAM bits) –Routing resources (80% of configuration bits) User bits (<2% of all SRAM bits) The reliability of routing resources needs to be seriously considered during placement and routing Segments
7
7 Reliability Oriented EDA Flow Synthesis and mapping Design specification Gate-level netlist Bit Stream Placement and routing Application design level Physical design level RoRA [TC’06] TMR designs only SEU-Aware P & R [ISQED’07] Dimensions of bounding box Reliability-aware P & R [ITC’10] Dimensions of bounding box SEU-Aware Router [DAC’07] Number of configuration bits
8
8 Soft Error Rate (SER) Propagation probability Occurrence probability SER evaluation criterion Application level factor (EPP) Application level factor (EPP) Physical level factor (Node error rate) Physical level factor (Node error rate) +
9
9 Key Observation Application level factor (EPP) Application level factor (EPP) Physical level factor (Node error rate) Physical level factor (Node error rate) Prior P & R guidance criterion All EPPs are equal? Physical level factor (Bounding boxes, Configuration bits) Physical level factor (Bounding boxes, Configuration bits) Estimated SER + SER evaluation criterion
10
10 Key Observation Application level factor (EPPs) varies significantly Gini coefficientInequality degree <0.2Absolutely equal 0.2-0.3Relatively equal 0.3-0.4Moderately unequal 0.4-0.5The gap is relatively large >0.6Quite unequal
11
11 Key Observation Application level factor (EPPs) varies significantly Gini coefficientInequality degree <0.2Absolutely equal 0.2-0.3Relatively equal 0.3-0.4Moderately unequal 0.4-0.5The gap is relatively large >0.6Quite unequal
12
12 Cross-layer Optimized Placement and Routing Overview
13
13 Cross-layer Optimized Placement and Routing Overview
14
14 Cross-layer Optimized Placement and Routing Overview
15
15 Cross-layer Optimized Placement and Routing Overview
16
16 Cross-layer Optimized Placement and Routing Overview
17
17 Cross-layer Optimized Placement and Routing Overview
18
18 Cube-based EPP Analysis Error propagation probability (EPP) Monte Carlo simulation –Test vectors (high accuracy) –Traverse the design N times (high complexity) Static analysis –Signal probability and error propagation rules (lower accuracy) –Traverse the design twice per fault (lower complexity)
19
19 Cube-based EPP Analysis Error propagation probability (EPP) Monte Carlo simulation –Test vectors (high accuracy) –Traverse the design N times (high complexity) Static analysis –Signal probability and error propagation rules (lower accuracy) –Traverse the design twice per fault (lower complexity) A method with high accuracy and low complexity?
20
20 Cube-based EPP Analysis Besides 0 and 1, “X” bit is introduced Introduce the cube and cover in logic synthesis Covers adjoin V :(set union: ∪ ) Covers interface I :(set intersection: ∩ ) 0XX = {000,001,010,011} cover ={0XX, 1XX} cube adjoin :{00X} V {01X} = {0XX} interface: {00X} I {001} = {001}
21
21 Cube-based EPP Analysis Forward traverse: compute the vectors that set the logic of the wire as 0 and 1 respectively
22
22 Cube-based EPP Analysis Forward traverse: compute the vectors that set the logic of the wire as 0 and 1 respectively
23
23 Cube-based EPP Analysis Forward traverse: compute the vectors that set the logic of the wire as 0 and 1 respectively Backward traverse: compute the vectors that can propagate the fault to outputs
24
24 Cube-based EPP Analysis Forward traverse: compute the vectors that set the logic of the wire as 0 and 1 respectively Backward traverse: compute the vectors that can propagate the fault to outputs
25
25 Application level factor Error propagation probability (EPP) Compare with traditional Monte Carlo simulation For each fault, traverse the design N times N care-cover : number of vectors stored in care-cover N inputs : total number of input vectors
26
26 Application level factor Comparison of computational complexity N: number of input vectors V: number of LUTs E: number of interconnecting wires g: number of configuration bits per LUT or wire C avg : average compression ratio of all covers AlgorithmComputational complexity Monte Carlo SimulationO(N*V*g*(V+E)) Static AnalysisO(V 2 *(V +E)) Cube-based EPP AnalysisO((N/C avg ) 2 *(V+E))
27
27 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
28
28 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
29
29 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
30
30 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
31
31 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
32
32 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
33
33 Cross-layer Optimized Placement Total cost=a*timing cost + b*congestion cost + c*SER cost SER cost= Phy cost * App cost
34
34 Cross-layer Optimized Routing Finer granularity estimate of SER
35
35 Cross-layer Optimized Routing Finer granularity estimate of SER
36
36 Cross-layer Optimized Routing Finer granularity estimate of SER
37
37 Cross-layer Optimized Routing Finer granularity estimate of SER
38
38 Cross-layer Optimized Routing Finer granularity estimate of SER
39
39 Cross-layer Optimized Routing Finer granularity estimate of SER
40
40 Experimental Setup MCNC benchmark set Berkeley ABC mapper Gate-level netlist Bit Stream VPR: Academic FPGA placement and routing tool Logic resources: 4 6-input LUTs per CLB Routing channel width: 30% increase
41
41 Experimental results Comparison of EPP accuracy and run time Monte Carlo simulation DCOW: partial Monte Carlo simulation Cube-based EPP analysis Comparison of SER mitigation Original VPR Guided by physical level factor only (PPL) Cross-layer optimized placement and routing algorithm (COPAR)
42
42 Comparison of EPP Accuracy and Run Time Monte Carlo simulation (golden model) DCOW: partial Monte Carlo simulation (DAC’10) Cube-based analysis (our method) N cube : number of test vectors computed by cube-based analysis N sim : number of test vectors computed by Monte Carlo simulation N inputs : total number of input vectors
43
43 Circuit Monte Carlo simulationCube-based analysisGap(10 -4 ) † N sim (10 5 )Time(s)N cube (10 5 )Time(s)G cube G DCOW alu420.46331420.451860.2120 apex2122.85N/A122.6942/itr0.2571052 apex42.894612.895400 clma126.79N/A126.8935/itr0.05291336 misex331.279852831.23780.6040 pdc533.11647142533.2742300.1950 s29836.70105536.70100 s384172724.22N/A2725.37395/itr0.533344 s38584.12385.31N/A2385.50252/itr0.095122 seq689.72N/A689.4113/itr0.236516 spla698.48569302698.4814400.000130 bigkey876.46N/A876.4614/itr014 des868.03N/A868.0312/itr00 diffeq432.85N/A432.859/itr0379 dsip1158.63N/A1158.6324/itr00 elliptic240.35N/A240.353/itr0192 ex10102.501093252.506900 ex5p0.473050.47160.0240 frisc1706.43N/A1706.44107/itr0.00585472 tseng1436.15N/A1436.2413/itr0.0786247 Geomean704.68178679704.747590.115234 Comparison of EPP Accuracy and Run Time
44
44 Circuit Monte Carlo simulationCube-based analysisGap(10 -4 ) † N sim (10 5 )Time(s)N cube (10 5 )Time(s)G cube G DCOW alu420.46331420.451860.2120 apex2122.85N/A122.6942/itr0.2571052 apex42.894612.895400 clma126.79N/A126.8935/itr0.05291336 misex331.279852831.23780.6040 pdc533.11647142533.2742300.1950 s29836.70105536.70100 s384172724.22N/A2725.37395/itr0.533344 s38584.12385.31N/A2385.50252/itr0.095122 seq689.72N/A689.4113/itr0.236516 spla698.48569302698.4814400.000130 bigkey876.46N/A876.4614/itr014 des868.03N/A868.0312/itr00 diffeq432.85N/A432.859/itr0379 dsip1158.63N/A1158.6324/itr00 elliptic240.35N/A240.353/itr0192 ex10102.501093252.506900 ex5p0.473050.47160.0240 frisc1706.43N/A1706.44107/itr0.00585472 tseng1436.15N/A1436.2413/itr0.0786247 Geomean704.68178679704.747590.115234 Comparison of EPP Accuracy and Run Time
45
45 Circuit Monte Carlo simulationCube-based analysisGap(10 -4 ) † N sim (10 5 )Time(s)N cube (10 5 )Time(s)G cube G DCOW alu420.46331420.451860.2120 apex2122.85N/A122.6942/itr0.2571052 apex42.894612.895400 clma126.79N/A126.8935/itr0.05291336 misex331.279852831.23780.6040 pdc533.11647142533.2742300.1950 s29836.70105536.70100 s384172724.22N/A2725.37395/itr0.533344 s38584.12385.31N/A2385.50252/itr0.095122 seq689.72N/A689.4113/itr0.236516 spla698.48569302698.4814400.000130 bigkey876.46N/A876.4614/itr014 des868.03N/A868.0312/itr00 diffeq432.85N/A432.859/itr0379 dsip1158.63N/A1158.6324/itr00 elliptic240.35N/A240.353/itr0192 ex10102.501093252.506900 ex5p0.473050.47160.0240 frisc1706.43N/A1706.44107/itr0.00585472 tseng1436.15N/A1436.2413/itr0.0786247 Geomean704.68178679704.747590.115234 Comparison of EPP Accuracy and Run Time
46
46 Comparison of SER Mitigation Circuit VPR(baseline)PPLCOPAR SER(FIT † )SER(FIT)RatioSER(FIT)Ratio alu417.0517.08100.17%14.2583.58% apex218.4018.0798.21%14.0476.30% apex4118.40105.9889.52%98.0882.84% clma23.3120.1286.33%19.7884.85% misex324.7630.05121.33%21.5687.05% pdc175.04212.12121.18%141.0980.60% s2982.681.9271.52%1.6963.11% s38417547.02503.3092.01%524.9595.96% s38584.1620.70586.4794.49%567.2291.38% seq49.2346.0793.56%38.6478.48% spla269.48247.1891.72%200.0374.23% bigkey159.87151.5694.80%130.0981.38% des130.70118.6090.75%123.7994.72% diffeq91.0882.8190.92%81.8189.83% dsip208.98168.5380.65%207.9399.50% elliptic42.6639.5192.63%39.9093.55% ex1010122.41117.9796.37%96.0178.44% ex5p32.0229.2391.29%28.7689.84% frisc488.89431.8688.33%455.1693.10% tseng125.74106.5384.72%117.5893.51% Geomean163.42151.7593.53%146.1285.61%
47
47 Comparison of SER Mitigation 100% 93.53% 85.61%
48
48 Conclusions Observe the gap between the SER evaluation criterion and guidance criterion for soft error mitigation (gini coefficient=0.646) Introduce cube-based EPP analysis to compute the application level factor (gap<1%) Propose a cross-layer optimized placement and routing algorithm (SER mitigation>14%)
49
49 Thank You for Your Attention Question?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.