一种用于超大规模芯片仿真的自适应随机验证方法

文档序号:8361329阅读:362来源:国知局
一种用于超大规模芯片仿真的自适应随机验证方法
【技术领域】
[0001]本发明涉及计算机芯片技术领域,具体地说是一种实用性强、用于超大规模芯片仿真的自适应随机验证方法。
【背景技术】
[0002]随着服务器应用领域的不断发展,高端服务器的应用需求已经进入了一个重要阶段。复杂的体系结构实现支持尚端服务器系统实现尚性能指标、尚安全性、尚可用性、尚可靠性等特点。这就需要网络控制类芯片控制多路处理器系统,使系统内部报文传输达到高效可靠、安全稳定。而对于该类控制芯片构建的多芯片系统的仿真验证来说,采用随机验证的方式必不可少,而随机的策略的选择和随着验证过程适当调整决定了随机验证的效率。
[0003]传统上,对于随机策略的选择,都是通过验证人员对于每次仿真的结果进行分析,人工地对随机策略进行取舍和调整,或者干脆直接盲目地选择多种甚至全部的随机策略进行轮流尝试。这两种做法都存在平均效率低下的问题,特别是在随着待验证系统变得庞大,待验证目标变得复杂的同时,对仿真所需的人力和计算资源的要求都会呈几何级数爆炸性增长。
[0004]基于此,现提供一种用于超大规模芯片仿真的自适应随机验证方法,将激励按组进行统一的参数化,参数的选择实际上就代表了随机策略的选择和调整,以验证目标规定的覆盖率作为评判标准,自动生成下一轮随机验证的随机策略,在提高了随机验证总体的效率的同时,减少了验证人员需要进行的工作,更有效地利用了资源。

【发明内容】

[0005]本发明的技术任务是针对以上不足之处,提供一种实用性强、用于超大规模芯片仿真的自适应随机验证方法。
[0006]一种用于超大规模芯片仿真的自适应随机验证方法,其具体实现过程为:
首先定义用于表示每组激励的属性向量,以及对应每个值的取值范围;
随机生成若干属性向量,并以这些属性向量作为随机激励生成的参数,生成多组具有对应特征的随机激励序列;
将多组随机激励序列进行仿真验证,分别统计仿真验证中对验证目标的覆盖率;
对每组随机激励序列的覆盖率结果与之前总的覆盖率结果进行比对,以此作为评价这组随机激励的效率的标准;
结合多组随机激励序列的效率结果,将各个属性向量进行排序,通过排序后的结果,对属性向量的值进行加权的随机,生成新的属性向量;
反复迭代,直到验证目标充分覆盖或者覆盖率增长出现停滞,结束验证过程。
[0007]所述用属性向量来表示激励是指对于激励组的特征用量化的方式进行描述,这里的激励组特征包括激励个数、激励间隔时间、激励类型。
[0008]所述生成多组随机激励序列的详细过程为:属性向量中的各个值根据可能的取值范围进行随机,生成多个新的属性向量,并按照新的属性向量生成相对应的激励组。
[0009]所述覆盖率包括代码覆盖率、功能覆盖率和/或关键路径覆盖率。
[0010]所述覆盖率比对是指将多组随机激励序列的覆盖率结果分别与该多组随机激励序列仿真前的总的覆盖率进行比对,得出不同组激励对于当前覆盖率增长的贡献,从而作为评价该组激励的效率的标准。
[0011]对属性向量的值进行加权的随机是指加大高效率的激励组的属性向量值出现的概率,减小低效率的属性向量值的概率,随机生成多组新的属性向量,并按照新的属性向量生成想对应的激励组,进行下一轮的仿真验证。
[0012]本发明的一种用于超大规模芯片仿真的自适应随机验证方法,具有以下优点:
本发明提出的一种用于超大规模芯片仿真的自适应随机验证方法,用统一化的参数表示激励,参数的选择实际上就代表了随机策略的选择和调整,以验证目标规定的覆盖率作为评判标准,自动生成下一轮随机验证的随机策略;以上过程,包括对覆盖率的统计和记录比对,都可以尽可能地实现自动化,这样,在提高了随机验证总体的效率,减少了对计算资源的浪费的同时,减少了验证人员需要进行的工作,更有效地利用了人力资源,实用性强,易于推广。
【附图说明】
[0013]附图1为本发明的实现流程图。
【具体实施方式】
[0014]下面结合附图和具体实施例对本发明作进一步说明。
[0015]本发明考虑到对于超大规模芯片仿真验证的需求,采用自适应选择随机策略的方式进行随机验证。具体做法为在随机验证过程中,以不同的属性向量作为随机激励生成的参数,生成多组具有对应特征的随机激励序列。通过对每组随机激励序列的覆盖率结果与之前总的覆盖率结果进行比对,将各个属性向量进行排序,通过排序后的结果,对属性的值进行加权的随机,生成新的属性向量作为随机激励的参数。这样反复迭代,直到验证目标充分覆盖或者覆盖率增长出现停滞。
[0016]现提供一种用于超大规模芯片仿真的自适应随机验证方法,该方法中,考虑到在超大规模的芯片系统验证中对随机验证效率的要求,在随机验证过程中,基于对代码中覆盖率的统计和分析,自动调整随机激励生成策略,从而提高随机验证在超大规模芯片仿真中的效率。
[0017]如附图1所示,该方法的具体实现过程为:
首先定义用于表示每组激励的属性向量,以及对应每个值的取值范围;
随机生成若干属性向量,并以这些属性向量作为随机激励生成的参数,生成多组具有对应特征的随机激励序列;
将多组随机激励序列进行仿真验证,分别统计仿真验证中对验证目标的覆盖率;
对每组随机激励序列的覆盖率结果与之前总的覆盖率结果进行比对,以此作为评价这组随机激励的效率的标准;
结合多组随机激励序列的效率结果,将各个属性向量进行排序,通过排序后的结果,对属性向量的值进行加权的随机,生成新的属性向量;
反复迭代,直到验证目标充分覆盖或者覆盖率增长出现停滞,结束验证过程。
[0018]所述用属性向量来表示激励是指对于激励组的特征用量化的方式进行描述,这里的激励组特征包括激励个数、激励间隔时间、激励类型等信息,将这组量化的值放入统一化的向量中,可以用于表示特
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1