  Floorplanning problem has been extensively explored for homogeneous FPGAs.
Most modern FPGAs consist of heterogeneous resources in the form of
configurable logic blocks, DSP blocks, BRAMs and more. Very little work has
been done for heterogeneous FPGAs. In addition, features like partial
reconfigurability allow on-the-fly changes to the executable design that can
result in enhanced performance and very efficient utilization of resources. In
this paper, we have designed a floorplanner for Partially Reconfigurable (PR)
designs in FPGA that smartly decides one of the three proposed resource
allocation schemes to floorplan a particular type of reconfigurable region. We
also propose a White Space Detection algorithm for efficient management of
white space inside an FPGA in order to reduce the area and the wire length. The
floorplanner is demonstrated on Xilinx Virtex 5 and Artix 7 FPGA architectures
and can be easily integrated with existing vendor-supplied Place and Route
tools. The main objective of the floorplanner is to reduce the wire length,
minimize wasted resources and the area. The performance of our floorplanner is
evaluated using MCNC benchmarks. We have compared our proposed floorplanner
with other previously published results reported in the literature. We observe
a substantial improvement in the overall wire length as well as the execution
time. Also, the floorplanner was integrated with vendor supplied place and
route tools (Xilinx Vivado) to automate the floorplanning flow. The automation
process was tested on a partially reconfigurable median filter used in image
processing applications.
