Abstract
As technology advances, new hardware approaches are proposed to speed up software execution. However, every new added hardware feature must not change the underlying instruction set architecture (ISA), in order to avoid adaptation or recompilation of existing code. As binary translation allows the execution of binary codes of already compiled applications on different architectures, it opens new possibilities for designers, previously tied to a specific ISA and all its legacy hardware issues. The problem with binary translation is its inherent performance penalty: it will always take more cycles than the simple execution on the native machine. To address that, we propose a new mechanism based on a dynamic two-level binary translation system. While the first level is responsible for the BT de facto (in our first implemented case study, X86 to MIPS translations), the second level optimizes the already translated instructions to be executed on a dynamically adaptable reconfigurable architecture. This way, both software portability and performance are maintained.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Kim, N.S., Austin, T., Blaauw, D., Mudge, T., Flautner, K., Hu, J.S., Irwin, M.J., Kan-demir, M., Narayanan, V.: Leakage current: Moore’s law meets static power. Computer 36(12), 68–75 (2003)
Mak, J., Mycroft, A.: Limits of parallelism using dynamic data dependence graphs. WODA, Chicago, Illinois, USA (2009)
Sites, R.L., Chernoff, A., Kirk, M.B., Marks, M.P., Robinson, S.G.: Binary translation. Commun. ACM 36(2), 69–81 (1993)
Altman, E.R., Kaeli, D., Sheffer, Y.: Welcome to the opportunities of binary translation. Computer 33(3), 40–45 (2000)
Beck, A.C., Rutzig, M.B., Gaydjiev, G., Carro, L.: Transparent reconfigurable acceleration for heterogeneous embedded applications. In: Proceedings of DATE, pp. 1208–1213. ACM, New York (2008)
Rutzig, M.B., Beck, A.C.S., Carro, L.: Dynamically adapted low power ASIPs. In: Becker, J., Woods, R., Athanas, P., Morgan, F. (eds.) ARC 2009. LNCS, vol. 5453, pp. 110–122. Springer, Heidelberg (2009)
Altman, E.R., Ebcioglu, K., Gschwind, M., Sathaye, S.: Advances and Future Challenges in Binary Translation and Optimization. In: Proceedings of the IEEE Special Issue on Micro-processor Architecture and Compiler Technology (2001)
Rosetta, Apple Inc., http://www.apple.com/rosetta/
Chernoff, A., Herdeg, M., Hookway, R., Reeve, C., Rubin, N., Tye, T., Yadavalli, S.B., Yates, J.: FX!32: A Profile-Directed Binary Translator. IEEE Micro, 56–64 (1998)
Hookway, R.J., Herdeg, M.A.: DIGITAL FX!32: combining emulation and binary transla-tion. Digital Tech. J. 9(1), 3–12 (1997)
Dehnert, J.C., Grant, B.K., Banning, J.P., Johnson, R., Kistler, T., Klaiber, A., Mattson, J.: The Transmeta Code MorphingTM Software: using speculation, recovery, and adaptive re-translation to address real-life challenges. In: Proceedings of CGO, San Francisco, California, pp. 15–24. IEEE Computer Society, Washington, DC (2003)
Hu, W., Wang, J., Gao, X., Chen, Y., Liu, Q., Li, G.: Godson-3: A Scalable Multicore RISC Processor with x86 Emulation. IEEE Micro 29(2), 17–29 (2009)
Gschwind, M., Altman, E., Sathaye, P., Ledak, Appenzeller, D.: Dynamic and Transparent Binary Translation. IEEE Computer 3(33), 54–59 (2000)
Beck Filho, A.C.S., Carro, L.: Dynamic Reconfiguration with Binary Translation: Break-ing the ILP barrier with Software Compatibility. In: Proceedings of 42nd DAC, Anaheim, pp. 732–737. ACM Press, New York (2005)
Beck Filho, A.C.S., Carro, L.: Transparent Acceleration of Data Dependent Instructions for General Purpose Processors. In: Proceedings of 15th VLSI-SOC, Atlanta, pp. 66–71. IEEE, Los Alamitos (2007)
Or-Bach, Z.: Panel: (when) will FPGAs kill ASICs? In: 38th DAC (2001)
Guthaus, M.R., Ringenberg, J.S., Ernst, D., Austin, T.M., Mudge, T., Brown, R.B.: MiBench: A free, commercially representative embedded benchmark suite. In: Proceedings of WWC, pp. 3–14. IEEE Computer Society, Washington, DC (2001)
Magnusson, P.S., Christensson, M., Eskilson, et al.: Simics: A Full System Simulation Platform. Computer 35(2), 50–58 (2002)
Leonardo Spectrum, http://www.mentor.com
Minimips VHDL, http://www.opencores.org
Goldstein, S.C., Schmit, H., Budiu, M., Cadambi, S., Moe, M., Taylor, R.R.: Piperench: A reconfigurable architecture and compiler. Computer 33(4), 70–77 (2000)
Clark, N., Kudlur, M., Park, H., Mahlke, S., Flautner, K.: Application-Specific Processing on a General-Purpose Core via Transparent Instruction Set Customization. In: MICRO-37, pp. 30–40 (2004)
Bellard, F.: QEMU, a Fast and Portable Dynamic Translator. In: USENIX 2005 Annual Technical Conference, FREENIX Track (2005)
Yeager, K.C.: The Mips R10000 superscalar microprocessor. IEEE Micro 16(2), 28–41 (1996)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Junior, J.F., Rutzig, M.B., Beck, A.C.S., Carro, L. (2011). Towards an Adaptable Multiple-ISA Reconfigurable Processor. In: Koch, A., Krishnamurthy, R., McAllister, J., Woods, R., El-Ghazawi, T. (eds) Reconfigurable Computing: Architectures, Tools and Applications. ARC 2011. Lecture Notes in Computer Science, vol 6578. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19475-7_18
Download citation
DOI: https://doi.org/10.1007/978-3-642-19475-7_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-19474-0
Online ISBN: 978-3-642-19475-7
eBook Packages: Computer ScienceComputer Science (R0)