一种提高测试流效率的半导体自动测试设备及测试方法与流程

文档序号:21404541发布日期:2020-07-07 14:37阅读:180来源:国知局
本发明涉及半导体自动测试设备(automatictestequipment,简称ate)领域,尤其涉及一种提高测试流效率的半导体自动测试设备及测试方法。
背景技术
::在半导体电子元器件(device)的制造工艺过程中,需要各种测试试验设备,这类设备就是所谓的半导体自动测试设备ate。半导体自动测试设备ate存在于前道工序(frontend)和后道工序(backend)的各个环节,具体的取决于工艺(process)设计的要求。半导体自动测试的测试类型通常分为几个部分,以下列出常用的几个:①.dc测试:验证被测芯片的电压及电流参数是否符合规格要求;②.functional测试:验证芯片内部一系列逻辑功能操作的正确性;③.ac测试:保证芯片能在特定的时间约束内完成逻辑操作。在半导体自动化测试中,测试项是基础,所有的测试内容都依赖于测试工程中的各个测试项内容。然而,目前创建新测试项代码文件的方式有两种,一种为提供一个固定内容的单一测试项模板,基于该模板生成测试项对应的代码文件。而本领域技术人员清楚,一个测试工程包含了大量的测试项,每个测试项包含了大量的测试内容点,用一个模板生成测试项的内容单一,且需要去重新实现每个测试项,花费大量的精力去编写大量的代码,代码编写工作量大,且所有的代码需要重新验证,测试内容多,后续还要重新验证这个测试项是否可。在半导体自动化测试中,还有一种创建新测试项生成代码文件的方式。该种方式了单一模板,根据测试类型的不同,可以选择不同的模板生成测试项,但是该种方式还是存在上述文中所提到的单一模板问题,即虽然模板扩展至几种,但模板提供的信息还是相对来说比较少,每个测试项还是需要编写大量代码。技术实现要素:本发明的目的在于提供一种提高测试流效率的半导体自动测试设备及测试方法,其通过使用已存在的测试项,减少测试项代码编写量,降低代码编写难度,减少测试验证时间,解决半导体自动化测试中生成测试项的代码文件内容单一的问题。为实现上述目的,本发明的技术方案如下:一种提高测试流效率的半导体自动测试装置,其包括:设备端,包括多个分布式板卡;数据库,至少包括测试项数据表和测试类型数据表,所述测试项数据表为以测试项为维度的存储有每个测试项数据的表,所述测试类型数据表用于存储测试类型id和测试类型名称name的数据;其中,每个测试项数据包括测试项id、测试项名称name和测试类型的数据;测试流工具,分别与设备端和数据库相连,用于根据设备端所需测试的测试类型要求,管理存储于所述数据库中的测试项数据以完成发送给所述设备端的所述测试项的代码文件,其包括:常规功能模块,用于根据所述测试类型选择测试项模板,以新建所述测试类型数据表中的测试项数据;扩展功能模块,其包括提取单元,所述提取单元根据所述测试类型所对应的所述测试项数据表中的所述测试项id或测试项名称name,获取所需的测试项数据;生成模块,用于将所述测试项数据所对应指向一个信息及代码文件,发送给所述设备端。进一步地,所述扩展功能模块还包括更新单元,所述更新单元支持将已存在所述数据库中的所述测试项数据表中的所述测试项数据和/或所述测试类型数据表中的内容进行更新,然后再保存到数据库表中。进一步地,所述扩展功能模块还包括删除单元,所述删除单元支持将已存在所述数据库中的所述测试项数据表中的所述测试项数据进行删除。进一步地,所述测试类型包括ac测试类型、dc测试类型和functional测试类型。为实现上述目的,本发明又一技术方案如下:一种采用上述提高测试流效率的半导体自动测试装置的测试方法,其包括建库步骤和测试步骤:所述建库步骤包括:步骤s11:在数据库中建立测试项数据表和测试类型数据表,所述测试项数据表为以测试项为维度的存储有每个测试项数据的表,所述测试类型数据表用于存储测试类型id和测试类型名称name的数据;其中,每个测试项数据包括测试项id、测试项名称name和测试类型的数据;步骤s12:根据所述测试类型选择测试项模板,以新建所述测试类型数据表中的测试项数据;所述测试步骤包括:步骤s21:接收从设备端所需测试的测试类型要求;步骤s22:根据所述测试类型所对应的所述测试项数据表中的所述测试项id或测试项名称name,获取所需的测试项数据;步骤s23:将所述测试项数据所对应指向一个信息及代码文件,发送给所述设备端。进一步地,所述建库步骤还包括步骤s13,将已存在所述数据库中的所述测试项数据表中的所述测试项数据和/或所述测试类型数据表中的内容进行更新,然后再保存到数据库表中。进一步地,所述建库步骤还包括步骤s14,将已存在所述数据库中的所述测试项数据表中的所述测试项数据进行删除。从上述技术方案可以看出,本发明的解决方案可以快速的完成测试项的代码实现,避免每次新建一个工程,需要重新编写所有测试项的代码,并且使用已测试过的测试项代码,可以提高测试效率,保证代码质量。附图说明图1所示为本发明实施例中一种改善测试数据流的半导体自动测试装置的示意图图2所示为本发明实施例中数据库的示意图图3所示为本发明实施例中一种改善测试数据流的半导体自动测试方法的流程示意图图4所示为本发明实施例中测试流工具与数据库交互的示意图具体实施方式下面结合附图1-4,对本发明的具体实施方式作进一步的详细说明。请参阅图1,图1所示为本发明实施例中一种改善测试数据流的半导体自动测试装置的示意图。如图1所示,该种改善测试数据流的半导体自动测试装置包括测试流工具和数据库,测试流工具模块分别与设备端和数据库模块相连,用于生成和管理测试项以完成测试项的代码实现。在本发明的实施例中,设备端包括多个分布式板卡;在设备端,分布式板卡可能是低压测试多通道类型的资源板卡,可能是高压测试的单通道类型的资源板卡,也可能是非测试通道类型的控制板卡,板卡的插槽中插有(例如,cpu、cpld和fpga等)多种固件。请参阅图2,图2所示为本发明实施例中数据库的示意图。该数据库可以至少包括测试项数据表和测试类型数据表,所述测试项数据表为以测试项为维度的存储有每个测试项数据的表,所述测试类型数据表用于存储测试类型id和测试类型名称name的数据;其中,每个测试项数据包括测试项id、测试项名称name和测试类型的数据。在本发明的实施例中,数据库中的测试项数据表(testitemstable)默认存有少量的测试项数据,这些测试项数据都是半导体测试所包含的基本的测试内容,每条数据都指向一个测试项包含的信息及文件,供最初使用,后续根据测试流工具添加测试项数据到数据库中丰富测试项的数据量。如图2所示,该数据库所包括的以测试项为维度的保存有每个测试项数据的表,表结构中包含序号id、名称name、测试类型functiontype和测试数据data等参数信息。具体测试项数据表如下表1所述和解释说明:表1:另一张表用于存储测试类型的数据,具体表结构中的字段说明如下表2说明:在本发明的实施例中,测试流工具分别与设备端和数据库相连,用于根据设备端所需测试的测试类型要求,管理存储于所述数据库中的测试项数据以完成发送给所述设备端的所述测试项的代码文件。该测试流工具包括常规功能模块、扩展功能模块和生成模块。常规功能模块用于根据所述测试类型选择测试项模板,以新建所述测试类型数据表中的测试项数据;即通过测试流工具扩展的功能添加测试项,选择已存在的测试项生成新测试项,通过读取数据库中存有的测试项数据的测试项数据(testitemstable)表显示已存在的测试项数据,供使用者选择已存在的测试项。扩展功能模块,其包括提取单元、更新单元和删除单元。该提取单元根据所述测试类型所对应的所述测试项数据表中的所述测试项id或测试项名称name,获取所需的测试项数据;生成模块用于将所述测试项数据所对应指向一个信息及代码文件,发送给所述设备端。在本发明的实施例中,从数据库中获取所有的测试项数据,根据测试类型和测试项名称搜索所有选择的测试项,这里对应一个功能操作界面,界面显示所有从数据库的testitemstable表中获取数据,其中有根据functiontype字段进行分类显示,且有个搜索框可通过搜索名称关键字搜索特定的测试项,然后将指定的测试项数据(如果该系统使用c++来实现测试项的,除了存在数据库中的data列数据包含了.cpp和.h文件,文件中已包含了实现测试内容的代码)添加到工程中,后续再根据需求修改少量代码,实现所需测试的内容。所述更新单元支持将已存在所述数据库中的所述测试项数据表中的所述测试项数据和/或所述测试类型数据表中的内容进行更新,然后再保存到数据库表中。所述删除单元支持将已存在所述数据库中的所述测试项数据表中的所述测试项数据进行删除。总结一下,测试流包含默认的可以根据不同测试类型的模板创建新测试项,最主要的本发明增加了可以通过获取数据库中已存在的测试项,然后通过测试类型(测试类型比如ac测试,dc测试,functional测试,通过测试类型的不同,可以实现保存的数据的多样性,以供不同的测试工程及测试类型使用,后续可以根据需求扩展更多的不同的测试类型),或者测试项名称检索到具体存在数据库中的测试项(举个例子,如果是用c++代码来实现的,那么数据库中的testitemstable表中的data列包含了.h和.cpp文件的数据)进行筛选,选择所需的测试项,将该测试项存在数据库中的数据添加到工程中即可。后续再根据开发需求,少量修改代码实现所要测试的内容。下面对本发明实施例中一种改善测试数据流的半导体自动测试方法进行详细说明。请参阅图3,图3所示为本发明实施例中一种改善测试数据流的半导体自动测试方法的流程示意图。如图3所示,该半导体自动测试方法具体包括建库步骤和测试步骤:所述建库步骤包括:步骤s11:在数据库中建立测试项数据表和测试类型数据表,所述测试项数据表为以测试项为维度的存储有每个测试项数据的表,所述测试类型数据表用于存储测试类型id和测试类型名称name的数据;其中,每个测试项数据包括测试项id、测试项名称name和测试类型的数据;步骤s12:根据所述测试类型选择测试项模板,以新建所述测试类型数据表中的测试项数据。在本发明的实施例中,通过测试流工具扩展的功能添加当前工程中的测试项信息保存到数据库的testitemstable表中,以供后续使用。即通过测试流工具扩展的功能添加测试项,选择已存在的测试项生成新测试项。此外,测试流工具扩展的功能,支持将已编写好的测试项即testitem添加到数据库的testitems表中的功能。扩展测试项的数据,以供后续再次使用。步骤s13,将已存在所述数据库中的所述测试项数据表中的所述测试项数据和/或所述测试类型数据表中的内容进行更新,然后再保存到数据库表中。在本发明的实施例中,可以通过读取数据库中存有的测试项数据的testitemstable表显示已存在的测试项数据,更新当前根据已存在数据生成的新测试项数据到数据库的testitemstable表中。即测试流工具扩展的功能支持将已存在数据库中的testitem内容进行更新,然后再保存到数据库中。步骤s14,将已存在所述数据库中的所述测试项数据表中的所述测试项数据进行删除。在本发明的实施例中,可以通过测试流工具扩张的功能删除一条或多条在数据库的testitemstable表的测试项数据。所述测试步骤包括:步骤s21:接收从设备端所需测试的测试类型要求;步骤s22:根据所述测试类型所对应的所述测试项数据表中的所述测试项id或测试项名称name,获取所需的测试项数据;步骤s23:将所述测试项数据所对应指向一个信息及代码文件,发送给所述设备端。以上所述的仅为本发明的优选实施例,所述实施例并非用以限制本发明的专利保护范围,因此凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1