Abstract
With the increasing complexity of chips design, the design errors or defects will inevitably increase. It is difficult to detect corresponding design logic problems with some conventional detection methods, such as testing and simulation. Further, the cost of such detection processes is also expensive. In contrast, formal verification methods based on mathematical logic reasoning about formal description capabilities can strictly prove whether a system meets the expected demand properties, so that it can effectively find out hidden defects or errors in chips design. Model checking is a widely used formal method for verifying chips design. However, model checking suffers from so called state space explosion problem. Although traditional model checking method alleviates the problem of state space explosion to a certain extent, there is still the problem of slow solution efficiency for large-scale chips design. Bounded model checking detects the limited path of a model to quickly determine the hidden problems of chips design, which can effectively alleviate the problem of system state space explosion. However, most of the logic languages such as LTL or CTL used in describing the desired properties cannot describe full regular properties of chips design. Further, the most of verification processes are based on symbolic model checking which is ineffective to detect design bugs in practice. Therefore, this paper focuses on the use of PPTL in bounded model checking to describe the properties to be verified and makes full use of SAT solvers to convert bounded model checking problems into SAT instances so that the scope and scale of verification of chips design can be reinforced and the efficiency of the verification processes can be also improved.
This research is supported by National Natural Science Foundation of China under Grant Nos. 62272359 and 62172322; Natural Science Basic Research Program of Shaanxi Province under Grant Nos. 2023JC-XJ-13 and 2022JM-367.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Weyuker, E.J., Ostrand, T.J.: Theories of program testing and the application of revealing subdomains. IEEE Trans. Software Eng. 3, 236–246 (1980)
Frenkel, D., Smit, B.: Understanding Molecular Simulation: From Algorithms to Applications. Academic Press, New York (2001)
Wing, J.M.: A specifier’s introduction to formal methods. Computer 23(9), 8–22 (1990)
Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12, 576–580 (1969)
Pnueli, A.: The temporal logic of programs. In: Symposium on Foundations of Computer Science, pp. 46–57. IEEE Xplore (1977)
Clarke, E.M., Emerson, E.A., Sifakis, J.: Model checking. Lect. Notes Comput. Sci. 164(2), 305–349 (1999)
Holzmann, G.J.: The model checker SPIN. IEEE Trans. Software Eng. 23(5), 279–295 (1997)
Burch, J.R., Clarke, E.M., Mc Millan, K.L., et al.: Symbolic model checking: 1020 states and beyond. Inf. Comput. 98(2), 142–170 (1992)
Clarke, E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Trans. Program. Lang. Syst. 16(5), 1512–1542 (1994)
Cimatti, A., et al.: NuSMV 2: an OpenSource tool for symbolic model checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45657-0_29
Bryant, R.E.: Graph-Based Algorithms for Boolean Function Manipulation12 (1986)
Gadelha, M.Y.R., Ismail, H.I., Cordeiro, L.C.: Handling loops in bounded model checking of C programs via K-induction. Int. J. Softw. Tools Technol. Transfer 19, 97–114 (2017)
Biere, A., Cimatti, A., Clarke, E.M., Fujita, M., Zhu, Y.: Symbolic model checking using SAT procedures instead of BDDs. In: *Design Automation Conference, (DAC*1999), June 1999
Cai, S., Zhang, X.: Deep cooperation of CDCL and local search for SAT (Extended Abstract). In: IJCAI 2022, pp. 5274–5278 (2022)
Kripke, S.A.: Semantical analysis of modal logic I normal modal propositional calculi. Math. Log. Q. 9(5–6), 67–96 (1963)
Duan, Z.: Temporal Logic and Temporal Logic Programming, Beijing (2005)
Duan, Z., Holcombe, M., Bell, A.: A logic for biosystems. Biosystems 55(1–3), 93–105 (2000)
Duan, Z., Koutny, M., Holt, C.: Projection in temporal logic programming. In: Pfenning, F. (ed.) LPAR 1994. LNCS, vol. 822, pp. 333–344. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58216-9_48
Duan, Z., Koutny, M.: A framed temporal logic programming language. J. Comput. Sci. Technol. 19, 333–344 (2004)
Duan, Z., Yang, X., Koutny, M.: Semantics of framed temporal logic programs. In: Gabbrielli, M., Gupta, G. (eds.) ICLP 2005. LNCS, vol. 3668, pp. 356–370. Springer, Heidelberg (2005). https://doi.org/10.1007/11562931_27
Galesi, N., Itsykson, D., Riazanov, A., Sofronova, A.: Bounded-depth Frege complexity of Tseitin formulas for all graphs. In: MFCS 2019, pp. 49:1–49:15 (2019)
Chambers, B., et al.: Faster SAT solving with better CNF generation. In: 2009 Design, Automation and Test in Europe Conference and Exhibition, pp. 1590–1595 (2009)
Davis, M., Logemann, G., Lovelandn, D.: A machine program for theorem proving. Commun. ACM 5(7), 394–397 (1962)
Freeman, J.W.: Improvements to Propositional Satisfiability Search Algorithms. University of Pennsylvania, Philadelphia, PA, USA (1995)
Een, N., Sorensson, N.: An extensible SAT solver. In: Theory and Applications of Satisfiability Testing. Santa Margherita Ligure, Italy, pp. 502–518 (2003)
Zhang, H.-T.: SATO: an efficient propositional prover. In: Proceedings of the 14th International Conference on Automated Deduction (CADE-1997), pp. 272–275, London, UK (1997)
Marques-Silva, J.P., Sakallah, K.A.: GRASP: a new search algorithm for satisfiability. In: Proceedings of the ACM/IEEE International Conference on Computer-Aided Design, pp. 220–227, Washington, DC, USA (1996)
Goldberg, E., Novikov, Y.: BerkMin: a fast and robust SAT-solver. Discret. Appl. Math. 155(12), 1549–1561 (2007)
Moskewicz, M., Madigan, C., Zhao, Y., et a1.: Chaff: engineering an efficient SAT solver. In: Proceedings of 38th Conference on Design Automation, pp. 530–535, Las Vegas, NV, USA (2001)
Goldberg, E., Novikov, Y.: BerMin: a fast and robust SAT-solver. In: Proceedings of Design Automation and Test in Europe (DATE), pp. 142–149, Paris, France (2002)
Audemard, G., Simon, L.: Refining restarts strategies for SAT and UNSAT formulae. In: Proceedings of the 18th International Conference on Principles and Practice of Constraint Programming (2012)
Cai, S., Zhang, X., Fleury, M., Biere, A.: Better decision heuristics in CDCL through local search and target phases. J. Artif. Intell. Res. 74, 1515–1563 (2022)
Selman, B., Levesque, H., Mitchell, D.: A new method for solving hard satisfiability problems. In: Proceedings of the 10th AAAI 1992, pp. 440–446. AAAI Press, Menlo Park, CA (1992)
Selman, B., Kautz, H.A., Cohen, B.: Noise strategies for improving local search. In: Proceedings of the 12th AAAI-1994, pp. 337–343. AAAI Press, Menlo Park, CA (1994)
McAllester, D., Selman, B., Kautz, H.: Evidence for invariants in local search. In: Proceedings of the 14th AAAI 1997, pp. 321–326. AAAI Press, Menlo Park, CA (1997)
Mazure, B., Sais, L., Gregoire, E.: Tabu search for SAT. In: Proceedings of the 14th AAAI 1997, pp. 28–285. AAAI Press, Menlo Park, CA (1997)
Schuurmans, D., Southey, F.: Local search characteristics of incomplete SAT procedures. Artif. Intell. 132(2), 121–150 (2001)
Prestwich, S., Lynce, I.: Local search for unsatisfiability. In: Proceedings of the 9th International Conference on Theory and Applications of Satisfiability Testing, Seattle, pp. 283–296, WA, USA (2006)
Audemard, G., Simon, L.: GUNSAT: a greedy local search algorithm for unsatisfiabiIity. In: Proceedings of the 20th International Joint Conference of Artificial Intelligence, pp. 2256–2261, Hyderabad, India (2007)
Crypto MiniSat2 [CP/OL]. http://www.msoos.org/cryptominisat2/
Biere, A.: Lingeling, Plingeling and Treengeling entering the SAT competition 2013. In: Proceedings of SAT Competition (2013)
Een, N., Sorensson, N.: An extensible SAT solver. In: Theory and Applications of Satisfiability Testing, pp. 502–518, Santa Margherita Ligure, Italy (2003)
Guo, L., Hamadi, Y., Jabbour, S., Sais, L.: Diversification and intensification in parallel SAT solving. In: Proceedings of the 16th International Conference on Principles and Practices of Constraint Programming (2010)
Biere, A.: The AIGER And-Inverter Graph (AIG) Format Version 20070427 (2007)
Brayton, R., Mishchenko, A.: ABC: an academic industrial-strength verification tool. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 24–40. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14295-6_5
Duan, Z., Tian, C., Zhang, N.: A canonical form based decision procedure and model checking approach for propositional projection temporal logic. Theoret. Comput. Sci. 609, 544–560 (2016)
Pan, Y.: Development of image processing software based on QT creator. In: 2019 IEEE 3rd Information Technology, Networking, Electronic and Automation Control Conference (ITNEC), pp. 2667–2671. IEEE (2019)
Goel, A., Sakallah, K.: Model checking of verilog RTL using IC3 with syntax-guided abstraction. In: Badger, J.M., Rozier, K.Y. (eds.) NFM 2019. LNCS, vol. 11460, pp. 166–185. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-20652-9_11
Irfan, A., Cimatti, A., Griggio, A., et al.: Verilog2SMV: a tool for word-level verification. In: 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE), pp. 1156–1159. IEEE (2016)
Andraus, Z.S., Liffiton, M.H., Sakallah, K.A.: Reveal: a formal verification tool for verilog designs. In: Cervesato, I., Veith, H., Voronkov, A. (eds.) LPAR 2008. LNCS (LNAI), vol. 5330, pp. 343–352. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89439-1_25
Ho, Y.S., Mishchenko, A., Brayton, R.: Property directed reachability with word-level abstraction. In: 2017 Formal Methods in Computer Aided Design (FMCAD), pp. 132–139. IEEE (2017)
Leucker, M., Markin, G., Neuhäußer, M.R.: A new refinement strategy for CEGAR-based industrial model checking. In: Piterman, N. (ed.) HVC 2015. LNCS, vol. 9434, pp. 155–170. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-26287-1_10
Drechsler, R.: PolyAdd: polynomial formal verification of adder circuits. In: 2021 24th International Symposium on Design and Diagnostics of Electronic Circuits and Systems (DDECS), pp. 99–104. IEEE (2021)
Andraus, Z.S., Sakallah, K.A.: Automatic abstraction and verification of verilog models. In: Proceedings of the 41st annual Design Automation Conference, pp. 218–223 (2004)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Wang, W., Zhang, N., Tian, C., Duan, Z., Xu, Z., Yu, C. (2023). Verifying Chips Design at RTL Level. In: David, C., Sun, M. (eds) Theoretical Aspects of Software Engineering. TASE 2023. Lecture Notes in Computer Science, vol 13931. Springer, Cham. https://doi.org/10.1007/978-3-031-35257-7_9
Download citation
DOI: https://doi.org/10.1007/978-3-031-35257-7_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35256-0
Online ISBN: 978-3-031-35257-7
eBook Packages: Computer ScienceComputer Science (R0)