Abstract
Modern embedded systems integrate more and more complex functionalities. At the same time, the semiconductor technology advances enable to increase the amount of hardware resources on a chip for the execution. Massively parallel embedded systems specifically deal with the optimized usage of such hardware resources to efficiently execute their functionalities. The design of these systems mainly relies on the following challenging issues: first, how to deal with the parallelism in order to increase the performance; second, how to abstract their implementation details in order to manage their complexity; third, how to refine these abstract representations in order to produce efficient implementations.
This article presents the Gaspard design framework for massively parallel embedded systems as a solution to the preceding issues. Gaspard uses the repetitive Model of Computation (MoC), which offers a powerful expression of the regular parallelism available in both system functionality and architecture. Embedded systems are designed at a high abstraction level with the MARTE (Modeling and Analysis of Real-time and Embedded systems) standard profile, in which our repetitive MoC is described by the so-called Repetitive Structure Modeling (RSM) package. Based on the Model-Driven Engineering (MDE) paradigm, MARTE models are refined towards lower abstraction levels, which make possible the design space exploration. By combining all these capabilities, Gaspard allows the designers to automatically generate code for formal verification, simulation and hardware synthesis from high-level specifications of high-performance embedded systems. Its effectiveness is demonstrated with the design of an embedded system for a multimedia application.
- Alanen, M., Lilius, J., Porres, I., Truscan, D., Oliver, I., and Sandstrom, K. 2006. Design method support for domain specific SoC design. In Proceedings of the 4th Workshop on Model-Based Development of Computer-Based Systems and 3rd International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MBD-MOMPES’06). IEEE Computer Society, Los Alamitos, CA, 25--32. Google Scholar
Digital Library
- Amagbegnon, P., Besnard, L., and Guernic, P. L. 1995. Implementation of the data-flow synchronous language signal. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI’95). ACM Press, New York, 163--173. Google Scholar
Digital Library
- Bakshi, A., Prasanna, V. K., and Ledeczi, A. 2001. Milan: A model based integrated simulation framework for design of embedded systems. SIGPLAN Not. 36, 8, 82--93. Google Scholar
Digital Library
- Balarin, F., Watanabe, Y., Hsieh, H., Lavagno, L., Passerone, C., and Sangiovanni-Vincentelli, A. L. 2003. Metropolis: An integrated electronic system design environment. IEEE Comput. 36, 4, 45--52. Google Scholar
Digital Library
- Bastoul, C. 2004. Code generation in the polyhedral model is easier than you think. In Proceedings of the 13th IEEE International Conference on Parallel Architecture and Compilation Techniques (PACT’04). 7--16. Google Scholar
Digital Library
- Ben Atitallah, A., Kadionik, P., Ghozzi, F., Nouel, P., Masmoudi, N., and Levi, H. 2006. Hw/sw codesign of the h. 263 video coder. In Proceedings of the Canadian Conference on Electrical and Computer Engineering (CCECE’06). 783--787.Google Scholar
- Ben Atitallah, R., Niar, S., Meftali, S., and Dekeyser, J.-L. 2007a. An MPSoC performance estimation framework using transaction level modeling. In Proceedings of the 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. 525--533. Google Scholar
Digital Library
- Ben Atitallah, R., Piel, E., Niar, S., Marquet, P., and Dekeyser, J.-L. 2007b. Multilevel MPSoC simulation using an MDE approach. In Proceedings of the IEEE International SoC Conference (SoCC’07). 197--200.Google Scholar
- Benveniste, A., Caspi, P., Edwards, S., Halbwachs, N., Guernic, P. L., and de Simone, R. 2003. Synchronous languages twelve years later. Proc. IEEE 91, 64--83.Google Scholar
Cross Ref
- Björklund, D. and Lilius, J. 2002. From UML behavioral descriptions to efficient synthesizable VHDL. In Proceedings of the 20th IEEE Norchip Conference.Google Scholar
- Borland. 2007. Operational QVT language. http://www.eclipse.org/m2m/qvto/doc.Google Scholar
- Boulet, P. 2008. Formal semantics of Array-OL, a domain specific language for intensive multidimensional signal processing. INRIA Res. rep. RR-6467, INRIA. March.Google Scholar
- Boulet, P., Marquet, P., Piel, E., and Taillard, J. 2007. Repetitive allocation modeling with MARTE. In Proceedings of the Forum on Specification and Design Languages (FDL’07). 280--285.Google Scholar
- Calvez, J.-P. 1993. Embedded Real-Time Systems. A Specification and Design Methodology. Willey, New York. Google Scholar
Digital Library
- Chevalier, J., de Nanclas, M., Filion, L., Benny, O., Rondonneau, M., Bois, G., and Aboulhamid, E. 2006. A systemc refinement methodology for embedded software. Des. Test Comput. IEEE 23, 2, 148--158. Google Scholar
Digital Library
- Chou, P., Ortega, R., and Borriello, G. 1995. The chinook hardware/software co-synthesis system. In Proceedings of the IEEE International Symposium on System Synthesis. Vol. 0. IEEE Computer Society, Los Alamitos, CA, 22--27. Google Scholar
Digital Library
- Cote, G., Erol, B., Gallant, M., and Kossentini, F. 1998. H.263+: video coding at low bit rates. IEEE Trans. Circ. Syst. Video Technol. 8, 7, 849--866. Google Scholar
Digital Library
- Coyle, F. P. and Thornton, M. A. 2005. From UML to HDL: A model driven architectural approach to hardware-software co-design. In Proceedings of the Information Systems: New Generations Conference (ISNG). 88--93.Google Scholar
- Cuccuru, A., Dekeyser, J.-L., Marquet, P., and Boulet, P. 2005. Towards UML 2 extensions for compact modeling of regular complex topologies. In Proceedings of the ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems (MoDELS/UML’05). 445--459. Google Scholar
Digital Library
- Dekeyser, J.-L., Gamatié, A., Etien, A., Atitallah, R. B., and Boulet, P. 2008. Using the UML profile for MARTE to MPSoC co-design. In Proceedings of the 1st International Conference on Embedded Systems & Critical Applications (ICESCA’’08).Google Scholar
- Demeure, A. and Del Gallo, Y. 1998. An array approach for signal processing design. In Proceedings of Sophia-Antipolis Conference on Micro-Electronics (SAME’98). System-on-Chip Session.Google Scholar
- do Nascimento, F. A. M., Oliveira, M. F. S., and Wagner, F. R. 2007. Modes: Embedded systems design methodology and tools based on mde. In Proceedings of the 4th International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MOMPES’07). IEEE Computer Society, Los Alamitos, CA, 67--76. Google Scholar
Digital Library
- Dömer, R., Gerstlauer, A., Peng, J., Shin, D., Cai, L., Yu, H., Abdi, S., and Gajski, D. D. 2008. System-on-Chip environment: A SpecC-based framework for heterogeneous MPSoC design. EURASIP J. Embed. Syst. 2008, 1--13. Google Scholar
Digital Library
- Gajski, D., Vahid, F., Narayan, S., and Gong, J. 1998. Specsyn: An environment supporting the specify-explorerefine paradigm for hardware/software system design. IEEE Trans. VLSI Syst. 6, 1, 84--100. Google Scholar
Digital Library
- Gamatié, A., Rutten, E., Yu, H., Boulet, P., and Dekeyser, J.-L. 2008. Synchronous modeling and analysis of data intensive applications. EURASIP J. Embed. Syst. Article ID 561863, 22 pages.Google Scholar
- Glitia, C. and Boulet, P. 2008. High level loop transformations for systematic signal processing embedded applications. In Proceedings of the International Symposium on Systems, Architectures, MOdeling, and Simulation (SAMOSVIII). 187--196. Google Scholar
Digital Library
- Glitia, C., Dumont, P., and Boulet, P. 2009. Array-OL with delays, a domain specific specification language for multidimensional intensive signal processing. Multidimen. Syst. Signal Proces. J. Google Scholar
Digital Library
- Grandpierre, T. and Sorel, Y. 2003. From algorithm and architecture specifications to automatic generation of distributed real-time executives: A seamless flow of graphs transformations. In Proceedings of the Formal Methods and Models for Codesign Conference (MEMOCODE’03). IEEE Computer Society, Los Alamitos, CA, 123--. Google Scholar
Digital Library
- Ha, S. 2007. Model-Based programming environment of embedded software for MPSoC. In Proceedings of the Asia and South Pacific Design Automation Conference (ASP-DAC’07). IEEE Computer Society, Los Alamitos, CA, 330--335. Google Scholar
Digital Library
- Ha, S., Kim, S., Lee, C., Yi, Y., Kwon, S., and Joo, Y.-P. 2007. PeaCE: A hardware-software codesign environment for multimedia embedded systems. ACM Trans. Des. Autom. Electron. Syst. 12, 3, 1--25. Google Scholar
Digital Library
- Hasegawa, T. 2004. An introduction to the UML for SoC forum in Japan. In Proceedings of the 1st UML for SoC Workshop at DAC (UML-SoC’04).Google Scholar
- IEEE. 1994. Std 1076-1993 IEEE Standard VHDL Language, Reference Manual - Description. http://standards.ieee.org/reading/ieee/std_public/description/dasc/1076-1993_desc.html.Google Scholar
- International Telecommunication Union (ITU). 2005. Recommendation H.263, video coding for low bit rate communication. http://www.itu.int/rec/T-REC-H.263-200501-I/en.Google Scholar
- Ismail, T. B., Abid, M., and Jerraya, A. 1994. COSMOS: A codesign approach for communicating systems. In Proceedings of the 3rd International Workshop on Hardware/Software Co-Design (CODES’94). IEEE Computer Society Press, Los Alamitos, CA, 17--24. Google Scholar
Digital Library
- Jang, S., Kim, S., Lee, J., Choi, G., and Ra, J. 2000. Hardware-Software co-implementation of a H.263 video codec. IEEE Trans. Consum. Electron. 46, 1, 191--200. Google Scholar
Digital Library
- Kahn, G. 1974. The semantics of a simple language for parallel programming. In Proceedings of the IFIP Congress on Information Processing. J. L. Rosenfeld Ed., IFIP, 471--475.Google Scholar
- Kangas, T., Kukkala, P., Orsila, H., Salminen, E., Hännikäinen, M., Hämäläinen, T. D., Riihimäki, J., and Kuusilinna, K. 2006. UML-Based multiprocessor SoC design framework. ACM Trans. Embed. Comput. Syst. 5, 2, 281--320. Google Scholar
Digital Library
- Keinert, J., Streubühr, M., Schlichter, T., Falk, J., Gladigau, J., Haubelt, C., Teich, J., and Meredith, M. 2009. SystemCoDesigner---An automatic ESL synthesis approach by design space exploration and behavioral synthesis for streaming applications. ACM Trans. Des. Autom. Electron. Syst. 14, 1, 1--23. Google Scholar
Digital Library
- Khronos Group. 2009. OpenCL -- The open standard for parallel programming of heterogeneous systems. http://www.khronos.org/opencl.Google Scholar
- Lanusse, P., Gérard, S., and Terrier, F. 1998. Real-Time modeling with UML : The ACCORD approach. In Proceedings of the International Workshop on UML: Beyond the Notation. 319--335. Google Scholar
Digital Library
- Le Beux, S., Marquet, P., and Dekeyser, J.-L. 2007. A design flow to map parallel applications onto FPGAs. In Proceedings of the 17th IEEE International Conference on Field Programmable Logic and Applications (FPL’07). 605--608.Google Scholar
- Le Beux, S., Marquet, P., and Dekeyser, J.-L. 2008. Model driven engineering benefits for high level synthesis. INRIA Res. rep. 6615, inria.Google Scholar
- Lee, E. A. 2001. Overview of the Ptolemy Project. University of California, Berkeley.Google Scholar
- Lee, E. A. and Messerschmitt, D. G. 1987. Static scheduling of synchronous data flow programs for digital signal processing. IEEE Trans. Comput. 36, 24--35. Google Scholar
Digital Library
- Martin, G., Lavagno, L., and Louis-Guerin, J. 2001. Embedded UML: A merger of real-time UML and co-design. In Proceedings of the 9th International Symposium on Hardware/Software Codesign (CODES’01). 23--28. Google Scholar
Digital Library
- Martin, G. and Salefski, B. 1998. Methodology and technology for design of communications and multimedia products via system-level ip integration. In Proceedings of DATE’98 Designers’ Forum. IEEE Computer Society, Los Alamitos, CA, 11--18.Google Scholar
- Message Passing Interface Forum. 2009. MPI documents. http://www.mpi-forum.org/docs/docs.html.Google Scholar
- Nguyen, K. D., Sun, Z., Thiagarajan, P. S., and Wong, W.-F. 2004. Model-Driven SoC design via executable UML to SystemC. In Proceedings of the 25th IEEE International Real-Time Systems Symposium (RTSS’04). IEEE Computer Society, Los Alamitos, CA, 459--468. Google Scholar
Digital Library
- Nguyen, T., Zakhor, A., and Yelick, K. 2000. Performance analysis of an H.263 video encoder for VIRAM. In Proceedings of the International Conference on Image Processing. 98--101.Google Scholar
- No Magic. 2007. MagicDraw. http://www.magicdraw.com/.Google Scholar
- Object Management Group Inc. 2005. (UML) Profile for schedulability, performance, and time version 1.1. http://www.omg.org/technology/documents/formal/schedulability.htm.Google Scholar
- Object Management Group Inc. 2006. Final adopted OMG SysML specification. http://www.omg.org/cgi-bin/doc?ptc/06-0504.Google Scholar
- Object Management Group. 2007a. A UML profile for MARTE. http://www.omgmarte.org.Google Scholar
- Object Management Group Inc. 2007b. MOF Query/Views/Transformations. http://www.omg.org/docs/ptc/07-07-07.pdf. OMG paper.Google Scholar
- OpenMP Architecture Review Board. 2009. The OpenMP API specification for parallel programming. http://openmp.org.Google Scholar
- Papyrus. 2007. Papyrus UML web site. http://www.papyrusuml.org/.Google Scholar
- Piel, E., Ben Atitallah, R., Marquet, P., Meftali, S., Niar, S., Etien, A., Dekeyser, J.-L., and Boulet, P. 2008a. Gaspard2: From MARTE to SystemC simulation. In Proceedings of the Workshop on Modeling and Analyzis of Real-Time and Embedded Systems (with the MARTE UML profile at DATE’08). 23--28.Google Scholar
- Piel, E., Marquet, P., and Dekeyser, J.-L. 2008b. Generative and Transformational Techniques in Software Engineering II: Revised Papers. Springer-Verlag, Chapter Model transformations for the compilation of multi-processor systems-on-chip, 459--473. Google Scholar
Digital Library
- Pimentel, A. D. 2008. The Artemis workbench for system-level performance evaluation of embedded systems. Int. J. Embed. Syst. 3, 3, 181--196.Google Scholar
Cross Ref
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2005. A UML 2.0 profile for SystemC: Toward high-level SoC design. In Proceedings of the 5th ACM International Conference on Embedded Software (EMSOFT’05). ACM, New York, 138--141. Google Scholar
Digital Library
- Riccobene, E., Scandurra, P., Rosti, A., and Bocchio, S. 2006. A model-driven design environment for embedded systems. In Proceedings of the 43rd Annual Conference on Design Automation (DAC’06). ACM, New York, 915--918. Google Scholar
Digital Library
- Sangiovanni-Vincentelli, A. 2007. Quo vadis, SLD? Reasoning about the trends and challenges of system level design. Proc. IEEE 95, 3, 467--506.Google Scholar
Cross Ref
- Sangiovanni-Vincentelli, A. and Martin, G. 2001. Platform-Based design and software design methodology for embedded systems. IEEE Des. Test Comput. 18, 6, 23--33. Google Scholar
Digital Library
- Schmidt, D. C. 2006. Model-Driven engineering. IEEE Comput. 39, 2, 41--47. Google Scholar
Digital Library
- Selic, B. 1998. Using uml for modeling complex real-time systems. In Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems (LCTES’98). Springer, 250--260. Google Scholar
Digital Library
- Stanford Streaming Supercomputer Project. 2009. Merrimac - Brook page. http://merrimac.stanford.edu/brook.Google Scholar
- Taha, S., Radermacher, A., Gerard, S., and Dekeyser, J.-L. 2007. An open framework for detailed hardware modeling. In Proceedings of the 2nd IEEE International Symposium on Industrial Embedded Systems. 118--125.Google Scholar
- Taillard, J., Guyomarc’h, F., and Dekeyser, J.-L. 2008a. A graphical framework for high performance computing using an MDE approach. In Proceedings of the 16th Euromicro International Conference on Parallel, Distributed and Network-Based Processing. 165--173. Google Scholar
Digital Library
- Taillard, J., Guyomarc’h, F., and Dekeyser, J.-L. 2008b. OpenMP code generation based on an model driven engineering approach. In Proceedings of the High Performance Computing & Simulation Conference (HPCS’’08). 165--173.Google Scholar
- Thies, W., Karczmarek, M., and Amarasinghe, S. 2002. StreamIt: A language for streaming applications. In Proceedings of the 11th International Conference on Compiler Construction (CC’02) (at ETAPS’02). Lecture Notes in Computer Science, vol. 2304/2002. Springer, 49--84. Google Scholar
Digital Library
- Thomas, D. and Moorby, P. 1998. The Verilog Hardware Description Language 4th Ed. Kluwer Academic Publishers. Google Scholar
Digital Library
- Tilera Corporation. 2009. TILE64 processor family. http://www.tilera.com/products/processors.php.Google Scholar
- Wilde, D. K. 1994. The ALPHA language. Tech. rep. 827, IRISA, France.Google Scholar
- Yu, H., Gamatié, A., Rutten, E., and Dekeyser, J.-L. 2008. Embedded Systems Specification and Design Languages, Selected Papers from FDL 2007. Springer, Chapter Model transformations from a data parallel formalism towards synchronous languages, 183--198.Google Scholar
Index Terms
A Model-Driven Design Framework for Massively Parallel Embedded Systems
Recommendations
SystemC/C-based model-driven design for embedded systems
This article summarizes our effort, since 2004 up to the present time, for improving the current industrial Systems-on-Chip and Embedded Systems design by joining the capabilities of the unified modeling language (UML) and SystemC/C programming ...
A Model-Driven Engineering Methodology to Design Parallel and Distributed Embedded Systems
Special Section of IDEA: Integrating Dataflow, Embedded Computing, and ArchitectureIn Model-Driven Engineering system-level approaches, the design of communication protocols and patterns is subject to the design of processing operations (computations) and to their mapping onto execution resources. However, this strategy allows us to ...






Comments