DocumentCode :
70871
Title :
Architecture Support for Task Out-of-Order Execution in MPSoCs
Author :
Chao Wang ; Xi Li ; Junneng Zhang ; Peng Chen ; Yunji Chen ; Xuehai Zhou ; Cheung, Ray C. C.
Author_Institution :
Dept. of Comput. Sci., Univ. of Sci. & Technol. of China, Hefei, China
Volume :
64
Issue :
5
fYear :
2015
fDate :
May 1 2015
Firstpage :
1296
Lastpage :
1310
Abstract :
Multi-processor system on chip (MPSoC) has been widely applied in embedded systems in the past decades. However, it has posed great challenges to efficiently design and implement a rapid prototype for diverse applications due to heterogeneous instruction set architectures (ISA), programming interfaces and software tool chains. In order to solve the problem, this paper proposes a novel high level architecture support for automatic out-of-order (OoO) task execution on FPGA based heterogeneous MPSoCs. The architecture support is composed of a hierarchical middleware with an automatic task level OoO parallel execution engine. Incorporated with a hierarchical OoO layer model, the middleware is able to identify the parallel regions and generate the sources codes automatically. Besides, a runtime middleware Task-Scoreboarding analyzes the inter-task data dependencies and automatically schedules and dispatches the tasks with parameter renaming techniques. The middleware has been verified by the prototype built on FPGA platform. Examples and a JPEG case study demonstrate that our model can largely ease the burden of programmers as well as uncover the task level parallelism.
Keywords :
application program interfaces; embedded systems; field programmable gate arrays; instruction sets; middleware; multiprocessing systems; parallel processing; scheduling; software tools; source code (software); system-on-chip; FPGA based heterogeneous MPSoC; ISA; OoO task execution; automatic out-of-order task execution; automatic task level OoO parallel execution engine; embedded systems; heterogeneous instruction set architectures; hierarchical OoO layer model; hierarchical middleware; high level architecture support support; intertask data dependency analysis; multiprocessor system on chip; parallel regions; parameter renaming techniques; programming interfaces; runtime middleware task-scoreboarding; software tool chains; source code generation; task dispatching; task level parallelism; task scheduling; Computational modeling; Computer architecture; Field programmable gate arrays; Hardware; IP networks; Middleware; Program processors; FPGA; MPSoC; Middleware; architecture support; data dependencies; out-of-order execution;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/TC.2014.2315628
Filename :
6785969
Link To Document :
بازگشت