RALF: Reliability Analysis for Logic Faults – An Exact Algorithm and its Applications Samuel Luckenbill1, Ju-Yueh Lee2, Yu Hu3, Rupak Majumdar1, and Lei He2 1Computer Science Dept., UCLA 2Electrical Engineering Dept., UCLA 3Electrical Engineering Dept., University of Alberta, Edmonton Canada
Outline RALF Overview Circuit Representation Algorithms Experimental results
RALF Features Single-gate criticality: The probability that a flipped bit at one gate will affect the output Full-chip fault rate: The average criticality over all gates in a circuit
Applications for RALF Circuit optimization for reliability Random pattern-resistant fault identification to enhance testability Optimality studies of approximate algorithms
RALF System Exact symbolic algorithm Compiles miter to d-DNNF (similar to BDD) Computes criticality in one pass over d-DNNF Circuit Miter CNF d-DNNF Fault Rate
Miter-Based Calculation Criticality of G: Fraction of assignments to primary inputs Xi for which O = 1
Compiled Circuit Representation Deterministic Decomposable Negation Normal Form (d-DNNF) A subset of NNF which satisfies Decomposability Determinism
Why d-DNNF? Almost as powerful as BDD Polytime operations include SAT, model counting, and model enumeration Usually more concise than BDD and faster to compile Determinism and decomposability make the criticality computation efficient Compiler: http://reasoning.cs.ucla.edu/c2d
Negation Normal Form A B B A C D D C and or A circuit representation where all of the inverters have been pushed to the inputs and all internal nodes are either AND or OR.
Decomposability or and and or or or or and and and and and and and and No two children of AND share a variable or and and A,B C,D or or or or Decomposability only applies to AND nodes. An AND node is decomp. If its children do not mention the same variable. An NNF is decomposable if every AND node in the graph is decomposable. and and and and and and and and A B B A C D D C
Determinism or and and or or or or and and and and and and and and A No two children of OR share a satisfying assignment or and and or or or or Determinism on the other hand is a property of OR nodes. An OR node is deterministic if its children do not share a model and we say that an NNF is deterministic if every OR node in the graph is deterministic. and and and and and and and and A B B A C D D C
Criticality Algorithm d-DNNF is a representation of the miter Invariant: at each node, we compute the probability that the circuit below it evaluates to 1 Value computed at root is the criticality of the faulty node in the miter Computation is linear in d-DNNF size
Evaluating d-DNNF α α β β Pr(L) 1 - Pr(L) (e.g. 0.5 for a uniform distribution over the inputs) L 1 - Pr(L) L The value of a leaf node is simply the probability that the primary input it represents is set to true The value of an AND node is the product of its children’s values The value of an OR node is the sum of its children’s values AND Pr(AND) = Pr(α) * Pr(β)(Requires Decomposability) α β OR Pr(OR) = Pr(α) + Pr(β) (Requires Determinism) α β
Circuit Characteristics Tractability Circuit Characteristics Performance Name Gates Inputs d-DNNF Nodes BDD Nodes Compile Time Total Run Time i7 581 199 79637 - 138.24 mult32a 535 34 166976 118.85 i6 455 138 67295 895599 58.31 i5 402 133 507965 59.99 b9 296 41 725729 67.97 i4 292 192 20231 3.78 my_adder 259 33 29865 116621 10.03 cht 244 47 175055 2084948 8.55 i2 238 201 103434 398017 4.84 lal 234 26 523283 67.77
Random-Pattern Resistant Faults Logic Masking
Detection of Random-Pattern Resistant Faults
Fidelity of Monte Carlo Simulation
Conclusion RALF performs surprisingly well on MCNC circuits, despite being an exact algorithm RALF uses d-DNNF, a less powerful but usually more succinct circuit representation than BDD. For criticality and fault-rate computation, Monte Carlo simulation is good enough for most circuits
Thank you