skip to main content
research-article

Partitioning and Scheduling with Module Merging on Dynamic Partial Reconfigurable FPGAs

Authors Info & Claims
Published:21 August 2020Publication History
Skip Abstract Section

Abstract

Field programmable gate array (FPGA) is ubiquitous nowadays and is applied to many areas. Dynamic partial reconfiguration (DPR) is introduced to most modern FPGAs, enabling changing the function of a part of the FPGA by dynamically loading new bitstreams to the logic regions without affecting the function of other parts of the FPGA. However, delivering the powerful capacity of the DPR FPGA to the user depends on the efficient partitioning and scheduling technology. This article proposes the module merging technique for the partitioning and scheduling problem to reduce the reconfiguration overhead and improve the schedule performance. An exact approach based on the integer linear programming (ILP) for the partitioning and scheduling problem with module merging is proposed. The ILP-based approach is capable of solving the problem optimally, and can be used to further improve the performance of schedules produced by other non-optimal algorithms; however, it is time-consuming to solve large-scale problems. Therefore, a K-sliced-ILP algorithm based on the methodology of divide-and-conquer is proposed, which is able to reduce the time complexity significantly with the solution quality being degraded marginally. Experiments are carried out with a set of real-life applications, and the result demonstrates the effectiveness of the proposed methods.

References

  1. GUROBI. Retrieved from http://www.gurobi.com.Google ScholarGoogle Scholar
  2. Sudarshan Banerjee, Elaheh Bozorgzadeh, and Nikil Dutt. 2009. Exploiting application data-parallelism on dynamically reconfigurable architectures: Placement and architectural considerations. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 17, 2 (2009), 234--247. DOI:https://doi.org/10.1109/TVLSI.2008.2003490 Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Sudarshan Banerjee, Elaheh Bozorgzadeh, and Nikil D. Dutt. 2006. Integrating physical constraints in HW-SW partitioning for architectures with partial dynamic reconfiguration. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 14, 11 (2006), 1189--1202. DOI:https://doi.org/10.1109/TVLSI.2006.886411 Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Ivan Beretta, Vincenzo Rana, David Atienza, and Donatella Sciuto. 2011. A mapping flow for dynamically reconfigurable multi-core system-on-chip design. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 30, 8 (2011), 1211--1224. DOI:https://doi.org/10.1109/TCAD.2011.2138140 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Ivan Beretta, Vincenzo Rana, David Atienza, and Donatella Sciuto. 2011. Island-based adaptable embedded system design. IEEE Embedded Systems Letters 3, 2 (2011), 53--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Alessandro Biondi, Alessio Balsini, Marco Pagani, Enrico Rossi, Mauro Marinoni, and Giorgio Buttazzo. 2017. A framework for supporting real-time applications on dynamic reconfigurable FPGAs. In Proceedings of the Real-Time Systems Symposium (RTSS). 1--12. DOI:https://doi.org/10.1109/RTSS.2016.010Google ScholarGoogle Scholar
  7. Alessandro Biondi, Giorgio Buttazzo, Scuola Superiore, and Sant Anna. 2017. Timing-aware FPGA partitioning for real-time applications under dynamic partial reconfiguration. In Proceedings of the 2017 NASA/ESA Conference on Adaptive Hardware and Systems. 172--179.Google ScholarGoogle ScholarCross RefCross Ref
  8. Louis-Claude Canon and Mohamad El Sayah. 2019. A comparison of random task graph generation methods for scheduling problems. (2019). arxiv:arXiv:1902.05808v1Google ScholarGoogle Scholar
  9. Riccardo Cattaneo, Riccardo Bellini, Gianluca Durelli, Christian Pilato, Marco D. Santambrogio, and Donatella Sciuto. 2014. PaRA-Sched: A reconfiguration-aware scheduler for reconfigurable architectures. In Proceedings of the International Parallel and Distributed Processing Symposium, IPDPS (2014), 243--250. DOI:https://doi.org/10.1109/IPDPSW.2014.32 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Song Chen, Jinglei Huang, Xiaodong Xu, Bo Ding, and Qi Xu. 2018. Integrated optimization of partitioning, scheduling, and floorplanning for partially dynamically reconfigurable systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 0070, 1 (2018). DOI:https://doi.org/10.1109/TCAD.2018.2883982Google ScholarGoogle Scholar
  11. Juan Antonio Clemente, Ivan Beretta, Vincenzo Rana, David Atienza, and Donatella Sciuto. 2014. A mapping-scheduling algorithm for hardware acceleration on reconfigurable platforms. ACM Transactions on Reconfigurable Technology and Systems 7, 9 (2014). DOI:https://doi.org/10.1145/2611562 Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Juan Antonio Clemente, Vincenzo Rana, Donatella Sciuto, Ivan Beretta, and David Atienza. 2011. A hybrid mapping-scheduling technique for dynamically reconfigurable hardware. In Proceedings of the 21st International Conference on Field Programmable Logic and Applications, FPL 2011 (2011), 177--180. DOI:https://doi.org/10.1109/FPL.2011.40 Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Roberto Cordone, Francesco Redaelli, Massimo Antonio Redaelli, Marco Domenico Santambrogio, and Donatella Sciuto. 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. DOI:https://doi.org/10.1109/TCAD.2009.2015739 Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Guohao Dai, Yi Shan, Fei Chen, Yu Wang, Kun Wang, and Huazhong Yang. 2015. Online scheduling for FPGA computation in the Cloud. In Proceedings of the 2014 International Conference on Field-Programmable Technology, FPT 2014 (2015), 330--333. DOI:https://doi.org/10.1109/FPT.2014.7082811Google ScholarGoogle Scholar
  15. Enrico A. Deiana, Marco Rabozzi, Riccardo Cattaneo, and Marco D. Santambrogio. 2016. A multiobjective reconfiguration-aware scheduler for FPGA-based heterogeneous architectures. In Proceedings of the 2015 International Conference on ReConFigurable Computing and FPGAs, ReConFig 2015 (2016), 1--6. DOI:https://doi.org/10.1109/ReConFig.2015.7393328Google ScholarGoogle ScholarCross RefCross Ref
  16. Fabrizio Ferrandi, Pier Luca Lanzi, Christian Pilato, Donatella Sciuto, and Antonino Tumeo. 2013. Ant colony optimization for mapping, scheduling and placing in reconfigurable systems. In Proceedings of the 2013 NASA/ESA Conference on Adaptive Hardware and Systems, AHS 2013 (2013), 47--54. DOI:https://doi.org/10.1109/AHS.2013.6604225Google ScholarGoogle ScholarCross RefCross Ref
  17. Ruining He, Yuchun Ma, Kang Zhao, and Jinian Bian. 2012. ISBA: An independent set-based algorithm for automated partial reconfiguration module generation. 500--507. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Ahmed Kamaleldin, Islam Ahmed, Abulfattah M. Obeid, Ahmed Shalash, Yehea Ismail, and Hassan Mostafa. 2017. A cost-effective dynamic partial reconfiguration implementation flow for Xilinx FPGA. In IEEE International NEW Generation of Circuits and Systems. 281--284. DOI:https://doi.org/10.1109/NGCAS.2017.17Google ScholarGoogle Scholar
  19. Digital Optical Phase-locked Loop, Akihiro Fujii, Futoshi Shirazawa, Yoshiro Kanda, and Hitoshi Murai. 2014. Stable QPSK demodulation using a digital optical phase-locked loop. IEEE Photonics Technology Letters 26, 18 (2014), 1847--1850. DOI:https://doi.org/10.1109/LPT.2014.2337888Google ScholarGoogle ScholarCross RefCross Ref
  20. Yuchun Ma, Jinglan Liu, Chao Zhang, and Wayne Luk. 2014. HW/SW partitioning for region-based dynamic partial reconfigurable FPGAs. In Proceedings of the 2014 32nd IEEE International Conference on Computer Design, ICCD 2014 (2014), 470--476. DOI:https://doi.org/10.1109/ICCD.2014.6974721Google ScholarGoogle ScholarCross RefCross Ref
  21. Razvan Nane, Vlad Mihai Sima, Christian Pilato, Jongsok Choi, Blair Fort, Andrew Canis, Yu Ting Chen, Hsuan Hsiao, Stephen Brown, Fabrizio Ferrandi, Jason Anderson, and Koen Bertels. 2016. A survey and evaluation of FPGA high-level synthesis tools. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 35, 10 (2016), 1591--1604. DOI:https://doi.org/10.1109/TCAD.2015.2513673 Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. L. Pezzarossa, A. T. Kristensen, M. Schoeberl, and J. Sparso. 2017. Can real-time systems benefit from dynamic partial reconfiguration? In Proceedings of the 2017 IEEE Nordic Circuits and Systems Conference, NORCAS 2017: NORCHIP and International Symposium of System-on-Chip, SoC 2017. (2017). DOI:https://doi.org/10.1109/NORCHIP.2017.8124984Google ScholarGoogle Scholar
  23. Andrea Purgato, Davide Tantillo, Marco Rabozzi, Donatella Sciuto, and Marco D. Santambrogio. 2016. Resource-efficient scheduling for partially-reconfigurable FPGA-based systems. In Proceedings of the 2016 IEEE 30th International Parallel and Distributed Processing Symposium, IPDPS 2016 (2016), 189--197. DOI:https://doi.org/10.1109/IPDPSW.2016.176Google ScholarGoogle Scholar
  24. Marco Rabozzi, John Lillis, Marco D. Santambrogio, and Politecnico Milano. 2014. Floorplanning for partially-reconfigurable FPGA systems via mixed-integer linear programming. In Proceedings of the 2014 IEEE 22nd Annual International Symposium on Field-Programmable Custom Computing Machines (2014), 186--193. DOI:https://doi.org/10.1109/FCCM.2014.61 Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Marco Rabozzi, Student Member, Gianluca Carlo Durelli, Student Member, Antonio Miele, John Lillis, Marco Domenico Santambrogio, and Senior Member. 2017. Floorplanning automation for feasible placements generation. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 25, 1 (2017), 151--164. DOI:https://doi.org/10.1109/TVLSI.2016.2562361 Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Vincenzo Rana, Politecnico Milano, David Atienza, Marco D. Santambrogio, Luca Benini, and Universitá Bologna. 2009. Minimization of the reconfiguration latency for the mapping of applications on FPGA-based systems. (2009), 325--334. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Enrico Rossi, Marvin Damschen, Lars Bauer, Giorgio Buttazzo, and Jorg Henkel. 2018. Preemption of the partial reconfiguration process to enable real-time computing with FPGAs. ACM Transactions on Reconfigurable Technology and Systems 11, 2 (2018). DOI:https://doi.org/10.1145/3182183 Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Sangeet Saha, Arnab Sarkar, and Amlan Chakrabarti. 2015. Scheduling dynamic hard real-time task sets on fully and partially reconfigurable platforms. IEEE Embedded Systems Letters 7, 1 (2015), 23--26. DOI:https://doi.org/10.1109/LES.2015.2396069Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Qi Tang, Twan Basten, Marc Geilen, Sander Stuijk, and Ji-Bo Wei. 2017. Mapping of synchronous dataflow graphs on MPSoCs based on parallelism enhancement. Journal of Parallel and Distributed Computing 101 (2017), 79--91. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Qi Tang, Shang Feng Wu, Jun Wu Shi, and Ji Bo Wei. 2017. Optimization of duplication-based schedules on network-on-chip based multi-processor system-on-chips. IEEE Transactions on Parallel and Distributed Systems 28, 3 (2017), 826--837. DOI:https://doi.org/10.1109/TPDS.2016.2599166 Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Qi Tang, Li-Hua Zhu, Jin Lian, Li Zhou, and Ji-Bo Wei. 2020. An efficient multi-functional duplication-based scheduling framework for multiprocessor systems. The Journal of Supercomputing 9 (2020). DOI:https://doi.org/10.1007/s11227-020-03208-yGoogle ScholarGoogle Scholar
  32. Qi Tang, Li-hua Zhu, Li Zhou, Jun Xiong, and Ji-bo Wei. 2020. Scheduling directed acyclic graphs with optimal duplication strategy on homogeneous multiprocessor systems. Journal of Parallel and Distributed Computing 138 (2020), 115--127. DOI:https://doi.org/10.1016/j.jpdc.2019.12.012Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Kizheppatt Vipin and Suhaib A. Fahmy. 2018. FPGA dynamic and partial reconfiguration: A survey of architectures, methods, and applications. Computing Surveys 51, 4 (2018), 1--39. DOI:https://doi.org/10.1145/3193827 Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Mingxuan Yuan, Zonghua Gu, Xiuqiang He, Xue Liu, and Lei Jiang. 2010. Hardware/software partitioning and pipelined scheduling on runtime reconfigurable FPGAs. ACM Transactions on Design Automation of Electronic Systems 15, 2 (2010), 1--41. DOI:https://doi.org/10.1145/1698759.1698763 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Partitioning and Scheduling with Module Merging on Dynamic Partial Reconfigurable FPGAs

    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 Reconfigurable Technology and Systems
      ACM Transactions on Reconfigurable Technology and Systems  Volume 13, Issue 3
      September 2020
      182 pages
      ISSN:1936-7406
      EISSN:1936-7414
      DOI:10.1145/3404107
      • Editor:
      • Deming Chen
      Issue’s Table of Contents

      Copyright © 2020 ACM

      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 ACM 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: 21 August 2020
      • Accepted: 1 May 2020
      • Revised: 1 April 2020
      • Received: 1 February 2020
      Published in trets Volume 13, Issue 3

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format