- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
系统级芯片设计初期的测试规划策略
系统级芯片(SoC)的特点与众不同,主要体现在如下多个方面:用户定义的各种逻辑、大型存储器阵列、内核、IP、可编程逻辑、微型宏以及散布在各种模块中的数百种不同种类的小型存储单元。SoC的基础是深亚微米工艺,芯片中门的长度仅为0.3微米或更细,因此,对Soc器件的测试需要采用一种全新的方法。
作者:Ron Press
技术销售经理
ATPG产品部
Mentor Graphics公司
Janusz Rajski
首席科学家兼营业部经理
ATPG产品部
Mentor Graphics公司
由于每个功能元件都有其自身的测试需求,设计工程师必须在设计初期就做出测试规划。过去,晶体管越多意味着ATE系统上的测试模式越多,测试时间很长。如果不能找到有效的方法,测试成本将急剧增长。在更高频率的测试中,测试仪器为了与器件时钟频率保持一致并获得更高的精度,通常导致成本大为增加。即使测试成本不成问题,某些制造商分配给芯片的测试时间也很有限。
因此,为SoC设备提前做出的逐块测试规划必须达到下列要求:正确配置用于逻辑测试的自动测试模式生成(ATPG)工具;较少的测试时间;新型高速故障模型以及多种内存或小型阵列测试。对生产线而言,诊断方法很重要,它不仅要找到故障,而且还要将故障节点与工作正常的节点分离开来。此外,只要有可能,就必须采用测试复用技术以便节约测试时间。在高集成度IC测试领域,ATPG和IDDQ的可测试性设计技术具备强大的故障分离机制。
测试容量边界
必须提前规划的其他实际参数包括:需要扫描的管脚数目和每个管脚端的内存数量。设计工程师很可能会在SoC上嵌入边界扫描,但并不限于电路板或多芯片模块上的互连测试,它还能充当一个端口,通过这个端口可访问内置的测试逻辑和扫描电路。
尽管芯片尺寸在不断减小,但一个芯片依然可封装几百万个晶体管(目前,封装水平已达到1亿个晶体管),测试模式的数目已经增加到前所未有的程度。这不仅导致测试周期变长,而且在某种程度上工作站还面临资源耗尽的危险。第一个问题可将测试模式压缩来解决,压缩比为20%至60%也不为过。无论如何,对现在的大规模芯片设计,为避免出现的容量问题,有必要找到在64位操作系统上可运行的测试软件。
此外,测试软件也面临着深亚微米工艺和频率不断提高所带来的新的测试问题。过去测试静态阻塞(stuck-in)故障的ATPG测试模式已不再适用,在传统工具上添加功能模式却难以发现新的故障。较好的方式是,对过去的功能模式组进行分类以判断哪些故障无法检测,然后创建ATPG模式来捕获这些遗漏的故障类型。
同步测试
实际上,随着设计容量的增大以及每个晶体管测试时间的缩短,设计工程师对于功能模式的依赖程度将越来越低。为了找到与速度相关的问题并验证电路时序,必须采用同步测试方法。
同步测试必须结合多种故障模型,包括瞬变模型、路径延迟和IDDQ。
瞬变性故障模型可由门电路I/O端的总延迟表示,它们与阻塞故障模型类似,但还包括发送和捕获事件。发送事件由一个延迟模型的终端来初始化一个瞬变过程,捕获事件则在一个预定义的窗口内对发送事件的响应进行取样。
如果一个终端存在瞬变性故障,那么这些事件将慢慢地出现在捕获点上,看起来就好像是一个阻塞故障。与此类似,路径延迟故障是一种延迟的模型,在这种延迟中,从启动到捕获的整个路径由用户借助于时序分析工具来定义。最后由用户创建相应模式对路径进行同步分离和测试。
扫描逻辑在每个扫描单元处提供控制和观察点。这些扫描单元用于在瞬变和路径延迟测试期间发送和捕获事件。这种高层次的内部访问使得瞬变和路径延迟模式的生成变得较为容易,甚至使得电路设计内深层次逻辑的生成也变得较为容易。
惠普(HP)公司和其他一些公司的认为,将阻塞故障、功能性故障以及瞬变/路径延迟故障结合起来也许是最为有效的测试策略。对深亚微米芯片和高频率工作方式,瞬变和路径延迟测试则更为重要。
但高频率还带来了另外一个问题:目前使用的ATE不能提供足够快的激励源,而且它所使用的激励源无法与片上时钟的精度匹配。精确的同步测试是发现时序偏移的重要手段。
要解决同步测试内核时的ATE精度问题,并降低成本,就必须找到一种新的方法,这种方法能简化测试装置的接口 (瞬变和路径延迟测试要求测试装置接口处的时钟准确),同时能保证测试期间信号有足够的精确度。
降低成本
通常,当一种芯片的时钟发生器采用锁相环(PLL)时,就可能采用PLL/BIST(内置自检)方案,或将外部ATE同内部PLL时钟控制方法结合起来。在前一种方案中,即使最为昂贵的测试装置也无法在频率和精度上同片上时钟完全匹配。任何一种方法都应有助于降低测试成本,因而寻找同步测试方法就成为了商用ATPG软件的首要任务。
最近,Motorala公司公布第四代PowerPC微处理器的测试进展,之所以能够取得这些进展是因为采用了一个内部PLL,从而在扫描测试过程中能生成发送和捕获事件,从而进一步提高了时钟的精确度。Motorola的测试规划包括测试大型存储器的BIST、测试小型阵列的专门技术以及边界扫描技术。
在设计早期开发存储器BIST电路对大型存储器阵列非常有用,它可产生内部测试模式,能够并行测试多个器件。另外,存储器BIST可以内部时钟频率运行,无需依赖于测试装置产生时钟或保持长模式集合。
由于SoC内存块中极有可能存在制造缺陷,因此存储器BIST必须具备诊断功能,一旦发现问题,存在缺陷的地址单元就可以映射到备用地址单元的冗余内存,检测出的故障地址将放弃不用,从而避免舍弃整个昂贵的芯片。
对小型嵌入式内存块进行测试,无需另加门电路或控制逻辑。例如,一种称为向量转换的测试技术(曾应用于明导的 FastScan Macrotest中)可将功能模式(用于通过外围电路的随机逻辑来测试一种特定块)转换为一系列的扫描模式。
与BIST方法不同,旁路内存块的功能输入不需要额外的逻辑电路。这种技术非常适用于小内存或小IP的模块,这些内存所需要的测试模式数目相对较少。由于不需要额外的测试逻辑,SoC开发工程师可复用过去形成的测试模式。
高级的ATPG工具不仅能够并行测试宏而且能够确定是否存在冲突,以及详细说明哪些宏可并行测试,哪些宏为什么不可以并行测试。此外,即使宏时钟与扫描时钟相同(如同步存储器),这些宏也可得到有效测试。
在目前的密集双面板上的测试点不够多,每个复杂的芯片都必须配备边界扫描电路。如果没有边界扫描,板级的制造缺陷查找就相当困难,甚至无法查找。借助于边界扫描,板级测试就极为容易,并且与芯片内的逻辑电路无关。边界扫描也可在生产的任一阶段将ATPG模式配置到芯片的扫描链上。
图题:系统级芯片(SoC)包括多个功能模块:用户定义的各种逻辑、大型存储器阵列、内核、IP、可编程逻辑、微型宏以及散布在各种模块中的数百种不同种类的小型存储单元。不幸的是,不同功能模块需要不同的测试方法。