一种基于测试向量乱序和丢弃行为的验证方法与流程

文档序号:18358515发布日期:2019-08-06 23:29阅读:395来源:国知局
一种基于测试向量乱序和丢弃行为的验证方法与流程

本发明涉及一种芯片测试技术,尤其是涉及一种基于测试向量乱序和丢弃行为的验证方法。



背景技术:

当前的测试流程和技术中,存在由于测试向量乱序和丢弃导致dut(designundertest,待测设计)输出结果与参考模型输出结果无法一一比对的问题。

针对上述问题,通常要求参考模型严格参照dut设计架构,通过模拟dut的乱序和丢弃行为从而达到两者输出结果的一致性。但是这种方案存在以下缺点:1、dut的设计架构复杂程度直接影响到参考模型的复杂程度;2、验证人员很容易跟着设计人员的思路去设计用于测试的参考模型,存在测试盲区;3、dut和参考模型,两者耦合性过高,dut设计架构的一点点改动可能导致现有参考模型的不可用;4、面对特别复杂和特殊的设计来说,参考模型存在无法完全模拟的情况,需要偷取dut内部信号作为部分逻辑的启动条件,而这些被偷取的信号便存在测试遗漏的风险。



技术实现要素:

本发明的目的在于克服现有技术的缺陷,提供一种基于测试向量乱序和丢弃行为的验证方法。

为实现上述目的,本发明提出如下技术方案:一种基于测试向量乱序和丢弃行为的验证方法,所述乱序包括调度乱序和流水线乱序,所述验证方法包括:

s1,基于测试向量分组法的调度乱序验证过程;

s2,基于测试向量特征值的流水线乱序验证过程;

s3,基于测试向量特征值的丢弃验证过程。

优选地,所述s1包括:

s11,记分板将接收的参考模型的测试向量分组,存入对应的队列中;

s12,记分板在接收到dut的测试向量后,从所述队列中找到需要比较的测试向量,进行dut的测试向量和参考模型的测试向量的比较。

优选地,s11中,记分板按照调度算法的基准将参考模型的测试向量分组,所述调度算法的基准包括通道号、优先级标识。

优选地,记分板从所述dut的测试向量中找到对应的队列标识,所述队列标识包括通道号、优先级标识,根据所述队列标识从队列中取出对应需要比较的参考模型的测试向量。

优选地,所述s2包括:

s21,激励发生器产生测试向量时,为每个所述测试向量插入一个唯一标识所述向量的向量特征值;

s22,从参考模型的乱序队列或普通队列中取出需要比较的测试向量,将所述测试向量与dut输出的测试向量中的所述向量特征值比较,确认这两个测试向量是否匹配;

s23,若匹配通过,则进一步比较dut输出的测试向量中除向量特征值外的其他内容,进入步骤s24,若匹配不通过,则将参考模型输出的测试向量存储到乱序队列中;

s24,若比较通过,则进行dut输出的下一测试向量的比较,并返回步骤s22,否则测试不通过,仿真停止。

优选地,所述s22包括:

s221,判断乱序队列是否为空,若不为空,则从乱序队列中取出需要比较的测试向量,若为空,则进入步骤s222;

s222,判断普通队列是否为空,若不为空,则从普通队列中取出需要比较的测试向量,若为空,则仿真异常退出;

s223,将从乱序队列或普通队列中取出的测试向量与dut输出的测试向量中的向量特征值比较,确认这两个测试向量是否匹配。

优选地,s24,仿真停止后,打印出两个测试向量的内容。

优选地,所述s3包括:

s31,激励发生器产生测试向量时,为每个所述测试向量插入一个唯一标识所述向量的向量特征值;

s32,从参考模型的乱序队列或普通队列中取出需要比较的测试向量,将所述测试向量与dut输出的测试向量中的所述向量特征值比较,确认这两个测试向量是否匹配;

s33,若匹配通过,则进一步比较dut输出的测试向量中除向量特征值外的其他内容,进入步骤s34,若匹配不通过,则将参考模型输出的测试向量进行丢弃,返回步骤s32;

s34,若比较通过,则进行dut输出的下一测试向量的比较,并返回步骤s32,否则测试不通过,仿真停止。

优选地,所述s32包括:

s321,判断乱序队列是否为空,若不为空,则从乱序队列中取出需要比较的测试向量,若为空,则进入步骤s322;

s322,判断普通队列是否为空,若不为空,则从普通队列中取出需要比较的测试向量,若为空,则仿真异常退出;

s323,将从乱序队列或普通队列中取出的测试向量与dut输出的测试向量中的向量特征值比较,确认这两个测试向量是否匹配。

优选地,s34,仿真停止后,打印出两个测试向量的内容。

本发明的有益效果是:本发明通过标记测试向量特性值,测试向量合理分组,记录测试向量丢弃信息等方法,有效地解决了芯片测试中测试向量乱序和丢弃所引起地记分板比对失效的问题,同时,解决了传统方法中带来的参考模型复杂度高,与dut过于耦合等问题。

附图说明

图1是通用的测试平台架构的结构示意图;

图2是本发明方法的示意图;

图3是本发明步骤s1的流程示意图;

图4是本发明步骤s2的流程示意图;

图5是本发明步骤s3的流程示意图。

具体实施方式

下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。

首先,需要说明下哪些场景下会出现测试向量的乱序和丢弃问题,其中,乱序场景:dut内部存在调度逻辑,针对不同的测试向量会采用不同的调度权重和优先级,则会出现先入的测试向量后出,后入的测试向量先出的情况;dut内部存在并行的不同延时的流水线设计,则当先入的测试向量走延时较大的流水线逻辑,后入的测试向量走延时较小的流水线逻辑,则乱序情况就出现了。丢弃行为:dut会先将接收到的测试向量存储下来,然后发送给后续模块,当后续模块接收能力有限时就会存在接收拥堵的情况,当达到存储上限时便出现了测试向量被丢弃的情况;或者,dut内部存在出错判断逻辑,当逻辑检查到测试向量存在异常,或处理流程中出现异常(如存储单元的奇偶校验码parity/错误检查和纠正ecc错误),都可能存在直接将对应的测试向量丢弃的情况。

通用的测试平台架构如图1所示,由激励发生器、dut(designundertest,待测设计)、参考模型、记分板所组成,其中,激励发生器负责模拟前级模块发送的测试向量,dut是待测的rtl(registertransferlevel,寄存器传输级)模块,参考模型用于模拟dut的基本功能,记分板分别接收dut和参考模型所输出的结果,如果比较结果一致则测试通过,否则测试不通过。

结合图2所示,本发明所揭示的一种基于测试向量乱序和丢弃行为的验证方法,包括:

s1,基于测试向量分组法的调度乱序验证过程。

具体地,如图3所示,首先明确dut中的调度算法,记分板在接收到参考模型输出的测试向量后,按照调度算法的基准进行分组,比如通道号、优先级标识等,存入对应的队列中;当记分板接收到dut输出的测试向量后,根据dut的测试向量中的队列标识从对应队列中找出需要比较的参考模型的测试向量进行比对,从而解决乱序的问题。首先,从dut输出的测试向量中找到对应的队列标识,比如通道号,根据该通道号,从对应编号的比较队列中取出需要比较的参考模型的测试向量,进行dut的测试向量和参考模型的测试向量的向量比较。

s2,基于测试向量特征值的流水线乱序验证过程。

具体地,该步骤是针对并行的不同延时的流水线设计引起的乱序行为,采用测试向量特征值的方法。测试向量特征值是指在激励发生器产生测试向量(即激励)时,为每一个测试向量插入一个唯一标识该向量的向量特征值。进行测试向量比对时,本实施例中,如图4所示,包括以下步骤:

步骤1:判断从参考模型的乱序队列是否为空;

步骤2:如果乱序队列不为空,则从乱序队列中取出需要比较的测试向量,进入步骤6;

步骤3:如果乱序队列为空,则判断普通队列是否为空;

步骤4:如果普通队列不为空,则从普通队列中取出需要比较的测试向量,进入步骤6;

步骤5:如果普通队列为空,仿真异常退出;

步骤6:根据乱序队列或者普通队列取出的测试向量和dut输出的测试向量中的向量特征值比较,来确认这两个测试向量是否匹配;

步骤7:如果匹配通过,则进一步比较dut输出的测试向量中除向量特征值外的其他内容;

步骤8:如果匹配不通过,则将参考模型输出的测试向量存储到乱序队列中,乱序队列用于存储向量特征值比较不通过留待后续比较的测试向量,提高比较效率。

步骤9:比较通过,则进行下一个测试向量的比较,返回步骤1;

步骤10:比较不通过,则仿真停止,打印出两个向量的详细内容。

s3,基于测试向量特征值的丢弃验证过程。

具体地,针对测试向量的丢弃问题,本发明也采用测试向量特征值的方法,同时记录测试向量丢弃信息,在测试结束时与dut内部的丢弃信息进行对比作为辅助比对方法。如图5所示,具体包括以下步骤:

步骤1:判断普通队列是否为空,如果队列不为空,则从普通队列中取出需要比较的测试向量,进入步骤3。

步骤2:如果普通队列为空,则仿真异常退出。

步骤3:根据普通队列中取出的测试向量和dut输出的测试向量中的向量特征值比较,来确认这两个测试向量是否匹配。

步骤4:如果匹配通过,则进一步比较dut输出的测试向量中除向量特征值外的其他向量内容,进入步骤6。

步骤5:如果匹配不通过,则将参考模型输出的测试向量进行丢弃,返回步骤1。

步骤6:比较通过,则进行下一个测试向量的比较,返回步骤1。

步骤7:比较不通过,则仿真停止,打印出两个向量的详细内容。

本发明通过标记测试向量特性值,测试向量合理分组,记录测试向量丢弃信息等方法,有效地解决了芯片测试中测试向量乱序和丢弃所引起地记分板比对失效的问题,同时,解决了传统方法中带来的参考模型复杂度高,与dut过于耦合等问题。

本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的教示及揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1