Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mihir Choudhury, Kartik Mohanram (ICCAD’10 best paper nominee) Presentor: ABert Liu.

Similar presentations


Presentation on theme: "Mihir Choudhury, Kartik Mohanram (ICCAD’10 best paper nominee) Presentor: ABert Liu."— Presentation transcript:

1 Mihir Choudhury, Kartik Mohanram (ICCAD’10 best paper nominee) Presentor: ABert Liu

2   Introduction  Terminology  Algorithm  Illustration  Experimental Result  Conclusion Outline

3  Introduction

4   Bi-decomposition is a special kind of functional decomposition  Functional decomposition  Break a large function into a network of smaller functions  Reduce circuit and communication complexity and thus simplify physical design  Bi-decomposition plays an important role in logic synthesis for restructuring Boolean networks Introduction

5  Problem f fAfA f B h XAXA XBXB XCXC XBXB XCXC Bi-decompose XAXA

6  Terminology

7   Blocking Edge Graph (BEG):  It’s an undirected graph.  Every vertex represent a variable.  One graph represents only one non-decomposability of and, or, or xor.  The edges connected variable pair {i, j} means no variable partition can decompose this variable pair.  BEG can extract variable partition. Terminology

8   ( a, b) and ( b, d) are not blocked in the and BEG.  ( c, d) and ( c, b) are not blocked in the or BEG.  The xor BEG is complete graph. BEG Example OR AND ab dc ab dc XOR ab dc

9  Algorithm

10   1.Construct BEG  2.Do variable partition on the BEG.  3.Compute the decomposed functions.  4.Recursively bi-decompose the decomposed functions from 3.  In 4. if the function is not decomposable it will do some relaxation to make further decompose. (It’s not bi-decomposition) Algorithm

11  Illustration

12  Construct BEG

13   Blocking condition:  One square blocks the others. Construct BEG

14  K-map ij\k 0 1 00 1 1 01 1 0 11 0 1 10 1 0 Example AND i kj OR i kj XOR i kj For { i, j } pair : assign k=0 assign k=1 i\j 0 1 i\j 0 1 0 1 1 or 0 1 0 xor 1 1 0 square 1 0 1 square Blocking all { i, j} in all BEGs. Other pair do the same thing to finish constructing the BEGs.

15  K-map ij\k 0 1 00 1 0 01 1 0 11 0 0 10 0 0 Example AND i kj OR i kj XOR i kj For { i, j } pair : assign k=0 assign k=1 i\j 0 1 i\j 0 1 0 1 1 Literal 0 0 0 Zero 1 0 0 square 1 0 0 square

16   We can compute whether the edge ( i, j) should be added or not in and and or BEGs by compute x. If x is not constant 0 the edge will be added. Construct BEG i j k On-Set Off-set

17   The same for or and and : Construct BEG i j k On-Set Off-set

18  Whether the function is bi-decomposable or not? Guarantee the existence of variable partition. Variable Partition

19  Who can be common variable? Vertex cut is necessary but not sufficient condition. Variable Partition

20   Vertex Cut: A set of vertices whose removal renders a connected graph disconnected.  Examples: Variable Partition ab dc Legal cut Not a vertex cut a b d c e Legal cut Another legal cut

21   Decomposed function for or and and :  For an or bi-decomposition. Decomposed Function Off-set On-set An and bi-decomposition can be obtained in a similar manner by interchanging the off-set and the on-set of f. It’s subset of off-set of f. It’s obtained from expanding on-set of f and does not overlap with off-set of decomposed function.

22   For xor : Decomposed Function

23  Example

24  Experimental Result

25

26

27  Conclusion

28   The experimental result looks good.  This work implemented in ABC using CUDD package, it might have memory problem when function is large.  Solving problem with new graph structure might be a good idea.  The BEG has global view of the decomposability of every variable pairs to choose the best partition.  Maybe we can improve our bi-decomposition work. Conclusion

29 Thanks for Attention


Download ppt "Mihir Choudhury, Kartik Mohanram (ICCAD’10 best paper nominee) Presentor: ABert Liu."

Similar presentations


Ads by Google