CN101166985B - 测试点得知对象 - Google Patents
测试点得知对象 Download PDFInfo
- Publication number
- CN101166985B CN101166985B CN2006800146312A CN200680014631A CN101166985B CN 101166985 B CN101166985 B CN 101166985B CN 2006800146312 A CN2006800146312 A CN 2006800146312A CN 200680014631 A CN200680014631 A CN 200680014631A CN 101166985 B CN101166985 B CN 101166985B
- Authority
- CN
- China
- Prior art keywords
- test
- ate
- data
- test point
- described object
- 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/26—Testing of individual semiconductor devices
-
- 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/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31903—Tester hardware, i.e. output processing circuits tester configuration
- G01R31/31908—Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L22/00—Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
一种用于具有多个测试点的自动测试设备(ATE)的方法,每个测试点分别容纳被测器件(DUT),该方法包括:定义用于多个测试点的对象,其中该对象包括至少与多个测试点中的一些测试点相关的数据,而且该对象确定哪些测试点是激活的。该方法还包括在利用ATE测试DUT期间使用该对象。
Description
要求优先权
本专利申请要求第60/676,005号美国临时专利申请以及第11/192,927号美国专利申请的优先权,在此引用该两个专利申请的全部内容供参考,如同在此提出。
技术领域
本发明一般地涉及一种具有多个用于测试多个器件的测试点的自动测试设备(ATE),更具体地说,本发明涉及在测试多个器件的过程中ATE使用的测试点得知对象(site-aware object)。
背景技术
ATE指通常由计算机驱动的自动化方式的测试器件,例如,半导体、电子电路以及印刷电路板组件。ATE测试的器件,例如半导体器件,被称为被测器件(DUT)。
当今的ATE支持多点测试。支持多点测试的ATE包括多个测试槽,或“测试点”。将要测试的器件插入每个测试点内,ATE对测试点内的器件执行其所需的测试。在测试中通常涉及计算机程序。无需改变这些计算机程序中的代码而能测试在多个测试点中的器件的能力被称为“测试点透明性”。更具体地说,测试点透明性指自动管理测试点和测试点数据,使得用户几乎不用负责这种任务,以及几乎不需要考虑其测试是多测试点的,直到被要求这样做。如果有效,用户将不会一直意识到其编程的测试点维数。
测试点透明性是ATE的一个显著优点,因为它允许用户配置多个被测试的器件,而无需对测试程序代码做较大修改。
发明内容
本申请描述了包括用于实现测试点得知对象的计算机程序产品的设备和方法。
总之,在一个方面中,本发明涉及一种用于具有多个测试点的自动测试设备(ATE)的方法,其中每个测试点分别容纳被测器件(DUT)。该方法包括:定义用于多个测试点的对象,其中该对象包括至少与多个测试点中的一些测试点相关的数据,而且其中该对象确定哪些测试点是激活的;以及在利用ATE测试DUT期间,使用该对象。该方面还可以包括如下特征中的一个或者多个。
ATE可以包括用于管理测试点的相关ATE软件测试点管理基础架构(ATE software site management infrastructure)。该对象可以与ATE软件测试点管理基础架构通信,以确定哪些测试点是激活的。在测试期间使用该对象可以包括如下之一个或者多个:通过该对象对ATE编程;将来自ATE的仪器读数存储在该对象中;利用该对象处理仪器读数;以及将测试结果记录在该对象中。处理可以包括改变仪器读数和/或向测试子系统报告该读数。
可以用编程语言定义该对象。编程语言可以象处理单个数据单元一样处理该对象。该数据可以包括用于标识哪些测试点是激活的的布尔数据。该数据可以包括引脚清单数据。该引脚清单数据可以包括对应于至少一个DUT的各引脚的仪器测量值的引脚数据。
可以用编程语言定义该对象,而且该方法还可以包括:在该编程语言中定义操作,其中该操作是该对象特有的。该操作可以包括对应于对编程语言中的本地变量执行的数学运算的一种数学运算。
总之,在另一个方面中,本发明涉及一种系统,该系统包括:具有多个测试点的自动测试设备(ATE),其中分别配置每个测试点以适应被测器件(DUT);以及与ATE通信的处理装置。该处理装置执行指令,以便实施前述方面的方法。本方面还可以包括与前述方面相同或者不同的特征。
在下面的附图和说明书中详细描述了一个或者多个例子。根据说明书、附图以及权利要求书,本发明的其他特征、方面以及优点将是显而易见的。
附图说明
图1是ATE系统的方框图。
图2是测试点得知对象的示意图。
图3是在测试期间使用测试点得知对象的过程的流程图。
不同附图中同样的参考编号表示同样的单元。
具体实施方式
图1示出测试多个DUT使用的系统10。系统10包括ATE 12。ATE 12包括器件接口板(DIB)14,用于将器件连接到ATE。DIB 14具有多个测试点16a至16d。DUT可以插入每个测试点内,以便利用ATE进行测试。尽管图1仅示出4个测试点,但是ATE 12可以包括任意数量的测试点。此外,在图1所示的例子中,每个测试槽有一个DUT,然而,并不要求所有测试点都被占据。
每个DUT可以是利用ATE可以测试的任意类型的器件,其例子包括但是并不局限于半导体器件和电子组件。
ATE 12包括内部处理装置,例如,数字信号处理器(DSP)18。DSP 18可以执行全部或者部分ATE软件20,即,由可执行代码组成的计算机程序,以测试测试点16a至16d内的DUT。可以将ATE软件20存储在ATE 12上的存储器(未示出)内,也可以由诸如下面描述的计算机22的外部处理装置提供ATE软件20。ATE软件20包括用于管理测试点16a至16d的ATE软件测试点管理基础架构24。
此外,ATE软件测试点管理基础架构对ATE软件20与测试点16a至16d之间的信息交换进行控制。该信息可以包括来自测试点内的DUT的数据和/或者发送到测试点内的DUT的数据。发送到DUT的数据的例子包括但是并不局限于诸如波形或者其他激励的测试数据以及ATE软件20用于对DUT编程的配置数据(请注意,在一个实施例中,DSP仅处理来自DUT的信号)。来自DUT的数据的例子包括但是并不局限于测试点是否是激活的指示符以及来自测试点内的DUT的读数,包括来自DUT内的各引脚的读数。请注意,如果该测试点是空的,则可以认为该测试点不是激活的,这意味着,该测试点内的DUT已经完成而且通过了所有必要测试,或者该DUT没有通过一个或者多个必要测试。在这两种的任一种情况下,不再做进一步测试。作为一种选择,如果测试点内没有DUT,或者如果运行测试的管理员关闭了测试点,则可以认为该测试点不是激活的。
ATE 12与计算机22通信。计算机22可以是任意类型的处理装置,包括但是并不局限于常规个人计算机(PC)、台式机或者手持机、多处理器计算机、基于微处理器的或者可编程的消费类电子装置、微型计算机、大型计算机和/或个人移动计算装置。在图1所示的例子中,计算机22包括一个或者多个被简称为“处理器26”的处理器和存储器28。存储器28存储处理器26所执行以测试ATE 12内的DUT的测试软件30。在测试期间,测试软件30与包括上面描述的ATE软件测试点管理基础架构的ATE软件20交互。例如,通过指示ATE软件20将测试数据提供给测试点16a至16d内的DUT并向测试软件30或者指定的子系统报告这种测试结果,测试软件30可以控制测试。为此,测试软件30可以生成一个或者多个图形用户界面(GUI)(未示出),通过该图形用户界面,管理员可以控制ATE 12的测试。
到目前为止,计算机22上的测试软件和被称为过程开发环境(PDE)的交互式图形环境相结合一起运行。PDE包括实现测试点透明性的代码,因此使测试软件开发者能将注意力集中在过程流程上。因此,所获得的测试软件依赖于PDE。然而,系统10不需要包括PDE。相反,测试软件30利用测试点得知对象(下面将说明)在测试期间实现测试点透明性。
在本实施例中,以Visual Basic for Application(Visual Basic)编写测试软件30。Visual Basic是由被称为Basic的早期DOS版本演化来的高级编程语言。Visual Basic是可视的而且是事件驱动编程语言。这是它与早期Basic的主要区别。在Basic中是在纯文本环境下进行编程并且程序是顺序执行的。在Visual Basic中,利用对象,在图形环境下进行编程。
对象是包括数据和为处理该数据而执行的代码的自含式实体。因为在Visual Basic中用户可以随机选择对象,所以对每个对象独立编程以使其能够对这种动作做出响应。因此,Visual Basic程序可以由大量子程序构成,每个子程序分别具有自己的程序代码,而且可以被独立执行以及与其他子程序同时执行。
ATE 12使用的测试点得知对象是设计为表示多个测试点的数据的数据对象。可以利用这种数据来对ATE仪器编程,保持测量读数、处理这些读数和/或向负责布置DUT(例如,入仓(binning))以及记录测试结果(数据记录)的子系统报告这些读数。测试点得知对象从它们是从内部连接到ATE软件测试点管理基础架构24的事实而获取其名称的,因此,它是知晓ATE系统测试点的环境随时间发生的变化的,例如,每小时、每分钟、每秒钟检测到的周期性的变化等。测试点得知对象向用户展示了两种似乎相互冲突的模型。测试点得知对象允许用户在基本上忽略测试点的概念的情况下编写测试代码,而且在需要时,用户可以访问各测试点特有的数据。
参考图2,在本实施例中,测试点得知对象32包括识别DIB 14上的每个测试点16a至16d的数据34。测试点得知对象32还包括与位于每个测试点内的DUT相关的数据36。与DUT相关的数据可以是从DUT接收的数据,例如,读数、测试结果或类似数据,也可以是传送到DUT的数据,例如,程序信息、测试数据或类似数据。
在测试点得知对象32使各测试点与和这些测试点内的DUT有关的数据相关联的意义上,测试点得知对象32与阵列类似。然而,测试点得知对象32与阵列的不同之处在于,测试点得知对象32在测试期间知道哪个测试点是激活的/非激活的。为此,测试点得知对象32还包括可执行代码38,用于与ATE软件测试点管理基础架构24通信,以确定哪个测试点16a至16d是激活的/非激活的,相应地更新其存储的数据,以及与测试软件30通信。
在本实施例中,在Visual Basic中使用测试点得知对象。然而,请注意,测试点得知对象并不局限于在Visual Basic环境下使用,可以利用任意编程语言实现测试点得知对象。然而,下面的描述适用于在Visual Basic中使用的测试点得知对象。
在Visual Basic中,最通用的变量类型是Variant。这种变量类型用于容纳可以在Visual Basic编程环境下使用的任何其他的变量类型。在本实施例中,定义了被称为SiteVariant的与Variant对应的测试点得知的变量类型。SiteVariant可以容纳任意类型的多个测试点的值。
下面概括说明SiteVariant对象的行为。SiteVariant对象包括用于多个测试点的数据。如果在单赋值语句中被赋予单标量值,则该数据可以是对各测试点都一样的(site-uniform),而如果是测量所返回的,则该数据可以是各测试点特有的(site-specific)。SiteVariant对象是“测试点得知的(site-aware)”。在使用时,它知道测试程序是否正处于当前仅选定了一个测试点的测试点回路中。在SiteVariant对象处于测试点回路(并且选定了单个测试点)时,或者在它是对各测试点都一样(对于所有测试点,具有单个标量值)时,可以与其他任意Visual Basic变量类似地使用该SiteVariant对象。此外,在它位于测试点回路之外而容纳了各测试点特有的数据时,它被当作是多个测试点的(multisite)。下面的代码表示了根据SiteVariant是否容纳了多个测试点数据以及是在测试点回路内还是测试点回路外将其使用的SiteVariant的双重功能。在下面的例子中的Dubug Print的使用是要求单个标量变量的任意用途的替代。在该例中,诸如XY的双字母变量名称表示它容纳了多个测试点的数据。诸如X的单字母变量名称容纳了标量,并且在本例中,其所起的作用与标准的Visual Basic的Double完全类似。
Dim Site As Variant
Dim X As New SiteDouble
Dim YY As New SiteDouble
X=2.5’Variable holds one number-same number for all sites
Debug.Print X′Prints 2.5
YY=thehdw.DCVI.Pins(″Vdd″).Meter.Read′Meter Read returnssite-specific data
--a separate value for each site.
Debug.Print YY′Runtime Error:″Object contains site-specific data″
For Each Site In theExec.Sites
Debug.Print Site
Debug.Print YY′Works here.Object always evaluates to a scalar in asite
loop
Next site
SiteVariant或者是对各测试点都一样的,或者是各测试点特有的。“对各测试点都一样”意味着所有测试点从单个赋值中共享一个公用值。“各测试点特有”意味着每个测试点具有自己的值。请注意,这些术语是指共享单个数值,而非指该值的对应数字。例如,如果测试点回路对所有为SiteDouble类型的测试点赋值5.0,则即使所有测试点具有相同值,它也是各测试点特有的。
可以从SiteVariant导出更具体的对象类型,以容纳具体的VisualBasic变量类型。这些对象类型可以对应于Visual Basic固有的变量类型。这些更具体的对象类型的例子包括SiteDouble、SiteBoolean、SiteLong以及PinData。对象类型SiteDouble、SiteBoolean和SiteLong表示分别对应于Visual Basic的固有类型Double(64位精确浮点数)、Boolean(逻辑真或者假)以及Long(32位整数)的SiteVariant数据。PinData扩展了SiteVariant,以包括与器件引脚相关的特性,例如,引脚名称和通道标识符。在封装了多引脚的、多测试点的仪器读数的PinlistData集合类中使用PinData。即,PinlistData为多个测试点和激活的测试点识别DUT的各引脚以及与各引脚的测量值相关的数据值。
更具体地说,PinlistData对象已被并入新的SiteVariant使用模型中。PinlistData对象将引脚维度添加到多测试点的数据中。这样,可以将它看作含有每个引脚和测试点的数据的矩阵。它容纳了与每个引脚一一对应的PinData对象。PinlistData的每个引脚片段是具有引脚名称的SiteVariant。它被称为PinData对象。实际上,含有单个引脚的任意PinlistData对象都可以用作SiteVariant,或者如果所容纳的数据类型与派生出的数据类型相匹配,则用作其更为具体的派生类型之一。因为该原因,如果用户的驱动程序语法含有单个引脚,则不再需要使用PinlistData对象。例如,用户可以选择将单引脚测量值直接放入SiteDouble中。因为PinlistData对象容纳了SiteVariant,所以PinlistData对象具有相同的测试点得知的行为和相同的对各测试点都一样的属性/各测试点特有的属性。虽然PinlistData的遗留语法仍将发挥作用,但是大多数语法被隐藏起来,以支持与SiteVariant模型一致的接口。提供PinlistData算术方法,以在单次调用中对多个测试点和多个引脚进行运算。下面的代码接受了对4个测试点内的3对引脚进行的仪器测量值,然后,利用单个语句对所有测试点内的两两之间的所有各个对的三角形进行了数据记录。
Dim HighReading As New PinlistData
Dim LowReading As New PinlistData
Dim Delta As New PinlistData
HighReading=thehdw.DCVI.Pins(“A_pos,B_pos,C_pos”).Meter.Read
LowReading=thehdw.DCVI.Pins(“A_neg,B_neg,C_neg”).Meter.Read
Delta=HighReading.Subtract(LowReading)
TheExec.Flow.TestLimit Delta
上述对象类型不是可以派生出来的唯一类型。在Variant内可以出现的任意类型都可以成为从SiteVariant派生的基础。这些类型可以包括但并不仅限于用户定义的类型和非Visual Basic固有的类型。
测试点得知对象在可能的范围内模仿与其对应的Visual Basic类型。这样,SiteVariant的编程模型与Variant、Double的SiteDouble等的编程模型几乎相同。对象类型与固有类型的一个差别是对象类型被定义并被分配地址。另一个差别是,在Visual Basic中,对固有类型进行的大多数数学运算包括使用符号运算符,例如,“+”、“-”、“*”、“/”。然而,测试点得知对象的编程接口定义了对应于这些运算符的方法。
更具体地说,使用Visual Basic编程语言,可以定义可以对测试点得知对象执行的运算(例如,数学运算、逻辑运算等)。这些运算对应于Visual Basic的固有运算,但是是利用代码定义的。这是必需的,因为测试点得知对象与Visual Basic的固有变量具有不同的结构。作为例子,可以对Visual Basic的固有变量“y”和“x”执行加法运算:
y=x+0.1
以对“x”加0.1,然后,将结果值赋予“y”。可以在Visual Basic中对测试点得知对象“X”和“Y”执行类似的运算,但是不使用数学运算符“+”。相反,可以在Visual Basic中定义函数“add”,以用于测试点得知对象。如下所示,利用该函数,可以对测试点得知对象“X”中的每个数据项(测试点的)加数值0.1,然后,将这些值赋予“Y”内的相应数据项:
Y=X.add(0.1)
可以利用其它函数定义其它运算。利用这种函数,Visual Basic(或者其他编程语言)可以象在处理单个固有的数据单元那样处理测试点得知对象。这种功能提升了测试点透明性,因为它允许以本质上的Visual Basic对象来处理测试点得知对象,由此允许程序员将注意力集中在过程流程上,而无需考虑ATE 12内的多个测试点。
上面的运算定义不是测试点得知对象的固有局限。相反,需要对运算进行定义是不支持运算符重载(overloading)的Visual Basic编程环境的特征。在不同的编程环境下,可以有对测试点得知对象进行符号运算的支持。
图3示出利用测试点得知对象采用ATE 12执行的过程40。过程40定义(42)了用于测试点16a至16d的测试点得知对象。可以根据用户输入定义测试点得知对象。在测试测试点16a至16d内的DUT期间,ATE 12使用(44)测试点得知对象。如上所述,测试点得知对象与ATE软件测试点管理基础架构24通信,以确定哪些测试点是激活的。特别是,测试点得知对象接收(46)指示选定了特定DUT的指示符,然后,将该指示符存储(48)在测试点得知对象中。
在测试期间,测试点得知对象可以用于任意用途,包括但并不仅限于对ATE编程、将来自ATE的读数存储在测试点得知对象中,将测试结果记录在测试点得知对象中,以及利用测试点得知对象处理该读数,包括改变读数和/或向测试子系统报告该读数。
在本实施例中,SiteVariant对象以类似Visual Basic式的标量变量使用模型来呈现。这是通过下述Visual Basic特征的组合来实现的:可选参数的默认隐藏属性,以及对该相同属性设置(Let)并获得(Get)不同类型的能力。每个SiteVariant对象分别具有其可选参数为Site asLong=-1的隐藏默认属性.Value()。该默认测试点参数调用测试点得知行为,对测试点回路中所选定的所有测试点或者选定的单个测试点采取措施。比较下面的等效语法(X和Z是SiteDouble,而y是普通的Visual Basic Double):
用法: 等效用法:
X=5 X.Value(-1)=5
y=X y=X.Value(-1)
Z=X Z.Value(-1)=X
上面是等效的,因为.Value和-1都是默认值。
在该使用模型中,使.Value属性成为隐藏的默认值不仅仅是一条捷径。使用了一种默认机制以增加多性行为。这些SiteVariant可以根据语法作为数字或者对象。在Visual Basic遇到没有确定属性或者方法的对象时,根据使用中所要求什么类型,它可以将该对象解释为对象本身,或者是调用对象的默认属性的结果。在上面的y=X行,左侧要求是Double的。由于X不是Double,所以Visual Basic尝试对象X的默认属性,然后,发现该默认属性的确返回Double。在Z=X行,在右侧,Z的默认属性接受对象(Variant),因此Visual Basic将对象X直接赋值给Z。这之所以可行,是因为即使在同一个属性的Get版本是Double时,Visual Basic仍允许.Value()属性的Let版本为Variant。默认使用的简洁性,以及其与Visual Basic变量的一致性使得.Value属性被隐藏。
在此描述的过程和测试点得知对象并不局限于使用任何特定的硬件、软件或者编程语言,它们可以应用于任意计算环境或者处理环境,并且可以使用在能够运行机器可读指令的任意类型的机器上。可以在数字电子电路系统,或者在计算机硬件、固件、软件或者其组合上实现全部或者部分的过程以及测试点得知对象。
可以将全部或者部分的过程以及测试点得知对象实现为计算机程序产品,即,实际嵌入在信息载体内例如机器可读存储装置或者传输信号内的计算机程序,以便让诸如可编程处理器、计算机或者多个计算机的数据处理设备来执行,或者控制数据处理设备的运行。可以利用包括汇编语言或者解释语言的任意形式的编程语言编写计算机程序,而且可以以任意方式部署该计算机程序,包括用作独立程序或者模块、组件、子例程或者适合用于计算环境的其它单元。可以将计算机程序部署为,让位于一个点的一台计算机或者分布在多个点而由通信网络互联的多台计算机来执行。
可以由执行一个或者多个计算机程序的一个或者多个可编程处理器来执行与过程和测试点得知对象相关的方法步骤,以执行该过程和测试点得知对象的功能。也可以利用专用逻辑电路,例如,FPGA(现场可编程门阵列)和/或ASIC(专用集成电路)执行该方法步骤,并且可以将该过程和测试点得知对象实现为该专用逻辑电路。
作为例子,适合执行计算机程序的处理器包括通用和专用微处理器以及任意类型的数字计算机的一个或者多个处理器。通常,处理器从只读存储区或者随机存取存储区或者它们二者接收指令和数据。计算机的单元包括用于执行指令的处理器和用于存储指令和数据的一个或者多个存储区器件。通常,计算机还包括一个或者多个用于存储数据的大容量存储器件,例如,磁盘、磁光盘、或者光盘,以便与其可操作地连接并从其接收或者向其发送数据,或者两者兼有。适合嵌入计算机程序指令和数据的信息载体包括所有形式的非易失性存储区,作为例子,包括半导体存储区器件,例如,EPROM、EEPROM以及闪速存储区器件,磁盘,例如,内部硬盘或者移动盘,磁光盘以及CD-ROM和DVD-ROM盘。
在包括例如作为数据服务器的后端部件,或者包括例如应用服务器的中间件部件,或者包括例如具有图形用户界面的客户端计算机的前端部件,或者在包括这种后端部件、中间件部件或者前端部件的任何组合的计算系统中,可以实现全部或者部分的过程以及测试点得知对象。该系统的各部件可以以任意方式或者通过诸如通信网络的数字数据通信的媒介来互连。通信网络的例子包括LAN和WAN,例如,因特网。
可以重新排列与过程和测试点得知对象相关的方法步骤,和/或可以省略一个或者多个这种步骤,以实现与在此描述的效果相同或者类似的结果。
可以在过程语言的环境中而不是面向对象编程中使用在此描述的过程。例如,可以如下定义测试点得知对象X,Y:
X=Instrument.ReadMeasurement(PinA)
Y=X.Add(0.1)
在过程语言中,例如,C语言中,如下所示,可以利用数据结构(下面的X,Y)和外部函数(Add())来实现X,Y的对应物:
X=ReadMeasurement(InstrumentID,PinA)
Y=X.Add(X,0.1)
一个差别是,在过程语言中,X和Y仅包含数据,而且存在可以执行任意处理的外部函数,例如,Add()。
可以将在此描述的不同的实施例的单元组合在一起,以构成上面没有具体描述的其它的实施例。在此没有具体描述的其它实施例也在权利要求的范围内。
Claims (18)
1.一种用于具有多个测试点的自动测试设备(ATE)的方法,每个所述测试点分别容纳被测器件(DUT),该方法包括:
定义用于所述多个测试点的对象,所述对象包括至少与所述多个测试点中的一些测试点相关的数据,所述对象确定哪些测试点是激活的;以及
在利用所述ATE测试DUT期间,使用所述对象。
2.根据权利要求1所述的方法,其中所述ATE具有用于管理所述测试点的相关的ATE软件测试点管理基础架构,所述对象与所述ATE软件测试点管理基础架构通信,以确定哪些测试点是激活的。
3.根据权利要求1所述的方法,其中在测试期间使用所述对象包括如下之一个或者多个:
通过所述对象对所述ATE编程;
将来自所述ATE的仪器读数存储在所述对象中;
利用所述对象处理仪器读数;以及
将测试结果记录在所述对象中。
4.根据权利要求3所述的方法,其中处理包括改变所述仪器读数和/或向测试子系统报告所述读数。
5.根据权利要求1所述的方法,其中在编程语言中定义所述对象,所述编程语言能够象在所述编程语言中处理单个数据单元一样处理所述对象。
6.根据权利要求1所述的方法,其中所述数据包括标识哪些测试点是激活的布尔数据。
7.根据权利要求1所述的方法,其中所述数据包括引脚清单数据,该引脚清单数据包括与至少一个DUT的各引脚的仪器测量值相对应的引脚数据。
8.根据权利要求1所述的方法,其中在编程语言中定义所述对象,而且该方法进一步包括:
在所述编程语言中定义操作,该操作是所述对象特有的。
9.根据权利要求8所述的方法,其中所述操作包括与在所述编程语言中的固有变量上执行的数学运算相对应的数学运算。
10.一种系统,包括:
具有多个测试点的自动测试设备(ATE),每个所述测试点分别容纳被测器件(DUT);
与所述ATE通信的处理装置,该处理装置执行指令,以便:
定义用于所述多个测试点的对象,所述对象包括与所述多个测试点中的至少一些测试点相关的数据,所述对象确定哪些测试点是激活的;以及
在利用所述ATE测试DUT期间,使用所述对象。
11.根据权利要求10所述的系统,其中所述ATE包括用于管理所述测试点的ATE软件测试点管理基础架构,所述对象与所述ATE软件测试点管理基础架构通信,以确定哪些测试点是激活的。
12.根据权利要求10所述的系统,其中在测试期间使用所述对象包括如下之一个或者多个:
通过所述对象对所述ATE编程;
将来自所述ATE的仪器读数存储在所述对象中;
利用所述对象处理所述仪器读数;以及
将测试结果记录在所述对象中。
13.根据权利要求12所述的系统,其中处理包括改变所述仪器读数和/或向测试子系统报告所述读数。
14.根据权利要求10所述的系统,其中在编程在所述处理装置上的编程语言中定义所述对象,所述编程语言能够象在所述编程语言中处理单个数据单元一样处理所述对象。
15.根据权利要求10所述的系统,其中所述数据包括标识哪些测试点是激活的布尔数据。
16.根据权利要求10所述的系统,其中所述数据包括引脚清单数据,该引脚清单数据包括与至少一个DUT的各引脚的仪器测量值相对应的引脚数据。
17.根据权利要求10所述的系统,其中在编程在所述处理装置上的编程语言中定义所述对象,以及
其中所述处理装置执行指令以在所述编程语言中定义操作,该操作是所述对象特有的。
18.根据权利要求17所述的系统,其中所述操作包括与在所述编程语言中的固有变量上执行的数学运算相对应的数学运算。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67600505P | 2005-04-29 | 2005-04-29 | |
US60/676,005 | 2005-04-29 | ||
US11/192,927 US7253607B2 (en) | 2005-04-29 | 2005-07-29 | Site-aware objects |
US11/192,927 | 2005-07-29 | ||
PCT/US2006/013546 WO2006118758A1 (en) | 2005-04-29 | 2006-04-12 | Site-aware objects |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101166985A CN101166985A (zh) | 2008-04-23 |
CN101166985B true CN101166985B (zh) | 2010-09-29 |
Family
ID=37233857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800146312A Active CN101166985B (zh) | 2005-04-29 | 2006-04-12 | 测试点得知对象 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7253607B2 (zh) |
EP (1) | EP1875254A1 (zh) |
JP (1) | JP4933533B2 (zh) |
KR (1) | KR101094697B1 (zh) |
CN (1) | CN101166985B (zh) |
WO (1) | WO2006118758A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7487422B2 (en) * | 2005-04-29 | 2009-02-03 | Teradyne, Inc. | Delayed processing of site-aware objects |
US8131387B2 (en) | 2007-08-09 | 2012-03-06 | Teradyne, Inc. | Integrated high-efficiency microwave sourcing control process |
CN103969520A (zh) * | 2013-01-30 | 2014-08-06 | 深圳伊欧陆微电子系统有限公司 | 一种硬件测试系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5845234A (en) * | 1997-04-22 | 1998-12-01 | Integrated Measurement Systems, Inc. | System and method for efficiently generating testing program code for use in automatic test equipment |
CN1447922A (zh) * | 2000-08-14 | 2003-10-08 | 泰拉丁公司 | 智能卡和识别设备等的测试系统 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3796349A (en) * | 1972-05-18 | 1974-03-12 | R Weber | Weighing dispenser |
DE3475954D1 (en) * | 1983-05-11 | 1989-02-09 | Ishida Scale Mfg Co Ltd | Hopper for use in an automatic weighing apparatus |
DE3405997A1 (de) * | 1984-02-20 | 1985-08-22 | Zöller-Kipper GmbH, 6500 Mainz | Vorrichtung zum entleeren von behaeltern, insbesondere muellbehaeltern |
US4630755A (en) * | 1984-12-11 | 1986-12-23 | Spiral Systems, Inc. | Apparatus for precisely dispensing free flowing solids |
GB8705451D0 (en) * | 1987-03-09 | 1987-04-15 | Driver Southall | Combinational weighing systems |
US4815258A (en) * | 1988-02-08 | 1989-03-28 | Jesperson Leslie S | Fruit bin filler |
US5044504A (en) * | 1988-09-23 | 1991-09-03 | Powell Machinery Inc. | Self-singulating weight sizer |
US6092640A (en) * | 1992-12-22 | 2000-07-25 | Horticultural Automation Limited | Article grading apparatus |
AUPM762094A0 (en) * | 1994-08-24 | 1994-09-15 | Colour Vision Systems Pty Ltd | Conveying system for foodstuffs |
GB9521252D0 (en) * | 1995-10-17 | 1995-12-20 | Bishopbarn Ltd | Improvements in and relating to weighing machines |
JPH11190767A (ja) * | 1997-12-26 | 1999-07-13 | Ando Electric Co Ltd | 基準電位検出装置 |
US20010032807A1 (en) * | 2000-02-28 | 2001-10-25 | Powell Harry C. | Fruit handling with color sorting |
US6502013B1 (en) * | 2000-03-08 | 2002-12-31 | Al Pinhas Sosnik | Method and apparatus for filling containers with a target weight of product |
US6651821B2 (en) * | 2000-04-17 | 2003-11-25 | Mettler-Toledo, Inc. | Tilting platform checkweighing device |
US6941232B2 (en) * | 2003-01-28 | 2005-09-06 | Texas Instruments Incorporated | Method and apparatus for performing multi-site integrated circuit device testing |
US7197417B2 (en) | 2003-02-14 | 2007-03-27 | Advantest America R&D Center, Inc. | Method and structure to develop a test program for semiconductor integrated circuits |
US7437261B2 (en) * | 2003-02-14 | 2008-10-14 | Advantest Corporation | Method and apparatus for testing integrated circuits |
TWI344595B (en) * | 2003-02-14 | 2011-07-01 | Advantest Corp | Method and structure to develop a test program for semiconductor integrated circuits |
US7362089B2 (en) * | 2004-05-21 | 2008-04-22 | Advantest Corporation | Carrier module for adapting non-standard instrument cards to test systems |
-
2005
- 2005-07-29 US US11/192,927 patent/US7253607B2/en active Active
-
2006
- 2006-04-12 WO PCT/US2006/013546 patent/WO2006118758A1/en active Application Filing
- 2006-04-12 KR KR1020077024533A patent/KR101094697B1/ko active IP Right Grant
- 2006-04-12 JP JP2008508894A patent/JP4933533B2/ja active Active
- 2006-04-12 EP EP06749807A patent/EP1875254A1/en not_active Withdrawn
- 2006-04-12 CN CN2006800146312A patent/CN101166985B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5845234A (en) * | 1997-04-22 | 1998-12-01 | Integrated Measurement Systems, Inc. | System and method for efficiently generating testing program code for use in automatic test equipment |
CN1447922A (zh) * | 2000-08-14 | 2003-10-08 | 泰拉丁公司 | 智能卡和识别设备等的测试系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101166985A (zh) | 2008-04-23 |
US20060244474A1 (en) | 2006-11-02 |
JP2008539429A (ja) | 2008-11-13 |
KR20070121017A (ko) | 2007-12-26 |
US7253607B2 (en) | 2007-08-07 |
WO2006118758A1 (en) | 2006-11-09 |
KR101094697B1 (ko) | 2011-12-20 |
EP1875254A1 (en) | 2008-01-09 |
JP4933533B2 (ja) | 2012-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0988558B1 (en) | Low cost, easy to use automatic test system software | |
US6223134B1 (en) | Instrumentation system and method including an improved driver software architecture | |
US9317400B2 (en) | Code coverage rate determination method and system | |
US6418392B1 (en) | System and method for simulating operations of an instrument | |
US20190034316A1 (en) | Methods and apparatus to perform instruction-level graphics processing unit (gpu) profiling based on binary instrumentation | |
CN103890597B (zh) | 用于控制测试块并行性的支持简化配置的测试系统 | |
JP2007172269A (ja) | プログラムのテスト方法、テスト装置 | |
US7487422B2 (en) | Delayed processing of site-aware objects | |
CN101166985B (zh) | 测试点得知对象 | |
CN108829604A (zh) | 基于车辆控制器的测试用例生成方法及装置 | |
US6170078B1 (en) | Fault simulation using dynamically alterable behavioral models | |
CN103454578B (zh) | 用于运行被配置为测试器件的自动测试系统的方法 | |
Niemetz et al. | Murxla: A modular and highly extensible API fuzzer for SMT solvers | |
US6772228B1 (en) | Achieving polymorphism in a COM software architecture or the like | |
Alshahwan et al. | Software testing research challenges: An industrial perspective | |
EP1815328B1 (en) | Feature-oriented test program development and execution | |
US6895539B1 (en) | Universal method and apparatus for controlling a functional test system | |
US20030136840A1 (en) | Method and system for managing integrated circuit test programs using bar codes | |
JP2004501472A (ja) | テストプログラムを最適化するための方法および装置 | |
Alzahrani | Measuring class cohesion based on client similarities between method pairs: An improved approach that supports refactoring | |
CN1945747B (zh) | 存储单元测试方法及测试系统 | |
CN104142883A (zh) | 一种测试方法和一种录制工具 | |
CN117008972B (zh) | 一种指令分析方法、装置、计算设备及存储介质 | |
US20240094684A1 (en) | Methods and apparatus for executing rules | |
Brier et al. | Verification methodology of heterogeneous dsp+ arm multicore processors for multi-core system on chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |