View
219
Download
0
Tags:
Embed Size (px)
Citation preview
5/6/2004 J.-H. R. Jiang 1
Functional Dependency for
Verification Reduction & Logic Minimization
EE290N, Spring 2004
5/6/2004 J.-H. R. Jiang 2
Outline Motivations Previous work Our formulation Experimental results Conclusions
5/6/2004 J.-H. R. Jiang 3
Outline Motivations Previous work Our formulation Experimental results Conclusions
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
5/6/2004 J.-H. R. Jiang 5
Outline Motivations Previous work
Functional dependency Signal correspondence
Our formulation Experimental results Conclusions
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
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)
5/6/2004 J.-H. R. Jiang 8
Unsolved problem How to detect functional dependency without or
before computing reached state sets ?
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
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
5/6/2004 J.-H. R. Jiang 11
Previous work Weakness
Signal correspondence is a very limited form of functional dependency
5/6/2004 J.-H. R. Jiang 12
Unsolved problem How to characterize a more general form of
functional dependency by fixed-point computation?
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
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
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
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)
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)
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)
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
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.
5/6/2004 J.-H. R. Jiang 26
Outline Motivations Previous work Our formulation Experimental results Conclusions
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
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
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
5/6/2004 J.-H. R. Jiang 30
Outline Motivations Previous work Our formulation Experimental results Conclusions
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.