Spatio-Temporal Scheduling for 3D Reconfigurable and Multiprocessor Architecture
Résumé
One of important benefits offered by three-dimensional integrated circuits (3D ICs) is the adap- tation to the heterogeneous systems where different types of components can be fabricated sepa- rately and layers can be implemented with different technologies. But stacking high performance technology for each layer is not sufficient to ensure that applications can exploit the overall per- formances. Indeed, one important challenge consists in defining a high performance management of such platform to guarantee that every execution resource is used as best as possible. This article addresses this challenge and proposes a spatio-temporal scheduling algorithm able to manage the instantiation of tasks on both homogeneous multiprocessor and reconfigurable layers. Our target architecture, based on 3D ICs technology, is then built by stacking an homogenous Chip MultiPro- cessor (CMP) layer above an homogeneous embedded Field-Programmable Gate Array (eFPGA) over through-silicon vias (TSVs) connection. Our algorithm computes the spatio-temporal sche- duling of hardware tasks on the reconfigurable resources by taking into account the communica- tion between tasks and then projects the associated software tasks on the multiprocessors layer. The communications are ensured by shared memory on the CMP layer, and by direct exchanges or shared memory on reconfigurable layer. The spatio-temporal scheduling is defined through an adaptation of the Proportionate-fair (Pfair) algorithm, which is well known to optimally schedule periodic real-time tasks on multiprocessor systems. Compare to the recursive Branch and Bound (BB) algorithm, our proposed algorithm shows up to 14,5% communication cost reduction.