Presentation is loading. Please wait.

Presentation is loading. Please wait.

Nov. 13, 2002ICCAD 2002 Simplification of Non-Deterministic Multi-Valued Networks Alan Mishchenko Electrical and Computer Engineering Portland State University.

Similar presentations


Presentation on theme: "Nov. 13, 2002ICCAD 2002 Simplification of Non-Deterministic Multi-Valued Networks Alan Mishchenko Electrical and Computer Engineering Portland State University."— Presentation transcript:

1 Nov. 13, 2002ICCAD 2002 Simplification of Non-Deterministic Multi-Valued Networks Alan Mishchenko Electrical and Computer Engineering Portland State University Robert K. Brayton Electrical Engineering and Computer Science University of California, Berkeley

2 Nov. 13, 2002ICCAD 2002 Overview What is an ND network? What is an ND network? –Basic definitions –Motivation Defining and comparing ND network behaviors Defining and comparing ND network behaviors Node Flexibility and Node Minimization Node Flexibility and Node Minimization Experimental observations Experimental observations Conclusions and future work Conclusions and future work

3 Nov. 13, 2002ICCAD 2002 What is an ND network? Similar to a Boolean network except –Each node has a single output multi-valued variable –Each node has a non- deterministic relation relating its input and output values. F MV ND PI PO

4 Nov. 13, 2002ICCAD 2002 Why consider ND networks? 1. Don’t cares are a form of non-determinism. They generalize to non-determinism when considering multi-valued logic 2. Multi-valued domains can be used to explore larger optimization spaces. 3. ND arises naturally when considering the flexibility of implementing a node in a network 4. Given a ND relation, the minimum well-defined ND sub-relation is always smaller than the minimum deterministic one

5 Nov. 13, 2002ICCAD 2002 Reminder: Boolean Network Directed Acyclic Graph Directed Acyclic Graph Each node represents a Boolean function Each node represents a Boolean function Edge from node j to node k if the function at k depends syntactically on the variable y j at the output of j Edge from node j to node k if the function at k depends syntactically on the variable y j at the output of j Primary inputs (PI) X and outputs (PO) Z Primary inputs (PI) X and outputs (PO) Z All signals are binary All signals are binary External specification provides allowed input and output combinations (external don’t cares) External specification provides allowed input and output combinations (external don’t cares) j F PI PO yjyj

6 Nov. 13, 2002ICCAD 2002 MV ND F PI PO ynyn Definition: ND Multi-Valued Network Network of MV-nodes (PI, PO, internal) Network of MV-nodes (PI, PO, internal) Each node is represented by an MV variable y n with its own range {0, 1,…, |p n |-1} Each node is represented by an MV variable y n with its own range {0, 1,…, |p n |-1} Internal node is represented by an MV non-deterministic relation Internal node is represented by an MV non-deterministic relation

7 Nov. 13, 2002ICCAD 2002 Examples: Ternary Relations R 1 is completely specified (deterministic) R 2 is incompletely specified R 3 is partially specified, or non-deterministic R 1 is contained in R 2 R 2 is not contained in R 3 b/a 01 002 100 210 0100,1,22 100 20,1,20 0100,11,2 10,10 20,1,20,1 R1R1R1R1 R2R2R2R2 R3R3R3R3 R a b 2 All relations are well-defined, i.e. for each input minterm there exists at least one output value

8 Nov. 13, 2002ICCAD 2002 Overview What is an ND network? What is an ND network? –Basic definitions –Motivation Defining and comparing ND network behaviors Defining and comparing ND network behaviors Node Flexibility and Node Minimization Node Flexibility and Node Minimization Experimental observations Experimental observations Conclusions and future work Conclusions and future work

9 Nov. 13, 2002ICCAD 2002 ND Network Behavior Given an ND network, what is its behavior, Given an ND network, what is its behavior, –i.e. what is the set of all PI/PO pairs that are related? –this question is not straightforward. For a deterministic, well-defined network, there is exactly one PO vector for each PI vector For a deterministic, well-defined network, there is exactly one PO vector for each PI vector –however, if there are some external don’t cares, then there may be several PO vectors for a PI vector, –but don’t cares are well understood.

10 Nov. 13, 2002ICCAD 2002 ND Network Behaviors (PI/PO Pairs) Normal Simulation (NS) Normal Simulation (NS) Normal Simulation made Compatible (NSC) – will not be discussed Normal Simulation made Compatible (NSC) – will not be discussed Set Simulation (SS) Set Simulation (SS) –similar to X valued simulation where X ={0,1} Note: all these become the same when the network is deterministic. Det NS NSC SS ND

11 Nov. 13, 2002ICCAD 2002 The NS-behavior is the set of all PI/PO vectors that can be obtained this way. is in general a MV Boolean relation Normal Simulation Network is evaluated in topological order Network is evaluated in topological order At each node its fanins have a specific vector of values. At each node its fanins have a specific vector of values. The relation at the node determines a set of possible output values of that node The relation at the node determines a set of possible output values of that node One of these is chosen randomly and broadcast to all the fanouts One of these is chosen randomly and broadcast to all the fanouts

12 Nov. 13, 2002ICCAD 2002 Normal Simulation faninsfanouts node with a non-deterministic relation 3 1 1 22 2 {0,2}2

13 Nov. 13, 2002ICCAD 2002 Set Simulation Done in topological order. Done in topological order. On each signal a set of values is obtained On each signal a set of values is obtained At each node a vector of fanin sets is known. At each node a vector of fanin sets is known. The output set of values for a node is the union of the sets obtained for all fanin vectors in the cross product of the fanin sets The output set of values for a node is the union of the sets obtained for all fanin vectors in the cross product of the fanin sets The SS-behavior is the set of all PI/PO vectors in the cross product of the PO sets that can be obtained this way. can be expressed using

14 Nov. 13, 2002ICCAD 2002 Set Simulation fanins {3} {1} {1} {0,2} PO 1 PO 2 {1,2,4}{0,2}{0,2}{0,2}{1,4}{0,1} {1,3}{1,3} = {1,2,4} = {1,3} PI/PO relation contains 3 1 1 / 1 1 3 1 1 / 1 3 3 1 1 / 2 1 3 1 1 / 2 3 3 1 1 / 4 1 3 1 1 / 4 3 It is the cross product of all PO sets

15 Nov. 13, 2002ICCAD 2002 Comparisons is a general MV Boolean relation is a general MV Boolean relation –relatively hard to compute and store can be computed for each output:. It is output symmetric Boolean relation.. can be computed for each output:. It is output symmetric Boolean relation. can be obtained by elimination in topological order. can be obtained by elimination in topological order SS can be considered as an easy-to-compute over-approximation of normal simulation NS. SS can be considered as an easy-to-compute over-approximation of normal simulation NS.

16 Nov. 13, 2002ICCAD 2002 Computing R NS – input determinization At each ND node introduce one MV parameter p i with the same range as the node output. At each ND node introduce one MV parameter p i with the same range as the node output. Relation at node i is replaced by Relation at node i is replaced by – p i controls the output value of node i –the operator m is a special BDD projection operator, defined by Bill Lin, that projects onto the smallest allowed output value. R NS can be obtained by eliminating all internal nodes and existentially quantifying all parameters { p i }. R NS can be obtained by eliminating all internal nodes and existentially quantifying all parameters { p i }.

17 Nov. 13, 2002ICCAD 2002 External Specification Can be specified by Can be specified by –The initial network plus don’t cares e.g. in Boolean networks, we can give external don’t cares, one set for each output. e.g. in Boolean networks, we can give external don’t cares, one set for each output. –A separate specification (network or BDD or other) Notation: Notation: Requirement: one behavior conforms Requirement: one behavior conforms

18 Nov. 13, 2002ICCAD 2002 Conformity with External Specification Can use any one of the behaviors Can use any one of the behaviors –Just be consistent For example, we may have but If we use consistently there is no problem. For example, we may have but If we use consistently there is no problem. Ultimately, in most applications we want a final deterministic network. Ultimately, in most applications we want a final deterministic network. If any behavior conforms, then it contains only correct deterministic ones If any behavior conforms, then it contains only correct deterministic ones

19 Nov. 13, 2002ICCAD 2002 Overview What is an ND network? What is an ND network? –Basic definitions –Motivation Defining and comparing ND network behaviors Defining and comparing ND network behaviors Node Flexibility and Node Minimization Node Flexibility and Node Minimization Experimental observations Experimental observations Conclusions and future work Conclusions and future work

20 Nov. 13, 2002ICCAD 2002 Minimizing a Node – Computing the Flexibility at a Node Definition. A flexibility at node  is a relation such that replacing at  any well-defined deterministic relation contained in implies that the resulting network conforms to the external specification. Definition. The maximum possible flexibility at a node is called its complete flexibility (CF).

21 Nov. 13, 2002ICCAD 2002 Computing the Global CF ND network Called the global B - CF of the node

22 Nov. 13, 2002ICCAD 2002 Imaging into the Local Space YiYi Called the B - CF of the node

23 Nov. 13, 2002ICCAD 2002 Properties of Flexibilities If a current network “B-conforms”, B e {NS,NSC,SS }, then any well-defined deterministic function contained in is acceptable at node j. If a current network “B-conforms”, B e {NS,NSC,SS }, then any well-defined deterministic function contained in is acceptable at node j. For NS or NSC, any ND relation will also be acceptable. For NS or NSC, any ND relation will also be acceptable. But for SS, it is possible that an ND relation contained in can cause the network to not conform (important point) But for SS, it is possible that an ND relation contained in can cause the network to not conform (important point)

24 Nov. 13, 2002ICCAD 2002 Measuring Flexibility T = 6 T = 10 T = 12 F = 0% F = 33% F = 50% b/a 01002 100 210 R1R1R1R1 0100,1,22 100 20,1,20 R2R2R2R2 0100,11,2 10,10 20,1,20,1 R3R3R3R3 Examples: M=6, V=3 M is the number of the input minterms V is the size of the output range. t i is the number of output values in the relation for input minterm m i F is equal to 0% for completely specified functions and 100% for relations that take all values in any minterm.

25 Nov. 13, 2002ICCAD 2002 Amount of Flexibility (SDC, CODC, SS-CF)

26 Nov. 13, 2002ICCAD 2002 Node Simplification Compute and use complete flexibility (CF) to simplify the node. Recall: 1.CF in global space: 2.CF in local space: Use to optimize MV-SOP (heuristic, exact) at node jUse to optimize MV-SOP (heuristic, exact) at node j We will look at how to find the smallest well- defined SOP representation contained in a given ND relation

27 Nov. 13, 2002ICCAD 2002 Representing an ND relation Definition: The i - set of an ND relation is a binary function that is 1 for each minterm that can output value i Definition: A minimum SOP representation of an ND relation is a well-defined sub- relation where all the i - sets are represented by SOPs and the total number of cubes is minimum.

28 Nov. 13, 2002ICCAD 2002 Finding minimum deterministic SOP representation A deterministic SOP is never smaller than the smallest ND representation. A deterministic SOP is never smaller than the smallest ND representation. There is no known algorithm for finding the minimum deterministic representation. There is no known algorithm for finding the minimum deterministic representation. –we have a few heuristic ones In contrast, there is a method for finding the smallest ND representation. In contrast, there is a method for finding the smallest ND representation.

29 Nov. 13, 2002ICCAD 2002 P0P0 P1P1 P2P2 P3P3 all minterms Quine-McCluskey type exact ND SOP relation minimization For each i -set, generate all its primes, P i For each i -set, generate all its primes, P i Form covering table with Form covering table with –one column for each p j in P i for all i –one row for each minterm in the input space Solve minimum covering problem Solve minimum covering problem –Primes chosen from P k is the cover for k th i -set.

30 Nov. 13, 2002ICCAD 2002 Overview What is an ND network? What is an ND network? –Basic definitions –Motivation Defining and comparing ND network behaviors Defining and comparing ND network behaviors Node Flexibility and Node Minimization Node Flexibility and Node Minimization Experimental observations Experimental observations Conclusions and future work Conclusions and future work

31 Nov. 13, 2002ICCAD 2002 Experimental Setup These ideas have been implemented in a system, MVSIS These ideas have been implemented in a system, MVSIS The SS behavior has been used throughout in the experiments. The SS behavior has been used throughout in the experiments. –it is the easiest to use computationally –behavior can be expressed locally at each node as a BDD of the PI. (SS-behavior is output symmetric)

32 Nov. 13, 2002ICCAD 2002 Experimental Observations SS Behavior Conformity is rarely lost but it does happen. This usually happens during node minimization. Conformity is rarely lost but it does happen. This usually happens during node minimization. –If we use an ND relation at the minimized node, then conformity is not guaranteed (only deterministic SOP guarantees conformity using SS) Often conformity is automatically regained by minimizing the next node. Often conformity is automatically regained by minimizing the next node. –If the CF at the next node is well defined, this means that the network can be brought back to conformity. –If it is not well defined, we leave the node relation alone and move to the next node. We have never experienced a final network that does not conform to the external specification. We have never experienced a final network that does not conform to the external specification.

33 Nov. 13, 2002ICCAD 2002 Future Work We believe NSC behavior will be superior. –need to solve computation efficiency problems equivalent to elimination in reverse topological order equivalent to elimination in reverse topological order –means that intermediate variables have to be used (rather than only PI) – means that it is easier to maintain conformity. means that it is easier to maintain conformity. implies that NSC-CF contains more flexibility than SS- CF implies that NSC-CF contains more flexibility than SS- CF –however, elimination can cause non-conformity

34 Nov. 13, 2002ICCAD 2002 The End

35 Nov. 13, 2002ICCAD 2002 Partial Encoding (Value Reducing) R 2 is a wire, a cube, or a given functionR 2 is a wire, a cube, or a given function e.g. a library element (technology mapping)e.g. a library element (technology mapping) Transformation is accepted ifTransformation is accepted if   log 2 |v 2 |  +  log 2 |v 1 |    log 2 |v|  or  |v 2 |+ |v 1 |  |v| R X v R1R1R1R1 R2R2R2R2 X v1v1v1v1 v2v2v2v2 partial encoding

36 Nov. 13, 2002ICCAD 2002 Merging Inverse of partial encoding merge v 1 and v 2

37 Nov. 13, 2002ICCAD 2002 Decomposition (extraction) and Encoding 1. Select bound set X B 2. Imagine that a block B 1 has v 1 values. ( v 1 is the product of values in X B ) 3. Compute the CF of block B 1 4. Encode B 1 using value-reducing encoding to get B 2 5. Inputs in X C are shared, which leads to non-disjoint decomposition B1B1B1B1 v1v1v1v1 B2B2B2B2 B1B1B1B1 XcXcXcXc XBXBXBXB

38 Nov. 13, 2002ICCAD 2002 NSC Simulation Like normal simulation except that each PO is handled separately. Like normal simulation except that each PO is handled separately. Take one PO, j, and look at the transitive fanin cone. Take one PO, j, and look at the transitive fanin cone. Compute ( X, z j ) pairs using NS. Compute ( X, z j ) pairs using NS. Repeat for all PO Repeat for all PO The NSC-behavior is the set of all PI/PO vectors that can be obtained this way. is expressed as

39 Nov. 13, 2002ICCAD 2002 NSC Simulation fanins 3 1 1 2 2 2 {0,2}2 PO 1 PO 2 2 1 0 3 3 = 2 0 0 1 = 1 PI/PO relation contains 3 1 1 / 2 1 3 1 1 / 2 3 3 1 1 / 4 1 3 1 1 / 4 3 It is the cross product of all PO sets 0 4 2 3 PO 1 PO 2

40 Nov. 13, 2002ICCAD 2002 SS is not “Scattered” Simulation Scattered simulation Scattered simulation –for each fanout one value is selected from the acceptable set. –each fanout may have different values Example: Example: {0,1} 1 1 0 0 0 1 0 = 0

41 Nov. 13, 2002ICCAD 2002 Goal of this paper Develop a theory of ND networks where –a network can be manipulated using classical operations, {eliminate, optimize, decompose, …} {eliminate, optimize, decompose, …} –all the intermediate networks conform to the external specification. we need to understand when a particular network operation may increase a particular type behavior we need to understand when a particular network operation may increase a particular type behavior this might cause the network to not conform this might cause the network to not conform

42 Nov. 13, 2002ICCAD 2002 Network Manipulations Eliminate a node Eliminate a node Optimize a node Optimize a node Decompose a node Decompose a node Substitute one node into another Substitute one node into another Partially Encode a node Partially Encode a node Merge nodes Merge nodes

43 Nov. 13, 2002ICCAD 2002 Eliminating a node into a fanout If i has been eliminated in all of its fanouts, it can be removed from the network i is eliminated into k i k YkYk YiYi yiyi ykyk k YiYi ykyk i yiyi

44 Nov. 13, 2002ICCAD 2002 Elimination can increase behavior Theorem 10: Eliminating a node can increase the NS or NSC behaviors of a network only if the node is ND and has more than one fanout. Increased behavior because there are now two copies in the network

45 Nov. 13, 2002ICCAD 2002 Elimination and NSC Behavior Theorem 11: Eliminating a node can increase a network’s NSC behavior if and only if the node is ND and has reconvergent fanout. ND node 4

46 Nov. 13, 2002ICCAD 2002 Elimination and SS behavior Corollary 2: Eliminating a node A can decrease the SS behavior of a network only if A has an ND node B in its TFI and A has an ND node B in its TFI and a fanin C of A in the TFO of B is also a fanin of a fanout of A a fanin C of A in the TFO of B is also a fanin of a fanout of A Corollary 1: Corollary 1: Eliminating a node can never increase the SS behavior of a network. B A C

47 Nov. 13, 2002ICCAD 2002 Comparing Changes in Behaviors OperationNSC-behaviorSS-behavior eliminationnon-compliancecompliance node minimization compliancenon-compliance decompositioncompliancenon-compliance merging can’t change can’t increase Table 1. Comparing two computationally viable theories node flexibility moreless

48 Nov. 13, 2002ICCAD 2002 Goals of the Future Work Develop efficient Boolean optimization algorithms working on ND networksDevelop efficient Boolean optimization algorithms working on ND networks Explore common computational core of these algorithmsExplore common computational core of these algorithms node simplify decomposition merging bit pairing encoding resubstitution mapping elimination core


Download ppt "Nov. 13, 2002ICCAD 2002 Simplification of Non-Deterministic Multi-Valued Networks Alan Mishchenko Electrical and Computer Engineering Portland State University."

Similar presentations


Ads by Google