Skip to main content

Compilation Increasing the Scheduling Scope for Multi-memory-FPGA-Based Custom Computing Machines

  • Conference paper
  • First Online:
Field-Programmable Logic and Applications (FPL 2001)

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

Included in the following conference series:

  • 950 Accesses

Abstract

This paper presents new achievements on the automatic mapping of abstract algorithms, written in imperative software programming languages, to custom computing machines. The reconfigurable hardware element of the target architecture consists of one field-programmable gate array coupled with one or more memories. The compilation flow exposes operation- and functional-level parallelism, and speculative execution. Such expositions are efficiently represented in a hierarchical model. In order to take full advantage of such representation, the scheduling scope is significantly improved by merging basic blocks at loop boundaries and by considering the parallel execution of exposed concurrent loops. The paper describes the scheduling technique, shows a study on the impact of the merge operation, and reveals the improvements achieved when the exposed parallelism is fully satisfied.

Research partially supported by the Portuguese PRAXIS XXI Program under the scope of the AXEL Project PRAXIS/2/2.1/TIT/1643/95.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. J. Becker, R. Hartenstein, M. Herz, U. Nageldinger, “Parallelization in Co-Compilation for Configurable Accelerators,” In Proc. of the Asia South Pacific Design Automation Conference (ASP-DAC98), Yokohama, Japan, February 10-13.

    Google Scholar 

  2. João M. P. Cardoso, and Horácio Neto, “Macro-Based Hardware Compilation of Java™ Bytecodes into a Dynamic Reconfigurable Computing System,” In Proc. of the IEEE 7 th Symposium on Field-Programmable Custom Computing Machines (FCCM’99), Napa Valley, CA, USA, April 21–23, 1999, pp. 2–11.

    Google Scholar 

  3. João M. P. Cardoso, Compilation of Java™ Algorithms for Reconfigurable Computing Systems with Exploitation of Operation-Level Parallelism, Ph.D. thesis (in Portuguese), IST (Instituto Superior Técnico), Lisbon, Portugal, October 2000.

    Google Scholar 

  4. Scott Hauck, “The Future of Reconfigurable Systems,” Keynote Address, 5 th Canadian Conference on Field Programmable Devices, Montreal, June 1998.

    Google Scholar 

  5. J. Babb et al, “Parallelizing Applications into Silicon,” In Proc. of the 7 th IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM’99), Napa Valley, A, USA, April 21-23, 1999, pp. 70–80.

    Google Scholar 

  6. D. Gajski, et al., High-Level Synthesis, Introduction to Chip and System Design, Kluwer Academic Publishers, 1992.

    Google Scholar 

  7. J. A. Fisher, and B. R. Rau, “Instruction-Level Parallel Processing,” In H. C. Torng and S. Vassiliadis, editors, Instruction-Level Parallel Processors, IEEE Computer Society Press, 1995, pp. 41–49.

    Google Scholar 

  8. Scott A. Mahlke, David Lin, William Y. Chen, Richard E. Hank, Roger A. Bringmann, “Effective Compiler Support for Predicated Execution Using the Hyperblock,” In Proc. of the 25 th International Symposium on Microarchitecture, Dec. 1992, pp. 45–54.

    Google Scholar 

  9. Timothy J. Callahan, John Hauser, and John Wawrzynek, “The Garp Architecture and C Compiler,” IEEE Computer, Vol. 33, No. 4, April 2000, pp. 62–69.

    Google Scholar 

  10. M. Girkar, and C. D. Polychronopoulos, “Automatic Extraction of Functional Parallelism from ordinary Programs,” In IEEE Transactions on Parallel and Distributed Systems, Vol. 3, No. 2, March 1992, pp. 166–178.

    Article  Google Scholar 

  11. J. Ferrante, J. Ottenstein, and J. D. Warren, “The Program Dependence Graph and its uses in optimization,” ACM Transactions on Programming Languages and Systems, vol. 9, no. 3, July 1987, pp. 319–349.

    Article  MATH  Google Scholar 

  12. S. Gupta, N. Savoiu, S. Kim, N.D. Dutt, R.K. Gupta, A. Nicolau, “Speculation Techniques for High Level synthesis of Control Intensive Designs,” in Proc. of the 38th Design Automation Conference (DAC’01), Las Vegas, Nevada, USA, June 18-22, 2001.

    Google Scholar 

  13. S. S. Muchnick, Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers, Inc., San Francisco, CA, USA, 1997.

    Google Scholar 

  14. João M. P. Cardoso, and Horacio Neto, “An Enhanced Static-List Scheduling Algorithm for Temporal Partitioning onto RPUs,” In Proc. of the IFIP X Intl. Conference on Very Large Scale Integration (VLSI’99), Lisbon, December 1-3, 1999, pp. 485–496.

    Google Scholar 

  15. Xilinx Inc., XC6000 Field Programmable Gate Arrays, v. 1.10, April 24, 1997.

    Google Scholar 

  16. G. Lakshminarayana, K. S. Khouri, and N. K. Jha, “Wavesched: A Novel Scheduling Technique for Control-Flow Intensive Designs,” In IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 18, no. 5, May 1999, pp. 505–523.

    Article  Google Scholar 

  17. G. Lakshminarayana, K. S. Khouri, and N. K. Jha, Benchmarks repository, Workshop on High-Level Synthesis, 1995, ftp://ftp.ics.uci.edu/pubMsynth/HLSynth95

  18. R. Sedgewick, Algorithms in C++, Addison-Wesley, Publishing Company, Inc., 1992.

    Google Scholar 

  19. Morse Rodriguez, “Evaluating Video Codecs,” In IEEE Multimedia, Fall 1994, pp. 25–33.

    Google Scholar 

  20. Cleland. O. Newton, “A Synthesis Process applied to the Kalman Filter Benchmark,” In Proc. of the Workshop on High-Level Synthesis, DRA Malvern, UK. ftp://ftp.ics.uci.edu/pub/hlsynth/HLSynth92/kalman

  21. P. Athanas, H. Silverman, “Processor Reconfiguration through Instruction-Set Metamorphosis: Architecture and Compiler,” IEEE Computer, vol. 26, n. 3, March 1993.

    Google Scholar 

  22. L. Agarwal, et al, “An Asynchronous Approach to Efficient Execution of Programs on Adaptive Architectures Utilizing FPGAs,” In Proc. of the 2 nd IEEE Workshop on FPGAs for Custom Computing Machines (FCCM’94), Napa Valley, CA, USA, April 1994.

    Google Scholar 

  23. D. Galloway, “The Transmogrifier Hardware Description Language and Compiler for FPGAs,” In Proc. of the 3 rd IEEE Workshop on FPGAs for Custom Computing Machines(FCCM’95), Napa Valley, CA, USA, April 1995.

    Google Scholar 

  24. Ouaiss, et al., “An Integrated Partioning and Synthesis System for Dynamically Reconfigurable Multi-FPGA Architectures,” In Proc. of the Reconfigurable Architectures Workshop (RAW’98), Orlando, Florida, USA, March 30, 1998.

    Google Scholar 

  25. J. Hammes, R. Rinker, W. Böhm, W. Najjar, B. Draper, R. Beveridge, “Cameron: High Level Language Compilation for Reconfigurable Systems,” In Proc. of the Int. Conference on Parallel Architectures and Compilation Techniques (PACT’99), Newport Beach, A, USA, Oct. 12–16, 1999.

    Google Scholar 

  26. Sze-Wei Ong, et al.,“Automatic Mapping of Multiple Applications to Multiple Adaptive Computing Systems,” In IEEE 9 th Symposium on Field-Programmable Custom Computing Machines (FCCM’01), Rohnert Park, California, USA, April 30–May 2, 2001.

    Google Scholar 

  27. P. Banerjee, et al., “A MATLAB Compiler For Distributed, Heterogeneous, Reconfigurable Computing Systems,” In Proc. of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM’00), Napa Valley, CA, USA, Apr. 17-19, 2000, pp. 39–48.

    Google Scholar 

  28. M. Weinhardt, and W. Luk, “Pipeline Vectorization,” In IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 20, no. 2. Feb. 2001, pp. 234–233.

    Article  Google Scholar 

  29. Pedro Diniz, and Joonseok Park, “Automatic Synthesis of Data Storage and Control Structures for FPGA-based Computing Engines,” In Proc. of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM’OO), Napa Valley, CA, USA, Apr. 17–19, 2000, pp. 91–100.

    Google Scholar 

  30. Maya Gokhale, and Janice M. Stone, “Napa Compiling for a Hybrid/FPGA Architecture,” In Proc. of the IEEE 6 th Symposium on Field-Programmable Custom Computing Machines (FCCM’98), Napa Valley, CA, USA, April 1998, pp. 126–135.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cardoso, J.M.P., Neto, H.C. (2001). Compilation Increasing the Scheduling Scope for Multi-memory-FPGA-Based Custom Computing Machines. In: Brebner, G., Woods, R. (eds) Field-Programmable Logic and Applications. FPL 2001. Lecture Notes in Computer Science, vol 2147. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44687-7_54

Download citation

  • DOI: https://doi.org/10.1007/3-540-44687-7_54

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42499-4

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics