芯片的高效测试方法、装置和存储介质与流程

文档序号:32062611发布日期:2022-11-04 23:47阅读:229来源:国知局
芯片的高效测试方法、装置和存储介质与流程

1.本技术涉及集成电路测试领域,尤其是涉及芯片的高效测试方法、装置和存储介质。


背景技术:

2.目前超大规模的集成电路比如cpld、fpga、mcu等,一般都集成了jtag协议,用于芯片的在线调试和下载功能,目前针对以上类型的器件进行二次筛选时,一般会采用使用对应产品的生产厂家开发的专用软件进行开发一定的功能程序,然后生成烧录数据,使用对应原厂制作的下载器,通过jtag接口进行烧录,然后在ate(自动化测试设备)机台上根据对应的功能程序进行测试。
3.发明人认为,测试芯片的某一功能时,需要使用厂家专用烧录器烧录一次,测试通过当前功能后,随之进行第二次的烧录,然后再到ate机台进行第二次烧录,如此循环往复,测试多次,导致此过程效率较低且操作繁琐。


技术实现要素:

4.为了提高测试芯片时的整体工作效率,本技术提供了芯片的高效测试方法、装置和存储介质。
5.第一方面,本技术提供的芯片的高效测试方法,采用如下的技术方案:芯片的高效测试方法,包括以下步骤:获取数据:在电脑端内获取若干下载文件;解析:基于预设算法将若干所述下载文件进行解析,并获得测试程序;执行测试:基于若干测试程序对待测芯片开始测试。
6.通过采用上述技术方案:在下载测试程序时,一次性将本批次待执行的多个测试程序全部下载;并进行批量解析后,ate机台能够根据若干测试程序对当前待测芯片的对应功能进行一次检测,从而减少了测试芯片时重复下载测试程序的步骤,以此提高测试芯片时的整体工作效率。
7.可选的,所述执行测试的步骤内还包括以下步骤:对若干所述测试程序基于预设顺序逐一增加测试项;若干所述测试项对应不同的测试功能。
8.通过采用上述技术方案,由于芯片的待测试功能较多,若干测试程序可以测试芯片不同的功能,因此对每一项测试程序增加测试项,可以方便后期对测试结果进行匹配以及调用任一测试程序时的便捷性,以此提高芯片测试的工作效率。
9.可选的,所述将解析完成的若干测试程序按照预设顺序逐一发送的步骤具体包括以下步骤:获取ate机台测试程序内的待添加位置;向待添加位置添加对应的测试程序。
10.通过采用上述技术方案,将若干个测试程序一次添加进ate机台的相应位置,当ate机台开始测试芯片时,即可将被测芯片的多个功能一次性测试完成,从而提高测试芯片时的覆盖率。
11.可选的,所述获取数据的步骤还包括以下步骤:使ate机台模拟成jtag下载器。
12.通过采用上述技术方案,当在电脑端内获取下载文件时,若使用ate机台模拟jtag下载器直接执行下载动作,即可减少使用专用下载器执行下载动作的步骤,节省了下载、换板、换机台测试程序的时间,从而进一步提高测试芯片的工作效率。
13.可选的,所述使ate机台模拟成jtag下载器的步骤具体包括以下步骤:获取下载波形,所述下载波形由逻辑分析仪获取;分析所述下载波形并转换成获取ate机台能够识别的图形文件;将所述图形文件添加到ate机台中的对应位置。
14.通过采用上述技术方案,ate机台可以模拟jtag下载器对被测芯片下载程序,并同时对被测芯片进行测试,以便于提高ate机台对待测芯片执行测试功能时的工作效率。
15.可选的,所述执行测试的步骤还包括以下步骤:计算信号翻转的时间;匹配ate机台和待测芯片的信号翻转时间至一致。
16.通过采用上述技术方案,保证ate机台测试芯片时,ate机台和待测芯片之间双向连接的稳定性,以此提高ate机台的测试芯片对应功能时的整体工作效率。
17.可选的,所述执行测试的步骤具体还包括以下步骤:计算循环次数t;将若干下载波形逐一转换为测试向量;将若干测试向量向待测芯片循环发送t次。
18.通过采用上述技术方案,将测试向量轮循向待测芯片发送,以便于ate机台内与待测芯片的信号翻转时间相同,从而便于ate机台开始执行相应的测试动作;以便于将下载文件下载完成后才开始执行芯片的测试功能,以此提高ate机台的测试芯片对应功能时的整体工作效率。
19.第二方面,本技术提供的计算机装置,采用如下的技术方案:计算机装置,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述芯片的高效测试方法。
20.通过采用上述技术方案,提供了能执行实现上述芯片的高效测试方法的计算机装置。
21.第三方面,本技术提供的计算机可读存储介质,采用如下的技术方案:计算机可读存储介质,所述计算机存储介质存储有计算机程序;所述计算机程序被处理器执行时实现上述芯片的高效测试方法。
22.通过采用上述技术方案,提供了芯片的高效测试方法的计算机程序的载体。
23.综上所述,本技术包括以下至少有益技术效果:1.一次性将本批次待执行的多个测试程序全部下载;并进行批量解析后,ate机台能够根据若干测试程序对当前待测芯片的对应功能进行一次检测,从而减少了测试芯片时
重复下载测试程序的步骤;2.当在电脑端内获取下载文件时,若使用ate机台模拟jtag下载器直接执行下载动作,即可减少使用专用下载器执行下载动作的步骤,节省了下载、换板、换机台测试程序的时间,从而进一步提高测试芯片的工作效率。
附图说明
24.图1是本技术实施例中芯片的高效测试方法的流程框体;图2是本技术实施例中芯片的高效测试方法的步骤流程图;图3是本技术实施例中逻辑分析仪抓取到的全部波形图;图4是图3中逻辑分析仪抓取到的部分波形图;图5是图3中逻辑分析仪抓取到的部分波形图。
25.附图标记说明:1、电脑端;2、专用软件;3、ate机台;4、逻辑分析仪。
具体实施方式
26.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图1-5及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
27.在jtag调试当中,边界扫描(boundary-scan)是一个很重要的概念。边界扫描技术的基本思想是在靠近芯片的输入输出管脚上增加一个移位寄存器单元。因为这些移位寄存器单元都分布在芯片的边界上,所以被称为边界扫描寄存器(boundary-scanregistercell)。
28.当芯片处于调试状态的时候,这些边界扫描寄存器可以将芯片和外围的输入输出隔离开来。通过这些边界扫描寄存器单元,可以实现对芯片输入输出信号的观察和控制。对于芯片的输入管脚,可以通过与之相连的边界扫描寄存器单元把信号(数据)加载倒该管脚中去;对于芯片的输出管脚,也可以通过与之相连的边界扫描寄存器“捕获”(capture)该管脚上的输出信号。在正常的运行状态下,这些边界扫描寄存器对芯片来说是透明的,所以正常的运行不会受到任何影响。这样,边界扫描寄存器提供了一个便捷的方式用以观测和控制所需要调试的芯片。
29.对于我们使用逻辑分析仪抓取jtag数据,只需确定好tms、tck、tdi管脚是输入管脚,tdo管脚是输出管脚即可;tck为时钟管脚,tms为控制状态寄存器的管脚,tdi为输入器件管脚的数据,tdo为输出器件的数据。
30.本技术实施例公开芯片的高效测试方法。
31.参考图1,芯片的高效测试方法包括以下步骤:s100:获取数据。
32.具体来说,步骤s100包括以下步骤:s110:使ate机台3模拟成jtag下载器。
33.具体来说,步骤s110包括以下步骤:s111:获取下载波形;
具体来说,参照图1和图2,本实施例中下载波形由逻辑分析仪4获取;逻辑分析仪4首先访问指定的电脑端1,并在电脑端1内抓取下载波形;随之将获取到的下载波形发送至专用软件2并执行步骤s112。
34.s112:分析下载波形并转换成获取ate机台3能够识别的图形文件;举例来说,使用专用软件2对接收到的下载波形进行分析,将其转换成当前ate机台3能够识别的图形文件,在本实施例中,此处该处ate机台3能够识别的图形文件是一种ate机台3能够识别的标准格式,是按照顺序组合了二进制代码。
35.在本实施例中,专用软件2运行于ate机台3之外,专用软件2可以采用jtag图形向量转换器。
36.s113:将图形文件添加到ate机台3中的对应位置。
37.执行完上述步骤即可使ate机台3模拟成jtag下载器去访问电脑端1,从而完成ate机台3和电脑端1的直接连接,即可开始执行步骤s120;综合上述步骤,本技术可以减少下载、换板、换机台测试程序的时间,从而进一步提高测试芯片的工作效率。
38.s120:在电脑端1内下载若干下载文件;具体来说,测试人员能够根据当前待测芯片需要测试的功能在电脑端1内导入对应数量的下载文件;随之已模拟为jtag下载器的ate机台3即可开始在电脑端1上直接下载相应的下载文件。
39.在本实施例中,下载文件是能够使得待测芯片运行的程序,即芯片端程序;可以使用jtag下载器或者ate机台3进行下载。
40.s200:解析。
41.ate机台3将获取的下载文件发送至专用软件2,基于专用软件2对下载文件解析成若干测试程序/测试向量;具体来说,可以通过专用软件2将下载文件改写/解析成测试程序/测试向量,本实施例中,专用软件2可以是仿真软件(modelsim工具)对用户的待测设计进行仿真,并将仿真后生成的波形记录文件转换成所需要的测试向量。
42.在本实施例中,测试程序能够在ate机台3上运行,用于测试被测芯片的各种交流或者直流参数以及芯片的测试功能;测试向量属于测试程序的一部分,能够在ate机台3上运行,在本实施例中,测试向量为ate机台3可识别的图形文件。
43.s300:执行测试。
44.具体来说,步骤s300包括以下步骤:s310:计算信号翻转的时间;s320:匹配ate机台3和待测芯片的信号翻转时间至一致;具体来说,步骤s320包括以下步骤:s321:计算循环次数t;具体来说,获取时钟管教的最短脉冲宽度;基于逻辑分析仪4自带的导出功能将下载波形(参照图3、图4和图5)导出为csv格式数据;基于所述csv格式数据获取时间信息;预设所述待测芯片的执行速率;举例来说,参照图1和图2,根据逻辑分析仪4抓取的下载全部烧录数据的波形,得
知时钟tck的最短的脉冲宽度在150ns以上;基于逻辑分析仪4自带的导出功能,可以将波形导出为如下表所示的csv数据。
45.表1下载文件csv部分数据本实施例中csv数据分为5栏,tims[s]、tck、tms、tdi、tdo;csv数据记录了所有tck、tms、tdi、tdo变化的边沿时间信息,并在time[s]记录,此数据可以导入到我们开发的专用软件2中(专用软件2运行于ate机台3之外,专用软件2可以采用jtag图形向量转换器),可以根据tims[s]中记录时间信息,计算出每次信号翻转的时间,随之开始执行步骤s322。
[0046]
根据表1中tims[s]中记录时间信息,计算出每次信号翻转的时间,预设测试向量执行一行的周期为10ns,然后根据每行之间的时间的差值除以10ns,得出测试向量中循环次数t。
[0047]
s322:将若干测试向量向待测芯片循环发送t次。
[0048]
具体来说,匹配ate机台3和电脑端1的信号翻转时间至一致,以便于维持ate机台3和待测芯片的正常连接,以实现ate机台3下载测试程序。
[0049]
s330:对若干测试程序基于预设顺序逐一增加测试项;举例来说,其中,若干测试项对应不同的测试功能,不同的测试项用于区别不同的测试程序,以便于对不同的测试程序直接调用。
[0050]
s340:获取ate机台3测试程序内的待添加位置。
[0051]
s350:向待添加位置添加对应的测试程序。
[0052]
举例来说,若一款芯片有五项功能,且不能同时测量,那原先的测试方案是设计五个下载程序和对应的机台测试程序,一次只能测一种功能。采用本技术的方法后,通过使用逻辑分析仪4将五个下载程序进行解析,随之将测试程序写到ate机台3的程序的对应的待添加位置,从而实现五种功能的同时测试,以此提高芯片的测试覆盖率。
[0053]
s360:将解析完成的若干测试程序按照预设顺序逐一发送至待测芯片。
[0054]
举例来说,在本实施例中,预设顺序可以是将若干测试程序根据下载时间进行降序排列;测试程序在ate机台3上运行,用于测试被测芯片的各种交流或者直流参数以及芯片的其他各项功能;ate机台3基于测试程序对待测芯片执行测试动作。
[0055]
基于同一设计构思,本实施例还公开jtag协议转测试向量的测试系统。
[0056]
参考图1,jtag协议转测试向量的测试系统,包括电脑端1、专用软件2和ate机台3;其中ate机台3上连接有逻辑分析仪4;逻辑分析仪4能够和电脑端1和专用软件2实现通讯连接。
[0057]
ate机台3能够基于测试程序、测试向量辅助待测芯片进行多项功能测试。
[0058]
本技术还提供一种计算机可读存储介质,存储有能够被处理器加载执行时实现上述步骤。
[0059]
所述计算机可读存储介质例如包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0060]
基于同一发明构思,本技术实施例提供一种计算机装置,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行上述方法的计算机程序。
[0061]
所述领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0062]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0063]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0064]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0065]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
[0066]
以上所述,以上实施例仅用以对本技术的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本技术的方法及其核心思想,不应理解为对本技术的限制。本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在
本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1