Font Size: a A A

Research On Resources Management Of Operating Systems For Dynamic Reconfigurable Platforms

Posted on:2015-02-18Degree:DoctorType:Dissertation
Country:ChinaCandidate:J N ZhangFull Text:PDF
GTID:1268330428484387Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the rapid development of integrated circuit technology, system on chip with multiple general purpose processors and accelerators is widely used. Meanwhile, the maturity of reconfigurable technology makes it possible to build a complete reconfigurable system on a single chip. However, due to the diverse and variable computing resources on heterogeneous reconfigurable platforms, it is posing significant challenges for task scheduling and resource management in the operating system design and implementation.This dissertation focuses on the key techniques of resources management of operating systems for dynamic reconfigurable platforms. The study mainly includes the following aspects:(1) Reconfigurable hardware platform and operating system architectureReconfigurable platforms have some common characteristics, such as integrating reconfigurable FPGA resources, accelerating the execution of programs via IP cores on FPGA, and supporting static or dynamic reconfiguration. Based on the characteristics of reconfigurable platforms, this dissertation proposes the design specifications of the hardware platform, including IP core design specifications, standardized communication between heterogeneous computing units. Through specifications that satisfy the hardware platform, this paper illustrates the hierarchical model of the operating system for reconfigurable platforms, and establishes a unified task model, resource model and driver model. On this basis, we propose task scheduling algorithms and resource management algorithms using service-oriented concepts.(2) Task scheduling and resource management of operating systems for reconfigurable platforms.The tasks of reconfigurable platforms include both hardware tasks and software tasks. Except for general purpose processors, peripherals, memory, the resources of reconfigurable platforms also include reconfigurable logic resources. Based on the characteristics of tasks and resources of reconfigurable platforms, we use operating systems to manage the hardware tasks and the reconfigurable resources. Hardware function library and custom software libraries are integrated in the system to facilitate task scheduling and resource management.Regarding dynamic global reconfiguration, we design and implement a variable-window based task scheduling algorithm and resource management algorithm in which task scheduling and resource management are separated. Task scheduling algorithm and resource management algorithm communicate by sharing global information of the system.Regarding dynamic partial reconfiguration, we design a separate-window based task scheduling algorithm and resource management algorithm in which task scheduling algorithm and resource management algorithm are tightly coupled. The algorithms could significantly shorten the processor time for scheduling and resource management and will guarantee that all reconfiguration requests will surely get a response. Compared with variable-window based task scheduling algorithm and resource management algorithm, separate-window based algorithms could achieve better resource utilization without additional overhead.(3) Task-level automatic parallelization for reconfigurable platformsThe growing computing resources integrated within heterogeneous multicore platform are posing a great challenge to effectively utilize the parallel computing resources. The effect of "Programming wall" problem is becoming more and more serious. In order to deal with these problems, firstly, we extend the task level Tomasulo algorithm to a more general situation, and then we implement the algorithm via hardware circuits. Both the correctness and efficiency of the hardware module are tested. The hardware Tomasulo cooperates with the software scheduler of operating system in following ways:The software scheduler is responsible for resolving task-level control hazards, then the task sequence is sent to the hardware scheduler, which detects the task-level RAW hazard and eliminates task-level WAW hazards and WAR hazards. As a result, tasks can run in parallel automatically.
Keywords/Search Tags:Reconfigurable platforms, Operating systems, Task scheduling, Resource management, Programming model, Task parallelization
PDF Full Text Request
Related items