skip to main content
research-article

Platform-based software design flow for heterogeneous MPSoC

Published:01 August 2008Publication History
Skip Abstract Section

Abstract

Current multimedia applications demand complex heterogeneous multiprocessor architectures with specific communication infrastructure in order to achieve the required performances. Programming these architectures usually results in writing separate low-level code for the different processors (DSP, microcontroller), implying late global validation of the overall application with the hardware platform. We propose a platform-based software design flow able to efficiently use the resources of the architecture and allowing easy experimentation of several mappings of the application onto the platform resources. We use a high-level environment to capture both application and architecture initial representations. An executable software stack is generated automatically for each processor from the initial model. The software generation and validation is performed gradually corresponding to different software abstraction levels. Specific software development platforms (abstract models of the architecture) are generated and used to allow debugging of the different software components with explicit hardware-software interaction. We applied this approach on a multimedia platform, involving a high performance DSP and a RISC processor, to explore communication architecture and generate an efficient executable code for a multimedia application. Based on automatic tools, the proposed flow increases productivity and preserves design quality.

References

  1. Balasubramanian, K., Gokhale, A., Karsai, G., Sztipanovits, J., and Neema, S. 2006. Developing applications using model-driven design environments. IEEE Comput. 39, 2, 33--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Culler, D., Singh, J. P., and Gupta, A. 1998. Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufmann Publishing. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. de Kock, E. A. Essink, G., Smits, W. J. M., Van Der Wolf, P., Brunei, J.-Y., Kruijtzer, W. M., Lieverse, P., and Vissers, K. A. 2000. Yapi: Application modeling for signal processing systems. In Proceedings of Design Automation Conference (DAC'00). Los Angeles, CA. 402--405. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Desoli, G. Mateev, N., Duesterwald, E., Faraboschi, P., and Fisher, J. 2002. A new facility for dynamic control of program execution: DELI. In Proceedings of the International Conference on Embedded Software (EMSOFT'02. Grenoble, France. 305--318. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Guerin, X., Popovici, K., Youssef, W., Rousseau, F., and Jerraya, A. 2007. Flexible application software generation for heterogeneous multi-processor system-on-chip. In Proceedings of the International Computer Software and Applications Conference (COMPSAC'07). Beijing, China. 279--286. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Han, S.-I. Guerin, X., Chae, S.-I., and Jerraya, A. 2006. Buffer memory optimization for video codec application modeled in Simulink. In Proceedings of Design Automation Conference (DAC'06). San Francisco, CA. 689--694. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Jerraya, A., Bouchhima, A., and Petrot, F. 2006. Programming models and HW-SW Interfaces abstraction for Multi-Processor SoC. In Proceedings of Design Automation Conference (DAC'06). San Francisco, CA. 280--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Kangas, T. Kukkala, P., Orsila, H., Salminen, E., Hannikainen, M., Hamalainen, T. D., Riihimaki, J., and Kuuslinna, K. 2006. UML-based multiprocessor SoC design framework. ACM Trans. Embed. Comput. Syst. 5, 2, 281--320. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. MAGICV VLIW DSP and DIOPSIS. http://www.atmelroma.it.Google ScholarGoogle Scholar
  10. Magee, D. P. 2005. Matlab Extensions for the development, testing and verification of real-time DSP software. In Proceedings of Design Automation Conference (DAC'05). Anaheim, CA, 603--606. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Mathworks. http://www.mathworks.com/rtw.htm.Google ScholarGoogle Scholar
  12. Meyr, H. 2006. Application specific processors (ASIP): On design and implementation efficiency. In Proceedings of the 13th Workshop on Synthesis and System Integration of Mixed Information Technologies (SASIMI'06). Nagoya, Japan.Google ScholarGoogle Scholar
  13. MODEL DRIVEN ARCHITECTURE. http://www.omg.org/mda/.Google ScholarGoogle Scholar
  14. MPI. http://www-unix.mcs.anl.gov/mpi.Google ScholarGoogle Scholar
  15. Nicolescu, G. 2002. Specification et validation des systemes heterogenes embarques. PhD. Thesis, TIMA Laboratory.Google ScholarGoogle Scholar
  16. NEXPERIA. http://www.nxp.com.Google ScholarGoogle Scholar
  17. NOMADIK. http://www.st.com.Google ScholarGoogle Scholar
  18. Paulin, P. Pilkington, C., Langevin, M., Bensoudane, E., Lyonnard, D., Benny, O., Laviguer, B., Lo, D., Beltrame, G., Gagne, V., and Nicolescu, G. 2006. Parallel programming models for a multi-processor SoC platform applied to networking and multimedia. IEEE Trans. VLSI J. 14, 7, 667--680. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Paolucci, P. S. Jerraya, A., Leupers, R., Thiele, L., and Vicini, P. 2006. SHAPES: A tiled scalable software hardware architecture platform for embedded systems. In Proceedings of the International Conference on Hardware-Software Codesign and System Synthesis (CODES + ISSS'06). Seoul, Korea. 167--172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Popovici, K. Guerin, X., Brisolara, L., and Jerraya, A. 2007a. Mixed hardware-software multilevel modeling and simulation for multithreaded heterogeneous MPSoC. In Proceedings of International Symposium on VLSI-Design Automation and Test. Hsinchu, Taiwan. 1--4.Google ScholarGoogle Scholar
  21. Popovici, K. Guerin, X., Rousseau, F., Paolucci, P. S., and Jerraya, A. 2007b. Efficient software development platforms for multimedia applications at different abstraction levels. In Proceedings of 18th IEEE/IFIP International Workshop on Rapid System Prototyping. Porto Alegre, Brazil. 113--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Rowson, J. A. 1994. Hardware/Software cosimulation. In Proceedings of Design Automation Conference (DAC'94). San Diego, CA, 439--440. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Sangiovanni-Vincetelli, A. and Martin, G. 2001. Platform-based design and software design methodology for embedded systems. IEEE Design Test 18, 6, 23--33. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Sangiovanni-Vincetelli, A. Carloni, L., De Bernardinis, F., and Sgroi, M. 2004. Benefits and challenges for platform-based design. In Proceedings of Design Automation Conference (DAC'04). San Diego, CA. 409--414. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Semeria, L. and Ghosh, A. 2000. Methodology for hardware/software co-verification in C/C++. In Proceedings of the Asia and south Pacific Design Automation Conference (ASPDAC'00). Yokohama, Japan. 405--408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. TI OMAP. http://www.omap.com.Google ScholarGoogle Scholar
  27. Turley, J. 2005. Survey says: Software tools more important than chips. Embed. Syst. Design J.Google ScholarGoogle Scholar
  28. van der Wolf, P., De Kock, E., Henriksson, T., Kruijtzer, W., and Essink, G. 2004. Design and programming of embedded multiprocessors: An interface-centric approach. In Proceedings of the International Conference on Hardware-Software Codesign and System Synthesis (CODES + ISSS'04). Stockholm, Sweden. 206--217. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Wallace, G. K. 1991. The JPEG still picture compression standard. Comm. ACM, Special Issue Digital Multimedia Systems 34, 4, 30--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Wolf, W. 2006. High-Performance Embedded Computing. Morgan Kaufmann Publishing. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Platform-based software design flow for heterogeneous MPSoC

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!