Title :
Run-Time Services for Hybrid CPU/FPGA Systems on Chip
Author :
Agron, Jason ; Peck, Wesley ; Anderson, Erik ; Andrews, David ; Komp, Ed ; Sass, Ron ; Baijot, Fabrice ; Stevens, Jim
Author_Institution :
Inf. & Telecommun. Technol. Center, Kansas Univ., Lawrence, KS
Abstract :
Modern FPGA devices, which include (multiple) processor core(s) as diffused IP on the silicon die, provide an excellent platform for developing custom multiprocessor systems-on-programmable chip (MPSoPC) architectures. As researchers are investigating new methods for migrating portions of applications into custom hardware circuits, it is also critical to develop new run-time service frameworks to support these capabilities. Hthreads (HybridThreads) is a multithreaded RTOS kernel for hybrid FPGA/CPU systems designed to meet this new growing need. A key capability of hthreads is the migration of thread management, synchronization primitives, and run-time scheduling services for both hardware and software threads into hardware. This paper describes the hthreads scheduler, a key component for controlling both software-resident threads (SW threads) and threads implemented in programmable logic (HW threads). Run-time analysis shows that the hthreads scheduler module helps in reducing unwanted system overhead and jitter when compared to historical software schedulers, while fielding scheduling requests from both hardware and software threads in parallel with application execution. Run time analysis shows the scheduler achieves constant time scheduling for up to 256 active threads with a total of 128 different priority levels, while using uniform APIs for threads requesting OS services from either side of the hardware/software boundary
Keywords :
field programmable gate arrays; multi-threading; multiprocessing systems; operating system kernels; processor scheduling; real-time systems; synchronisation; system-on-chip; API uniformity; HybridThreads; hthreads scheduler; hybrid CPU/FPGA systems on chip; multiprocessor systems-on-programmable chip; multithreaded RTOS kernel; run-time analysis; run-time scheduling; run-time services; synchronization primitives; thread management; Central Processing Unit; Circuits; Field programmable gate arrays; Hardware; Kernel; Multiprocessing systems; Runtime; Silicon; System-on-a-chip; Yarn;
Conference_Titel :
Real-Time Systems Symposium, 2006. RTSS '06. 27th IEEE International
Conference_Location :
Rio de Janeiro
Print_ISBN :
0-7695-2761-2
DOI :
10.1109/RTSS.2006.45