2021 28th International Conference on Mixed Design of Integrated Circuits and System | 2021

Tree-Based Hardware Recursion for Divide-and-Conquer Algorithms

 
 

Abstract


Recursion is a very efficient abstraction that can be found in definitions of many algorithms. However, recursion can be difficult to implement in hardware and as a result is not supported by the majority of high-level synthesis tools (HLS). This work introduces a new framework for implementing recursive functions in hardware, which we call TreeRecur. TreeRecur uses trees to represent the branching recursive function calls of divide-and-conquer algorithms, which makes it possible to take advantage of their procedure-level parallelism. To allow for design flexibility, TreeRecur executes algorithms using a configurable number of independent function processors. These processors are generated using HLS design flow, making it easy to implement a variety of different algorithms. Functionality of our framework was tested on a field programmable gate array (FPGA) using two simple algorithms and compared against software implementations of the same algorithms. Performance results were collected in terms of execution speed and energy consumption. The execution speeds of TreeRecur are shown to be comparable to software programs when differences in clock speed are accounted for and its energy consumption is up to 11 times better than the software solution’s.

Volume None
Pages 147-152
DOI 10.23919/MIXDES52406.2021.9497597
Language English
Journal 2021 28th International Conference on Mixed Design of Integrated Circuits and System

Full Text