Robust fpga resynthesis based on fault tolerant boolean matching
Download
1 / 34

Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching - PowerPoint PPT Presentation


  • 83 Views
  • Uploaded on

Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching. Yu Hu 1 , Zhe Feng 1 , Lei He 1 and Rupak Majumdar 2 1 Electrical Engineering Dept., UCLA 2 Computer Science Dept., UCLA Presented by Yu Hu. Address comments to [email protected] Outline. Background and Motivation

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching' - kera


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Robust fpga resynthesis based on fault tolerant boolean matching

Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching

Yu Hu1, Zhe Feng1, Lei He1 and Rupak Majumdar2

1Electrical Engineering Dept., UCLA

2Computer Science Dept., UCLA

Presented by Yu Hu

Address comments to [email protected]


Outline
Outline Matching

  • Background and Motivation

  • Preliminaries

  • Robust Resynthesis Algorithms

  • Experimental Results

  • Conclusion and Future Work


Background
Background Matching

  • Late CMOS scaling reduces device reliability

  • Single event upset (SEU) due to cosmic rays

    • Affects configuration SRAM cells in FPGAs

      • Permanent soft error rate (SER)

      • Need rewriting SRAM for recovery

    • Affects combinational circuits and FFs

      • Transient SER

      • Can be recovered in multiple clock cycles



Fault tolerance techniques for fpgas1
Fault Tolerance Techniques for FPGAs Matching

Our work

Low-cost, complementary approach to existing techniques!

[A. Djupdal and P. Haddow, Yield Enhancing Defect Tolerance Techniques for FPGAs, MAPLD 2006]


Stochastic synthesis and logic masking
Stochastic Synthesis and Logic Masking Matching

  • Stochastic synthesis assumes probabilistic logic values to model effect of random defects

    • Break the conventional Boolean view which assumes deterministic Boolean ‘0’ and ‘1’ values

  • Key to stochastic synthesis: Logic Masking

Masked faults

0

1


Stochastic synthesis and logic masking cont
Stochastic Synthesis and Logic Masking (cont.) Matching

  • Stochastic Synthesisintelligently places logic masking.

  • Logic Masking reduces the probability of the propagation of random faults

    • Maximizes the stochastic yield

  • However, logic synthesis to maximize yield rate w/o explicit redundancy and testing has not been studied for fault tolerance!

  • Key questions

    • How much does logic masking affect robustness?

    • How and where to place logic masking?


How much logic masking affect robustness
How much Logic Masking Affect Robustness? Matching

Different synthesis leads to different logic masking.

Stochastic synthesis maximizes logic masking!

18 synthesis solutions obtained by Berkeley ABC

(for MCNC i10, LUT bit fault rate = 0.1%)


How and where to place logic masking our major contributions
How and Where to Place Logic Masking? Matching— Our Major Contributions

  • Propose a Robust FPGA resynthesis (ROSE)

    • Maximize the stochastic yield rate for FPGAs

    • No need to locate faults

    • Use the same synthesis for different chips of one FPGA application

  • Proposed a new PLB template for robustness

  • ROSE + Robust Template reduces fault rate by 25% with 1% fewer LUTs, and increases MTBF by 31% while preserving the logic depth

    • compared to Berkeley ABC


Outline1
Outline Matching

  • Background

  • Preliminaries

  • Robust Resynthesis

  • Experimental Results

  • Conclusion and Future Work


Fpga synthesis flow
FPGA Synthesis Flow Matching

  • Attempt to re-map a logic block by Boolean matching

  • Boolean matching can be used to handle both homogenous and heterogeneous PLBs


Fpga synthesis flow cont
FPGA Synthesis Flow (cont.) Matching

  • Multi-iterations of Boolean Matching-based Resynthesis

(Source: Andrew Ling, University of Toronto, DAC'05)


Boolean matching for resynthesis
Boolean Matching for Resynthesis Matching

2-LUT

f

g

2-LUT

2-LUT

2-LUT

?

2-LUT

  • Formulate the sub-problem of resynthesis to Boolean matching (BM)

    • BM: Can function fbe implemented in circuit g ?

    • Resynthesis: Is there a configuration to gso that for all inputs to g, f is equivalent to g?

  • Existing algorithms: area/delay-optimal

(Source: Andrew Ling, University of Toronto, DAC'05)


Outline2
Outline Matching

  • Background

  • Preliminaries

  • Robust Resynthesis

    • Problem Formulation

    • FTBM Algorithm

    • Robust PLB Template

  • Experimental Results

  • Conclusion and Future Work


Modeling of faults
Modeling of Faults Matching

  • Model both faults in LUT configurations and the faults in intermediate wires as random variables, whose probabilities are given as inputs of our problem.


Rose robust resynthesis w ftbm
ROSE: Robust Resynthesis w/ FTBM Matching

  • Boolean Matching

    • Inputs

      • PLB H and Boolean function F

      • Fault rates for the inputs and the SRAM bits of the PLB

    • Outputs

      • Either that F cannot be implemented by PLB H

      • Or the configuration of Hwhich minimizes the probability that the faults are observable in the output of the PLB under all input vectors.

    • FTBM tasks breakdown:

      • Step 1: Find a Boolean matching solution

      • Step 2: Evaluation the stochastic fault rate of a solution

  • Fault-Tolerant Boolean Matching


Ftbm step1 sat encoding for ftbm
FTBM Step1: SAT Encoding for FTBM Matching

Conjunctive Normal Form (CNF)

  • If implementable, multiple configurations might exist

  • The one with minimal fault rate is needed!


Ftbm step2 fault rate calculation based on ssat

Stochastic SAT Matching

Deterministic SAT

Deterministic SAT vs. SSAT

FTBM Step2: Fault Rate Calculation Based on SSAT

  • Simulation-based fault rate calculation

    • Not scalable for multiple defects

  • SAT-based fault rate calculation

    • Intelligently modeling random defects


Ssat encoding for fault rate calculation

GUI Version 1 Matching

SSAT Encoding for Fault Rate Calculation

Binary search is performed to find the maximal β

Faults in intermediate wires

Faults in LUT configurations


Example sat based ftbm

Boolean Matchingmatching

Example: SAT-Based FTBM

g= !x1!x3+ !x2

PLB Template

Boolean function


Example sat based ftbm step1 cnfs for the plb template

PLB Characteristic Function: MatchingG = G LUT1 ·G LUT2 · G LUT3

Example: SAT-Based FTBMStep1: CNFs for the PLB template

G LUT = ( x1 + x2+ ¬L0 + z) ( x1 + x2+ L0 + ¬ z)

( x1 + ¬x2+ ¬L1 + z) ( x1 + ¬x2+ L1 + ¬ z)

(¬x1 + x2+ ¬L2 + z) (¬x1 + x2+ L2 + ¬ z)

(¬x1 + ¬x2+ ¬L3 + z) (¬x1 + ¬x2+ L3 + ¬ z)


Example sat based ftbm step2 replication based on truth table

SAT Instance: Matching

G expand = G[X/000, f/1, z/z0] · G[X/001, f/1, z/z1]

G[X/010, f/1, z/z2] · G[X/011, f/0, z/z3]

G[X/100, f/1, z/z4] · G[X/101, f/1, z/z5]

G[X/110, f/0, z/z6] · G[X/111, f/0, z/z7]

Example: SAT-Based FTBMStep2: Replication based on Truth Table

G = G LUT1 ·G LUT2· G LUT3

Replication


Example sat based ftbm step3 sat solving and mapping

SAT Instance: Matching

G expand = G[X/000, f/1, z/z0] · G[X/001, f/1, z/z1]

G[X/010, f/1, z/z2] · G[X/011, f/0, z/z3]

G[X/100, f/1, z/z4] · G[X/101, f/1, z/z5]

G[X/110, f/0, z/z6] · G[X/111, f/0, z/z7]

Example: SAT-Based FTBMStep3: SAT Solving and Mapping

Returned SAT assignments: L1(00) = 0, L1(01)=0, L1(10)=0, L1(11)=1, …

SAT!


Example sat based ftbm step4 exploring more sat solutions

¬ (L1(00) = 0, L1(01)=0, L1(10)=0, L1(11)=1, …) Matching

/* Complement of previous SAT assignments */

Augmented SAT Instance:

G expand = G[X/000, f/1, z/z0] · G[X/001, f/1, z/z1]

G[X/010, f/1, z/z2] · G[X/011, f/0, z/z3]

G[X/100, f/1, z/z4] · G[X/101, f/1, z/z5]

G[X/110, f/0, z/z6] · G[X/111, f/0, z/z7]

New Configuration

Previous Configuration

Example: SAT-Based FTBMStep4: Exploring More SAT Solutions

Fault rate = 0.2

Fault rate = 0.3


Plb templates for sat based resynthesis
PLB Templates for SAT-based Resynthesis Matching

  • Area efficient templates [A. Ling, DAC’05]

  • Proposed robust template w/ path-reconvergence

    • Can be configured by existing FPGAs


Templates for sat based resynthesis cont
Templates for SAT-based Resynthesis (cont.) Matching

  • Robust PLB template introduces more potential of don’t-cares

  • ROSE maximizes don’t-cares iteratively at each template output

Observability don’t-care

Satisfiability don’t-care


Outline3
Outline Matching

  • Background

  • Preliminaries

  • Robust Resynthesis

  • Experimental Results

  • Conclusion and Future Work


Experimental settings
Experimental Settings Matching

  • Implementation in OAGear

    • SAT-BM uses miniSAT2.0

  • QUIP benchmarks are tested

    • Are first mapped with 4-LUTs by Berkeley ABC

  • Resynthesis settings

    • One traversal is performed

    • Blocks with up to 10 inputs are considered

  • The fault rate of the chip is calculated by Monte Carlo simulation with 20K random vectors assuming the single fault

  • Results are verified by ABC equivalency checkers


Full chip fault rate by monte carlo simulation

>30% fault rate reduction! Matching

Full-chip Fault Rate by Monte Carlo Simulation

  • Fault rate is the percentage of input vectors that cause observable output errors assuming the single fault.


Area lut
Area (LUT#) Matching

ABC vs. ROSE/A vs. ROSE/R:

1: 0.9 : 0.99


Estimation of mean time between failure

31% MTBF increase! Matching

Estimation of Mean Time Between Failure

  • SER modeling: [Mukherjee, HPCA, 2005]

  • Assume max-size FPGA: 330,000 LUTs


Outline4
Outline Matching

  • Background

  • Preliminaries

  • Robust Resynthesis

  • Experimental Results

  • Conclusion and Future Work


Conclusions and future work
Conclusions and Future Work Matching

  • Developed ROSE and a robust template.

    • ROSE is an orthogonal approach compared to existing fault-tolerant technique.

    • Virtually no overhead on power, delay and area

  • In the future, we will consider

    • Multiple correlated faults,

    • Alternative algorithms,

    • Extension to standard cell-based circuits,

    • Impacts on testability.


Robust FPGA Resynthesis Based on Fault-Tolerant Boolean Matching

Yu Hu, Zhe Feng, Rupak Majumdar and Lei He

University of California, Los Angeles


ad