深亚微米工艺能够集成更多的逻辑门,从而将更多功能集成在微小的单芯片上,但是,验证功能和测试芯片的困难却越来越大,设计工程师常常抱怨,功能验证时间已经占到整个设计周期的百分之七十。
作者:Robert Ruiz
纳米分析测试事业部
产品营销经理
Synopsys公司
Swaminathan Venkat
验证技术组
营销经理
Synopsys公司
要充分测试硅片中的数百万门电路,传统的基于故障模型的验证方法已经不再适用。某些EDA公司正在开发新的验证技术,但是面对紧迫的设计时限和高度复杂的芯片,设计和测试工程师仍然面临新的挑战。
传统的功能验证工具已经落后于芯片工艺和设计工具的发展,因而难以适用深亚微米设计验证的需要。为了迅速有效地验证复杂IC和系统级芯片(SoC),有设计工程师采用硬件描述语言(HDL)来建立验证代码,但是,HDL语言的作用是模拟硬件,它并不具备高级抽象和复杂系统功能验证所需要的特性。
为此,设计工程师经常采用C/C++通用编程语言建立测试平台或验证工具。然而,通用编程语言不支持硬件,例如,C/C++都不支持时序、时钟、高阻抗、未知状态或者协同等特性的描述。
由于传统的HDL 和C/C++方法存在局限性,必须寻找其它验证语言和工具。当评价验证语言和工具时,工程师应掌握评估的依据。首先,验证语言和方法必须支持可复用代码的开发,这样将加速测试平台的开发,并且减少总的设计验证时间,缩短产品上市时间。复用或共用代码也将减少功能验证的费用。
产品上市时间不断缩短,迫使设计人员协同研制软件和硬件。因此,理想的验证环境必须支持软件、硬件或者RTL代码的无缝连接。因为协同性是数字系统固有的特性,理想的验证环境必须具备指令发出、进度表和描述并发事件的功能。
为了验证数据路径密集的设计,验证环境必须提供所有可能的激励模式。对于复杂度很高的数百万门电路设计,功能测试必须借用伪随机代码发生器,因此,验证环境要考虑到伪随机代码生成的快捷性,并使该随机代码能根据要求预先再生。
优良的验证方法必须支持对仿真结果的动态检查,在验证数百万门SoC设计时,几乎不可能建立测试文件并观察到正常工作时的仿真波形,因此动态检查特别重要。
目前,能够解决上述问题的工具已经在开发之中,但是,设计和验证工程师掌握EDA工具的演变过程势在必行,只有透彻掌握复杂的芯片验证技术,工程师才能适当地评估用于设计的新技术。
测试费用上升
芯片的复杂度对器件的测试影响很大,复杂SoC的逻辑门数量巨大,完全测试器件非常困难。如果要建立足够的测试矢量来完成测试工作,就要利用昂贵的测试仪器并花费大量时间。 据芯片行业人士分析,测试成本占每个晶体管投资的比重日益增加,随着设计复杂度的不断增加,SoC设计过程中制造测试费用将超过其它开发费用,这显然无法接受。
许多EDA工具的用户认为,采用传统的单故障(SSF)模型的测试方法,即使测试程序的故障覆盖率高,但是仍然难免漏过某些缺陷,因此SSF模型不再适用于深亚微米工艺芯片。
传统的模型假设每个门的输入和输出固定保持高电平或低电平(“0”或者“1”),但是,在深亚微米工艺存在桥接缺陷,这时系统的功能正常,但是运行速度很慢。 弥补SSF模型不足的方法是进行其它测试,例如IDDQ测试和延迟故障测试。为了充分测试芯片,许多工程师正趋向采用结构化可测试性设计(DFT)方法,例如全扫描插入法,将该方法与自动测试模式生成(ATPG)结合起来,设计工程师就能实现高故障覆盖率并仍然保留有价值的ATE资源。
然而,设计规模和复杂度正呈现爆炸性增长,扫描DFT的三个问题值得注意。
首先,扫描方法必须集成到所有芯片和验证流程之中,因为设计工程师不可能花费很多时间学习测试技术。这就要优化综合工具,扫描可测试逻辑以及高级设计流程中的所有工具必须具备理解测试逻辑的能力。 在考虑器件的功能、时序、面积和功耗要求之前,必须完成综合工具的优化。过去,通常在设计后期插入测试结构,从而影响一个甚至所有设计参数,造成项目在设计工程师和测试工程师之间要反复多次,浪费大量时间和人力。
其次,ATPG要与高级设计流程相结合,从而使相关的设计和测试属性能自动转移,最大限度地减少学习过程对设计工程师的影响。设计复杂性日益增加,因而人工设置ATPG容易出错,劳动强度也很大。当设计过程出现遗漏或者需要增加新内容时,ATPG方法必须使用方便并支持有效的诊断和调试。为了满足辅助测试技术的需要,除标准SSF测试之外,ATPG工具也必须提供作IDDQ测试的方法以及延迟故障测试方法。
最后,ATPG测试方案必须能提供测试结果和量化的性能描述,同时,ATPG必须用最少的测试矢量获得最理想的测试结果和尽可能最高的故障覆率。
ATPG必须集成到高级设计流程中,对于高级的ATPG产品,模式生成过程要增加特殊的要求,以提高设计工程师和测试工程师的设计效率。DFT已经成为高级设计流程必不可少的组成部分,但ATPG一般也仅在尖端设计过程才使用。正因为设计工程师使用ATPG的频率低,ATPG工具必须十分容易连接和应用。当ATPG工具发现了测试性问题时,及时提供诊断信息很重要。在数百万门的SoC设计中,故障定位极端困难,高级ATPG产品要帮助设计工程师发现和解决问题。
ATPG是门级验证技术,因此它必须性能领先。ATPG性能按三种相关的规则衡量:测试结果的矢量质量(QoR)、容量和执行速度。QoR是一种把故障覆盖与矢量压缩相结合的规则,最理想的矢量QoR具备最少的矢量和最高故障覆盖率。简单地说,容量指能装载到给定的工作站平台上的最大可能设计,执行速度是完成给定故障覆盖和矢量压缩所需要的时间。
最大运行时间
ATPG性能的评估依据是在最大运行时间条件下,给定设计可达到的矢量QoR最高值。当然,运行时间与矢量QoR直接相关,时间长度与故障数量和难度成指数关系,在高级的矢量压缩时,运行时间急剧增加。评价ATPG容量的准则是设计与工作站的运算能力是否匹配。推知容量的一种方法是判断ATPG要求的每个门的字节数,尽管这样做不精确。
要真实地评估ATPG工具的质量,应该在结合矢量QoR、容量和运行速度的基础上,再综合到设计流程中进行评估。当选择ATPG方案时,如果要评价所有要求,则这些要求应该包含设计工程师需要的所有特性和性能。
文章评论(0条评论)
登录后参与讨论