Skip to main content

A Technique for FPGA Synthesis Driven by Automatic Source Code Analysis and Transformations

  • Conference paper
  • First Online:
Field-Programmable Logic and Applications: Reconfigurable Computing Is Going Mainstream (FPL 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2438))

Included in the following conference series:

Abstract

This paper presents a technique for automatic synthesis of high-performance FPGA-based computing machines from C language source code. It exploits data-parallelism present in source code, and its approach is based on hardware application of techniques for automatic loop transformations, mainly designed in the area of optimizing compilers for parallel and vector computers. Performance aspects are considered in early stage of design, before low-level synthesis process, through a transformation-intensive branch-and-bound approach, that searches design space exploring area-performance tradeoffs. Furthermore optimizations are applied at architectural level, thus achieving higher benefits with respect to gate-level optimizations, also by means of a library of hardware blocks implementing arithmetic and functional primitives. Application of the technique to partial and complete unrolling of a Successive Over-Relaxation code is presented, with results in terms of effectiveness of area-delay estimation, and speed-up for the generated circuit, ranging from 5 and 30 on a Virtex-E 2000-6 with respect to a Intel Pentium 3 1GHz.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M.E. Wolf and M.S. Lam: “A loop transformation theory and an algorithm to maximize parallelism”, IEEE Trans. Parallel. Distrib. Syst. Vol.2, pp. 452–471, Oct 1991.

    Google Scholar 

  2. M. Weinhardt and W. Luk: “Pipeline Vectorization”, IEEE Trans. On CAD of Integrated Circuits and Systems, Vol.20, No. 2, Feb 2001.

    Google Scholar 

  3. M. Rencher, B. L. Hutchings, “Automated Target Recognition on SPLASH2”, IEEE Symposium on Field-Programmable Custom Computing Machines, 1997.

    Google Scholar 

  4. H. Zima and B. Chapman: “Supercompilers for Parallel and ”, Reading MA: Addison-Wesley, 1991.

    Google Scholar 

  5. B. Di Martino, G. Iannello, “Parallelization of Nonsimultaneous...”, in: Parallel Processing, Lecture Notes in Computer Science n. 854, pp. 253–262, Springer-Verlag, 1994.

    Google Scholar 

  6. B. Di Martino, “Algorithmic Concept Recognition Support for Automatic...”, Journ. of Information Science and Engineering, Vol. 14, n. 1, pp. 191–203, March 1998.

    Google Scholar 

  7. M. J. Wolfe: Optimizing Supercompilers for Supercomputers. Research Monographs in Parallel and Distributed Computing. MIT Press, Cambridge, Mass.

    Google Scholar 

  8. M. Girkar and C.D. Polychronopoulos: “Automatic Extraction of Functional Parallelism...”, IEEE Trans. On Par. and Distr. Syst. Vol.3, No.2, March 1992, pp. 166–178.

    Article  Google Scholar 

  9. A. J. Elbirt, C. Paar, “An FPGA Implementation and Performance Evaluation...”, ACM/SIGDA International Symposium on FPGAs, pp. 33–40, 2000.

    Google Scholar 

  10. F. Irigoin and R. Triolet, “Supernode partitioning”, In Proc. 15th Annual ACM SIGACT-SIGPLAN Synp Principles Programming Languages, Jan. 1988, pp. 319–329.

    Google Scholar 

  11. N. Tawbi: “Estimation of nested loops execution time by integer arithmetic in convex polyhedra”, Parallel Processing Symposium, 1994. Proceedings., 1994, Page(s): 217–221

    Google Scholar 

  12. D.E. Knuth, “The Art of Computer Programming”, Vol. I, Addison-Wesley, 1973

    Google Scholar 

  13. R. Rinker et al.: “An Automated Process for Compiling Dataflow Graphs into...”, IEEE Trans. On VLSI Systems, Vol.9, No.1, Feb. 2001, pp. 130–139.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Di Martino, B., Mazzocca, N., Saggese, G.P., Strollo, A.G.M. (2002). A Technique for FPGA Synthesis Driven by Automatic Source Code Analysis and Transformations. In: Glesner, M., Zipf, P., Renovell, M. (eds) Field-Programmable Logic and Applications: Reconfigurable Computing Is Going Mainstream. FPL 2002. Lecture Notes in Computer Science, vol 2438. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46117-5_7

Download citation

  • DOI: https://doi.org/10.1007/3-540-46117-5_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44108-3

  • Online ISBN: 978-3-540-46117-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics