CAP-OS: Operating system for runtime scheduling, task mapping and resource management on reconfigurable multiprocessor architectures

Operating systems traditionally handle the task scheduling of one or more application instances on a processor like hardware architecture. Novel runtime adaptive hardware exploits the dynamic reconfiguration on FPGAs, where hardware blocks are generated, started and terminated. This is similar to software tasks in well established operating system approaches. The hardware counterparts to the software tasks have to be transferred to the reconfigurable hardware via a configuration access port. This port enables the allocation of hardware blocks on the FPGA. Current reconfigurable hardware, like e.g. Xilinx Virtex 5 provide two internal configuration access ports (ICAPs), where only one of these ports can be accessed at one point of time. In e.g. a multiprocessor system on an FPGA, it can happen that multiple instances try to access these ports simultaneously. To prevent conflicts, the access to these ports as well as the hardware resource management needs to be controlled by a special purpose operating system running on an embedded processor. This special purpose operating system, called CAPOS (Configuration Access Port-Operating System), which will be presented in this paper, supports the clients using the configuration port with the service of priority-based access scheduling, hardware task mapping and resource management.

[1]  Florian Dittmann,et al.  Hard Real-Time Reconfiguration Port Scheduling , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[2]  Marco Platzner,et al.  ReconOS: An RTOS Supporting Hard-and Software Threads , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[3]  Jürgen Becker,et al.  Runtime adaptive multi-processor system-on-chip: RAMPSoC , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[4]  Jürgen Becker,et al.  New dimensions for multiprocessor architectures: On demand heterogeneity, infrastructure and performance through reconfigurability — the RAMPSoC approach , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[5]  Lars Braun,et al.  Data reallocation by exploiting FPGA configuration mechanisms , 2008, ARC.

[6]  Klaus H. Ecker,et al.  Scheduling Computer and Manufacturing Processes , 2001 .

[7]  Jürgen Becker,et al.  On-Demand FPGA Run-Time System for Dynamical Reconfiguration with Adaptive Priorities , 2004, FPL.

[8]  Bin Zhang,et al.  A multi-platform controller allowing for maximum Dynamic Partial Reconfiguration throughput , 2008, 2008 International Conference on Field Programmable Logic and Applications.