y1 y2 DEMUX a b x1 x2 x3 x4 NETWORK s1 s2 z1 z2

Similar documents
Unit 4. Combinational Circuits

m2 m3 m1 (a) (b) (c) n2 n3

Engr354: Digital Logic Circuits

Implication Graphs and Logic Testing

Logic Synthesis and Verification

Metodologie di progetto HW Technology Mapping. Last update: 19/03/09

Logic Synthesis and Verification

Algorithms & Data Structures Homework 8 HS 18 Exercise Class (Room & TA): Submitted by: Peer Feedback by: Points:

(Lec 9) Multi-Level Min III: Role of Don t Cares

Outline Last time: Deriving the State Diagram & Datapath (Cont.) Mapping the Datapath onto Control

Discrete Structures, Test 2 Monday, March 28, 2016 SOLUTIONS, VERSION α

Fault Modeling. EE5375 ADD II Prof. MacDonald

April 8, 2017 Math 9. Geometry. Solving vector problems. Problem. Prove that if vectors and satisfy, then.

MULTIPLE-LEVEL LOGIC OPTIMIZATION II

Chapter 4 State-Space Planning

22: Union Find. CS 473u - Algorithms - Spring April 14, We want to maintain a collection of sets, under the operations of:

Lecture Notes No. 10

Tutorial Worksheet. 1. Find all solutions to the linear system by following the given steps. x + 2y + 3z = 2 2x + 3y + z = 4.

Pre-Lie algebras, rooted trees and related algebraic structures

Comparing the Pre-image and Image of a Dilation

where the box contains a finite number of gates from the given collection. Examples of gates that are commonly used are the following: a b

Behavior Composition in the Presence of Failure

Project 6: Minigoals Towards Simplifying and Rewriting Expressions

The University of Nottingham SCHOOL OF COMPUTER SCIENCE A LEVEL 2 MODULE, SPRING SEMESTER MACHINES AND THEIR LANGUAGES ANSWERS

Minimal DFA. minimal DFA for L starting from any other

CS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6

1 PYTHAGORAS THEOREM 1. Given a right angled triangle, the square of the hypotenuse is equal to the sum of the squares of the other two sides.

Review of Gaussian Quadrature method

Arrow s Impossibility Theorem

SOLUTIONS TO ASSIGNMENT NO The given nonrecursive signal processing structure is shown as

Dorf, R.C., Wan, Z. T- Equivalent Networks The Electrical Engineering Handbook Ed. Richard C. Dorf Boca Raton: CRC Press LLC, 2000

Fujitsu Laboratories of America. 77 Rio Robles, San Jose CA happens when one attempts to compare the functionality. inputs is neglected.

Lecture 11 Binary Decision Diagrams (BDDs)

For a, b, c, d positive if a b and. ac bd. Reciprocal relations for a and b positive. If a > b then a ab > b. then

Technische Universität München Winter term 2009/10 I7 Prof. J. Esparza / J. Křetínský / M. Luttenberger 11. Februar Solution

Abstraction of Nondeterministic Automata Rong Su

Math 32B Discussion Session Week 8 Notes February 28 and March 2, f(b) f(a) = f (t)dt (1)

12.4 Similarity in Right Triangles

University of Sioux Falls. MAT204/205 Calculus I/II

1. Logic verification

AP Calculus BC Chapter 8: Integration Techniques, L Hopital s Rule and Improper Integrals

System Validation (IN4387) November 2, 2012, 14:00-17:00

Symmetrical Components 1

Propositional models. Historical models of computation. Application: binary addition. Boolean functions. Implementation using switches.

Arrow s Impossibility Theorem

8 THREE PHASE A.C. CIRCUITS

Hybrid Systems Modeling, Analysis and Control

( ) { } [ ] { } [ ) { } ( ] { }

16z z q. q( B) Max{2 z z z z B} r z r z r z r z B. John Riley 19 October Econ 401A: Microeconomic Theory. Homework 2 Answers

March eq Implementing Additional Reasoning into an Efficient Look-Ahead SAT Solver

MAT 403 NOTES 4. f + f =

INTEGRATION. 1 Integrals of Complex Valued functions of a REAL variable

Lecture Summaries for Multivariable Integral Calculus M52B

Genetic Programming. Outline. Evolutionary Strategies. Evolutionary strategies Genetic programming Summary

Data Structures and Algorithm. Xiaoqing Zheng

Chapter Gauss Quadrature Rule of Integration

Matrices SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics (c) 1. Definition of a Matrix

Model Reduction of Finite State Machines by Contraction

Finite Automata-cont d

Combinational Logic. Precedence. Quick Quiz 25/9/12. Schematics à Boolean Expression. 3 Representations of Logic Functions. Dr. Hayden So.

Solutions to Assignment 1

Can one hear the shape of a drum?

Learning Partially Observable Markov Models from First Passage Times

CS 2204 DIGITAL LOGIC & STATE MACHINE DESIGN SPRING 2014

A Study on the Properties of Rational Triangles

Efficient Implication - Based Untestable Bridge Fault Identifier*

Generalization of 2-Corner Frequency Source Models Used in SMSIM

Alpha Algorithm: Limitations

TIME AND STATE IN DISTRIBUTED SYSTEMS

CS415 Compilers. Lexical Analysis and. These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University

ANALYSIS AND MODELLING OF RAINFALL EVENTS

Global alignment. Genome Rearrangements Finding preserved genes. Lecture 18

10 Vector Integral Calculus

Transition systems (motivation)

Chapter 3. Vector Spaces. 3.1 Images and Image Arithmetic

Section 1.3 Triangles

Now we must transform the original model so we can use the new parameters. = S max. Recruits

QUADRATIC EQUATION. Contents

State space systems analysis (continued) Stability. A. Definitions A system is said to be Asymptotically Stable (AS) when it satisfies

Welcome. Balanced search trees. Balanced Search Trees. Inge Li Gørtz

= state, a = reading and q j

Counting Paths Between Vertices. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs. Isomorphism of Graphs

VECTOR ALGEBRA. Syllabus :

CS 310 (sec 20) - Winter Final Exam (solutions) SOLUTIONS

The Word Problem in Quandles

expression simply by forming an OR of the ANDs of all input variables for which the output is

A Symbolic Approach to Control via Approximate Bisimulations

Necessary and sucient conditions for some two. Abstract. Further we show that the necessary conditions for the existence of an OD(44 s 1 s 2 )

CS12N: The Coming Revolution in Computer Architecture Laboratory 2 Preparation

Behavior Composition in the Presence of Failure

Algebra 2 Semester 1 Practice Final

Formal Languages and Automata

Solutions for HW9. Bipartite: put the red vertices in V 1 and the black in V 2. Not bipartite!

Worksheet #2 Math 285 Name: 1. Solve the following systems of linear equations. The prove that the solutions forms a subspace of

CARLETON UNIVERSITY. 1.0 Problems and Most Solutions, Sect B, 2005

Eigenvectors and Eigenvalues

A Lower Bound for the Length of a Partial Transversal in a Latin Square, Revised Version

THREE DIMENSIONAL GEOMETRY

(a) A partition P of [a, b] is a finite subset of [a, b] containing a and b. If Q is another partition and P Q, then Q is a refinement of P.

Discrete Structures Lecture 11

Transcription:

BOOLEAN METHODS Giovnni De Miheli Stnford University

Boolen methods Exploit Boolen properties. { Don't re onditions. Minimiztion of the lol funtions. Slower lgorithms, etter qulity results.

Externl don't re onditions Controllility don't re set CDC in : { Input ptterns never produed y the environment t the network's input. Oservility don't re set ODC out : { Input ptterns representing onditions when n output is not oserved y the environment. { Reltive to eh output. { Vetor nottion used: ODC out.

Exmple s1 s2 DEMUX x1 x2 x3 x4 NETWORK N1 y1 y2 z1 z2 N2 N3 o1 o2 Inputs driven y de-multiplexer. CDC in = x 0 1 x0 2 x0 3 x0 4 + x 1x2 + x1x3 + x1x4 + x2x3 + x2x4 + x3x4. Outputs oserved when ODC out = x1 x 4 = 1 2 6 4 x 0 1 x 0 1 x 0 4 x 0 4 3 7 5

Exmple overll externl don't re set DC ext = CDC in +ODC out = 2 6 4 x 0 1 + x 2 + x 3 + x 4 x 0 1 + x 2 + x 3 + x 4 x 0 4 + x 2 + x 3 + x 1 x 0 4 + x 2 + x 3 + x 1 3 7 5

Internl don't re onditions x CDC in y z ODC out SUBNETWORK NETWORK

Internl don't re onditions Indued y the network struture. Controllility don't re onditions: { Ptterns never produed t the inputs of sunetwork. Oservility don't re onditions: { Ptterns suh tht the outputs of sunetwork re not oserved.

Exmple x = + x = + y = x + x y = x + () () CDC of v y inludes 0 x + 0 x 0. Minimize f y to otin: f f y = x + 0.

Stisility don't re onditions Invrint of the network: { x = f x! x 6= f x SDC. SDC = X v x 2V G x f x Useful to ompute ontrollility don't res.

CDC omputtion Network trversl lgorithm: { Consider dierent uts moving from input to output. Initil CDC is CDC in. Move ut forwrd. { Consider SDC ontriutions of predeessors. { Remove unneded vriles y onsensus.

CDC omputtion g CONTROLLABILITY(G n (V E), CDC in ) f C = V I CDC ut = CDC in foreh vertex v x 2 V in topologil order f C = C [ v x CDC ut = CDC ut + f x x D = fv 2 C s.t. ll dir. su. of v re in Cg foreh vertex v y 2 D CDC ut = C y (CDC ut ) C = C ; D g CDC out = CDC ut

Exmple d z1 e z2 z1 z2 d z1 e z2 {d,e} d e {,} {,,x4} {x1,,x4} {x1,x2,x3,x4} x1 x2 x3 x4 x1 x2 x3 x4 x1 x2 x3 x4 () () ()

Exmple Assume CDC in = x 0 1 x0 4. Selet vertex v : { Contriution to CDC ut : (x 2 x 3 ). { Drop vriles D = fx 2 x 3 g y onsensus: { CDC ut = x 0 1 x0 4. Selet vertex v :... { Contriution to CDC ut : (x 1 + ). CDC ut = x 0 1 x0 4 + (x 1 + ). { Drop vrile x 1 y onsensus: CDC ut = 0 x 0 4 + 0. CDC out = e 0 = z 0 2.

CDC omputtion y imge omputtion Network ehvior t ut: f. CDC ut is just the omplement of the imge of (CDC in ) 0 with respet to f. CDC ut is just the omplement of the rnge of f when CDC in =. Rnge n e omputed reursively. { Terminl se: slr funtion. Rnge of y = f(x) is y + y 0 (ny vlue) unless f (or f 0 ) is tutology nd the rnge is y (or y 0 ).

Exmple RANGE VECTORS d e 0 0 1 0 1 1 rnge(f) = d rnge(( + )j d==1)+ +d 0 rnge(( + )j d==0) When d = 1, then = 1! + = 1 is TAUTOLOGY. If I hoose 1 s top entry in output vetor: { the ottom entry is lso 1. { 1?! 11 When d = 0, then = 0! + = f0 1g. If I hoose 0 s top entry in output vetor: { the ottom entry n e 0 or 1. rnge(f) = de + d 0 (e + e ) = 0 de + d = 0 d + 0 e

Exmple d z1 e z2 z1 z2 d z1 e z2 {d,e} d e {,} {,,x4} {x1,,x4} {x1,x2,x3,x4} x1 x2 x3 x4 x1 x2 x3 x4 x1 x2 x3 x4 () () () f = " # " f 1 (x1 + f 2 )(x = 4 + ) (x 1 + ) + (x 4 + ) # " x1 x = 4 + x 1 + x 4 + #

Exmple x4 x1 () () () rnge(f) = = d rnge(f 2 j (x 1x4+)=1) + d 0 rnge(f 2 j (x 1x4+)=0) = d rnge(x 1 + x 4 + j (x 1x4+)=1) + d 0 rnge(x 1 + x 4 + j (x 1x4+)=0) = d rnge(1) + d 0 rnge( 0 (x 1 x 4 )) = de + d 0 (e + e ) 0 = e + d 0 CDC out = (e + d 0 ) 0 = de 0 = z 1 z 0 2.

Perturtion method Modify network y dding n extr input. Extr input n ip polrity of signl x. Reple lol funtion f x y f x. Pertured terminl ehvior: f x ().

Exmple δ x x x y z y z y z () () ()

Oservility don't re onditions Conditions under whih hnge in polrity of signl x is not pereived t the outputs. Complement of the Boolen dierene: { @f=@x = fj x=1 fj x=0. Equivlene of pertured funtion: f x (0) f x (1).

Oservility don't re omputtion Prolem: { Outputs re not expressed s funtion of ll vriles. { If network is ttened to otin f, it my explode in size. Requirement: { Lol rules for ODC omputtion. { Network trversl.

Single-output network with tree struture Trverse network tree. At root: { ODC out is given. At internl verties: { ODC x = (@f y =@x) 0 + ODC y

Exmple e = + = x 1 + 1 e = x 4 + 2 x1 x4 1 2 Assume ODC out = ODC e = 0. ODC = (@f e =@) 0 = ( + )j =1 ( + )j =0 =. ODC = (@f e =@) 0 =. ODC x1 = ODC + (@f =@x1) 0 = + 1....

Generl networks e x1 x4 Fnout reonvergene. For eh vertex with two (or more) fnout stems: { The ontriution of the ODC long the stems nnot e dded tout ourt. { Interply of dierent pths. More elorte nlysis.

Two-wy fnout stem ODC y y z ODC z ODC x,y x x 1 2 ODC x,z x Compute ODC sets ssoited with edges. Comine ODCs t vertex. Formul derivtion: { Assume two equl perturtions on the edges. { ODC x = f x 1 x 2 (1 1) f x 1 x 2 (0 0)

ODC formul derivtion ODC x = f x 1 x 2 (1 1) f x 1 x 2 (0 0) = f x 1 x 2 (1 1) f x 1 x 2 (0 0) (f x 1 x 2 (0 1) f x 1 x 2 (0 1)) = (f x 1 x 2 (1 1) f x 1 x 2 (0 1)) (f x 1 x 2 (0 1) f x 1 x 2 (0 0)) = ODC x y j 2 =1 ODC x z j 1 =0 = ODC x y j x2 =x 0 ODC x zj x1 =x = ODC x y j x=x 0 ODC x z Beuse x = x 1 = x 2.

Multi-wy stems Theorem Let v x 2 V e ny internl or input vertex. Let fx i i= 1 2 ::: pg e the edge vrs orresponding to f(x y i ) i = 1 2 ::: pg. Let ODC x yi i = 1 2 ::: p the edge ODCs. ODC x = L p i=1 ODC x y i j xi+1 ==x p =x 0

Oservility don't re lgorithm OBSERVABILITY(G n (V E), ODC out ) f foreh vertex v x 2 V in reverse topologil order f for (i = 1 to p) ODC x yi = (@f yi =@x) 1 + ODC 0 yi ODC x = L p i=1 ODC x y i j 0 xi+1==x p =x g g

Exmple z1 z2 z1 z2 d e d e x1 x2 x3 x4 x1 x2 x3 x4 () () ODCd = 0 1 ODCe = 1 0 ODC = 0 + x 1 + x1 ODC = 0 + x 4 + x4 ODC = ODC j = 0ODC = ODC = = = x 0 0 = x 1x4 x1 + x4 0 0 x 0 4 + x 1 + x4 + x1 0 x 0 1 + x 4 + x1 + x4 4 + x 1 + x4 + x1 ODC = 0 0 x 0 1 + x 4 = + x1 + x4

Trnsformtions with don't res Boolen simplition: { Use stndrd minimizer (Espresso). { Minimize the numer of literls. Boolen sustitution: { Simplify funtion y dding n extr input. { Equivlent to simplition with glol don't re onditions.

Exmple Boolen sustitution Sustitute q = + d into f h = + d + e to get f h = + q + e. SDC set: q ( + d) = q 0 + q 0 d + q 0 (d) 0. Simplify f h = +d+e with q 0 +q 0 d+q 0 (d) 0 s don't re. Simplition yields f h = + q + e. One literl less y hnging the support of f h.

Single-vertex optimiztion SIMPLIFY SV ( G n (V E) )f repet f v x = seleted vertex Compute the lol don't re set DC x Optimize the funtion f x guntil (no more redution is possile) g

Optimiztion nd perturtions Reple f x y g x. Perturtion x = f x g x. Condition for fesile replement: { Perturtion ounded y lol don't re set { x DC ext + ODC x { If x not primry input onsider lso CDC set.

Exmple δ x y z y x z y x z () () () No externl don't re set. Reple AND y wire: g x = Anlysis: { = f x g x = = 0. { ODC x = y 0 = 0 + 0. { = 0 DC x = 0 + 0 ) fesile!

Degrees of freedom Fully represented y don't re onditions: { Externl don't res. { Internl oservility nd ontrollility. Don't res represent n upper ound on the perturtion. Approximtions: { Use smller don't re sets to speed-up the omputtion.

Multiple-vertex optimiztion Simplify more thn one lol funtion t time. Potentilly etter (more generl) pproh. Anlysis: { Multiple perturtions. Condition for fesile replement: { Upper nd lower ounds on the perturtion. { Boolen reltion model.

Exmple δ 1 x x z z y y δ2 () () x z x z y y () (d) The two perturtions re relted. Cnnot hnge simultneously: {!. {!.

Multiple-vertex optimiztion Boolen reltion model x z y x y 0 0 0 f 00, 01, 10 g 0 0 1 f 00, 01, 10 g 0 1 0 f 00, 01, 10 g 0 1 1 f 00, 01, 10 g 1 0 0 f 00, 01, 10 g 1 0 1 f 00, 01, 10 g 1 1 0 f 00, 01, 10 g 1 1 1 f 11 g

Multiple-vertex optimiztion Boolen reltion model Compute Boolen reltion: { Fltten the network. Anlyze ptterns. { Derive equivlene reltion from ODCs. Use reltion minimizer. Exmple of minimum funtion: x y 1 10 1 1 01

Multiple-vertex optimiztion Boolen reltion model SIMPLIFY MVR( G n (V E) )f repet f U = seleted vertex suset foreh vertex v x 2 U Compute OCD x Determine the equiv. lsses of the Boolen reltion of the sunetwork indued y U Find n optiml funtion omptile with the reltion using reltion minimizer guntil (no more redution is possile) g

Multiple-vertex optimiztion omptile don't res Determine omptile don't res : { CODCs: suset of ODCs. { Deouple dependenies. { Redued degrees of freedom. Using omptile ODCs, only upper ounds on the perturtion need to e stised.

Exmple two perturtions First vertex: { CODC equl to its ODC set. { CODC x1 = ODC x1. The seond vertex: { CODC smller thn its ODC to e sfe enough to llow trnsformtions permitted y the rst ODC. { CODC x2 = C x1 (ODC x2 ) + ODC x2 ODC 0 x 1 Order dependene.

Exmple rst vertex v y δ 1 x z x z x z y δ2 y y () () CODC y = ODC y = x 0 = 0 + 0 ODC x = y 0 = 0 + 0 CODC x = C y (ODC x ) + ODC x (ODC y ) 0 = C y (y 0 ) + y 0 x = y 0 x = ( 0 + 0 ) = 0.

Exmple (2) δ 1 x z x z x z y δ2 y y () () Allowed perturtion: { f y =! g y =. { y = = 0 CODC y = 0 + 0. Disllowed perturtion: { f x =! g x =. { x = = 0 6 CODC x = 0. The onverse holds if v x is the rst vertex.

Multiple-vertex optimiztion omptile don't res SIMPLIFY MV( G n (V E) )f repet f U = seleted vertex suset foreh vertex v x 2 U Compute COCD x nd the orresponding lol don't re suset g DC x Optimize simultneously the funtions t U guntil (no more redution is possile) g

Summry Boolen methods Boolen methods exploit don't re sets nd simplition of logi representtions. Don't re set omputtion: { Controllility nd oservility. Single nd multiple trnsformtions.

Synthesis nd testility Testility: { Ese of testing iruit. Assumptions: { Comintionl iruit. { Single or multiple stuk-t fults. Full testility: { Possile to generte test set for ll fults. { Restritive interprettion.

Test for stuk-ts Net y stuk-t 0. { Input pttern tht sets y to true. { Oserve output. { Output of fulty iruit diers. Net y stuk-t 1. { Sme, ut set y to flse. Need ontrollility nd oservility.

Test sets don't re interprettion Stuk-t 0 on net y. { ftjy(t) ODC 0 y(t) = 1g. Stuk-t 1 on net y. { ftjy 0 (t) ODC 0 y(t) = 1g.

Using testing methods for synthesis Redundny removl. { Use TPG to serh for untestle fults. If stuk-t 0 on net y is untestle: { Set y = 0. { Propgte onstnt. If stuk-t 1 on y is untestle: { Set y = 1. { Propgte onstnt.

Exmple stuk t 0 y x z () 0 z () z ()

Redundny removl nd perturtion nlysis z y x Stuk-t 0 on y. { y set to 0. Nmely g x = f x j y=0. { Perturtion: = f x f x j y=0 = y @f x =@y. Perturtion is fesile, fult is untestle. { No input vetor t n mke y(t) ODC 0 y(t) true. { No input vetor n mke y(t) ODC 0 x(t) @f x =@y true. euse ODC y = ODC x + (@f x =@y) 0.

Redundny removl nd perturtion nlysis Assume untestle stuk-t 0 fult. y ODC 0 x @f x =@y SDC: Lol don't re set: { DC x ODC x + y ODC 0 x @f x =@y: { DC x ODC x + y @f x =@y. Perturtion = y @f x =@y. { Inluded in the lol don't re set.

Synthesis for testility Synthesize networks tht re fully testle. { Single stuk-t fults. { Multiple stuk-t fults. Two-level forms. Multiple-level networks.

Two-level forms Full testility for single stuk-t fults: { Prime nd irredundnt over. Full testility for multiple stuk-t fults: { Prime nd irredundnt over when: Single-output funtion. No produt term shring. Eh omponent is PI.

Exmple f = 0 0 + 0 + + A 1 stuk t 0 A 2 A 3 O 1 A 4

Multiple-level networks Denitions A logi network G n (V E), with lol funtions in sum of produt form. Prime nd irredundnt (PI): { No literl nor implint of ny lol funtion n e dropped. Simultneously prime nd irredundnt (SPI): { No suset of literls nd/or implints n e dropped.

Multiple-level networks Theorems A logi network is PI nd only if: { its AND-OR implementtion is fully testle for single stuk-t fults. A logi network is SPI if nd only if: { its AND-OR implementtion is fully testle for multiple stuk-t fults.

Multiple-level networks Synthesis Compute full lol don't re sets. { Mke ll lol funtions PI w.r. to don't re sets. Pitfll: { Don't res hnge s funtions hnge. Solution: { Itertion (Espresso-MLD). If itertion onverges, network is fully testle.

Multiple-level networks Synthesis Fltten to two-level form. { When possile { no size explosion. Mke SPI y disjoint logi minimiztion. Reonstrut multiple-level network: { Algeri trnsformtions preserve multifult testility.

Summry Synergy etween synthesis nd testing. Testle networks orrelte to smll-re networks. Don't re onditions ply mjor role.