一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用例生成方法及装置、测试方法、可测试性设计方法与流程

2021-11-05 20:49:00 来源:中国专利 TAG:


1.本技术涉及芯片测试技术领域,特别地,涉及一种用例生成方法及装置、测试方法、可测试性设计方法。


背景技术:

2.在可测试性设计(design for testability,dft)中,往往要权衡测试覆盖率和测试成本开销。而测试成本开销的增加可能由两部分组成,一部分是添加测试逻辑导致芯片的面积成本增加,另一部分是产生非最佳模式导致测试的时间成本增加。
3.对于设计中的低速模块,一般其功能频率较低,组合逻辑较大较复杂,因此综合工具会使低速模块综合出来的门级网表延时较大。且在综合阶段,综合工具会读入约束文件对低速模块进行综合,约束文件中往往定义有扫描时钟。由于扫描时钟的频率较高,而低速模块的功能频率较低,因此为了满足低速模块的功能模式的频率,同时也为了满足扫描时钟的频率,综合工具会优化低速模块的组合逻辑,优化过程中会采用驱动能力更大的门级单元来减小组合逻辑延时,而驱动能力大的门级单元相对于驱动能力小的门级单元速度会更快但其面积会更大,所以综合工具会使低速模块综合所得的面积迅速增加。而为了提升测试覆盖率,现有技术在插入扫描链的过程中添加测试点,然而这样不但会导致芯片面积有所增加,而且覆盖率却未有改善。


技术实现要素:

4.本技术实施例提供一种用例生成方法及装置、测试方法、可测试性设计方法,以改善上述问题。
5.第一方面,本技术是实施例提供一种用例生成方法。用例生成方法包括:通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;以及基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
6.第二方面,本技术实施例提供一种测试方法。测试方法应用于芯片,包括本技术实施例第一方面提供的用例生成方法。此外,测试方法还包括:基于测试用例对未封装的芯片进行测试,得到测试值;比对所述测试值与测试用例对应的预估值;以及当测试值与测试用例对应的预估值不一致时,确定未封装的芯片的测试结果不满足要求。
7.第三方面,本技术实施例提供一种可测试性设计方法。可测试性设计方法包括本技术实施例第一方面提供的用例生成方法。此外,可测试性设计方法还包括:基于测试用例进行可测试性设计仿真。
8.第四方面,本技术实施例提供一种用例生成装置。用例生成装置包括:综合模块,用于通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;文件生成模块,用于基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取模块,用于获取综合后的低速模块中捕获模式的目标频率;以及用例生成模块,用于基于目标频率修改spf文
件中的参数,并基于修改后的spf文件生成测试用例。
9.第五方面,本技术实施例提供一种设备。该设备包括:一个或多个处理器;存储器;以及一个或多个应用程序。其中,一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器调用以执行本技术各实施例提供的方法步骤。
10.本技术实施例提供的用例生成方法及装置、测试方法、可测试性设计方法,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;以及基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例,在预设约束文件中未定义扫描时钟,并通过降低低速模块的捕获模式的频率,使得低速模块和高速模块一起进行扫描测试,从而可以减小综合低速模块所得的面积,减少测试成本,还可以提升测试覆盖率。
附图说明
11.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。需要说明的是,以下描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.图1是本技术实施例提供的一种dft的设计流程的示意图。
13.图2是本技术实施例提供的一种用例生成方法的流程示意图。
14.图3是本技术另一实施例提供的一种用例生成方法的流程示意图。
15.图4是本技术一示例性实施例提供的扫描测试的部分时序图。
16.图5是本技术一实施例提供的一种测试方法的流程示意图。
17.图6是本技术一示例性实施例提供的一种测试流程的示例图。
18.图7是本技术一实施例提供的一种可测试性设计方法的流程示意图。
19.图8是本技术一实施例提供的一种用例生成装置的结构框图。
20.图9是本技术一实施例提供的一种测试装置的结构框图。
21.图10是本技术一实施例提供的一种可测试性设计装置的结构框图。
22.图11是本技术实施例提供的一种设备的结构框图。以及
23.图12是本技术实施例提供的一种计算机可读取存储介质的结构框图。
具体实施方式
24.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
25.需要说明的是,本技术实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序和先后次序。
26.请参阅表1,表1是关于本技术实施例接下来将会用到一些技术术语的说明。
27.表1
[0028][0029][0030]
在dft过程中,当待测试的模块包括低速模块和高速模块时,低速模块的功能模式的频率较低,组合逻辑较大较复杂,综合出来的门级网表延时较大。在综合低速模块时,综合工具会读入约束文件,而约束文件中往往定义了扫描时钟,而扫描时钟的频率较高。为了满足低速模块下功能模式的频率,同时也能满足扫描时钟的频率,综合工具会优化低速模块的组合逻辑,优化过程中会采用驱动能力更大的门级单元来减小组合逻辑延时。驱动能力大的门级单元相对驱动能力小的门级单元速度会更快,但驱动能力大的门级单元综合所得的面积较大,从而会增加综合所得的面积,而且测试覆盖率也不高。
[0031]
为了提升测试覆盖率,现有技术采用分别对低速模块和高速模块进行扫描测试以生成测试用例的方法。其中,对于低速模块,采用较低的测试频率;对于高速模块,采用较高的测试频率,最后再合并两个覆盖率文件。这种方法虽然可以提升dft的测试覆盖率,但是相应地会增加测试时间。此外,这种方法将同一个dft的扫描测试分开,会导致测试过程中需要多次开关电来切换测试模式,同时也使得dft的仿真和ir

drop(ir

drop是指在集成电路中电源和地网络上电压下降和升高的一种现象)分析的工作量翻倍。因此,分开来进行低速模块和高速模块的扫描测试,并不是一个较佳的解决方案。
[0032]
针对上述问题,发明人经过试验发现:在综合阶段删除扫描时钟(即不在约束文件中定义扫描时钟),由于未定义扫描时钟,会导致扫描测试下捕获模式的频率难以满足。因为一般为了来节省测试时间从而节省测试成本,扫描测试频率不会很低。对于高速模块,功
能频率和扫描测试的频率基本相等,所以对于高速模块,移位模式和捕获模式的频率相等可以进行扫描测试。而对于低速模块,低速模块的功能频率较低。因此,低速模块的捕获模式的测试频率会受到限制,让低速模块和高速模块一起进行扫描测试时,显然不太合适。
[0033]
而发明人经过试验发现,如果在测试过程中生成的spf文件中修改参数,可以降低低速模块的捕获模式的频率,则可以实现在综合阶段不定义扫描时钟也能使低速模块和高速模块一起进行扫描测试。
[0034]
需要说明的是,本技术实施例提供的一种用例生成方法可以适用于dft过程中存在低速模块的场景。进一步地,本技术实施例提供的一种用例生成方法可以适用于dft中存在低速模块,且低速模块的功能频率与扫描测试的频率相差较大的场景。
[0035]
请参阅图1,图1是本技术实施例提供的一种dft的设计流程的示意图。在dft设计流程中,首先需要输入待测试的数据,在本实施例中,该待测试的数据中包括低速模块和高速模块。然后在综合阶段,综合工具会对待测试的数据进行综合。其中,综合阶段可以理解为综合的过程,综合即为ic设计流程中的一部分,综合可以是将rtl转换为门级网表的过程。综合工具可以理解为一种设计数字ic的eda工具,在dft过程中起着转换作用,即,将低速模块对应的rtl代码转换成门级网表。其中,eda是指利用cad软件完成vlsi电路芯片的功能设计、综合、验证、物理设计(包括布局、不限、版图、设计规则检测等)等流程的设计方式。其中,rtl用于描述同步数字电路操作的抽象级,在rtl级,ic是由一组寄存器以及寄存器之间的逻辑操作构成。在电路设计中,网表用于描述电路元件相互之间的连接关系。一般而言,网表是一个遵循某种较为简单的标记语法的文本文件。而门级则是指网络描述的电路综合级别,顾名思义,门级网表中,描述的电路元件基本为“门”级元件或者与“门”同级别的元件。则门级网表可以是一个遵循某种标记语法的文本文件,该文本文件用于描述电路元件相互之间的连接关系,且该电路元件为“门”级元件或与“门”同级别的元件。而rtl级和门级的简单区别在于:rtl是用硬件描述语言(例如,verilog或vhdl)描述理想能够达到的功能;而门级则是用具体的逻辑单元(依赖厂家的库)来实现功能。简而言之,rtl和门级是设计实现上的不同阶段,rtl经过逻辑综合后,就可以得到门级。
[0036]
然后,综合后的数据需要进行sta和/或fv验证。其中,sta也称作静态时序验证,在电子工程中,对数字电路的时序进行计算、预计的工作流程。sta可以检查电路中各条路径诸如毛刺、延迟路径和时钟偏移等问题。其中,fv可以指从数学上完备地证明或验证电路的实现方案是否确定实现了电路设计所描述的功能。
[0037]
当sta和/或fv验证通过之后,可以基于dft编译工具插入扫描链,并根据综合后的低速模块生成spf文件。该spf文件可以被应用于atpg过程生成测试用例。此测试用例可以用于dft测试,也可以用于ate机台的输入激励,用于测试芯片。其中,扫描链可以指dft的一种实现技术。扫描链通过植入移位寄存器,使得测试人员可以从外部控制和观测电路内部触发器的信号值。其中,atpg可以指自动生成半导体电器测试中使用的测试向量的过程。在atpg过程中,测试向量按顺序地加在到器件的输入脚上,输出的信号被收集并与预算好的测试向量比较,从而可以判断测试的结果。atpg有效性是衡量测试错误覆盖率的重要指标。
[0038]
请参阅图2,图2是本技术一实施例提供的一种用例生成方法的流程示意图。用例生成方法包括如下步骤s110至s140。
[0039]
s110,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块。
[0040]
其中,预设约束文件为没有定义扫描时钟的约束文件,即在综合阶段,删除了预设约束文件中关于扫描时钟的定义。预设约束文件可以用于指导综合工具对低速模块进行综合。
[0041]
在扫描测试中,低速模块可以指测试速度较慢的模块,高速模块可以指测试速度较快的模块。一般高速模块的功能频率与扫描测试的频率一致。需要说明的是,低速模块和高速模块对应有多种功能模式,例如,捕获模式和移位模式,而功能频率仅表示多种功能模式的频率其中一种。
[0042]
其中,对低速模块进行综合可以是将低速模块的rtl代码转换成门级网表的过程,综合之后的低速模块的面积小于综合之前的低速模块的面积。
[0043]
在一些实施方式中,在综合阶段,综合工具会读入预设约束文件。综合工具在约束文件的指导下,对低速模块进行综合。进一步地,综合工具可以优化低速模块的组合逻辑,即可以将低速模块的rtl代码转换成门级网表。由于预设约束文件中未定义扫描时钟,因此综合工具不会为了满足扫描时钟的频率,从而在优化低速模块的过程中采用驱动能力更大的门级单元来减小组合逻辑延时,从而可以减小综合低速模块所得的面积,进而可以减少测试成本开销。
[0044]
s120,基于插入扫描链后的编译工具和所综合后的低速模块生成spf文件。
[0045]
其中,扫描链可以是可测试性设计的一种实现技术。扫描链通过植入移位寄存器,使得测试人员可以从外部控制和观测电路内部触发器的信号值。而在芯片功能设计完成之后,整个网表可以由一堆普通的寄存器和组合逻辑构成,而插入扫描链为将普通寄存器替换成扫描寄存器的过程。普通寄存器只能并行送入数据,也只能并行输出。而移位寄存器中的数据可以在移位脉冲作用下依次逐位右移或者左移,数据既可以并行输入,并行输出,也可以串行输入、串行输出,还可以并行输入、串行输出,或者串行输入、并行输出,十分灵活,用途相较于普通寄存器也更广。
[0046]
其中,编译工具用于将一种“语言”翻译成另一种“语言”的工具,也可以称作是编译器。
[0047]
其中,spf文件可以指文件扩展名为“.spf”的文件。spf文件中可以包括低速模块的功能模式对应的周期等参数。
[0048]
在一些实施方式中,dft人员(可以指做dft测试的人员)可以预先定义一些dft的脚本(该脚本可以用于插入扫描链)在编译工具中,dft编译工具执行该脚本便可以自主插入扫描链,而插入扫描链可以将综合后的低速模块中的普通寄存器替换成扫描寄存器。dft人员可以预先在编译工具中写入一个指令,该指令可以用于根据综合后的低速模块生成spf文件,例如,指令:write_test_protocol,dft编译工具执行该指令便可以生成spf文件。
[0049]
s130,获取综合后的低速模块中捕获模式的目标频率。
[0050]
其中,捕获模式是低速模块下多种功能模式中的一种,捕获模式的目标频率可以指低速模块在捕获模式下能够运行的最高频率。
[0051]
在一些实施方式中,dft人员可以预先在dft编译工具中写入脚本,该脚本可以用于检测综合后的低速模块的捕获模式的频率,并可以在检测到的频率中确定最高频率为目标频率,dft编译工具执行该脚本,便可以得到综合后的低速模块在捕获模式下能够运行的最高频率,然后dft编译工具可以将该最高频率作为综合后的低速模块中捕获模式的目标
频率。
[0052]
s140,基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
[0053]
其中,spf文件中的参数可以包括扫描测试的捕获模式下的波形表中的参数和/或移位模式下的波形表中的参数。进一步地,spf文件中的参数可以包括扫描测试的捕获模式下的波形表中的周期和/或移位模式下的波形表中的周期。
[0054]
在一些实施方式中,在确定目标频率之后,dft人员可以预先向dft编译工具中写入脚本,该脚本用于根据目标频率修改spf文件中的参数,然后dft编译工具执行该脚本,便可以基于目标频率修改spf文件中的参数。具体地,dft编译工具执行该脚本,可以基于目标频率获取该目标频率对应的周期,然后可以将扫描测试的捕获模式下的波形表中的周期改为与该目标频率对应的周期,或者也可以将扫描测试的捕获模式下的波形表中的周期和移位模式下的波形表中的周期都改为与该目标频率对应的周期,从而可以降低扫描测试的捕获模式的频率对应的周期,使得低速模块和高速模块可以一起进行扫描测试。然后修改后的spf文件可以被应用至atpg过程以生成测试用例。具体地,生成测试向量的工具(例如,synopsys tmax2,其中synopsys是工具的厂商名,tmax2是工具的名字)可以读入低速模块的网表,修改后的spf文件、工艺库文件(可以指包括设备工艺信息的文件,例如,包括芯片工艺信息的文件)以及相应的配置数据,便可以自动生成测试用例。
[0055]
本实施例提供的用例生成方法通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和所综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;以及基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。从而在综合阶段删除了扫描时钟的定义,可以减小综合工具对低速模块综合后所得的面积,进而减少了测试成本,还可以提升dft的测试覆盖率。此外,在综合阶段修改spf文件中的参数,可以降低扫描测试的捕获模式的频率,从而使得低速模块和高速模块可以一起进行扫描测试,相对于将低速模块和高速模块分开进行扫描测试,不需要在测试过程中多次开关电来切换测试模式,可以节省测试时间。
[0056]
请参阅图3,图3是本技术另一实施例提供的一种用例生成方法的流程示意图。用例生成方法包括如下步骤s210至s270。
[0057]
s210,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块。
[0058]
其中,s210的具体描述请参阅s110,在此不再赘述。
[0059]
s220,对综合后的低速模块进行检验处理,得到检验结果,其中检验处理包括静态时序分析和形式验证。
[0060]
在一些实施方式中,可以采用sta工具(例如,spice)对低速模块进行静态时序分析。其中,spice是一般的电路级模拟程序,各个软件厂家提供了vspice、hspice、pspice等不同版本的spice软件,这些软件的仿真核心大同小异,都采用的是由美国加州大学开发的spice算法,因此可以选择这些spice软件中任意一种对低速模块进行静态时序分析,本技术实施例对具体的spice不作限制。然后可以采用fv工具(例如,spnopsys推出的fv工具:formality)对低速模块进行形式验证。需要说明的是,sta工具以及fv工具对低速模块进行检验的顺序并不固定,可以sta工具对低速模块先检验,然后fv工具再对低速模块进行检验。也可以fv工具对低速模块先检验,然后sta工具再对低速模块进行检验,本技术实施例
对sta工具以及fv工具对低速模块进行检验的具体顺序不作限定。
[0061]
s230,判断检验结果是否满足预设条件。
[0062]
其中,预先条件可以指低速模块通过了检验处理。
[0063]
在一些实施方式中,当低速模块中的各电路路径对应的问题(例如,毛刺、延迟等)数量少于阈值时,sta工具可以确定低速模块通过了sta检验。当低速模块中的各电路路径都可以实现电路设计所描述的功能时,则fv工具可以确定低速模块通过了fv检验。当低速模块通过sta检验和fv检验时,fv工具或者sta工具可以确定检验结果满足预设条件。当低速模块有至少一项检验没通过时,fv工具或者sta工具可以确定检验结果不满足预设条件。
[0064]
s240,若是,则基于插入扫描链后的编译工具和综合后的低速模块生成spf文件。
[0065]
s250,获取综合后的低速模块中捕获模式的目标频率。
[0066]
其中,s240和s250的具体描述请参阅s120和s130,在此不再赘述。
[0067]
s260,获取目标频率对应的周期。
[0068]
在一些实施方式中,获取目标频率对应的周期可以包括如下步骤。
[0069]
首先,获取综合后的低速模块的捕获模式的最大频率,并将最大频率确定为目标频率。其中,低速模块的捕获模式的最大频率可以指低速模块在捕获模式下能够运行的最高频率。
[0070]
作为一种示例,dft人员可以预先在dft编译工具中写入脚本,该脚本可以用于检测综合后的低速模块的捕获模式的频率,并可以在检测到的频率中确定最高频率为目标频率,dft编译工具执行该脚本,便可以得到综合后的低速模块在捕获模式下的最大频率,然后dft编译工具可以将该最大频率作为目标频率。
[0071]
然后,获取目标频率对应的周期。
[0072]
其中,目标频率对应的周期可以指低速模块在捕获模式下能够运行的最高频率对应的周期。由于低速模块下捕获模式的频率较低,而扫描测试下捕获模式的频率较高,因此需要降低扫描测试下捕获模式的频率,以使低速模块和高速模块能够一起进行扫描测试。将扫描测试下捕获模式的频率降低至某一个值,这个值不是固定的。若这个值太高,低速模块和高速模块则无法一起进行扫描测试。若这个值太低,虽然低速模块和高速模块可以一起进行扫描测试,但是相应地会增加测试时间。发明人经过试验发现:优选的情况可以是让这个值与低速模块在捕获模式下运行的最高频率相等。此时既可以实现低速模块和高速模块一起进行扫描测试,又不会使总体的测试时间增加。因此本实施方式可以将低速模块在捕获模式下能够运行的最高频率作为目标频率,并可以将扫描测试下捕获模式的频率降低至该目标频率。
[0073]
作为一种示例,当目标频率一定时,例如,目标频率可以为a,dft编译工具可以查询数据库,该数据库中存储有低速模块在捕获模式下运行的各个频率以及各个频率对应的周期,得到目标频率a对应的周期为t。
[0074]
s270,基于目标频率对应的周期修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
[0075]
在一些实施方式中,spf文件包括扫描测试的捕获模式下的波形表。s250的具体步骤可以如下。
[0076]
基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期,并基于
修改后的spf文件生成测试用例。
[0077]
作为一种示例,当目标频率对应的周期一定时,则dft编译工具可以将扫描测试的捕获模式下的波形表中的周期改为目标频率对应的周期。具体地,修改之后的捕获模式对应的周期大于修改之前的捕获模式对应的周期,且此时扫描测试的捕获模式对应的周期与移位模式对应的周期不同。以降低扫描测试的捕获模式的频率,进而可以使得低速模块和高速模块一起进行扫描测试。修改spf文件之后,扫描测试的部分时序可以如图4所示,图4是本技术一示例性实施例提供的扫描测试的部分时序图。从图4中可以看出,在扫描测试的过程中,捕获模式和移位模式是交替出现的,且移位模式包含多个时钟周期,捕获模式只包含一个时钟周期。根据图4,可以看出在扫描测试中,捕获模式的时间占比较少,所以降低扫描测试的捕获模式的频率不会增加低速模块和高速模块总体的测试时间。修改后的spf文件可以被应用至atpg过程以生成测试用例。更具体地,生成测试向量的工具可以读入低速模块的网表,修改后的spf文件、工艺库文件以及相应的配置数据,便可以自动生成测试用例。
[0078]
在本实施方式中,基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期,并基于修改后的spf文件生成测试用例。通过修改扫描测试捕获模式下的波形表,可以降低扫描测试的捕获模式的频率,可以使得高速模块和低速模块可以一起进行扫描测试。此外,由于扫描测试的捕获模式的测试时间占比较少,因此降低扫描测试的捕获模式的频率不会增加低速模块和高速模块一起测试的总体时间。
[0079]
在另一些实施方式中,spf文件包括扫描测试的捕获模式下的波形表和移位模式下的波形表。s250的具体步骤可以如下。
[0080]
首先,基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期以及移位模式下的波形表的周期。其中,spf文件中的捕获模式下的波形表的周期和移位模式下的波形表的周期默认一致。
[0081]
在本实施方式中,当目标频率对应的周期一定时,dft编译工具或者dft人员可以将spf文件中的捕获模式下的波形表的周期以及移位模式下的波形表的周期修都改为目标频率对应的周期,此时,扫描测试的捕获模式对应的周期与移位模式对应的周期仍然一致。需要说明的是,修改之后的捕获模式对应的周期大于修改之前的捕获模式对应的周期,此时扫描测试的捕获模式的频率以及移位模式对应的频率都相应降低,低速模块和高速模块也可以一起进行扫描测试。
[0082]
然后,基于修改后的spf文件生成测试用例。
[0083]
在本实施方式中,修改后的spf文件可以被应用至atpg过程以生成测试用例。更具体地,生成测试向量的工具可以读入低速模块的网表,修改后的spf文件、工艺库文件以及相应的配置数据,便可以自动生成测试用例。
[0084]
在本实施方式中,首先基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期以及移位模式下的波形表的周期;然后基于修改后的spf文件生成测试用例。通过修改扫描测试的捕获模式下的周期以及修改扫描测试的移位模式下的周期,可以同时降低扫描测试的捕获模式和移位模式的频率,从而可以使得高速模块和低速模块可以一起进行扫描测试。
[0085]
需要说明的是,当对综合后的低速模块进行检验处理得到的检验结果不满足预设
条件时,则执行s210。
[0086]
本实施例提供的一种用例生成方法,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;对综合后的低速模块进行检验处理,得到检验结果,其中检验处理包括静态时序分析和形式验证;判断检验结果是否满足预设条件;基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;获取目标频率对应的周期;以及基于目标频率对应的周期修改spf文件中的参数,并基于修改后的spf文件生成测试用例。通过将低速模块在功能模式下能够运行的最高频率作为目标频率,并根据该目标频率对应的周期去修改spf文件中的参数,使得修改spf文件的参数之后,扫描测试的捕获模式的频率与低速模块在捕获模式下能够运行的最高频率相等。从而可以使得低速模块和高速模块可以一起进行扫描测试。
[0087]
请参阅图5,图5是本技术一实施例提供的一种测试方法的流程示意图。测试方法可以应用于芯片。测试方法包括如下步骤s310至s370。
[0088]
s310,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块。
[0089]
s320,基于插入扫描链后的编译工具和综合后的低速模块生成spf文件。
[0090]
s330,获取综合后的低速模块中捕获模式的目标频率。
[0091]
s340,基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
[0092]
其中,s310至s340的具体描述请参阅s110至s140,在此不再赘述。
[0093]
s350,基于测试用例对未封装的芯片进行测试,得到测试值。
[0094]
其中,未封装的芯片可以包括有制造缺陷的芯片和/或没有制造缺陷的芯片。
[0095]
其中,测试值可以指对芯片进行cp测试之后输出的值。cp测试可以指ate机台对未封装的芯片的测试。cp测试可以为ic生产制造的最后流程,可以确保ic生产制造的品质。
[0096]
在一些实施方式中,cp测试设备(包括测试机、探针卡、探针台以及测试机与探针卡之间的接口等)可以将测试用例和未封装的芯片输入至cp测试设备或者ate机台。cp测试设备可以将探针扎到芯片的端口,然后可以将测试用例作为输入激励输入至芯片的输入端口(例如,scan_clk、scan_in以及scan_en),可以得到芯片的输出端口(scan_out)输出的值。cp测试设备可以将该值作为测试值。
[0097]
s360,比对测试值与测试用例对应的预估值。
[0098]
其中,测试用例对应的预估值可以根据实际需求预先设置在cp测试设备中,可以用于评估芯片是否有制造缺陷。
[0099]
在一些实施方式中,cp测试设备可以将测试值与测试用例对应的预估值进行比较,以判断测试值是否与测试用例对应的预估值一致。
[0100]
s370,当测试值与测试用例对应的预估值不一致时,确定未封装的芯片的测试结果不满足要求。
[0101]
在一些实施方式中,当测试值与测试用例对应的预估值不一致时,cp测试设备可以确定未封装的芯片的测试结果不满足要求,此时可以说明该未封装的芯片具有制造缺陷,此时可以不对该未封装的芯片进行封装,从而可以节省封装成本。
[0102]
本实施例提供的一种测试方法,该方法应用于芯片,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和综合后的低速模
块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例;基于测试用例对未封装的芯片进行测试,得到测试值;比对测试值与测试用例对应的预估值;以及当测试值与测试用例对应的预估值不一致时,确定未封装的芯片的测试结果不满足要求。该方法将atpg过程生成的测试用例作为ate机台的输入激励,并通过ate机台的测试将有制造缺陷的芯片从未封装的芯片中筛选出来,从而可以有效地防止对有缺陷的芯片进行封装,进而在一定程度上可以节省封装成本。
[0103]
作为一种示例,请参阅图6,图6是本技术一示例性实施例提供的一种芯片测试流程的示例图。其中,cp测试设备可以将测试用例和未封装的芯片输入至ate机台中,然后ate机台可以对未封装的芯片进行测试,ate机台可以将通过测试的芯片进行封装,而对没有通过测试的芯片(有制造缺陷的芯片)不进行封装,从而可以筛选出有制造缺陷的芯片,进而可以在一定程度上节省封装成本。
[0104]
请参阅图7,图7是本技术一实施例提供的一种可测试性设计方法的流程示意图。可测试性设计方法包括以下步骤s410至s450。
[0105]
s410,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块。
[0106]
s420,基于插入扫描链后的编译工具和综合后的低速模块生成spf文件。
[0107]
s430,获取综合后的低速模块中捕获模式的目标频率。
[0108]
s440,基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
[0109]
其中,s410至s440的具体描述请参阅s110至s140,在此不再赘述。
[0110]
s450,基于测试用例进行可测试性设计仿真。
[0111]
在一些实施方式中,dft工具(例如,仿真软件)可以将测试用例输入至dft仿真过程,以对dft进行仿真。
[0112]
本实施例提供的可测试性设计方法通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例;以及基于测试用例进行可测试性设计仿真。该方法在约束文件中未定义扫描时钟,并通过对spf文件的参数的修改,使得低速模块和高速模块能够一起进行扫描测试,不仅可以减小综合低速模块所得的面积,节省dft仿真成本。相对于将低速模块和高速模块一起进行扫描测试而言,本方法在dft测试过程中不需要多次开关电来切换测试模式,从而可以节省dft仿真时间。
[0113]
请参阅图8,图8是本技术一实施例提供的一种用例生成装置500的结构框图。用例生成装置500可以包括综合模块510、文件生成模块520、获取模块530以及用例生成模块540。其中,综合模块510用于通过预设约束文件对低速模块进行综合,以得到综合后的低速模块,其中,预设约束文件为没有定义扫描时钟的约束文件。文件生成模块520用于基于插入扫描链后的编译工具和综合后的低速模块生成spf文件。获取模块530用于获取综合后的低速模块中捕获模式的目标频率。以及用例生成模块540用于基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例。
[0114]
可选地,spf文件可以包括扫描测试的捕获模式下的波形表。用例生成模块540可
以包括第一周期获取子模块以及第一用例生成子模块。其中,第一周期获取子模块用于获取目标频率对应的周期。以及第一用例生成子模块用于基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期,并基于修改后的spf文件生成测试用例。
[0115]
可选地,第一周期获取子模块可以包括频率获取单元以及周期获取单元。其中,频率获取单元用于获取综合后的低速模块的捕获模式的最大频率,并将最大频率确定为所述目标频率。以及周期获取单元用于获取目标频率对应的周期。
[0116]
可选地,spf文件可以包括捕获模式下的波形表和移位模式下的波形表。用例生成模块540可以包括第二周期获取子模块、参数修改子模块以及第二用例生成子模块。其中,第二周期获取子模块用于获取目标频率对应的周期。参数修改子模块用于基于目标频率对应的周期修改spf文件中的捕获模式下的波形表的周期以及移位模式下的波形表的周期。以及第二用例生成子模块用于基于修改后的spf文件生成测试用例。
[0117]
该测试用例生成装置500还可以包括处理模块、判断模块、处理模块以及执行模块。其中,处理模块用于对综合后的低速模块进行检验处理,得到检验结果,其中,检验处理包括静态时序分析和形式验证。判断模块用于判断检测结果是否满足预设条件。处理模块用于当检测结果满足预设条件时,基于插入扫描链后的编译工具和综合后的低速模块生成spf文件。以及执行模块用于当检测结果不满足预设条件时,执行通过预设约束文件对低速模块进行综合,以得到综合后的低速模块。
[0118]
请参阅图9,图9是本技术一实施例提供的一种测试装置600的结构框图。测试装置600包括综合模块610、文件生成模块620、获取模块630、用例生成模块640、测试模块650、比对模块660以及筛选模块670。其中,综合模块610、文件生成模块620、获取模块630以及用例生成模块640分别与综合模块510、文件生成模块520、获取模块530以及用例生成模块540相同。测试模块650用于基于测试用例对未封装的芯片进行测试,得到测试值。比对模块660用于比对测试值与所述测试用例对应的预估值。以及筛选模块670用于当测试值与测试用例对应的预估值不一致时,确定未封装的芯片的测试结果不满足要求。
[0119]
请参阅图10,图10是本技术一实施例提供的一种可测试性设计装置700的结构框图。可测试性设计仿真装置700包括综合模块710、文件生成模块720、获取模块730、用例生成模块740以及仿真模块750。其中,综合模块710、文件生成模块720、获取模块730以及用例生成模块740分别与综合模块510、文件生成模块520、获取模块530以及用例生成模块540相同。仿真模块750用于基于测试用例进行可测试性设计仿真。
[0120]
所属领域的技术人员可以清楚地了解到,本技术实施例提供的装置能够实现前述方法实施例中的各个过程,上述描述装置和模块的具体工作过程,可以参阅前述方法实施例中的对应过程,在此不再赘述。
[0121]
本技术提供的实施例中,所显示或讨论的模块相互之间的耦合、直接耦合或通信连接,可以是通过一些接口、装置或模块的间接耦合或通信耦合,也可以是电性、机械或其他形式,本技术实施例对此不作具体限制。
[0122]
另外,在本技术实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件的功能模块的形式实现。
[0123]
请参阅图11,图11是本技术实施例提供的一种设备800的结构框图。设备800可以
是智能设备以及服务器等电子设备。本技术中的设备800包括处理器810、存储器820以及一个或多个应用程序。其中,一个或多个应用程序被存储在存储器820中并被配置成由一个或多个处理器810调用以执行如前述方法实施例所描述的方法。
[0124]
处理器可以包括一个或多个处理核。处理器810利用各种接口和线路连接整个电子设备800内的各个部分。处理器810被配置成运行或执行存储在存储器820内的指令、程序、代码集或指令集,运行或执行存储在存储器820内的数据,以及执行设备800的各种功能和处理数据。可选地,处理器810可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field

programmable gate array,fpga)、可编辑逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器810可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器中的一种或几种的组合。其中,cpu主要用于处理操作系统、用户界面和应用程序等。gpu用于负责显示内容的渲染和绘制。以及调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器810中,单独通过一块通信芯片进行实现。
[0125]
存储器810可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read

only memory,rom)。存储器820用于存储指令、程序、代码、代码集或指令集等,存储器820可以包括存储程序区和存储数据区,其中,存储程序器可存储用于实现操作系统的指令、用于实现至少一个功能的指令、用于实现上述各个方法实施例的指令等。存储数据区可以存储设备800在使用中所创建的数据等。
[0126]
请参阅图12,图12是本技术实施例提供的一种计算机可读取存储介质900的结构框图。计算机可读取存储介质900中存储有程序代码910。程序代码910被配置成由处理器调用以执行上述各方法实施例中所描述的方法步骤。
[0127]
计算机可读取存储介质900可以是诸如闪存、电可擦除可编程只读存储器(electrically

erasable programmable read

only memory,eeprom)、可擦除可编辑只读存储器(erasable programmable read

only memory,eprom)、硬盘或者rom之类的电子存储器。可选地,计算机可读取存储介质900包括非易失性计算机可读介质(non

transitory computer

readable storage medium,ntcrsm)。计算机可读取存储介质900具有执行上述方法中的任何方法步骤的程序代码910的存储空间。程序代码910可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码910可以例如以适当形式进行压缩。
[0128]
综上所述,本技术实施例提供的用例生成方法及装置、测试方法、可测试性设计方法,通过预设约束文件对低速模块进行综合,以得到综合后的低速模块;基于插入扫描链后的编译工具和综合后的低速模块生成spf文件;获取综合后的低速模块中捕获模式的目标频率;以及基于目标频率修改spf文件中的参数,并基于修改后的spf文件生成测试用例,在预设约束文件中未定义扫描时钟,并通过降低扫描测试的捕获模式的频率,使得低速模块和高速模块一起进行扫描测试,从而可以减小综合低速模块所得的面积,减少测试成本,还可以提升测试覆盖率。
[0129]
最后应说明的是,以上实施例仅用以说明本技术的技术方案,而非对其限制。尽管参照前述实施例对本技术进行了详细的说明,所述领域技术人员应当理解,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,而这
些修改或者替换,并不驱使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献