Font Size: a A A

Research On Embedded Software Key Issues Of Heterogeneous Multi-core Processor

Posted on:2012-02-02Degree:DoctorType:Dissertation
Country:ChinaCandidate:J C JiangFull Text:PDF
GTID:1118330362454423Subject:Instrument Science and Technology
Abstract/Summary:PDF Full Text Request
In the application of the heterogeneous multicore processor (HMP), how to make full use of the heterogeneous multi-core processor and how to quickly transfer and develop the application programs in multi-core processor are the most important issues. The solving methods of these problems focus on the researches of some key software techniques, such as multi-core operating system (OS), application programs, and so on.Since different applications have different requirements for power, efficient, real-time, etc, OS is needed to manage tasks, such as scheduling, communication, synchronization, to utilize processor fully. So, the architecture of OS, the scheduling algorithm, the communication and synchronization mechanism, must be designed according to the characteristics of HMP. However, owing to the difference on architecture and communication mechanism, the traditional multiprocessors OS and distributed OS are not suitable to the HMP, especially in the embedded system application.This thesis studies these key problems based on the research of the characteristics of HMP in embedded system area, including the OS architecture, the communication and synchronic mechanism, the task partitioning, the task static scheduling and the dynamic scheduling. The main contributions of the thesis are as follows:1. OS architectureAim at the executing efficiency and real-time scheduling problems that can not be solved by the distributing structure and master-slave mode architecture OS of multi-processors and homogeneous multicore processor, a new multi-master mode OS architecture for HMP is proposed. In this architecture, because of the introduction of the multi-master mode of communication bus and the adoption of the symmetric structure and the modularization method in OS model design, each core could be as the master core in multi-core processor to manage tasks, resources, and so on. Meanwhile, this OS architecture can solve the bottleneck problem that the master-slave architecture can not do well because of the increasing slave number in single master OS. This model can be configured flexibly based on the requirements of application, and decrease the OS implement difficulty. 2. Task partitionIn multi-core processor, task scheduling is strictly related with the task attribute, the task granularity, the relations between tasks and other factors. The task partition is a multi-goals optimization problem. The key issue of task partition is how to partition tasks based on different application to make system executing efficiently. Some factors, such as scheduling cost, granularity, coupling cost and load balancing, need to be taken into account. This paper firstly classify the tasks according to task attribute and system efficiency, including coupling cost, scheduling cost, and then presents one task partitioning algorithm based on cohesion and coupling of modules. This algorithm can achieve a good partitioning result, improve the task scheduling and executing efficiently through parameters matching.3. Static task schedulingIn the HMP, tasks have the requirements of min-max complement time, load balance, lowest power cost, and so on. The global goals and the local targets are nomal mutually exclusive.The task allocation and scheduling is a multi-goals combinatorial optimization issue, and is proved a NP-hard problem. Through researching the task scheduling and assignation, this thesis puts forward a sufferage discrete particle swarm optimization (SDPSO) independent task static scheduling algorithm based on Sufferage and DPSO, which can improve the search efficiency and precision of DPSO.In the practical application, there are coupling relations between tasks, and the independent task static scheduling algorithm can not settle well for the dependent tasks. So this paper modifies the SDPSO algorithm based on coupling attribute to make it suitable for the dependent tasks.4. Dynamic task schedulingSince there are a few homogeneous cores in HMP, dynamic scheduling is required among homogeneous cores except for static scheduling. The main algorithms are based on task duplication and list scheduling, and the task duplication algorithms is not suitable for embedded real-time system because of the requirement for large memory space. Therefore, this paper presents a min-max key point time (MMKPT) algorithm based on dynamic list scheduling algorithm, in which the ready task and kernel are selected according to the synchronization point executing time and the coupling relation among tasks to meet with the real-time performance requirement of the embedded system. The research results of above key issues can provide some help and references for the HMP OS design and development, and advance the HMP to be applied more and more widely.
Keywords/Search Tags:Heterogeneous Multi-core Processor, Operating System Architecture, Task Partition, Static Scheduling, Dynamic Scheduling
PDF Full Text Request
Related items