Run-Time Services for Hybrid CPU/FPGA Systems on Chip
Citations Over TimeTop 10% of 2006 papers
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
Related Papers
- → Fairness and Throughput in Switch on Event Multithreading(2006)56 cited
- → Fairness enforcement in switch on event multithreading(2007)36 cited
- → A Novel Thread Partitioning Approach Based on Machine Learning for Speculative Multithreading(2013)13 cited
- → Evaluation of a speculative multithreading compiler by characterizing program dependences(2005)
- → Enhanced interleaved multithreaded multiprocessors and their performance analysis(2004)