CN113189479B - 一种提升ate芯片测试速度的方法、装置及测试系统 - Google Patents
一种提升ate芯片测试速度的方法、装置及测试系统 Download PDFInfo
- Publication number
- CN113189479B CN113189479B CN202110716389.XA CN202110716389A CN113189479B CN 113189479 B CN113189479 B CN 113189479B CN 202110716389 A CN202110716389 A CN 202110716389A CN 113189479 B CN113189479 B CN 113189479B
- Authority
- CN
- China
- Prior art keywords
- instruction set
- instruction
- functional
- scheduling
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明提出了一种提升ATE芯片测试速度的方法、装置及测试系统。适用于包括主控板、背板和业务板的系统,主控板配置有测试程序,业务板上的FPGA设置有指令集存储器和指令执行单元。方法包括:测试程序发送控制命令或调度命令,通过背板传递至业务板;业务板通过指令集存储器查找对应的功能指令集,并发送给指令执行单元,指令执行单元查找并访问相应功能的控制寄存器,进而间接访问功能芯片,实现功能指令。本发明通过FPGA逻辑硬件来实现功能调度以及各功能函数的寄存器配置访问动作,各业务板上可同步并发调度和执行各测试功能函数,实现最大执行并行度,降低了主控CPU的执行负担,大大提升了ATE芯片测试速度,尤其是多芯片并行测试速度。
Description
技术领域
本发明涉及集成电路测试领域,特别涉及一种提升ATE芯片测试速度的方法、装置及测试系统。
背景技术
ATE(Automatic Test Equipment)是自动测试设备,它是一种由高性能计算机控制的测试仪器的集合体,是由测试仪和计算机组合而成的测试系统,计算机通过运行测试程序的指令来控制测试硬件。半导体芯片测试机用于检测集成电路的功能和性能的完整性,是集成电路生产制造流程中确保集成电路品质的重要设备。测试系统最基本的要求是自身保证测试功能的快速性、可靠性和稳定性。其中快速性尤为重要。
随着集成电路复杂度的提高,其测试复杂度也随之日益提高,大规模集成电路往往会要求几百次的电压、电流和时序的测试以及百万次的功能测试步骤以保证器件的完全正确,这也使得芯片的测试成本越来越高,一些器件的测试成本甚至占到芯片成本的绝大部分比例。因此如何提升芯片的测试速度是半导体测试机行业的共同课题。
由此,需要有一种更好的方案来提升芯片的测试速度。
发明内容
有鉴于此,本发明提出了一种提升ATE芯片测试速度的方法、装置及测试系统,具体方案如下:
一种提升ATE芯片测试速度的方法,适用于包括主控板、背板和业务板的系统中,所述主控板上配置有测试程序,所述业务板上的FPGA设置有指令集存储器和指令执行单元,所述指令集存储器配置有多个功能指令集,每个所述功能指令集存储有实现一个功能指令所需的所有控制寄存器信息;
方法包括:
所述测试程序发送执行功能指令的控制命令,通过所述背板传递至所述业务板;
所述业务板接收所述控制命令后,通过所述指令集存储器查找出与所述功能指令对应的功能指令集,并将所述功能指令集发送给所述指令执行单元;
所述指令执行单元读取所述功能指令集,根据所述功能指令集上存储的控制寄存器信息对相应的控制寄存器进行读写访问;
通过读写访问相应的控制寄存器进而间接访问功能芯片,实现所述功能指令。
在一个具体实施例中,所述指令集存储器上还配置有调度指令集,所述调度指令集顺序存储有全部的多功能指令集,每个所述多功能指令集对应一个多功能指令,所述多功能指令集包括重复一个功能指令集多次、依次执行多个功能指令集或并行运行多个功能指令集;
所述方法还包括:
所述测试程序发送执行多功能指令的调度命令,通过所述背板传递至所述业务板;
所述业务板接收所述调度命令后,通过所述调度指令集查找出相应的多功能指令集,按照所述多功能指令集顺序调取相应的功能指令集,并发送给所述指令执行单元;
所述指令执行单元读取所述功能指令集和所述多功能指令集,根据所述调度指令集对相应的控制寄存器进行读写访问。
在一个具体实施例中,所述背板连接多个所述业务板;
所述测试程序发送所述控制命令或所述调度命令,通过所述背板点对点或广播传递至多个所述业务板;
多个所述业务板接收所述控制命令或所述调度命令,基于所述FPGA同时执行相应功能。
在一个具体实施例中,所述测试程序设置有指令集配置单元、执行单元和底层驱动单元;
所述指令集配置单元用于生成所述功能指令集、所述多功能指令集、所述功能指令集以及所述调度指令集,并通过所述背板加载到FPGA的所述指令集存储器中;
所述执行单元用于发送执行命令,所述执行命令包括执行功能指令的控制命令和执行多功能指令的调度命令;
所述底层驱动单元用于底层通信的调度和管理。
在一个具体实施例中,所述指令执行单元连接各所述控制寄存器;
所述指令执行单元内的运行指令包括执行控制、寄存器读取、寄存器写入、条件判断、条件等待。
在一个具体实施例中,所述方法还包括:
实现所述功能指令后,通过所述FPGA接收各所述功能芯片的反馈数据,将所述反馈数据存储在预设功能寄存器中;
若所述指令执行单元获取寄存器读取的运行指令,则允许读取所述反馈数据。
在一个具体实施例中,所述功能指令集内配置有包括控制寄存器地址、读写操作、读写数据、读写时间和读写条件。
在一个具体实施例中,所述指令集存储器配置有所述多功能指令集、所述功能指令集、所述调度指令集以及预设通用指令集。
一种提升ATE芯片测试速度的装置,适用于上述所述的一种提升ATE芯片测试速度的方法,包括主控板、背板和业务板,所述业务板上的FPGA配置有指令集存储器和指令执行单元,所述指令集存储器配置有调度指令集和多个功能指令集,每个所述功能指令集存储有实现一个功能指令所需的所有控制寄存器信息;所述调度指令集顺序存储有全部的多功能指令集,每个所述多功能指令集对应一个多功能指令;
所述主控板:配置有测试程序,用于通过所述测试程序发送执行功能指令的控制命令或执行多功能指令的调度命令;
所述背板:用于实现所述主控板与所述业务板之间的通信;
所述业务板:用于接收所述控制命令后,或接收所述调度命令后,通过所述指令集存储器查找出对应的功能指令集或多功能指令集,并发送给所述指令执行单元;
所述指令执行单元获取相应的所述功能指令集,根据所述功能指令集上存储的控制寄存器信息对相应的控制寄存器进行读写访问,通过读写访问相应的控制寄存器进而间接访问功能芯片,实现所述功能指令或所述多功能指令。
一种ATE测试系统,包括软件系统和硬件系统;
所述硬件系统上设置有上述所述的提升ATE芯片测试速度的装置;
所述软件系统设置在主控板CPU上,用于控制所述硬件系统实现芯片测试。
有益效果:本发明提供了一种提升ATE芯片测试速度的方法、装置及ATE测试系统。由FPGA逻辑硬件来实现功能调度、各功能函数的寄存器配置访问动作,降低了CPU的执行负担,大大提升了ATE芯片测试速度。由FPGA直接调度和实现各功能函数可以节省大量因软硬件通信交互带来的时间损耗,传统的软件访问一个寄存器的所需时间是微秒(us)级,而FPGA访问一个寄存器的时间是纳秒(ns)级。由于每个业务板上都有FPGA,各功能单元的控制寄存器和逻辑单元都在各自的FPGA内部,因此可以让各业务板上的FPGA同步并发调度和执行各测试功能函数,实现最大执行并行度。由于调度功能也在各自FPGA内实现,在大量需要信息反馈的测试场合,其反馈信息会在最短时间内由FPGA获取,大大增加反馈信号的响应效率。
附图说明
图1为传统的ATE芯片测试的原理图;
图2为本发明实施例1的ATE芯片测试原理框图;
图3为本发明实施例1的ATE芯片测试方法流程图;
图4为本发明实施例1的调度指令集示例图;
图5为本发明实施例1的通用指令集示例图;
图6为本发明实施例1的功能指令集示例图。
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
附图标记:1-主控板;2-背板;3-业务板;11-CPU;111-测试程序;31-FPGA;311-指令集存储器;312-指令执行单元。
具体实施方式
在下文中,将更全面地描述本公开的各种实施例。本公开可具有各种实施例,并且可在其中做出调整和改变。然而,应理解:不存在将本公开的各种实施例限于在此公开的特定实施例的意图,而是应将本公开理解为涵盖落入本公开的各种实施例的精神和范围内的所有调整、等同物和/或可选方案。
本发明提供了一种提升ATE芯片测试速度的方法、装置及测试系统,通过FPGA逻辑硬件来实现功能调度、各功能函数的寄存器配置访问动作,减少了测试程序对FPGA内寄存器的读写次数,不仅能够降低软件的执行负担,同时又能够提升ATE芯片的测试速度。
需要说明的是,现有的ATE芯片测试都是通过CPU上的测试程序访问业务板上的寄存器,实现功能调度、功能函数的寄存器配置访问等。现有的ATE芯片测试方法如说明书附图1所示。ATE测试程序通常工作在主控板CPU上或扩展工控机CPU上,其通常分为驱动层、功能函数层、功能调度层。其中大部分功能的实现都是测试程序通过调用功能函数实现的,而各功能函数的大部分工作都是通过对业务板上的功能寄存器的读写实现的。ATE测试程序执行过程抽象到最底层就是大量的对业务板FPGA内的寄存器的读写工作。而一套测试系统通常由若干个业务板组成,每个业务板上又有若干个功能块,测试过程对每个功能块通常又会调用若干次,而每调用一次功能都可以抽象成若干次的寄存器读写操作,然而软件每次对FPGA寄存器的读写操作时间都相对比较长,ATE测试程序访问一个寄存器的时间是微秒(us)级。测试程序往往需要访问大量的寄存器,局限于主控板与业务板之间的通信距离,执行一次测试需要耗费很长的时间。
本发明针对芯片测试这一缺陷,提出通过业务板上FPGA逻辑硬件来实现功能调度、各功能函数的寄存器配置访问动作,从而减少了测试程序对FPGA内寄存器的读写次数。
在本公开的各种实施例中使用的术语仅用于描述特定实施例的目的并且并非意在限制本公开的各种实施例。如在此所使用,单数形式意在也包括复数形式,除非上下文清楚地另有指示。除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本公开的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本公开的各种实施例中被清楚地限定。
实施例1
本发明实施例1公开了一种提升ATE芯片测试速度的方法,原理框图说明书附图2所示,具体方案如下:
一种提升ATE芯片测试速度的方法,适用于包括主控板、背板和业务板的系统中,主控板通过背板与多个业务板建立通信。主控板通过运行测试程序来调度和执行各业务板功能,从而实现芯片测试功能;背板实现主控板和各业务板的通信、提供各业务板的电源、同步时钟和同步触发信号;业务板实现测试机所需的各种业务功能,其通常由前端各功能芯片和FPGA组成,FPGA内部设计有逻辑电路,包含各功能逻辑控制单元和各功能控制寄存器单元以及背板通信接口单元,上层软件通过背板通信接口实现对各功能控制寄存器的读写操作实现控制各功能逻辑单元和功能芯片,从而实现对各功能的配置、调度、执行和监控功能。
本实施例将功能的寄存器组成一个集合,大大减少CPU与业务板之间的交互通信。ATE测试程序通常工作在主控板CPU上或扩展工控机CPU上。
在本实施例中,业务板上的FPGA配置有指令集存储器和指令执行单元,指令集存储器配置有多个功能指令集,每个功能指令集存储有实现一个功能指令所需的所有的控制寄存器信息。例如,实现功能A需要访问功能A芯片,指令集存储器中的A功能指令集配置有功能A的所有相关寄存器的信息,包括寄存器的地址等。通过FPGA直接调度和实现各功能函数可以节省大量因软硬件通信交互带来的时间损耗,传统的软件访问一个寄存器的时间是微秒(us)级,而FPGA访问一个寄存器的时间是纳秒(ns)级,能有效提高测试速度。
方法的步骤如说明书附图3所示,方法具体包括:
101、主控板上的测试程序发送执行功能指令的控制命令,通过背板传递至业务板;
102、业务板接收控制命令后,通过指令集存储器查找出与功能指令对应的功能指令集,并发送给指令执行单元;
103、指令执行单元读取功能指令集,根据功能指令集上存储的控制寄存器信息访问相应的控制寄存器;
104、通过访问相应的控制寄存器实现访问功能芯片,完成功能指令。
其中,指令集存储器上还配置有调度指令集,调度指令集可以调度其它功能指令集。在实际测试中,往往需要重复调用一个功能多次,或者同时调用多个功能。例如,重复调用一个功能时,需要测试程序发送多次,但发送的指令都是相同的,基于这一特点,本实施例提出了多功能指令。多功能指令包括重复一个功能多次、依次执行多个功能、并行运行多个功能或者其中任意项的组合。任意项的组合包括两两结合或三个同时运行等。
每个多功能指令对应有一个多功能指令集,调度指令集顺序存储有全部的多功能指令集。多功能指令集包括重复一个功能指令集多次、依次执行多个功能指令集、并行运行多个功能指令集或者其中任意项的组合。任意项的组合包括两两结合或三个同时运行等。示例性地,调度指令集包括执行单个功能指令集的次数、并行执行多个功能指令集,调度指令集的示例如说明书附图4所示。
方法具体包括:
主控板上的测试程序发送执行多功能指令的调度命令,通过背板点对点或广播传递至多个业务板;
业务板接收控制命令后,通过调度指令集查找出相应的多功能指令集,按照多功能指令集顺序调取功能指令集,并发送给指令执行单元;
指令执行单元读取功能指令集,根据功能指令集上存储的控制寄存器信息查找相应的控制寄存器,通过访问相应的控制寄存器实现多功能指令。
需要说明的是,多功能指令集中往往存储有多个功能指令集,实现一个多功能指令往往需要按顺序执行多个功能指令,因此多功能指令集中的功能指令集是按照预设顺序排列的。对应的,业务板也需按照顺序调取功能指令集。
指令集存储器如说明书附图2所示,指令集存储器设置在FPGA上,与背板通信接口连接,功能指令通过背板传递到业务班上后,通过背板连接器传递搭配背板通信接口,背板通信接口也设置在FPGA上。指令集存储器上配置有调度指令集、功能A指令集、功能C指令集等等,还包括通用指令集。通用指令集的示例如说明书附图5所示,包括寄存器的读写操作、寄存器地址、写入数据、读出数据,等待操作包括等待时间、等待条件,跳转操作包括起始地址、结束地址等。需要说明的是,本实施例只提供了部分操作,通用指令集包含的信息涉及到寄存器的各种操作。
功能指令集的示例如说明书附图6所示。功能指令集包括寄存器的读写操作、等待操作、跳转操作等,读写操作包括寄存器的信息和读写数据,等待操作包括等待时间、等待条件,跳转操作包括起始地址、结束地址。
指令执行单元上配置有执行控制单元,执行控制单元读取调度指令集中的信息,按照调度指令集中的信息对指令进行执行,包括并行执行、依次执行、单独执行等,指令执行单元根据指令存储器中的功能指令集访问相应的控制寄存器,相应的控制寄存器通过逻辑单元访问功能芯片。
在本实施例中,指令执行单元包括但不限于执行控制指令、寄存器读取指令、寄存器写入指令、条件判断指令、条件等待指令,指令执行单元中预设的指令包括各种对寄存器的操作。例如,实现功能指令后,通过FPGA接收各功能芯片的反馈数据,将反馈数据存储在预设功能寄存器中;若指令执行单元获取寄存器读取的运行指令,则允许读取反馈数据。
执行控制指令为对指令集存储器中的功能指令集或调度指令集进行各种执行操作,如并行执行、依次执行、单独执行等。寄存器写入指令为对寄存器进行配置,写入相关数据,完成寄存器的配置,进而实现相应的功能。条件判断指令包括满足相应的条件才能进行相应的操作,可适用于反馈数据的判断。条件等待指令包括在进行新的操作时,等待一段时间后再进行操作。
寄存器读取指令为对各控制寄存器进行数据读取操作,数据读取涉及到数据的反馈,当FPGA读取到寄存器的数据后,需要反馈给主控板。由于调度功能也在各自FPGA内实现,在大量需要信息反馈的测试场合,其反馈信息会在最短时间内由FPGA获取,大大增加反馈信号的响应效率。
实现功能指令后,通过FPGA接收各功能芯片的反馈数据,将反馈数据存储在功能寄存器中;若指令执行单元获取寄存器读取的运行指令,则允许读取反馈数据。
在本实施例中,主控板通过背板连接多个业务板。主控板和业务板之间通过背板实现通信,通信的方式包括点对点通信和广播通信。点对点通信具体包括:主控板与每一个业务板之间建立通信,主控板给每一个业务板单独发送指令,适用于多个业务板分别执行指令不同的情况。广播通信具体包括:主控板与多个业务板之间建立通信,通过群发的形式,给每一个业务板发送相同的指令,广播通信适用于多个业务板之间执行相同指令的情况。
在测试过程中,往往需要多个业务板同时运行某个功能。由于每个业务板上都有FPGA,各功能单元的控制寄存器和逻辑单元都在各自的FPGA内部,因此可以让各业务板上的FPGA同步并发调度和执行各测试功能函数,实现最大执行并行度。主控板上的测试程序发送功能指令或多功能指令,通过背板传递至多个业务板,多个业务板接收功能指令或多功能指令,基于FPGA同时进行功能配置,实现测试同步。假设,一项指令需要测试6个业务板的A功能,每个业务板的A功能需要调用20个寄存器,利用传统的芯片测试方法,测试程序需要连续发送120次命令给业务板,访问120个寄存器,CPU无法访问多个业务板,需要完成一个业务板之后才能执行另一个业务板,测试程序与寄存器之间的通信需要借助具体的电路,耗费的时间长。而采用本实施例的测试方法,即使测试程序通过点对点的方式下发执行命令,测试程序也只需发送6次命令给业务板,每个业务板发送一个命令,由各业务板的FPGA调度20个寄存器,即可实现120个寄存器的访问和控制。如果6个业务板在芯片并行测试过程中需要同时执行A功能,测试程序可以通过广播的方式下发执行命令,此时测试程序只需要发送一次命令即可完成对6个业务板的指令下发,即120个寄存器的访问和控制。一方面,减少测试程序和业务板之间的通信,缩减了通信时间,另一方面,FPGA内部的寄存器调度速度更快,执行效率更高,进一步缩短了测试时间。
本实施例将传统的芯片测试方法进行了改进,由FPGA逻辑硬件来实现功能调度、各功能函数的寄存器配置访问动作,只需通过测试程序控制FPGA的运行,无需测试程序访问寄存器。测试程序设置有指令集配置单元、执行单元和底层驱动单元。其中,指令集配置单元用于生成功能指令集、多功能指令集、功能指令集以及调度指令集,通过背板将这些指令集加载到FPGA的指令集存储器中。测试程序通过指令集配置单元产生调度指令集、多功能指令集、功能指令集或通用指令集,通过背板传送给FPGA内对应的存储器里。
指令集配置单元:用于生成功能指令集、多功能指令集、功能指令集以及调度指令集,通过背板将这些指令集加载到FPGA的指令集存储器中。执行单元:用于发送执行命令,包含执行功能指令的控制命令和执行多功能指令的调度命令。
底层驱动:用于底层通信的调度和管理,具体包括指令集配置过程的发送指令集配置数据包、执行单元发送的控制命令数据包和执行命令数据包。
以FLASH芯片为例,每台测试机设置有5个业务板,理论上能够实现160颗芯片并行测试。然而在实际测试中,采用传统的测试方法,由于单颗FLASH芯片的测试需要进行大量的测试业务功能寄存器访问和配置,其时间甚至大于被测芯片的测试业务相应时间,从而使得软件忙于访问和配置寄存器,来不及启动后续的芯片测试业务,从而致使只有少量的芯片处于同时并测状态,其他绝大多数的芯片处于等待状态,严重影响芯片的测试速度。而采用本实施例的方法,即使在访问量巨大的情况下,也能真正实现160颗芯片并行测试,其由FPGA进行的并行寄存器访问和配置时间远远小于被测芯片相应时间,大大缩减了芯片测试的时间,对批量化芯片测试具有极大的应用价值。尤其是在大规模集成电路中,甚至会要求几百次的电压、电流和时序的测试以及百万次的功能测试步骤以保证器件的完成正确,采用本实施例的方法能够数以百倍的提高芯片测试速度,进而保证测试的可靠性和稳定性。
本实施例提供了一种提升ATE芯片测试速度的方法,由FPGA逻辑硬件来实现功能调度以及各功能函数的寄存器配置访问动作,降低了CPU的执行负担,大大提升了ATE芯片测试速度。由FPGA直接调度和实现各功能函数可以节省大量因软硬件通信交互带来的时间损耗,传统的软件访问一个寄存器的所需时间是微秒(us)级,而FPGA访问一个寄存器的时间是纳秒(ns)级。由于每个业务板上都有FPGA,各功能单元的控制寄存器和逻辑单元都在各自的FPGA内部,因此可以让各业务板上的FPGA同步并发调度和执行各测试功能函数,实现最大执行并行度。由于调度功能也在各自FPGA内实现,在大量需要信息反馈的测试场合,其反馈信息会在最短时间内由FPGA获取,大大增加反馈信号的响应效率。
实施例2
本发明实施例2公开了一种提升ATE芯片测试速度的装置,具体结构如说明书附图2所示,具体方案如下:
系统包括主控板1、背板2和业务板3,主控板1上的CPU(中央处理器)11上配置有测试程序111,业务板3上的FPGA(可编程逻辑器件)31配置有指令集存储器311和指令执行单元312,指令集存储器311配置有多个功能指令集,每个功能指令集存储有实现一个功能指令所需的所有控制寄存器信息;
主控板1:配置有测试程序,用于通过测试程序发送执行功能指令的控制命令或执行多功能指令的调度命令;
背板2:用于实现主控板与业务板之间的通信;
业务板3:用于接收控制命令后,或接收调度命令后,通过指令集存储器311查找出对应的功能指令集或多功能指令集,并发送给指令执行单元;
指令执行单元312获取相应的功能指令集,根据功能指令集上存储的控制寄存器信息对相应的控制寄存器进行读写访问,通过读写访问相应的控制寄存器进而间接访问功能芯片,实现功能指令。
其中,指令集存储器311上还配置有调度指令集,调度指令集顺序存储全部的多功能指令集,每个多功能指令集对应一个多功能指令,多功能指令集包括重复一个功能指令集多次、依次执行多个功能指令集或并行运行多个功能指令集;
调度指令集,用于查找出相应的多功能指令集,按照多功能指令集调取功能指令集,并发送给指令执行单元312。
其中,测试程序111设置有指令集配置单元、执行单元和底层驱动单元,指令集配置单元配置有全部的功能指令和多功能指令;
指令集配置单元:用于生成功能指令集、多功能指令集、功能指令集以及调度指令集,通过背板将这些指令集加载到FPGA的指令集存储器中。
执行单元:用于发送执行命令,包含执行功能指令的控制命令和执行多功能指令的调度命令。
底层驱动:用于底层通信的调度和管理,具体包括指令集配置过程的发送指令集配置数据包、执行单元发送的控制命令数据包和执行命令数据包。
本实施例提供了一种提升ATE芯片测试速度的装置,在实施例1的基础上,将实施例1的方法系统化,使其更具实际应用性。
实施例3
本发明实施例提供了一种ATE测试系统,结构如说明书附图2所示,具体方案如下:
一种ATE测试系统,包括软件系统和硬件系统;
硬件系统上包括实施例2所述的提升ATE芯片测试速度的装置;
软件系统设置在主控板上,用于控制所述硬件系统实现芯片测试。
本实施例提供了一种ATE测试系统,将实施例2的提升ATE芯片测试速度的装置应用到具体的测试环境中。
本发明提供了一种提升ATE芯片测试速度的方法、装置及ATE测试系统。由FPGA逻辑硬件来实现功能调度、各功能函数的寄存器配置访问动作,降低了CPU的执行负担,大大提升了ATE芯片测试速度。由FPGA直接调度和实现各功能函数可以节省大量因软硬件通信交互带来的时间损耗,传统的软件访问一个寄存器的所需时间是微秒(us)级,而FPGA访问一个寄存器的时间是纳秒(ns)级。由于每个业务板上都有FPGA,各功能单元的控制寄存器和逻辑单元都在各自的FPGA内部,因此可以让各业务板上的FPGA同步并发调度和执行各测试功能函数,实现最大执行并行度。由于调度功能也在各自FPGA内实现,在大量需要信息反馈的测试场合,其反馈信息会在最短时间内由FPGA获取,大大增加反馈信号的响应效率。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (9)
1.一种提升ATE芯片测试速度的方法,其特征在于,适用于包括主控板、背板和业务板的系统中,所述主控板上配置有测试程序,所述业务板上的FPGA设置有指令集存储器和指令执行单元,所述指令集存储器配置有多个功能指令集,每个所述功能指令集存储有实现一个功能指令所需的所有控制寄存器信息;
方法包括:
所述测试程序发送执行功能指令的控制命令,通过所述背板传递至所述业务板;
所述业务板接收所述控制命令后,通过所述指令集存储器查找出与所述功能指令对应的功能指令集,并将所述功能指令集发送给所述指令执行单元;
所述指令执行单元读取所述功能指令集,根据所述功能指令集上存储的控制寄存器信息对相应的控制寄存器进行读写访问;
通过读写访问相应的控制寄存器进而间接访问功能芯片,实现所述功能指令;
其中,所述指令集存储器上还配置有调度指令集,所述调度指令集顺序存储有全部的多功能指令集,每个所述多功能指令集对应一个多功能指令,所述多功能指令集包括重复一个功能指令集多次、依次执行多个功能指令集或并行运行多个功能指令集;
所述方法还包括:
所述测试程序发送执行多功能指令的调度命令,通过所述背板传递至所述业务板;
所述业务板接收所述调度命令后,通过所述调度指令集查找出相应的多功能指令集,按照所述多功能指令集顺序调取相应的功能指令集,并发送给所述指令执行单元;
所述指令执行单元读取所述功能指令集和所述多功能指令集,根据所述调度指令集对相应的控制寄存器进行读写访问。
2.根据权利要求1所述的方法,其特征在于,所述背板连接多个所述业务板;
所述测试程序发送所述控制命令或所述调度命令,通过所述背板点对点或广播传递至多个所述业务板;
多个所述业务板接收所述控制命令或所述调度命令,基于所述FPGA同时执行相应功能。
3.根据权利要求1所述的方法,其特征在于,所述测试程序设置有指令集配置单元、执行单元和底层驱动单元;
所述指令集配置单元用于生成所述功能指令集、所述多功能指令集以及所述调度指令集,并通过所述背板加载到FPGA的所述指令集存储器中;
所述执行单元用于发送执行命令,所述执行命令包括执行功能指令的控制命令和执行多功能指令的调度命令;
所述底层驱动单元用于底层通信的调度和管理。
4.根据权利要求1所述的方法,其特征在于,所述指令执行单元连接各所述控制寄存器;
所述指令执行单元内的运行指令包括执行控制、寄存器读取、寄存器写入、条件判断、条件等待。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
实现所述功能指令后,通过所述FPGA接收各所述功能芯片的反馈数据,将所述反馈数据存储在预设功能寄存器中;
若所述指令执行单元获取寄存器读取的运行指令,则允许读取所述反馈数据。
6.根据权利要求1所述的方法,其特征在于,所述功能指令集内配置有控制寄存器地址、读写操作、读写数据、读写时间和读写条件。
7.根据权利要求1所述的方法,其特征在于,所述指令集存储器配置有所述多功能指令集、所述功能指令集、所述调度指令集以及预设通用指令集。
8.一种提升ATE芯片测试速度的装置,用于实现权利要求1-7任一项所述的一种提升ATE芯片测试速度的方法,其特征在于,包括主控板、背板和业务板,所述业务板上的FPGA配置有指令集存储器和指令执行单元,所述指令集存储器配置有调度指令集和多个功能指令集,每个所述功能指令集存储有实现一个功能指令所需的所有控制寄存器信息;所述调度指令集顺序存储有全部的多功能指令集,每个所述多功能指令集对应一个多功能指令;
所述主控板:配置有测试程序,用于通过所述测试程序发送执行功能指令的控制命令或执行多功能指令的调度命令;
所述背板:用于实现所述主控板与所述业务板之间的通信;
所述业务板:用于接收所述控制命令后,或接收所述调度命令后,通过所述指令集存储器查找出对应的功能指令集或多功能指令集,并发送给所述指令执行单元;
所述指令执行单元获取相应的所述功能指令集,根据所述功能指令集上存储的控制寄存器信息对相应的控制寄存器进行读写访问,通过读写访问相应的控制寄存器进而间接访问功能芯片,实现所述功能指令或所述多功能指令。
9.一种ATE测试系统,其特征在于,包括软件系统和硬件系统;
所述硬件系统包括权利要求8所述的提升ATE芯片测试速度的装置;
所述软件系统设置在主控板CPU上,用于控制所述硬件系统实现芯片测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110716389.XA CN113189479B (zh) | 2021-06-28 | 2021-06-28 | 一种提升ate芯片测试速度的方法、装置及测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110716389.XA CN113189479B (zh) | 2021-06-28 | 2021-06-28 | 一种提升ate芯片测试速度的方法、装置及测试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113189479A CN113189479A (zh) | 2021-07-30 |
CN113189479B true CN113189479B (zh) | 2021-10-22 |
Family
ID=76976891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110716389.XA Active CN113189479B (zh) | 2021-06-28 | 2021-06-28 | 一种提升ate芯片测试速度的方法、装置及测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113189479B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113721927B (zh) * | 2021-11-02 | 2022-03-18 | 杭州加速科技有限公司 | 基于fpga的ate测试向量编译加速方法及ate系统 |
CN114253837B (zh) * | 2021-11-22 | 2023-03-24 | 杭州加速科技有限公司 | 一种ate测试机程序的多线程调试方法、系统及测试机台 |
CN114461558B (zh) * | 2021-12-03 | 2024-04-16 | 杭州加速科技有限公司 | 一种提高ate设备通信效率的通信方法、装置及测试机系统 |
CN114356820B (zh) * | 2021-12-03 | 2023-07-14 | 杭州加速科技有限公司 | 基于ate设备芯片测试的加速方法、装置及测试机系统 |
CN114706376B (zh) * | 2022-06-06 | 2022-08-26 | 南京宏泰半导体科技有限公司 | 一种基于软件解耦的硬件控制装置及方法 |
CN115656788B (zh) * | 2022-12-23 | 2023-03-10 | 南京芯驰半导体科技有限公司 | 一种芯片测试系统、方法、设备及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4282584A (en) * | 1979-05-30 | 1981-08-04 | Allen-Bradley Company | Mini-programmable controller |
CN100395728C (zh) * | 2005-10-25 | 2008-06-18 | 华为技术有限公司 | 单板信息的读写系统与方法 |
CN101894060B (zh) * | 2010-06-25 | 2012-11-21 | 福建星网锐捷网络有限公司 | 故障检测方法及模块化设备 |
CN106526454A (zh) * | 2016-11-24 | 2017-03-22 | 上海精密计量测试研究所 | 一种基于ate的fpga配置芯片的测试方法 |
CN110830142A (zh) * | 2018-08-10 | 2020-02-21 | 中兴通讯股份有限公司 | 一种业务切换的方法、装置及存储介质 |
CN109144942B (zh) * | 2018-08-28 | 2021-05-14 | 深圳市新格林耐特通信技术有限公司 | 主控板管理业务板的装置及主控板管理业务板的方法 |
US10976361B2 (en) * | 2018-12-20 | 2021-04-13 | Advantest Corporation | Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes |
CN110061992B (zh) * | 2019-04-22 | 2021-12-24 | 杭州迪普科技股份有限公司 | 一种动态配置fpga的方法及网络安全设备 |
CN112014726B (zh) * | 2020-08-05 | 2023-09-05 | 广东省新一代通信与网络创新研究院 | Dsp芯片测试装置及方法 |
-
2021
- 2021-06-28 CN CN202110716389.XA patent/CN113189479B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113189479A (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113189479B (zh) | 一种提升ate芯片测试速度的方法、装置及测试系统 | |
US12044720B1 (en) | Multi-core test processor, and integrated circuit test system and method | |
US7548828B2 (en) | Automatic test equipment platform architecture using parallel user computers | |
US10422828B2 (en) | Method and system for utilizing stand-alone controller in multiplexed handler test cell for indexless tandem semiconductor test | |
CN115210589A (zh) | 一种芯片测试装置及测试方法 | |
CN113190394A (zh) | 一种面向soc芯片的多时钟域并发测试系统及其测试方法 | |
US20080221824A1 (en) | Test apparatus, test method and recording medium | |
CN111930031B (zh) | 一种继电保护单板调试系统及其实现方法 | |
US9348719B2 (en) | Automated test equipment and control method thereof | |
CN112463243B (zh) | 基于边界扫描的在线级联加载固件系统及其方法 | |
US20130339638A1 (en) | Status polling of memory devices using an independent status bus | |
CN113721927B (zh) | 基于fpga的ate测试向量编译加速方法及ate系统 | |
CN114527371A (zh) | 一种提升ate芯片测试速度的装置和方法 | |
CN102592679A (zh) | 一种闪存芯片的测试方法和闪存芯片 | |
CN117591300B (zh) | 测试机多线程通信方法、装置和测试机 | |
CN116298801A (zh) | 芯片测试装置、方法、电子设备及存储介质 | |
CN115470060A (zh) | 硬件板卡、测试设备、测试系统和同步测试方法 | |
CN114461579A (zh) | Pattern文件并行读取和动态调度的处理方法、系统及ATE设备 | |
CN114356820A (zh) | 基于ate设备芯片测试的加速方法、装置及测试机系统 | |
US7702480B2 (en) | Manufacturing test and programming system | |
CN113157334A (zh) | Fpga多版本程序加载方法 | |
US10109369B2 (en) | Test device and test system having the same | |
US7369958B1 (en) | System and method for setting motherboard testing procedures | |
CN114610549A (zh) | 一种串口闪存芯片测试系统和测试方法 | |
CN112783071A (zh) | 一种sdio控制器、fpga板卡和sdio测试系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |