skip to main content
research-article

Novel Congestion-estimation and Routability-prediction Methods based on Machine Learning for Modern FPGAs

Published:13 August 2019Publication History
Skip Abstract Section

Abstract

Effectively estimating and managing congestion during placement can save substantial placement and routing runtime. In this article, we present a machine-learning model for accurately and efficiently estimating congestion during FPGA placement. Compared with the state-of-the-art machine-learning congestion-estimation model, our results show a 25% improvement in prediction accuracy. This makes our model competitive with congestion estimates produced using a global router. However, our model runs, on average, 291× faster than the global router. Overall, we are able to reduce placement runtimes by 17% and router runtimes by 19%. An additional machine-learning model is also presented that uses the output of the first congestion-estimation model to determine whether or not a placement is routable. This second model has an accuracy in the range of 93% to 98%, depending on the classification algorithm used to implement the learning model, and runtimes of a few milliseconds, thus making it suitable for inclusion in any placer with no worry of additional computational overhead.

References

  1. Z. Abuowaimer, D. Maarouf, T. Martin, J. Foxcroft, G. Grewal, S. Areibi, and A. Vannelli. 2018. GPLace3.0: Routability driven analytic placer for UltraScale FPGA architectures. ACM Trans. Des. Auto. Electron. Syst. 23, 5 (Aug. 2018), 66:1--66:3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. E. Bozorgzadeh, S. Memik, X. Yang, and M. Sarrafzadeh. 2004. Routability-driven packing: Metrics and algorithms for cluster-based FPGAs. J. Circ., Syst. Comput. 13, 1 (June 2004), 77--100.Google ScholarGoogle ScholarCross RefCross Ref
  3. Leo Breiman. 2001. Random forests. Machine Learn. 45, 1 (2001), 5--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Chan, M. Schlag, and J. Zien. 1993. On routability prediction for field programmable gate arrays. In Proceedings of the Design Automation Conference. 326--330. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. W. Chan, P. Ho, A. Kahng, and P. Saxena. 2017. Routability optimization for industrial designs at sub-14nm process nodes using machine learning. In Proceedings of the International Symposium on Physical Design. 15--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. W. T. J. Chan, Y. Du, A. B. Kahng, S. Nath, and K. Samadi. 2016. BEOL stack-aware routability prediction from placement using data mining techniques. In Proceedings of the International Conference on Computer Design (ICCD’16). 41--48.Google ScholarGoogle Scholar
  7. Thomas Cover and Peter Hart. 1967. Nearest neighbor pattern classification. IEEE Trans. Inform. Theor. 13, 1 (1967), 21--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. F. Pedregosa et al. 2011. Scikit-learn: Machine learning in Python. J. Mach. Learn. Res. 12 (Nov. 2011), 2825--2830. Retrieved from: http://dl.acm.org/citation.cfm?id=1953048.2078195. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. G. Grewal and S. Areibi. {n.d.}. Guelph FPGA CAD Group. Retrieved from: http://fpga.socs.uoguelph.ca/.Google ScholarGoogle Scholar
  10. G. Grewal, S. Areibi, M. Westrik, Z. Abuowaimer, and B. Zhao. 2017. Automatic flow selection and quality-of-result estimation for FPGA placement. In Proceedings of the 24th Reconfigurable Architectures Workshop. 115--123.Google ScholarGoogle Scholar
  11. PariVallal Kannan, Shankar Balachandran, and Dinesh Bhatia. 2001. fGREP—Fast generic routing demand estimation for placed FPGA circuits. In Proceedings of the International Conference on Field-Programmable Logic and Applications. Springer-Verlag, 37--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Kannan, S. Calachandran, and D. Bhatia. 2004. On metrics for comparing interconnect estimation methods for FPGAs. IEEE Trans. VLSI (Apr. 2004), 381--385. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. W. Li and D. Banerji. 1999. Routability prediction for hierarchical FPGAs. In Proceedings of the Great Lakes Symposium on VLSI. 1066--1395. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. W. Li and D. Banerji. 2001. Tightly integrated placement and routing for FPGAs. In Proceedings of the International Conference on Field Programmable Logic and Applications. 233--242. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. W. Li, S. Dhar, and D. Pan. 2018. UTPlaceF: A routability-driven FPGA placer with physical and congestion aware packing. IEEE Trans. CAD Syst. 37, 4 (2018), 869--882. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Wuxi Li, Shounak Dhar, and David Z. Pan. 2016. UTPlaceF: A routability-driven FPGA placer with physical and congestion aware packing. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD’16). 66:1--66:7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. D. Maarouf, A. Alhyari, Z. Abuowaimer, T. Martin, G. Grewal, S. Areibi, and A. Vannelli. 2018. A machine learning congestion estimation model for modern FPGAs. In Proceedings of the IEEE International Conference on Field Programmable Logic and Applications. 1--8.Google ScholarGoogle Scholar
  18. Larry McMurchie and Carl Ebeling. {n.d.}. PathFinder: A negotiation-based performance-driven router for FPGAs. In Proceedings of the 3rd ACM International Symposium on Field Programmable Gate Arrays. 111--117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Sreerama K. Murthy. 1997. Automatic construction of decision trees from data: A multidisciplinary survey. Data Mining and Knowledge Discovery 2 (1997), 345--389. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. R. Pattison, Z. Abuowaimer, S. Areibi, G. Grewal, and A. Vannelli. 2016. Invited paper: GPlace—A congestion-aware placement tool for UltraScale FPGAs. In Proceedings of the International Conference on Computer-Aided Design. 1--7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. C. Pui, G. Chen, W. Chow, K. Lam, P. Tu, H. Zhang, E. Young, and B. Yu. 2016. RippleFPGA: A routability-driven placement for large-scale heterogeneous FPGAs. In Proceedings of the International Conference on Computer-Aided Design. 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. C. Pui, G. Chen, Y. Ma, E. Young, and B. Yu. 2017. Clock-aware UltraScale FPGA placement with machine learning routability prediction. In Proceedings of the International Conference on Computer-Aided Design. ACM, 929--936. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Z. Qi, Y. Cai, and Q. Zhou. 2014. Accurate prediction of detailed routing congestion using supervised data learning. In Proceedings of the IEEE International Conference on Computer Design. 97--103.Google ScholarGoogle Scholar
  24. David E. Rumelhart, Geoffrey E. Hinton, and Ronald J. Williams. 1985. Learning Internal Representations by Error Propagation. Technical Report. University of California-San Diego, La Jolla Institute for Cognitive Science.Google ScholarGoogle Scholar
  25. J. Swartz, V. Betz, and J. Rose. 1998. A fast routability-driven router for FPGAs. In Proceedings of the International Symposium on FPGAs. ACM, 140--149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Vladimir Vapnik. 2013. The Nature of Statistical Learning Theory. Springer Science 8 Business Media.Google ScholarGoogle Scholar
  27. R. Wood and R. Rutenbar. 1998. FPGA routing and routability estimation via Boolean satisfiability. IEEE Trans. VLSI Systems 6, 2 (June 1998), 222--231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Xilinx. {n.d.}. A Tcl-based CAD Tool Framework for Xilinx’s Vivado Design Suite. Retrieved from: https://github.com/byuccl/tincr.Google ScholarGoogle Scholar
  29. Xilinx. {n.d.}. ISPD 2016 Routability-Driven FPGA Placement Contest. Retrieved from: http://www.ispd.cc/contests/16/ispd2016_contest.html. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Xilinx. {n.d.}. UltraScale Architecture Configurable Logic Block User Guide. Retrieved from: http://www.xilinx.com/support/documentation/user_guides/ug574-ultrascale-clb.pdf.Google ScholarGoogle Scholar
  31. M. Xu, G. Grewal, and S. Areibi. 2011. StarPlace: A new analytic method for FPGA placement. Integr., VLSI J. 44, 3 (June 2011), 192--204. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. S. Yang, A. Gayasen, C. Mulpuri, S. Reddy, and R. Aggarwal. 2016. Routability-driven FPGA placement contest. In Proceedings of the International Symposium on Physical Design. ACM, 139--143. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. D. Yeager, D. Chiu, and G. Lemieux. 2007. Congestion estimation and localization in FPGAs: A visual tool for interconnect prediction. In Proceedings of the International Workshop on System Level Interconnect Prediction. ACM, 33--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Q. Zhou, X. Wang, Z. Qi, Z. Chen, Q. Zhou, and Y. Cai. 2015. An accurate detailed routing routability prediction model in placement. In Proceedings of the Asia Symposium on Quality Electronic Design (ASQED’15). 119--122.Google ScholarGoogle Scholar
  35. Y. Zhuo, H. Li, and S. Mohanty. 2006. A congestion driven placement algorithm for FPGA synthesis. In Proceedings of the International Conference on Field Programmable Logic and Applications. 683--686.Google ScholarGoogle Scholar

Index Terms

  1. Novel Congestion-estimation and Routability-prediction Methods based on Machine Learning for Modern 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 12, Issue 3
          Special Section on Security in FPGAs and Regular Articles
          September 2019
          150 pages
          ISSN:1936-7406
          EISSN:1936-7414
          DOI:10.1145/3357092
          • Editor:
          • Deming Chen
          Issue’s Table of Contents

          Copyright © 2019 ACM

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 13 August 2019
          • Accepted: 1 May 2019
          • Revised: 1 March 2019
          • Received: 1 December 2018
          Published in trets Volume 12, 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
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!