{"title":"A testbench specification language for SystemC verification","authors":"G. D. Guglielmo, G. Pravadelli","doi":"10.1145/2380445.2380499","DOIUrl":null,"url":null,"abstract":"Testing of embedded systems, operating in the real environment, is generally performed by using an industrial test bench that stimulates the system through sensors and human-machine interfaces. The test bench provides the engineers with a set of tools for reproducing the environmental conditions which may affect the system. On the contrary, a different approach is adopted at the early stages of the design flow, when system level languages, like SystemC, are used to describe the functionality of the design. At this level, stimuli for testing the design are traditionally generated in a random or statistical way, which makes more difficult to capture well-specific behaviors of the considered environment, thus decreasing the effectiveness and the efficiency of the verification. This is particularly evident for dynamic assertion-based verification where, to avoid vacuous passes of assertions, stimuli must reflect specific scenarios to activate the assertions. In this work, we propose a graphical framework to automatically generate stimuli, particularly suited to be used for dynamic ABV of embedded SW. The framework relies on the definition of a Testbench Specification Language (TSL) that allows to formally capture the behavior of the real environment where embedded SW is intended to be executed, i.e., how input values evolve on time intervals. Then, the framework allows to automatically synthesize TSL descriptions into SystemC-based stimuli generators, which exploit and extend the functionality of the SystemC Verification Library.","PeriodicalId":268500,"journal":{"name":"Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-10-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2380445.2380499","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
Abstract
Testing of embedded systems, operating in the real environment, is generally performed by using an industrial test bench that stimulates the system through sensors and human-machine interfaces. The test bench provides the engineers with a set of tools for reproducing the environmental conditions which may affect the system. On the contrary, a different approach is adopted at the early stages of the design flow, when system level languages, like SystemC, are used to describe the functionality of the design. At this level, stimuli for testing the design are traditionally generated in a random or statistical way, which makes more difficult to capture well-specific behaviors of the considered environment, thus decreasing the effectiveness and the efficiency of the verification. This is particularly evident for dynamic assertion-based verification where, to avoid vacuous passes of assertions, stimuli must reflect specific scenarios to activate the assertions. In this work, we propose a graphical framework to automatically generate stimuli, particularly suited to be used for dynamic ABV of embedded SW. The framework relies on the definition of a Testbench Specification Language (TSL) that allows to formally capture the behavior of the real environment where embedded SW is intended to be executed, i.e., how input values evolve on time intervals. Then, the framework allows to automatically synthesize TSL descriptions into SystemC-based stimuli generators, which exploit and extend the functionality of the SystemC Verification Library.
嵌入式系统的测试,在真实环境中运行,通常是通过使用工业测试台,通过传感器和人机界面刺激系统进行的。试验台为工程师提供了一套重现可能影响系统的环境条件的工具。相反,在设计流程的早期阶段采用不同的方法,这时使用系统级语言(如SystemC)来描述设计的功能。在这个层次上,用于测试设计的刺激通常以随机或统计的方式生成,这使得捕获所考虑的环境的特定行为变得更加困难,从而降低了验证的有效性和效率。这对于动态的基于断言的验证尤其明显,为了避免断言的空洞传递,刺激必须反映特定的场景来激活断言。在这项工作中,我们提出了一个图形框架来自动生成刺激,特别适合用于嵌入式软件的动态ABV。该框架依赖于Testbench Specification Language (TSL)的定义,TSL允许正式捕获实际环境的行为,其中嵌入式软件打算被执行,也就是说,输入值如何在时间间隔上演变。然后,该框架允许自动将TSL描述合成为基于SystemC的刺激生成器,该生成器利用并扩展了SystemC验证库的功能。