Run-Time Component Relocation in Partially-Reconfigurable FPGAs
Victor Dumitriu, Dennis Marcantonio, Lev Kirischian · 2009
The concept of hardware resource virtualization which was initiated in virtual memory organization has recently expanded towards virtualization of computing resources in partially reconfigurable FPGAs. However, this kind of resource virtualization requires mechanisms for flexible allocation/relocation of components associated with data execution processes. The ability for on-chip component relocation will allow cost efficient multi-task/multi-modal operations in FPGAs by run-time architecture-to-task optimization. On-chip component relocation would also allow hardware fault mitigation and even dynamic self-restoration of FPGA systems. Therefore, the goal of the presented research was to investigate the feasibilityof on-chip component relocation in partially reconfigurable FPGAs. In this proof-of-concept research phase we have analyzed structural requirements of target FPGAs as well as design constraints for the components suitable for on-chiprelocation. As a result, the possibility for run-time relocation of components associated with video-processing applications has been proven. Architectural requirements and component design constraints have been determined. It is shown that the hardware overhead required for performing the relocation procedure is negligible compared to the total amount of FPGA resources. In addition, the component relocation time has been measured according to slot size. It is two orders of magnitude less than the reconfiguration time for the entire target FPGA, which allows quite rapid mode switching or circuit restoration.