High-Level Development, Modeling and Automatic Generation of Hardware-Dependent Software
With the increasing software content in modern embedded systems, software development clearly dominates the design cost. The development of Hardware-dependent Software (HdS) is especially challenging due to its tight coupling with the underlying hardware. Therefore, automatic generation of all embedded software including the HdS is highly desirable to meet today’s shortened time-to-market demands.
In this chapter, we describe a system-level design approach that offers a seamless solution for generating embedded software, starting from an abstract specification and going to an implementation. In our high-level development environment, the application is developed in a platform-agnostic format that hides most implementation detail. The target platform and the mapping of the application to the platform are described separately. A system compiler then automatically generates a system model at the transaction level for performance analysis and development. The same system model later serves as an input to a software generation process, which generates the final binaries for all processors in the system. These binaries include the application, device drivers, and operating system code.
Using a design flow with automatic software generation offers significant productivity gains. At the same time, it allows the designer to focus on the algorithms without being burdened by implementation-level detail.
KeywordsSystem-level Design Development Environment Firmware Software Generation
Unable to display preview. Download preview PDF.
- [AMBA]Advanced RISC Machines Ltd (ARM). AMBA Specification (Rev. 2.0), ARM IHI 0011A. Google Scholar
- [ARM7]Advanced RISC Machines Ltd. (ARM). ARM7TDMI (Rev. 4) Technical Reference Manual, 2001. Google Scholar
- [BCG+97]Felice Balarin, Massimiliano Chiodo, Paolo Giusto, Harry Hsieh, Attila Jurecska, Luciano Lavagno, Claudio Passerone, Alberto Sangiovanni-Vincentelli, Ellen Sentovich, Kei Suzuki, and Bassam Tabbara. Hardware-Software Co-Design of Embedded Systems: The POLIS Approach. Kluwer Academic, Dordrecht, 1997. MATHGoogle Scholar
- [CG03]Lukai Cai and Daniel Gajski. Transaction level modeling: an overview. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis, Newport Beach, CA, October 2003. Google Scholar
- [CKL+00]Jordi Cortadella, Alex Kondratyev, Luciano Lavagno, Marc Massot, Sandra Moral, Claudio Passerone, Yosinori Watanabe, and Alberto Sangiovanni-Vincentelli. Task generation and compile time scheduling for mixed data-control embedded software. In Proceedings of the Design Automation Conference (DAC), Los Angeles, CA, June 2000. Google Scholar
- [CoWa]CoWare. Virtual Platform Designer. www.coware.com.
- [Dal00]Michael Dales. SWARM 0.44 Documentation. Department of Computer Science, University of Glasgow, November 2000. www.cl.cam.ac.uk/~mwd24/phd/swarm.html.
- [DGP+08]Rainer Dömer, Andreas Gerstlauer, Junyu Peng, Dongwan Shin, Lukai Cai, Haobo Yu, Samar Abdi, and Daniel Gajski. System-on-Chip Environment: A SpecC-based framework for heterogeneous MPSoC design. EURASIP J. Embed. Syst., 2008. Google Scholar
- [ETSI96]European Telecommunication Standards Institute (ETSI). Digital cellular telecommunications system; Enhanced Full Rate (EFR) speech transcoding, 1996. GSM 06.60. Google Scholar
- [GLMS02]Thorsten Grötker, Stan Liao, Grant Martin, and Stuart Swan. System Design with SystemC. Kluwer Academic, Dordrecht, 2002. Google Scholar
- [GYJ01]Lovic Gauthier, Sungjoo Yo, and Ahmed A. Jerraya. Automatic generation and targeting of application-specific operating systems and embedded systems software. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst., 20(11), November 2001. Google Scholar
- [GYNJ01]Patrice Gerin, Sungjoo Yoo, Gabriela Nicolescu, and Ahmed A. Jerraya. Scalable and flexible cosimulation of SoC designs with heterogeneous multi-processor target architectures. In Proceedings of the Asia and South Pacific Design Automation Conference (ASPDAC), Yokohama, Japan, January 2001. Google Scholar
- [GZD+00]Daniel D. Gajski, Jianwen Zhu, Rainer Dömer, Andreas Gerstlauer, and Shuqing Zhao. SpecC: Specification Language and Design Methodology. Kluwer Academic, Dordrecht, 2000. Google Scholar
- [HPSV03]F. Herrera, H. Posadas, P. Sánchez, and E. Villar. Systematic embedded software generation from SystemC. In Proceedings of the Design, Automation and Test in Europe (DATE) Conference, Munich, Germany, March 2003. Google Scholar
- [HYL+06]Sungpack Hong, Sungjoo Yoo, Sheayun Lee, Sangwoo Lee, HyeJeong Nam, Bum-Seok Yoo, Jaehyung Hwang, Donghyun Song, Janghwan Kim, Jeongeun Kim, HoonSang Jin, Kyu-Myung Choi, Jeong-Taek Kong, and SooKwan Eo. Creation and utilization of a virtual platform for embedded software optimization: an industrial case study. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis, Seoul, South Korea, October 2006. Google Scholar
- [ISO94]International Organization for Standardization (ISO). Reference Model of Open System Interconnection (OSI), second edition, 1994. ISO/IEC 7498 Standard. Google Scholar
- [KKW+06]T. Kempf, K. Karuri, S. Wallentowitz, G. Ascheid, R. Leupers, and H. Meyr. A SW Performance estimation framework for early system-level-design using fine-grained instrumentation. In Proceedings of the Design, Automation and Test in Europe (DATE) Conference, Munich, Germany, March 2006. Google Scholar
- [Lab02]Jean J. Labrosse. MicroC/OS-II: The Real-Time Kernel. CMP Books, Gilroy, 2002. Google Scholar
- [NG05]Andre Nacul and Tony Givargis. Lightweight multitasking support for embedded systems using the phantom serializing compiler. In Proceedings of the Design, Automation and Test in Europe (DATE) Conference, Munich, Germany, March 2005. Google Scholar
- [RPZM93]Sebastian Ritz, Matthias Pankert, Vojin Zivojnvic, and Heinrich Meyr. High-level software synthesis for the design of communication systems. IEEE J. Select. Areas Commun., April 1993. Google Scholar
- [SGD07]Gunar Schirner, Andreas Gerstlauer, and Rainer Dömer. Multifaceted modeling of embedded processors for system level design, Abstract. In Proceedings of the Asia and South Pacific Design Automation Conference (ASPDAC), Yokohama, Japan, January 2007. Google Scholar
- [SGD08]Gunar Schirner, Andreas Gerstlauer, and Rainer Dömer. Automatic generation of hardware dependent software for MPSoCs from abstract system specifications. In Proceedings of the Asia and South Pacific Design Automation Conference (ASPDAC), Seoul, Korea, January 2008. Google Scholar
- [YDG04]Haobo Yu, Rainer Dömer, and Daniel Gajski. Embedded software generation from system level design languages. In Proceedings of the Asia and South Pacific Design Automation Conference (ASPDAC), Yokohama, Japan, January 2004. Google Scholar