Presentation is loading. Please wait.

Presentation is loading. Please wait.

Sept. 19, 2002Workshop on Boolean Problems A Theory of Non-Deterministic Networks R. K. Brayton EECS Dept. University of California Berkeley.

Similar presentations


Presentation on theme: "Sept. 19, 2002Workshop on Boolean Problems A Theory of Non-Deterministic Networks R. K. Brayton EECS Dept. University of California Berkeley."— Presentation transcript:

1 Sept. 19, 2002Workshop on Boolean Problems A Theory of Non-Deterministic Networks R. K. Brayton EECS Dept. University of California Berkeley

2 Sept. 19, 2002Workshop on Boolean Problems Overview What is an ND network What is an ND network Motivation Motivation Basic definitions Basic definitions Defining and comparing ND behaviors Defining and comparing ND behaviors ND network operations and how they change behaviors ND network operations and how they change behaviors Experimental observations Experimental observations Conclusions and future work Conclusions and future work

3 Sept. 19, 2002Workshop on Boolean Problems 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 Sept. 19, 2002Workshop on Boolean Problems 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. Can be used to compile software to evaluate logic

5 Sept. 19, 2002Workshop on Boolean Problems Definition: 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 Sept. 19, 2002Workshop on Boolean Problems 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 Sept. 19, 2002Workshop on Boolean Problems Example: 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 Sept. 19, 2002Workshop on Boolean Problems ND Network Behavior Given an ND network, what is its behavior, i.e. what is the set of all PI/PO pairs that are related? 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.

9 Sept. 19, 2002Workshop on Boolean Problems ND Network Behaviors (PI/PO Pairs) Normal Simulation (NS) Normal Simulation (NS) Normal Simulation made Compatible (NSC) Normal Simulation made Compatible (NSC) Set Simulation (SS) Set Simulation (SS) Note: all these become the same when the network is deterministic. Det NS NSC SS ND

10 Sept. 19, 2002Workshop on Boolean Problems 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 the fanouts One of these is chosen randomly and broadcast to the fanouts The NS-behavior is the set of all PI/PO vectors that can be obtained this way. is in general a MV Boolean relation

11 Sept. 19, 2002Workshop on Boolean Problems Normal Simulation faninsfanouts node with a non-deterministic relation 3 1 1 22 2 {0,2}2

12 Sept. 19, 2002Workshop on Boolean Problems 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

13 Sept. 19, 2002Workshop on Boolean Problems 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

14 Sept. 19, 2002Workshop on Boolean Problems 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

15 Sept. 19, 2002Workshop on Boolean Problems 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

16 Sept. 19, 2002Workshop on Boolean Problems 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

17 Sept. 19, 2002Workshop on Boolean Problems Comparisons is a general MV Boolean relation is a general MV Boolean relation –relatively hard to compute and store and can be computed for each output and They are symmetric Boolean relations. and can be computed for each output and They are symmetric Boolean relations. can be obtained by elimination in reverse topological order can be obtained by elimination in reverse topological order can be obtained by elimination in topological order can be obtained by elimination in topological order

18 Sept. 19, 2002Workshop on Boolean Problems 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. R NS can be obtained by eliminating all internal nodes and existentially quantifying all parameters.

19 Sept. 19, 2002Workshop on Boolean Problems 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: conformity Requirement: conformity

20 Sept. 19, 2002Workshop on Boolean Problems 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

21 Sept. 19, 2002Workshop on Boolean Problems 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

22 Sept. 19, 2002Workshop on Boolean Problems 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

23 Sept. 19, 2002Workshop on Boolean Problems 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

24 Sept. 19, 2002Workshop on Boolean Problems 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

25 Sept. 19, 2002Workshop on Boolean Problems 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

26 Sept. 19, 2002Workshop on Boolean Problems 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

27 Sept. 19, 2002Workshop on Boolean Problems Minimizing a Node – Computing the Flexibility at a Node Definition. A flexibility at node  is a relation R f  such that placing at  any well-defined deterministic relation contained in R f  leads to a network that conforms to the external specification. Definition. The complete flexibility (CF) is the maximum flexibility at a node.

28 Sept. 19, 2002Workshop on Boolean Problems Computing the Global CF

29 Sept. 19, 2002Workshop on Boolean Problems Imaging into the Local Space YiYi

30 Sept. 19, 2002Workshop on Boolean Problems Properties of Flexibilities If a network conforms, then any well-defined deterministic function contained in is acceptable at node j, for If a network conforms, then any well-defined deterministic function contained in is acceptable at node j, for 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 But for SS, it is possible that an ND relation contained in can cause the network to not conform

31 Sept. 19, 2002Workshop on Boolean Problems Flexibility T = 6 T = 10 T = 12 F = 0% F = 33% F = 50% b/a 01 002 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 The amount of flexibility is equal to 0% for completely specified functions and 100% for relations that take all values in any minterm.

32 Sept. 19, 2002Workshop on Boolean Problems Amount of Flexibility (SDC, CODC, CF)

33 Sept. 19, 2002Workshop on Boolean Problems 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

34 Sept. 19, 2002Workshop on Boolean Problems Finding minimum deterministic SOP representation It is never smaller than the smallest ND representation It is never smaller than the smallest ND representation There is no known algorithm for finding it. There is no known algorithm for finding it. In contrast, there is a method for finding the smallest ND representation In contrast, there is a method for finding the smallest ND representation

35 Sept. 19, 2002Workshop on Boolean Problems P0P0 P1P1 P2P2 P3P3 all minterms Quine-McCluskey type exact ND SOP relation minimization Given an ND relation, e.g. the complete flexibility, its i -set is the set of input minterms that can produce output value i. 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.

36 Sept. 19, 2002Workshop on Boolean Problems 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

37 Sept. 19, 2002Workshop on Boolean Problems 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. The SS behavior has been used throughout. –it is the easiest to use computationally –global behavior can be expressed locally at each node as a BDD of the PI In the future we will experiment with using NSC behavior In the future we will experiment with using NSC behavior

38 Sept. 19, 2002Workshop on Boolean Problems 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.

39 Sept. 19, 2002Workshop on Boolean Problems 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

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

41 Sept. 19, 2002Workshop on Boolean Problems The End

42 Sept. 19, 2002Workshop on Boolean Problems 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

43 Sept. 19, 2002Workshop on Boolean Problems Merging Inverse of partial encoding merge v 1 and v 2

44 Sept. 19, 2002Workshop on Boolean Problems 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


Download ppt "Sept. 19, 2002Workshop on Boolean Problems A Theory of Non-Deterministic Networks R. K. Brayton EECS Dept. University of California Berkeley."

Similar presentations


Ads by Google