We use cookies to improve your experience with our site.

基于可观测性语句覆盖准则的评估分析与激励生成方法

An Efficient Evaluation and Vector Generation Method for Observability-Enhanced Statement Coverage

  • 摘要: 可观测性覆盖准则是一种从行为角度对模拟激励进行评估的准则,是对传统覆盖准则的增强。传统的覆盖准则只考虑代码的可控制性,忽略其可观测性,这些准则保证了代码会执行,但其执行错误并不一定可以反映到验证者所选定的观测点上。这可能导致表面上很高的覆盖率数据所蕴含的可信度不高。鉴于此,可观测性覆盖准则被提了出来。可观测性语句覆盖率并不像传统的语句覆盖率那样过于乐观,它不仅评估代码是否被执行,而且检验被激励激活的那些潜在错误的影响是否可以传播到观测点,该准则可以更确切地评估验证的力度。然而,目前可观测性覆盖评估技术有很大局限性:一方面已有的可观测性覆盖评估方法的计算复杂度高,时间开销大;另一方面已有的针对可观测性覆盖评估准则的激励生成算法效率不高。 针对上述问题,本文开展以下工作: 1) 提出一种精确简练的可观测性信息模型。首先提出增强型进程控制树,该结构可以清晰地表征每一时间帧语句的执行情况,以及截止到该时间帧,语句的可观测性情况。 在此基础上采用控制 - 观测链来记录在具体每一时间帧扩展过程中,变量以及语句的可观测性信息。具体来说,一个变量 v ,在某一时间帧 t 的控制 - 观测链,就是由所有在时间帧 t ,对 v 的取值产生影响的赋值关系所形成的集合。 2) 提出一种新的可观测性覆盖分析方法。该方法,主要包括两个阶段: a ) 向量 模拟阶段,这是一个从输入到输出的 “ 正向 ” 过程,该阶段的主要工作是刷新增强型进程控制树中 的相关域,进而确定在该时间帧,每一个观测点的控制 - 观测链; b ) 可观测性分析阶段,这是一个从观测点出发, “ 反向 ” 分析控制 - 观测链,进而判断变量以及语句可观测性的过程。该方法采用变量的赋值和引用作为可观测性分析的基础,可以很容易地与其它考虑可控制性的覆盖准则相结合。本文以可观测性语句覆盖评估准则为例,提出了计算可观测性语句覆盖率的方法。 3)提出一种新的基于可观测性语句覆盖评估准则的激励生成方法。这是一种基于模拟的方法,在模拟的开始阶段,不指定模拟激励的值,当执行到设计的一条语句时,对其类型进行判断:如果遇到赋值语句,则执行赋值操作;如果遇到条件分支语句,则以未观测语句的分布作为启发式信息,进行请求回退处理,在该过程中会指定全部或者部分输入位的值,最后对于经过以上操作,没有被赋值的输入位,指派一个随机值,得到一个模拟激励。 基于上述思想,本文实现了相应原型系统,并以 ITC-99 的部分电路为例,进行了相关实验,结果显示本文提出的方法是高效的。

     

    Abstract: Coverage evaluation is indispensable for verification via simulation. As the functional complexity of modern design is increasing at a breathtaking pace, it is requisite to take observability into account. Unfortunately, nowadays coverage metrics taking observability into account are not very satisfactory. On the one hand, for the observabilityassessment algorithms proposed up to now, the overhead of computing is large, so they could not be integrated into simulation tools easily. On the other hand, the vector generation methods involving the metrics taking observability into account are not very efficient, and there exists a disconnection between these metrics and the vector generationprocess. In this paper, some original ideas for the problems above are presented. (1) Precise and concise abstract representations from HDL (Hardware Description Language) descriptions at RTL (Register Transfer Level) are presented to model observability information. (2) A novel observability evaluation method based on the proposed models is introduced. This method is more computationally efficient than prior efforts to assess observability and it could be integrated into compilers and simulators easily. (3) A new simulation vector generation procedure involving the observability-enhanced statement coverage metric is developed. The method is simulation-based and drivenby the distribution of unobserved statements. During this procedure, the proposed algorithm always tries to cover all unobserved statements, and reduce unnecessary backtracking, so it is efficient. The methods proposed have been implemented as a prototype tool for VHDL designs, and the results on benchmarks show significant benefits.

     

/

返回文章
返回