Building Multi-kernel Embedded System on PAC Multi-core Platform

  • Authors:
  • Jing Chen;Chung-Ping Young;Da-Wei Chang;Guan-Ying Huang;Chung-Yuan Ke;Shih-Tun Yen;Tsang-Shuo Kuo

  • Affiliations:
  • -;-;-;-;-;-;-

  • Venue:
  • QSIC '10 Proceedings of the 2010 10th International Conference on Quality Software
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

It is common nowadays that consumer embedded system products are built on platforms with System-On-a-Chip (SOC) in which two or more processor cores, which are not necessarily of the same type, are put into a single chip and form the architecture of Chip-level Multi-Processor (CMP). Although such platform is capable of achieving high performance at relatively low cost, the system architecture of CMP brings new design challenges as well as increased complexity in developing embedded software especially at the level of kernel or operating system software. This paper presents our experience and some preliminary results from the project of building a multi-kernel embedded system platform for application software running in the environment of a newly developed multi-core SOC, namely PAC Duo SOC, which is the latest product from the PAC (short for Parallel Architecture Core) Project initiated by the Industry Technology Research Institute (ITRI) in Taiwan. PAC Duo SOC is a chip-level heterogeneous multi-processor SOC composed of one ARM926 core serving as the general purpose processor (GPP for short) and two ITRI PAC DSP cores serving as the special purpose processors (SPP). We ported Linux operating system to run on the ARM926 processor and ported mC/OS-II real-time kernel to run on one PAC DSP core, leaving the other PAC DSP core with the option, for flexibility, of running either mC/OS-II or a different kernel. In addition, an inter-processor communication (IPC) mechanism is developed which not only takes application-specific requirements into account but also takes advantages of hardware features.