CN112703409B - 自动测试设备、方法、及计算机程序 - Google Patents
自动测试设备、方法、及计算机程序 Download PDFInfo
- Publication number
- CN112703409B CN112703409B CN202080005127.6A CN202080005127A CN112703409B CN 112703409 B CN112703409 B CN 112703409B CN 202080005127 A CN202080005127 A CN 202080005127A CN 112703409 B CN112703409 B CN 112703409B
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- test equipment
- automatic test
- shared
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 333
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004590 computer program Methods 0.000 title claims abstract description 18
- 230000015654 memory Effects 0.000 claims abstract description 171
- 238000012545 processing Methods 0.000 claims abstract description 104
- 239000000872 buffer Substances 0.000 claims abstract description 49
- 238000013500 data storage Methods 0.000 claims description 43
- 230000005540 biological transmission Effects 0.000 claims description 23
- 238000007906 compression Methods 0.000 claims description 14
- 230000006835 compression Effects 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 9
- 230000036316 preload Effects 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000013144 data compression Methods 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 16
- 238000012546 transfer Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 238000012029 structural testing Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 5
- 230000003139 buffering effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000000717 retained effect Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 238000010998 test method Methods 0.000 description 3
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 101100126955 Arabidopsis thaliana KCS2 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- METKIMKYRPQLGS-UHFFFAOYSA-N atenolol Chemical compound CC(C)NCC(O)COC1=CC=C(CC(N)=O)C=C1 METKIMKYRPQLGS-UHFFFAOYSA-N 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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/317—Testing of digital circuits
- G01R31/31712—Input or output aspects
-
- 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/31712—Input or output aspects
- G01R31/31713—Input or output interfaces for test, e.g. test pins, buffers
-
- 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/31724—Test controller, e.g. BIST state machine
-
- 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/3177—Testing of logic operation, e.g. by logic analysers
-
- 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/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- 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/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
-
- 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/31905—Interface with the device under test [DUT], e.g. arrangements between the test head and the DUT, mechanical aspects, fixture
-
- 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/31907—Modular tester, e.g. controlling and coordinating instruments in a bus based architecture
-
- 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
-
- 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/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
-
- 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/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31926—Routing signals to or from the device under test [DUT], e.g. switch matrix, pin multiplexing
-
- 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/3193—Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
- G01R31/31935—Storing data, e.g. failure memory
-
- 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/273—Tester hardware, i.e. output processing circuits
- G06F11/2733—Test interface between tester and unit under test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Quality & Reliability (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
Abstract
一种用于测试一个或多个被测设备的自动测试设备包括多个端口处理单元,该多个端口处理单元至少包括:相应的缓冲存储器,以及相应的高速输入输出HSIO接口,该HSIO接口用于与被测设备中的至少一个连接。端口处理单元被配置为:接收数据,将所接收到的数据存储在相应的缓冲存储器中,并且经由相应的HSIO接口将存储在相应的缓冲存储器中的数据提供给一个或多个所连接的被测设备,以用于测试一个或多个所连接的被测设备。还描述了用于自动测试一个或多个被测设备的方法和计算机程序。
Description
技术领域
根据本发明的实施例涉及用于测试一个或多个被测设备的自动测试设备。
根据本发明的其他实施例涉及用于自动测试一个或多个被测设备的方法。
根据本发明的其他实施例涉及相应的计算机程序。
根据本发明的实施例涉及设备的测试,即经由高速输入输出接口HSIO从被测设备DUT接收数据,并且经由HSIO向DUT提供数据。
背景技术
在下文中,将提供对一些常规解决方案的介绍。
自动测试设备(ATE)是对设备(被称为被测设备(DUT))执行测试的任何装置,这些装置使用自动化来快速执行测量并评估测试结果。ATE可以是简单的计算机控制的数字万用表,或包含数十个复杂测试仪器(真实的或模拟的电子测试设备)的复杂系统,这些复杂测试仪器能够自动测试和诊断复杂电子封装部件或晶圆测试(包括片上系统和集成电路)中的故障。
结构测试能够对各个结构(即所谓的单元)进行系统测试覆盖,从而实现片上系统(SOC)中数字块的复杂功能。结构测试包括各种测试方法,包括但不限于:存储器内建自测试BIST、逻辑BIST(片上生成的模式)和扫描测试(外部提供的模式)。各个测试被组合到测试块:例如,扫描测试被分层地应用到块(串行或并行)。
高级结构测试方法应用了以下项的组合:外部提供的测试数据(来自自动测试设备ATE的激励)和用于测试的片上设备DFT,DFT将外部提供的测试数据(所谓的种子)扩展到扫描链中。测试结果被紧压和压缩成提供给SOC的主输入输出接口IO的减少数量的测试数据。该数据被称为接收数据,并且通过ATE与预期数据进行比较。接收数据也可以被ATE掩蔽。
DFT(有时也被称为用于测试的设计或针对可测试性的设计)通常由集成电路设计技术组成,这些技术将可测试性特征添加到硬件产品设计或设备(即,DUT)中。添加的特征使DUT更容易开发和应用测试。
下文中将扫描测试称为如上所述的结构测试的一般表示。
然而,随着新的制造工艺使得SOC的复杂性不断增加,经济有效地扩展扫描测试成为了挑战。
一个挑战是需要存储在ATE上的测试数据量不断增加。另一个挑战是通过SOC IO馈送测试数据的测试时间不断增加。片上复杂性的增加也对将测试数据分发到被测块以及创建所需的时钟信号提出了挑战。
此外,复杂SOC的质量和可靠性预期要求在SOC部署到以下最终应用中时进行结构测试:例如,在汽车或通信基础设施系统中。
鉴于这种情况,存在对以下构思的期望:当用自动测试设备测试被测设备时,能够在要存储的数据、处理速度、以及测试质量和可靠性之间提供改进的折衷方案。
发明内容
根据本发明的实施例是用于测试一个或多个被测设备的自动测试设备。
自动测试设备包括多个端口处理单元。
端口处理单元至少包括相应的缓冲存储器和相应的高速输入输出HSIO接口,该HSIO接口用于与至少一个被测设备连接,并且端口处理单元接收数据,将所接收到的数据存储在相应的缓冲存储器中,以及经由相应的HSIO接口将存储在相应的缓冲存储器中的数据提供给一个或多个所连接的被测设备,以用于测试一个或多个所连接的被测设备。
端口处理单元接收到的数据可以是共享数据,例如在多个端口处理单元之间共享的数据,例如用于发送到DUT以用于测试的共享激励数据。数据可以例如可经由另一端口处理单元而从共享存储器池或从另一端口处理单元接收。
基于来自共享存储器池的共享数据,可以共享的数据可被提供给DUT,例如,以用于例如经由接口(可以是HSIO或另一接口)向被测设备提供测试数据或测试程序。
替代地,可以基于来自共享存储器池的共享数据向DUT提供数据,以用于为被测设备提供测试信号。
替代地,可以基于共享数据向DUT提供数据,以用于限定从被测设备的预期信号或预期结果。
上述内容的任何组合也是可能的,因为提供给一个或多个DUT的数据可以是以上详述的选项的组合。
HSIO接口是指为高速通信而设计的接口。非详尽的示例列表是USB、PCIe、SATA、千兆位局域网(Gigabit LAN)。被测设备DUT例如可以是片上系统SOC。
该实施例基于对被测设备进行测试需要在ATE和DUT之间在两个方向上进行数据传输的想法。这些传输中的一些是经由HSIO传输的。
在自动测试设备的优选实施例中,相应的缓冲存储器能够作为本地存储器由相应的高速输入输出HSIO接口访问。
已经发现,如果端口处理单元的相应的缓冲存储器能够作为本地存储器由相应的高速输入输出HSIO接口访问,则这是有益的,从而避免不必要的存储器地址的转换。经由HSIO寻址存储器内容的一个选项是经由直接存储器访问DMA。相应的缓冲存储器因此作为本地存储器耦合到HSIO。
在自动测试设备的优选实施例中,ATE还包括具有共享存储器池的数据存储装置,并且端口处理单元还从共享存储器池接收共享数据。
已经发现,如上所述,可以在端口处理单元之间共享数据是有益的。为了共享数据,ATE具有共享存储器池来存储共享数据,例如在多个端口处理单元之间共享的数据,例如用于测试DUT的共享激励数据,并且端口处理单元从共享存储器池接收共享数据,以例如用从共享存储器池接收到的数据填充缓冲器。
在自动测试设备的优选实施例中,数据存储装置进一步将共享数据流式传输到一个或多个端口处理单元和/或存储器中心(memory hub)。
已经发现,ATE的架构可以包括具有专用存储器的端口处理单元,但是也可以采用存储器中心来提高整体效率。
在自动测试设备的优选实施例中,数据存储装置进一步将每个设备的结果数据存储到多个存储器区域中。
已经发现,ATE可以基于每个设备来存储结果或结果流,这些结果或结果流例如可以由端口处理单元提供到不同存储器区域中。这可能是有益的,因为每个DUT结果数据的数据速率可彼此不同,例如,比另一个结果或结果流的数据速率小,例如至少十分之一。此外,存储结果所需的容量和带宽明显小于共享激励数据。
在自动测试设备的优选实施例中,一个或多个端口处理单元PPU进一步将共享数据从共享存储器池转发到至少一个其他端口处理单元。
已经发现,PPU可以在彼此之间传输数据是有益的。因此,从共享存储器池接收到共享数据的一个PPU可以将数据转发到另一个PPU,从而可以解除共享存储器池的负担。
在自动测试设备的优选实施例中,一个或多个端口处理单元被配置为从至少一个其他端口处理单元接收共享数据。
已经发现,PPU可以在彼此之间传输数据是有益的。因此,一个PPU可以从另一个PPU接收共享数据,该另一个PPU从共享存储器池接收共享数据,从而可以解除共享存储器池的负担。
在自动测试设备的优选实施例中,一个或多个端口处理单元形成菊花链(daisychain)以从共享存储器池连续地转发共享数据。
已经发现,这种向PPU转发共享数据和从PPU接收共享数据的一种方式可以通过在PPU之外形成菊花链来实现。
在自动测试设备的优选实施例中,多个端口处理单元中的一个或多个被配置为从存储器中心接收共享数据。
已经发现,替代地,PPU也可以从存储器中心接收共享数据。如果存储器中心用共享数据服务多于一个的PPU,则其也可以被认为是中央存储器中心。
在自动测试设备的优选实施例中,端口处理单元包括缓冲存储器和/或一个或多个缓存,以便允许在接收共享数据和使用共享数据以用于测试一个或多个所连接的被测设备之间的时间偏移。
已经发现,缓冲存储器(例如,先进先出FIFO存储器)可有助于减少延迟并提供更多所需的数据以用于加速处理。同样地,可以采用缓存来减少处理中的停顿(hold-ups),并且使更多的数据几乎同时可用于供PPU使用。
在自动测试设备的优选实施例中,至少一个端口处理单元进一步经由接口向被测设备提供测试信息(其基于共享数据),并且根据将测试信息传输到被测设备的时序(timing)来表征被测设备。
已经发现,PPU可以经由接口(例如,HSIO)基于共享数据向DUT提供测试信息,例如,测试程序或测试数据。PPU还可以根据将测试信息传输到被测设备的时序来表征被测设备,例如,确定DUT类型和/或识别DUT。为此,传输测试信息的时序由被测设备确定或影响,例如,因为被测设备例如作为主设备来控制接口,或者因为被测设备可能作为从设备而减慢或中断传输。
在自动测试设备的优选实施例中,至少一个端口处理单元被配置为如果测试信息到被测设备的传输与由相应的端口处理单元对共享数据的接收相比滞后超过预定时间,则将被测设备表征为失效的。
已经发现,为了提高ATE的整体性能,其PPU可以将DUT表征或识别为失效,即如果去往或来自DUT的数据传输超过特定时间阈值,即如果无法在预定时间范围内执行或完成ATE与DUT的通信,则确定DUT有故障。预定时间范围例如可以由用户指定、特定于设备、或特定于测试。
在自动测试设备的优选实施例中,端口处理单元进一步获得每个设备的结果数据并且将每个设备的结果数据转发到数据存储装置。
已经发现,如果PPU获得基于每个设备(即每个DUT)的结果数据(例如,结果流或故障数据),并且将每个设备的结果数据(例如,每个DUT的结果流或每个DUT的失效数据)转发到数据存储装置,则可以改进整体ATE通信。
在自动测试设备的优选实施例中,端口处理单元进一步使用基于共享数据的预期数据来获得每个设备的结果数据。
已经发现,如果PPU使用预期数据获得每个设备的结果数据,例如,每个DUT的结果流或每个DUT的失效数据,则可以改进整体ATE数据处理,其中预期数据基于共享数据。
在自动测试设备的优选实施例中,ATE包括存储器中心,以用于以星形架构将多个端口处理单元与数据存储装置耦合。
已经发现,星形架构是用于实现存储器中心的可行选项,该存储器中心用作PPU的数据存储装置或共享存储器池。
在自动测试设备的优选实施例中,存储器中心包括缓冲存储器和/或一个或多个缓存,以允许将共享数据非同时地转发到不同的端口处理单元。
已经发现,缓冲存储器(例如,先进先出FIFO存储器)可有助于减少延迟并提供更多所需的数据以用于加速处理。同样地,可以采用缓存来减少处理中的停顿,并且使更多的数据几乎同时可用于供存储器中心使用。由此,通过在缓冲存储器或缓存中保存更多的共享数据,相关数据可以在不同的时间被转发到不同的PPU,而无需对共享存储器池或数据存储装置进行多次读取访问。
在自动测试设备的优选实施例中,数据存储装置还对于被提供给端口处理单元的共享数据和对于每个设备的结果数据包括分开的接口。
已经发现,通过使用分开的接口来向PPU提供共享数据和提供每个设备的结果,可以改进ATE的整体性能。
在自动测试设备的优选实施例中,数据存储装置包括存储器接口,以用于在不干扰向端口处理单元提供共享数据的情况下访问每个设备的结果数据。
已经发现,如果数据存储装置具有在不干扰例如由数据存储装置经由HSIO或其他接口向端口处理单元提供共享数据的情况下,来访问(例如,读出)每个设备的结果数据(例如,用于后处理或上传)的存储器接口,则这是有益的。
在自动测试设备的优选实施例中,端口处理单元还包括流式传输错误检测块,以用于检测所接收到的数据中的命令错误,并且将所接收到的数据与预加载的预期数据进行比较,预期数据优选地包括掩码数据。
已经发现,如果端口处理单元包括用于检测命令错误的流式传输错误检测块,则这是有益的。对被测设备进行测试产生结果数据,这些结果数据可以与预期数据进行比较,这些预期数据指示正常运行的被测设备将返回什么结果。
已经发现,为了验证被测设备DUT的正确运行,可以在ATE处准备和预加载所谓的预期数据。然后可以将所接收到的数据与预期数据进行比较,从而可以确定设备的正确运行。所接收到的数据可以指代来自扫描链、命令和/或有效载荷数据的数据。
通过使用掩码数据,即限定所接收数据的哪些位应包含哪些内容的数据,可以使ATE能够更智能地处理数据。例如,预期数据可以包含掩码数据,该掩码数据指示对于特定测试过程,所接收到的数据将包含以下三个数据块:指示相关测试的命令、由DUT产生的结果数据、和由DUT用来产生结果的种子数据。由于ATE向DUT提供种子,因此可能不需要存储种子,这取决于测试。此外,通过选择性地存储结果数据,可以节省额外的存储器空间。
在自动测试设备的优选实施例中,ATE可以进一步将预期数据预加载到与一个或多个所连接的设备相关联的每个设备的先进先出FIFO存储器或托管缓存(managed cache)中。
已经发现,ATE因此可以将预期数据预加载到设备的先进先出FIFO存储器中,并且由此已经准备好预期数据以便与所接收到的数据进行更快的比较。如果预期所接收到的数据采用特定的顺序,则这是特别有益的,使得首先被预加载的(先进的)数据也将首先被比较,并且因此也可以首先从FIFO中丢弃(先出的)。对于这种使用,只能预加载一部分预期数据,即所谓的预期数据窗口。
替代地,可以与多于一个DUT相关联的托管缓存可被用于预加载预期数据或预期数据窗口,并且然后与从多于一个DUT接收到的数据进行比较。因此,不必针对所有设备重复地加载或预加载预期数据。
FIFO或托管缓存存储器还可以跟踪使用情况,例如,与从相关联的连接DUT接收到的数据的比较,并且丢弃已经使用(即已比较)或者由于另一个原因而不再需要保留的数据。
在自动测试设备的优选实施例中,ATE响应于基于对数据使用情况的跟踪发现特定被测设备不遵循数据流,而将特定被测设备识别为失效。
已经发现,响应于发现特定被测设备非常慢地提供数据,以致于与该特定被测设备相关联的托管缓存中的预期数据保持未使用的时间远远长于与其他被测设备相关联的相应预期数据,可以将DUT识别为失效。
如果在托管缓存的情况下,仅针对若干DUT中的一个DUT在存储器中维持相应的保留的预期数据,则效率可能会受到不利影响,并且通过将保留特定预期数据的DUT视为失效的,可以从托管缓存中丢弃预期数据,从而改进总体效率。此外,如果预期所接收到的数据遵循特定数据流或模式,并且DUT没有在该数据流或模式中输送所接收到的数据,则其可以被视为失效。
在自动测试设备的优选实施例中,ATE以经压缩的表示形式将数据存储在存储器中。
已经发现,压缩数据占用更少的存储器空间。ATE通常可以存储完整数据集的不同部分,例如,仅偏离预期数据的接收数据和/或接收数据不同的预期数据,或描述接收数据和预期数据之间的偏差的数据。存储在ATE中和/或由ATE存储的一些或全部数据可以被压缩以占用更少的存储器空间。压缩本身可以是用于所有要压缩存储的数据的相同数据压缩方法,但也可以取决于特定参数而针对不同的数据命令有所不同。
例如,这样的参数的示例可以是与数据相关的测试类型。这样的参数的另一个示例是被测设备的类型和/或ATE的类型。其他参数可以直接与所涉及的设备相关,例如,温度、使用情况统计、存储器状态、可用存储器、可用CPU等。其他参数可以指代命令或有效载荷、甚至命令后是否完全跟随有效载荷、当前时间、传输时间、接收时间、传输持续时间等等。
用于部分或全部数据的压缩可以是无损压缩或有损压缩。
可以使用的无损压缩类型的示例包括:熵(entropy)型,例如算术(Arithmetic)、非对称数字系统、Golomb、Huffman、Range、Shannon、Shannon–Fano、Shannon–Fano–Elias、Tunstall、Unary、Universal、例如Exp Golomb、Fibonacci、Gamma、Levenshtein;词典型,例如字节对编码、Lempel–Ziv;或其他类型,例如BWT、CTW、Delta、DMC、DPCM、LDCT、MTF、PAQ、PPM、RLE(游程长度编码,例如针对失效位)。
可以使用的有损压缩类型的示例包括:变换型,例如离散余弦变换、DST、FFT、小波(Wavelet);预测型,例如DPCM、LPC、运动(Motion)、心理声学(Phychoacoustic)。
还可以使用压缩方法的组合。
在自动测试设备的优选实施例中,ATE可以动态地调整压缩以匹配预期的误差分布。
已经发现,有效的是所接收到的数据包含寄存器值,一旦寄存器值出错,则导致短暂的错误突发。这可以由具有字节偏移的头部(header)在错误突发开始时有效地存储,并且错误的字扩展到一个寄存器值。
在自动测试设备的优选实施例中,ATE可以保持可能失效的接收数据在所接收到的数据流中接近。
已经发现,在高速通信中,例如经由串行USB或其他HSIO技术,相关位可以例如通过DFT缓冲在DUT中,以在串行位的小区域内使它们流式传输出来。在HSIO是USB的情况下,这可能会受到USB-DFT的影响。例如,可以缓冲通过若干扫描链接收到的MISR的值。这里,MISR是多输入签名寄存器,也称为多输入移位寄存器,其是时序电子电路,该时序电子电路的结构基本上是线性反馈移位寄存器LFSR,该LFSR已被修改为使得异或(XOR)门驱动一个或多个LFSR的触发器的输入。
如果该寄存器失效,则许多位将被反转,并且相应地失效位的突发可以用其在整个接收流中的起始的单个偏移值来存储(参见上文)。类似地,DFT可以缓冲和突发(busrt-out)来自单个扫描链的数据。此外,DFT可以保持来自若干扫描链的单个块的结果被缓冲,并且使这些结果与另一个块的结果分开地突发。
在自动测试设备的优选实施例中,流式传输错误检测块进一步存储与故障分析相关的统计信息。
已经发现,存储统计信息有利于评估可能发生的错误。这种统计信息的示例为对故障总数进行计数(可能通过如上详述的类型),和/或存储第一故障周期的字节偏移。
一个实施例包括一种用于自动测试一个或多个被测设备的方法,该方法包括:接收数据;存储所接收到的数据;以及将所存储的数据提供给一个或多个被测设备。
该方法基于与上述自动测试设备相同的考虑。然而,应当注意,该方法可以由还关于自动测试设备由本文所述的任何特征、功能和细节来补充。此外,该方法可以由自动测试设备的特征、功能和细节(单独地和组合地)来补充。
根据本发明的实施例创建计算机程序,该计算机程序在计算机上运行时用于执行本文所述的方法。
附图说明
根据本发明的实施例随后将参考附图来描述,在附图中:
图1示出了根据本发明的实施例的自动测试设备的方框示意图;
图2示出了根据本发明的另一实施例的包括数据存储装置的自动测试设备的方框示意图;
图3示出了根据本发明的另一实施例的包括数据存储装置和存储器中心的自动测试设备的方框示意图;
图4示出了根据本发明的另一实施例的包括数据存储装置的自动测试设备的方框示意图,包括激励数据的示例性数据流;
图5示出了根据本发明的另一实施例的包括数据存储装置和存储器中心的自动测试设备的方框示意图,包括激励数据的示例性数据流;
图6示出了根据本发明的另一实施例的包括数据存储装置的自动测试设备的方框示意图,包括预期数据的示例性数据流;
图7示出了根据本发明的另一实施例的包括数据存储装置的自动测试设备的方框示意图,包括预期数据、响应数据和失效数据的示例性数据流;以及
图8示出了根据本发明另一实施例的示例性自动测试设备的方框示意图,包括数据流。
在附图中,相似的附图标记表示相似的元素和特征。
具体实施方式
图1示出了根据本发明的实施例的自动测试设备100的方框示意图。自动测试设备ATE用于测试一个或多个被测设备DUT 130。自动测试设备100包括:多个端口处理单元PPU110(其包括缓冲存储器140);和高速输入输出HSIO接口120,用于与被测设备130连接。
例如通过向DUT提供测试数据,并且以各种方式从DUT接收测试结果,来测试DUT。PPU可以从ATE内部或ATE外部的实体接收该测试数据。然后,PPU可以将所接收到的数据存储在缓冲存储器中,并且经由HSIO将数据提供给DUT。
测试被测设备需要在ATE和DUT之间双向传输数据。这些传输中的一些是经由HSIO传输的。
端口处理单元接收到的数据可以是共享数据。例如,这可以表示同时测试相似或相同DUT的设置。然而,也可以对不同的DUT执行仍可相同的同时测试。PPU可以接收提供给DUT以用于测试的激励数据,并且如果数据对于所有PPU是相同的,则可以将数据视为共享数据。因此,该共享数据对于PPU是相同的,即数据在端口处理单元之间共享。如上所述,这种共享数据的示例是发送到DUT以用于测试的共享激励数据。
数据可以例如从共享存储器池或从另一端口处理单元(可能经由另一端口处理单元)接收,如下所述。
数据可以向DUT提供测试数据、测试信号或测试程序,并且数据可以是PPU接收的数据或其处理后的版本,即提供给DUT的数据是基于可共享的数据的数据。替代地,PPU接收的数据还可以表示DUT在测试之后返回PPU的被测设备的预期信号或预期结果。该数据也可以是预期数据或需要在PPU中进行处理,使得预期数据是基于PPU接收的数据的数据,PPU接收的数据也可以是共享数据。
上述的任何组合也是可能的,因为提供给一个或多个DUT的数据可以是以上详述的选项的组合。
缓冲存储器140可以仅从PPU 110访问,但是也可以由HSIO 120直接访问。耦合到PPU和/或HSIO的缓冲存储器可以在任一星座图(constellation)中充当本地存储器,因为它可被如此寻址。
通过允许将缓冲存储器作为本地存储器进行寻址,可以避免不必要的存储器地址的转换。从PPU和/或HSIO寻址存储器内容的一个选项是经由直接存储器访问DMA。
图2示出了根据本发明的实施例的类似于ATE 100的自动测试设备200的方框示意图。自动测试设备ATE用于测试一个或多个被测设备DUT 230。自动测试设备200包括多个端口处理单元PPU 210,这些PPU 210包括缓冲存储器240和高速输入输出HSIO接口220,该HSIO接口220用于与被测设备230连接。图2还示出了数据存储装置250,该数据存储装置250作为示例性实现方式在图2中被表示为共享存储器池。
数据存储装置250连接到PPU 210,这些PPU 210进一步以菊花链的形式彼此连接。仅作为示例,在图2中,PPU 210利用专用于这种连接的一个HSIO 220连接到DUT 230,而在图1中,每个HSIO 120可以保持与DUT 130的多个连接。根据描述,这两种变型在与其他特征的每种组合中都是可能的。
数据存储器250可以是或可包括共享存储器池。然后,PPU 210可以直接从数据存储装置250接收数据。数据存储装置250可以是ATE 200的内部元件,但是也可以是ATE 200外部的关联元件。PPU分别从数据存储装置250和/或共享存储器池接收可以共享的数据。
数据可以在端口处理单元之间共享,这意指可以由PPU从数据存储装置250接收在多个端口处理单元之间共享的数据。共享数据例如可以是用于测试DUT 230的共享激励数据,并且端口处理单元210从共享存储器池250接收共享数据。示例性使用例如是用从共享存储器池250接收的数据填充缓冲存储器240。
数据存储装置250可以将共享数据流式传输到一个或多个端口处理单元210,并且数据存储装置250可以将每个设备(即每个DUT)的结果数据(例如,结果或结果流)存储到多个存储器区域中。具体而言,这些存储器区域可以在功能和/或技术上不同。从而,PPU将结果提供给数据存储装置,并且由于每个DUT的结果数据的数据速率可彼此不同,例如比另一个结果或结果流的数据速率更小(例如至少十分之一),因此根据结果的具体特性而将这些结果存储在不同的存储器区域中可能是有益的。此外,存储结果所需的容量和带宽明显小于共享激励数据所需的容量和带宽,因此这些数据也可被存储到不同的存储器区域中。
端口处理单元PPU 210还可以将共享数据从共享存储器池转发到至少一个其他端口处理单元。在实施例中,在PPU彼此连接或至少与一个其他PPU连接的情况下,PPU可以将数据转发到其他PPU或至少一个其他PPU。从而减少了从PPU到数据存储装置250的存储器访问,即读取和写入。
同样,PPU 210可以从至少一个其他端口处理单元接收从共享存储器池接收的共享数据。在实施例中,在PPU彼此连接或至少与一个其他PPU连接的情况下,PPU可以从其他PPU或至少一个其他PPU接收数据。由此,也减少了从PPU到数据存储装置250的存储器访问,即读取和写入。
以上详述的PPU连接的特定形式是菊花链,其中每个PPU连接到另外两个PPU,从而实现一连串PPU,并且第一PPU连接到数据存储器250。
其他拓扑也是可能的,例如,网格、星形、完全连接、线、树、总线。第一个PPU和最后一个PPU也可以相互连接,从而形成环,但是它们也可以不相互连接,从而形成一连串PPU(真正的菊花链)。每个PPU可以与数据存储装置250连接。
图3示出了根据本发明的实施例的自动测试设备300的方框示意图,自动测试设备300类似于ATE 100和200。自动测试设备ATE用于测试一个或多个被测设备DUT 330。自动测试设备300包括多个端口处理单元PPU 310,这些PPU 310包括缓冲存储器340和高速输入输出HSIO接口320,该HSIO接口320用于与被测设备330连接。图3还示出了数据存储装置350,其作为示例性实现方式被表示为图3中的共享存储器池和存储器中心360。
根据本实施例,数据存储装置350可以将共享数据流式传输到存储器中心360,共享数据可以从存储器中心360被发送到PPU 310。存储器中心360可以提高ATE 300的整体效率。
PPU 310可以从存储器中心360接收共享数据。如果存储器中心360利用共享数据服务于多于一个PPU 310,则它也可以被认为是中央存储器中心。
其他拓扑也是可能的,可以在图2的描述中找到示例。
对于结合图2和图3所述的两种变型,以及对于图1的布局,PPU 210、310可以包括缓冲存储器340和/或一个或多个缓存(未示出),以便允许在接收共享数据和使用共享数据以用于测试一个或多个被测设备330之间的时间偏移。
先进先出FIFO存储器340有助于减少延迟并提供更多所需的数据以用于加速对数据的处理。同样地,可以采用缓存来减少处理中的停顿,并且使更多的数据几乎同时可用于供PPU使用。
PPU 210、310中的每一个经由接口220、320向一个或多个被测设备230、330提供基于共享数据的测试信息。根据传输该测试信息所需的时间,PPU可以表征被测设备。这种表征可以是标识单个DUT、确定DUT的特定类型,或使得确定DUT的参数,例如,快速/慢速设备、正常工作/损坏的DUT、高速是/否可用、或与设备和/或测试有关的类似参数或其他参数。
PPU 210、310可以经由接口(例如,HSIO 220、320)向DUT 230、330提供基于共享数据的测试信息(例如,测试程序或测试数据)。PPU 210、310随后还可以根据将测试信息传输到被测设备的时序来表征被测设备230、330,例如,确定DUT类型和/或识别DUT。为此,测试信息传输的时序由被测设备确定或影响,例如,因为被测设备例如作为主设备来控制接口,或者因为被测设备可以作为从设备而减慢或中断传输。
如果测试信息到被测设备的传输与由相应的端口处理单元210、310对共享数据的接收相比滞后超过预定时间,则PPU 210、310将被测设备230、330表征为失效。
为了提高ATE 200、300的整体性能,PPU 210、310可以将DUT 230、330表征或识别为失效,即如果去往或来自DUT的数据传输超过特定时间阈值,即如果无法在预定时间范围内执行或完成ATE与DUT的通信,则确定DUT有故障。该预定时间范围例如可以由用户指定、特定于设备、或特定于测试。
图4、图5、图6和图7示出了根据本发明的实施例的包括数据流的自动测试设备400、500的方框示意图,其类似于如图1到3所示的ATE 100、200、300。自动测试设备ATE用于测试一个或多个被测设备DUT 130、230、330、430、530。
在图4和图5中描绘了测试信息的示例性数据流,例如,激励数据。在图4中,数据从数据存储装置450发送到PPU 410中的一个,从如上所述的该PPU 410被发送到另一PPU410,并且从该另一PPU 410被发送到又一PPU 410。在PPU中,数据存储在本地缓冲存储器440中,并且经由HSIO 420从本地缓冲存储器440被发送到所连接的DUT 430。
该示例性数据流仅针对示例性拓扑示出。如以上详述的,也可能是所有PPU 410直接从数据存储装置450接收数据,或者可能是一些PPU 410直接从数据存储装置450接收数据,而其他PPU 410从另一PPU 410接收数据。
在图5中,数据从数据存储装置550发送到存储器中心560,该数据从存储器中心560被发送到PPU 510。在PPU中,数据被存储在本地缓冲存储器540中,并且经由HSIO 520从本地缓冲存储器540被发送到所连接的DUT 530。
在测试之后,PPU 210、310、410、510可以从DUT 230、330、430、530获得每个设备的结果数据,并且将每个设备的结果数据转发到数据存储装置250、450。可选地,该传输为到存储器中心360、560,数据从存储器中心360、560被发送到数据存储装置350、550。
如果PPU 210、310、410、510基于每个设备(即每个DUT)获得结果数据(例如,结果流或故障数据),并且将每个设备的结果数据(例如,每个DUT的结果流或每个DUT的故障数据)转发到数据存储装置250、350、450、550,则ATE通信可以总体上得到改善。
PPU 210、310、410、510可以使用基于共享数据的预期数据来获得每个设备的结果数据。该预期数据表示预期的DUT响应数据。预期数据被存储在数据存储装置250、350、450、550、650中,并且如图6中示例性所示的,预期数据被发送到PPU 210、310、410、510、610,其中预期数据可以被本地存储在本地缓冲存储器240、240、440、540、640中。在图6中,仅一个PPU接收数据并将其传递给另一PPU,从该另一PPU再次将数据发送给又一PPU。如上所述,其他数据流(即所有或一些PPU从数据存储装置250、350、450、550、650接收数据)和拓扑(即数据被发送到存储器中心360、560)也是可能的。
通过本地缓冲存储器240、240、440、540、640,根据需要从PPU 210、310、410、510、610取回数据,以便处理预期数据。例如,将它们与DUT 230、330、430、530、630的实际响应数据进行比较。
在图7中,示出了PPU 210、310、410、510、610、710如何使用预期数据获得每个设备的结果数据,例如,每个DUT的结果流或每个DUT的失效数据,其中预期数据是基于共享数据的。
具体而言,DUT 730c、730d、730e和730f经由相应的HSIO接口720c、720d、720e和720f将响应数据返回到对应的PPU 710b和710c。PPU 710b和710c从本地缓冲存储器740b和740c取回相关的预期数据,其中,预期数据被较早储存,如结合图6所述。
然后,PPU将预期数据和接收数据进行比较并且可能计算失效数据,然后该失效数据可被存储在数据存储装置750中。同样,图7的数据流只是示例性的。存储器中心的使用以及如上所述的PPU之间的传输都是可能的。
ATE 100、200、300、400、500、600、700可以包括用于以星形架构将多个端口处理单元与数据存储装置相耦合的存储器中心。存储器中心还可以具有缓冲存储器和/或一个或多个缓存(两者均未示出),以允许将共享数据非同时地转发到不同的端口处理单元。
先进先出FIFO存储器有助于减少延迟,并且提供更多所需的数据以用于加速处理。同样地,可以采用缓存来减少处理中的停顿,并且使更多的数据几乎同时可用于供存储器中心使用。从而,通过在缓冲存储器或缓存中保存更多的共享数据,相关数据可以在不同的时间转发到不同的PPU,而无需对共享存储器池或数据存储装置进行多次读取访问。
数据存储装置250、350、450、550、650、750还可以对于被提供给端口处理单元的共享数据和对于每个设备的结果数据包括分开的接口,从而也可以改善ATE的整体性能。
数据存储装置250、350、450、550、650、750还可以包括存储器接口,以访问(例如,读出)每个设备的结果数据以例如用于后处理或上传,而不干扰例如由数据存储装置经由HSIO或其他接口向端口处理单元提供共享数据。
PPU 110、210、310、410、510、610、710还可以包括流式传输错误检测块(未示出),该流式传输错误检测块用于检测所接收到的数据中的命令错误,并且将所接收到的数据与预加载的预期数据进行比较,预期数据优选地包括掩码数据。对被测设备进行测试产生结果数据,这些结果数据可以与预期数据进行比较,这些预期数据指示正常运行的被测设备将返回什么结果。为了验证被测设备DUT的正确运行,可以在ATE处准备和预加载所谓的预期数据。然后可以将所接收到的数据与预期数据进行比较,从而可以确定设备的正确运行。所接收到的数据可以指代来自扫描链、命令和/或有效载荷数据的数据。通过使用掩码数据,即限定所接收到的数据的哪些位应包含哪些内容的数据,可以使ATE能够更智能地处理数据。例如,预期数据可以包含掩码数据,该掩码数据指示对于特定测试过程,所接收到的数据将包含以下三个数据块:指示相关测试的命令、由DUT产生的结果数据、和由DUT用来产生结果的种子数据。由于ATE向DUT提供种子,因此可能不需要存储种子,这取决于测试。此外,通过选择性地存储结果数据,可以节省额外的存储器空间。
ATE还可以将预期数据预加载到与一个或多个所连接的设备相关联的每个设备的先进先出FIFO存储器或托管缓存中,从而可以准备好预期数据以便与所接收到的数据进行更快的比较。如果预期所接收的数据采用特定的顺序,则这是特别有益的,使得首先被预加载的(先进的)数据也将首先被比较,并且因此也可以首先从FIFO中丢弃(先出的)。对于这种使用,只能预加载一部分预期数据,即所谓的预期数据窗口。
替代地,可以与多于一个DUT相关联的托管缓存可被用于预加载预期数据或预期数据窗口,并且然后与从多于一个DUT接收到的数据进行比较。因此,不必针对所有设备重复地加载或预加载预期数据。
FIFO或托管缓存存储器还可以跟踪使用情况,例如,与从相关联的连接DUT接收到的数据的比较,并且丢弃已经使用(即已比较)或者由于另一个原因而不再需要保留的数据。
ATE可以响应于基于对数据使用情况的跟踪发现特定被测设备不遵循数据流而将特定被测设备识别为失效,即如果特定被测设备非常慢地提供数据,以致于与该特定被测设备相关联的托管缓存中的预期数据保持未使用的时间远远长于与其他被测设备相关联的相应预期数据,可以将DUT识别为失效的。如果在托管缓存的情况下,仅针对若干DUT中的一个DUT在存储器中维持相应的保留的预期数据,则效率可能会受到不利影响,并且通过将保留特定预期数据的DUT视为失效的,可以从托管缓存中丢弃预期数据,从而改进总体效率。此外,如果预期所接收到的数据遵循特定数据流或模式,并且DUT没有在该数据流或模式中输送所接收到的数据,则其可以被视为失效的。
流式传输错误检测块可以进一步存储与故障分析相关的统计信息。
如发明内容中描述的,数据还可以以经压缩的表示形式进行存储。当然,这指的是所有的存储器和所有的数据。并且压缩可被动态地调整。例如,用于匹配预期的错误分布。
如上文所讨论的,ATE还可以保持可能失效的接收数据在所接收到的数据流中接近。
应注意,ATE 100、200、300、400、500、600、700可选地可以由本文所述的任何特征、功能和细节(单独地和组合地)来补充。
本发明还涉及一种用于自动测试一个或多个被测设备的方法,该方法包括:接收数据、存储所接收到的数据、以及将所存储的数据提供给一个或多个被测设备。
该方法基于与上述自动测试设备相同的考虑。注意,该方法可由还关于自动测试设备由本文所述的任何特征、功能和细节来补充。此外,该方法可以由自动测试设备的特征、功能和细节(单独地和组合地)来补充。
根据本发明的实施例创建计算机程序,该计算机程序在计算机上运行时用于执行本文所述的方法。
细节和实施例
在下文中,将讨论本发明背后的一些考虑并且将描述几种解决方案。具体而言,将公开若干细节,这些细节可选地可被引入本文公开的任何实施例中。
动机
结构测试能够对各个结构(“单元”)进行系统测试覆盖,从而实现片上系统(SOC)中数字块的复杂功能。结构测试包括多种测试方法,包括但不限于存储器BIST、逻辑BIST(片上生成的模式)和扫描测试(外部提供的模式)。各个测试被组合到测试块:例如,扫描测试被分层地应用到块(串行或并行)。
高级结构测试方法应用了以下项的组合:外部提供的测试数据(来自ATE(自动测试设备)的激励)和片上DFT(用于测试的设备),DFT将外部提供的测试数据(种子)扩展到扫描链中。测试结果被紧压和压缩成提供给SOC的主IO的减少数量的测试数据(接收数据),ATE将该测试数据与预期数据进行比较(包括掩蔽接收数据的能力)。
在不限制所提出的解决方案的应用的情况下,下文涉及扫描测试作为如上所述的结构测试的一般表示。
然而,随着新的制造工艺使得SOC的复杂性不断增加,经济有效地扩展扫描测试成为了挑战。
·需要存储在ATE上的测试数据量不断增加
·通过SOC IO馈送测试数据的测试时间不断增加
·片上复杂性的增加也对将测试数据分发到被测块以及创建所需的时钟信号提出了挑战
此外,复杂SOC的质量和可靠性预期要求在SOC部署到以下最终应用中时进行结构测试:例如,在汽车或通信基础设施系统中。
对这些挑战的若干可能解决方案包括:
·通过功能性高速I/O接口测试数据传输:例如,通过USB或PCIe。这将生以下结果:
·实现提高的数据速率
·实现最终应用中的结构测试
·需要在ATE和DUT(被测设备)上解耦时序(如HSIO数据通信的典型情况)。任何精确的时序同步将需要DUT和ATE或其他辅助设备(例如,示波器)之间的时序敏感信号。
·高级片上测试数据处理、测试调度、以及与被测块的测试数据通信。
·所提出的典型要素:
ATE和HSIO-DFT之间的通信协议:例如,1149.10
使用片上网络(NOC)以利用本地DFT管理测试应用来灵活地路由测试数据
针对若干块串行地或并行地进行灵活的测试调度。
·这产生以下结果:
需要复杂的交互来有效地调度去往和来自DUT的测试数据传输
实现通过测试端口传输的更高级通信(语义),提供新的控制级别:例如,
·DFT提供简化决策和良率学习的预处理结果
·DFT控制ATE功率。
方面1:多站点数据共享、数据流式传输、数据处理的解决方案
问题:不断增加的测试数据量要求在并行测试的多个站点之间共享测试数据:
·各种类型的数据可被共享并需要从共享数据存储装置流式传输到DUT接口(“端口”)或每个站点的处理单元。可共享的数据包括但不限于:
·驱动数据(激励),
·预期数据(包括与预期数据一起存储的或存储在单独存储器区域中的掩码数据),
·后处理结果所需的辅助数据
·数据流需要与HSIO数据速率保持同步,以最小化对所得每个站点的测试数据传输的影响。
·理想情况下,数据存储装置可以在与ATE端口处理单元接口连接的所有站点上共享。然而,这将导致过分复杂且昂贵的数据接口。需要找到适当的架构来最大限度地共享而不影响测试执行。
·每个站点的数据可以不共享。这些数据包括:
·从DUT的接收数据
·在将接收数据与预期数据进行比较之后存储的结果
·每个站点的测试条件:例如,作为对实际测试数据传输的前导而传送到DUT的特定于DUT的片上设置。
解决方案:
图8示出了示例性数据流。然后,它仅表示单个站点并且不对数据存储装置与一个或多个端口处理单元(PPU)进行区分。
解决方案组件:
1.数据存储装置:
·ATE硬件上的存储器子系统实现了大的共享存储器池。
·通常,实现为可用的最快商品RAM。
·用于将共享数据流式传输到端口处理单元。为了最小化带宽利用率,对于多站点测试执行共享的数据优选地仅由PPU或存储器中心读取一次。
·用于将每个DUT的结果流式传输到受控存储器区域中。存储结果所需的容量和带宽优选地显著小于共享激励数据所需的容量和带宽。
·ATE卡上可能有一个或多个数据存储装置。每个数据存储装置都需要复制数据流架构。
2.PPU-端口处理单元:
·与一个或多个DUT相接口
·为DUT实现HSIO、调试和控制端口
·直接从数据存储装置接收数据,或接收从另一PPU(菊花链)或中央存储器中心转发的数据。
·使用缓冲(FIFO)和缓存来最小化对数据源的读取访问。
·完美地分别处理失效的慢速站点:例如,用户可以指定最大处理差异,如果落后于接收超过这个数字,则表明设备失效。
·可以将共享数据转发到一个或多个其他PPU。
·实现预期数据与接收数据的每个DUT的比较,并且计算每个DUT的失效数据。
·将失效数据发送到数据存储装置-可能通过另一PPU或存储器中心。
3.存储器中心(可选):
·用于实现星形架构。
·为每个PPU提供数据接口。
·使用缓冲(FIFO)和缓存来最小化对数据存储装置的读取访问。
4.(一个或多个)结果数据存储装置(可选):
·出于以下原因,用于结果的独立的数据存储装置可以附接到每个PPU或集中到存储器中心:
·提供独立于用于将共享数据流传输到PPU的接口的存储器接口
·提供存储器接口来访问结果数据以便在不干扰下一次测试执行的情况下进行后处理或上传。
方面2:流式传输错误检测和故障压缩的解决方案
问题:传统的ATE实时采样结构测试的主要输出,并且将其与(包括)掩蔽的预期数据进行比较。这个过程是由测试数据的确定性循环I/O来实现的。
然而,通过HSIO的扫描测试本质上是非确定性的和突发的。此外,扫描输出是协议栈中的有效载荷数据:即去往/来自扫描链的数据被加扰到用命令“标记”的串行有效载荷中。USB接收数据(命令和有效载荷)在处理前被存储在存储器中:例如,与预期数据进行比较。
这种方法有两个问题:
1.数据处理在存储所接收到的数据并随后再次读取以将其与存储在另一存储器位置上的预期数据进行比较时具有显著的存储器带宽需求。由于并行测试若干设备,这会进一步提高
2.扫描模式是否失效的判断是基于对通过USB组接收的数据进行后处理。最坏情况下,接收数据与预期数据的比较决定了总体执行时间:即它比通过HSIO的数据流式传输需要更长的时间
解决方案:
嵌入在端口处理单元中的流式传输错误检测块,它将刚接收到的扫描数据与预加载的预期数据进行比较,以便在检测到实际错误时只写入存储器。注意,预期数据可以包括掩码数据。
具体内容:
1.使用上述数据流式传输架构,端口处理单元保持预期数据窗口可用于将其与接收到的数据分组进行比较。
预期数据预加载到每个站点的FIFO或托管缓存中,该FIFO或托管缓存在丢弃数据之前跟踪所有活动站点对其数据的使用情况。这避免了从大型数据存储装置中读取预期数据—可能是针对每个站点重复读取。
在设备不遵循数据流的情况下,PPU可能会引发异常,将站点声明为失效的,并仅存储可用的错误数据。
2.在HSIO上接收到扫描数据时,端口处理单元将接收到的数据与“匹配的”预加载的预期数据进行比较。
在HSIO通信作为确定性字节流的情况下,“匹配”是指按照预加载的预期数据的顺序比较所接收到的数据。
在所接收到的数据的DMA传输的情况下,PPU将写入的接收数据的字节偏移与预期数据中的字节偏移相匹配。字节偏移的作用类似于存储器地址。
3.错误信息以经压缩的表示形式流式输出以最小化所需的数据容量和存储器接口带宽。除标准的数据压缩(例如,失效位的游程编码)以外,流式传输错误检测块可以实现特定于测试的格式(例如,由传统ATE递送的格式)。
可以动态地调整压缩以匹配预期的错误分布:例如,所接收到的数据可包含寄存器值,一旦寄存器值错误,这将导致短时间的错误突发。这可以由具有字节偏移的头部在错误突发开始时有效地存储,并且错误的字扩展到一个寄存器值中。
如果USB-DFT保持可能失效的接收数据在串行USB接收数据流中接近,则可以改善结果数据的压缩。USB-DFT可以缓冲相关的位以使它们在串行位的小区域内流式输出:例如,缓冲通过若干扫描链接收的MISR寄存器的值。如果该寄存器失效,那么许多位将被反转,并且相应地失效位的突发可以用其在整个接收流中的起始的单个偏移值来存储(参见上文)。类似地,USB-DFT可以缓冲和突发来自单个扫描链的数据。此外,USB-DFT可以保持来自若干扫描链的单个块的结果被缓冲,并且使这些结果与另一个块的结果分开地突发。
除各个错误信息以外,流式传输错误检测块还存储与故障分析相关的统计信息:例如,故障总数进行计数、存储第一失效周期的字节偏移。
4.对HSIO扫描的结果处理的独特特征在于错误可能不仅发生在扫描输出数据的有效载荷中,而且也可能发生在命令代码中,例如:
a.HSIO扫描DFT注意到异常,其由此向外进行通信从而中断命令序列。
b.HSIO扫描DFT本身被破坏,这通常使所有有效载荷失效。
这个问题的解决方法是存储额外的预期数据集,其中每个位描述其对应的接收数据位是否是命令:命令-标志-数据
每当在命令中检测到错误时,都会引发“命令错误”标志来限定结果,并加快对意外处理问题的检测。每当发生这样的错误时,流式传输错误检测块可以切换到如下模式,该模式最小化对无用和随机的有效载荷数据的存储,或者可能捕获后续位来作为HSIO扫描DFT块的状态上的信息有效载荷。
5.除了有效地检测错误发生并存储结果之外,流式传输结果处理还可以解扰(descramble)结果,使得错误映射不是基于与其命令结构一起打包到串行USB流中的扫描数据的位偏移,而是直接参考块IO的偏移:例如,进入扫描链的偏移。
该解扰需要映射信息,其需要与扫描模式一起存储为“注释”。其可以与命令标志数据合并,以过滤掉相比于测试SOC块的扫描IO而固有地无关的命令数据。
此外,一旦不同SOC块的接收数据被传送,则映射信息可以不同。因此,解扰处理可以在应用正确的解扰映射之前首先检测有效载荷类型(例如,存储在命令的块索引中):例如,有效载荷中的每个位如何映射到扫描链—可能对于有效载荷的长突发重复。
总的来说,流式传输解扰的流可以分为以下三个阶段,这三个阶段在有效的实现方式中可以是顺序的:
a.丢弃命令数据
b.检测有效载荷类型。这个阶段还可以处理编码成单个命令帧的相同结构的有效载荷的重复
c.使用适用的映射对有效载荷进行解扰
方面3:减少所需测试数据容量的解决方案
问题:测试数据容量正在增加。这会影响存储,以及存储器访问和多站点数据流式传输中所需的带宽。
解决方案:
掩码数据以及命令标志数据可以使用允许在与接收数据进行实际比较之前实时解压缩的算法进行压缩。
由于掩码位应该很少而且更可能突发,所以游程编码可能有效且易于解码。
命令标志数据可进行游程编码或算法压缩:例如,如果接收字被分为命令和有效载荷位。
方面4:减少排序命令的时间开销的解决方案。
问题:HSIO扫描测试被其他动作包围:例如,在HSIO扫描之前设置设备,以在HSIO扫描测试之间更改测试条件、或者突发独立的HSIO扫描模式测试。在所有这些情况下,动作的顺序执行都会导致开销。
在典型的ATE中,通过在FIFO中准备后续动作的测试数据以使得可以不间断地继续进行测试,来最小化或完全避免这种情况。
解决方案:
控制HSIO扫描的动作通常需要高级操作系统中的软件栈的支持。因此,准备后续动作的测试数据需要在完成之前的动作之前并行启动OS级活动。这可以通过多线程来实现,通常可以通过最先进的操作系统(例如,Linux)获得。然而,DUT接口上的活动必须按顺序。因此,USB数据的传输必须暂停,直到先前的动作完成为止。
暂停HSIO扫描数据传输需要干扰特定HSIO端口的协议栈:例如,对于PCle:PCIe可能会继续驱动空闲(IDLE),直到可以启动准备好的帧为止。如果是来自DUT的DMA访问,则PCIe可以完全准备好,并仅等待直到DUT在先前的动作完成之后进行DMA数据传输。
暂停数据传输需要对HSIO IP中的HSIO栈进行适当更改:例如,HSIO可能有两条管道用于准备传输。每次它们中的一个保持待命/选通状态,直到接收到触发才释放下一个可用插槽中的数据传输。触发可以是低级软件命令,或是从另一个仪器甚至DUT本身接收的电触发。
方面5:保持测试设置、测试数据和测试数据流与HSIO端口细节解耦的解决方案
问题:HSIO接口在不同的操作系统上并利用不同的驱动器以不同的方式进行编程。测试设备需要支持的典型变型包括但不限于:
·各种HSIO端口,包括USB、PCIe、1149.10或甚至专用接口
·作为主机/根或作为端点运行的HSIO
·ATE主动将测试数据流式传输到DUT或者DUT从ATE(DMA)提取数据
·通过标准接口或需要定制驱动器的HSIO通信
然而,ATE和测试程序需要实现通用的、可配置的测试设置和用例。
解决方案:
ATE解决方案允许在测试程序内重新配置端口接口:例如,从PCIe端点到1149.10测试接口。
ATE软件支持由可应用于一个或多个HSIO类型的虚拟“仪器”实现的两个或更多个通用使用模型,例如:
·推送模式-流式传输(通常用于USB、1149.10):ATE主动将激励数据推送到HSIO通信
·DMA模式(通常用于PCIe):DUT将OCST存储器映射到其存储器空间并从/向其读取数据。
在系统中添加钩(hook)以使客户或第三方能够根据专用接口调整标准块,例如:
·根据所选的使用模型(例如,DMA)限定用于实现定制端口的标准接口
·在OCST卡上运行的高效定制/第三方代码,用于分析所接收到的分组以进行良率学习。在这种情况下,预期数据可包含支持信息,而不是直接可比较的预期数据。
·在将数据推送到HSIO之前,进行每个DUT的加密。
·允许DUT在DMA模式下写入结果所使用的地址的每个站点的映射。这将使物理接收存储器保持不同,即使每个站点的DMA是相同的。
结论
总之,本文所描述的实施例可以可选地由本文所描述的任何要点或方面来补充。然而,要注意,这里描述的要点和方面可以单独地或组合地使用,并且可以单独地和组合地引入本文描述的任何实施例中。
实施方式替代方案
尽管已经在装置的上下文中描述了一些方面,但明显的是,这些方面还表示对应方法的描述,其中块或设备对应于方法步骤或方法步骤的特征。类似地,在方法步骤的上下文中描述的方面还表示对应装置的对应块或项或特征的描述。一些或全部方法步骤可由(或使用)硬件设备来执行,例如,微处理器、可编程计算机或电子电路。在一些实施例中,一个或多个最重要的方法步骤可以由这样的装置执行。
根据特定实现方式要求,本发明的实施例可以在硬件或软件中实现。可以使用数字存储介质(例如,软盘、DVD、蓝光、CD、ROM、PROM、EPROM、EEPROM或闪存存储器)来执行该实现方式,该数字存储介质上存储有电子可读控制信号,其与可编程计算机系统协作(或能够协作)以执行相应的方法。因此,数字存储介质可以是计算机可读的。
根据本发明的一些实施例包括具有电子可读控制信号的数据载体,该电子可读控制信号能够与可编程计算机系统协作,从而执行本文所述的方法之一。
一般来说,本发明的实施例可以实现为具有程序代码的计算机程序产品,当计算机程序产品在计算机上运行时,程序代码用于执行方法之一。程序代码可以例如存储在机器可读载体上。
其他实施例包括存储在机器可读载体上的用于执行本文所述方法之一的计算机程序。
换句话说,本发明方法的实施例因此是具有程序代码的计算机程序,当计算机程序在计算机上运行时,程序代码用于执行本文所述方法之一。
因此,本发明方法的另一实施例是数据载体(或数字存储介质或计算机可读介质),其上记录有用于执行本文所述方法之一的计算机程序。数据载体、数字存储介质或记录介质通常是有形的和/或非暂时性的。
因此,本发明方法的另一实施例是表示用于执行本文所述方法之一的计算机程序的数据流或信号序列。该数据流或信号序列可以例如被配置为经由数据通信连接(例如,经由互联网)来传输。
另一实施例包括处理装置,例如,计算机或可编程逻辑器件,其被配置为或适于执行本文所述的方法之一。
另一实施例包括在其上安装用于执行本文所述方法之一的计算机程序的计算机。
根据本发明的另一实施例包括被配置为向接收器传输(例如,电子或光学地)用于执行本文所述方法之一的计算机程序的装置或系统。接收器例如可以是计算机、移动设备、存储器设备等。例如,该装置或系统可以包括用于将计算机程序传输到接收器的文件服务器。
在一些实施例中,可编程逻辑器件(例如,现场可编程门阵列)可用于执行本文所述方法的一些或全部功能。在一些实施例中,现场可编程门阵列可与微处理器协作以执行本文所述的方法之一。通常,所述方法优选地由任何硬件设备来执行。
本文描述的装置可以使用硬件装置、或者使用计算机、或者使用硬件设备和计算机的组合来实现。
本文所描述的装置或本文所描述的装置的任何组件可以至少部分地以硬件和/或软件实现。
本文描述的方法可以使用硬件装置、或者使用计算机、或者使用硬件装置和计算机的组合来执行。
本文所描述的方法或本文所描述的装置的任何组件可至少部分地通过硬件和/或软件来执行。
上述实施例仅对本发明的原理进行说明。要理解,本文所描述的布置和细节的修改和变化对于本领域技术人员将是显而易见的。因此,意图仅由所附专利权利要求的范围来限定,而不限于通过本文实施例的描述和解释而呈现的具体细节。
Claims (25)
1.一种用于测试一个或多个被测设备(130)的自动测试设备(100),所述自动测试设备包括:
多个端口处理单元(110),至少包括下列项:
相应的缓冲存储器(140),以及
相应的高速输入输出HSIO接口(120),该HSIO接口用于与所述被测设备(130)中的至少一个连接;
其中,所述端口处理单元被配置为:
接收数据,
将所接收到的数据存储在所述相应的缓冲存储器(140)中,并且
经由所述相应的HSIO接口(120)将存储在所述相应的缓冲存储器(140)中的数据提供给一个或多个所连接的被测设备,以用于测试一个或多个所连接的被测设备(130);
其中,所述端口处理单元还包括流式传输错误检测块,所述流式传输错误检测块被配置为:检测所接收到的数据中的命令错误,并且将所接收到的数据与预加载的预期数据进行比较,所述预期数据优选地包括掩码数据;以及
其中,所述自动测试设备被配置为将所述预期数据预加载到每个设备的FIFO存储器或托管缓存中,所述每个设备的FIFO存储器或托管缓存与一个或多个所连接的设备相关联,所述每个设备的FIFO存储器或托管缓存优选地被配置为跟踪相关联的所连接的设备对数据的使用情况并且丢弃所述数据,并且其中,所述自动测试设备还特别优选地被配置为:响应于基于对数据的使用情况的跟踪发现特定被测设备不遵循数据流,而将所述特定被测设备识别为失效的。
2.根据前述权利要求中的任一项所述的自动测试设备(100),其中,所述相应的缓冲存储器(140)能够作为本地存储器而由所述相应的高速输入输出HSIO接口(120)访问。
3.根据前述权利要求中的任一项所述的自动测试设备(100),还包括数据存储装置,所述数据存储装置包括共享存储器池,并且
其中,所述端口处理单元还配置为从所述共享存储器池接收共享数据。
4.根据权利要求3所述的自动测试设备,其中,所述数据存储装置还被配置为将共享数据流式传输到一个或多个所述端口处理单元和/或存储器中心。
5.根据权利要求3所述的自动测试设备,其中,所述数据存储装置还被配置为将每个设备的结果数据存储到多个存储器区域中。
6.根据权利要求3所述的自动测试设备,其中,一个或多个所述端口处理单元还被配置为将共享数据从所述共享存储器池转发到至少一个其他端口处理单元。
7.根据权利要求3所述的自动测试设备,其中,一个或多个所述端口处理单元被配置为从至少一个其他端口处理单元接收共享数据。
8.根据权利要求3所述的自动测试设备,其中,一个或多个所述端口处理单元形成菊花链,以连续地转发来自所述共享存储器池的共享数据。
9.根据权利要求3所述的自动测试设备,其中,一个或多个所述端口处理单元被配置为从存储器中心接收共享数据。
10.根据权利要求3所述的自动测试设备,其中,所述端口处理单元包括缓冲存储器和/或一个或多个缓存,以允许在接收共享数据和使用所述共享数据以用于测试一个或多个所连接的被测设备之间的时间偏移。
11.根据权利要求3所述的自动测试设备,其中,至少一个所述端口处理单元还被配置为:经由接口向被测设备提供基于所述共享数据的测试信息,并且根据将所述测试信息传输到被测设备的时序来表征所述被测设备。
12.根据权利要求11所述的自动测试设备,其中,所述至少一个所述端口处理单元被配置为:如果测试信息到所述被测设备的传输与由相应的端口处理单元对共享数据的接收相比滞后超过预定时间,则将所述被测设备表征为失效的。
13.根据权利要求3所述的自动测试设备,其中,所述端口处理单元还被配置为:获得每个设备的结果数据,并且将所述每个设备的结果数据转发到所述数据存储装置。
14.根据权利要求13所述的自动测试设备,其中,所述端口处理单元还被配置为使用基于所述共享数据的预期数据来获得所述每个设备的结果数据。
15.根据权利要求3所述的自动测试设备,还包括存储器中心,所述存储器中心被配置为以星形架构将多个端口处理单元与所述数据存储装置相耦合。
16.根据权利要求15所述的自动测试设备,其中,所述存储器中心包括缓冲存储器和/或一个或多个缓存,以允许将共享数据非同时地转发到不同的端口处理单元。
17.根据权利要求3所述的自动测试设备,其中,所述数据存储装置还对于被提供给所述端口处理单元的共享数据和对于所述每个设备的结果数据包括分开的接口。
18.根据权利要求3所述的自动测试设备,其中,所述数据存储装置包括存储器接口,所述存储器接口被配置为在不干扰向所述端口处理单元提供共享数据的情况下访问每个设备的结果数据。
19.根据权利要求1所述的自动测试设备,还被配置为以经压缩的表示形式将数据存储在存储器中,其中,所述压缩优选地为标准数据压缩或采用特定于测试的格式。
20.根据权利要求19所述的自动测试设备,还被配置为动态地调整所述压缩以匹配预期的误差分布。
21.根据权利要求19至20中的任一项所述的自动测试设备,其中,所述自动测试设备被配置为保持可能失效的所接收到的数据在所接收到的数据流中接近。
22.根据权利要求1所述的自动测试设备,其中,所述流式传输错误检测块还被配置为存储与故障分析相关的统计信息。
23.一种用于自动测试一个或多个被测设备的方法,包括:
接收数据,
存储所接收到的数据,以及
将所存储的数据提供给所述一个或多个被测设备,
所述方法还包括:
检测所接收到的数据中的命令错误,并且将所接收到的数据与预加载的预期数据进行比较,所述预期数据优选地包括掩码数据;以及
将所述预期数据预加载到每个设备的FIFO存储器或托管缓存中,所述每个设备的FIFO存储器或托管缓存与一个或多个所连接的设备相关联,跟踪相关联的所连接的设备对数据的使用情况并且丢弃所述数据,并且响应于基于对数据的使用情况的跟踪发现特定被测设备不遵循数据流,而将所述特定被测设备识别为失效的。
24.一种用于处理设备的计算机程序,包括软件代码部分,所述软件代码部分用于所述程序在所述处理设备上运行时执行权利要求23所述的步骤。
25.根据权利要求24所述的计算机程序,包括计算机可读介质,在其上存储有所述软件代码部分,其中,所述程序能够被直接加载到所述处理设备的内部存储器中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962795456P | 2019-01-22 | 2019-01-22 | |
US62/795,456 | 2019-01-22 | ||
PCT/EP2020/051540 WO2020152231A1 (en) | 2019-01-22 | 2020-01-22 | Automated test equipment for testing one or more devices under test, method for automated testing of one or more devices under test, and computer program using a buffer memory |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112703409A CN112703409A (zh) | 2021-04-23 |
CN112703409B true CN112703409B (zh) | 2024-06-14 |
Family
ID=69192062
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080002335.0A Active CN111989580B (zh) | 2019-01-22 | 2020-01-22 | 用于测试一个或多个被测器件的自动化测试设备,用于一个或多个被测器件的自动化测试的方法以及用于应对命令差错的计算机程序 |
CN202080010066.2A Active CN113330322B (zh) | 2019-01-22 | 2020-01-22 | 使用片上系统测试控制器的自动化测试设备 |
CN202080005127.6A Active CN112703409B (zh) | 2019-01-22 | 2020-01-22 | 自动测试设备、方法、及计算机程序 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080002335.0A Active CN111989580B (zh) | 2019-01-22 | 2020-01-22 | 用于测试一个或多个被测器件的自动化测试设备,用于一个或多个被测器件的自动化测试的方法以及用于应对命令差错的计算机程序 |
CN202080010066.2A Active CN113330322B (zh) | 2019-01-22 | 2020-01-22 | 使用片上系统测试控制器的自动化测试设备 |
Country Status (7)
Country | Link |
---|---|
US (3) | US11385285B2 (zh) |
JP (3) | JP7058759B2 (zh) |
KR (3) | KR102591340B1 (zh) |
CN (3) | CN111989580B (zh) |
DE (3) | DE112020000035T5 (zh) |
TW (3) | TW202202865A (zh) |
WO (3) | WO2020152232A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11204849B2 (en) * | 2020-03-13 | 2021-12-21 | Nvidia Corporation | Leveraging low power states for fault testing of processing cores at runtime |
US11809570B2 (en) * | 2020-10-06 | 2023-11-07 | Newae Technology Inc | Method and apparatus for analyzing side channel-related security vulnerabilities in digital devices |
US11719749B1 (en) * | 2020-10-22 | 2023-08-08 | Cadence Design Systems, Inc. | Method and system for saving and restoring of initialization actions on dut and corresponding test environment |
US20220155370A1 (en) * | 2020-11-17 | 2022-05-19 | Synopsys, Inc. | Device under test synchronization with automated test equipment check cycle |
US11836059B1 (en) | 2020-12-14 | 2023-12-05 | Sanblaze Technology, Inc. | System and method for testing non-volatile memory express storage devices |
CN112597006B (zh) * | 2020-12-14 | 2023-10-03 | 中国航发控制系统研究所 | 一种嵌入式软件集成测试自动化执行系统及方法 |
US11431379B1 (en) * | 2021-03-31 | 2022-08-30 | Teradyne, Inc. | Front-end module |
CN115391108A (zh) * | 2021-05-25 | 2022-11-25 | 爱德万测试股份有限公司 | 自动测试设备系统及其自动测试设备方法 |
CN113572661B (zh) * | 2021-07-28 | 2022-12-27 | 迈普通信技术股份有限公司 | 一种测试多激活检测性能的系统和方法 |
CN113836060B (zh) * | 2021-09-24 | 2024-05-28 | 北京机电工程研究所 | 一种适用于仿真模型及流程模型的分布式实时仿真平台 |
CN113961405B (zh) * | 2021-09-30 | 2022-10-28 | 北京百度网讯科技有限公司 | 状态切换指令验证方法、装置、电子设备及存储介质 |
CN114167258B (zh) * | 2021-11-29 | 2024-03-22 | 上海御渡半导体科技有限公司 | 一种ate测试系统的数据存储和读取装置及方法 |
CN113904970B (zh) * | 2021-12-09 | 2022-03-01 | 伟恩测试技术(武汉)有限公司 | 一种半导体测试设备的传输系统及方法 |
CN114461150A (zh) * | 2022-02-09 | 2022-05-10 | 马来西亚明试国际有限公司 | 一种用于自动测试设备数据聚合的方法、系统及存储介质 |
KR102461404B1 (ko) * | 2022-04-08 | 2022-10-31 | 주식회사 세미파이브 | 시스템 온 칩과 메모리 사이의 통신을 위한 io 파라미터를 설정하는 방법 및 장치 |
US11853251B2 (en) | 2022-05-04 | 2023-12-26 | Qualcomm Incorporated | On-die chip-to-chip (C2C) link state monitor |
CN116340191B (zh) * | 2023-05-31 | 2023-08-08 | 合肥康芯威存储技术有限公司 | 一种存储器固件的测试方法、装置、设备及介质 |
CN117290278A (zh) * | 2023-10-10 | 2023-12-26 | 合芯科技有限公司 | 芯片内硬件互联结构、芯片、服务器及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5103450A (en) * | 1989-02-08 | 1992-04-07 | Texas Instruments Incorporated | Event qualified testing protocols for integrated circuits |
US20050060600A1 (en) * | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
CN105378494A (zh) * | 2013-02-21 | 2016-03-02 | 爱德万测试公司 | 具有用于独立测试多个dut的多个基于fpga的硬件加速器块的测试体系架构 |
Family Cites Families (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2966417B2 (ja) * | 1988-09-05 | 1999-10-25 | 株式会社アドバンテスト | 論理集積回路試験装置 |
US7328387B2 (en) | 2004-12-10 | 2008-02-05 | Texas Instruments Incorporated | Addressable tap domain selection circuit with selectable ⅗ pin interface |
US5321702A (en) * | 1989-10-11 | 1994-06-14 | Teradyne, Inc. | High speed timing generator |
JP3114753B2 (ja) * | 1991-10-31 | 2000-12-04 | 九州日本電気株式会社 | Lsiテスト方法 |
JPH07244130A (ja) * | 1994-03-02 | 1995-09-19 | Sony Tektronix Corp | テストパターン発生器 |
JPH08129508A (ja) * | 1994-10-31 | 1996-05-21 | Toshiba Corp | コンピュータシステム及びその共有メモリ制御方法 |
JPH10240560A (ja) * | 1997-02-26 | 1998-09-11 | Toshiba Corp | 波形信号処理装置 |
GB9805054D0 (en) * | 1998-03-11 | 1998-05-06 | Process Intelligence Limited | Memory test system with buffer memory |
AU9654198A (en) | 1998-06-29 | 2000-01-17 | Iliya Valeryevich Klochkov | A skew calibration means and a method of skew calibration |
US6452411B1 (en) * | 1999-03-01 | 2002-09-17 | Formfactor, Inc. | Efficient parallel testing of integrated circuit devices using a known good device to generate expected responses |
JP2001210685A (ja) * | 1999-11-19 | 2001-08-03 | Hitachi Ltd | テストシステムおよび半導体集積回路装置の製造方法 |
US6424926B1 (en) | 2000-03-31 | 2002-07-23 | Intel Corporation | Bus signature analyzer and behavioral functional test method |
KR100374328B1 (ko) * | 2000-06-03 | 2003-03-03 | 박현숙 | 칩 설계 검증 및 테스트 장치 및 방법 |
JP2002156404A (ja) | 2000-11-20 | 2002-05-31 | Seiko Epson Corp | 半導体測定方法及び半導体測定装置 |
JP2002311095A (ja) * | 2001-04-12 | 2002-10-23 | Tritec:Kk | Lsi検査装置 |
US6988232B2 (en) | 2001-07-05 | 2006-01-17 | Intellitech Corporation | Method and apparatus for optimized parallel testing and access of electronic circuits |
JP2003121499A (ja) * | 2001-10-09 | 2003-04-23 | Hitachi Ltd | 組込みテスト機能付き半導体集積回路、テストコード生成プログラムから成る電子設計データを保存する記憶媒体、該半導体集積回路のテスト方法、テストコード生成自動化方法及びそのプログラム |
JP2005524852A (ja) * | 2002-05-08 | 2005-08-18 | エヌピーテスト, インコーポレイテッド | 多目的メモリを有するテスタシステム |
JP2004030765A (ja) | 2002-06-25 | 2004-01-29 | Fujitsu Ltd | 自己診断機能内蔵の半導体記憶装置 |
JP3614838B2 (ja) * | 2002-09-19 | 2005-01-26 | Necエレクトロニクス株式会社 | 半導体検査システム及び半導体デバイスの検査方法 |
US7131046B2 (en) * | 2002-12-03 | 2006-10-31 | Verigy Ipco | System and method for testing circuitry using an externally generated signature |
GB0315931D0 (en) * | 2003-07-08 | 2003-08-13 | Koninkl Philips Electronics Nv | Radio device testing system |
JP4602004B2 (ja) * | 2004-06-22 | 2010-12-22 | 株式会社東芝 | テストパターン作成装置、テストパターン作成方法及びテストパターン作成プログラム |
US7089139B2 (en) * | 2004-08-16 | 2006-08-08 | Agilent Technologies, Inc. | Method and apparatus for configuration of automated debug of in-circuit tests |
US7627798B2 (en) | 2004-10-08 | 2009-12-01 | Kabushiki Kaisha Toshiba | Systems and methods for circuit testing using LBIST |
US7437517B2 (en) * | 2005-01-11 | 2008-10-14 | International Business Machines Corporation | Methods and arrangements to manage on-chip memory to reduce memory latency |
JP2006266835A (ja) * | 2005-03-23 | 2006-10-05 | Advantest Corp | 試験装置、試験方法、及び試験制御プログラム |
US20070168809A1 (en) | 2005-08-09 | 2007-07-19 | Naoki Kiryu | Systems and methods for LBIST testing using commonly controlled LBIST satellites |
CN1925384A (zh) * | 2005-09-02 | 2007-03-07 | 上海乐金广电电子有限公司 | 数字广播信息流传输错误检测装置及方法 |
US7562271B2 (en) | 2005-09-26 | 2009-07-14 | Rambus Inc. | Memory system topologies including a buffer device and an integrated circuit memory device |
US7389461B2 (en) * | 2005-09-28 | 2008-06-17 | Teradyne, Inc. | Data capture in automatic test equipment |
CN1987236A (zh) * | 2005-12-22 | 2007-06-27 | 乐金电子(天津)电器有限公司 | 空调器的错误记录管理控制装置及其管理控制方法 |
US7552370B2 (en) * | 2006-03-31 | 2009-06-23 | Robert Pochowski | Application specific distributed test engine architecture system and method |
EP2003653B1 (en) * | 2006-04-06 | 2010-08-04 | Advantest Corporation | Test device and test method |
EP2044452A1 (en) * | 2006-07-10 | 2009-04-08 | Asterion, Inc. | Digital waveform generation and measurement in automated test equipment |
KR101370728B1 (ko) * | 2006-08-04 | 2014-03-06 | 어드밴테스트 (싱가포르) 피티이. 엘티디. | 테스트 장치 |
US7698088B2 (en) * | 2006-11-15 | 2010-04-13 | Silicon Image, Inc. | Interface test circuitry and methods |
US7486205B2 (en) * | 2006-11-28 | 2009-02-03 | Samplify Systems, Inc. | Compression and decompression of stimulus and response waveforms in automated test systems |
KR100897681B1 (ko) * | 2007-04-05 | 2009-05-14 | 베리지 (싱가포르) 피티이. 엘티디. | 테스트 프로그램 적응 시스템 및 자동화 테스트 시스템 |
US20090112548A1 (en) * | 2007-10-30 | 2009-04-30 | Conner George W | A method for testing in a reconfigurable tester |
US7717752B2 (en) | 2008-07-01 | 2010-05-18 | International Business Machines Corporation | 276-pin buffered memory module with enhanced memory system interconnect and features |
US20100023294A1 (en) * | 2008-07-28 | 2010-01-28 | Credence Systems Corporation | Automated test system and method |
US8677198B2 (en) * | 2009-03-04 | 2014-03-18 | Alcatel Lucent | Method and apparatus for system testing using multiple processors |
US8195419B2 (en) * | 2009-03-13 | 2012-06-05 | Teradyne, Inc. | General purpose protocol engine |
US8170828B2 (en) | 2009-06-05 | 2012-05-01 | Apple Inc. | Test method using memory programmed with tests and protocol to communicate between device under test and tester |
US8386867B2 (en) * | 2009-07-02 | 2013-02-26 | Silicon Image, Inc. | Computer memory test structure |
US8261119B2 (en) | 2009-09-10 | 2012-09-04 | Advantest Corporation | Test apparatus for testing device has synchronization module which synchronizes analog test module to digital test module based on synchronization signal received from digital test module |
US20110273197A1 (en) * | 2010-05-07 | 2011-11-10 | Qualcomm Incorporated | Signal generator for a built-in self test |
JP2011248597A (ja) | 2010-05-26 | 2011-12-08 | Yokogawa Electric Corp | テスタシミュレーション装置、テスタシミュレーションプログラムおよびテスタシミュレーション方法 |
WO2011149725A2 (en) * | 2010-05-28 | 2011-12-01 | Verigy (Singapore) Pte. Ltd. | Flexible storage interface tester with variable parallelism and firmware upgradeability |
WO2012033484A1 (en) * | 2010-09-07 | 2012-03-15 | Verigy (Singapore) Pte. Ltd. | Systems, methods and apparatus using virtual appliances in a semiconductor test environment |
US8598898B2 (en) * | 2010-10-05 | 2013-12-03 | Silicon Image, Inc. | Testing of high-speed input-output devices |
US9043665B2 (en) * | 2011-03-09 | 2015-05-26 | Intel Corporation | Functional fabric based test wrapper for circuit testing of IP blocks |
US20120324302A1 (en) * | 2011-06-17 | 2012-12-20 | Qualcomm Incorporated | Integrated circuit for testing using a high-speed input/output interface |
US9470759B2 (en) | 2011-10-28 | 2016-10-18 | Teradyne, Inc. | Test instrument having a configurable interface |
TW201337236A (zh) | 2012-03-15 | 2013-09-16 | Le & Der Co Ltd | 流體自動化採樣控制裝置 |
US9606183B2 (en) * | 2012-10-20 | 2017-03-28 | Advantest Corporation | Pseudo tester-per-site functionality on natively tester-per-pin automatic test equipment for semiconductor test |
US9026869B1 (en) * | 2012-11-01 | 2015-05-05 | Amazon Technologies, Inc. | Importance-based data storage verification |
US9959186B2 (en) * | 2012-11-19 | 2018-05-01 | Teradyne, Inc. | Debugging in a semiconductor device test environment |
US9183952B2 (en) * | 2013-02-20 | 2015-11-10 | Micron Technology, Inc. | Apparatuses and methods for compressing data received over multiple memory accesses |
US11009550B2 (en) * | 2013-02-21 | 2021-05-18 | Advantest Corporation | Test architecture with an FPGA based test board to simulate a DUT or end-point |
US10161993B2 (en) * | 2013-02-21 | 2018-12-25 | Advantest Corporation | Tester with acceleration on memory and acceleration for automatic pattern generation within a FPGA block |
US20140236527A1 (en) * | 2013-02-21 | 2014-08-21 | Advantest Corporation | Cloud based infrastructure for supporting protocol reconfigurations in protocol independent device testing systems |
US20140237292A1 (en) * | 2013-02-21 | 2014-08-21 | Advantest Corporation | Gui implementations on central controller computer system for supporting protocol independent device testing |
US9952276B2 (en) * | 2013-02-21 | 2018-04-24 | Advantest Corporation | Tester with mixed protocol engine in a FPGA block |
US9810729B2 (en) * | 2013-02-28 | 2017-11-07 | Advantest Corporation | Tester with acceleration for packet building within a FPGA block |
US9310427B2 (en) * | 2013-07-24 | 2016-04-12 | Advantest Corporation | High speed tester communication interface between test slice and trays |
US20150153405A1 (en) * | 2013-12-04 | 2015-06-04 | Princeton Technology Corporation | Automatic testing system and method |
CN204044309U (zh) * | 2014-01-24 | 2014-12-24 | 矽创电子股份有限公司 | 自动测试设备和升级自动测试设备的集成电路测试界面 |
US9934831B2 (en) * | 2014-04-07 | 2018-04-03 | Micron Technology, Inc. | Apparatuses and methods for storing and writing multiple parameter codes for memory operating parameters |
US9304846B2 (en) * | 2014-04-29 | 2016-04-05 | Ford Global Technologies, Llc | Apparatus and method of error monitoring with a diagnostic module |
US9811420B2 (en) * | 2015-03-27 | 2017-11-07 | Intel Corporation | Extracting selective information from on-die dynamic random access memory (DRAM) error correction code (ECC) |
JP6458626B2 (ja) | 2015-05-07 | 2019-01-30 | 富士通株式会社 | デバッグ回路、半導体装置及びデバッグ方法 |
KR102377362B1 (ko) * | 2015-07-08 | 2022-03-23 | 삼성전자주식회사 | 보조 테스트 장치, 그것을 포함하는 테스트 보드 및 그것의 테스트 방법 |
JP6386434B2 (ja) | 2015-10-08 | 2018-09-05 | 株式会社アドバンテスト | 試験装置、試験信号供給装置、試験方法、およびプログラム |
CN105895163B (zh) * | 2016-03-28 | 2018-09-28 | 工业和信息化部电子第五研究所 | 基于镜像备份的单粒子效应检测方法和系统 |
US10395748B2 (en) * | 2016-06-15 | 2019-08-27 | Micron Technology, Inc. | Shared error detection and correction memory |
JP2018006406A (ja) | 2016-06-28 | 2018-01-11 | 東京エレクトロン株式会社 | 基板検査装置 |
JP6686769B2 (ja) * | 2016-07-27 | 2020-04-22 | 富士通株式会社 | テストパタン生成装置及びテストパタン生成方法 |
US11309056B2 (en) * | 2017-01-31 | 2022-04-19 | Octavo Systems Llc | Automatic test equipment method for testing system in a package devices |
JP6878071B2 (ja) | 2017-03-21 | 2021-05-26 | 株式会社東芝 | 半導体集積回路及び半導体集積回路の診断方法 |
US10580200B2 (en) | 2017-04-07 | 2020-03-03 | Intel Corporation | Virtual reality apparatus and method including prioritized pixel shader operations, alternate eye rendering, and/or augmented timewarp |
CN107390109B (zh) * | 2017-06-09 | 2019-12-24 | 苏州迅芯微电子有限公司 | 高速adc芯片的自动测试平台及其软件架构设计方法 |
-
2020
- 2020-01-22 JP JP2020560932A patent/JP7058759B2/ja active Active
- 2020-01-22 WO PCT/EP2020/051543 patent/WO2020152232A1/en active Application Filing
- 2020-01-22 JP JP2021532983A patent/JP7295954B2/ja active Active
- 2020-01-22 CN CN202080002335.0A patent/CN111989580B/zh active Active
- 2020-01-22 WO PCT/EP2020/051538 patent/WO2020152230A1/en active Application Filing
- 2020-01-22 KR KR1020217015271A patent/KR102591340B1/ko active IP Right Grant
- 2020-01-22 CN CN202080010066.2A patent/CN113330322B/zh active Active
- 2020-01-22 DE DE112020000035.4T patent/DE112020000035T5/de active Pending
- 2020-01-22 DE DE112020000036.2T patent/DE112020000036T5/de active Pending
- 2020-01-22 KR KR1020217026464A patent/KR102604010B1/ko active IP Right Grant
- 2020-01-22 JP JP2020561063A patent/JP7101814B2/ja active Active
- 2020-01-22 DE DE112020000469.4T patent/DE112020000469T5/de active Pending
- 2020-01-22 WO PCT/EP2020/051540 patent/WO2020152231A1/en active Application Filing
- 2020-01-22 CN CN202080005127.6A patent/CN112703409B/zh active Active
- 2020-01-22 KR KR1020217015278A patent/KR102569335B1/ko active IP Right Grant
- 2020-07-06 TW TW109122802A patent/TW202202865A/zh unknown
- 2020-07-06 TW TW109122801A patent/TW202202864A/zh unknown
- 2020-07-06 TW TW109122800A patent/TW202132793A/zh unknown
- 2020-10-14 US US17/070,696 patent/US11385285B2/en active Active
- 2020-11-10 US US17/094,047 patent/US11415628B2/en active Active
- 2020-11-10 US US17/094,129 patent/US11913990B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5103450A (en) * | 1989-02-08 | 1992-04-07 | Texas Instruments Incorporated | Event qualified testing protocols for integrated circuits |
US20050060600A1 (en) * | 2003-09-12 | 2005-03-17 | Jeddeloh Joseph M. | System and method for on-board timing margin testing of memory modules |
CN105378494A (zh) * | 2013-02-21 | 2016-03-02 | 爱德万测试公司 | 具有用于独立测试多个dut的多个基于fpga的硬件加速器块的测试体系架构 |
Also Published As
Publication number | Publication date |
---|---|
TW202202864A (zh) | 2022-01-16 |
TW202132793A (zh) | 2021-09-01 |
US11913990B2 (en) | 2024-02-27 |
JP7295954B2 (ja) | 2023-06-21 |
US20210025938A1 (en) | 2021-01-28 |
KR102569335B1 (ko) | 2023-08-22 |
KR102604010B1 (ko) | 2023-11-20 |
JP7058759B2 (ja) | 2022-04-22 |
KR20210116604A (ko) | 2021-09-27 |
US11415628B2 (en) | 2022-08-16 |
JP7101814B2 (ja) | 2022-07-15 |
JP2021520570A (ja) | 2021-08-19 |
KR20210079347A (ko) | 2021-06-29 |
US20210055347A1 (en) | 2021-02-25 |
CN111989580B (zh) | 2023-06-30 |
KR102591340B1 (ko) | 2023-10-20 |
WO2020152232A1 (en) | 2020-07-30 |
WO2020152231A1 (en) | 2020-07-30 |
WO2020152230A1 (en) | 2020-07-30 |
CN111989580A (zh) | 2020-11-24 |
US20210073094A1 (en) | 2021-03-11 |
CN113330322A (zh) | 2021-08-31 |
US11385285B2 (en) | 2022-07-12 |
JP2022517513A (ja) | 2022-03-09 |
DE112020000469T5 (de) | 2021-10-07 |
KR20210079348A (ko) | 2021-06-29 |
TW202202865A (zh) | 2022-01-16 |
CN112703409A (zh) | 2021-04-23 |
JP2021520001A (ja) | 2021-08-12 |
DE112020000036T5 (de) | 2021-01-21 |
CN113330322B (zh) | 2024-06-21 |
DE112020000035T5 (de) | 2020-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112703409B (zh) | 自动测试设备、方法、及计算机程序 | |
US11009550B2 (en) | Test architecture with an FPGA based test board to simulate a DUT or end-point | |
US10976361B2 (en) | Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes | |
US10379158B2 (en) | Real-time capture of traffic upon failure for protocol debug | |
KR101984353B1 (ko) | Fpga 블록 내 혼합된 프로토콜 엔진을 구비한 시험기 | |
KR101993504B1 (ko) | Fpga 블록 내의 자동 패턴 생성을 위한 가속 및 메모리 상의 가속을 갖는 시험기 | |
KR102043487B1 (ko) | 독립적으로 다수의 dut를 시험하기 위한 다수의 fpga 기반 하드웨어 가속기 블록을 갖는 시험 아키텍처 | |
KR20150126374A (ko) | Fpga 블록 내에 패킷 형성을 위한 가속을 갖는 시험기 | |
US20200116783A1 (en) | Test systems for executing self-testing in deployed automotive platforms | |
US9971644B2 (en) | Serial I/O functional tester | |
US20210116494A1 (en) | Software directed firmware acceleration | |
US10866278B2 (en) | Methods and apparatus for performing design for debug via protocol interface | |
US7526691B1 (en) | System and method for using TAP controllers | |
US20210125680A1 (en) | Software-focused solution for arbitrary all-data odd sector size support | |
US20190235023A1 (en) | Narrow-parallel scan-based device testing |
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 |