## Maximally fast and arbitrarily fast implementation of linear computations (1992)

Venue: | ICCAD |

Citations: | 32 - 17 self |

### BibTeX

@INPROCEEDINGS{Potkonjak92maximallyfast,

author = {Miodrag Potkonjak},

title = {Maximally fast and arbitrarily fast implementation of linear computations},

booktitle = {ICCAD},

year = {1992},

pages = {304--308}

}

### Years of Citing Articles

### OpenURL

### Abstract

ABSTRACT: Linear systems are the most often used type of systems in many engineering and scientific areas. By establishing a relationship between the basic properties of linear computations and several optimizing transformations, it is possible to optimally speed-up linear computations with respect to those transformations while keeping the latency fixed. Furthermore, arbitrarily fast, asymptotically optimal implementations can be obtained by adding retiming and loop unrolling to the transformations set and trading latency for throughput. The proposed techniques have yielded results superior to the best published previously on ail benchmark examples. Finally, the presented approach is also applicable to general (non-linear) computations. 1.0 Motivation and Prior Art The major goal of this paper is to demonstrate how for the large class of linear computations the maximally fast implementation with respect to five important and powerful transformations (associativity, distributivity, commutativity, common subexpression and constant propagation) can be efficiently derived and to show how an arbitrarily fast, asymptotically optimal (with respect to the hardware cost) implementation of a general linear computation can be produced combining those five transformations with retiming and loop unfolding. Transformations alter the organization of a computation in a such a way that the user specified input/output relationship is maintained. They are often used as an effective approach for the improvement of the implementation of computations. Their use in compilers [1,5], theoretical computer science [2] and high level synthesis [3,7,9, 111 is surveyed in [lo].

### Citations

127 | Principles of Compiler Design - Aho, Ullman - 1977 |

101 |
The Computational Complexity of Algebraic and Numeric Problems
- Borodin, Munro
- 1975
(Show Context)
Citation Context ...t/output relationship is maintained. They are often used as an effective approach for the improvement of the implementation of computations. Their use in compilers [1,5], theoretical computer science =-=[2]-=- and high level synthesis [3,7,9, 111 is surveyed in [lo]. 2.0 Main Ideas and Introductory Examples We will introduce main ideas using simple, yet non-trivial examples. Figure 1 shows the data-control... |

56 | Optimizing resource utilization using transformations - Potkonjak, Rabaey - 1991 |

56 | Computational Aspects of VLSI," Computer - Ullman - 1984 |

51 | A Survey of High-Level Synthesis Systems - Walker - 1991 |

18 | Redundant Operation Creation: A Scheduling Optimization Technique - Lobo, Pangrle - 1991 |

9 |
Retiming Synchronous
- Leiserson, Saxe
- 1991
(Show Context)
Citation Context ... user-defined constraints). (3) Using the algorithm from subsection 4.1 minimize the critical path in the unfolded structure. The first step can be solved using thi: Leiserson-Saxe retiming algorithm =-=[6]-=-. After the unfolding by the factor N of the basic iteration, the outputs in the transformed design will linearly depend on the inputs in N iterations and the states (delays). The second step, unfoldi... |

5 |
Digital Filter Structures Related to Classical Filter Networks. Archiv für Elektronik und Übertragungstechnik
- Fettweis
- 1971
(Show Context)
Citation Context ...roduce main ideas using simple, yet non-trivial examples. Figure 1 shows the data-control flow graph (DCFG) of a 3-port serial adaptor which is regularly used in many ladder digital filter structures =-=[4]-=-. Since it is often a part of the feedback path of the complete filter and therefore cannot be pipelined, it usually dictates the overall throughput. Its critical path equals 7 clock cycles, assuming ... |

1 |
Le Blank: “Crafting a Compiler”, The
- Fischer, RJ
- 1985
(Show Context)
Citation Context ...h a way that the user specified input/output relationship is maintained. They are often used as an effective approach for the improvement of the implementation of computations. Their use in compilers =-=[1,5]-=-, theoretical computer science [2] and high level synthesis [3,7,9, 111 is surveyed in [lo]. 2.0 Main Ideas and Introductory Examples We will introduce main ideas using simple, yet non-trivial example... |