R. Hojati, R. Mueller-Thuns, P. Loewenstein, R. Brayton
{"title":"Automatic verification of memory systems which service their requests out of order","authors":"R. Hojati, R. Mueller-Thuns, P. Loewenstein, R. Brayton","doi":"10.1109/ASPDAC.1995.486379","DOIUrl":null,"url":null,"abstract":"In a shared memory multi-processor environment, one can achieve greater performance by out-of-order servicing of memory requests. Although this results in higher performance, such systems are complicated and their design and programming requires care. Recently, there have been efforts to develop concise formal specifications of such systems. We present a general strategy, based on the language containment paradigm, to automatically verify such memory systems against their formal specifications. The size of the state space explored during the verification is dependent on the number of data values, length of buffers, number of processors, and number of memory locations. Abstraction is used to reduce the number of data values to just two, and the number of memory locations to a small number without losing any accuracy in our verification. As an example, we concentrate on SPARC's V8 memory model, for which we have built a sample hardware description language model. Experimental results demonstrating the feasibility of our approach are presented.","PeriodicalId":119232,"journal":{"name":"Proceedings of ASP-DAC'95/CHDL'95/VLSI'95 with EDA Technofair","volume":"35 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1995-08-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of ASP-DAC'95/CHDL'95/VLSI'95 with EDA Technofair","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASPDAC.1995.486379","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8
Abstract
In a shared memory multi-processor environment, one can achieve greater performance by out-of-order servicing of memory requests. Although this results in higher performance, such systems are complicated and their design and programming requires care. Recently, there have been efforts to develop concise formal specifications of such systems. We present a general strategy, based on the language containment paradigm, to automatically verify such memory systems against their formal specifications. The size of the state space explored during the verification is dependent on the number of data values, length of buffers, number of processors, and number of memory locations. Abstraction is used to reduce the number of data values to just two, and the number of memory locations to a small number without losing any accuracy in our verification. As an example, we concentrate on SPARC's V8 memory model, for which we have built a sample hardware description language model. Experimental results demonstrating the feasibility of our approach are presented.