首页 > 最新文献

2008 Formal Methods in Computer-Aided Design最新文献

英文 中文
Invited Tutorial: Considerations in the Design and Verification of Microprocessors for Safety-Critical and Security-Critical Applications 特邀教程:安全关键和安全关键应用的微处理器设计和验证的考虑
Pub Date : 2008-11-25 DOI: 10.1109/FMCAD.2008.ECP.5
D. Hardin
In this tutorial, we will examine issues in the design and verification of microprocessors for safety-critical and security-critical applications. We will consider architectural and design alternatives to support high-assurance applications, and will describe techniques to improve secure system evaluation-measured in terms of completeness, human effort required, time, and cost-through the use of highly automated formal methods. We will describe practical techniques for creating executable formal computing platform models that can both be proved correct, and also function as high-speed simulators. This allows us to both verify the correctness of the models, as well as validate that the formalizations accurately model what was actually designed and built. As a case study, we will examine the design and verification of the Rockwell Collins AAMP7G microprocessor. The AAMP7G, currently in use in Rockwell Collins high-assurance system products, supports strict time and space partitioning in hardware, and has received an NSA MILS (Multiple Independent Levels of Security) certificate based in part on proofs of correctness. We will discuss the AAMP7G verification effort, focusing on the proof architecture that enabled us to show that the AAMP7G separation kernel microcode implements a particular security specification, using the ACL2 theorem prover.
在本教程中,我们将研究用于安全关键型和安全关键型应用程序的微处理器的设计和验证中的问题。我们将考虑支持高保证应用程序的体系结构和设计替代方案,并将描述通过使用高度自动化的形式化方法来改进安全系统评估的技术——根据完整性、所需的人力、时间和成本进行度量。我们将描述用于创建可执行的正式计算平台模型的实用技术,这些模型既可以被证明是正确的,也可以用作高速模拟器。这使我们既可以验证模型的正确性,也可以验证形式化准确地模拟实际设计和构建的内容。作为案例研究,我们将研究罗克韦尔柯林斯AAMP7G微处理器的设计和验证。AAMP7G目前用于罗克韦尔柯林斯公司的高保证系统产品,支持严格的硬件时间和空间分区,并已获得基于正确性证明的NSA MILS(多独立安全级别)证书。我们将讨论AAMP7G验证工作,重点关注证明体系结构,该体系结构使我们能够使用ACL2定理证明器显示AAMP7G分离内核微码实现特定的安全规范。
{"title":"Invited Tutorial: Considerations in the Design and Verification of Microprocessors for Safety-Critical and Security-Critical Applications","authors":"D. Hardin","doi":"10.1109/FMCAD.2008.ECP.5","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.5","url":null,"abstract":"In this tutorial, we will examine issues in the design and verification of microprocessors for safety-critical and security-critical applications. We will consider architectural and design alternatives to support high-assurance applications, and will describe techniques to improve secure system evaluation-measured in terms of completeness, human effort required, time, and cost-through the use of highly automated formal methods. We will describe practical techniques for creating executable formal computing platform models that can both be proved correct, and also function as high-speed simulators. This allows us to both verify the correctness of the models, as well as validate that the formalizations accurately model what was actually designed and built. As a case study, we will examine the design and verification of the Rockwell Collins AAMP7G microprocessor. The AAMP7G, currently in use in Rockwell Collins high-assurance system products, supports strict time and space partitioning in hardware, and has received an NSA MILS (Multiple Independent Levels of Security) certificate based in part on proofs of correctness. We will discuss the AAMP7G verification effort, focusing on the proof architecture that enabled us to show that the AAMP7G separation kernel microcode implements a particular security specification, using the ACL2 theorem prover.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"14 15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124739536","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
BACH : Bounded ReAchability CHecker for Linear Hybrid Automata 线性混合自动机的有界可达性检查器
Pub Date : 2008-11-25 DOI: 10.1109/FMCAD.2008.ECP.13
Lei Bu, You Li, Linzhang Wang, Xuandong Li
Hybrid automata are well studied formal models for hybrid systems with both discrete and continuous state changes. However, the analysis of hybrid automata is quite difficult. Even for the simple class of linear hybrid automata, the reachability problem is undecidable. In the author's previous work, for linear hybrid automata we proposed a linear programming based approach to check one path at a time while the length of the path and the size of the automaton being checked can be large enough to handle problems of practical interest. Based on this approach, in this paper we present a prototype tool BACH to perform bounded reachability checking of linear hybrid automata. The experiment data shows that BACH has good performance and scalability, and supports our belief that BACH could become a powerful assistant to design engineers for the reachability analysis of linear hybrid automata.
混合自动机是具有离散和连续状态变化的混合系统的形式化模型。然而,对混合自动机的分析是相当困难的。即使对于一类简单的线性混合自动机,可达性问题也是不可确定的。在作者之前的工作中,对于线性混合自动机,我们提出了一种基于线性规划的方法,每次检查一条路径,而路径的长度和被检查的自动机的大小可以大到足以处理实际问题。在此基础上,本文提出了一个用于线性混合自动机有界可达性检验的原型工具BACH。实验数据表明BACH具有良好的性能和可扩展性,支持了我们的信念,即BACH可以成为设计工程师进行线性混合自动机可达性分析的有力助手。
{"title":"BACH : Bounded ReAchability CHecker for Linear Hybrid Automata","authors":"Lei Bu, You Li, Linzhang Wang, Xuandong Li","doi":"10.1109/FMCAD.2008.ECP.13","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.13","url":null,"abstract":"Hybrid automata are well studied formal models for hybrid systems with both discrete and continuous state changes. However, the analysis of hybrid automata is quite difficult. Even for the simple class of linear hybrid automata, the reachability problem is undecidable. In the author's previous work, for linear hybrid automata we proposed a linear programming based approach to check one path at a time while the length of the path and the size of the automaton being checked can be large enough to handle problems of practical interest. Based on this approach, in this paper we present a prototype tool BACH to perform bounded reachability checking of linear hybrid automata. The experiment data shows that BACH has good performance and scalability, and supports our belief that BACH could become a powerful assistant to design engineers for the reachability analysis of linear hybrid automata.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116967777","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 38
A Write-Based Solver for SAT Modulo the Theory of Arrays 一种基于写的SAT模阵列理论求解器
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.18
Miquel Bofill, R. Nieuwenhuis, Albert Oliveras, Enric Rodríguez-carbonell, A. Rubio
The extensional theory of arrays is one of the most important ones for applications of SAT modulo theories (SMT) to hardware and software verification. Here we present a new T-solver for arrays in the context of the DPLL(T) approach to SMT. The main characteristics of our solver are: (i) no translation of writes into reads is needed, (ii) there is no axiom instantiation, and (iii) the T-solver interacts with the Boolean engine by asking to split on equality literals between indices. Unlike most state-of-the-art array solvers, it is not based on a lazy instantiation of the array axioms. This novelty might make it more convenient to apply this solver in some particular environments. Moreover, it is very competitive in practice, specially on problems that require heavy reasoning on array literals.
阵列的可拓理论是将SAT模理论应用于硬件和软件验证的重要理论之一。在这里,我们提出了一种新的T-求解器,用于阵列的DPLL(T)方法的SMT。我们的求解器的主要特点是:(i)不需要将写转换为读,(ii)没有公理实例化,以及(iii) t -求解器通过要求在索引之间拆分相等字面量来与布尔引擎交互。与大多数最先进的数组求解器不同,它不是基于数组公理的惰性实例化。这种新颖性可能会使在某些特定环境中应用该求解器更加方便。此外,它在实践中非常有竞争力,特别是在需要对数组字面量进行大量推理的问题上。
{"title":"A Write-Based Solver for SAT Modulo the Theory of Arrays","authors":"Miquel Bofill, R. Nieuwenhuis, Albert Oliveras, Enric Rodríguez-carbonell, A. Rubio","doi":"10.1109/FMCAD.2008.ECP.18","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.18","url":null,"abstract":"The extensional theory of arrays is one of the most important ones for applications of SAT modulo theories (SMT) to hardware and software verification. Here we present a new T-solver for arrays in the context of the DPLL(T) approach to SMT. The main characteristics of our solver are: (i) no translation of writes into reads is needed, (ii) there is no axiom instantiation, and (iii) the T-solver interacts with the Boolean engine by asking to split on equality literals between indices. Unlike most state-of-the-art array solvers, it is not based on a lazy instantiation of the array axioms. This novelty might make it more convenient to apply this solver in some particular environments. Moreover, it is very competitive in practice, specially on problems that require heavy reasoning on array literals.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121818041","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 19
Symbolic Program Analysis Using Term Rewriting and Generalization 使用术语重写和泛化的符号程序分析
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.23
Nishant Sinha
Symbolic execution by James C. King (1976) is a popular program verification technique, where the program inputs are initialized to unknown symbolic values, and then propagated along program paths with the help of decision procedures. This technique has two main bottlenecks: (a) the number of program execution paths to be explored may be exponential, and, (b) the state representation (map from variables to terms) may blow-up. We propose a new program verification technique that addresses the problems by (a) performing a work list based analysis that handles join points, and (b) simplifying the intermediate state representation by using term rewriting. In addition, our technique tries to compact expressions generated during analysis of program loops by using a term generalization technique based on anti-unification. We have implemented the proposed method in the F-SOFT verification framework using the Maude term rewriting engine. Preliminary experiments show that the proposed method is effective in improving verification times on real-life benchmarks.
James C. King(1976)的符号执行是一种流行的程序验证技术,其中程序输入被初始化为未知的符号值,然后在决策过程的帮助下沿着程序路径传播。这种技术有两个主要瓶颈:(a)要探索的程序执行路径的数量可能是指数级的,(b)状态表示(从变量到项的映射)可能会爆炸。我们提出了一种新的程序验证技术,通过(a)执行基于工作列表的分析来处理连接点,以及(b)通过使用术语重写来简化中间状态表示来解决这些问题。此外,我们的技术尝试使用基于反统一的术语泛化技术来压缩程序循环分析过程中生成的表达式。我们使用Maude术语重写引擎在F-SOFT验证框架中实现了所提出的方法。初步实验表明,该方法可以有效地提高实际基准测试的验证时间。
{"title":"Symbolic Program Analysis Using Term Rewriting and Generalization","authors":"Nishant Sinha","doi":"10.1109/FMCAD.2008.ECP.23","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.23","url":null,"abstract":"Symbolic execution by James C. King (1976) is a popular program verification technique, where the program inputs are initialized to unknown symbolic values, and then propagated along program paths with the help of decision procedures. This technique has two main bottlenecks: (a) the number of program execution paths to be explored may be exponential, and, (b) the state representation (map from variables to terms) may blow-up. We propose a new program verification technique that addresses the problems by (a) performing a work list based analysis that handles join points, and (b) simplifying the intermediate state representation by using term rewriting. In addition, our technique tries to compact expressions generated during analysis of program loops by using a term generalization technique based on anti-unification. We have implemented the proposed method in the F-SOFT verification framework using the Maude term rewriting engine. Preliminary experiments show that the proposed method is effective in improving verification times on real-life benchmarks.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126358926","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 21
Going with the Flow: Parameterized Verification Using Message Flows 随大流:使用消息流的参数化验证
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.14
Muralidhar Talupur, M. Tuttle
A message flow is a sequence of messages sent among processors during the execution of a protocol, usually illustrated with something like a message sequence chart. Protocol designers use message flows to describe and reason about their protocols. We show how to derive high-quality invariants from message flows and use these invariants to accelerate a state-of-the-art method for parameterized protocol verification called the CMP method. The CMP method works by iteratively strengthening and abstracting a protocol. The labor-intensive portion of the method is finding the protocol invariants needed for each iteration. We provide a new analysis of the CMP method proving it works with any sound abstraction procedure. This facilitates the use of a new abstraction procedure tailored to our protocol invariants in the CMP method. Our experience is that message-flow derived invariants get to the heart of protocol correctness in the sense that only couple of additional invariants are needed for the CMP method to converge.
消息流是在协议执行期间在处理器之间发送的消息序列,通常用消息序列图来表示。协议设计者使用消息流来描述和推理他们的协议。我们将展示如何从消息流中获得高质量的不变量,并使用这些不变量来加速一种最先进的参数化协议验证方法(称为CMP方法)。CMP方法通过迭代地加强和抽象协议来工作。该方法的劳动密集型部分是找到每次迭代所需的协议不变量。我们对CMP方法进行了新的分析,证明它适用于任何合理的抽象过程。这有助于在CMP方法中使用为我们的协议不变量量身定制的新抽象过程。我们的经验是,消息流派生的不变量是协议正确性的核心,因为CMP方法只需要几个额外的不变量就可以收敛。
{"title":"Going with the Flow: Parameterized Verification Using Message Flows","authors":"Muralidhar Talupur, M. Tuttle","doi":"10.1109/FMCAD.2008.ECP.14","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.14","url":null,"abstract":"A message flow is a sequence of messages sent among processors during the execution of a protocol, usually illustrated with something like a message sequence chart. Protocol designers use message flows to describe and reason about their protocols. We show how to derive high-quality invariants from message flows and use these invariants to accelerate a state-of-the-art method for parameterized protocol verification called the CMP method. The CMP method works by iteratively strengthening and abstracting a protocol. The labor-intensive portion of the method is finding the protocol invariants needed for each iteration. We provide a new analysis of the CMP method proving it works with any sound abstraction procedure. This facilitates the use of a new abstraction procedure tailored to our protocol invariants in the CMP method. Our experience is that message-flow derived invariants get to the heart of protocol correctness in the sense that only couple of additional invariants are needed for the CMP method to converge.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"104 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128188559","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 63
BackSpace: Formal Analysis for Post-Silicon Debug 退格:后硅调试的形式化分析
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.9
F. M. D. Paula, Marcel Gort, A. Hu, S. Wilton, Jin Yang
Post-silicon debug is the problem of determining what's wrong when the fabricated chip of a new design behaves incorrectly. This problem now consumes over half of the overall verification effort on large designs, and the problem is growing worse. We introduce a new paradigm for using formal analysis, augmented with some on-chip hardware support, to automatically compute error traces that lead to an observed buggy state, thereby greatly simplifying the post-silicon debug problem. Our preliminary simulation experiments demonstrate the potential of our approach: we can "backspace" hundreds of cycles from randomly selected states of some sample designs. Our preliminary architectural studies propose some possible implementations and show that the on-chip overhead can be reasonable. We conclude by surveying future research directions.
后硅调试是当新设计的制造芯片行为不正确时确定错误的问题。这个问题现在消耗了大型设计的全部验证工作的一半以上,而且这个问题越来越严重。我们引入了一种新的范例,用于使用形式分析,并辅以一些片上硬件支持,以自动计算导致观察到的错误状态的错误跟踪,从而大大简化了硅后调试问题。我们的初步模拟实验证明了我们方法的潜力:我们可以从一些样本设计的随机选择状态中“退格”数百个周期。我们的初步架构研究提出了一些可能的实现,并表明片上开销是合理的。最后展望了未来的研究方向。
{"title":"BackSpace: Formal Analysis for Post-Silicon Debug","authors":"F. M. D. Paula, Marcel Gort, A. Hu, S. Wilton, Jin Yang","doi":"10.1109/FMCAD.2008.ECP.9","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.9","url":null,"abstract":"Post-silicon debug is the problem of determining what's wrong when the fabricated chip of a new design behaves incorrectly. This problem now consumes over half of the overall verification effort on large designs, and the problem is growing worse. We introduce a new paradigm for using formal analysis, augmented with some on-chip hardware support, to automatically compute error traces that lead to an observed buggy state, thereby greatly simplifying the post-silicon debug problem. Our preliminary simulation experiments demonstrate the potential of our approach: we can \"backspace\" hundreds of cycles from randomly selected states of some sample designs. Our preliminary architectural studies propose some possible implementations and show that the on-chip overhead can be reasonable. We conclude by surveying future research directions.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121607991","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 85
Optimal Constraint-Preserving Netlist Simplification 最优约束保持网表简化
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.7
J. Baumgartner, Hari Mony, A. Aziz
We consider the problem of optimal netlist simplification in the presence of constraints. Because constraints restrict the reachable states of a netlist, they may enhance logic minimization techniques such as redundant gate elimination which generally benefit from unreachability invariants. However, optimizing the logic appearing in a constraint definition may weaken its state-restriction capability, hence prior solutions have resorted to suboptimally neglecting certain valid optimization opportunities. We develop the theoretical foundation, and corresponding efficient implementation, to enable the optimal simplification of netlists with constraints. Experiments confirm that our techniques enable a significantly greater degree of redundant gate elimination than prior approaches (often greater than 2x), which has been key to the automated solution of various difficult verification problems.
考虑存在约束条件下的最优网表简化问题。由于约束限制了网表的可达状态,它们可以增强逻辑最小化技术,例如冗余门消除,这些技术通常受益于不可达不变量。然而,优化约束定义中出现的逻辑可能会削弱其状态约束能力,因此先前的解决方案会采取次优方式忽略某些有效的优化机会。我们开发了理论基础和相应的有效实现,以实现带约束的网络列表的最优简化。实验证实,我们的技术能够比以前的方法(通常大于2x)实现更大程度的冗余门消除,这是自动化解决各种困难验证问题的关键。
{"title":"Optimal Constraint-Preserving Netlist Simplification","authors":"J. Baumgartner, Hari Mony, A. Aziz","doi":"10.1109/FMCAD.2008.ECP.7","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.7","url":null,"abstract":"We consider the problem of optimal netlist simplification in the presence of constraints. Because constraints restrict the reachable states of a netlist, they may enhance logic minimization techniques such as redundant gate elimination which generally benefit from unreachability invariants. However, optimizing the logic appearing in a constraint definition may weaken its state-restriction capability, hence prior solutions have resorted to suboptimally neglecting certain valid optimization opportunities. We develop the theoretical foundation, and corresponding efficient implementation, to enable the optimal simplification of netlists with constraints. Experiments confirm that our techniques enable a significantly greater degree of redundant gate elimination than prior approaches (often greater than 2x), which has been key to the automated solution of various difficult verification problems.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121365779","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 7
A Refinement Approach to Design and Verification of On-Chip Communication Protocols 片上通信协议设计与验证的改进方法
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.22
P. Böhm, T. Melham
Modern computer systems rely more and more on on-chip communication protocols to exchange data. To meet performance requirements these protocols have become highly complex, which usually makes their formal verification infeasible with reasonable time and effort. We present a new refinement approach to on-chip communication protocols that combines design and verification together, interleaving them hand-in-hand. Our modeling framework consists of design steps and design transformations formalized as finite state machines. Given a verified design step, transformations are used to extend the system with advanced features. A design transformation ensures that the extended design is correct if the previous system is correct. This approach is illustrated by an arbiter-based master-slave communication system inspired by the AMBA high-performance bus architecture. Starting with a sequential protocol design, it is extended with pipelining and burst transfers. Transformations are generated from design constraints providing a basis for correctness-by-design of the derived system.
现代计算机系统越来越依赖于片上通信协议来交换数据。为了满足性能需求,这些协议已经变得非常复杂,这通常使得它们的形式化验证无法用合理的时间和精力进行。我们提出了一种新的改进芯片上通信协议的方法,将设计和验证结合在一起,将它们交织在一起。我们的建模框架由形式化为有限状态机的设计步骤和设计转换组成。给定一个经过验证的设计步骤,使用转换来扩展具有高级功能的系统。如果以前的系统是正确的,那么设计转换将确保扩展设计是正确的。这种方法通过受AMBA高性能总线体系结构启发的基于仲裁器的主从通信系统来说明。从顺序协议设计开始,扩展到管道和突发传输。转换是从设计约束中生成的,为派生系统的设计正确性提供了基础。
{"title":"A Refinement Approach to Design and Verification of On-Chip Communication Protocols","authors":"P. Böhm, T. Melham","doi":"10.1109/FMCAD.2008.ECP.22","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.22","url":null,"abstract":"Modern computer systems rely more and more on on-chip communication protocols to exchange data. To meet performance requirements these protocols have become highly complex, which usually makes their formal verification infeasible with reasonable time and effort. We present a new refinement approach to on-chip communication protocols that combines design and verification together, interleaving them hand-in-hand. Our modeling framework consists of design steps and design transformations formalized as finite state machines. Given a verified design step, transformations are used to extend the system with advanced features. A design transformation ensures that the extended design is correct if the previous system is correct. This approach is illustrated by an arbiter-based master-slave communication system inspired by the AMBA high-performance bus architecture. Starting with a sequential protocol design, it is extended with pipelining and burst transfers. Transformations are generated from design constraints providing a basis for correctness-by-design of the derived system.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130975482","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 13
Verifying an Arbiter Circuit 验证仲裁器电路
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.11
Chao Yan, M. Greenstreet
This paper presents the verification of an asynchronous arbiter modeled at the circuit level with non-linear ordinary differential equations. We use Brockett's annulus to represent the allowed families of continuous waveforms for input and output signals and show that the metastability filter of the arbiter can be understood as a "Brockett annulus transformer." Improvements to the Coho verification tool are described that reduce the over approximation errors when working with non- convex reachable regions. The verification shows that the arbiter observes a four-phase handshake protocol with its clients and maintains mutual exclusion. We also show several liveness properties including bounded time response to uncontested requests and that grants are issued fairly.
本文给出了用非线性常微分方程在电路级建模的异步仲裁器的验证。我们使用Brockett环空来表示输入和输出信号允许的连续波形族,并表明仲裁器的亚稳滤波器可以理解为“Brockett环空变压器”。描述了对Coho验证工具的改进,减少了处理非凸可达区域时的过逼近误差。验证表明,仲裁器与客户端遵循四阶段握手协议,并保持互斥。我们还展示了几个动态属性,包括对无争议请求的有限时间响应,以及公平发放赠款。
{"title":"Verifying an Arbiter Circuit","authors":"Chao Yan, M. Greenstreet","doi":"10.1109/FMCAD.2008.ECP.11","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.11","url":null,"abstract":"This paper presents the verification of an asynchronous arbiter modeled at the circuit level with non-linear ordinary differential equations. We use Brockett's annulus to represent the allowed families of continuous waveforms for input and output signals and show that the metastability filter of the arbiter can be understood as a \"Brockett annulus transformer.\" Improvements to the Coho verification tool are described that reduce the over approximation errors when working with non- convex reachable regions. The verification shows that the arbiter observes a four-phase handshake protocol with its clients and maintains mutual exclusion. We also show several liveness properties including bounded time response to uncontested requests and that grants are issued fairly.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134478426","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 15
Automatic Non-Interference Lemmas for Parameterized Model Checking 参数化模型检验的自动无干扰引理
Pub Date : 2008-11-17 DOI: 10.1109/FMCAD.2008.ECP.15
Jesse D. Bingham
Parameterized model checking refers to any method that extends traditional, finite-state model checking to handle systems with an arbitrary number of processes. One popular approach to this problem uses abstraction and so-called guard strengthening. Here a small number of processes remain intact, while the rest are abstracted away. This initially causes counter-examples, but the user can write non-interference lemmas, which eliminate spurious behavior by the abstracted processes. The technique is sound in that if the user writes a lemma that is not invariant, the proof will never succeed. Though the non-interference lemmas are typically much simpler than writing a full inductive invariant, there is still a non-trivial amount of human insight needed to analysis counter-examples and concoct the lemmas. In our work, we show how the process of inferring appropriate non-interference lemmas can be automated. Our approach is based on a very general theory that simply assumes a Galois connection between the concrete and abstract systems. Effectively, we start with the non-interference conjecture false, and iteratively weaken it until it is provable using the Galois connection. This produces the strongest non-interference lemma provable in the Galois connection. Hence, if the approach fails to prove the property, then no human lemma would help, since it is the strongest possible lemma. We instantiate this theory to a class of symmetric parameterized systems, and show how BDDs can be used to perform all involved computations. We also show how BDD-blow up that can arise when concretizing can be mitigated by using a sound over-approximation. We successfully applied the resulting tool to three parameterized verification benchmarks: the GERMAN protocol with data path, the GERMAN2004 protocol, and the FLASH protocol. To our knowledge, this is the first time automatic parameterized model checking has been done on GERMAN2004.
参数化模型检查是指将传统的有限状态模型检查扩展到处理具有任意数量进程的系统的任何方法。解决这个问题的一个流行方法是使用抽象和所谓的保护强化。在这里,少数流程保持完整,而其余的则被抽象掉。这最初会导致反例,但用户可以编写无干扰引理,通过抽象过程消除虚假行为。这种技术是合理的,因为如果用户写的引理不是不变的,那么证明就永远不会成功。尽管非干涉引理通常比编写一个完整的归纳不变量简单得多,但仍然需要大量的人类洞察力来分析反例和编造引理。在我们的工作中,我们展示了如何自动推断适当的非干扰引理的过程。我们的方法是基于一个非常普遍的理论,简单地假设在具体系统和抽象系统之间存在伽罗瓦联系。有效地,我们从非干涉猜想假开始,迭代地削弱它,直到它被证明使用伽罗瓦连接。这产生了伽罗瓦连接中最强的可证明的不干扰引理。因此,如果该方法不能证明该性质,那么没有任何人类引理可以帮助,因为它是最强的可能引理。我们将这一理论实例化为一类对称参数化系统,并展示了如何使用bdd来执行所有涉及的计算。我们还展示了如何通过使用合理的过度近似来减轻具体化时可能出现的bdd爆炸。我们成功地将结果工具应用于三个参数化验证基准:带有数据路径的GERMAN协议、GERMAN2004协议和FLASH协议。据我们所知,这是第一次在GERMAN2004上进行自动参数化模型检查。
{"title":"Automatic Non-Interference Lemmas for Parameterized Model Checking","authors":"Jesse D. Bingham","doi":"10.1109/FMCAD.2008.ECP.15","DOIUrl":"https://doi.org/10.1109/FMCAD.2008.ECP.15","url":null,"abstract":"Parameterized model checking refers to any method that extends traditional, finite-state model checking to handle systems with an arbitrary number of processes. One popular approach to this problem uses abstraction and so-called guard strengthening. Here a small number of processes remain intact, while the rest are abstracted away. This initially causes counter-examples, but the user can write non-interference lemmas, which eliminate spurious behavior by the abstracted processes. The technique is sound in that if the user writes a lemma that is not invariant, the proof will never succeed. Though the non-interference lemmas are typically much simpler than writing a full inductive invariant, there is still a non-trivial amount of human insight needed to analysis counter-examples and concoct the lemmas. In our work, we show how the process of inferring appropriate non-interference lemmas can be automated. Our approach is based on a very general theory that simply assumes a Galois connection between the concrete and abstract systems. Effectively, we start with the non-interference conjecture false, and iteratively weaken it until it is provable using the Galois connection. This produces the strongest non-interference lemma provable in the Galois connection. Hence, if the approach fails to prove the property, then no human lemma would help, since it is the strongest possible lemma. We instantiate this theory to a class of symmetric parameterized systems, and show how BDDs can be used to perform all involved computations. We also show how BDD-blow up that can arise when concretizing can be mitigated by using a sound over-approximation. We successfully applied the resulting tool to three parameterized verification benchmarks: the GERMAN protocol with data path, the GERMAN2004 protocol, and the FLASH protocol. To our knowledge, this is the first time automatic parameterized model checking has been done on GERMAN2004.","PeriodicalId":399042,"journal":{"name":"2008 Formal Methods in Computer-Aided Design","volume":"186 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-11-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132033935","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 13
期刊
2008 Formal Methods in Computer-Aided Design
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1