Title :
Two-Level Microprocessor-Accelerator Partitioning
Author :
Sirowy, Scott ; Wu, Yonghui ; Lonardi, Stefano ; Vahid, Frank
Author_Institution :
Dept. of Comput. Sci. & Eng., California Univ., Riverside, CA
Abstract :
The integration of microprocessors and field-programmable gate array (FPGA) fabric on a single chip increases both the utility and necessity of tools that automatically move software functions from the microprocessor to accelerators on the FPGA to improve performance or energy. Such hardware/software partitioning for modern FPGAs involves the problem of partitioning functions among two levels of accelerator groups - tightly-coupled accelerators that have fast single-clock-cycle memory access to the microprocessor´s memory, and loosely-coupled accelerators that access memory through a bridge to avoid slowing the main clock period with their longer critical paths. This new two-level accelerator-partitioning problem was introduced, and a novel optimal dynamic programming algorithm was described to solve the problem. By making use of the size constraint imposed by FPGAs, the algorithm has what is effectively quadratic runtime complexity, running in just a few seconds for examples with up to 25 accelerators, obtaining an average performance improvement of 35% compared to a traditional single-level bus architecture
Keywords :
dynamic programming; field programmable gate arrays; logic design; microprocessor chips; FPGA fabric; hardware-software partitioning; microprocessor-accelerator partitioning; microprocessors-field-programmable gate array integration; optimal dynamic programming algorithm; quadratic runtime complexity; Acceleration; Bridges; Clocks; Dynamic programming; Fabrics; Field programmable gate arrays; Hardware; Microprocessors; Software performance; Software tools;
Conference_Titel :
Design, Automation & Test in Europe Conference & Exhibition, 2007. DATE '07
Conference_Location :
Nice
Print_ISBN :
978-3-9810801-2-4
DOI :
10.1109/DATE.2007.364610