Skip to main content
Log in

Boolean Satisfiability Methods for Modern Computer-Aided Design Problems in Microelectronics

  • Published:
Russian Microelectronics Aims and scope Submit manuscript

Abstract

The Boolean satisfiability (SAT) methods are one of the efficient approaches used to solve the problems of Boolean matching and the equivalence checking of digital circuits. In combination with classic routing algorithms and optimization techniques, these methods demonstrate better results than the classic routing algorithms in terms of the speed of operation and the quality of the results. In this paper, the modern practice of using the SAT methods in computer-aided design systems for VLSI is analyzed. The examples of modern SAT approaches to the problems of routing and the formal equivalence checking of digital circuits’ descriptions within the technological mapping as a part of the FPGA design flow are considered. The algorithm of the detailed routing of the FPGA switching blocks using the satisfiability problem is developed and presented. The results of its work are demonstrated on the example of the programmable logic block of the integrated circuit 5400TP094 made in Russia. The block has the island architecture, where the configurable logic blocks and switching blocks form a regularly repeated layout template. The properties of the chosen classic architecture allow us to expand the region of the presented algorithm to the entire class of island style of FPGA. The algorithm is tested on the project benchmarks ISCAS-85, ISCAS-89, and LGSynth-89. The comparison of the developed SAT-based algorithm with the well-known routing algorithm Pathfinder is presented by the criteria of the elapsed time and the achieved degree of routed nets in the switching blocks. It is specified that the considered Boolean satisfiability methods for the routing problem are capable to prove the circuit’s unroutability, unlike the Pathfinder algorithm whose results can only implicitly indicate it. The paper demonstrates that the application of a more efficient SAT solver significantly accelerates the work of the suggested detailed routing algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1.
Fig. 2.

Similar content being viewed by others

REFERENCES

  1. Gavrilov, S.V., Glebov, A.L., and Stempkovskii, A.L., Metody logicheskogo i logiko-vremennogo analiza tsifrovykh KMOP SBIS (Methods of Logical and Logical-Time Analysis of Digital CMOS VLSI), Moscow: Nauka, 2007.

  2. Cook, S., The complexity of theorem proving procedures, in Proceedings of the 3rd Annual ACM Symposium on Theory of Computing, 1971, pp. 151–158.

  3. Levin, L.A., Generic enumeration problems, Probl. Pered. Inform., 1973, vol. 9, no. 3, pp. 115–116.

    Google Scholar 

  4. Koen, C., Eén, N., Sheeran, M., et al., SAT-solving in practice, with a tutorial example from supervisory control, Discrete Event Dyn. Syst., 2009, vol. 19, no. 4, pp. 495–524.

    Article  MathSciNet  Google Scholar 

  5. Ohrimenko, O., Stuckey, P.J., and Codish, M., Propagation = Lazy clause generation, in Principles and Practice of Constraint Programming CP 2007, Proceedings of the 13th International Conference, Providence, RI, USA, Sept. 25–29, 2007, Bessiere, C., Ed., Berlin: Springer, 2007, pp. 544–558.

  6. Järvisalo, M., Le Berre, D., Roussel, O., and Simon, L., The international sat solver competitions, AI Mag., 2012, vol. 33, no. 1, pp. 89–92.

    Google Scholar 

  7. Marques-Silva, J., Practical applications of boolean satisfiability, in Proceedings of the 9th International Workshop on Discrete Event Systems, Goteborg, Sweden, May 2008, pp. 74–80.

  8. The International SAT Competition Web Page. http:// www.satcompetition.org/. Accessed April 29, 2020.

  9. Katebi, H. and Markov, I.L., Large-scale boolean matching, in Proceedings of the 2010 Design, Automation and Test in Europe Conference and Exhibition DATE 2010, Dresden, 2010, pp. 771–776.

  10. Pui, C., Tu, P., Li, H., et al., A two-step search engine for large scale boolean matching under NP3 equivalence, in Proceedings of the 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC), Jeju, 2018, p. 592–598.

  11. Dehbashi, M. and Fey, G., Debug automation for synchronization bugs at RTL, in Proceedings of the 27th International Conference on VLSI Design and 2014 13th International Conference on Embedded Systems, 2014, pp. 44–49.

  12. Gavrilov, S.V., Metody analiza logicheskikh korrelyatsii dlya SAPR tsifrovykh KMOP SBIS (Methods for the Analysis of Logical Correlations for CAD Digital CMOS VLSI), Moscow: Tekhnosfera, 2011.

  13. ABC: A System for Sequential Synthesis and Verification. https://people.eecs.berkeley.edu/~alanmi/abc/. Accessed May 31, 2020.

  14. Mishchenko, A., Brayton, R., Jiang, J.-H.R., and Jang, S., SAT-based logic optimization and resynthesis, in Proceedings of the International Workshop on Logic and Synthesis IWLS, 2007, pp. 358–364.

  15. Een, N. and Sörensson, N., An extensible SAT-solver, in Proceedings of the SAT’03. http://www.cs.chalmers.se/ Cs/Research/FormalMethods/MiniSat. Accessed May 31, 2020.

  16. Wood, R.G. and Rutenbar, R.A., FPGA routing and routability estimation via boolean satisfiability, IEEE Trans. Very Large Scale Integr. Syst., 1998, vol. 6, no. 2, pp. 222–231.

    Article  Google Scholar 

  17. Nam, G.-J., Sakaliah, K.A., and Rutenbar, R.A., Satisfiability-based layout revisited: Detailed routing of complex FPGAs via search-based boolean SAT, in Proceedings of the 1999 ACM/SIGDA 7th International Symposium on Field Programmable Gate Arrays, Feb. 1999, 1999, pp. 167–175.

  18. Nam, G.-J., Aloul, F., Sakallah, K.A., and Rutenbar, R.A., A comparative study of two boolean formulations of FPGA detailed routing constraints, IEEE Trans. Comput., 2001, vol. 53, no. 6, pp. 688–696.

    Article  Google Scholar 

  19. Nam, G.-J., Sakallah, K.A., and Rutenbar, R.A., A new FPGA detailed routing approach via search-based boolean satisfiability, IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst., 2002, vol. 21, no. 6, pp. 674–684.

    Article  Google Scholar 

  20. Nam, G.-J., Sakallah, K., and Rutenbar, R.A., Hybrid routing for FPGAs by integrating boolean satisfiability with geometric search, in Field-Programmable Logic and Applications: Reconfigurable Computing Is Going Mainstream, Lecture Notes in Computer Science, Glesner, M., Zipf, P., and Renovell, M., Eds., Berlin, Heidelberg: Springer Berlin Heidelberg, 2002, Vol. 2438, pp. 360–369.

    Google Scholar 

  21. Zheleznikov, D.A., Zapletina, M.A., and Khvatov, V.M., Investigation of the mechanism of rupture and rerouting at the stage of topological synthesis in the basis of reconfigurable systems on a chip, in Problemy Razrabotki perspektivnykh mikro- i nanoelektronnykh sistem MES (Problems of the Development of Promising Micro- and Nanoelectronic Systems of MES), 2018, pp. 188–192.

  22. Marques Silva, J.P. and Sakallah, K., Grasp—a new search algorithm for satisfiability, in Proceedings of the 1996 IEEE/ACM International Conference on Computer-Aided Design ICCAD’96, USA: IEEE Comput. Soc., 1997, pp. 220–227.

  23. McMurchie, L.E. and Ebeling, C., Pathfinder: a negotiation-based path-driven router for FPGAs, in Proceedings of the ACM/IEEE International Symposium on Field Programmable Gate Arrays, Feb, 1995, pp. 111–117.

  24. Liu, Z., Yu, Z., and Gu, X., A new and efficient algorithm for FPGA routing, in Proceedings of the 2007 2nd IEEE Conference on Industrial Electronics and Applications, Harbin, 2007, pp. 1431–1436.

  25. Fraisse, H., Joshi, A., Gaitonde, D., and Kaviani, A., Boolean satisfiability-based routing and its application to xilinx ultrascale clock network, in Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays FPGA’16, 2016, pp. 74–79.

  26. Song, X., Hung, W.N.N., Mishchenko, A., et al., Board-level multiterminal net assignment for the partial cross-bar architecture, IEEE Trans. Very Large Scale Integr. Syst., 2003, vol. 11, no. 3, pp. 511–514.

    Article  Google Scholar 

  27. Velev, M.N. and Gao, P., Comparison of boolean satisfiability encodings on FPGA detailed routing problems, in Proceedings of the 2008 Conference on Design, Automation and Test in Europe, Munich, 2008, pp. 1268–1273.

  28. Fraisse, H., Incremental routing for circuit designs using a sat router, US Patent no. 10445456, 2019.

  29. Xilinx Vivado Design Suite. https://www.xilinx.com/ products/design-tools/vivado.html. Accessed May 31, 2020.

  30. Soyuz: 5400TR094 PATsIS. https://dcsoyuz.ru/products/pais/art/1605. Accessed July 9, 2020.

  31. Zhukov, D.V., Zheleznikov, D.A., and Zapletina, M.A., The iterative SAT based approach to detailed routing for reconfigurable system-on-a-chip, in Proceedings of the 2020 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering EIConRus, 2020, pp. 1905–1910.

  32. Test Circuit Sets ISCAS’89 and LGSynth’89. https://ddd.fit.cvut.cz/prj/Benchmarks/. Accessed July 9, 2020.

  33. Davis, M., Logemann, G., and Loveland, D., A machine program for theorem-proving, Commun. ACM, 1962, vol. 5, no. 7, pp. 394–397.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to M. A. Zapletina.

Additional information

The article was translated by the authors.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zapletina, M.A., Zhukov, D.V. & Gavrilov, S.V. Boolean Satisfiability Methods for Modern Computer-Aided Design Problems in Microelectronics. Russ Microelectron 50, 516–522 (2021). https://doi.org/10.1134/S1063739721070131

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1134/S1063739721070131

Keywords:

Navigation