Abstract
This chapter describes the design-flow approach developed in the REFLECT project as presented originally in [1]. Over the course of the project, this design-flow has evolved and has been extended into a fully operational toolchain. We begin by presenting an overview of the underlying aspect-oriented compilation flow followed by an extended description of the design-flow and its toolchain.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
AspectJ [4], a well-known AOP approach for Java, uses pointcut, and advice as operators.
- 2.
They can refer to the entire application, a specific function, all or a specific loop, or even a specific location in the code for which an annotated label in the C code is used.
- 3.
The revision of an aspect might be needed to preserve its coherence as in some cases a transformation might remove elements such a joint points from the application source code representation for which there were references in the original aspect.
- 4.
During the design-flow a join point might be removed by a previous tool’s action or might be different from the original when a previous tool transforms the code.
- 5.
The VHDL generator used in the back-end of CoSy may not support all C constructs.
References
J.M.P. Cardoso, P.C. Diniz, Z. Petrov, K. Bertels, M. Hübner, H. van Someren, F. Gonçalves, J.G. de F. Coutinho, G. Constantinides, B. Olivier, W. Luk, J. Becker, G. Kuzmanov, F. Thoma, L. Braun, M. Kühnle, R. Nane, V.-M. Sima, K. Krátký, J.C. Alves, J.C. Ferreira, in REFLECT: Rendering FPGAs to Multi-Core Embedded Computing. ed. by J.M.P. Cardoso, M. Huebner. Reconfigurable Computing: From FPGAs to Hardware/Software Codesign, 1st edn. (Springer, 2011), pp. 261–289
J.M.P. Cardoso, J.G.F. Coutinho, T. Carvalho, LARA Programming Language Specification, v2.0. REFLECT internal technical report, Sept 2012
G. Kiczales et al., in Aspect Oriented Programming. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP’97), LNCS 1241 (Springer, Finland, 1997)
J. Gradecki, N. Lesiecki, Mastering AspectJ: Aspect-Oriented Programming in Java (Wiley, New York, 2003)
J.G.F. Coutinho, T. Carvalho, S. Durand, J.M.P. Cardoso, The LARA Aspect-IR. REFLECT internal technical report, Mar 2012
S. Vassiliadis, S. Wong, G. Gaydadjiev, K. Bertels, G. Kuzmanov, E.M. Panainte, The molen polymorphic processor. IEEE Trans. Comput. 53(11), 1363–1375 (2004)
Xilinx Inc., ML510 Embedded Development User Guide, UG356 (v1.2), 16 June, 2011
W. Luk, J.G.F. Coutinho, T. Todman, Y. Lam, W. Osborne, K. Susanto, Q. Liu, W.S. Wong, in A high-level compilation toolchain for heterogeneous systems. IEEE International System-on-Chip (SOC) Conference (SOCC’09), Sept. 2009
ACE CoSy® Compiler development system. http://www.ace.nl/compiler/cosy.html [online]
R. Nane, V.M. Sima, B. Olivier, R. Meeuws, Y. Yankova, K.L.M. Bertels, in DWARV 2.0: A CoSy-based C-to-VHDL Hardware Compiler. in Proceedings of the 22nd International Conference on Field Programmable Logic and Applications (FPL’2012). (Oslo, Norway, 2012)
ACE—Associated Compiler Experts bv., “CoSy CCMIR Definition,” Ref. CoSy-8002-ccmir, 2008
Calypto Design Systems Inc. Catapult-C® High-Level Synthesis—Blue Book, 2011
Xilinx Inc., All Programmable Technologies from Xilinx Inc. http://www.xilinx.com
Rhino, Mozilla developer network and individual contributors. https://developer.mozilla.org/en-US/docs/Rhino [online]
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer Science+Business Media New York
About this chapter
Cite this chapter
Cardoso, J.M.P. et al. (2013). The REFLECT Design-Flow. In: Cardoso, J., Diniz, P., de Figueiredo Coutinho, J., Petrov, Z. (eds) Compilation and Synthesis for Embedded Reconfigurable Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-4894-5_2
Download citation
DOI: https://doi.org/10.1007/978-1-4614-4894-5_2
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-4893-8
Online ISBN: 978-1-4614-4894-5
eBook Packages: EngineeringEngineering (R0)