skip to main content
article

A model-based extensible framework for efficient application design using FPGA

Published:01 April 2007Publication History
Skip Abstract Section

Abstract

For an FPGA designer, several choices are available in terms of target FPGA devices, IP-cores, algorithms, synthesis options, runtime reconfiguration, degrees of parallelism, among others, while implementing a design. Evaluation of design alternatives in the early stages of the design cycle is important because the choices made can have a critical impact on the performance of the final design. However, a large number of alternatives not only results in a large number of designs, but also makes it a hard problem to efficiently manage, simulate, and evaluate them. In this article, we present a framework for FPGA-based application design that addresses the aforementioned issues. This framework supports a hierarchical modeling approach that integrates application and device modeling techniques and allows development of a library of models for design reuse. The framework integrates a high-level performance estimator for rapid estimation of the latency, area, and energy of the designs. In addition, a design space exploration tool allows efficient evaluation of candidate designs against the given performance requirements. The framework also supports extension through integration of widely used tools for FPGA-based design while presenting a unified environment for different target FPGAs. We demonstrate our framework through the modeling and performance estimation of a signal processing kernel and the design of end-to-end applications.

References

  1. Actel. 2007. Actel ProASICPLUS---The nonvolatile reprogrammable gate array. http://www.actel.com/products/proasicplus/default.aspx.Google ScholarGoogle Scholar
  2. Almagor, L., Cooper, K., Grosul, A., Harvey, T., Reeves, S., Subramanian, D., Torczon, L., and Waterman, T. 2004. Finding effective compilation sequences. In Proceedings of the Conference on Language Compilers and Tools for Embedded Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Altera. 2007. Altera Stratix, Stratix-II, hardcopy. http://www.altera.com/products/devices/.Google ScholarGoogle Scholar
  4. Bazargan, K., Kastner, R., Ogrenci, S., and Sarrafzadeh, M. 2000. A C to hardware/software compiler. In Proceedings of the Conference on Field-Programmable Custom Computing Machines. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Benini, L., Bogliolo, A., and Micheli, G. 2000. A survey of design techniques for system-level dynamic power management. In IEEE Trans. Very Large Scale Integration Syst. 8, 3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Bhattacharyya, S., Murthy, P., and Lee, E. A. 1999. Synthesis of embedded software from synchronous dataflow specifications. J. Very Large Scale Integration Signal Proc. Syst. 21, 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Bondalapati, K. and Prasanna, V. K. 2000. Loop pipelining and optimization for reconfigurable architectures. In Proceedings of the Reconfigurable Architectures Workshop. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Celoxica Limited. 2005. The Handel-C language. http://www.celoxica.com/.Google ScholarGoogle Scholar
  9. Choi, S., Govindu, G., Jang, J., and Prasanna, V. K. 2003. Energy-Efficient and parameterized designs for fast Fourier transform on FPGAs. In Proceedings of the International Conference on Acoustics, Speech, and Signal Processing.Google ScholarGoogle Scholar
  10. Choi, S., Jang, J., Mohanty, S., and Prasanna, V. K. 2002. Domain-Specific modeling for rapid system-wide energy estimation of reconfigurable architectures. J. Supercomput. 26, 3 (Nov.), 259--261. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Devlin, M. 2003. Product focus DSP: How to make smart antenna arrays. Xcell J. Q1.Google ScholarGoogle Scholar
  12. Dick, C. 2003. FPGA: Enabling the software/reconfigurable radio. In Proceedings of the 14th International Conference on Field-Programmable Logic and Applications (Antwerp, Belgium, Aug.--Sept.). Lecture Notes in Computer Science, vol. 3203. Springer Verlag.Google ScholarGoogle Scholar
  13. Doucet, F., Otsuka, M., Shukla, S., and Gupta, R. 2002. An environment for dynamic component composition for efficient co-design. In Proceedings of the Conference on Design Automation and Test in Europe. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Ghiasi, S., Nahapetian, A., and Sarrafzadeh, M. 2004. An optimal algorithm for minimizing runtime reconfiguration delay. ACM Trans. Embedded Comput. Syst. 3, 2 (May), 237--256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Guo, Z., Najjar, W., Vahid, F., and Vissers, K. 2004. A quantitative analysis of the speedup factors of FPGAs over processors. In Proceedings of the Symposium on Field-Programmable Gate Arrays. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. IBM. 2007. PowerPC 405 embedded cores. http://www-3.ibm/com/chips/techlib/techlib.nsf/products/PowerPC_405_Emb%edded_Cores.Google ScholarGoogle Scholar
  17. Intel. 2007. PXA 255 processor. http://www.intel.com/design/intelxscale/.Google ScholarGoogle Scholar
  18. Jang, J., Choi, S., and Prasanna, V. K. 2002. Energy-Efficient matrix multiplication on FPGAs. In Proceedings of the Field Programmable Logic and Applications. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Johnston, W., Hanna, J., and Millar, R. J. 2004. Advances in dataflow programming languages. ACM Comput. Surv. 36, 1. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Jones, A., Bagchi, D., Pal, S., Tang, X., Choudhary, A., and Banerjee, P. 2002. PACT HDL: A C compiler with power and performance optimizations. In Proceedings of the Conference on Compilers, Architectures and Synthesis for Embedded Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Kirk, D., Roper, M., and Wood, M. 2002. Defining the problems of framework reuse. In Proceedings of the Computer Software and Applications Conference. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Ledeczi, A., Davis, J., Neema, S., and Agrawal, A. 2003. Modeling methodology for integrated simulation of embedded systems. ACM Trans. Model. Comput. Simul. 13, 1 (Jan.), 82--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Lee, E. A. and Messerschmitt, D. G. 1987. Synchronous data flow. Proc. IEEE 75.Google ScholarGoogle Scholar
  24. Maestre, R., Kurdahi, F., Fernandez, M., Hermida, R., Bagherzadeh, N., and Singh, H. 2001. A framework for reconfigurable computing: Task scheduling and context management. IEEE Trans. Very Large Scale Integration Des. 9, 6, 858--873. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Mamidipaka, M., Khouri, M., Dutt, N., and Abadir, M. 2003. IDAP: A tool for high level power estimation of custom array structures. In Proceedings of the Conference on Computer Aided Design. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. McGregor, G., Robinson, D., and Lysaght, P. 1998. Hardware/Software co-design environment for reconfigurable logic systems. In Proceedings of the Conference on Field-Programmable Logic and Applications. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Mentor Graphics. 2007a. Seamless hardware/software co-verification and FPGA advantage. http://www.mentor.com/fpga-advantage/.Google ScholarGoogle Scholar
  28. Mentor Graphics. 2007b. ModelSim. http://www.model.com/.Google ScholarGoogle Scholar
  29. Milan. 2007. Model-Based integrated simulation. http://milan.usc.edu/.Google ScholarGoogle Scholar
  30. Mohanty, S. and Prasanna, V. 2003. A hierarchical approach for energy efficient application design using heterogeneous embedded systems. In Proceedings of the Conference on Compilers, Architectures and Synthesis for Embedded Systems. 243--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Mohanty, S. and Prasanna, V. 2004. An algorithm designer's workbench for platform FPGAs. In Proceedings of the Conference on Field Programmable Logic and its Application.Google ScholarGoogle Scholar
  32. Mohanty, S., Prasanna, V. K., Neema, S., and Davis, J. 2002. Rapid design space exploration of heterogeneous embedded systems using symbolic search and multi-granular simulation. In Proceedings of the Conference on Language Compilers and Tools for Embedded Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Mukherjee, R. and Memik, S. 2004. Power-Driven design partitioning. In Proceedings of the Conference on Field Programmable Logic and its Application.Google ScholarGoogle Scholar
  34. Ou, J., Choi, S., and Prasanna, V. K. 2003. Performance modeling of reconfigurable SoC architectures and energy-efficient mapping of a class of applications. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Prasanna, V. K. and Tsai, Y. 1991. On synthesizing optimal family of linear systolic arrays for matrix multiplication. IEEE Trans. Comput. 40, 6, 770--774. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Shang, L. and Jha, N. K. 2001. High-Level power modeling of CPLDs and FPGAs. In Proceedings of the International Conference on Computer Design. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Shenoy, N., Choudhary, A., and Banerjee, P. 2001. An algorithm for synthesis of large time-constrained heterogeneous adaptive systems. ACM Trans. Des. Autom. Electron. Syst. 2, 6, 207--225. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Shirazi, N., Luk, W., and Cheung, P. 1998. Automating production of run-time reconfigurable designs. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. SimpleScalar. 2007. The SimpleScalar tool set. http://www.simplescalar.com/.Google ScholarGoogle Scholar
  40. Singer, P. 2002. The optimal detector. In SPIE Conference: Signal and Data Processing for Small Targets.Google ScholarGoogle Scholar
  41. Software Integrated Systems. 2006. GME-4. Generic Modeling Environment. http://www.isis.vanderbilt@edu/Projects/gme/.Google ScholarGoogle Scholar
  42. Srivastava, N., Trahan, J., Vaidyanathan, R., and Rai, S. 2003. Adaptive image filtering using run-time reconfiguration. In Proceedings of the Reconfigurable Architectures Workshop. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Stammermann, A., Kruse, L., Nebel, W., Pratsch, A., Schmidt, E., Schulte, M., and Schulz, A. 2001. System level optimization and design space exploration for low power. In Proceedings of the International Symposium on System Synthesis. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Synopsis. 2007. Synopsis design compiler FPGA. http://www.synopsys.com/fpga/.Google ScholarGoogle Scholar
  45. SystemC. 2007. SystemC HDL. http://www.systemc.org/.Google ScholarGoogle Scholar
  46. Sztipanovits, J. and Karsai, G. 1999. Model-Integrated computing. IEEE Comput. Mag. 30, 4 (Apr.), 110--111. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Xilinx. 2007a. Xilinx system generator for Simulink (Matlab). http://www.xilinx.com/products/software/sysgen/product_details.htm.Google ScholarGoogle Scholar
  48. Xilinx. 2007b. Xilinx Virtex-II and Virtex-II Pro. http://www.xilinx.com/.Google ScholarGoogle Scholar

Index Terms

  1. A model-based extensible framework for efficient application design using FPGA

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Design Automation of Electronic Systems
          ACM Transactions on Design Automation of Electronic Systems  Volume 12, Issue 2
          April 2007
          222 pages
          ISSN:1084-4309
          EISSN:1557-7309
          DOI:10.1145/1230800
          Issue’s Table of Contents

          Copyright © 2007 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 April 2007
          Published in todaes Volume 12, Issue 2

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader