Abstract
Some field programmable gate arrays (FPGAs) can be partially dynamically reconfigurable with heterogeneous resources distributed on the chip. FPGA-based partially dynamically reconfigurable system (FPGA-PDRS) can be used to accelerate computing and improve computing flexibility. However, the traditional design of FPGA-PDRS is based on manual design. Implementing the automation of FPGA-PDRS needs to solve the problems of task modules partitioning, scheduling, and floorplanning on heterogeneous resources. Existing works only partly solve problems for the automation process of FPGA-PDRS or model homogeneous resources for FPGA-PDRS. To better solve the problems in the automation process of FPGA-PDRS and narrow the gap between algorithm and application, in this paper, we propose a complete workflow including three parts: pre-processing to generate the lists of task module candidate shapes according to the resource requirements, exploration process to search the solution of task modules partitioning, scheduling, and floorplanning, and post-optimization to improve the floorplan success rate. Experimental results show that, compared with state-of-the-art work, the pre-processing process can reduce the occupied area of task modules by 6% on average; the proposed complete workflow can improve performance by 9.6%, and reduce communication cost by 14.2% with improving the resources reuse rate of the heterogeneous resources on the chip. Based on the solution generated by the exploration process, the post-optimization process can improve the floorplan success rate by 11%.
- [1] . 2019. A survey of coarse-grained reconfigurable architecture and design: Taxonomy, challenges, and applications. ACM Computing Surveys (CSUR) 52, 6 (2019), 1–39.Google ScholarDigital Library
- [2] . 2017. Reconfigurable hardware accelerators: Opportunities, trends, and challenges. arXiv preprint arXiv:1712.04771 (2017).Google Scholar
- [3] . 2018. FPGA dynamic and partial reconfiguration: A survey of architectures, methods, and applications. ACM Computing Surveys (CSUR) 51, 4 (2018), 1–39.Google ScholarDigital Library
- [4] . 2010. Reconfigurable Computing: The Theory and Practice of FPGA-based Computation. Elsevier.Google ScholarDigital Library
- [5] . 2012. Partial Reconfiguration on FPGAs: Architectures, Tools and Applications. Vol. 153. Springer Science & Business Media.Google ScholarDigital Library
- [6] . 2011. Automated resource-aware floorplanning of reconfigurable areas in partially-reconfigurable FPGA systems. In 2011 21st International Conference on Field Programmable Logic and Applications. IEEE, 532–538.Google ScholarDigital Library
- [7] . 2016. Floorplanning automation for partial-reconfigurable FPGAs via feasible placements generation. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 25, 1 (2016), 151–164.Google ScholarDigital Library
- [8] . 2019. FLORA: Floorplan optimizer for reconfigurable areas in FPGAs. ACM Transactions on Embedded Computing Systems (TECS) 18, 5s (2019), 1–20.Google ScholarDigital Library
- [9] . 2009. Fast unified floorplan topology generation and sizing on heterogeneous FPGAs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 28, 5 (2009), 651–661.Google ScholarDigital Library
- [10] . 2022. Fast search and efficient placement algorithm for reconfigurable tasks on modern heterogeneous FPGAs. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 30, 4 (2022), 474–487.Google ScholarCross Ref
- [11] . 2015. Floorplanning for partially-reconfigurable FPGAs via feasible placements detection. In 2015 IEEE 23rd Annual International Symposium on Field-Programmable Custom Computing Machines. IEEE, 252–255.Google ScholarDigital Library
- [12] . 2016. An automated hardware/software co-design flow for partially reconfigurable FPGAs. In 2016 IEEE Computer Society Annual Symposium on VLSI (ISVLSI). IEEE, 30–35.Google ScholarCross Ref
- [13] . 2021. Automating the design flow under dynamic partial reconfiguration for hardware-software co-design in FPGA SoC. In Proceedings of the 36th Annual ACM Symposium on Applied Computing. 481–490.Google ScholarDigital Library
- [14] . 2010. Placement and floorplanning in dynamically reconfigurable FPGAs. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 3, 4 (2010), 1–34.Google ScholarDigital Library
- [15] . 2006. Multi-layer floorplanning on a sequence of reconfigurable designs. In 2006 International Conference on Field Programmable Logic and Applications. IEEE, 1–8.Google ScholarCross Ref
- [16] . 2000. An integrated temporal partitioning and partial reconfiguration technique for design latency improvement. In Proceedings Design, Automation and Test in Europe Conference and Exhibition 2000 (Cat. No. PR00537). IEEE, 320–325.Google ScholarCross Ref
- [17] . 2009. Minimization of the reconfiguration latency for the mapping of applications on FPGA-based systems. In Proceedings of the 7th IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis. 325–334.Google ScholarDigital Library
- [18] . 2009. Partitioning and scheduling of task graphs on partially dynamically reconfigurable FPGAs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 28, 5 (2009), 662–675.Google ScholarDigital Library
- [19] . 2007. Temporal partitioning data flow graphs for dynamically reconfigurable computing. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 15, 12 (2007), 1351–1361.Google ScholarDigital Library
- [20] . 2015. Scheduling dynamic hard real-time task sets on fully and partially reconfigurable platforms. IEEE Embedded Systems Letters 7, 1 (2015), 23–26.Google ScholarDigital Library
- [21] . 2016. Resource-efficient scheduling for partially-reconfigurable FPGA-based systems. In 2016 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE, 189–197.Google ScholarCross Ref
- [22] . 2020. Partitioning and scheduling with module merging on dynamic partial reconfigurable FPGAs. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 13, 3 (2020), 1–24.Google ScholarDigital Library
- [23] . 2015. Microkernel architecture and hardware abstraction layer of a reliable reconfigurable real-time operating system (R3TOS). ACM Transactions on Reconfigurable Technology and Systems (TRETS) 8, 1 (2015), 1–35.Google ScholarDigital Library
- [24] . 2015. Preemptive hardware multitasking in ReconOS. In Applied Reconfigurable Computing: 11th International Symposium, ARC 2015, Bochum, Germany, April 13-17, 2015, Proceedings 11. Springer, 79–90.Google ScholarCross Ref
- [25] . 2016. A framework for supporting real-time applications on dynamic reconfigurable FPGAs. In 2016 IEEE Real-Time Systems Symposium (RTSS). IEEE, 1–12.Google ScholarCross Ref
- [26] . 2017. Timing-aware FPGA partitioning for real-time applications under dynamic partial reconfiguration. In 2017 NASA/ESA Conference on Adaptive Hardware and Systems (AHS). IEEE, 172–179.Google ScholarCross Ref
- [27] . 2004. Temporal floorplanning using the T-tree formulation. In IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004. IEEE, 300–305.Google Scholar
- [28] . 2007. Temporal floorplanning using the three-dimensional transitive closure subGraph. ACM Transactions on Design Automation of Electronic Systems (TODAES) 12, 4 (2007), 37–es.Google ScholarDigital Library
- [29] . 2015. A multiobjective reconfiguration-aware scheduler for FPGA-based heterogeneous architectures. In 2015 International Conference on ReConFigurable Computing and FPGAs (ReConFig). IEEE, 1–6.Google ScholarCross Ref
- [30] . 2018. Integrated optimization of partitioning, scheduling, and floorplanning for partially dynamically reconfigurable systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 39, 1 (2018), 199–212.Google ScholarDigital Library
- [31] . 2010. Floorplanning for partially reconfigurable FPGAs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 30, 1 (2010), 8–17.Google ScholarDigital Library
- [32] . 2019. VC707 Evaluation Board:User Guide. (2019). https://docs.xilinx.com/v/u/en-US/ug885_VC707_Eval_BdGoogle Scholar
- [33] . 2022. Vivado Design Suite User Guide: Dynamic Function eXchange (UG909). (2022). https://docs.xilinx.com/r/en-US/ug909-vivado-partial-reconfigurationGoogle Scholar
- [34] . 2003. Rectangle-packing-based module placement. In The Best of ICCAD. Springer, 535–548.Google ScholarCross Ref
- [35] . 1982. Computers and Intractability: A Guide to the Theory of NP-Completeness (Michael R. Garey and David S. Johnson). Siam Review 24, 1 (1982), 90.Google ScholarDigital Library
- [36] . 2022. Vivado Design Suite User Guide: Synthesis. http://www.xilinx.comGoogle Scholar
- [37] . 2016. Gurobi optimizer reference manual. (2016). http://www.gurobi.comGoogle Scholar
- [38] . 2008. Fixed-outline floorplanning: Block-position enumeration and a new method for calculating area costs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 27, 5 (2008), 858–871.Google ScholarDigital Library
- [39] . 1996. VLSI module placement based on rectangle-packing by the sequence-pair. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 15, 12 (1996), 1518–1524.Google ScholarDigital Library
- [40] . 1998. TGFF: Task graphs for free. (1998).Google Scholar
- [41] . 2017. ImageNet classification with deep convolutional neural networks. Commun. ACM 60, 6 (2017), 84–90.Google ScholarDigital Library
- [42] . 2014. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556 (2014).Google Scholar
Index Terms
- Task Modules Partitioning, Scheduling and Floorplanning for Partially Dynamically Reconfigurable Systems with Heterogeneous Resources
Recommendations
Floorplanning of Partially Reconfigurable Design on Heterogeneous FPGA (Abstract Only)
FPGA '16: Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate ArraysThe floorplanning problem in FPGA has been a topic of research for more than a decade. Although the floorplanning problem has been thoroughly explored for homogeneous FPGAs, very less work has been done for heterogeneous FPGAs. In this paper, we have ...
Leakage-aware task scheduling for partially dynamically reconfigurable FPGAs
As technology continues to shrink, reducing leakage power of Field-Programmable Gate Arrays (FPGAs) becomes a critical issue for the practical use of FPGAs. In this article, we address the leakage issue of partially dynamically reconfigurable FPGA ...
Congestion-driven floorplanning with module reshaping
ICC'08: Proceedings of the 12th WSEAS international conference on CircuitsIn this paper, we implement a two-stage congestion-driven floorplanner. In first stage, an area-wire length-oriented method using simulated-annealing (SA) with the conception of ant algorithm (SANTA) was introduced and a congestion-driven module ...
Comments