CN102549443B - 可编程协议发生器 - Google Patents

可编程协议发生器 Download PDF

Info

Publication number
CN102549443B
CN102549443B CN201080045103.XA CN201080045103A CN102549443B CN 102549443 B CN102549443 B CN 102549443B CN 201080045103 A CN201080045103 A CN 201080045103A CN 102549443 B CN102549443 B CN 102549443B
Authority
CN
China
Prior art keywords
data
pattern generator
semiconductor
programme
patgen
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
Application number
CN201080045103.XA
Other languages
English (en)
Other versions
CN102549443A (zh
Inventor
乔治·W·康纳
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.)
Teradyne Inc
Original Assignee
Teradyne Inc
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 Teradyne Inc filed Critical Teradyne Inc
Publication of CN102549443A publication Critical patent/CN102549443A/zh
Application granted granted Critical
Publication of CN102549443B publication Critical patent/CN102549443B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/26Testing of individual semiconductor devices
    • G01R31/2601Apparatus or methods 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/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318314Tools, e.g. program interfaces, test suite, test bench, simulation hardware, test compiler, test program languages

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明提供一种半导体器件测试器,其包括配置为测试半导体被测器件的可编程硬件。所述可编程硬件通过两个或更多个码型发生器编程以控制所述半导体被测器件发送和接收的数据流。

Description

可编程协议发生器
背景技术
随着对半导体器件(例如存储器芯片和微处理器)的商业需求的增加,测试这些器件对于器件制造商而言已变得十分重要。为了执行这些测试,使用半导体器件测试器(例如自动测试设备(“ATE”))表征和验证所制造半导体器件的性能。许多ATE执行***级测试,其中ATE的硬件专门为半导体被测器件(“DUT”)而配置。
对于一些类型的测试,ATE发送DUT信号,例如直流信号。一些ATE包括单个码型发生器,该发生器用于产生发送至DUT的信号。根据码型发生器产生的信号,ATE发送信号至DUT,DUT通过将一些数据发送回ATE来进行响应。
发明内容
一般而言,在一方面,半导体器件测试器包括配置为测试半导体被测器件的可编程硬件。可编程硬件通过两个或更多个码型发生器编程以控制半导体被测器件发送和接收的数据流。该两个或更多个码型发生器被编程为向半导体被测器件发送数据和从半导体被测器件接收数据。这些码型发生器中的一个包括发送可编程码型发生器以向半导体被测器件发送数据。这些码型发生器中的另一个包括接收可编程码型发生器以从半导体被测器件接收数据。接收可编程码型发生器配置为对从半导体被测器件接收的数据执行一个或多个操作码。发送可编程码型发生器和接收可编程码型发生器进行通信。接收码型发生器向发送码型发生器发送消息,该消息指示发送码型发生器应向半导体被测器件发送数据。发送码型发生器编程为执行指定待发送数据的一个或多个操作码。接收可编程码型发生器配置为向发送可编程码型发生器发送消息,该消息包括指示发送可编程码型发生器应向半导体被测器件发送数据的数据。
具体实施可以包括下列一个或多个特征。半导体器件测试器还包括数据控制器以控制可编程硬件输出和输入的数据流。该数据控制器与发送可编程码型发生器进行通信,并且该数据控制器配置为向发送可编程码型发生器发送命令,该命令包括指定发送可编程码型发生器要执行的一个或多个操作码的数据。该数据控制器与接收可编程码型发生器进行通信,并且该数据控制器配置为向接收可编程码型发生器发送命令,该命令包括指定接收可编程码型发生器要执行的一个或多个操作码的数据。
一般而言,在一方面,测试半导体器件的方法包括对硬件编程以测试半导体器件。该硬件包括能够通过操作码编程以向半导体被测器件发送数据比特的发送码型发生器以及能够通过操作码编程以对所接收数据比特执行数据操作的接收码型发生器。该方法还包括向半导体被测器件发送一个或多个比特的数据,以及从半导体被测器件接收一个或多个比特的数据。该方法还包括由发送码型发生器执行指定要发送的数据的一个或多个操作码。该方法还包括对从半导体被测器件接收的一个或多个比特的数据执行一个或多个操作码。
发送码型发生器在向半导体被测器件发送数据比特之前,等待从接收码型发生器接收电信号。
一般而言,在一方面,半导体器件包括通过接收码型发生器和发送码型发生器编程的可编程硬件。该发送码型发生器配置为向半导体被测器件发送一个或多个比特的数据。该接收码型发生器配置为与发送码型发生器进行通信。该接收码型发生器配置为从半导体被测器件接收一个或多个比特的数据。该发送码型发生器配置为在向半导体被测器件发送一个或多个第二比特的数据之前,等待从接收码型发生器接收信号。
附图和如下实施方式示出了一个或多个实施例的详细信息。通过所述实施方式和附图以及通过权利要求书,其他特征、对象和优点将显而易见。
附图说明
图1为用于测试器件的ATE的框图。
图2为ATE中使用的测试器的框图。
图3为半导体器件测试器的示意图。
图4、6和8为半导体器件测试器执行的流程的流程图。
图5和7为可编程硬件的示意图。
图9和10为码型发生器执行的操作码的例子。
具体实施方式
参见图1,用于测试被测设备(DUT)18(例如半导体器件)的ATE***10包括测试器12。为控制测试器12,***10包括通过硬线连接16与测试器12连接的计算机***14。通常,计算机***14向测试器12发送命令以启动用于测试DUT 18的例程和函数的执行过程。这些执行测试例程可启动测试信号的产生和将测试信号发送至DUT 18以及收集该DUT的响应。***10可测试多种类型的DUT。例如,DUT可为半导体器件,例如集成电路(IC)芯片(如存储器芯片、微处理器、模拟-数字转换器、数字-模拟转换器等)。
为提供测试信号和收集DUT的响应,测试器12连接到提供DUT18内部电路接口的一个或多个连接器引脚。为测试一些DUT,可将例如多达64或128个连接器引脚(或更多)连接到测试器12。为了进行示意性的说明,在本例中,半导体器件测试器12通过硬线连接连接到DUT 18的一个连接器引脚。导体20(例如电缆)连接到引脚22并且用于将测试信号(例如参数测量装置(“PMU”)测试信号、引脚电子(“PE”)测试信号等)传送至DUT 18的内部电路。导体20还感应引脚22处的信号,以响应半导体器件测试器12提供的测试信号。例如,可在引脚22处感应电压信号或电流信号以响应测试信号,并且该电压信号或电流信号可通过导体20发送至测试器12以供分析。也可对DUT 18中包括的其他引脚执行这种单端口测试。例如,测试器12可向其他引脚提供测试信号和收集通过导体(其传送所提供的信号)反射回去的关联信号。通过收集反射信号,可将引脚的输入阻抗连同其他单端口测试量一起表征。在其他测试场景中,可通过导体20将数字信号发送至引脚22以在DUT 18上存储数字值。存储后,可访问DUT 18以检索此存储数字值并将其通过导体20发送至测试器12。然后可识别检索的数字值以确定是否在DUT 18上存储了正确的值。
除了执行单端口测量,半导体器件测试器12还可执行双端口测试。例如,可通过导体20将测试信号注入引脚22,并且可从DUT 18的一个或多个其他引脚收集响应信号。向半导体器件测试器12提供此响应信号以确定量,例如增益响应、相位响应和其他吞吐量测量量。
另参见图2,为向DUT(或多个DUT)的多个连接器引脚发送测试信号和从中收集测试信号,半导体器件测试器12包括可与许多引脚通信的接口卡24。例如,接口卡24可向(例如)32、64或128个引脚发送测试信号并收集对应的响应。到引脚的每个通信线路通常称为通道,而且,通过向大量通道提供测试信号,可同时执行多个测试,因而缩短测试时间。除了在接口卡上具有许多通道,通过在测试器12中包括多个接口卡,可增加通道的总数,从而进一步缩短测试时间。在本例中,示出两个附加的接口卡26和28以证明测试器12可容纳多个接口卡。
每个接口卡包括专用集成电路(IC)芯片(例如专用集成电路(ASIC))以执行特定测试功能。例如,接口卡24包括IC芯片30以执行参数测量装置(PMU)测试和引脚电子(PE)测试。IC芯片30具有PMU级32和PE级34,其中PMU级包括执行PMU测试的电路,PE级包括执行PE测试的电路。另外,接口卡26和28分别包括IC芯片36和38,这两个芯片包括PMU和PE电路。PMU测试通常涉及向DUT提供直流电压或电流信号以确定诸如输入和输出阻抗、电流泄漏和其他类型的直流性能特性等量。PE测试涉及向DUT(例如DUT 18)发送交流测试信号或波形和收集响应以进一步鉴定DUT的性能。例如,IC芯片30可(向DUT)发送代表用以存储在DUT上的二进制值矢量的交流测试信号。一旦存储了这些二进制值,就可由测试器12访问DUT以确定是否存储了正确的二进制值。由于数字信号通常包括电压突变,因此IC芯片30上的PE级34中的电路相比于PMU级32中的电路以相对高的速度工作。
为了将直流和交流测试信号都从接口卡24传送到DUT 18,导电迹线40将IC芯片30连接到接口板连接器42,该接口板连接器允许信号从接口板24输入和输出。接口板连接器42还连接到导体44,该导体连接到接口连接器46,该接口连接器允许信号从测试器12输入和输出。在本例中,导体20连接到接口连接器46以便在测试器12和DUT18的引脚22之间双向传递信号。在一些布置中,可使用接口设备将一个或多个导体从测试器12连接至DUT。例如,DUT(例如DUT 18)可安装在设备接口板(DIB)上以提供到每个DUT引脚的路径。在这种布置中,导体20可连接到DIB以将测试信号置于适合的DUT引脚(例如引脚22)上。
在本例中,只有导电迹线40和导体44分别连接IC芯片30和接口板24以传送和收集信号。然而,IC芯片30(连同IC芯片36和38)通常具有多个引脚(例如8个、16个等),这些引脚分别与多个导电迹线和对应导体连接以提供和收集来自DUT的信号(通过DIB)。另外,在一些布置中,测试器12可连接到两个或更多个DIB以将接口卡24、26和28提供的通道连接到一个或多个被测器件。
测试器12包括可编程硬件104(例如现场可编程门阵列(“FPGA”)半导体器件),该可编程硬件能够被编程以使得测试器12响应DUT 18。可编程硬件104连接至引脚电子芯片,该引脚电子芯片连接至DUT 18。
参见图3,测试器12包括物理层106,该物理层包括硬件传输技术。例如,物理层106控制数据如何发送至DUT 18和从该DUT接收。在一些例子中,物理层106指定从DUT 18到测试器12的逐比特传送。该物理层并非特定于协议,而是能够结合DUT 18端口上使用的各种类型的协议和接口(例如串行高级技术附件(“SATA”)和高清晰度多媒体接口(“HDMI”))使用。在测试器12中,在物理层106处理时序和时钟恢复的细节,可编程硬件104控制在测试器12和DUT 18之间传输的信息的等级(即数据比特)。
可编程硬件104能够被例如测试器12的用户编程,使得测试器12在测试期间在DUT的端口上使用不同协议。可编程硬件104可根据适合的协议编程,并使用该协议与DUT 18进行通信。通过可编程硬件104,测试器12使用适合DUT 18上的某端口的协议将数据发送至该端口,因此测试器12可“感知协议”。另外,测试器12能够调试大量DUT问题或测试测试器12没有其内置协议支持的DUT 18。
因为测试器12能够被编程以响应DUT 18,所以测试器12能够建立与DUT 18的连接(“握手”)。握手包括验证DUT 18上使用的连接、速度、协议细节和算法。在一些例子中,在测试器12测试DUT 18之前,需要通过握手来启用DUT 18上的串行端口。
可编程硬件104能够通过指定要发送至DUT 18的数据比特的各种操作码(“opcode”)编程。可编程硬件104还能够通过指定可编程硬件104在从DUT 18接收数据后要执行的操作的操作码编程。参见图4,可编程硬件104在执行对DUT 18端口的握手或启用的过程中执行多个操作200。可编程硬件104执行(202)向DUT 18发送数据比特的操作码。可编程硬件104接收(204)从DUT 18返回的数据比特。可编程硬件104执行(206)更多操作码以检验接收的数据或对其执行其他功能。这些功能的例子包括用于测试DUT18的测试算法。可编程硬件还执行(208)其他操作码以向DUT 18发送更多数据比特。这些操作(202、204、206)可继续直到测试完DUT 18。
参见图5,可编程硬件104可包括两个码型发生器,即发送码型发生器302(“Tx Patgen”)和接收码型发生器304(“Rx Patgen”)。为可编程硬件104提供了程序库。该程序库包括定义了Tx Patgen 302和RxPatgen 304的代码。如果可编程硬件104为FPGA卡,则该代码包括FPGA代码。
码型发生器(302、304)存储和执行由测试器12的用户编入可编程硬件104的一系列操作码。例如,Tx Patgen 302包括由Tx Patgen 302执行的一系列操作码以向DUT 18发送数据比特。Rx Patgen 304也包括由Rx Patgen 304执行的一系列操作码以从DUT 18接收数据比特。
通过使用两个码型发生器(302、304),可控制DUT 18的输入和输出数据流。在一个例子中,Tx Patgen 302向DUT 18发送数据,RxPatgen 304从DUT 18接收数据。由于Tx Patgen 302和Rx Patgen 304互相进行数据通信,Tx Patgen 302可编程为等待并且直到Rx Patgen304检验了已接收的数据时才发送更多数据。
测试器12的用户通过测试器12上提供的计算机接口52(图2)指定要由Tx Patgen 302或Rx Patgen 304执行的操作码的序列(和与操作码相关的数据)。例如,用户可定义由Tx Patgen 302执行的操作码的序列以包括“WAIT”和“Set_TX”。相似地,用户可定义由Rx Patgen 304执行的操作码的序列以包括“RPT”和“WAIT_RX”。
在一些例子中,Tx Patgen 302和Rx Patgen 304彼此通过通信线路306、308(例如电缆、电线或电容器)进行通信。Tx Patgen 302控制向DUT 18发送数据。Rx Patgen 304控制从DUT 18接收数据。Tx Patgen302通过通信线路304将数据(称为Tx标志310)发送至Rx Patgen 304。Rx Patgen 304通过通信线路308将数据(称为Rx标志312)发送至TxPatgen 302。
Tx标志310包括通知Rx Patgen 304其应开始等待以从DUT 18接收数据的数据。在一些例子中,Tx Patgen 302在Tx Patgen 302向DUT18发送数据的同时发送Tx标志310。在其他例子中,Tx Patgen 302在向DUT 18发送数据之后发送Tx标志310。
当Rx Patgen 304接收了所有其期望接收的数据并且已经能够检验该数据的准确性和完整性时,Rx Patgen 304将Rx标志312发送至TxPatgen 302。Rx Patgen 304接收其期望的数据之后,该Rx Patgen将Rx标志308发送至Tx Patgen 302。Rx标志312通知Tx Patgen 302其应开始执行下一个操作码并继续向DUT 18发送更多数据。
在一些例子中,Rx Patgen 304从DUT 18接收Rx Patgen 304不知道如何处理的数据。在一个例子中,Rx Patgen 304无法读取从DUT 18上的模拟-数字转换器输出的数据。在这种情况下,Rx Patgen 304通过通信线路314将该数据发送至捕获存储设备316。捕获存储设备316存储该数据,以使得半导体测试器设备100可以稍后访问该数据。在该能力方面,捕获存储设备316起到数据存储库的作用,存储Rx Patgen304无法直接处理的数据。
在一些例子中,传入Tx Patgen 302和Rx Patgen 304的数据来自48比特宽的600兆赫兹(“MHz”)动态随机存取存储器(“DRAM”)。在本例中,600MHz的时钟频率在Tx Patgen 302和Rx Patgen 304之间分割。然而,由于刷新测试器12的DRAM中存储的数据会损失一些效率,因此以266Mhz为Tx Patgen 302所执行的操作码分配了48比特数据。相似地,以266Mhz为Rx Patgen 304所执行的操作码分配了48比特数据。在这48比特的数据中,40比特为符号数据,8比特用作控制数据。以下表1提供了可编入Tx Patgen 302的发送操作码的例子:
表1
如以上表1所示,操作码的前四个比特指定要由Tx Patgen 302执行的命令,例如NEXT或RPT。之后的四个比特指定用于设置多个控制比特的操作数。剩下的40个比特指定为符号数据。在表1提供的例子中,这40比特以四个符号发送,每个符号包括10比特。
NEXT命令获取40比特符号数据并将其从Tx Patgen 302上的端口向外发送。RPT命令也获取40比特符号数据并将其从Tx Patgen 302上的端口向外发送。另外,RPT命令继续从Tx Patgen 302上的端口向外发送数据并持续特定循环次数,其中循环次数在下一条48比特命令中指定。BLOOP命令执行和NEXT命令相似的操作,不同的是存储了操作数的地址使得ELOOP命令可以形成分支返回此地址。
ELOOP命令将40比特数据从Tx Patgen 302上的端口向外发送。ELOOP命令还包括将循环重复特定次数的循环功能。在ELOOP命令中,可通过三个事件提前退出循环:匹配条件、主机标志或ISL命令。为达到该目的,48b数据字段中的剩余比特可具有以下用途:
第47比特=等待RX标志
第46比特=等待主机标志
第45比特=等待ISL命令
第44∶10比特=保留
不设置比特=正常循环
WAIT命令等待直到事件发生,同时继续提供引脚数据。WAIT命令还等待特定事件发生,当事件发生时,继续执行下一个操作码。
WAIT_SPD命令用于将码型速度在低(“L”)、中(“M”)和高(“H”)之间切换。在下一个操作码中设置等待数以允许安排速度改变。通过操作数比特来选择速度。SET_TX命令将Tx标志310发送至Rx Patgen304。该标志用于通知Rx Patgen 304,Tx Patgen 302已到达标志操作码。SET_FL命令设置主机标志。SET_ISL命令设置ISL完成位。SET_MODE命令设置模式位为流。在一些例子中,SET_MODE命令设置Tx Patgen302生成和发送伪随机二进制序列(“PRBS”)数据码型。在其他例子中,SET_MODE命令指定应启动环回。STOP命令停止传输数据码型但继续向Tx Patgen 302上的端口发送该40比特。
可编入Rx Patgen 304的操作码可与Tx Patgen 302的操作码相似,如以下表2所示。
表2
与具有操作数字段不同,Rx Patgen 304的操作码可具有CARE字段。CARE字段指定Rx Patgen 304是否接收数据而不对所接收的数据执行任何附加操作。在一些例子中,没有将从DUT 18接收的数据与期望值进行比较。在这些例子中,将0置于CARE字段中的对应符号位置。在其他例子中,CARE字段指定所捕获的数据应匹配一些期望数据。在一个例子中,将CARE位置位以指定期望数据与所捕获的数据之间应发生匹配。如果所捕获的数据不匹配期望数据,则发生失效条件并导致错误结果(例如解码错误或不一致错误)。在本例中,Rx Patgen 304将失效条件记录为错误符号、解码错误或不一致错误。
在Rx Patgen 304使用的操作码中包括的指令可与Tx Patgen 302使用的操作码中包括的指令相同,但ELOOP、WAIT、SET_CAP_ON、SEP_CAP_OFF和RESET命令除外。
对于ELOOP命令和WAIT命令,添加了附加选择位以等待对齐和匹配条件。比特选择为:
第47比特=等待TX标志
第46比特=等待主机标志
第45比特=等待ISL命令
第44比特=等待对齐
第43比特=等待对齐然后匹配A
第42比特=等待对齐然后匹配B
第41比特=等待对齐然后匹配A+B
第40比特=匹配前捕获
第39比特=匹配后捕获
第40∶16比特=保留
第15∶0比特=等待或循环计数(循环计数仅10b)
捕获位允许WAIT命令等待指定数据包头部的数据。通过执行WAIT指令,Rx Patgen 304等待并接收数据直到数据包尾部发生匹配。
SET_CAP_ON和SET_CAP_OFF命令设置并清除模式位,该模式位决定所捕获数据是否存储在捕获存储器316中。SET_CAP_ON命令在下一个循环(即执行操作码)开始捕获数据,同时SET_CAP_OFF在当前循环停止捕获数据。
RESET命令用于重置对齐或匹配条件或者用于更改匹配值,其中A=对齐,M=匹配,V=值。
参见图9,Rx Patgen 304可通过多种操作码码型编程,例如带外(“OOB”)序列350、空闲序列352、接收包序列354和发送包序列356。例如,在Rx Patgen 304的发送包序列356中,Rx Patgen 304等待从DUT 18接收数据,因为Tx Patgen 302的发送包序列将数据发送至DUT18。参见图10,Tx Patgen 302可通过多种操作码码型编程,例如带外(“OOB”)序列360、空闲序列362、接收包序列364和发送包序列366。
参见图6,Tx Patgen 302和Rx Patgen 304在测试DUT 18的过程中执行多个操作(400)。Tx Patgen 302执行(402)操作码,例如包括NEXT指令的操作码,其导致向DUT 18传输符号数据。Tx Patgen 302还将Tx标志310发送(404)至Rx Patgen 304。Tx标志310通知Rx Patgen 304其应开始侦听从DUT 18发送的数据。DUT 18发送(406)数据至RxPatgen 304。Rx Patgen 304对所接收的数据执行(408)其操作码以检验其已接收到特定数据。Rx Patgen 304将Rx标志312发送(410)至Tx Patgen302。
参见图7,在一些实施例中,专用控制器502为可编程硬件104的一部分并且用于控制Tx Patgen 302和Rx Patgen 304执行操作码。当DUT 18发送回多种类型的数据而Rx Patgen 304不知道如何处理多种已接收的数据类型时,使用专用控制器502。在这种情况下,Rx Patgen304通过通信线路504将接收的数据发送至专用控制器502。在另一种情况下,Rx Patgen 304将接收的数据发送至捕获存储设备316,而专用控制器502具有捕获存储设备316的访问权限。Rx Patgen 304向专用控制器502发送消息,提醒专用控制器502,Rx Patgen 304已经接收了数据。然后专用控制器502访问来自捕获存储设备316的已接收数据。专用控制器502分析该已接收数据以确定应由Tx Patgen 302执行的操作码。然后专用控制器502指示Tx Patgen 302下一个要执行的操作码。
在一些例子中,Tx Patgen 302和Rx Patgen 304互相没有通过Tx标志310和Rx标志312直接通信。相反,专用控制器502处理从RxPatgen 304接收的数据并将数据发送回Rx Patgen 304,通知Rx Patgen304其应执行的任何附加操作码,例如用以等待接收更多数据的操作码或用以在接收的数据和Rx Patgen 304期望接收的数据之间执行比较匹配的操作码。在专用控制器502处理了从Rx Patgen 304接收的数据之后,专用控制器502向Tx Patgen 302发送命令,告知Tx Patgen 302接下来执行哪个操作码。
在一些例子中,Tx Patgen 302和Rx Patgen 304结合通信线路306、312以及Tx和Rx标志310、312使用专用控制器502来确定要执行的适当操作码。在一个例子中,Rx Patgen 304从DUT 18接收一些RxPatgen 304能够直接处理并确定要执行的适当操作码的数据。然而,RxPatgen 304也可接收其无法处理的其他数据。在这种情况下,Rx Patgen304将该数据传送至专用控制器502。专用控制器502处理该数据并通过通信线路504向Rx Patgen 304发送有关接下来执行哪个操作码的指令。
参见图8,Rx Patgen 304、Tx Patgen 302和专用控制器502在向DUT 18发送数据和从该DUT接收数据的过程中执行多个操作600。Rx Patgen 304从DUT 18接收(602)数据。Rx Patgen 302将接收的数据发送(604)至专用控制器502。专用控制器502处理(606)从Rx Patgen 304接收的数据。专用控制器502决定(608)Rx Patgen 304是否需要等待以从DUT 18接收更多数据。如果专用控制器502决定Rx Patgen 304需要接收更多数据或需要执行其他操作码,则专用控制器502向RxPatgen 304发送(610)指定要执行的操作码的附加指令。Rx Patgen 304从DUT 18接收数据并将接收的数据传送至专用控制器502的这一循环614继续,直到专用控制器502已经确定Rx Patgen 304接收了其需要的所有数据。如果专用控制器502确定Rx Patgen 304已经接收了其需要的所有数据,则专用控制器502向Tx Patgen 302传送(612)一条命令。传送至Tx Patgen 302的命令可指定Tx Patgen 302应发送至DUT 18的操作码。Tx Patgen 302可向DUT 18发送操作码。
可编程硬件104可包括标准电路元件。在一个例子中,从Tx Patgen302发送至DUT 18的符号数据通过并行-串行转换器506或带外检测装置508发送。然后该符号数据被传送经过逻辑门510,该逻辑门的输出被发送至DUT 18。在接收端,DUT 18将数据传送回测试器12和可编程硬件104。接收的数据传送经过作为测试器12的一部分的逻辑门512。在一些例子中,还将接收的数据传送经过带外检测装置514以确定该接收的数据是否在之前建立的通信通道之外。然后将该接收的数据传送至串行-并行转换器514并发送至Rx Patgen 304。“10b对齐”查看比特流并根据“10b对齐”寻找的对齐字符决定将10b符号边界放在何处。
在一些例子中,接收的数据发送至跟踪装置518并通过延迟装置520馈入。跟踪装置518检查数据转换并将时钟比较器选通(我们的时钟)的相位来回移动以使得该时钟处于数据眼的中心。在一些例子中,主振荡器(“MOSC”)起到板载时钟的作用。
在一些例子中,Tx Patgen 302连接到分层随机存取存储器(“HRAM”)522和仪器同步线路(“ISL”)524以将事件在Tx Patgen 302和Rx Patgen 304之间同步。Rx Patgen 304也连接到HRAM 526和ISL528。在一些例子中,专用控制器502与主机装置530(例如服务器或其他计算装置)相连。
已经描述了多个实施例。然而,应当理解,可以进行各种修改。因此,其他实施例在以下权利要求书的范围内。

Claims (14)

1.一种半导体器件测试器,包括:
可编程硬件,其配置为测试半导体被测器件,其中所述可编程硬件通过两个或更多个码型发生器编程以控制所述半导体被测器件接收和发送的数据流;
其中所述码型发生器中的一个包括发送可编程码型发生器以向所述半导体被测器件发送数据;
其中所述码型发生器中的一个包括接收可编程码型发生器以从所述半导体被测器件接收数据;并且
其中所述发送可编程码型发生器与所述接收可编程码型发生器进行通信。
2.根据权利要求1所述的半导体器件测试器,其中所述两个或更多个码型发生器被编程以:
向半导体被测器件发送数据;以及
从所述半导体被测器件接收数据。
3.根据权利要求1所述的半导体器件测试器,其中所述接收可编程码型发生器配置为对从所述半导体被测器件接收的所述数据执行一个或多个操作码。
4.根据权利要求1所述的半导体器件测试器,其中所述接收码型发生器向所述发送码型发生器发送消息,所述消息指示所述发送码型发生器应向所述半导体被测器件发送数据。
5.根据权利要求1所述的半导体器件测试器,其中所述发送码型发生器配置为执行一个或多个指定要发送的所述数据的操作码。
6.根据权利要求1所述的半导体器件测试器,其中所述接收可编程码型发生器配置为向所述发送可编程码型发生器发送消息,所述消息包括指示所述发送可编程码型发生器应向所述半导体被测器件发送数据的数据。
7.根据权利要求1所述的半导体器件测试器,还包括数据控制器以控制所述可编程硬件输入和输出的所述数据流。
8.根据权利要求7所述的半导体器件测试器,其中所述数据控制器与所述发送可编程码型发生器进行通信,并且所述数据控制器配置为向所述发送可编程码型发生器发送命令,所述命令包括指定所述发送可编程码型发生器要执行的一个或多个操作码的数据。
9.根据权利要求7所述的半导体器件测试器,其中所述数据控制器与所述接收可编程码型发生器进行通信,并且所述数据控制器配置为向所述接收可编程码型发生器发送命令,所述命令包括指定所述接收可编程码型发生器要执行的一个或多个操作码的数据。
10.一种测试半导体器件的方法,所述方法包括:
对硬件进行编程以测试所述半导体器件,其中所述硬件包括:
发送码型发生器,其能够通过操作码编程以向所述半导体被测器件发送数据比特;以及
接收码型发生器,其能够通过操作码编程以对所述接收的数据比特执行数据操作,
其中所述发送码型发生器在向所述半导体被测器件发送数据比特之前,等待从所述接收码型发生器接收电信号。
11.根据权利要求10所述的方法,还包括:
向半导体被测器件发送一个或多个比特的数据;以及
从半导体被测器件接收一个或多个比特的数据。
12.根据权利要求11所述的方法,还包括由所述发送码型发生器执行一个或多个指定要发送的所述数据的操作码。
13.根据权利要求11所述的方法,还包括:
对从所述半导体被测器件接收的所述一个或多个比特的数据执行一个或多个操作码。
14.一种半导体器件,包括:
可编程硬件,其通过接收码型发生器和发送码型发生器编程,其中
所述发送码型发生器配置为向半导体被测器件发送一个或多个比特的数据;
所述接收码型发生器配置为与所述发送码型发生器进行通信;
所述接收码型发生器配置为从所述半导体被测器件接收一个或多个比特的数据;以及
所述发送码型发生器配置为在向所述半导体被测器件发送一个或多个第二比特的数据之前,等待从所述接收码型发生器接收信号。
CN201080045103.XA 2009-10-08 2010-02-05 可编程协议发生器 Active CN102549443B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/575,800 US8269520B2 (en) 2009-10-08 2009-10-08 Using pattern generators to control flow of data to and from a semiconductor device under test
US12/575,800 2009-10-08
PCT/US2010/023280 WO2011043832A1 (en) 2009-10-08 2010-02-05 Programmable protocol generator

Publications (2)

Publication Number Publication Date
CN102549443A CN102549443A (zh) 2012-07-04
CN102549443B true CN102549443B (zh) 2015-04-01

Family

ID=43855798

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080045103.XA Active CN102549443B (zh) 2009-10-08 2010-02-05 可编程协议发生器

Country Status (9)

Country Link
US (1) US8269520B2 (zh)
EP (1) EP2449391B1 (zh)
JP (1) JP5732464B2 (zh)
KR (2) KR101933723B1 (zh)
CN (1) CN102549443B (zh)
MY (1) MY155209A (zh)
SG (1) SG178186A1 (zh)
TW (1) TWI470242B (zh)
WO (1) WO2011043832A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391322B (zh) * 2016-05-17 2021-11-23 三星电子株式会社 基于二进制向量的测试设备

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1763678B1 (en) * 2004-07-07 2009-08-26 Verigy (Singapore) Pte. Ltd. Evaluation of an output signal of a device under test
WO2010054669A1 (en) 2008-11-11 2010-05-20 Verigy (Singapore) Pte.Ltd. Re-configurable test circuit, method for operating an automated test equipment, apparatus, method and computer program for setting up an automated test equipment
TW201314233A (zh) * 2011-09-21 2013-04-01 Hon Hai Prec Ind Co Ltd 測試卡
US9910086B2 (en) 2012-01-17 2018-03-06 Allen Czamara Test IP-based A.T.E. instrument architecture
US9952276B2 (en) * 2013-02-21 2018-04-24 Advantest Corporation Tester with mixed protocol engine in a FPGA block
US9411701B2 (en) * 2013-03-13 2016-08-09 Xilinx, Inc. Analog block and test blocks for testing thereof
US9195261B2 (en) 2013-09-03 2015-11-24 Teradyne, Inc. Synchronizing data from different clock domains by bridges one of the clock signals to appear to run an integer of cycles more than the other clock signal
CN106561085A (zh) * 2014-07-28 2017-04-12 英特尔公司 具有dut数据流送的半导体器件测试器
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
US10976361B2 (en) 2018-12-20 2021-04-13 Advantest Corporation Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
US11137910B2 (en) * 2019-03-04 2021-10-05 Advantest Corporation Fast address to sector number/offset translation to support odd sector size testing
US11237202B2 (en) 2019-03-12 2022-02-01 Advantest Corporation Non-standard sector size system support for SSD testing
US10884847B1 (en) 2019-08-20 2021-01-05 Advantest Corporation Fast parallel CRC determination to support SSD testing
US20210302469A1 (en) * 2020-03-31 2021-09-30 Advantest Corporation Universal Test Interface Systems and Methods
US20220155370A1 (en) * 2020-11-17 2022-05-19 Synopsys, Inc. Device under test synchronization with automated test equipment check cycle

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694399A (en) * 1996-04-10 1997-12-02 Xilinix, Inc. Processing unit for generating signals for communication with a test access port
US6553527B1 (en) * 1999-11-08 2003-04-22 International Business Machines Corporation Programmable array built-in self test method and controller with programmable expect generator
CN101191819A (zh) * 2006-11-21 2008-06-04 国际商业机器公司 Fpga、fpga配置、调试***和方法
CN101196557A (zh) * 2007-12-18 2008-06-11 上海华为技术有限公司 一种现场可编程门阵列测试的方法、装置和***
US7479803B1 (en) * 2004-10-06 2009-01-20 Altera Corporation Techniques for debugging hard intellectual property blocks
CN100469020C (zh) * 2004-01-12 2009-03-11 安华高科技杰纳勒尔Ip(新加坡)私人有限公司 多功能样式发生器及用于测试串行通信信道通信质量的方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0481675A (ja) * 1990-07-25 1992-03-16 Mitsubishi Electric Corp 半導体デバイステスト装置
JPH0557678U (ja) * 1991-12-27 1993-07-30 株式会社アドバンテスト Ic試験装置
JPH09288153A (ja) * 1996-04-19 1997-11-04 Advantest Corp 半導体試験装置
JP3356205B2 (ja) * 1997-09-09 2002-12-16 横河電機株式会社 Lsi試験装置
JPH11184678A (ja) * 1997-12-25 1999-07-09 Toshiba Corp パターン発生器
US6651203B1 (en) * 1999-05-17 2003-11-18 Infineon Technologies Ag On chip programmable data pattern generator for semiconductor memories
JP2002174661A (ja) * 2000-12-06 2002-06-21 Fuji Xerox Co Ltd 集積回路テスト制御装置
US20040193982A1 (en) * 2003-03-31 2004-09-30 Arraycomm, Inc. Built-in self-test for digital transmitters
JP2005315605A (ja) 2004-04-27 2005-11-10 Yamaha Corp 半導体装置の試験装置および試験方法
US7409618B2 (en) * 2004-10-06 2008-08-05 Lsi Corporation Self verifying communications testing
US7519891B2 (en) * 2005-09-28 2009-04-14 Intel Corporation IO self test method and apparatus for memory
JP5025638B2 (ja) * 2006-04-19 2012-09-12 株式会社アドバンテスト 信号出力装置、試験装置、およびプログラム
JP4967881B2 (ja) * 2006-07-31 2012-07-04 セイコーエプソン株式会社 更新データ送信方法、ファームウェア書き換えシステム及び更新データ送信プログラム
KR100736675B1 (ko) * 2006-08-01 2007-07-06 주식회사 유니테스트 반도체 소자 테스트 장치
KR100736680B1 (ko) * 2006-08-10 2007-07-06 주식회사 유니테스트 반도체 소자 테스트 장치의 캘리브레이션 방법
US7774669B2 (en) * 2007-06-11 2010-08-10 Lsi Corporation Complex pattern generator for analysis of high speed serial streams
US20090112548A1 (en) * 2007-10-30 2009-04-30 Conner George W A method for testing in a reconfigurable tester

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694399A (en) * 1996-04-10 1997-12-02 Xilinix, Inc. Processing unit for generating signals for communication with a test access port
US6553527B1 (en) * 1999-11-08 2003-04-22 International Business Machines Corporation Programmable array built-in self test method and controller with programmable expect generator
CN100469020C (zh) * 2004-01-12 2009-03-11 安华高科技杰纳勒尔Ip(新加坡)私人有限公司 多功能样式发生器及用于测试串行通信信道通信质量的方法
US7479803B1 (en) * 2004-10-06 2009-01-20 Altera Corporation Techniques for debugging hard intellectual property blocks
CN101191819A (zh) * 2006-11-21 2008-06-04 国际商业机器公司 Fpga、fpga配置、调试***和方法
CN101196557A (zh) * 2007-12-18 2008-06-11 上海华为技术有限公司 一种现场可编程门阵列测试的方法、装置和***

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391322B (zh) * 2016-05-17 2021-11-23 三星电子株式会社 基于二进制向量的测试设备

Also Published As

Publication number Publication date
EP2449391A4 (en) 2015-02-25
EP2449391B1 (en) 2016-07-13
KR20120093888A (ko) 2012-08-23
JP5732464B2 (ja) 2015-06-10
EP2449391A1 (en) 2012-05-09
KR20160105984A (ko) 2016-09-08
CN102549443A (zh) 2012-07-04
US8269520B2 (en) 2012-09-18
US20110087942A1 (en) 2011-04-14
MY155209A (en) 2015-09-30
TW201113536A (en) 2011-04-16
KR101933723B1 (ko) 2018-12-28
JP2013507610A (ja) 2013-03-04
WO2011043832A1 (en) 2011-04-14
SG178186A1 (en) 2012-03-29
TWI470242B (zh) 2015-01-21

Similar Documents

Publication Publication Date Title
CN102549443B (zh) 可编程协议发生器
US10976361B2 (en) Automated test equipment (ATE) support framework for solid state device (SSD) odd sector sizes and protection modes
JP2013507610A5 (zh)
KR101545209B1 (ko) 재설정가능한 테스터에서의 테스트 방법
CN105093094B (zh) 芯片上电可靠性自动检测装置和检测方法
WO2021189322A1 (zh) 一种芯片测试装置及测试方法
US20060020860A1 (en) Digital signature generation for hardware functional test
CN105008943A (zh) 对在fpga块内分组创建加速的测试仪
KR102364055B1 (ko) 자동 회로기판 테스트 시스템 및 이에 응용되는 자동 회로기판 테스트 방법
CN113157501B (zh) 一种基于ate测试机的微***模块ac参数测试方法
CN113014339B (zh) PCIe外插卡接收通道的质量测试方法、装置及设备
CN102479123A (zh) 卡片操作***的测试***及测试方法
WO2007114373A1 (ja) テスト方法、テストシステムおよび補助基板
CN107331421A (zh) 一种基于fpga的sd卡测试***及方法
CN115510804A (zh) 全芯片管脚复用自动化验证方法、装置、设备及存储介质
CN112131109A (zh) 基于Python的芯片自动化验证测试***及方法
CN111722968A (zh) 一种硬件调试方法、装置、***及可读存储介质
CN117076337B (zh) 一种数据传输方法、装置、电子设备及可读存储介质
CN116663490A (zh) 一种异步存储芯片的验证方法、平台、装置及介质
CN113160875B (zh) 芯片测试***和测试方法
CN109710480A (zh) 一种内存镜像卡调试方法及其***
US7526691B1 (en) System and method for using TAP controllers
CN112798942A (zh) 一种芯片批量测试方法和***
CN117234831B (zh) 一种基于多核cpu的芯片功能测试方法及***
Nejedlo et al. Intel® IBIST, the full vision realized

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant