Abstract
Recently, energy dissipation for computations on FPGAs has become an important performance metric. In this paper, we summarize our recent efforts in developing an algorithm-level design methodology for optimizing the energy performance of FPGA based implementations. For kernels, our design methodology consists of four steps: domain selection, domain-specific energy modeling, domain-space exploration and low-level simulation. To achieve system-level energy-efficiency, we outline a design methodology that integrates the kernel-level design methodology. Both the design methodologies can be used to achieve not only energy-efficiency but also latency, area, and power efficiency. We consider signal processing kernels as illustrative examples and demonstrate energy and time efficient algorithms and implementations for these on FPGAs. Example energy performance optimization through algorithmic optimizations include the 29–51% improvement in energy performance for a matrix multiplication kernel, 57–78% improvement for a FFT kernel and the 10–60% improvement for a floating-point LU decomposition kernel over state-of-the-art implementations. Similarly, an improvement of 41 to 46% in energy performance was achieved by the system-level design approach over a greedy approach for a MVDR adaptive beamforming application. Finally we briefly describe a high-level tool for obtaining parameterized and energy-efficient designs on FPGAs.
Similar content being viewed by others
References
A. Amira, A. Bouridane, and P. Milligan. Accelerating matrix product on reconfigurable hardware for signal processing, field-programmable logic and applications (FPL), 2001.
E. Casseau, D. Degrugillier. A linear systolic array for LU decomposition. VLSI Design, 1994.
S. Choi, G. Govindu, J. Jang, and V. K. Prasanna. Energy-efficient and parameterized designs of fast fourier transforms on FPGAs. In International Conference for Audio Speech Signal Processing, 2003.
S. Choi, J. Jang, S. Mohanty, and V. K. Prasanna. Domain-specific modeling for rapid energy estimation of reconfigurable architectures. Special Issue on Configurable Computing of the Journal of Supercomputing, Kluwer, 26(3):259–281, 2003.
S. Choi and V. K. Prasanna. Time and energy efficient matrix factorization using FPGAs. In International Conference on Field Programmable Logic and Applications, 2003.
S. Choi, R. Scrofano, and V. K. Prasanna. Energy-efficient design of kernel applications for FPGAs through domain-specific modeling. Militiary and Aerospace Programmable Logic Devices, 2002.
G. Govindu, V. Daga, S. Choi, V. Prasanna, S. Ganagadharpalli, and V. Sridhar. A high-performance and energy-efficient floating-point based architecture for LU decomposition on FPGAs. In Reconfigurable Architectures Workshop, April 2004.
S. Haykin. Adaptive Filter Theory, 3rd edition, Prentice Hall, 1991.
R. Hogg and E. Tanis. Probability and Statistical Inference, 6th edition. Prentice Hall, 2001, pp. 656–657.
J. Jang, S. Choi, and V. K. Prasanna. Energy-efficient matrix multiplication on FPGAs. In International Conference on Field Programmable Logic and Applications, 2002.
J. Jang, S. Choi, and V. K. Prasanna. Energy-efficient matrix multiplication on FPGAs. IEEE Transactions on VLSI (TVLSI), (submitted).
S. Mohanty, V. K. Prasanna, S. Neema, and J. Davis. Rapid design space exploration of heterogeneous embedded systems using symbolic search and multi-granular simulation. Language Compilers and Tools for Embedded Systems, 2002.
J. Ou, S. Choi, and V. K. Prasanna. Energy-efficient hardware/software co-synthesis for a class of applications on reconfigurable SoCs. International Journal of Embedded Systems, June 2004.
J. Ou and V. K. Prasanna. PyGen: A MATLAB/Simulink based tool for synthesizing parameterized and energy efficient designs using FPGAs. FCCM, 2004.
V. K. Prasanna Kumar and Y. Tsai. On synthesizing optimal family of linear systolic arrays for matrix multiplication. IEEE Transactions on Computers, 40(6), 1991.
A. Raghunathan, N. K. Jha, and S. Dey. High-Level Power Analysis and Optimization. Kluwer Academic Publishers, 1998.
L. Shang and N. K. Jha. High-level power modeling of CPLDs and FPGAs. In International Conference on Computer Design, 2001.
L. Shang, A. Kaviani, K. Bathala. Dynamic power consumption in Virtex-II FPGA family. In International Symposium on Field Programmable Gate Arrays, 2002.
G. Yeap. Low Power Digital VLSI Design, 1998.
L. Zhuo and V. K. Prasanna. Scalable and modular algorithms for floating-point matrix multiplication on FPGAs. Technical report, Dept. of Eletrical Engineering, University of Southern California, 2004.
Author information
Authors and Affiliations
Corresponding author
Additional information
This work is supported by the National Science Foundation under award No. CCR-0311823.
Rights and permissions
About this article
Cite this article
Prasanna, V.K. Energy-Efficient Computations on FPGAs. J Supercomput 32, 139–162 (2005). https://doi.org/10.1007/s11227-005-0289-9
Issue Date:
DOI: https://doi.org/10.1007/s11227-005-0289-9