kth.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Advances in Functional Decomposition: Theory and Applications
KTH, School of Information and Communication Technology (ICT), Microelectronics and Information Technology, IMIT.
2006 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Functional decomposition aims at finding efficient representations for Boolean functions. It is used in many applications, including multi-level logic synthesis, formal verification, and testing.

This dissertation presents novel heuristic algorithms for functional decomposition. These algorithms take advantage of suitable representations of the Boolean functions in order to be efficient.

The first two algorithms compute simple-disjoint and disjoint-support decompositions. They are based on representing the target function by a Reduced Ordered Binary Decision Diagram (BDD). Unlike other BDD-based algorithms, the presented ones can deal with larger target functions and produce more decompositions without requiring expensive manipulations of the representation, particularly BDD reordering.

The third algorithm also finds disjoint-support decompositions, but it is based on a technique which integrates circuit graph analysis and BDD-based decomposition. The combination of the two approaches results in an algorithm which is more robust than a purely BDD-based one, and that improves both the quality of the results and the running time.

The fourth algorithm uses circuit graph analysis to obtain non-disjoint decompositions. We show that the problem of computing non-disjoint decompositions can be reduced to the problem of computing multiple-vertex dominators. We also prove that multiple-vertex dominators can be found in polynomial time. This result is important because there is no known polynomial time algorithm for computing all non-disjoint decompositions of a Boolean function.

The fifth algorithm provides an efficient means to decompose a function at the circuit graph level, by using information derived from a BDD representation. This is done without the expensive circuit re-synthesis normally associated with BDD-based decomposition approaches.

Finally we present two publications that resulted from the many detours we have taken along the winding path of our research.

Place, publisher, year, edition, pages
Stockholm: KTH , 2006. , p. xi,176
Series
Trita-ICT-ECS AVH, ISSN 1653-6363 ; 06:06
Keywords [en]
computer science, electronic system design, Boolean decomposition, binary decision diagram, logic synthesis, graph algorithm
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:kth:diva-4135OAI: oai:DiVA.org:kth-4135DiVA, id: diva2:10887
Public defence
2006-10-12, E, KTH Forum, Isafjordsgatan 39, Kista, 09:00
Opponent
Supervisors
Note
QC 20100909Available from: 2006-10-09 Created: 2006-10-09 Last updated: 2022-06-27Bibliographically approved
List of papers
1. A BDD-based fast heuristic algorithm for disjoint decomposition
Open this publication in new window or tab >>A BDD-based fast heuristic algorithm for disjoint decomposition
2003 (English)In: The IEEE Asia and South Pacific Design Automation Conference 2003 (ASP-DAC 2003), January, 2003, Kitakyushu, Japan,  Asia and South Pacific Design Automation Conference, 2003, p. 191-196Conference paper, Published paper (Refereed)
Abstract [en]

This paper presents a heuristic algorithm for disjointdecomposition of a Boolean function based on its ROBDDrepresentation. Two distinct features make the algorithm feasiblefor large functions. First, for an n-variable function, it checks onlyO(n2) candidates for decomposition out of O(2n) possible ones. Aspecial strategy for selecting candidates makes it likely that allother decompositions are encoded in the selected ones. Second,the decompositions for the approved candidates are computedusing a novel IntervalCut algorithm. This algorithm does notrequire re-ordering of ROBDD. The combination of both techniquesallows us to decompose the functions of size beyond thatpossible with the exact algorithms. The experimental results on582 benchmark functions show that the presented heuristic finds95% of all decompositions on average. For 526 of those functions,it finds 100% of the decompositions.

National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-24436 (URN)10.1109/ASPDAC.2003.1195015 (DOI)2-s2.0-2442524463 (Scopus ID)
Note
QC 20100909Available from: 2010-09-09 Created: 2010-09-09 Last updated: 2022-06-25Bibliographically approved
2. Roth-Karp Decomposition of LargeBoolean Functions with Applicationto Logic Design
Open this publication in new window or tab >>Roth-Karp Decomposition of LargeBoolean Functions with Applicationto Logic Design
2002 (English)In: Proceedings of NORCHIP 2002(NORSHIP'02), Copenhagen, Denmark, November 2002, pp. 183-189, 2002, p. 183-189Conference paper, Published paper (Refereed)
National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-24438 (URN)
Note
QC 20100909Available from: 2010-09-09 Created: 2010-09-09 Last updated: 2022-06-25Bibliographically approved
3. Disjoint-support boolean decomposition combining functional and structural methods
Open this publication in new window or tab >>Disjoint-support boolean decomposition combining functional and structural methods
2004 (English)In: Proceedings of the Asia and South Pacific Design Automation Conference, ASP-DAC 2004, 2004, p. 597-599Conference paper, Published paper (Refereed)
Abstract [en]

This paper presents an algorithm for disjoint-support decomposition of Boolean functions which combines functional and structural approaches. First, a set of proper cut points is identified in the circuit by using dominator relations (structural method). Then, the circuit is partitioned along these cut points and a BDD-based decomposition is applied to the resulting smaller functions (functional method). Previous work on Boolean decomposition used only single methods and did not integrate a combined strategy. The experimental results show that the presented technique is more robust than a pure BDD-based approach and produces better-quality decompositions.

National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-6858 (URN)10.1109/ASPDAC.2004.1337661 (DOI)000221356700133 ()2-s2.0-2442599137 (Scopus ID)
Conference
Proceedings of the ASP - DAC 2004 Asia and South Pacific Design Automation Conference - 2004; Yokohama; Japan; 27 January 2004 through 30 January 2004;
Note

Uppdaterad från manuskript till konferensbidrag: 20100909 QC 20100909 QC 20150710

Available from: 2007-03-01 Created: 2007-03-01 Last updated: 2022-06-26Bibliographically approved
4. On relation between non-disjoint decomposition and multiple-vertex dominators
Open this publication in new window or tab >>On relation between non-disjoint decomposition and multiple-vertex dominators
2004 (English)In: 2004 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS, VOL 4, PROCEEDINGS, IEEE , 2004, p. 493-496Conference paper, Published paper (Refereed)
Abstract [en]

This paper addresses the problem of non-disjoint decomposition of Boolean functions. Decomposition has multiple applications in logic synthesis, testing and formal verification. First, we show that the problem of computing non-disjoint decompositions of Boolean functions can be reduced to the problem of finding multiple-vertex dominators of circuit graphs. Then, we prove that there exists an algorithm for computing all multiple-vertex dominators of a fixed size in polynomial time. Our result is important because no polynomial-time algorithm for non-disjoint decomposition of Boolean functions is known. A set of experiments on benchmark circuits illustrates our approach.

Place, publisher, year, edition, pages
IEEE, 2004
Series
Proceedings - IEEE International Symposium on Circuits and Systems, ISSN 0271-4310
Keywords
Algorithms, Graph theory, Optimization, Polynomials, Set theory, Theorem proving
National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-24440 (URN)000223102600124 ()2-s2.0-4344605050 (Scopus ID)0-7803-8251-X (ISBN)
Conference
2004 IEEE International Symposium on Cirquits and Systems, Vancouver, BC; Canada; 23 May 2004 through 26 May 2004
Note

QC 20100909

Available from: 2010-09-09 Created: 2010-09-09 Last updated: 2022-06-25Bibliographically approved
5. Bound set selection and circuit re-synthesis for area/delay driven decomposition
Open this publication in new window or tab >>Bound set selection and circuit re-synthesis for area/delay driven decomposition
2005 (English)In: DESIGN, AUTOMATION AND TEST IN EUROPE CONFERENCE AND EXHIBITION, VOLS 1 AND 2, PROCEEDINGS, 2005, p. 430-431Conference paper, Published paper (Refereed)
Abstract [en]

This paper addresses two problems related to disjoint-support decomposition of Boolean functions. First, we present a heuristic for finding a subset of variables, X, which results in the disjoint-support decomposition f(X, Y) = h(g(X), Y) with a good area/delay trade-off. Second, we present a technique for re-synthesis of the original circuit implementing f (X, Y) into a circuit implementing the decomposed representation h(g(x), Y)Preliminary experimental results indicate that the proposed approach has a significant potential.

Series
Design, Automation and Test in Europe Conference and Expo, ISSN 1530-1591
Keywords
Boolean functions, Delay circuits, Electric network analysis, Electric variables control, Heuristic methods, Problem solving, Set theory
National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-24442 (URN)10.1109/DATE.2005.83 (DOI)000228086900079 ()2-s2.0-33646918903 (Scopus ID)0-7695-2288-2 (ISBN)
Conference
Design, Automation and Test in Europe Conference and Exhibition (DATE 05) Munich, GERMANY, MAR 07-11, 2005
Note

QC 20100909

Available from: 2010-09-09 Created: 2010-09-09 Last updated: 2022-06-25Bibliographically approved
6. Bound-set preserving ROBDD variable orderings may not be optimum
Open this publication in new window or tab >>Bound-set preserving ROBDD variable orderings may not be optimum
2005 (English)In: IEEE Transactions on Computers, ISSN 0018-9340, E-ISSN 1557-9956, Vol. 54, no 2, p. 236-237Article in journal (Refereed) Published
Abstract [en]

This paper reports a result concerning the relation between the best variable orderings of an ROBDD G(f) and the decomposition structure of the Boolean function f represented by G(f). It was stated in [1] that, if f has a decomposition of type f(X) = g(h(1)(Y-1), h(2)(Y-2), ..., h(k)(Y-k)), where {Y-i}, i is an element of {1, 2, ..., k}, is a partition of X, then one of the orderings which keeps the variables within the sets {Y-i} adjacent is a best ordering for G(f). Using a counterexample, we show that this statement is incorrect.

Keywords
ROBDD, variable ordering, bound set
National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-14429 (URN)10.1109/TC.2005.17 (DOI)000225715900015 ()2-s2.0-14844342353 (Scopus ID)
Note

QC 20100525

Available from: 2010-08-05 Created: 2010-08-05 Last updated: 2023-03-28Bibliographically approved
7. Kauffman networks: Analysis and applications
Open this publication in new window or tab >>Kauffman networks: Analysis and applications
2005 (English)In: ICCAD-2005: INTERNATIONAL CONFERENCE ON COMPUTER AIDED DESIGN, DIGEST OF TECHNICAL PAPERS, 2005, p. 479-484Conference paper, Published paper (Refereed)
Abstract [en]

A Kauffman network is an abstract model of gene regulatory networks. Each gene is represented by a vertex. An edge from one vertex to another implies that the former gene regulates the latter. Statistical features of Kauffman networks match the characteristics of living cells. The number of cycles in the network's state space, called attractors, corresponds to the number of different cell types. The attractor's length corresponds to the cell cycle time. The sensitivity of attractors; to different kinds of disturbances, modeled by changing a network connection, the state of a vertex, or the associated function, reflects the stability of the cell to damage, mutations and virus attacks. In order to evaluate attractors, their number and lengths have to be computed. This problem is the major open problem related to Kauffman networks. Available algorithms can only handle networks with less than a hundred vertices. The number of genes in a cell is often larger. In this paper, we present a set of efficient algorithms for computing attractors in large Kauffman networks. The resulting software package is hoped to be of assistance in understanding the principles of gene interactions and discovering a computing scheme operating on these principles.

Series
IEEE international conference on computer-aided design, ISSN 1063-6757
Keywords
random boolean networks, model, graph
National Category
Computer Sciences
Identifiers
urn:nbn:se:kth:diva-24444 (URN)10.1109/ICCAD.2005.1560115 (DOI)000234559700067 ()2-s2.0-33751394685 (Scopus ID)
Conference
IEEE/ACM International Conference on Computer Aided Design San Jose, CA, NOV 06-10, 2005
Note

QC 20100909

Available from: 2010-09-09 Created: 2010-09-09 Last updated: 2022-06-25Bibliographically approved

Open Access in DiVA

fulltext(1084 kB)1254 downloads
File information
File name FULLTEXT01.pdfFile size 1084 kBChecksum MD5
8546959634b14e98371d2855a5e4951ed2d7e773ce8b781652ce5739986e69560a5f9a18
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Martinelli, Andrés
By organisation
Microelectronics and Information Technology, IMIT
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar
Total: 1254 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 1714 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf