用于支持协议无关器件测试系统中协议重新配置的基于云的基础设施的制作方法_4

文档序号:9620699阅读:来源:国知局
括两个站点模块和两个设备电源板。例如,图3的测试仪切片340A包括站点模块310A和310B以及设备电源板332A和332B。然而,可配置到测试仪切片上的设备电源板或站点模块的数量没有限制。测试仪切片340通过网络交换机302连接至系统控制器301。网络交换机302可通过32位宽总线连接至每个站点模块。
[0083]设备电源板332A-332B中的每一个可根据站点模块310A-310B之一来控制。在测试仪处理器305上运行的软件可被配置为将设备电源指派给特定站点模块。在一个实施例中,站点模块310A-310B和设备电源332A-332B被配置来使用高速串行协议(例如,快速外部部件互连(PCIe)、串行AT附件(SATA)或串行附接SCSI (SAS))来与彼此通信。
[0084]在一个实施例中,每个站点模块被配置有两个FPGA,如图3B所示。在图3B的实施例中,FPGA 316和318中的每一个由测试仪处理器305控制并执行与图2中的FPGA321A-321M类似的功能。测试仪处理器305可使用如由图3B中的系统总线330和332所指示的8通道高速串行协议接口(例如,PCIe)与每个FPGA通信。在其他实施例中,测试仪处理器305还可使用不同的高速串行协议(例如,串行AT附件(SATA)或串行附接SCSI (SAS)或任何其他高速协议)来与FPGA通信。
[0085]FPGA 316和318分别连接至存储器模块308和304。存储器模块与FPGA设备和测试仪处理器305两者耦接并可由两者控制。
[0086]FPGA 316和318可分别通过总线352和354连接至搭载板380上的DUT372A-372M。在一个实施例中,搭载板380是允许对用于在线路352和354上与DUT通信的协议不可知的站点模块端处的通用高速连接的物理线束。然而,在DUT端处,搭载板需要被设计成具有特定于正由DUT使用的协议的连接器。
[0087]在本发明的一个实施例中,DUT 372A-372M被搭载在放置于用于测试的热室390内部的搭载板380上。DUT 372A-372M和搭载板380从设备电源332A和332B获取电力。
[0088]图3C是根据本发明的实施例的图3A的实例化FPGA测试仪块的详细示意框图。
[0089]参考图3C,实例化FPGA测试仪块320A通过上游端口 391连接至测试仪处理器305并通过下游端口 392连接至DUT。
[0090]实例化FPGA块320A可包括协议引擎模块395、逻辑块模块394和硬件加速器块396。硬件加速器块396可进一步包括存储器控制模块388、比较器模块389、分组建立器模块387和算法模型生成器(APG)模块386。
[0091 ] 在一个实施例中,逻辑块模块394包括对来自测试仪处理器的命令进行解码的解码逻辑、将所有从测试仪处理器305传入的命令和数据以及由FPGA设备生成的数据路由至适当模块的路由逻辑、以及在实例化FPGA测试仪块320A内的各条通信路径之间进行仲裁的仲裁逻辑。
[0092]在一种实施方式中,用于在测试仪处理器与DUT之间进行通信的通信协议可有利地为可重新配置的。这种实施方式中的通信协议引擎直接被编程到实例化FPGA测试仪块320A的协议引擎模块395中。实例化FPGA测试仪块320A因此可被配置来在DUT所支持的任何协议下与DUT通信。这有利地消除了对硬件总线适配器卡的需要并且无需更换协议特定的硬件以测试支持不同协议的DUT。在一个实施例中,协议可以是高速串行协议,包括但不限于SATA、SAS或PCIe等。
[0093]如上所述,新的或修改的协议可经由通过测试仪处理器从系统控制器下载的简单位流而被下载并直接安装在FPGA上,而无需任何种类的硬件交互。测试仪器的初始设定可包括从系统控制器301上的可用协议库选择将要被配置到FPGA设备上的一个或多个协议。协议作为文件缓存在系统控制器301上并且可作为位文件被下载到FPGA上。用户可从通过在系统控制器301上运行的测试应用的图形用户界面可用的发布列表中选择协议。在使得协议可用作选项之前,协议必须被建立、测试并集成到发布中。除其他事物之外,发布的FPGA配置包含关于所支持协议的定义和可用于连接DUT的收发器的数量。随后可使得发布库通过图形用户界面对于用户是可用的。
[0094]此外,如果发布新协议,则FPGA可通过软件下载而容易地利用该协议进行配置。在本发明的一个实施例中,可首先通过网络150(例如,使用通信接口 122)将协议下载至系统控制器301,其中协议被存储在服务器141和145上。需要该协议的用户可通过网站访问服务器141和145,其中对网站的访问是通过用户特定的登录和口令来控制。以此方式,在一个实施例中,本发明包括用于控制用户对服务器的访问以访问将要编程到FPGA测试仪块320A的协议引擎模块395上的协议模块的功能。
[0095]在图3C中,如果耦接至下游端口 392的DUT例如是PCIe器件,那么可通过上游端口 391下载包含PCIe协议的实例化的位文件并将其安装在协议引擎模块395上。每个FPGA设备316或318可包括一个或多个实例化FPGA测试仪块,并且因此包括一个或多个协议引擎模块。任何一个FPGA设备可支持的协议引擎模块的数量仅由FPGA的大小和门数限制。
[0096]在本发明的一个实施例中,FPGA设备内的每个协议引擎模块可利用不同通信协议来配置。因此,FPGA设备可被连接为测试多个DUT,每个DUT同时支持不同通信协议。可替代地,FPGA设备可连接至支持多个协议的单个DUT并同时测试在该器件上运行的所有模块。例如,如果FPGA被配置来运行PCIe和SATA两种协议,那么它可被连接以测试支持PCIe和SATA两种协议的DUT。可替代地,它可被连接以测试两个不同DUT,一个DUT支持PCIe协议而另一个DUT支持SATA协议。
[0097]与测试仪处理器上的软件中可能做到的相比,图3C的硬件加速器块396可用于更快地加快FPGA硬件上的某些功能。硬件加速器块396可供应用于测试DUT的初始测试模型数据。它还可包含生成用于控制DUT的测试的某些命令的功能。为生成测试模型数据,加速器块396使用算法模型生成器模块386。
[0098]硬件加速器块396可使用比较器模块389将正从DUT读取的数据与上一循环中写入DUT的数据进行比较。比较器模块389包括向测试仪处理器305标记不匹配以标识不符合的器件的功能。更具体地,比较器模块389可包括跟踪不匹配并将它们传达至测试仪处理器305的误差计数器。
[0099]硬件加速器块396可连接至局部存储器模块304。存储器模块304执行与存储器块360A-360M中任一个内的存储器模块类似的功能。存储器模块360A可由硬件加速器块396和测试仪处理器305两者控制。测试仪处理器305可控制局部存储器模块304并将初始测试模型数据写入至局部存储器模块304。
[0100]存储器模块304存储将要写入至DUT的测试模型数据,并且硬件加速器块396访问存储器模块以将所存储的数据与在写入循环之后从DUT读取的数据进行比较。局部存储器模块304还可用于记录故障。存储器模块将会存储具有DUT在测试期间所经历的所有故障的记载的记录文件。在一个实施例中,加速器块396具有任何其他实例化FPGA测试仪块不可访问的专用局部存储器模块块394。在另一个实施例中,局部存储器模块块304被另一个实例化FPGA测试仪块中的硬件加速器块共享。
[0101]硬件加速器块396还可包括存储器控制模块388。存储器控制模块388与存储器模块304交互并控制对存储器模块304的读取和写入访问。
[0102]最后,硬件加速器块396包括分组建立器模块387。分组建立器模块由硬件加速器块在某些模式下用来构建将被写出至DUT的包括头部/命令数据和测试模型数据的分组。
[0103]在某些实施例中,硬件加速器块396可通过测试仪处理器305来编程以在若干硬件加速模式之一下操作。在一个实施例中,从在系统控制器301上运行的测试应用接收FPGA测试仪块320A将在其下操作的硬件加速模式的指令。在该实施例中,在系统控制器301上运行的测试应用对系统中各个FPGA测试仪块的硬件加速模式具有可见性并且能对其进行控制。
[0104]在旁路模式下,硬件加速器被绕过,并且命令和测试数据由测试仪处理器305通过路径383直接发送至DUT。在硬件加速器模型生成器模式下,测试模型数据由APG模块386生成,同时命令由测试仪处理器305生成。测试分组通过路径393传输至DUT。在硬件加速器存储器模式下,测试模型数据是从局部存储器模块304访问,同时命令由测试仪处理器305生成。测试模型数据通过路径385传输至DUT。需要路由逻辑以在路径385、393和383之间进行仲裁,从而控制数据到DUT的流动。
[0105]图4A是示出根据本发明的实施例的用于使系统控制器与系统中的测试仪切片和DUT连接的典型硬件配置的示意框图。
[0106]在一个实施例中,系统控制器301包括运行测试应用(例如,Verigy Stylus?操作系统)的一个或多个链接计算机。在其他实施例中,系统控制器常常仅包括单个计算机。系统控制器301是总体系统控制单元,并且运行具有图形用户界面(GUI)的测试应用,图形用户界面负责实现所有用户级测试任务(包括运行用户的主测试应用)。
[0107]通信器总线491提供系统控制器与测试仪硬件之间的高速电子通信通道。通信器总线还可称为背板、模块连接使能器或系统总线。物理上,通信器总线491是可例如为电气、光学等的快速、高带宽双工连接总线。系统控制器301通过借助在通信器总线491上发送的命令来编程测试仪硬件,从而设定用于测试DUT 372A-372M的条件。
[0108]测试仪硬件480包括向被测器件(DUT) 372A-372M提供测试刺激并测量DUT对刺激的响应、以及将该响应与预期响应进行比较所必需的电子和电气零件和连接器的复杂集合。如关于图3B所论述的,测试仪切片340A-340N容纳在测试仪硬件480内。在一个实施例中,测试仪硬件480容纳在如图3B所描绘的热室390中。
[0109]图4B是示出根据本发明的一个实施例的自动测试系统的站点模块和系统控制器的示例性软件部分的示意框图。
[0110]如图4B所示,系统控制器301包括存储器450。存储器450存储各种架构,包括操作系统452 (例如,Microsoft Windows?操作系统)、测试应用451和测试程序452。这些架构中的一个或多个可通过计算机程序产品(例如,一个或多个磁盘或磁带)向存储器450提供或通过网络150从云(例如,服务器141和145)下载。优选地,测试应用451由ATE仪器300的制造商通过计算机程序产品提供给ATE终端用户或通过网络接口(未示出)从云下载。
[0111]系统控制器301根据操作系统452和测试应用451进行操作。测试应用451向用户提供测试开发环境和器件测试环境。如以上所指示,Verigy Stylus?操作系统是器件测试期间通常使用的测试应用的一个实例。测试应用提供图形用户界面(GUI)以便:当在测试开发环境内操作时,使得用户能够创建(一个或多个)测试程序452 ;并且当在器件测试环境内操作时,使得能够根据测试程序来测试连接至系统控制器301的所有DUT 372A-372M。在一个实施例中,仅存在在操作系统452上运行的测试应用的一个副本并且是单一用户应用。
[0112]在一个实施例中,测试应用向用户提供允许用户在不同加速模式下配置FPGA或仪器300内的其他可编程器件的GUI
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1