Abstract
Functional decomposition is an important technique for technology mapping to lookup table-based FPGA architectures. We present the theory of and a novel approach to functional disjoint decomposition of multiple-output functions, in which common subfunctions are extracted during technology mapping. While a Boolean function usually has a very large number of subfunctions, we show that not all of them are useful for multiple-output decomposition. We use a partition of the set of bound set vertices as the basis to compute preferable decomposition functions, which are sufficient for an optimal multiple-output decomposition. We propose several new algorithms that deal with central issues of functional multiple-output decomposition. First, an efficient algorithm to solve the variable partitioning problem is described. Second, we show how to implicitly compute all preferable functions of a single-output function and how to identify all common preferable functions of a multiple-output function. Due to implicit computation in the crucial steps, the algorithm is very efficient. Experimental results show significant reductions in area.
Original language | English |
---|---|
Pages (from-to) | 313-350 |
Number of pages | 38 |
Journal | ACM Transactions on Design Automation of Electronic Systems |
Volume | 4 |
Issue number | 3 |
DOIs | |
State | Published - 1999 |
Keywords
- Assignable functions
- Boolean functions
- Computer-aided design of VLSI
- Decomposition
- FPGA technology
- Implicit BDD-based methods
- Mapping synthesis
- Multiple-output decomposition
- Preferable functions
- Subfunction sharing gain
- Subfunction sharing potential