An efficient algorithm for finding empty space for online FPGA placement

M Handa, R Vemuri - Proceedings of the 41st annual Design …, 2004 - dl.acm.org
M Handa, R Vemuri
Proceedings of the 41st annual Design Automation Conference, 2004dl.acm.org
A fast and efficient algorithm for finding empty area is necessary for online placement, task
relocation and defragmentation on a partially reconfigurable FPGA. We present an algorithm
that finds empty area as a list of overlapping maximal rectangles. Using an innovative
representation of the FPGA, we are able to predict possible locations of the maximal empty
rectangles. Worst-case time complexity of our algorithm is O (xy) where x is the number of
columns, y is the number of rows and xy is the total number of cells on the FPGA …
A fast and efficient algorithm for finding empty area is necessary for online placement, task relocation and defragmentation on a partially reconfigurable FPGA. We present an algorithm that finds empty area as a list of overlapping maximal rectangles. Using an innovative representation of the FPGA, we are able to predict possible locations of the maximal empty rectangles. Worst-case time complexity of our algorithm is O(xy) where x is the number of columns, y is the number of rows and x.y is the total number of cells on the FPGA. Experiments show that, in practice, our algorithm needs to scan less than 15% of the FPGA cells to make a list of all maximal empty rectangles.
ACM Digital Library