Skip to main content

Jaguar: A Compiler Infrastructure for Java Reconfigurable Computing

  • Conference paper
Embedded Software and Systems (ICESS 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3820))

Included in the following conference series:

  • 1022 Accesses

Abstract

In this paper, we present our compiler infrastructure, called Jaguar for Java reconfigurable computing. The Jaguar compiler translates compiled Java methods, i.e. sequence of bytecodes into Verilog synthesizable code modules with exploiting the maximum operational parallelism within applications. Our compiler infrastructure consists of two major components. One is a compiler to generate synthesizable Verilog codes from Java applications, which performs full compilation passes, such as bytecode parsing, intermediate representation (IR) construction, program analysis, optimization, and code emission. The other component is the Java Virtual Machine (JVM) which provides Java execution environment to the generated Verilog modules. The JVM closely interacts with hardware during the execution through an interrupt method. We discuss the performance issues and code transformation techniques to reduce the interaction overhead in our Java reconfigurable computing environment.

This work was supported by grant No. R01-2005-000-10124-0 from Korea Science and Engineering Foundation in Ministry of Science & Technology.

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

Access this chapter

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. Cardoso, J.M.P., Neto, H.C.: Macro-based hardware compilation of java bytecodes into a dynamic reconfigurable computing system. In: Pocek, K.L., Arnold, J.M. (eds.) Proceedings of the IEEE Workshop on FPGAs for Custom Computing Machines, Napa, CA, pp. 2–11. IEEE Computer Society Press, Los Alamitos (1999)

    Google Scholar 

  2. Maruyama, T., Hoshino, T.: A C to HDL compiler for pipeline processing on FPGAs. In: IEEE Symposium on Field-Programmable Custom Computing Machines, pp. 101–110 (April 2000)

    Google Scholar 

  3. Frigo, J., Gokhale, M., Lavenier, D.: Evaluation of the streams-C C-to-FPGA compiler: An applications perspective. In: International Symposium on Field Programmable Gate Arrays, Monterey, CA, pp. 134–140 (2001)

    Google Scholar 

  4. JOP - Java Optimized Processor., http://www.jopdesign.com/

  5. De Micheli, G., Gupta, R.: Hardware/software co-design. Proceedings of the IEEE 85(3), 349–365 (1997)

    Article  Google Scholar 

  6. Muchnick, S.S.: Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers, Inc., San Francisco (1997)

    Google Scholar 

  7. De Micheli, G.: Synthesis and Optimization of Digital Circuits. McGraw-Hill, New York (1994)

    Google Scholar 

  8. SciMark 2.0, http://math.nist.gov/scimark2/

  9. Bacon, D., Fink, S., Grove, D.: Space and time efficient implementation of the Java object model. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 10–14. Springer, Heidelberg (2002)

    Google Scholar 

  10. Excalibur devices, http://www.arm.com/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Han, Y., Kim, S.W., Kim, C. (2005). Jaguar: A Compiler Infrastructure for Java Reconfigurable Computing. In: Yang, L.T., Zhou, X., Zhao, W., Wu, Z., Zhu, Y., Lin, M. (eds) Embedded Software and Systems. ICESS 2005. Lecture Notes in Computer Science, vol 3820. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11599555_37

Download citation

  • DOI: https://doi.org/10.1007/11599555_37

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30881-2

  • Online ISBN: 978-3-540-32297-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics