A retargetable parallel-programming framework for MPSoC
- 25 July 2008
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Design Automation of Electronic Systems
- Vol. 13 (3), 1-18
- https://doi.org/10.1145/1367045.1367048
Abstract
As more processing elements are integrated in a single chip, embedded software design becomes more challenging: It becomes a parallel programming for nontrivial heterogeneous multiprocessors with diverse communication architectures, and design constraints such as hardware cost, power, and timeliness. In the current practice of parallel programming with MPI or OpenMP, the programmer should manually optimize the parallel code for each target architecture and for the design constraints. Thus, the design-space exploration of MPSoC (multiprocessor systems-on-chip) costs become prohibitively large as software development overhead increases drastically. To solve this problem, we develop a parallel-programming framework based on a novel programming model called common intermediate code (CIC). In a CIC, functional parallelism and data parallelism of application tasks are specified independently of the target architecture and design constraints. Then, the CIC translator translates the CIC into the final parallel code, considering the target architecture and design constraints to make the CIC retargetable. Experiments with preliminary examples, including the H.263 decoder, show that the proposed parallel-programming framework increases the design productivity of MPSoC software significantly.Keywords
Funding Information
- Ministry of Education, Science and Technology (R0A-2008-000-20110-0)
- Korea Science and Engineering Foundation (R17-2007-086-01001-0)
This publication has 10 references indexed in Scilit:
- Model-based Programming Environment of Embedded Software for MPSoCPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2007
- Effective OpenMP Implementation and Translation For Multiprocessor System-On-Chip without Using OSPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2007
- Developing Applications Using Model-Driven Design EnvironmentsComputer, 2006
- Programming models and HW-SW interfaces abstraction for multi-processor SoCPublished by Association for Computing Machinery (ACM) ,2006
- Overview of the MPSoC design challengePublished by Association for Computing Machinery (ACM) ,2006
- An RTOS API Translator for Model-Driven Embedded Software DevelopmentPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- Hardware-Software Codesign of Multimedia Embedded Systems: the PeaCEPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2006
- Design and programming of embedded multiprocessorsPublished by Association for Computing Machinery (ACM) ,2004
- Parallel programming models for a multi-processor SoC platform applied to high-speed traffic managementPublished by Association for Computing Machinery (ACM) ,2004
- Compiling global name-space parallel loops for distributed executionIEEE Transactions on Parallel and Distributed Systems, 1991