functional dependency for verification reduction & logic minimization

31
5/6/2004 J.-H. R. Jiang 1 Functional Dependency for Verification Reduction & Logic Minimization EE290N, Spring 2004

Upload: perdy

Post on 31-Jan-2016

40 views

Category:

Documents


0 download

DESCRIPTION

Functional Dependency for Verification Reduction & Logic Minimization. EE290N, Spring 2004. Outline. Motivations Previous work Our formulation Experimental results Conclusions. Outline. Motivations Previous work Our formulation Experimental results Conclusions. Motivations. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 1

Functional Dependency for

Verification Reduction & Logic Minimization

EE290N, Spring 2004

Page 2: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 2

Outline Motivations Previous work Our formulation Experimental results Conclusions

Page 3: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 3

Outline Motivations Previous work Our formulation Experimental results Conclusions

Page 4: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 4

Motivations Logic synthesis of state transition systems

Remove “redundant” registers using functional dependency

Formal verification of state transition systems Reduce state space and compact BDD

representations by removing dependent state variables

Page 5: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 5

Outline Motivations Previous work

Functional dependency Signal correspondence

Our formulation Experimental results Conclusions

Page 6: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 6

Previous work “Functional” dependency in state transition systems

Problem formulation Given a characteristic function F(x1,x2, …, xn), compute a minimal

set of irredundant (independent) variables Variable xi is redundant if it can be replaced with a function over ot

her variables Solution – functional deduction

Variable xi is redundant if and only if

F|xi = 0 Æ F|xi = 1 = false

Example F = abc Ç :a:c

Minimal independent sets: {a, b}, {b, c} with dependency functions c := a, a := c, respectively

Page 7: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 7

Previous work Applications of functional dependency

Synthesis Register minimization in hardware synthesis from HDL

Verification Minimization of BDDs of reached state sets Embed detection of functional dependency inside reachabilit

y analysis as an on-the-fly reduction

Weakness Need to perform reachability analysis to derive functi

onal dependency (for applying functional deduction)

Page 8: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 8

Unsolved problem How to detect functional dependency without or

before computing reached state sets ?

Page 9: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 9

Previous work Signal correspondence

Problem formulation A signal correspondence C µ s £ s is an equivalence relation (in

reachable state subspace) on the set s of state variables (This definition includes only identical functions, it can be extended to also

include complemented functions)

An effective solution Compute the equivalence relation by iterative refinement of state

variables Valid for an over-approximated reachable space

Application of detecting signal correspondence Make sequential equivalence checking more like combinational

equivalence checking Detect equivalent state variables

Page 10: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 10

Example (219B)

s1

1 11

1 1

s2 s3

s4s5

s1=1 s2=1

s3=1 s4=1

s5=1v

s1= x v

s4= x v

v1

s2= v

s3= v

s5= v

v2

s1= x v1

s4= x v1

v1

s2= v1v2)

s3= v1v2)

s5= v1v2)

v2

Result:

{s1,s4}

{s2,s3,s5}

Instead of using

constraint, use

fresh variable

for each class

Page 11: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 11

Previous work Weakness

Signal correspondence is a very limited form of functional dependency

Page 12: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 12

Unsolved problem How to characterize a more general form of

functional dependency by fixed-point computation?

Page 13: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 13

Outline Motivations Previous work Our formulation

Observation Combinational dependency Sequential dependency

Greatest fixed point Least fixed point Verification Reduction

Experimental results Conclusions

Page 14: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 14

Our formulation Objective

Resolve the unsolved problems (exploiting functional dependency and detecting signal correspondence) in a unified framework

Key Conclude functional dependency directly from

transition functions of a state transition system. Define combinational dependency Extend to sequential dependency

Page 15: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 15

Combinational dependency Given two functions f and g over the same

domain C, f functionally depends on g if there exists some function such that f (·) = ( g (·) ).

A necessary and sufficient condition:f (a) f (b) g (a) g (b), for all a,b C

In such case, we denote g v f

Consider multi-valued functions as vectors of Boolean functions

Page 16: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 16

Combinational dependency

Page 17: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 17

Combinational dependency

Page 18: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 18

Sequential dependency Extend combinational dependency for state transi

tion systems Find invariant such that

sdep= (sind) and dep= (ind)

where s represents the set of state variable and represents the set of transition functions.

Two approaches of computing fixed points Greatest fixed-point (gfp); least fixed-point (lfp)

Page 19: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 19

Sequential dependency Greatest fixed-point (g

fp) computation Initially, all state vari

ables are distinct. In each iteration, com

pute the combinational dependency among independent state variables from the previous iteration.

x

s'd(1)

s'i(1)

s

x

s'd(3)

s'i(3)

si(2) si

(1)

s

x

s'd(2)

s'i(2)

ssi(1)

Page 20: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 20

Sequential dependency (gfp)

Page 21: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 21

Sequential dependency Least fixed-point (lfp) co

mputation Initially, select one state v

ar as the representative. (0) is determined by initial state information.

In each iteration of computing functional dependency, try to reuse ’s from the previous iteration.

If restrict ’s to be identity functions, the computation reduces to detecting signal correspondences.

x

s'd

(1)

s'i(1)

ssk

x

s'd

(3)

s'i(3)

si(2)

s

x

s'd

(2)

s'i(2)

ssi(1)

Page 22: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 22

Sequential dependency (lfp)

Page 23: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 23

Legitimacy for logic synthesis Dependency may not hold for initial states which

have no predecessors Localize conflicting state variables and declare

them as independent state variables

Page 24: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 24

Verification reduction Reachability analysis on reduced state space

Static verification reduction Before a reachability analysis, derive sequential dependency

(using lfp or gfp computation). Dynamic (on-the-fly) verification reduction

In each iteration of a reachability analysis, derive a minimal set of independent state variables before the image computation. (No need to try to reuse ’s.) Thus, the image computation is over the reduced state space.

Prior work on exploiting functional dependency is not effective because the detection of functional dependency is done after the image computation.

Page 25: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 25

Verification reduction

Page 26: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 26

Outline Motivations Previous work Our formulation Experimental results Conclusions

Page 27: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 27

Experimental results Dependency in original FSM

Circuit Reg Signal Correspondence Sequential Dependency Gfp Sequential Dependency Lfp

Indp. Iter. Mb sec Indp. Iter. Mb sec Indp. Iter. Mb sec

s298-rt 34 31 5 10 0.3 23 2 23 1.6 24 10 41 6.2

s526n-rt 64 55 4 13 1.0 37 2 60 104.2 40 14 58 26.8

s838-rt 73 48 20 13 1.5 33 1 22 3.7 33 46 21 18.3

s991-rt 42 24 2 13 0.5 21 2 21 1.4 20 2 21 1.4

mult16a-rt 106 66 6 13 0.9 75 2 13 1.0 61 8 13 4.6

tbk-rt 49 49 2 49 6.8 13 4 62 264.1 21 3 59 48.4

s4863 104 81 3 47 4.7 81 1 69 178.7 75 3 47 14.5

s5378 179 163 12 37 6.5 155 2 51 15.9 154 14 51 43.1

s13207 669 303 16 138 95.6 460 5 111 384.6 263 37 100 836.0

s15850 597 431 24 142 221.7 569 3 134 1487.1 315 32 142 1441.0

s38584 1452 869 17 303 525.5 1440 1 155 4103.3 849 25 303 22001.1

8085 193 91 15 65 28.9 193 0 70 42.4 79 17 63 64.3

Page 28: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 28

Experimental results Dependency in product FSM

Circuit Reg Signal Correspondence Sequential Dependency Gfp Sequential Dependency Lfp

Indp. Iter. Mb sec Indp. Iter. Mb sec Indp. Iter. Mb sec

s208 8+16 16 7 10 0.2 17 1 10 0.1 12 10 41 6.2

s298 14+34 39 5 10 0.5 37 2 21 1.5 30 14 58 26.8

s386 6+15 13 3 10 0.2 13 2 12 0.3 12 46 21 18.3

s499 22+41 63 21 14 3.1 43 2 38 7.3 42 2 21 1.4

s510 6+34 38 4 13 0.6 27 2 50 25.9 29 8 13 4.6

s526 21+58 64 8 13 2.2 59 2 60 41.6 50 3 59 48.4

s526n 21+64 69 8 13 2.4 58 2 59 121.9 50 3 47 14.5

s635 32+51 66 31 13 7.8 66 1 21 1.4 51 14 51 43.1

s838 32+73 78 31 25 16.8 65 2 48 4.2 59 37 100 836.0

s991 19+42 42 2 22 1.5 40 2 38 2.5 39 32 142 1441.0

mult16a 16+106 82 6 14 4.6 91 2 14 1.7 77 25 303 22001.1

tbk 5+49 54 2 14 5.5 17 4 61 175.6 25 17 63 64.3

Page 29: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 29

Experimental results On-the-fly reduction

Circuit Iter. Reach. Analysis w/o Dep. Reduction Reach. Analysis w Dep. Reduction

Peak

(bdd nodes)

Reached

(bdd nodes)

Mb sec Peak

(bdd nodes)

Reached

(bdd nodes)

Mb sec

s3271 4 28,819,301 16,158,242 620 2784.1 18,843,837 10,746,053 415 1082.6

s4863 2 18,527,781 248,885 365 404.8 549,006 8,772 67 13.1

s5378 2 N/A N/A >2G N/A 1,151,439 113,522 70 21.5

s15850 15 29,842,889 9,961,945 653 21337.4 17,667,076 6,356,714 463 8175.0

8085 50 16,663,749 1,701,604 390 24280.2 7,830,602 1,338,322 212 4640.1

Page 30: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 30

Outline Motivations Previous work Our formulation Experimental results Conclusions

Page 31: Functional Dependency   for  Verification Reduction & Logic Minimization

5/6/2004 J.-H. R. Jiang 31

Conclusions Proposed a computation of functional dependency w/o rea

chability analysis. Unified two previously independent studies on detecting s

ignal correspondence and exploiting functional dependency. Detecting signal correspondence is a special case of lfp comput

ation of sequential dependency. Previous approach on exploiting functional dependency can be i

mproved with our dynamic reduction. In addition to verification reduction, our results can be us

ed to minimize state transition systems.