skip to main content
research-article

Task Modules Partitioning, Scheduling and Floorplanning for Partially Dynamically Reconfigurable Systems with Heterogeneous Resources

Published:28 October 2023Publication History
Skip Abstract Section

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%.

REFERENCES

  1. [1] Liu Leibo, Zhu Jianfeng, Li Zhaoshi, Lu Yanan, Deng Yangdong, Han Jie, Yin Shouyi, and Wei Shaojun. 2019. A survey of coarse-grained reconfigurable architecture and design: Taxonomy, challenges, and applications. ACM Computing Surveys (CSUR) 52, 6 (2019), 139.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. [2] Wang Chao, Lou Wenqi, Gong Lei, Jin Lihui, Tan Luchao, Hu Yahui, Li Xi, and Zhou Xuehai. 2017. Reconfigurable hardware accelerators: Opportunities, trends, and challenges. arXiv preprint arXiv:1712.04771 (2017).Google ScholarGoogle Scholar
  3. [3] Vipin Kizheppatt and Fahmy Suhaib A.. 2018. FPGA dynamic and partial reconfiguration: A survey of architectures, methods, and applications. ACM Computing Surveys (CSUR) 51, 4 (2018), 139.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. [4] Hauck Scott and DeHon Andre. 2010. Reconfigurable Computing: The Theory and Practice of FPGA-based Computation. Elsevier.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. [5] Koch Dirk. 2012. Partial Reconfiguration on FPGAs: Architectures, Tools and Applications. Vol. 153. Springer Science & Business Media.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] Bolchini Cristiana, Miele Antonio, and Sandionigi Chiara. 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, 532538.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. [7] Rabozzi Marco, Durelli Gianluca Carlo, Miele Antonio, Lillis John, and Santambrogio Marco Domenico. 2016. Floorplanning automation for partial-reconfigurable FPGAs via feasible placements generation. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 25, 1 (2016), 151164.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] Seyoum Biruk B., Biondi Alessandro, and Buttazzo Giorgio C.. 2019. FLORA: Floorplan optimizer for reconfigurable areas in FPGAs. ACM Transactions on Embedded Computing Systems (TECS) 18, 5s (2019), 120.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. [9] Banerjee Pritha, Sur-Kolay Susmita, and Bishnu Arijit. 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), 651661.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. [10] Yao Rui, Zhao Yinhua, Yu Yongchuan, Zhao Yihe, and Zhong Xueyan. 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), 474487.Google ScholarGoogle ScholarCross RefCross Ref
  11. [11] Rabozzi Marco, Miele Antonio, and Santambrogio Marco D.. 2015. Floorplanning for partially-reconfigurable FPGAs via feasible placements detection. In 2015 IEEE 23rd Annual International Symposium on Field-Programmable Custom Computing Machines. IEEE, 252255.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Yousuf Shaon and Gordon-Ross Ann. 2016. An automated hardware/software co-design flow for partially reconfigurable FPGAs. In 2016 IEEE Computer Society Annual Symposium on VLSI (ISVLSI). IEEE, 3035.Google ScholarGoogle ScholarCross RefCross Ref
  13. [13] Seyoum Biruk, Pagani Marco, Biondi Alessandro, and Buttazzo Giorgio. 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. 481490.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. [14] Montone Alessio, Santambrogio Marco D., Sciuto Donatella, and Memik Seda Ogrenci. 2010. Placement and floorplanning in dynamically reconfigurable FPGAs. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 3, 4 (2010), 134.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. [15] Singhal Love and Bozorgzadeh Elaheh. 2006. Multi-layer floorplanning on a sequence of reconfigurable designs. In 2006 International Conference on Field Programmable Logic and Applications. IEEE, 18.Google ScholarGoogle ScholarCross RefCross Ref
  16. [16] Ganesan Satish and Vemuri Ranga. 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, 320325.Google ScholarGoogle ScholarCross RefCross Ref
  17. [17] Rana Vincenzo, Murali Srinivasan, Atienza David, Santambrogio Marco Domenico, Benini Luca, and Sciuto Donatella. 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. 325334.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. [18] Cordone Roberto, Redaelli Francesco, Redaelli Massimo Antonio, Santambrogio Marco Domenico, and Sciuto Donatella. 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), 662675.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] Jiang Yung-Chuan and Wang Jhing-Fa. 2007. Temporal partitioning data flow graphs for dynamically reconfigurable computing. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 15, 12 (2007), 13511361.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. [20] Saha Sangeet, Sarkar Arnab, and Chakrabarti Amlan. 2015. Scheduling dynamic hard real-time task sets on fully and partially reconfigurable platforms. IEEE Embedded Systems Letters 7, 1 (2015), 2326.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. [21] Purgato Andrea, Tantillo Davide, Rabozzi Marco, Sciuto Donatella, and Santambrogio Marco D.. 2016. Resource-efficient scheduling for partially-reconfigurable FPGA-based systems. In 2016 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE, 189197.Google ScholarGoogle ScholarCross RefCross Ref
  22. [22] Tang Qi, Wang Zhe, Guo Biao, Zhu Li-Hua, and Wei Ji-Bo. 2020. Partitioning and scheduling with module merging on dynamic partial reconfigurable FPGAs. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 13, 3 (2020), 124.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. [23] Iturbe Xabier, Benkrid Khaled, Hong Chuan, Ebrahim Ali, Torrego Raul, and Arslan Tughrul. 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), 135.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. [24] Happe Markus, Traber Andreas, and Keller Ariane. 2015. Preemptive hardware multitasking in ReconOS. In Applied Reconfigurable Computing: 11th International Symposium, ARC 2015, Bochum, Germany, April 13-17, 2015, Proceedings 11. Springer, 7990.Google ScholarGoogle ScholarCross RefCross Ref
  25. [25] Biondi Alessandro, Balsini Alessio, Pagani Marco, Rossi Enrico, Marinoni Mauro, and Buttazzo Giorgio. 2016. A framework for supporting real-time applications on dynamic reconfigurable FPGAs. In 2016 IEEE Real-Time Systems Symposium (RTSS). IEEE, 112.Google ScholarGoogle ScholarCross RefCross Ref
  26. [26] Biondi Alessandro and Buttazzo Giorgio. 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, 172179.Google ScholarGoogle ScholarCross RefCross Ref
  27. [27] Yuh Ping-Hung, Yang Chia-Lin, and Chang Yao-Wen. 2004. Temporal floorplanning using the T-tree formulation. In IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004. IEEE, 300305.Google ScholarGoogle Scholar
  28. [28] Yuh Ping-Hung, Yang Chia-Lin, and Chang Yao-Wen. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  29. [29] Deiana Enrico A., Rabozzi Marco, Cattaneo Riccardo, and Santambrogio Marco D.. 2015. A multiobjective reconfiguration-aware scheduler for FPGA-based heterogeneous architectures. In 2015 International Conference on ReConFigurable Computing and FPGAs (ReConFig). IEEE, 16.Google ScholarGoogle ScholarCross RefCross Ref
  30. [30] Chen Song, Huang Jinglei, Xu Xiaodong, Ding Bo, and Xu Qi. 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), 199212.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. [31] Banerjee Pritha, Sangtani Megha, and Sur-Kolay Susmita. 2010. Floorplanning for partially reconfigurable FPGAs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 30, 1 (2010), 817.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. [32] Amd Xilinx. 2019. VC707 Evaluation Board:User Guide. (2019). https://docs.xilinx.com/v/u/en-US/ug885_VC707_Eval_BdGoogle ScholarGoogle Scholar
  33. [33] Amd Xilinx. 2022. Vivado Design Suite User Guide: Dynamic Function eXchange (UG909). (2022). https://docs.xilinx.com/r/en-US/ug909-vivado-partial-reconfigurationGoogle ScholarGoogle Scholar
  34. [34] Murata Hiroshi, Fujiyoshi Kunihiro, Nakatake Shigetoshi, and Kajitani Yoji. 2003. Rectangle-packing-based module placement. In The Best of ICCAD. Springer, 535548.Google ScholarGoogle ScholarCross RefCross Ref
  35. [35] Hartmanis Juris. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. [36] Amd Xilinx. 2022. Vivado Design Suite User Guide: Synthesis. http://www.xilinx.comGoogle ScholarGoogle Scholar
  37. [37] Gurobi Optimization. 2016. Gurobi optimizer reference manual. (2016). http://www.gurobi.comGoogle ScholarGoogle Scholar
  38. [38] Chen Song and Yoshimura Takeshi. 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), 858871.Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. [39] Murata Hiroshi, Fujiyoshi Kunihiro, Nakatake Shigetoshi, and Kajitani Yoji. 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), 15181524.Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. [40] Dick R. P., Rhodes D. L., and Wolf W.. 1998. TGFF: Task graphs for free. (1998).Google ScholarGoogle Scholar
  41. [41] Krizhevsky Alex, Sutskever Ilya, and Hinton Geoffrey E.. 2017. ImageNet classification with deep convolutional neural networks. Commun. ACM 60, 6 (2017), 8490.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. [42] Simonyan Karen and Zisserman Andrew. 2014. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556 (2014).Google ScholarGoogle Scholar

Index Terms

  1. Task Modules Partitioning, Scheduling and Floorplanning for Partially Dynamically Reconfigurable Systems with Heterogeneous Resources

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Transactions on Design Automation of Electronic Systems
      ACM Transactions on Design Automation of Electronic Systems  Volume 28, Issue 6
      November 2023
      404 pages
      ISSN:1084-4309
      EISSN:1557-7309
      DOI:10.1145/3627977
      Issue’s Table of Contents

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 28 October 2023
      • Online AM: 26 September 2023
      • Accepted: 15 September 2023
      • Revised: 21 June 2023
      • Received: 4 April 2023
      Published in todaes Volume 28, Issue 6

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
    • Article Metrics

      • Downloads (Last 12 months)183
      • Downloads (Last 6 weeks)31

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Full Text

    View this article in Full Text.

    View Full Text