一种提升ATE设备芯片测试速度的方法、装置转让专利

申请号 : CN202110682644.3

文献号 : CN113377591B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邬刚陈永

申请人 : 杭州加速科技有限公司

摘要 :

本发明提出了一种提升ATE设备芯片测试速度的方法、装置,适用于包括主控板、背板和业务板的系统中,主控板上配置有测试程序;获取待加速数据;测试程序根据待加速数据在预设的重构区逻辑库中选取相应的加速逻辑,选取空闲可重构区信息,构成重构指令;通过背板将重构指令由主控板传递至业务板;FPGA解析重构指令,预设的重构控制器根据空闲可重构区信息查找空闲可重构区,将加速逻辑配置重构到空闲可重构区,得到加速逻辑区;通过加速逻辑区处理待加速数据,获取加速计算结果并发送至测试程序。本发明利用FPGA动态局部重构功能来实现对空闲状态的逻辑资源的使用,未增加额外的硬件成本即可实现待加速数据的处理,提升了芯片测试的速度。

权利要求 :

1.一种提升ATE设备芯片测试速度的方法,其特征在于,适用于包括主控板、背板和业务板的系统中,所述主控板上配置有测试程序,所述业务板上配置有FPGA,被测芯片设置在DUT板上,所述DUT板连接所述业务板;

所述方法包括计算加速逻辑区重构:获取待加速数据;

所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据所述加速逻辑选取空闲可重构区信息,所述空闲可重构区信息和所述加速逻辑构成重构指令;

通过所述背板将所述重构指令由所述主控板传递至所述业务板;

所述FPGA获取并解析所述重构指令,预设的重构控制器根据所述空闲可重构区信息查找相应的空闲可重构区,将所述加速逻辑配置到所述空闲可重构区,得到加速逻辑区;其中,所述空闲可重构区为处于空闲状态下的可重构区,所述可重构区上配置有原业务功能逻辑;

通过所述加速逻辑区执行所述加速逻辑处理所述待加速数据,获取加速计算结果并发送至所述测试程序。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括原业务功能逻辑恢复:所述测试程序获取所述加速计算结果后,所述加速逻辑区处于空闲状态;

所述重构控制器监测到所述加速逻辑区处于空闲状态时,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑。

3.根据权利要求2所述的方法,其特征在于,所述重构控制器设置有监视单元和重构控制单元;

所述监视单元实时监测所述可重构区的状态,所述状态包括原业务功能逻辑工作状态、加速逻辑工作状态以及空闲状态;

当监测到所述可重构区处于空闲状态下时,所述可重构区被记录为空闲可重构区,所述监视单元生成空闲可重构区信息,并将所述空闲可重构区信息传递至所述测试程序;

在进行所述原业务功能逻辑恢复时,所述重构控制单元恢复所述可重构区的原业务功能逻辑,并保留功能逻辑;

在进行所述计算加速逻辑区重构时,所述重构控制单元根据重构指令查找空闲可重构区,并将加速逻辑配置到所述空闲可重构区,得到加速逻辑区。

4.根据权利要求2所述的方法,其特征在于,“所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,选取空闲可重构区信息”具体包括:所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,预估所述加速逻辑所需的逻辑资源和占用时间;

根据所述逻辑资源和所述占用时间查找合适的空闲可重构区信息;

判断所述空闲可重构区信息与所述加速逻辑是否匹配,若否,则重新查找合适的空闲可重构区信息;

若是,则记录所述空闲可重构区信息。

5.根据权利要求2所述的方法,其特征在于,所述主控板通过所述背板连接多个所述业务板;

所述测试程序通过分析、提取、收集芯片测试过程中需要进行计算加速的数据,得到所述待加速数据;

所述待加速数据包括激励数据、所述被测芯片产生的测试数据以及反馈数据。

6.根据权利要求2所述的方法,其特征在于,所述重构区逻辑库中包括测试激励数据生成加速逻辑、测试反馈数据统计加速逻辑、测试反馈数据分析加速逻辑、加速计算结果判断加速逻辑、加速计算结果统计加速逻辑、测试失效分析加速逻辑;

所述空闲可重构区信息包括可重构区的地址、可重构区的逻辑资源以及空闲时间。

7.根据权利要求3所述的方法,其特征在于,所述测试程序还包括:获取并记录各个所述业务板上的空闲可重构区信息,并根据所述监视单元的反馈实时更新所述空闲可重构区信息;

存储所有的所述加速逻辑和所述原业务功能逻辑。

8.一种提升ATE设备芯片测试速度的装置,适用于权利要求1所述的一种提升ATE设备芯片测试速度的方法,其特征在于,包括主控板、背板和业务板,被测芯片设置在DUT板上,所述DUT板连接所述业务板,所述主控板配置有测试程序,所述业务板配置有FPGA;

在计算加速逻辑区重构时,所述装置具体包括,主控板:用于获取待加速数据,所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据所述加速逻辑选取空闲可重构区信息,所述空闲可重构区信息和所述加速逻辑构成重构指令;

背板:用于将所述重构指令由所述主控板传递至业务板,将所述待加速数据传输至所述业务板的加速逻辑区,并将加速计算结果传输至所述测试程序;

业务板:用于通过所述FPGA获取并解析所述重构指令,预设的重构控制器根据所述空闲可重构区信息查找所述空闲可重构区,将所述加速逻辑配置到所述空闲可重构区,得到所述加速逻辑区;其中,所述空闲可重构区为处于空闲状态下的可重构区,所述可重构区上配置有原业务功能逻辑;

通过所述加速逻辑区处理所述待加速数据,获取所述加速计算结果并发送至所述测试程序。

9.根据权利要求8所述的装置,其特征在于,在原业务功能逻辑恢复时,所述装置具体包括,

业务板:用于在获取所述加速计算结果后,当所述重构控制器监测到所述加速逻辑区处于空闲状态时,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑。

10.根据权利要求9所述的装置,其特征在于,所述重构控制器设置有监视单元和重构控制单元;

所述监视单元,用于实时监测所述可重构区的状态并记录所述空闲可重构区,生成空闲可重构区信息,将所述空闲可重构区信息传递至所述测试程序,所述状态包括原业务功能逻辑工作状态、加速逻辑工作状态以及空闲状态;

所述重构控制单元,用于在原业务功能逻辑恢复时,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑;在计算加速逻辑区重构时,根据重构指令查找空闲可重构区,并将加速逻辑配置到所述空闲可重构区,得到加速逻辑区。

说明书 :

一种提升ATE设备芯片测试速度的方法、装置

技术领域

[0001] 本发明涉及芯片测试领域,特别涉及一种提升ATE设备芯片测试速度的方法、装置。

背景技术

[0002] ATE(Automatic Test Equipment)是自动测试设备,它是一种由高性能计算机控制的测试仪器的集合体,是由测试仪和计算机组合而成的测试系统,计算机通过运行测试
程序的指令来控制测试硬件。半导体芯片测试机用于检测集成电路的功能和性能的完整
性,是集成电路生产制造流程中确保集成电路品质的重要设备。测试系统最基本的要求是
自身保证测试功能的快速性、可靠性和稳定性。其中快速性尤为重要。
[0003] 随着集成电路复杂度的提高,其测试复杂度也随之日益提高,大规模集成电路往往会要求几百次的电压、电流和时序的测试以及百万次的功能测试步骤以保证器件的完全
正确,这也使得芯片的测试成本越来越高,一些器件的测试成本甚至占到芯片成本的绝大
部分比例。因此如何提升芯片的测试速度是半导体测试机行业的共同课题。
[0004] 在集成电路测试过程中,软件不仅需要生成激励数据,调度和控制各业务板上的功能,而且需要对被测芯片反馈数据进行统计、分析并判断被测芯片的测试结果,如果被测
芯片判定失效,还需要利用CPU根据芯片反馈数据进行失效分析。对芯片的测试以及对待加
速数据的处理,给CPU带来了极大的负担,严重影响了芯片测试的速度。与此同时,受当前
CPU处理器的性能限制,大大增加了集成电路的测试时间,特别是在多芯片并行测试时,处
理器的计算性能甚至会导致随着并测芯片数量的增加测试时间成倍的增加。
[0005] 使用ATE设备测试芯片过程中在测试激励生成,待加速数据分析,待加速数据处理等环节有大量的复杂计算工作,传统的测试机这些计算工作是由主控系统的计算机来完成
的,不仅会给主控计算机带来很大的计算负担,而且因计算机性能有限,大大降低了ATE设
备测试芯片的速度,尤其是在多芯片并行测试的场景下,其计算的性能给ATE测试速度带来
的影响更大。
[0006] 现有技术中,为缓解CPU的测试压力,往往通过外接服务里处理待加速数据。在每个业务板上外接一个服务器,由服务器处理待加速数据并反馈给主控板上的CPU。虽一定程
度上缓解了CPU的测试压力,提升了芯片测试的时间,但每个业务板都需要外接一台服务
器,大大增加了芯片测试的硬件成本和运行成本。
[0007] 由此,需要有一种更好的方案来提升芯片的测试速度。

发明内容

[0008] 有鉴于此,本发明提出了一种提升ATE设备芯片测试速度的方法、装置,具体方案如下:
[0009] 一种提升ATE设备芯片测试速度的方法,适用于包括主控板、背板和业务板的系统中,所述主控板上配置有测试程序,所述业务板上配置有FPGA,被测芯片设置在DUT板上,所
述DUT板连接所述业务板;
[0010] 所述方法包括计算加速逻辑区重构:
[0011] 获取待加速数据;
[0012] 所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据所述加速逻辑选取空闲可重构区信息,所述空闲可重构区信息和所述加速
逻辑构成重构指令;
[0013] 通过所述背板将所述重构指令由所述主控板传递至所述业务板;
[0014] 所述FPGA获取并解析所述重构指令,预设的重构控制器根据所述空闲可重构区信息查找相应的空闲可重构区,将所述加速逻辑配置到所述空闲可重构区,得到加速逻辑区;
其中,所述空闲可重构区为处于空闲状态下的可重构区,所述可重构区上配置有原业务功
能逻辑;
[0015] 通过所述加速逻辑区执行所述加速逻辑处理所述待加速数据,获取加速计算结果并发送至所述测试程序。
[0016] 在一个具体实施例中,所述方法还包括原业务功能逻辑恢复:
[0017] 所述测试程序获取所述加速计算结果后,所述加速逻辑区处于空闲状态;
[0018] 所述重构控制器监测到所述加速逻辑区处于空闲状态,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑。
[0019] 在一个具体实施例中,所述重构控制器设置有监视单元和重构控制单元;
[0020] 所述监视单元实时监测所述可重构区的状态,所述状态包括原业务功能逻辑工作状态、加速逻辑工作状态以及空闲状态;
[0021] 当监测到所述可重构区处于空闲状态下时,所述可重构区被记录为空闲可重构区,所述监视单元生成空闲可重构区信息,将所述空闲可重构区信息传递至所述测试程序;
[0022] 在进行所述原业务功能逻辑恢复时,所述重构控制单元恢复所述可重构区的原业务功能逻辑,并保留功能逻辑;
[0023] 在进行所述计算加速逻辑区重构时,所述重构控制单元根据重构指令查找空闲可重构区,并将加速逻辑配置到所述空闲可重构区,得到加速逻辑区。
[0024] 在一个具体实施例中,“所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,选取空闲可重构区信息”具体包括:
[0025] 所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,预估所述加速逻辑所需的逻辑资源和占用时间;
[0026] 根据所述逻辑资源和所述占用时间查找合适的空闲可重构区信息;
[0027] 判断所述空闲可重构区信息与所述加速逻辑是否匹配,
[0028] 若否,则重新查找合适的空闲可重构区信息;
[0029] 若是,则记录所述空闲可重构区信息。
[0030] 在一个具体实施例中,所述主控板通过所述背板连接多个所述业务板;
[0031] 所述测试程序通过分析、提取、收集芯片测试过程中需要进行计算加速的数据,得到所述待加速数据;
[0032] 所述待加速数据包括激励数据、所述被测芯片产生的测试数据以及反馈数据。
[0033] 在一个具体实施例中,所述重构区逻辑库中包括测试激励数据生成加速逻辑、测试反馈数据统计加速逻辑、测试反馈数据分析加速逻辑、加速计算结果判断加速逻辑、加速
计算结果统计加速逻辑、测试失效分析加速逻辑;
[0034] 所述空闲可重构区信息包括可重构区的地址、可重构区的逻辑资源以及空闲时间。
[0035] 在一个具体实施例中,所述测试程序还包括:
[0036] 获取并记录各个所述业务板上的空闲可重构区信息,并根据所述监视单元的反馈实时更新所述空闲可重构区信息;
[0037] 存储所有的所述加速逻辑和所述原业务功能逻辑。
[0038] 一种提升ATE设备芯片测试速度的装置,适用于上述所述的一种提升ATE设备芯片测试速度的方法,装置包括主控板、背板和业务板,被测芯片设置在DUT板上,所述DUT板连
接所述业务板,所述主控板配置有测试程序,所述业务板配置有FPGA;
[0039] 在计算加速逻辑区重构时,所述装置具体包括,
[0040] 主控板:用于获取待加速数据,所述测试程序根据所述待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据所述加速逻辑选取空闲可重构区信息,所述
空闲可重构区信息和所述加速逻辑构成重构指令;
[0041] 背板:用于将所述重构指令由所述主控板传递至所述业务板,将所述待加速数据传输至所述业务板的加速逻辑区,并将加速计算结果传输至所述测试程序;
[0042] 业务板:用于通过所述FPGA获取并解析所述重构指令,预设的重构控制器根据所述空闲可重构区信息查找所述空闲可重构区,将所述加速逻辑配置到所述空闲可重构区,
得到所述加速逻辑区;其中,所述空闲可重构区为处于空闲状态下的可重构区,所述可重构
区上配置有原业务功能逻辑;
[0043] 通过所述加速逻辑区处理所述待加速数据,获取所述加速计算结果并发送至所述测试程序。
[0044] 在一个具体实施例中,在原业务功能逻辑恢复时,所述装置具体包括,
[0045] 业务板:用于在获取所述加速计算结果后,当所述重构控制器监测到所述加速逻辑区处于空闲状态时,所述重构控制器将加速逻辑切换为原业务功能逻辑,将所述加速逻
辑区恢复为可重构区;
[0046] 当所述可重构区被监测到处于空闲状态下时,所述可重构区被记录为空闲可重构区。
[0047] 在一个具体实施例中,所述重构控制器设置有监视单元和重构控制单元;
[0048] 所述监视单元,用于实时监测可重构区的状态并记录处于空闲可重构区,生成空闲可重构区信息,将所述空闲可重构区信息传递至所述测试程序,所述状态包括原业务功
能逻辑工作状态、加速逻辑工作状态以及空闲状态;
[0049] 所述重构控制单元,用于在原业务功能逻辑恢复时,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑;在计算加速逻辑区重构时,根据重构指令查找空闲可重构区,
并将加速逻辑配置到所述空闲可重构区,得到加速逻辑区。
[0050] 有益效果:本发明提供了一种提升ATE设备芯片测试速度的方法、装置,利用FPGA的动态局部重构功能来实现对空闲状态的FPGA逻辑资源的充分使用,未增加额外的硬件成
本即可实现待加速数据的处理,提升了芯片测试的速度。获取待加速数据后,通过配置空闲
状态的FPGA逻辑资源实现待加速数据的处理,从而提升半导体测试机芯片测试速度。因测
试机中业务板上FPGA数量庞大,相比在测试机中额外增加硬件加速卡(服务器),计算加速
效果更好,速度更快。

附图说明

[0051] 图1为本发明实施例1的芯片待加速数据处理方法重构模式流程图;
[0052] 图2为本发明实施例1的芯片待加速数据处理方法恢复模式流程图;
[0053] 图3为本发明实施例1的ATE重构前的原理框图;
[0054] 图4为本发明实施例1的ATE重构后的原理框图;
[0055] 图5为本发明实施例1的芯片待加速数据处理方法完整流程示意图;
[0056] 图6为本发明实施例1的重构区逻辑库示例图。
[0057] 附图标记:1‑主控板;2‑背板;3‑业务板;11‑CPU;111‑测试程序; 31‑FPGA;311‑重构控制器。
[0058] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对
范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这
些附图获得其他相关的附图。

具体实施方式

[0059] 在下文中,将更全面地描述本公开的各种实施例。本公开可具有各种实施例,并且可在其中做出调整和改变。然而,应理解:不存在将本公开的各种实施例限于在此公开的特
定实施例的意图,而是应将本公开理解为涵盖落入本公开的各种实施例的精神和范围内的
所有调整、等同物和/或可选方案。
[0060] 需要说明的是,在半导体测试机中存在若干业务板,每块业务板上都有若干FPGA芯片,这些FPGA芯片负责实现各自不同的原业务功能逻辑。在芯片测试过程中,一颗芯片往
往有若干个测试项,在同一时刻只会对芯片的一种特性进行测试,即同一时刻只会测试一
个测试项,不同测试项是按流程顺序测试的。因此,在每一时刻都会有大量的业务板功能未
被使用,也就意味着每一时刻都会有大量的FPGA逻辑资源处于空闲状态。ATE测试设备中多
块业务板上有大量的FPGA(可编程逻辑门阵列), FPGA具有计算加速能力和局部可重构特
性;与此同时,芯片测试过程中单一时刻往往只执行一个芯片测试项,因此在测试芯片的过
程中ATE测试机功能存在大量的闲置,其FPGA内部对应的功能区也处于闲置状态。
[0061] 本发明提供了一种提升ATE设备芯片测试速度的方法、装置,创造性的提出利用FPGA芯片的动态局部重构功能来实现对空闲状态的FPGA 逻辑资源的充分使用,通过配置
空闲状态的FPGA逻辑资源实现待加速数据的处理,从而提升半导体测试机芯片测试速度。
因测试机中业务板上 FPGA数量庞大,相比在测试机中额外增加硬件加速卡(服务器),计算
加速效果更好,速度更快。
[0062] 在本公开的各种实施例中使用的术语仅用于描述特定实施例的目的并且并非意在限制本公开的各种实施例。如在此所使用,单数形式意在也包括复数形式,除非上下文清
楚地另有指示。除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具
有与本公开的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语
(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义
相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本公开的各种
实施例中被清楚地限定。
[0063] 实施例1
[0064] 本发明实施例1公开了一种提升ATE设备芯片测试速度的方法,方法流程图说明书附图1所示,具体方案如下:
[0065] 本实施例提供的提升ATE设备芯片测试速度的方法,适用于包括主控板、背板和业务板的系统中,即ATE测试机系统。其中,被测芯片设置在DUT板上,DUT板连接在业务板上,
主控板通过运行测试程序来调度和执行各业务板功能,从而实现集成电路测试功能;背板
实现主控板和各业务板间的通信,以及提供各业务板的电源、同步时钟和同步触发信号;业
务板实现测试芯片所需的各种业务功能,其通常由前端各功能芯片或模拟电路和FPGA组
成,FPGA内部设计有若干原业务功能逻辑电路。
[0066] 本实施例提供的提升ATE设备芯片测试速度的方法包括重构模式、恢复模式和测试模式。其中,测试模式为基础的ATE测试机系统对集成电路的测试,包括任何一种已知的
通过ATE测试芯片的测试方法。重构模式即为计算加速逻辑区重构,恢复模式即为原业务功
能逻辑恢复。
[0067] 在测试模式下获取被测芯片的待加速数据,通过重构模式重构FPGA 上的逻辑资源,用于处理待加速数据,处理完毕后,通过恢复模式恢复原来的逻辑功能,避免下次测试
时使用该逻辑资源。
[0068] 具体地,本实施例通过重构和恢复可重构区实现逻辑资源的整合。可重构区包括处于空闲状态下的空闲可重构区和处于非空闲状态下的非空闲可重构区。可重构区上配置
有原业务功能逻辑。
[0069] 具体地,重构模式流程如说明书附图1,具体流程包括:
[0070] 101、获取被测芯片的待加速数据,待加速数据包括芯片测试过程中产生的测试数据、反馈数据、激励数据等。
[0071] 102、测试程序根据待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据加速逻辑选取空闲可重构区信息,空闲可重构区信息和加速逻辑构成重构指令;
[0072] 103、通过背板将重构指令由主控板传递至业务板;
[0073] 104、业务板上的FPGA获取并解析重构指令,预设的重构控制器根据空闲可重构区信息查找空闲可重构区,将加速逻辑配置到空闲可重构区,得到加速逻辑区;其中,空闲可
重构区为处于空闲状态下的可重构区,可重构区上配置有原业务功能逻辑;
[0074] 105、通过加速逻辑区执行加速逻辑处理待加速数据,获取加速计算结果并发送至测试程序。
[0075] 需要说明的是,待加速数据为测试程序分析、提取、收集芯片测试过程中需要进行计算加速的数据。由于芯片测试过程中涉及大量的数据,待加速数据不仅仅局限于被测芯
片产生的反馈数据、响应数据等,还包括系统为生成激励数据或为进行数据分析而产生的
相关数据,凡是测试业务中需要大量计算的数据都可以用本实施例的方法进行加速。
[0076] 具体地,恢复模式流程如说明书附图2所示,恢复模式通常是在重构模式执行完毕后进行的,通过将加速逻辑区恢复为原来的可重构区,避免系统接下来进行的测试用到原
业务功能逻辑,具体流程包括:
[0077] 201、测试程序获取加速计算结果后,加速逻辑区处于空闲状态;
[0078] 202、重构控制器监测到加速逻辑区处于空闲状态,重构控制器恢复原业务功能逻辑。将加速逻辑切换为原业务功能逻辑,将加速逻辑区恢复成原来的可重构区。当监视单元
监测到该可重构区处于空闲状态时,会将其记录为空闲可重构区。
[0079] 需要说明的是,当加速逻辑区恢复为可重构区后,可重构区中除了有原业务功能逻辑,还保存有加速逻辑。用户可以选择清除加速逻辑,也可选择保留加速逻辑。
[0080] 在另一个实施例中,也可通过测试程序控制恢复模式的运行。方案如说明书附图2所示,具体流程包括:
[0081] 201、测试程序获取加速计算结果后,结合空闲可重构区信息生成恢复指令;
[0082] 202、通过背板将恢复指令由主控板传递至业务板;
[0083] 203、业务板上的FPGA获取并解析恢复指令,重构控制器根据恢复指令查找加速逻辑区,将加速逻辑切换为原业务功能逻辑,将加速逻辑区恢复成可重构区。
[0084] 具体地,测试模式包括:
[0085] 测试程序启动测试指令,通过背板将测试指令传递至业务板;
[0086] 业务板上的FPGA解析测试指令,通过访问寄存器实现访问被测芯片,获取待加速数据。
[0087] 在本实施例中,一个主控板通过背板连接多个业务板,可测试多个芯片,每个业务板上有若干个FPGA。FPGA获取被测芯片的待加速数据,待加速数据由FPGA上的加速逻辑区
进行处理,加速逻辑和待加速数据可能在同一块业务板,也可能在不同的业务板上。
[0088] 具体地,102、测试程序根据待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据加速逻辑选取空闲可重构区信息,空闲可重构区信息和加速逻辑构成重
构指令。具体包括:获取待加速数据后,测试程序根据待加速数据在预设的重构区逻辑库中
选取相应的加速逻辑,预估加速逻辑所需的逻辑资源和占用时间;监视单元监测FPGA中的
可重构区,查找空闲可重构区,并将空闲可重构区信息传递至测试程序;测试程序统计各个
业务板中的空闲可重构区信息,根据逻辑资源和占用时间选取合适的空闲可重构区信息。
可重构区信息和加速逻辑组成重构指令,通过背板传递至业务板。
[0089] 其中,监视单元会监测每个可重构区的运行情况,获取可重构区的地址、逻辑资源以及空闲时间,整合到空闲可重构区信息中发送给测试程序。
[0090] CPU运行测试程序,测试程序既负责测试业务,也负责重构业务和恢复业务。如说明书附图3所示,测试程序上配置有测试业务控制单元,用于控制基础的芯片测试业务。此
外,测试程序上还配置有可重构区空闲统计单元、空闲区重构控制单元以及重构区逻辑库。
可重构区空闲统计单元统计了FPGA中的所有空闲可重构区的相关信息,测试程序考虑逻辑
资源、占用时间等因素从中选取合适的作为加速逻辑的载体。可重构区空闲统计单元用于
获取并记录各个业务板上的空闲可重构区信息,并根据监视单元的反馈实时更新所述空闲
可重构区信息。重构区逻辑库中存储了所有的加速逻辑。
[0091] 获取待加速数据后,需要对待加速数据进行处理,系统存在加速需求,测试程序需要对加速需求进行响应。本实施例在重构模式下,通过重构空闲的逻辑资源处理待加速数
据。
[0092] 具体地,104、业务板上的FPGA获取并解析重构指令,预设的重构控制器根据空闲可重构区信息查找空闲可重构区,空闲可重构区上配置有基础的原业务功能逻辑,可重构
区在工作状态下会执行原业务功能逻辑,将加速逻辑配置到空闲可重构区,执行加速逻辑,
得到加速逻辑区。此时,该区域只执行加速逻辑而不再执行原本的原业务功能逻辑。由于
FPGA每一时刻都会有大量的FPGA逻辑资源处于空闲状态,本实施例基于这一特性,利用
FPGA的在线局部重配置功能,将逻辑资源重配置。
[0093] 在FPGA上,通过重构控制器进行逻辑资源的重配置。如说明书附图 3和说明书附图4所示,重构控制器分别连接背板通信接口和可重构区,根据测试程序发送的指令对可重
构区进行配置,包括监测可重构区、配置空闲可重构区和恢复加速逻辑区等。每个可重构区
都配置有原业务功能逻辑,用于实现各自的功能。当某一时刻该可重构区处于闲置状态时,
将加速逻辑配置到可重构区,并执行该加速逻辑,此时可重构区就能实现加速逻辑对应的
相关功能。
[0094] 例如,重构前如说明书附图3所示,可重构区A配置有功能A逻辑,可重构区B配置有功能B逻辑,可重构区C配置有功能C逻辑,经过重构后如说明书附图4所示,可重构区A配置
有加速逻辑1,可重构区B 配置有加速逻辑2,可重构区C配置有加速逻辑3,此时重构区A、重
构区B和可重构区C执行相应的加速逻辑,原业务功能逻辑不执行。当处理完毕后,在恢复模
式下,可重构区A在将加速逻辑1切换为功能A逻辑,可重构区B在将加速逻辑2切换为功能B
逻辑,可重构区C在将加速逻辑3切换为功能C逻辑,此时,可重构区恢复为重构之前的原业
务功能逻辑,不再执行加速逻辑,防止接下来某一时刻,测试机系统需要执行相应的原业务
功能逻辑。
[0095] 在本实施例中,重构控制器包括监视单元和重构控制单元,如说明书附图3和说明书附图4所示。监视单元能够实时监测FPGA上的可重构区,判断可重构区是否处于空闲状
态,若是,则为空闲可重构区。重构控制器将空闲可重构区信息传递至测试程序,空闲可重
构区信息包括可重构区的地址、空闲时长、逻辑空间大小等。
[0096] 监视单元用于实时监测可重构区的状态并生成空闲可重构区信息,将空闲可重构区信息传递至测试程序,状态包括原业务功能逻辑工作状态、加速逻辑工作状态以及空闲
状态。
[0097] 当监测到可重构区处于空闲状态下时,可重构区被记录为空闲可重构区,监视单元生成空闲可重构区信息,将空闲可重构区信息传递至测试程序。
[0098] 在进行原业务功能逻辑恢复时,即恢复模式下,重构控制单元将加速逻辑切换为原业务功能逻辑,执行原业务功能逻辑,恢复出空闲可重构区;在进行计算加速逻辑区重构
时,即重构模式下,重构控制单元根据重构指令查找空闲可重构区,并将加速逻辑配置到空
闲可重构区,执行加速逻辑,得到加速逻辑区。
[0099] 完整的流程图如说明书附图5所示。首先,判断是否存在加速需求,若是,则根据待加速数据预估所需的逻辑资源和占用时间,并在重构区逻辑库中查找相应的加速逻辑。测
试程序查找能够匹配逻辑资源和占用时间的空闲可重构区,找到之后记录该空闲可重构区
信息。根据逻辑资源和占用时间查找合适的空闲可重构区信息后,需要判断空闲可重构区
信息与加速逻辑是否匹配,不同情况下的加速逻辑适用的可重构区会存在差异。因此需要
判断空闲可重构区与加速逻辑是否匹配:若否,则重新查找合适的空闲可重构区信息;若
是,则记录空闲可重构区信息。将空闲可重构区信息和加速逻辑构成重构指令,通过背板传
递至FPGA。 FPGA解析重构指令,重构控制器根据空闲可重构区信息查找可重构区,并将加
速逻辑配置到该重构区内,执行该加速逻辑形成加速逻辑区。利用加速逻辑区处理待加速
数据,直至处理完毕,发送加速计算结果至测试程序。测试程序启动重构指令,重构控制器
将加速逻辑切换为原业务功能逻辑,恢复为原来的可重构区。
[0100] 待加速数据不同,选择的加速逻辑不同。如说明书附图6所示,本实施例提供了部分加速逻辑,重构区逻辑库中包括测试激励数据生成加速逻辑、测试反馈数据统计加速逻
辑、测试反馈数据分析加速逻辑、加速计算结果判断加速逻辑、加速计算结果统计加速逻
辑、测试失效分析加速逻辑。例如,被测芯片为图像处理芯片时,在测试完图像处理芯片的
功能后,采集得到图像数据,图像数据即为待加速数据。此时,可选择反馈数据分析加速逻
辑,分析图像数据是否正确,若图像数据正确,则证明芯片符合标准。若图像数据不正确,则
证明芯片存在缺陷,需要分析芯片缺陷。采用测试失效分析加速逻辑分析芯片测试失败的
原因,找出芯片的故障点反馈给主控板。因此,本实施例在重构模式下,可一次重构多个加
速逻辑,即测试程序在重构区逻辑库中选择一个或多个加速逻辑,配置到空闲可重构区中,
得到加速逻辑区,此时加速逻辑区具备一个或多个加速逻辑。
[0101] 本实施例提供了一种提升ATE设备芯片测试速度的方法,利用FPGA 的动态局部重构功能来实现对空闲状态的FPGA逻辑资源的充分使用。获取待加速数据后,通过配置空闲
状态的FPGA逻辑资源实现待加速数据的处理,从而提升半导体测试机芯片测试速度。因测
试机中业务板上FPGA 数量庞大,相比在测试机中额外增加硬件加速卡(服务器),计算加速
效果更好,速度更快。
[0102] 实施例2
[0103] 本发明实施例2公开了一种提升ATE设备芯片测试速度的装置,具体结构如说明书附图3 所示,具体方案如下:
[0104] 装置包括主控板1、背板2和业务板3,主控板1上的CPU(中央处理器)11上配置有测试程序111,业务板3上配置有FPGA(可编程逻辑器件)31,被测芯片设置在DUT板上,DUT板连
接业务板3。其中,重构模式即为计算加速逻辑区重构,恢复模式即为原业务功能逻辑恢复。
[0105] 具体地,本实施例通过重构和恢复可重构区实现逻辑资源的整合。可重构区包括处于空闲状态下的空闲可重构区和处于非空闲状态下的非空闲可重构区。可重构区上配置
有原业务功能逻辑。
[0106] 在重构模式下,装置具体包括:
[0107] 主控板1,配置有测试程序111,用于获取被测芯片的待加速数据,测试程序111根据待加速数据的类型在预设的重构区逻辑库中选取相应的加速逻辑,根据加速逻辑选取空
闲可重构区信息,空闲可重构区信息和加速逻辑构成重构指令。
[0108] 背板2,用于实现主控板1与业务板3之间的通信,将指令传递至业务板3,将待加速数据传输至业务板3的加速逻辑区,并将加速计算结果传输至测试程序111。
[0109] 业务板3,配置有FPGA(可编程逻辑器件)31,用于通过FPGA(可编程逻辑器件)31获取并解析重构指令,预设的重构控制器根据空闲可重构区信息查找空闲可重构区,将加速
逻辑配置到空闲可重构区,得到加速逻辑区。其中,空闲可重构区为处于空闲状态下的可重
构区,可重构区上配置有原业务功能逻辑;
[0110] 在恢复模式下,装置具体包括:
[0111] 业务板3:用于在获取加速计算结果后,当重构控制器监测到加速逻辑区处于空闲状态时,重构控制器恢复所述可重构区的原业务功能逻辑,并保留功能逻辑。当可重构区被
监测到处于空闲状态下时,重构逻辑器将其记录为空闲可重构区。
[0112] 其中,重构控制器设置有监视单元和重构控制单元;
[0113] 监视单元:用于实时监测可重构区的状态并记录处于空闲状态的可重构区,生成空闲可重构区信息,实时监测FPGA(可编程逻辑器件)31 上的可重构区,判断可重构区是否
处于空闲状态,若是,则为空闲可重构区。具体地,用于实时监测可重构区的状态并生成空
闲可重构区信息,将空闲可重构区信息传递至测试程序,状态包括原业务功能逻辑工作状
态、加速逻辑工作状态以及空闲状态;
[0114] 重构控制单元,用于在恢复模式时,恢复所述可重构区的原业务功能逻辑,并保留功能逻辑;在重构模式时,根据重构指令查找空闲可重构区,并将加速逻辑配置到空闲可重
构区,执行加速逻辑,得到加速逻辑区。
[0115] 本实施例提供了一种提升ATE设备芯片测试速度的装置,在实施例 1的基础上,将实施例1的方法系统化,使其更具实际应用性。
[0116] 本发明提供了一种提升ATE设备芯片测试速度的方法、装置,利用 FPGA的动态局部重构功能来实现对空闲状态的FPGA逻辑资源的充分使用,未增加额外的硬件成本即可实
现待加速数据的处理,提升了芯片测试的速度。获取待加速数据后,通过配置空闲状态的
FPGA逻辑资源实现待加速数据的处理,从而提升半导体测试机芯片测试速度。因测试机中
业务板上FPGA数量庞大,相比在测试机中额外增加硬件加速卡(服务器),计算加速效果更
好,速度更快。
[0117] 本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模
块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于
本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一
步拆分成多个子模块。上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的
仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思
之的变化都应落入本发明的保护范围。