CN114190101A - 用于测试包括处理单元和程序和/或数据存储器的被测装置的自动化测试设备和包括测试控制器、与被测装置的一个或多个接口、共享存储器的自动化测试设备以及用于测试被测装置的方法 - Google Patents

用于测试包括处理单元和程序和/或数据存储器的被测装置的自动化测试设备和包括测试控制器、与被测装置的一个或多个接口、共享存储器的自动化测试设备以及用于测试被测装置的方法 Download PDF

Info

Publication number
CN114190101A
CN114190101A CN201980098856.8A CN201980098856A CN114190101A CN 114190101 A CN114190101 A CN 114190101A CN 201980098856 A CN201980098856 A CN 201980098856A CN 114190101 A CN114190101 A CN 114190101A
Authority
CN
China
Prior art keywords
interface
device under
test
under test
memory
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.)
Pending
Application number
CN201980098856.8A
Other languages
English (en)
Inventor
弗兰克·亨塞尔
奥拉夫·波佩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advantest Corp
Original Assignee
Advantest Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advantest Corp filed Critical Advantest Corp
Publication of CN114190101A publication Critical patent/CN114190101A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/2733Test interface between tester and unit under test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31905Interface with the device under test [DUT], e.g. arrangements between the test head and the DUT, mechanical aspects, fixture
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31908Tester set-up, e.g. configuring the tester to the device under test [DUT], down loading test patterns
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31903Tester hardware, i.e. output processing circuits tester configuration
    • G01R31/31912Tester/user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • G06F11/2635Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers using a storage for the test inputs, e.g. test ROM, script files
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C2029/5602Interface to device under test

Abstract

本发明的一个实施例是一种用于测试被测装置(DUT)的自动化测试设备(ATE),该被测装置包括处理单元和程序和/或数据存储器,其中处理单元能够执行来自程序和/或数据存储器的代码。自动化测试设备被配置为例如通过利用第一接口将程序上传到DUT来建立通信,该第一接口例如是调试接口或调试访问端口或能够访问处理单元以进行外部控制的通用接口。第一接口的典型用例是对DUT的调试访问,这通常要求有限的数据速率。在本发明的情况下,第一接口是用于测试执行的ATE访问,例如允许访问处理单元寄存器的接口。第一接口配置DUT以开启以高得多的数据速率(比第一接口高)运行的第二接口以进行额外的通信。此外,第二接口与第一接口相比可具有扩展的能力,例如将其自己的存储器作为正常系统存储器呈现给DUT的处理单元,只是访问时间可能较慢。

Description

用于测试包括处理单元和程序和/或数据存储器的被测装置 的自动化测试设备和包括测试控制器、与被测装置的一个或 多个接口、共享存储器的自动化测试设备以及用于测试被测 装置的方法
技术领域
根据本发明的实施例涉及用于测试被测装置的自动测试设备,该被测装置包括处理单元和存储器。该存储器可包括程序和/或数据存储器。
根据本发明的进一步实施例涉及自动测试设备,其包括测试控制器、一个或多个计算机接口和共享存储器。
根据本发明的进一步实施例涉及用于测试被测装置(device under test,DUT)的方法。
本发明的实施例概括而言涉及数字半导体装置的测试,更具体而言涉及装置制造期间的系统类型测试。
根据本发明的进一步实施例涉及用于片上系统测试的存储器扩展方法。
背景技术
对于数字半导体装置的生产测试,结构测试方法被广泛应用。然而,这些测试集中在多知识产权(intellectual property,IP)数字半导体设计中的某个复杂功能实现或IP块。因此,如此在结构测试设计技术的帮助下,可能源自不同IP来源和/或厂商的IP块通常在结构上是完全可测试的。这些结构测试对逻辑功能进行测试,并且它们在测试模式中被执行。
在数字半导体设计的最终应用中,即在任务和/或操作模式中,装置通常或主要不是在测试模式中,而是在其任务模式中进行操作的。
如果半导体是片上系统(system on a chip,SOC)或系统级封装(system in apackage,SIP),则内部和/或外部处理单元或中央处理单元(central processing unit,CPU)可以执行指令或程序代码,以处理IP块之间交换的数据。IP块的交互可能会引入新的跨IP错误行为机制。这些可能是与设计有关和/或与工艺有关的。
虽然新设计的初始系统开启的目的是寻找设计差错,但越来越多的半导体制造商致力于在装置制造期间建立系统类型测试,以便寻找与工艺有关的缺陷。在这个测试步骤中要求进行任务模式操作,以便建立内部通信或证明跨IP功能。
SOC或SIP设计的典型构建块例如是处理单元(processing unit,PU)、计算机基础设施(比如用于指令和/或数据的缓存存储器(例如L2缓存)、外围逻辑、和特定设计和/或定制的IP块。
在生产测试阶段中,这些SOC芯片所针对设计的系统还没有完成。像外部存储器、大容量存储装置、功率管理等等组件只是部分可用的,因为这样的组件可能在以后的生产阶段被添加,例如在包装或组装在应用板中期间被添加。
因此,例如,在晶圆级的处理单元上要执行的程序代码的存储是非常有限的,也就是限于芯片上的存储器资源,比如小型存储器库和/或可能被重配置来充当存储器的缓存存储器。这意味着测试程序代码和要处理的数据需要非常小,以便能够装入这些资源中。人们需要找到对于这个限制的应变方式,比如将测试内容分成更小的部分。
片外存储器接口通常不能在晶圆探针测试插入时被提供服务。它们要求宽大的总线、非常短的迹线和/或往返时间,这要求的线路长度通常小于1cm。此外,还要求有多得多的引脚,因为这些存储器接口通常被再利用来作为结构测试的测试端口。在自动测试设备(automatic test equipment,ATE)中集成存储器功能的帮助是有限的,或者提供有限的帮助,因为对于宽总线的需要,尤其是对非常短的迹线和/或往返时间的需要,不能被恰当地满足。
高速输入/输出(High Speed Input/Output,HSIO)总线,例如快速外围组件接口(Peripheral Component Interface Express,PCIeTM)、通用串行总线(Universal SerialBus,USB)、串行外围接口(Serial Peripheral Interface,SPI),是狭窄但高速的。与处理单元调试端口类似,ATE覆盖是可能的,并且在ATE行业中被广泛使用,用于参数化信号验证。
为了扩大RAM存储器的可用量,一些设计已知具有特殊的可测试性设计(designfor testability,DfT)硬件,其允许了将L2缓存存储器改变用途作为额外的RAM,例如通过关闭缓存算法。
仅仅或者唯一地将片上RAM用于测试案例程序的执行在大小上提供了限制。此外,程序在执行可以开始之前需要被完全加载。从而,通过JTAG和/或通过另一调试端口的加载时间是相对有限的。此外,还需要经由调试端口机制对测试结果进行类似的间接访问。
通过将L2缓存存储器改变用途作为RAM来使能扩展RAM大小,要求特殊的DfT。虽然缓存功能要求存储所谓的缓存线的起始地址和缓存线数据,并且需要形成连续的存储器区域,但DfT需要关闭这些机制,以防止程序代码被自动覆写。这个选项已被公布,但由于其复杂性,很少被观察或应用。
在板上使用外部存储器模块,例如RAM、ROM、闪速ROM等等,会导致对装置引脚的大量使用,这些引脚不能再用于测试访问,于是造成结构测试缺漏。此外,这个选项需要大量的维护和/或诊断工作,例如验证电路、验证和/或更换程序内容。此外,如果不与调试访问端口相结合,这个选项提供了测试结果的有限可见性,这意味着在单个被测装置(DUT)比特上发信号通知摘要。
经由第二接口上传到DUT的程序在DUT上执行功能测试,这是可取的,因为众所周知,半导体装置在测试模式中,与其任务模式相比,显示出不同的特性,例如功率消耗方面的特性。
因此,需要一种构思,允许在DUT的功能测试期间增大DUT的存储器的大小和/或可用性,和/或允许在DUT和ATE之间进行更快的和/或受监视的和/或受保护的通信。
这一目标通过独立权利要求的主题得到了解决。
发明内容
本发明的一个实施例(参见例如权利要求1)是一种用于测试DUT的ATE,该DUT包括处理单元和程序和/或数据存储器,其中处理单元能够执行来自程序和/或数据存储器的代码。该自动化测试设备被配置为使用第一接口将程序上传到DUT,例如,调试接口或调试访问端口(Debug Access Port,DAP)或能够访问处理单元以进行外部控制的通用接口。
第一接口的典型用例是软件调试,这通常是相当缓慢的。在本发明的情况下,第一接口可以例如是用于测试执行的ATE访问口,例如允许访问DUT内部功能的接口。
经由第一接口上传到DUT的程序对DUT进行配置以开启以更高的数据速率(例如,以高得多的数据速率)运行的第二接口,该更高的数据速率例如比第一接口的数据速率高(或者甚至高得多),用于额外的通信。
例如,被配置为在DUT上上传和运行程序的ATE可以开启第二接口,该第二接口可具有更高的数据速率,从而减少测试DUT所花费的时间。第二接口还可以有可能充当程序和/或数据存储器,并且/或者提供使用第一接口无法提供的其他功能。
此实施例是基于这样的想法:通过经由相对较慢的第一接口向DUT提供程序,该程序开启相对较快的第二接口,该第二接口可能例如需要一些配置和/或驱动器软件,这样可以加速测试。
从而,第二接口可以支持ATE或测试器和DUT之间的通信,并且/或者可以允许DUT访问存储器,该存储器例如是由测试器提供的并且可能例如在执行测试时是有用的。
然而,虽然第二接口在加电时可能无法运行或无法完全运行,但测试器使用第一接口(其可能是简单的接口,无需软件-驱动器配置过程和/或无需驱动器软件就可用)上传的程序可以激活第二接口,从而使得能够实现改进的测试。使用第一接口将初始程序代码下载到DUT存储器中,也解决了芯片上可能存在的一次性可编程ROM不能被使用的问题:它通常会在生产流程中的稍后状态下被用应用ROM代码进行编程,因此不能被用来配置第二装置来与ATE进行交互,这也是出于安全性原因。
总而言之,通过使用两步过程,其中需要第一接口来向DUT提供激活第二接口的程序,DUT可以被带入可以访问外部存储器的状态中,以允许复杂的测试。
根据实施例(参见例如权利要求2),经由第一接口上传到DUT的程序执行以下步骤中的一个或多个。
·上传的程序配置DUT和/或使用DUT的连接块,例如,DUT的存储器,以便经由第二接口加载额外的程序代码和/或数据。如果程序由DUT执行,例如,程序被从自动化测试设备的共享存储器执行,则第二接口可包括更高数据速率或者以更高数据速率进行通信,该数据速率高于第一接口的数据速率。第二接口还可以有可能充当程序和/或数据存储器,并且/或者提供使用第一接口无法提供的其他功能。
·上传的程序控制一个或多个程序的执行。
·上传的程序将DUT的寄存器设置为期望的值。
·上传的程序配置DUT的存储器访问,例如,随机访问。
上传的程序被配置为配置DUT,这可包括加载额外的程序和数据,执行一个或多个程序,设置DUT的寄存器值和存储器访问。配置DUT的益处可能是在DUT和ATE之间建立更快的通信,或者映射共享存储器,这可能导致从共享存储器运行程序和/或从共享存储器读取数据/向共享存储器写入数据。
在优选实施例中(参见例如权利要求3),经由第一接口上传到DUT的程序被配置为配置DUT来使用存储器映射访问第二接口。这可以例如通过向DUT的存储器映射控制寄存器写入适当的值来实现。并且这可能导致,例如,经由第二接口与DUT耦合的ATE的共享存储器的内容,在DUT的处理单元看来是存储器,例如,是连接到DUT的系统总线的存储器。这可导致扩展了DUT的可寻址存储器。
根据实施例(参见例如权利要求4),经由第一接口上传到DUT的程序被配置为配置DUT的资源管理器,以分配DUT的处理单元可寻址的存储器范围的存储器子范围,用于访问第二接口。该程序可以配置资源管理器,以使得经由第二接口与DUT耦合的ATE的共享存储器的内容在DUT的处理单元看来是分配的存储器子范围中的存储器。这可导致扩展了DUT的存储器。
在优选实施例中(参见例如权利要求5),上传到DUT的程序被配置为作为客户端或作为主机与ATE通信,利用适当的应用协议与其对应方交换数据,即与ATE交换数据。
例如,交换的数据可能包括编译的代码片段、设置和配置数据、测量结果数据和/或寄存器值等。DUT被配置为形成独立的计算机系统。
根据实施例(参见例如权利要求6),ATE被配置为或被要求针对第一和/或第二接口认证和/或授权其自身。
例如,ATE被配置为使用密码手段和/或秘密凭证来认证和/或授权其自身。例如,为了证明其身份,这例如是建立通信所要求的,可能要求认证。例如,为了获得装置上的权限,以例如访问否则受限制的功能,可能要求授权。例如,所要求的认证和/或授权导致了安全性的提高。
在优选实施例中(参见例如权利要求7),ATE被配置为或被要求通过使用第一接口和/或第二接口以加密方式和/或以进行保护以防止修改的方式与DUT通信。
例如,该通信被配置为通过使用标准的和/或专有的数据完好性检查方法(例如散列)而被保护以防止修改。例如,该通信被配置为通过使用标准的和/或专用加密方案和/或方法而被加密。使用受保护的和/或加密的通信会导致安全性的提高。
根据实施例(参见例如权利要求8),ATE被配置为或者被要求通过使用第一和/或第二接口而通过使用标准的和/或专有的、有损和/或无损紧凑化手段以压缩的方式与DUT通信,其中自动测试设备被配置为压缩要发送至DUT的数据以及解压缩从DUT接收的数据。
发送和/或接收压缩数据比发送和/或接收非压缩数据更具时间效益。
在优选实施例中(参见例如权利要求9),经由第一和/或第二接口上传到DUT的程序包括用于执行紧凑化和/或解紧凑化方法以执行压缩和/或解压缩的程序代码。
例如,紧凑化和/或解紧凑化方法仅被用在测试模式中,并且可能没有义务让DUT在任务和/或操作模式中包括紧凑化和/或解紧凑化方法。
根据实施例(参见例如权利要求10),ATE被配置为使得DUT的处理单元执行测试案例代码和/或测试案例程序,该测试案例代码和/或测试案例程序被存储在ATE的共享存储器中并且经由第二接口被加载到DUT上。
例如,测试案例代码在DUT的处理单元看来位于DUT的处理单元可寻址的存储器范围的存储器子范围中。例如,测试案例代码适合于在由DUT的处理单元执行时测试DUT的一个或多个功能。在ATE的共享存储器中存储和/或执行测试案例代码可以减小测试模式中要求的DUT存储器。另外,ATE可以很容易地管理存储在ATE的共享存储器中的测试案例程序。
在优选实施例中(参见例如权利要求11),ATE被配置为在DUT执行存储在ATE的共享存储器中并且经由第二接口被加载到DUT的测试案例代码之前导致缓存或缓存区域的无效。第二接口还可以有可能充当程序和/或数据存储器,并且/或者提供使用第一接口无法提供的其他功能。
在测试模式中使缓存或缓存区域无效可以例如导致测试模式和任务和/或操作模式的分离,这样缓存和/或缓存区域可以保持没有测试模式的程序和/或数据,并且缓存和/或缓存区域中的数据可以不被测试过程所覆写。
使缓存或缓存区域无效的进一步益处可能例如是,在测试过程期间生成的数据或辅助数据可被存储在共享存储器中,并且可例如被ATE评估。测试和/或评估这些数据也可能通过改进输入数据的数量和/或类型而导致例如测试过程的质量改进。
根据实施例(参见例如权利要求12),使用第一接口上传到DUT的程序被配置为初始化DUT的处理单元并且初始化DUT的第二接口。此外,该程序被配置为配置DUT的第二接口以连接到ATE的共享存储器并且提供ATE的共享存储器的存储器范围作为DUT的处理单元可使用的存储器范围,例如通过使用存储器映射来提供。共享存储器范围可能例如是通过使用存储器访问指令和/或操作码可访问的。
共享存储器的益处可能例如是,ATE和DUT都能够访问该存储器,从而加快了测试速度,这是通过消除了在ATE和DUT之间保存和发送/接收数据的需要并且通过允许ATE接近实时地、即时(即,每当共享存储器的内容变化时)交换信息来实现的。
在优选实施例中(参见例如权利要求13),使用第一接口上传到DUT的程序被配置为对ATE的存储器的存储器范围被映射到的存储器范围进行初始化,以由被测装置的缓存,例如L2缓存,来进行缓存。
这可能导致例如由第二接口提供的扩展存储器被作为正常的系统存储器而呈现给DUT的处理单元,只是问时间可能较慢。
第二接口还可以有可能充当程序和/或数据存储器,并且/或者提供使用第一接口无法提供的其他功能。
这可能进一步导致例如ATE和DUT之间的共享存储器,这可能有益处,例如,ATE和DUT都能够访问该存储器,从而允许了ATE接近实时地、即时地(即,每当共享存储器的内容变化时)进行测试。
根据实施例(参见例如权利要求14),使用第一接口上传到DUT的程序被配置为对ATE的共享存储器的存储器范围被映射到的存储器范围进行初始化,以使得由第二接口提供的扩展存储器被作为正常系统存储器(例如随机访问存储器)呈现给DUT的处理单元只是访问时间可能较慢。“主机”的存储器(其可被映射到被测装置的存储器区域中)被缓存,从而使得可以以合理的速度执行测试程序。
这可能导致例如由第二接口提供的扩展存储器被作为正常的系统存储器而呈现给DUT的处理单元,只是访问时间可能较慢。
这可能进一步导致例如ATE和DUT之间的共享存储器,这可能有益处,例如,ATE和DUT都能够访问该存储器,从而允许了ATE接近实时地、即时地(即,每当共享存储器的内容变化时)进行测试。
在优选实施例中(参见例如权利要求15),使用第一接口上传到DUT的程序被配置为使得DUT经由第二接口向ATE传送程序执行的结果,以便例如经由第二接口将程序执行的结果存储在自动化测试设备的共享存储器中。
共享存储器的益处可能例如是,ATE和DUT都能够访问该存储器,从而加快了测试速度,这是通过消除了在ATE和DUT之间保存和发送/接收数据的需要并且通过允许ATE接近实时地、即时(即,每当共享存储器的内容变化时)进行测试来实现的。
根据实施例(参见例如权利要求16),ATE被配置为基于经由第二接口存储在ATE的存储器中的结果来执行数据分析,第二接口还可以有可能充当程序和/或数据存储器和/或提供使用第一接口无法提供的其他功能。
ATE可进一步被配置为基于经由第二接口存储在ATE的存储器中的结果来执行对DUT的表征,例如合格/不合格计算。
ATE可进一步被配置为评估经由第二接口对ATE的存储器的数据访问模式,以便例如对DUT进行表征和/或执行合格/不合格检测。
ATE可进一步被配置为分析经由第二接口从被测装置接收的即时信息,以便对DUT进行表征。
在优选实施例中(参见例如权利要求17),ATE被配置为使得DUT按顺序和/或并行地执行多个测试案例程序,例如,在多核DUT的情况下。这例如将生成不同的压力模式,并且有可能更加真实。测试案例程序被存储在ATE的共享存储器的不同存储器范围中,DUT经由第二接口访问这些存储器范围。例如,测试案例的并行执行和/或评估可以通过在不同的核心上运行不同的测试而具有加速测试过程的益处。
根据实施例(参见例如权利要求18),经由第一接口上传到DUT的程序被配置为对DUT进行配置以在给定测试案例程序的执行期间经由第二接口加载该给定测试案例程序的程序代码和/或数据,从而扩展了DUT的存储器,并且可以例如在操作模式中而不是在测试模式中使用和/或测试缓存。
例如,每当DUT的处理单元要求新的操作码时,例如,程序从耦合到第二接口的共享存储器所覆盖的存储器区域中加载程序代码和/或数据。
例如,每当DUT的缓存机制取得操作码时,例如,程序从耦合到第二接口的共享存储器所覆盖的存储器区域中加载程序代码和/或数据(假设此程序代码和/或数据可能或将被DUT的处理单元所需要)。
根据实施例(参见例如权利要求19),ATE包括测试控制器。此外,ATE包括第一接口,例如调试接口,以便向DUT提供测试数据。此外,ATE包括共享存储器,该共享存储器可由测试控制器访问,并且可由DUT访问,例如,经由第二接口来访问。
ATE可通过第一接口或第二接口向DUT提供测试数据。此外,例如,ATE可包括测试控制器和共享存储器。DUT和测试控制器都能够访问共享存储器,这改善了DUT和ATE之间的数据交换。此外,它可以导致接近实时的、即时的测试,其中ATE可以在每当共享存储器中的数据发生变化时执行测试。
在优选实施例中(参见例如权利要求20),ATE包括测试控制器。此外,ATE包括第一接口,例如调试接口,以便向DUT提供测试数据。此外,ATE包括共享存储器,该共享存储器可由测试控制器访问,并且可由DUT访问,例如经由第二接口来访问,该第二接口包括比第一接口更高的数据速率。可以是高速接口的第二接口可以由以高数据速率运行的另一调试接口构成,该另一调试接口可例如是为测试而构造的。
此外,第二接口可以是应用模式中的DUT的终端应用的典型接口,例如但不限于PCIe或USB。这个选项也可以为DUT测试的系统测试覆盖提供优势。
根据实施例(参见例如权利要求21),ATE包括高速串行接口,其被配置为允许DUT对共享存储器的访问。
高速串行接口可包括一个串行数据通道,或者也可包括两个或更多个串行数据通道,并且可以充当第二接口。高速串行接口(HSIO)也可以是主机接口客户端,其被配置为处理DUT对ATE的共享存储器的访问。
此外,HSIO接口可以根据测试或最终应用的带宽需求进行缩放,这对接口测试覆盖而言可能是重要的。
在优选实施例中(参见例如权利要求22),串行接口是快速PCI接口或快速PCI兼容接口,例如PCI ExpressTM或PCIeTM
使用常见的串行接口,比如PCI ExpressTM和/或PCIeTM接口,可以使得可使用的现有连接器和/或接口的种类更多,和/或带来使用已经存在的接口的益处,这可降低复杂性和/或成本。
在优选实施例中(参见例如权利要求23),串行接口是通用串行总线(USB)接口,例如,USB 1.0接口,或者USB 1.1接口,或者USB 2.0接口,或者USB 3.0接口,或者USB 3.1接口,或者USB 3.1Gen 1接口,或者USB 3.1Gen 2接口,或者USB 3.2接口,或者USB 4接口,或者由USB实现者论坛标准化并且向后兼容这里提到的接口的任何其他接口。
使用常见的串行接口,比如不同版本的USB接口,可以使得可使用的现有连接器和/或接口的种类更多,和/或带来使用已经存在的接口的益处,这可降低复杂性和/或成本。
在优选实施例中(参见例如权利要求24),串行接口是Thunderbolt,或者以太网,或者IEEE-1394,IEEE-1500,IEEE-1687,IEEE-1149,例如IEEE-1149.10接口,或者SATA接口,这可以是例如SATA接口,或者快速SATA接口,或者eSATA接口,或者微型SATA接口,或者向后兼容这些接口的任何其他接口。此外,串行或第二接口可以是第一接口的一部分。
一般而言,例如,串行接口,像任何其他HSIO接口一样,适合于单向和/或双向的数据交换,这也可包括专门的调试和测试接口。
使用常见的串行接口,比如Thunderbolt、以太网、SATA/eSATA或IEEE-1394、IEEE-1500、IEEE-1687、IEEE-1149接口,可以使得可使用的现有连接器和/或接口的种类更多,和/或带来使用已经存在的接口的益处,这可降低复杂性和/或成本。
在优选实施例中(参见例如权利要求25),ATE被配置成使得共享存储器可被多个DUT访问。在多个DUT之间共享存储器可以降低成本和/或在DUT被并行测试的情况下使用的存储器和/或测试控制器的数目。取决于期望的测试目标,每个DUT可访问完整的共享存储器或者只访问受限区域。
在优选实施例中(参见例如权利要求26),ATE包括多个接口,例如,主机接口客户端,它们耦合到共享存储器,以允许多个DUT访问共享存储器。
耦合到共享存储器的多个接口允许了多个DUT对共享存储器的访问。在多个DUT之间共享存储器可以降低成本和/或在几个DUT被并行测试的情况下使用的存储器和/或测试控制器的数目。
根据实施例(参见例如权利要求27),测试控制器被配置为选择共享存储器的哪个部分或哪个存储器范围当前可被DUT访问。测试控制器最终可被配置为在要执行新的测试案例程序时改变该选择。测试控制器可被配置为选择共享存储器的(一个或多个)部分,例如(一个或多个)存储器范围,并且将其分配给多个DUT。
动态地分配共享存储器的存储器范围可导致一种自适应测试过程,从而带来存储器开销的减小。测试可以更高效地利用存储器,从而降低了存储器耗尽的风险,例如,在并行测试DUT时。
根据实施例(参见例如权利要求28),测试控制器被配置为在测试运行期间改变共享存储器的部分向给定DUT的分配,从而使得,在测试运行的第一部分期间,共享存储器的第一部分被分配给给定的DUT,并且使得,在测试运行的第二部分期间,共享存储器的第二部分被分配给该给定的DUT。
将共享存储器的不同存储器范围分配给不同的测试过程可以导致以这样一种方式来分离测试过程:使得不同的测试案例和/或不同测试案例的数据/来自不同测试案例的数据不能与彼此交互。
根据实施例(参见例如权利要求29),ATE被配置为修改共享存储器的当前未使用部分,以设置新的测试案例程序,同时DUT访问共享存储器的另一部分。
设置新的测试案例以便使用共享存储器的未使用存储器范围可能会导致测试过程的加速。将所有可用的存储器用于测试目的使得测试过程的时间效率和/或存储器效率更高。
根据实施例(参见例如权利要求30),ATE被配置为从共享存储器中读出由DUT存储在共享存储器中的数据,同时DUT访问共享存储器的另一部分。
由于测试案例是相互分离的,也就是说为不同的测试案例使用共享存储器的单独的存储器部分,因此可以执行读出以前的测试结果并进行评估,而其他测试正在DUT上运行,也就是DUT正从共享存储器的其他部分/在共享存储器的其他部分上读取/写入数据。
根据实施例(参见例如权利要求31),ATE被配置为分析由DUT存储在共享存储器中的数据,以便获得测试结果,例如合格/不合格信息或者关于DUT的性能的定量信息。
测试数据可以被ATE进行分析,以便获得测试结果,定性和/或定量的信息,这可能是关于DUT的合格/不合格信息和/或测量。根据(一个或多个)测试结果,可以确定DUT的质量。
根据本发明的进一步实施例创造了各自的方法。
然而,应当注意,这些方法是基于与相应装置相同的考虑的。此外,这些方法可以由本文关于装置描述的关于功能和细节的任何特征、功能和细节来补充,既可以单独的方式进行,也可以组合的方式进行。
附图说明
在下文中,参考附图来更详细描述本公开的实施例,附图中:
图1示出了测试布置的示意图,它包括ATE和具有处理单元(PU)、存储器、第一接口和第二接口的DUT的实施例;
图2示出了测试布置的示意图,它包括DUT和ATE的实施例,该ATE具有第一接口、测试控制器和可由测试控制器和DUT访问的存储器;
图3示出了典型SOC的示意图;
图4示出了传统测试布置的示意图,其具有ATE和DUT,有示范性的DUT PU存储器映射图;
图5示出了传统测试布置的示意图,其具有带共享存储器的ATE和DUT,有示范性的DUT PU存储器映射图,包括共享存储器;并且
图6示出了用于经由第一接口将程序上传到DUT以便配置DUT来加载额外的数据和/或程序代码的方法的流程图。
具体实施方式
在下文中,将描述不同的创造性实施例和方面。另外,进一步的实施例将由所附权利要求来定义。
应当注意,由权利要求定义的任何实施例都可由本文描述的任何细节(特征和功能)来补充。另外,本文描述的实施例可被单独使用,也可以可选地由权利要求中包括的任何细节(特征和功能)来补充。另外,应当注意,本文描述的个体方面可被单独使用或者组合使用。从而,可将细节添加到所述个体方面中的每一者,而不将细节添加到所述方面中的另一者。还应当注意,本公开明确或隐含地描述了可用于ATE中的特征。从而,本文描述的任何特征都可被用在ATE的情境中。
此外,本文公开的与方法有关的特征和功能也可被用于(被配置为执行这种功能)的装置中。此外,本文关于装置公开的任何特征和功能也可被用于相应的方法中。换言之,本文公开的方法可由关于装置描述的任何特征和功能来补充。
通过以下给出的详细描述并且通过本发明的实施例的附图将更充分理解本发明,然而详细描述和附图不应当被理解为将本发明限制到所描述的特定实施例,而只是用于说明和理解的。
根据图1的测试布置
图1示出了测试布置100的示意图,它包括ATE 110和DUT 120的实施例。
DUT 120还包括处理单元130、存储器140、第一接口150和第二接口160,该第二接口160包括比第一接口150更高的数据速率。例如,处理单元、存储器、第一接口和第二接口可以经由一个或多个总线或互连结构进行耦合。第一接口150和第二接口160都连接到ATE110。ATE 110包括要被上传到DUT 120上的程序170。
ATE 110被配置为使用第一接口150将程序170上传到DUT 120,其中第一接口150可以可选地允许双向通信。例如,ATE可能可以通过第一接口150读出DUT状态信息和/或DUT值和进一步的信息。
经由第一接口150上传的程序170被配置为对DUT 120进行配置以开启和/或配置第二接口160以进行额外的通信190。第二接口160被配置为以高于或远高于第一接口150的数据速率运行,第一接口150例如是慢速接口和/或调试接口。
ATE 110从配置的第二接口160受益,因为ATE 110和DUT 120之间的任何额外通信190要比通过第一接口150快得多。这意味着发送和/或接收程序代码和/或测试数据被加速了,和/或测试过程本身被加速了。另外,还可以使用第二接口来扩展DUT 120的存储器。
根据图2的测试布置
图2示出了测试装布置200的示意图,它包括与图1的ATE 110类似的ATE 210和与图1的DUT 120类似的DUT 220的实施例。
ATE 210包括测试控制器230、共享存储器240和第一接口250。此外,ATE 210经由第一接口250连接到DUT 220。第一接口250不一定是单向的,它也可以可选地允许双向通信。ATE 210的共享存储器240连接到测试控制器230,并且连接到DUT 220,例如经由第二接口。
ATE 210被配置为通过第一接口250向DUT 220发送测试数据260。DUT 220能够访问共享存储器240,例如经由第二接口,该第二接口具有比第一接口250更高的数据速率。共享存储器240也可由ATE 210的测试控制器230访问。
如图1所描述,ATE 110被配置为上传程序170,以便配置DUT 120的快速第二接口160。
因此,ATE 210的共享存储器240可由测试控制器230访问和由DUT220通过DUT 220的快速第二接口访问。DUT 220和测试控制器230都能够将数据写入到共享存储器240和/或从共享存储器240读取数据,而ATE 210也能够经由第一接口250将测试数据260发送到DUT220,以例如控制测试执行。
使用ATE 210的共享存储器240扩展了DUT 220的存储器,并且消除了在ATE 210和DUT 220之间发送/接收数据的需要。数据转而被拷贝到共享存储器240上/被从共享存储器240读出。
根据图3的DUT
图3示出了要被测试的典型DUT 300,例如图1的测试布置100中的DUT。DUT 300或SOC设计的典型构建块是由系统总线320连接的处理单元、计算机基础设施、外围逻辑和其他定制IP块360。
典型的处理单元例如是处理单元310、协处理器313、或者数字信号处理器(digital signal processor,DSP)316,等等。
典型的计算机基础设施例如是第2级缓存(L2缓存)330、SRAM 333、NVRAM 336、BOOT ROM 339,等等。
典型的外围设备例如是存储器接口340、闪存接口343、调试DfT接口349、主机接口346,比如PCIe、USB,等等。
通常,在生产测试阶段中,这些SOC芯片所针对设计的系统还没有完成。像外部存储器或大容量存储装置340、功率管理等等组件只是部分可用的,因为这样的组件可能在以后的阶段被添加,例如在包装或组装在应用板中期间被添加。
在功能测试期间,SOC设计的主机接口通常在任务和/或操作模式中被操作。
在晶圆级的处理单元310上要执行的程序代码的存储是非常有限的,例如限于芯片上的存储器资源,比如小型存储器组333或336和可能被重配置来充当存储器的缓存存储器330。
与图1的ATE类似的ATE 110被配置为通过调试DfT接口349上传程序。上传的程序被配置为通过主机接口346,例如通过PCIe或USB接口,来开启和/或设置DUT 300和ATE之间的连接,这允许了ATE和DUT之间的快速连接。
根据图4的传统测试布置
图4示出了示范性的传统测试布置400。这个测试布置包括与图3所示的DUT 300类似的DUT 420,以及与图1的ATE类似的ATE 410,该ATE具有测试控制器430。ATE 410的测试控制器430经由其调试DfT接口440连接到DUT 420。
图4还示出了示范性的处理单元存储器映射图450。处理单元存储器映射图450包括处理单元460的地址,例如,协处理器、DSP和/或定制IP块的地址,以及存储器单元470的地址,例如,L2缓存、NVRAM、BOOTRAM、SRAM的地址,以及不可用的闪存和/或存储器或大容量存储装置的地址。存储器单元470被L2缓存覆盖。
在传统的解决方案中,ATE 410的测试控制器430经由调试DfT接口440在DUT 420上上传和/或从DUT 420下载程序代码和/或测试数据。程序代码和/或测试数据需要符合存储器大小限制。
在一些解决方案中,也可以通过将L2缓存改变用途作为RAM来扩展RAM大小。
传统解决方案的局限性是DUT 420的较小的RAM大小,以及ATE 410的测试控制器430和DUT 420之间经由调试DfT接口440的相对较慢的上传和/或下载速度。
在传统的测试期间,SOC设计的主机接口通常在任务和/或操作模式中操作,但与本发明的测试布置不同的是,没有任何东西附接到该主机接口。因此,在传统的测试布置中,该主机接口也可以被禁用,因为除了用测试设计(DfT)构建块或方法外,不能以其他方式测试操作行为。传统的测试布置和本发明的测试布置之间的关键区别之一是,在本发明的测试布置中,ATE通过主机接口连接到DUT,并且ATE还通过ATE和DUT之间经由主机接口的信息交换来测试主机接口。
此外,传统的解决方案没有提供本发明所显示的即时外部分析和监视能力。
根据图5的测试布置
图5示出了示范性测试布置500。测试布置500包括与图1的ATE 110类似的ATE 510和与图3中所示的DUT 300类似的DUT 520的实施例。ATE 510包括测试控制器536和ATE处理单元533、主机接口客户端549以及使用地址虚拟化546的共享存储器543。共享存储器可由测试控制器536访问并可由DUT 520通过主机接口客户端549(例如PCIe或USB)访问。ATE510的主机接口客户端549连接到DUT的主机接口523。通常,该接口例如是串行接口,它是可以容忍时延的。
图5还示出了示范性存储器映射图550。该存储器映射图包括处理单元553的地址,例如,协处理器、DSP和/或其他定制IP块的地址。该存储器映射图还包括存储器单元556的地址,例如SRAM、BOOT ROM、NVRAM、L2缓存529、不可用的大容量存储装置和/或闪存接口的地址,以及共享存储器的地址。所有的存储单元556都可以被L2缓存529所覆盖。
ATE 510的ATE处理单元533和/或测试控制器536被配置为经由调试DfT接口526向DUT 520上传程序。上传到DUT 520的程序被配置为初始化DUT,初始化和配置高速接口,将ATE 510设置为链路伙伴,初始化和/或配置共享存储器543,以及初始化和/或配置由L2缓存529对共享存储器的缓存。然后,测试控制器536选择某个测试案例并且配置共享存储器543的地址虚拟化546。测试控制器536还被配置为使得DUT 520经由调试DfT接口526运行存储在共享存储器543上的测试案例。在DUT 520运行测试案例期间,测试控制器536可以分析先前测试的结果,监视当前测试的执行,选择下一个测试案例和/或运行新的测试案例,如果例如DUT 520的处理单元具有例如多于一个核心的话。
换句话说,ATE 510的测试控制器536和/或ATE处理单元533被配置为向DUT 520上传程序,以便配置DUT 520经由更快的第二主机接口523访问共享存储器543。测试控制器536和/或ATE处理单元533还被配置为配置共享存储器543的地址虚拟化546,并且通过在调试DfT 526和/或主机接口549、523上发送程序代码和/或测试数据来使得DUT 520在共享存储器543上运行所选的测试案例。
对于DUT执行测试,ATE侧的虚拟化是没有必要的。DUT也可以在“大存储器湖”上操作,但从本发明的高效ATE的角度来看,测试案例的隔离和/或在ATE侧并行执行准备和/或DUT执行和/或结果分析的能力使得ATE的吞吐量能够更高。
换句话说,本发明的ATE被配置为遵循以下步骤。
1.调试访问端口(Debug Access Port,DAP)或调试DfT接口526被用于在重置之后将DUT 520保持在保持状态中。
2.DAP 526被测试控制器536和/或ATE处理单元533用来将小型测试可执行程序加载到DUT 520中并且运行它,以便
a.初始化DUT数字半导体芯片和/或处理单元;
b.初始化和配置HSIO或主机接口,例如PCIe接口,并且在ATE系统510中设置组件作为链路伙伴,以提供数字半导体系统存储器和/或处理单元存储器的某个存储器范围;
c.初始化“HSIO存储器”,以便例如也由L2缓存529缓存,或者例如由处理单元缓存。
3.测试控制器536被配置为选择某个测试案例,例如3号案例。
4.无效和/或重置L2缓存,例如,由处理单元进行。
5.经由DAP:对“HSIO存储器”中的测试案例的起始地址进行调用,例如,由处理单元进行。
6.测试案例执行,并且将结果也写入到“HSIO存储器”中,例如由处理单元进行。
7.程序流程返回到“调试控制”,这意味着处理单元等待DAP。
8.如果有更多的案例可用,则测试控制器可选择下一个测试案例,并且进入第4项,和/或跳回到和/或执行此列表中的从步骤4起的步骤。
9.在后台,对已经完成的测试案例的结果分析可以开始。此外,可以监视当前测试案例的执行。如果需要,可以准备和/或刷新下一个装置的存储器镜像。这要求在ATE控制器硬件中和/或所有ATE处理单元中实现双端口存储器。
10.被用作第二接口或者用作访问ATE侧的共享存储器的接口的HSIO接口在操作模式中被彻底测试,操作行为可以被诊断,并且意外的操作状态可以被分析。
根据图6的方法
图6示出了根据本发明的实施例的方法的流程图600。该方法包括经由第一接口610将程序上传到DUT,类似于图3的DUT 300。该方法还包括这样步骤,即,上传的程序经由第二接口620配置DUT以加载额外的程序代码和/或数据。
此方法是基于与上述实施例相同的考虑的。而且,这些方法可以由本文描述的任何特征、功能和细节来补充。
例如,上述方法可以可选地由关于图5描述的任何特征/功能/细节来补充,包括单独地或组合地补充。
本发明的益处
与传统的解决方案相比,本发明的ATE可具有以下益处:
·许多已知的基于HSIO的数据总线提供了存储器映射的使用模型。PCI ExpressTM是这里最突出的示例:扩展装置宣布它希望如此或者提供某个存储器和/或I/O区域。处理单元的操作环境中的资源管理器找到匹配的空闲空间,并且为或者向该资源指派适当的起始地址。该资源(背后)是什么,例如是真正的存储器还是控制寄存器,是取决于实现方式的。此方法例如可用于但不限于PCI ExpressTM
·例如,PCI ExpressTM卡作为存储器扩展器并且因此作为程序代码和/或数据的来源的使用并不是实际已知的,尤其对于测试目的(在测试目的中)不是已知的。
·对许多HSIO接口的实际观察是,它们被用来控制外围装置,通过存储器映射控制寄存器和/或也通过(到)计算机系统的全局存储器映射图中的数据区域。
·这些数据区域被用作计算机系统的处理单元执行的计算机代码的来源,也就是作为处理单元存储器扩展。测试案例代码显示在处理单元存储器中的特定地址处。通过跳转到该地址或对该地址进行调用,执行开始,这可以由测试控制器发起。
·处理单元缓存可以按这样一种方式被配置:即,存储器的这种扩展被接受为正常的系统存储器。也就是说,将会需要对缓存的存储器范围进行相应的编程,这是正常的用例。这意味着,不需要特殊的DfT。
·在任务模式中运行数字半导体设计的测试,目的是识别故障,例如在各种包含的IP块之间的通信中的故障。也就是说,测试生成了从一个IP到其他IP的数据“流量”。一个关键的测试项目常常是在任务模式中的HSIO总线(例如,快速PCI和USB,但不限于这些)的使用。这些接口的操作对被测设计中的跨时钟域的流量提出了挑战。像这样针对稳定性对HSIO接口进行测试是所描述的发明的副产物。
·现在,许多也是更大的和/或更现实的测试案例是可能的。
·不需要额外的下载和/或拷贝时间开销。在执行时间期间经由HSIO总线进行下载。运行时间性能由L2缓存得到保证和/或改善。
·测试控制器也可以管理多个测试案例,并且让DUT“逐步通过”。
·测试案例的执行可以由ATE同时监视和分析。
进一步的一般改进
可以通过向本发明添加安全性特征来进一步改进本发明,这些安全性特征可包括以下特征:
○针对第一接口和/或第二接口对ATE和/或测试器进行认证:
ATE和/或测试器可能被要求使用例如密码手段和/或秘密凭证来针对第一接口和/或第二接口进行自我认证,以证明其身份,该身份例如是建立通信所要求的。
○针对第一接口和/或第二接口对ATE和/或测试器进行授权:
ATE和/或测试器可能被要求使用例如密码手段和/或秘密凭证来针对第一接口或第二接口对自身进行授权,以获得装置上的权限,以例如访问否则受限的功能。
○对DUT与ATE和/或测试器之间的通信进行完好性检查:
可以使用标准和/或专有的数据完好性检查方法,例如散列,来保护DUT与ATE和/或测试器和/或ATE的第一接口和/或第二接口之间的通信以防止修改。
○对DUT与ATE和/或测试器之间的通信的加密:
可以使用标准加密方案和/或专有加密方法对DUT与ATE和/
或测试器和/或ATE的(一个或多个)接口之间的通信进行加密。
可以通过向本发明添加压缩特征来进一步改进本发明,这些压缩特征可包括以下特征:
○对DUT与ATE和/或测试器之间的通信的压缩:
可以使用标准或专有的、有损或无损的紧凑化手段对DUT与ATE和/或测试器或ATE的主要和/或次要接口之间的通信进行压缩,其中ATE和/或测试器压缩数据以发送至装置,由装置进行解压缩,和/或装置压缩发送的数据或压缩数据以发送至测试器和/或测试器对数据进行解压缩。
DUT和ATE之间的通信的压缩也可能要求:
■所要求的紧凑化和/或解紧凑化方法可以或可能作为程序代码的一部分被使用第一接口和/或第二接口上传到DUT。
实现方式替换
虽然已在装置的上下文中描述了一些方面,但要清楚,这些方面也表示对相应方法的描述,其中块或设备对应于方法步骤或者方法步骤的特征。类似地,在方法步骤的上下文中描述的方面也表示对相应装置的相应块或项目或特征的描述。
取决于某些实现要求,本发明的实施例可以用硬件或者用软件来实现。该实现方式可利用数字存储介质来执行,例如软盘、DVD、CD、ROM、PROM、EPROM、EEPROM或者闪速存储器,其上存储有电子可读控制信号,这些信号与可编程计算机系统合作(或者能够合作),使得相应的方法被执行。
根据本发明的一些实施例包括一种具有电子可读控制信号的数据载体,所述信号能够与可编程计算机系统合作,以使得本文描述的方法之一被执行。
一般而言,本发明的实施例可被实现为具有程序代码的计算机程序产品,该程序代码在当计算机程序产品在计算机上运行时进行运作来执行方法之一。程序代码可例如被存储在机器可读载体上。
其他实施例包括存储在机器可读载体上的用于执行本文描述的方法之一的计算机程序。
换言之,发明方法的一个实施例因此是一种具有程序代码的计算机程序,该程序代码用于在当计算机程序在计算机上运行时执行本文描述的方法之一。
发明方法的另一实施例因此是一种数据载体(或者数字存储介质,或者计算机可读介质),包括记录在其上的计算机程序,用于执行本文描述的方法之一。该数据载体、数字存储介质或者记录的介质通常是有形的和/或非暂态的。
发明方法的另一实施例因此是一种表示用于执行本文描述的方法之一的计算机程序的数据流或信号的序列。该数据流或者信号的序列可例如被配置为经由数据通信连接来传送,例如经由互联网来传送。
另一实施例包括一种处理装置,例如计算机,或者可编程逻辑器件,其被配置为或者适配为执行本文描述的方法之一。
另一实施例包括一种计算机,其上安装有用于执行本文描述的方法之一的计算机程序。
根据本发明的另一实施例包括一种装置或系统,其被配置为向接收器(例如,电子地或者光学地)传送用于执行本文描述的方法之一的计算机程序。接收器可例如是计算机、移动装置、存储器装置之类的。该装置或系统可例如包括文件服务器,用于向接收器传送计算机程序。
在一些实施例中,可编程逻辑器件(例如现场可编程门阵列)可用于执行本文描述的方法的一些或全部功能。在一些实施例中,现场可编程门阵列可与微处理器合作以便执行本文描述的方法之一。一般而言,方法优选由任何硬件装置执行。
本文描述的装置可利用硬件装置来实现,或者利用计算机来实现,或者利用硬件装置和计算机的组合来实现。
本文描述的装置或者本文描述的装置的任何组件可至少部分用硬件和/或用软件来实现。
本文描述的方法可利用硬件装置来执行,或者利用计算机来执行,或者利用硬件装置和计算机的组合来执行。

Claims (33)

1.一种自动化测试设备(110,210,410,510),用于测试被测装置(120,220,300,420,520),所述被测装置包括处理单元(130,310,313,316)和程序和/或数据存储器(140,330,333,336),
其中,所述自动化测试设备被配置为利用第一接口(150,250,349,440,526)将程序上传到所述被测装置,
其中,经由所述第一接口上传到所述被测装置的所述程序(170)对所述被测装置进行配置以开启以更高数据速率运行的第二接口(160,346,523)以便进行额外通信(190)。
2.根据权利要求1所述的自动化测试设备,
其中,经由所述第一接口上传到所述被测装置的所述程序用于:
对所述被测装置进行配置以经由第二接口加载额外的程序代码(170)和/或数据(170),以由所述被测装置执行,所述第二接口包括比所述第一接口更高的数据速率;和/或
控制一个或多个程序的执行;和/或
将所述被测装置的寄存器(450,550)设置到期望的值;和/或
配置所述被测装置的存储器访问(470,556)。
3.根据权利要求1或权利要求2所述的自动化测试设备,
其中,经由所述第一接口上传到所述被测装置的所述程序对所述被测装置进行配置以利用存储器映射(450,550)访问所述第二接口。
4.根据权利要求1至3之一所述的自动化测试设备,
其中,经由所述第一接口上传到所述被测装置的所述程序对所述被测装置的资源管理器进行配置,以分配所述被测装置的处理单元可寻址的存储器范围的存储器子范围(470,556)来用于访问所述第二接口。
5.根据权利要求1至4之一所述的自动化测试设备,
其中,上传到所述装置的所述程序作为客户端或者作为主机与所述自动化测试设备通信,利用应用协议来与其对应方交换数据。
6.根据权利要求1至5之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为针对所述第一接口和/或第二接口认证和/或授权其自身。
7.根据权利要求1至6之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为以加密方式和/或以进行保护以防止修改的方式与所述被测装置进行通信。
8.根据权利要求1至7之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为以压缩方式通过使用紧凑化手段与所述被测装置进行通信,其中,所述自动测试设备被配置为压缩要发送到所述被测装置的数据以及对从所述被测装置接收的数据进行解压缩。
9.根据权利要求8所述的自动化测试设备,
其中,经由所述第一接口和/或第二接口上传到所述被测装置的所述程序包括用于执行紧凑化和/或解紧凑化方法以执行所述压缩和/或解压缩的程序代码。
10.根据权利要求1至9之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为使得所述被测装置的处理单元执行测试案例代码,所述测试案例代码被存储在所述自动化测试设备的共享存储器中并且经由所述第二接口被加载到所述被测装置。
11.根据权利要求1至10之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为在所述被测装置执行测试案例代码之前引起缓存(330,529)或者缓存区域的无效,所述测试案例代码被存储在所述自动化测试设备的共享存储器中并且经由所述第二接口被加载到所述被测装置。
12.根据权利要求1至11之一所述的自动化测试设备,
其中,利用所述第一接口上传到所述被测装置的所述程序用于:
初始化所述被测装置的处理单元,
初始化所述被测装置的第二接口,并且
对所述被测装置的第二接口进行配置,以连接到所述自动化测试设备的存储器(240,543)并且提供所述自动化测试设备的存储器的存储器范围(240,543,546)作为所述被测装置的处理单元可使用的存储器范围。
13.根据权利要求12所述的自动化测试设备,
其中,利用所述第一接口上传到所述被测装置的所述程序对所述自动化测试设备的存储器的存储器范围被映射到的存储器范围进行初始化,以由所述被测装置的缓存来进行缓存。
14.根据权利要求12或13所述的自动化测试设备,
其中,利用所述第一接口上传到所述被测装置的所述程序对所述自动化测试设备的存储器的存储器范围被映射到的存储器范围进行初始化,以使得由所述第二接口提供的扩展存储器(240,543,546)被作为正常的系统存储器而呈现给所述被测装置的处理单元,只是访问时间可能较慢。
15.根据权利要求1至14之一所述的自动化测试设备,
其中,利用所述第一接口上传到所述被测装置的所述程序使得所述被测装置经由所述第二接口将程序执行的结果传送到所述自动化测试设备。
16.根据权利要求15所述的自动化测试设备,
其中,所述自动化测试设备被配置为基于经由所述第二接口存储在所述自动化测试设备的存储器(240,543,546)中的结果来执行数据分析,和/或
其中,所述自动化测试设备被配置为基于经由所述第二接口存储在所述自动化测试设备的存储器中的结果来执行对所述被测装置的表征;和/或
其中,所述自动化测试设备被配置为评估经由所述第二接口对所述自动化测试设备的存储器的数据访问模式;和/或
其中,所述自动化测试设备被配置为分析经由所述第二接口从所述被测装置接收的信息,以便表征所述被测装置。
17.根据权利要求1至16之一所述的自动化测试设备,其中,所述自动化测试设备被配置为使得所述被测装置按顺序或者并行地执行多个测试案例程序,所述多个测试案例程序被存储在所述自动化测试设备的存储器的不同存储器范围中并且被所述被测装置经由所述第二接口来访问。
18.根据权利要求1至17之一所述的自动化测试设备,
其中,经由所述第一接口上传到所述被测装置的所述程序对所述被测装置进行配置以在给定测试案例程序的执行期间经由所述第二接口加载所述给定测试案例程序的程序代码和/或数据。
19.根据权利要求1至18之一所述的自动化测试设备,
其中,所述自动化测试设备包括测试控制器(230,430,536);
其中,所述自动化测试设备包括所述第一接口来向所述被测装置提供测试数据(260);并且
其中,所述自动化测试设备包括共享存储器(240,543),该共享存储器能被所述测试控制器访问并且能被所述被测装置访问。
20.一种用于测试被测装置的自动化测试设备,
其中,所述自动化测试设备包括测试控制器;
其中,所述自动化测试设备包括第一接口来向所述被测装置提供测试数据;并且
其中,所述自动化测试设备包括共享存储器,该共享存储器能被所述测试控制器访问并且能被所述被测装置访问。
21.根据权利要求19或权利要求20所述的自动化测试设备,
其中,所述自动化测试设备包括串行接口(549),该串行接口被配置为允许所述被测装置对所述共享存储器的访问。
22.根据权利要求21所述的自动化测试设备,
其中,所述串行接口是快速PCI接口或快速PCI遵从接口。
23.根据权利要求21所述的自动化测试设备,其中,所述串行接口是通用串行总线(USB)接口。
24.根据权利要求21所述的自动化测试设备,
其中,所述串行接口是Thunderbolt接口或以太网接口或IEEE-1394接口或SATA接口,或者其中,所述串行接口是IEEE-1149接口,或者其中,所述串行接口是IEEE-1500接口,或者其中,所述串行接口是IEEE-1687接口,或者其中,所述串行接口可以是所述第一接口的一部分。
25.根据权利要求19至24之一所述的自动化测试设备,
其中,所述自动化测试设备被配置成使得所述共享存储器能被多个被测装置访问。
26.根据权利要求25所述的自动化测试设备,
其中,所述自动化测试设备包括与所述共享存储器耦合的多个接口,以允许多个被测装置对所述共享存储器的访问。
27.根据权利要求19至26之一所述的自动化测试设备,
其中,所述测试控制器被配置为选择所述共享存储器(240,543)的哪个部分(546)能被所述被测装置访问;或者
其中,所述测试控制器被配置为选择所述共享存储器的部分(543,546)向多个被测装置的分配。
28.根据权利要求19至27之一所述的自动化测试设备,
其中,所述测试控制器被配置为在测试运行期间改变所述共享存储器的部分向给定被测装置的分配,
以使得所述共享存储器的第一部分在所述测试运行的第一部分期间被分配给给定被测装置,并且
使得所述共享存储器的第二部分在所述测试运行的第二部分期间被分配给所述给定被测装置。
29.根据权利要求19至28之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为修改所述共享存储器的当前未使用部分,以设置新的测试案例程序,同时所述被测装置访问所述共享存储器的另一部分。
30.根据权利要求29至29之一所述的自动化测试设备,
其中,所述自动化测试设备被配置为从所述共享存储器中读出由所述被测装置存储在所述共享存储器中的数据,同时所述被测装置访问所述共享存储器的另一部分。
31.根据权利要求30所述的自动化测试设备,
其中,所述自动化测试设备被配置为分析由所述被测装置存储在所述共享存储器中的数据,以便获得测试结果。
32.一种用于测试被测装置的方法(600),所述被测装置包括处理单元和程序和/或数据存储器,
其中,所述方法包括利用第一接口将程序上传(610)到所述被测装置,
其中,经由所述第一接口上传到所述被测装置的所述程序对所述被测装置进行配置(620)以经由第二接口加载额外的程序代码和/或数据,以由所述被测装置执行,所述第二接口包括比所述第一接口更高的数据速率。
33.一种计算机程序,用于在所述计算机程序在计算机上运行时执行如权利要求32所述的方法。
CN201980098856.8A 2019-08-06 2019-08-06 用于测试包括处理单元和程序和/或数据存储器的被测装置的自动化测试设备和包括测试控制器、与被测装置的一个或多个接口、共享存储器的自动化测试设备以及用于测试被测装置的方法 Pending CN114190101A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2019/071086 WO2021023372A1 (en) 2019-08-06 2019-08-06 An automated test equipment for testing a device under test which comprises a processing unit and a program and/or data memory, an automated test equipment which comprises a test controller, one or more interfaces to the device under test, a shared memory and a method for testing a device under test

Publications (1)

Publication Number Publication Date
CN114190101A true CN114190101A (zh) 2022-03-15

Family

ID=67620423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980098856.8A Pending CN114190101A (zh) 2019-08-06 2019-08-06 用于测试包括处理单元和程序和/或数据存储器的被测装置的自动化测试设备和包括测试控制器、与被测装置的一个或多个接口、共享存储器的自动化测试设备以及用于测试被测装置的方法

Country Status (7)

Country Link
US (1) US20220157399A1 (zh)
JP (1) JP7317209B2 (zh)
KR (1) KR20220044272A (zh)
CN (1) CN114190101A (zh)
DE (1) DE112019007610T5 (zh)
TW (1) TWI785322B (zh)
WO (1) WO2021023372A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11899550B2 (en) * 2020-03-31 2024-02-13 Advantest Corporation Enhanced auxiliary memory mapped interface test systems and methods
WO2023078571A1 (en) * 2021-11-08 2023-05-11 Advantest Corporation Automated test equipment, device under test, test setup methods using an acknowledge signaling
CN115391252A (zh) 2021-12-08 2022-11-25 威锋电子股份有限公司 Usb集成电路、测试平台及usb集成电路的操作方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000148527A (ja) 1998-11-17 2000-05-30 Meidensha Corp 処理制御装置
JP2001051863A (ja) 1999-08-09 2001-02-23 Fujitsu Ltd マイクロプロセッサ
US6424926B1 (en) * 2000-03-31 2002-07-23 Intel Corporation Bus signature analyzer and behavioral functional test method
KR100886928B1 (ko) 2001-03-19 2009-03-09 가부시키가이샤 히타치세이사쿠쇼 반도체장치 및 그 테스트방법
US7385927B2 (en) 2002-06-24 2008-06-10 Lsi Logic Corporation Methods and structure for improved testing of embedded systems
US6975954B2 (en) * 2003-06-24 2005-12-13 Intel Corporation Functional testing of logic circuits that use high-speed links
EP1505491A3 (en) 2003-08-06 2005-03-02 Agilent Technologies Inc Sequencer unit with instruction buffering
US6958616B1 (en) * 2003-11-07 2005-10-25 Xilinx, Inc. Hybrid interface apparatus for testing integrated circuits having both low-speed and high-speed input/output pins
US7596730B2 (en) * 2006-03-31 2009-09-29 Advantest Corporation Test method, test system and assist board
US7486205B2 (en) * 2006-11-28 2009-02-03 Samplify Systems, Inc. Compression and decompression of stimulus and response waveforms in automated test systems
WO2008093312A1 (en) * 2007-01-30 2008-08-07 University Of Limerick On-chip testing
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
US8473792B2 (en) * 2011-01-06 2013-06-25 Lsi Corporation Logic BIST for system testing using stored patterns
US8522189B2 (en) * 2011-03-09 2013-08-27 Intel Corporation Functional fabric based test access mechanism for SoCs
WO2013060361A1 (en) * 2011-10-25 2013-05-02 Advantest (Singapore) Pte. Ltd. Automatic test equipment
US9959186B2 (en) * 2012-11-19 2018-05-01 Teradyne, Inc. Debugging in a semiconductor device test environment
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
US20140237292A1 (en) * 2013-02-21 2014-08-21 Advantest Corporation Gui implementations on central controller computer system for supporting protocol independent device testing
US8583973B1 (en) * 2013-02-22 2013-11-12 Lsi Corporation Stored-pattern logic self-testing with serial communication
US9864007B2 (en) * 2014-04-30 2018-01-09 Duke University Software-based self-test and diagnosis using on-chip memory
CN109564539B (zh) * 2016-08-03 2024-03-15 英特尔公司 远程调试与管理
US10184983B2 (en) * 2017-06-02 2019-01-22 Intel IP Corporation Interface independent test boot method and apparatus using automatic test equipment
US10859627B2 (en) * 2017-06-29 2020-12-08 Intel Corporation In-field system testing
US10914784B2 (en) * 2018-07-27 2021-02-09 Advantest Corporation Method and apparatus for providing UFS terminated and unterminated pulse width modulation support using dual channels
US20220121542A1 (en) * 2020-10-20 2022-04-21 Nvidia Corporation Techniques for testing semiconductor devices
US11480613B2 (en) * 2020-12-18 2022-10-25 Arm Limited Method and/or system for testing devices in non-secured environment

Also Published As

Publication number Publication date
KR20220044272A (ko) 2022-04-07
JP2022543294A (ja) 2022-10-11
DE112019007610T5 (de) 2022-04-21
TWI785322B (zh) 2022-12-01
JP7317209B2 (ja) 2023-07-28
US20220157399A1 (en) 2022-05-19
WO2021023372A1 (en) 2021-02-11
TW202107283A (zh) 2021-02-16

Similar Documents

Publication Publication Date Title
US20220157399A1 (en) Automated test equipment comprising a pluarlity of communication interfaces to a device under test
US11009550B2 (en) Test architecture with an FPGA based test board to simulate a DUT or end-point
US11385285B2 (en) Automated test equipment using an on-chip-system test controller
US10976361B2 (en) Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
KR102000957B1 (ko) 프로그램가능한 테스트 기기
US9810729B2 (en) Tester with acceleration for packet building within a FPGA block
KR101993504B1 (ko) Fpga 블록 내의 자동 패턴 생성을 위한 가속 및 메모리 상의 가속을 갖는 시험기
KR102043487B1 (ko) 독립적으로 다수의 dut를 시험하기 위한 다수의 fpga 기반 하드웨어 가속기 블록을 갖는 시험 아키텍처
US8170828B2 (en) Test method using memory programmed with tests and protocol to communicate between device under test and tester
US7155370B2 (en) Reusable, built-in self-test methodology for computer systems
KR20190107183A (ko) 프로토콜 디버그를 위해 실패에 대해 트래픽을 실시간으로 캡처하는 기법
US20210117298A1 (en) Use of host bus adapter to provide protocol flexibility in automated test equipment
US20100313092A1 (en) Technique for initializing data and instructions for core functional pattern generation in multi-core processor
US20170205462A1 (en) Power-on self-test and in-system test
CN111145826B (zh) 一种存储器内建自测试方法、电路及计算机存储介质
CN115454751A (zh) 一种fpga芯片的测试方法、装置和计算机可读存储介质
CN114201360B (zh) 一种aer功能管理方法、装置、服务器和存储介质
CN111124768A (zh) 通过高速接口访问高容量测试数据的方法和装置
KR101963811B1 (ko) 명령어 기반의 보스트 회로 장치
US20010023490A1 (en) Method for activating a JTAG interface of a microprocessor of a microcontroller upon which a JTAG interface is implemented, and microcontroller
CN117234831B (zh) 一种基于多核cpu的芯片功能测试方法及系统
US11430536B2 (en) Software-focused solution for arbitrary all-data odd sector size support
RU2392657C2 (ru) Автоматизированное устройство для тестирования микропроцессорных систем
US10656205B2 (en) Narrow-parallel scan-based device testing
Clark et al. A code-less BIST processor for embedded test and in-system configuration of boards and systems

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