欢迎光临专业集成电路测试网~~欢迎加入IC测试QQ群:111938408

专业IC测试网

当前位置: 网站主页 > 经验分享 > 开发经验 >

验证工程师能帮上测试的忙

时间:2008-06-12 21:49来源:www.ictest8.com 作者:ictest8 点击:

  有效的交流能够使测试工程师顺利地从模拟环境转入基于周期的世界。
   为了测试复杂的器件,测试工程师必须依靠由验证工程师生成的向量集。然而,遗憾的是,在软件模拟环境下工作的验证工程师,往往不了解测试工程师的特性描述和在真实硅片上完成的生产测试任务。测试工程师和验证工程师的合作,对实际产品的调试和生产是至关重要的。加强与验证工程师的交流,能够提高产品的质量和向量生成工序的流程。
   在设计流程图(表1)中,"验证"这个词用在几个步骤之中。我们在本文里将集中讨论功能验证。这是一个用以保证逻辑设计符合技术规格的模拟设计的过程。这是一种转换为检测器-特定向量的功能验证模拟。
   ATE(自动测试设备)程序的开发依赖于基于周期的测试。验证工程师也许并不熟悉"基于周期的测试"这个词,但他们在模拟和验证设计的功能度的时候,常常使用类似的概念。懂得了这一点,就能根据验证工程师每天所用的术语和方法来解释基于周期的测试。
   在调试ASIC的功能度的设计模拟中,校验工程师通常都使用波形。为了方便起见,他们在波形中增加了垂直的网格线以便确定在什么时候发生了逻辑转换。在大多数的情况下,工程师将根据系统中所用的时钟来设置网格线。这样的网格线最可能设置在每个时钟周期的边缘上。在图1中,网格线设置在时钟的各个边缘上。
   验证工程师在波形中制作网格的方法是他们了解周期计时的基础,但是也有一个简单的例外。网格不再是一个帮助观察的助手,而是周期的边界线。
   在此基础上,周期计时的一般概念就得到了解释。通常,时间周期的大小是根据DUT(受试器件)的系统时钟来决定的。规定周期的大小使之适应各个信号的变动。选择周期大小的最佳办法是,在任何指定的周期内,DUT的非时钟输入信号跳变一次的时间。图1中的波形仅需要半个时的周期。这是因为在一个单独的时钟周期中信号有两个转换。所有的周期必须有同样的长度。每个周期转化为一个单独的向量: 在特定时间点上的信号及其值的集合。
   为了使周期的计时作用发挥得当,测试工程师和验证工程师应当制定一些关于何时可以发生信号转换的规则。在软件模拟时,验证工程师能在任何时候都很容易地触发一个信号而不必顾及这些规则(图2)。而测试工程师则需要解释为什么ATE上的管脚电子装置能将电子的和物理的限制施加于信号转换。
   对机关枪工作的模拟能够很好地解释ATE的局限性。在发射一粒子弹的同时,又装上了另一粒子弹。如果装弹和发射之间的时间周期不一致,机枪就会卡壳或不发火。ATE系统的管脚电子装置按类似的方式工作。当一个向量被射入DUT时,管脚电子装置己为下一个向量做好了准备。如果没有适量的时间,管脚电子装置就不会向DUT发出恰当的信号。
   对于单个的输入信号而言,如果需要的话,管脚电子装置需要知道一个周期中在哪一点上需要触发相应的信号。如果向量集要求在不同的周期中、在不同的点上触发DUT上的同一个管脚,那就需要为输入管脚分配更多的时钟源,这通常要以使用一个未用过的管脚的管脚电子装置为代价。对于未接触过ATE的人来说,这看起来并不苛刻,但这是验证工程师必须认识到的关键性的一点。进而,可以对两个具有相同型号的ATE系统进行不同的配置。那些在测试原型设备用的ATE上工作过的器件,对于制造厂中所用的ATE而言,也许是不可利用的。


  波形例子
   这些例子阐明了在一个允许信号跳变的周期中与时间相关的许多问题。对于图3中的例子而言,假设该周期是以时钟的正上升沿为基础的,而且该沿也恰恰是活动有效沿。在图3a中,信号将需要两个时钟沿。前面两个转换点出现在时钟的下降沿上。第三和第四个转换点在下降沿之后1毫微秒出现。在图3b中,信号a和b不是以向量模式触发的,对于要包括非触发信号在内的一系列向量而言,这是可以接受的。
   图3. 抽样波形说明了所需的ATE时钟源。a)和c)需要两个时钟源,而b)和d)并不会引起计时问题。
   在图3c中,信号在时钟的下降洞触发,并在下降沿之后1毫微秒降落。虽然只有两个转换,仍然需要用两个时钟源来处理信号的上升和下降。在图3d中,不存在计时问题。信号a和信号b在它们各自的周期内开关的点是一致的。要记住,已给每个信号分配了一个时钟源。信号a和信号b具有相互排斥的时钟源。如果必须触发该信号,就应在任何指定的周期内,在同一个相关点上及时触发它。例如,如果需要对信号进行触发的话,信号a总是在时钟的下降沿上触发,而信号b则在时钟的正上升边缘之后1毫微秒内触发。

  从VCD(向量转储)到环化的测试模式
   困扰测试-验证关系的问题之一是完成功能校验和硅(货样,成品)到达之间的时间间隙。这个时间间隙通常是以月来计算的。为了确保可转换的向量,在产生VCD 时,需要将测试与校验融合起来。测试可以提供直接的反馈并能矫正可能妨碍VCD模式环化的任何误差。如果在硅到来之前放弃了测试,就会使实行转换变得非常困难(图4)。VCD是一个ASC II文件,它包括标题信息,也定义变量,并列出所有变量值的变化。建立测试模式的时候,需要使用VCD。在确保测试质量方面,高质量的VCD将会长期发挥作用。
   一旦接受了VCD, 就需要将它们转化为可装载的测试模式。各个工程公司用以创建和转化VCD的方法是有所不同的。某些公司使用适当的工具来完成这个任务,而另一些公司则使用商用工具。此外,ATE的模型和样式也起一定的作用。
   环化是第一道工序。在这道工序中,必须检查VCD的计时问题以确定一个信号是否有多个计时任务, 并为ATE确立周期边界。如果VCD中有不正确的计时信息,您就需要与验证工程师一起对它们加以纠正。大多数商用工具可以让测试工程师纠正计时误差,但是要尽量避免这样做。如果通过手动方式将更改输入到了环化工具之中,更改就可能在后来的环化运转中丢失。
   如果有计时问题存在,就需要向验证工程师提供反馈。要鉴别违反规则的信号,还要鉴别有问题的VCD及模拟中有误差出现的点。这些信息将能加速校正。
   环化产生了两个终端产品。一个是像标准的WGL那样的ASCII格式化文件,它可以被转化到ATE自动测试设备中(专用的二进制模式)。另一个终端产品是像Verilog或VHDL之类的RTL型语言测试台。这些文件包括许多的波形集,验证工程师可以通过观察它们来确保从原始的VCD到WGL格式的环化不会丢失、改变或增添信息。
   尽管环化可以刷新VCD中的计时问题,但也可能引入其它的错误:它能改变双向缓冲器的状态;影响ATE用来检查器件输出结果的窗口的选通性能;还会导致丢失或延迟波形。由于在ATE上调试向量浪费时间,验证工程师应当再检查这些向量。如果测试台有问题,相应的WGL就会有问题,会在测试工作中暴露出来。
   一旦负荷交换台安置就位并且装上了向量,便可开始调试和设置了。在此阶段,许多验证工程师可能认为他们的目的己经达到了,于是就转向其它的项目。然而,验证工程师在评价失效数据和决定是否进行特性描述或re-spin方面仍起着关键性的作用。

  需要交流的其它要点
   您可以采取几个步骤来确保接收到有用的VCD。
   · 加入设计小组。在项目开展初期就参与项目的工作,有助于防止某些重大的问题。因为设计小组中的许多成员可能只会处理软件,所以需要解释测试硬件的限制。例如,可能会需要解释您公司的200针测试仪不能处理计划中的400个管脚器件的原因。测试工程师应在项目开始阶段就参与到项目中去的另一个原因,是为了防止重复劳动。如果若干验证工程师在周期模拟中一起去模拟使用不同计时延迟的器件,就会引起许多问题。这些问题包括不能从多个验证工程师那里把向量集组合在一起,不必要地使用ATE资源,并超出在ATE上可得到的测试器资源的范围。
   · 目的是编制一个包括VCD模式在内的单一的测试程序。将向量模式装入到ATE存储器中需要花几分钟的时间。对于一位测试工程师或一台生产设备而言,要分别装载和测试每个测试模式是不经济的。不管做何用途,由验证工程师提供的VCD应当代表在DUT上的各个I/O管脚。
   · 为了顺利地进行环化工序,应鼓励验证工程师避免使用以下字符,如等来命名器件管脚。这些字符可以在创建 Verilog、C/C++时使用。
   · VHDL不能在用于环化或转化向量的工具之中工作。
   · 鼓励验证工程师开发许多较小的VCD模式而不是一个大模式。在环化时调试一个大的VCD文件是极为困难的。如果验证工程师正在写一个自定义代码用以仿真某一器件,他很有可能将额外的延迟偶然地加到要送入VCD文件的信号内。在ATE上进行器件调试时,具有特定目的的短测试将对调试有所帮助。对于验证工程师来说,解释一个特定的功能失效要比接受一个大的通用向量集中的向量失效的近似值要容易一些。测试工程师和验证工程师都不想在功能模式中发现一个出现在向量634678上的问题。
   较小的测试模式集的另一个优点是您可以绘制一个故障Pareto图,以确定合格率。您还能用此图来确定是哪一个向量集正在引起故障。通过排除不引起故障的向量,就能缩短整个测试的时间。
   测试经济学讲述了一个关于需要短测试的令人信服的故事。大多数生产设备使用测试装置的费用大约是350美元/小时,因此每秒钟的费用为0.097美元。所以对于一批有100万块的芯片而言,每批芯片每秒钟的测试费用是97,000美元。
   · 建立通用向量。如果用于调试和特性描述的ATE不同于生产上用的ATE,那么验证工程师创建一个通用的VCD就显得很重要了。用于将VCD转化为测试向量的转换程序可以有它自己的限制。许多公司仍然使用自定义的转换程序。目前尚未对这些程序进行更新,以适应较新的测试系统的能力。软件流程有重要的作用,特别是在需要双重转化的时候,例如从VCD转化到WGL、再转化到ATE系统的特定模型和样式。
   遵守您的硬件和软件所要求的限制条件,就能生成高质量的向量。即使您的ATE系统能够处理投向它的任何波形,在生成向量时,您也不会变得无所适从。

  如果项目小组遵守上述的建议,您就能够利用各个压缩方法快速地将向量装入存储器,还会得到处理特性描述模式的灵活性。扩充和压缩一个现有的测试模式集,要比制作具有不同速度的VCD更容易一些。
   验证工程师或许担心他们所面对的限制(例如是否能得到仿真的许可证号),但他们或许不知道您所面临的限制:例如,在指定的时间一个测试工程师只能使用一个ATE系统。需要对这些事实进行交流。需要将测试时间用在调试器件上,而不是用在处理向量问题上。验证工程师应当知道器件测试仪的使用时间,以保证有充足的时间来传送任何向量变化,以便于您转换它们,并证实这些向量是可以装载到测试系统上的。
   有数以百计的关于器件可能会在ATE上失效的原因。项目成员协同工作以了解问题之所在,就可以加速调试,并使这项工作成为团队的成绩。如果现场有测试设备,则可邀请验证工程师到现场观察ATE的运转。验证工程师应当了解ATE系统的基本测试能力。在特性描述和调试时,验证工程师应当能解释器件可能会发生一些什么。验证工程师还能利用仿真和调试台来进行一些简单的测试,这些测试有助于调试和特性描述工序。让验证工程师充分发挥他们的技能、应当从测试工序的培训教育开始。

顶一下
(4)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
用户名: 验证码: 点击我更换图片