Skip to main content

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

Included in the following conference series:

  • 1355 Accesses

Abstract

In this paper we present the “fly” hardware compiler for rapid system prototyping research. Fly takes a C-like program as input and produces a synthesizable VHDL description of a one-hot state machine and the associated data path elements as output. Furthermore, it is tightly integrated with the hardware design environment and implementation platform, and is able to hide issues associated with these tools from the user. Unlike previous tools, fly encourages modification of the compiler for research in rapid system prototyping and code generation, and the full source code to the compiler is presented in the paper. Case studies involving the implementation of an FPGA based greatest common divisor (GCD) coprocessor as well as the extension of the basic fly compiler to solve a differential equation using floating point arithmetic are presented.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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.

Similar content being viewed by others

References

  1. Page, I.: Constructing hardware-software systems from a single description. Journal of VLSI Signal Processing12 (1996) 87–107

    Article  MathSciNet  Google Scholar 

  2. Luk, W., McKeever, S.: Pebble: a language for parametrised and reconfigurable hardware design. In: Field-Programmable Logic and Applications. Volume LNCS 1482., Springer (1998) 9–18

    Chapter  Google Scholar 

  3. Wirth, N.: Hardware compilation: Translating programs into circuits. IEEE Computer 31 (1998) 25–31

    Google Scholar 

  4. Brunvand, E.: Translating Concurrent Communicating Programs into Asynchronous Circuits. Carnegie Mellon University, Ph.D thesis (http://www.cs.utah.edu/?elb/diss.html) (1991)

  5. Wall, L., Christianson, T., Orwant, J.: Programming Perl. 3rd edn. O’Reilly (2000)

    Google Scholar 

  6. Conway, D.: Parse::RecDescent Perl module. In: http://www.cpan.org/modules/by-module/Parse/DCONWAY/Parse-RecDescent-1.80.tar.gz. (2001)

  7. Leong, P., Leong, M., Cheung, O., Tung, T., Kwok, C., Wong, M., Lee, K.: Pilchard—a reconfigurable computing platform with memory slot interface. In: Proceedings of the IEEE Symposium on FCCM. (2001)

    Google Scholar 

  8. Jaenicke, A., Luk, W.: Parameterised floating-point arithmetic on FPGAs. In: Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing. (2001) 897–900

    Google Scholar 

  9. Ho, C., Leong, M., Leong, P., Becker, J., Glesner, M.: Rapid prototyping of fpga based floating point dsp systems. In: Proceedings of the 13th IEEE Workshop on Rapid System Prototyping (to appear). (2002)

    Google Scholar 

  10. Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantitative Approach 2nd Edition. Morgan Kaufmann (1999)

    Google Scholar 

  11. Mathews, J., Fink, K.: Numerical Methods Using MATLAB. 3rd edn. Prentice Hall (1999)

    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

Ho, C.H. et al. (2002). Fly — A Modifiable Hardware Compiler. 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_40

Download citation

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

  • 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