{"title":"通过同义同义派生的通用属性模型检查来有效地验证处理器","authors":"Yufeng Li , Yiwei Ci , Qiusong Yang , Enyuan Tian","doi":"10.1016/j.vlsi.2025.102502","DOIUrl":null,"url":null,"abstract":"<div><div>Verification is a critical and challenging task in processor development, and there is an objective need for more efficient verification methods. Model checking, with its ability to detect corner cases, has become a key approach to ensuring the correctness of designs. However, the process of constructing properties is highly dependent on expert knowledge, time-consuming, and prone to errors.</div><div>The groundbreaking <em>Symbolic Quick Error Detection (SQED)</em> introduces a <em>self-consistency universal property</em> that is microarchitecture-independent, thereby circumventing the laborious process of manual property construction. However, the verification of the self-consistency property, which checks whether the results of original and duplicate instructions performing the same function are consistent, presents two significant issues. First, bugs affecting both the original and duplicate instructions simultaneously can lead to false positives (property verification passes, but the design contains bugs) in the verification results. Second, the system variables affected by the self-consistency are numerous, and the process of unfolding the transition system copies a large number of variables, which can easily lead to computation explosion. To address these issues, this paper proposes a tautologies-derived universal properties model checking. Our method verifies a set of tautology universal properties that cover both the data paths and control flow of the processor, thereby avoiding the false positive issues inherent in the single self-consistency property. Furthermore, a single tautology covering the data path is simpler than self-consistency, reducing the computational overhead for solvers when checking individual properties, which facilitates the detection of difficult bugs. We compare four methods based on universal properties in our experimental results, demonstrating the effectiveness of our approach.</div></div>","PeriodicalId":54973,"journal":{"name":"Integration-The Vlsi Journal","volume":"105 ","pages":"Article 102502"},"PeriodicalIF":2.5000,"publicationDate":"2025-08-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Efficient processor verification by tautologies-derived universal properties model checking\",\"authors\":\"Yufeng Li , Yiwei Ci , Qiusong Yang , Enyuan Tian\",\"doi\":\"10.1016/j.vlsi.2025.102502\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>Verification is a critical and challenging task in processor development, and there is an objective need for more efficient verification methods. Model checking, with its ability to detect corner cases, has become a key approach to ensuring the correctness of designs. However, the process of constructing properties is highly dependent on expert knowledge, time-consuming, and prone to errors.</div><div>The groundbreaking <em>Symbolic Quick Error Detection (SQED)</em> introduces a <em>self-consistency universal property</em> that is microarchitecture-independent, thereby circumventing the laborious process of manual property construction. However, the verification of the self-consistency property, which checks whether the results of original and duplicate instructions performing the same function are consistent, presents two significant issues. First, bugs affecting both the original and duplicate instructions simultaneously can lead to false positives (property verification passes, but the design contains bugs) in the verification results. Second, the system variables affected by the self-consistency are numerous, and the process of unfolding the transition system copies a large number of variables, which can easily lead to computation explosion. To address these issues, this paper proposes a tautologies-derived universal properties model checking. Our method verifies a set of tautology universal properties that cover both the data paths and control flow of the processor, thereby avoiding the false positive issues inherent in the single self-consistency property. Furthermore, a single tautology covering the data path is simpler than self-consistency, reducing the computational overhead for solvers when checking individual properties, which facilitates the detection of difficult bugs. We compare four methods based on universal properties in our experimental results, demonstrating the effectiveness of our approach.</div></div>\",\"PeriodicalId\":54973,\"journal\":{\"name\":\"Integration-The Vlsi Journal\",\"volume\":\"105 \",\"pages\":\"Article 102502\"},\"PeriodicalIF\":2.5000,\"publicationDate\":\"2025-08-06\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Integration-The Vlsi Journal\",\"FirstCategoryId\":\"5\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0167926025001592\",\"RegionNum\":3,\"RegionCategory\":\"工程技术\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Integration-The Vlsi Journal","FirstCategoryId":"5","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0167926025001592","RegionNum":3,"RegionCategory":"工程技术","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
Efficient processor verification by tautologies-derived universal properties model checking
Verification is a critical and challenging task in processor development, and there is an objective need for more efficient verification methods. Model checking, with its ability to detect corner cases, has become a key approach to ensuring the correctness of designs. However, the process of constructing properties is highly dependent on expert knowledge, time-consuming, and prone to errors.
The groundbreaking Symbolic Quick Error Detection (SQED) introduces a self-consistency universal property that is microarchitecture-independent, thereby circumventing the laborious process of manual property construction. However, the verification of the self-consistency property, which checks whether the results of original and duplicate instructions performing the same function are consistent, presents two significant issues. First, bugs affecting both the original and duplicate instructions simultaneously can lead to false positives (property verification passes, but the design contains bugs) in the verification results. Second, the system variables affected by the self-consistency are numerous, and the process of unfolding the transition system copies a large number of variables, which can easily lead to computation explosion. To address these issues, this paper proposes a tautologies-derived universal properties model checking. Our method verifies a set of tautology universal properties that cover both the data paths and control flow of the processor, thereby avoiding the false positive issues inherent in the single self-consistency property. Furthermore, a single tautology covering the data path is simpler than self-consistency, reducing the computational overhead for solvers when checking individual properties, which facilitates the detection of difficult bugs. We compare four methods based on universal properties in our experimental results, demonstrating the effectiveness of our approach.
期刊介绍:
Integration''s aim is to cover every aspect of the VLSI area, with an emphasis on cross-fertilization between various fields of science, and the design, verification, test and applications of integrated circuits and systems, as well as closely related topics in process and device technologies. Individual issues will feature peer-reviewed tutorials and articles as well as reviews of recent publications. The intended coverage of the journal can be assessed by examining the following (non-exclusive) list of topics:
Specification methods and languages; Analog/Digital Integrated Circuits and Systems; VLSI architectures; Algorithms, methods and tools for modeling, simulation, synthesis and verification of integrated circuits and systems of any complexity; Embedded systems; High-level synthesis for VLSI systems; Logic synthesis and finite automata; Testing, design-for-test and test generation algorithms; Physical design; Formal verification; Algorithms implemented in VLSI systems; Systems engineering; Heterogeneous systems.