本文所用的SoC测试案例由硬盘控制器(HDC)、16位微控制器、微控制器使用的程序和数据SRAM以及用8M位DRAM实现的片上缓存组成,再加上时钟综合PLL、带外部旁路晶体管的稳压器使用的片上控制电路组成一个完整的系统。该器件采用的是0.18μm的铜工艺,与前几代技术相比增加了性能、降低了功耗。另外,DRAM也采用了深亚微米技术,因此在一个器件中可以包含进一个完整的系统缓存(1MB)以及自动刷新逻辑,而且使用的硅片面积还比以前小。
图1:扫描模式配置。 |
本文还讨论了DFT和DFM所采取的对策,包括为了实现更快的良品率学习曲线而采用面向分析工具的设计、为减少测试成本而采取的并行测试方法。DFT和分析存取是通过IEEE 1149.1的JTAG控制器实现的。除了专门的存储器测试和ATPG扫描外,JTAG控制器还能为组成完整SoC的各个不同单元提供各种测试模式配置。所采用的设计对策决不是只有唯一一种可能性。由于存储器在器件中占了45%的硅片面积和86%的晶体管数量,因此需要对存储器加以重点关注。存储器测试是重点考虑和努力开发的对象。
SRAM有两种测试方法,具体取决于SRAM在系统中的用途:CPU存储器(代码和数据)是通过微控制器进行测试的,需要特殊硬件配置和测试模式的支持;与HDC相关的SRAM采用存储器BIST电路进行测试。DRAM则通过BIST控制器进行测试,而DRAM BIST自身利用扫描和ATPG进行测试。大多数数字逻辑是完全综合过的,而所有数字逻辑都要经过ATPG扫描测试。另外,象PLL和稳压器控制等模拟电路则采用特殊编制的程序在特殊测试模式下进行测试。本文首先介绍系统级芯片本身,包括SRAM和嵌入式DRAM,然后简要讨论用于指导DFT和DFM开发工作的分析与生产测试对象,最后阐述了SoC中采取的分析和生产测试对策。
系统级芯片概要
为了有助于了解生产测试与分析所采取的对策,首先让我们看一下SoC的一些细节,当然本文提到的所有性能都需要进行测试。这款SoC的主要系统组件有:16 位微控制器、ASIC逻辑(硬盘控制器或HDC)、微控制器使用的SRAM、片上缓冲DRAM、时钟综合PLL、硅工艺-电压-温度(PVT)传感器以及带外部旁路晶体管的稳压器用的片上控制电路。
1.微控制器
这款SoC中的微控制器是C173系列处理器的衍生产品,是专门为控制应用设计的16位器件。除了16位的C163内核外,它还有一个乘法累加单元(MAC)、外围通用定时器(GPT)、异步和同步串行控制器(ASC,SSC)和脉宽调制器(PWM)。整个微控制器是由综合过的逻辑实现的,可以很方便地在应用之间移植。
2.ASIC
硬盘控制器(HDC)是用大约25万个NAND等效逻辑门实现的。该HDC的主要特点之一是能够提供功能强大的节电模式。微控制器、HDC部件、存储器和 PLL等各自所实现的节电模式是不同的。微控制器可以被切换到空闲或睡眠模式。在空闲模式下控制器内核停止工作,但通用定时器和PEC控制器等外围设备仍在正常运转。只有进入睡眠模式后外围设备才被切断电源,此时只有中断控制器能唤醒微控制器,并使其返回到正常的工作模式,中间过程不会丢失任何数据。中断控制器是由相应的硬件信号驱动的。
针对HDC的操作特殊性,HDC还提供另外一种电源关闭模式。每个模块的电源都可以被独立关断,或者时钟系统速度可以降低8倍。这些节电模式的灵活组合就形成了活动、空闲模式1、空闲模式2、等待、睡眠等各种符合ATA规范的节电模式。通过这些措施可以使SoC的功耗从270mW降到54mW。
图2:MSIST配置。 |
3. CPU SRAM
上述这款SoC集成了80KB的程序SRAM、8KB的数据SRAM以及直接与微控制器相连的2KB双端口SRAM。
4. 缓存DRAM
一个完整系统的集成中心是嵌入式DRAM,在本例中即是1MB或8Mb的片上存储器。DRAM可以在没有离开芯片的总线条件下提供程序和数据存储,所有这些的功耗在全负荷情况下也只有0.1瓦。内部256位的数据总线宽度允许全速访问DRAM,而片上缓存还可以优化CPU对程序存储器的访问。DRAM本身在发生页面改变这种最坏情况下(随机存取)的存取时间是20ns,在页面突发时的存取时间是7ns。
5. 系统单元:PLL、PVT、稳压器
PLL 所需频率的时钟产生都是靠片上的500MHz PLL实现的。这个PLL是一个全定制的宏,由JTAG控制器控制其测试模式。工艺-电压-温度(PVT)单元用于向SoC报告环境状况。SoC负责通过一个标准的ATA接口建立与主计算机之间的通信。为了充分满足信号完整性要求,系统必须对各种操作状态作出反应,如电缆和主机接口特性等静态环境条件、不稳定的温度和电压等动态变化等。另外,给定器件的工艺参数会在制造用的工艺窗口范围内变化。SoC包含PVT单元就是为了及时对这些因素作出响应。PVT 单元能够监视动态/变化中的环境,HDC中的相关逻辑可以自动调整ATA衬垫处的性能参数。PVT单元是一个全定制宏,这个单元的测试模式受JTAG控制器的控制。
6. 稳压器:
作为完整系统功能的一部分,这款SoC配备了用于稳压器的控制电路。该稳压器可以将 3.3V的I/O供电电压转换成1.8V的内核电压。外部旁路晶体管用于控制供给所有内核逻辑所需的电流。SoC包含单个驱动外部旁路晶体管所需的稳压控制电路。稳压器也是一个全定制的宏,其测试模式也受JTAG控制器的控制。
7. DFT和DFM目标
上面简要介绍了这款SoC的设计细节,下面将讨论包括成本模型在内的测试目标,以及通过可测性设计和可制造性设计达到这一目标的主要途径。
SoC 器件在测试成本方面将面临艰巨的挑战,因为器件相对较小,人们希望不需要花很长的ATE(自动测试设备)时间就能完成所有的测试步骤。但嵌入式DRAM测试具有很大的挑战性,因为与DRAM测试相关的典型测试时间就很长。然而,象晶振和PLL这样的模拟单元也应该在理想的时间内完成测试。除了成本外,还必须包含适当的分析工具,但这些分析工具不受时间约束。
DFT和DFM的测试实现
本文讨论的器件有许多测试性能,将在不同的测试配置中被激活。下面将详细讨论主要的一些配置。
通过JTAG[IEEE1149.1]访问的控制器是DFT和DFM的核心,可用来设置和控制所有的测试模式。在用户应用中,控制器通过OCDS(片上调试系统)提供连接到微控制器内核的串行调试接口。在测试中,许多功能模式也可以通过这个接口进行控制。为了推进测试程序开发,可以使用特殊器件 IEEE1149.1指令激活多种生产模式。其它的控制产生自器件的串行JTAG测试寄存器。
1. 扫描ATPG测试
图3:MBIST配置。 |
扫描配置如图1所示。需要注意的是,扫描链的输入边沿正好是相对的,因此在测试仪上可以对多个器件进行并行扫描测试。本文用到的器件比较特殊,因为它整合了层敏感扫描和复合扫描。DRAM的BIST控制器是一家技术合伙公司的某个硬宏中的一部分,具有LSSD扫描功能。设计的剩余部分尽可能地采用了标准的复合扫描触发器。在LSSD扫描电路与内核(复合扫描)逻辑之间没有插入任何隔离逻辑。LSSD和复合扫描的整合存在一定的问题,因为由于时序问题可能会导致某些触发器捕捉值的不确定性,从而失去故障覆盖。LSSD和复合扫描之间的不同时序概念使得很难做到时序匹配,不过借鉴其它设计的经验可以解决这些问题。
考虑到扫描期间某些不想要的模式可能会被激活,可能导致设计的某些部分不会被扫描到,而逻辑部分只占整个硅片面积的很小部分,因此逻辑故障覆盖率的降低是可以容忍的,它不会降低器件的总体故障覆盖率。逻辑部分的单次扫描故障覆盖率大约是95%,而总的单次扫描故障覆盖率将超过98%。
2. SRAM测试
SoC中包含有不同尺寸和类型的多个SRAM模块和DRAM。先来看看SRAM,它们被组合成与微处理器(数据、代码存储器)紧密相连的CPU SRAM以及主要由硬盘控制器逻辑使用的HDC SRAM。有些组是微控制器可以访问的,有些组则不能被微控制器访问。下文将讨论专门用于存储器测试的测试配置,包括通过BIST完成的CPU SRAM测试和HDC SRAM测试以及DRAM测试。
a) 基于CPU的SRAM测试策略
较大的SRAM宏被实现为密集SRAM,其版图经手工优化后将技术用至极限以节省空间和功耗。为了达到更高的良品率,在密集SRAM中还需增加一些冗余单元。为了减少测试成本,测试插入应尽可能少。大多数测试流程是由运行于存储器测试系统中的eDRAM存储器测试驱动的,因此要求也能在存储器测试仪上进行 SRAM测试。由于这样的原因,用于微控制器可存取存储器模块的SRAM测试算法需要被存储在ROM中,因此也被称为MSIST(存储器软件实现的自测试)。很容易在存储器测试仪上对该程序加以控制,也可以经过简单的掩模重设计对它进行修改。测试配置如图2所示。微控制器内核无法测试HDC内部的小模块,这些模块必须通过如图3所示的MBIST(存储器内置自检)结构进行测试。因此在一个专用的存储器测试仪上用单个测试插入就可以执行所有的存储器测试,第二步完成冗余单元的融接。
b) 用于双端口SRAM的软件BIST
通过下载软件和使用处理器实现BIST算法完成对设计中双端口SRAM的测试。并不是SoC器件中的所有SRAM都可以直接被处理器读写,因此可能还需要额外的逻辑,如 FIFO。虽然一般情况下BIST算法不是太复杂,但仍需要为这种方法在准备软件测试式样方面作出一些努力。然而还需十分小心以确保创建片上MBIST逻辑时考虑了RAM的硬件版图(图3)。软件方法的优点在于,至少对于大多数SRAM来说,MBIST执行访问的方式和速度与功能访问完全相同。
c) DFM
所有SRAM测试都能创建位故障图(BFM),一般通过CPU的数据总线输出BFM。这些BFM就是基本的DFM,可以为工艺工程师学习和改善良品率提供必要的信息。
DRAM测试
图4:DRAM测试配置。 |
在过去几年中,嵌入式DRAM测试一直是重点开发对象,在这个SoC器件中已经实现了相关文献中提及的一些想法。DRAM BIST能够进行内置冗余计算(也被称为BISR(内置自修)),但该功能一般不用。BIST逻辑本身是利用ATPG模式和LSSD扫描寄存器进行测试的。DRAM配置用于高度并行的测试。DRAM测试时间一般要比逻辑测试时间长得多,因此我们需要重点关注高度并行的测试以减少每个器件的有效测试时间。
嵌入式DRAM预融接测试是在专门的存储器测试仪上使用直通模式下的BIST完成的(图4)。采用这种方法的原因是可以通过减少冗余修补计算时间和高度并行测试缩短测试时间。专用存储器测试仪具有一些典型的优势:为存储器测试算法提供硬件支持,为整个数兆存储器提供存储和分析故障位信息的容量,可以为高度并行测试提供大量充足的电源。
为了方便与存储器ATE一起使用,对本文提及的SoC器件做了适当的修改。为了配置成存储器,该器件需要最小的测试模式输入(预备序列)。一旦配置好后,就能提供典型的包括可访问冗余数据输入和输出的存储器接口。通过限制地址和数据输入的数量以及在裸模的二个相向边沿物理定位所有必须的衬垫实现高度并行的测试(图4)。
利用BIST完成DRAM测试
如前所述,DRAM模块内含一个BIST控制器,可以利用一条IEEE1149.1指令对芯片作出适当配置后激活该控制器(图4)。当融接完成后,可以不用专门考虑存储器修复即可在标准逻辑ATE上进行DRAM测试。所需的连接数量也有大幅下降,因为BIST可以产生地址和片上控制信号,并产生单次通过/失败结果。
DFM原理可以用来指导DRAM结构的开发。重点不是限制衬垫的数量和位置,而是使嵌入式存储器具有最大的可控制性和可观察性,并可以通过JTAG控制器选择最小测试模式入口序列。然而,实际使用的是更宽的控制和数据总线访问,包括裸片各边沿上的衬垫。这种模式适用于故障分析,在生产测试过程中并不使用,因为SRAM测试同样会创建位故障图,并将它传送给ATE用于进一步分析。
上述SoC 器件中包含有二个环形振荡器,主要用于生产期间的速度测试。这二个环形振荡器的固有周期约为2ns,并各自连接32分频逻辑电路。因此典型的外部周期是 64ns,由此产生的速度就可以用标准的ATE进行测量。为了方便比较走线和门延时效应,通常使用一个具有密集版图的环形振荡器和一个具有人工分布版图的环形振荡器。环形振荡器的测试结果表明了硅片速度,从而允许用户跟踪工艺变化,并排除速度太慢或太快的器件。
本文小结
本文主要讨论了一个具有可测性设计和可制造性设计的新型单片系统,同时提出了这样一个集成了嵌入式DRAM和模拟模块以及较常见的数字逻辑和静态RAM的系统在生产测试中所面临的挑战。为了满足测试要求,需要采取各种不同的策略,同时利用单个标准的IEEE1149.1接口将被测器件配置成各种相应的模式。
将来设计师必须了解更多的测试信息。随着技术和密度的提高,制造商可以在单个芯片中集成更多的单元,设计师只具备扫描和BIST技术的基本知识是远远不够的。为了针对任何特殊器件选出最适合的测试策略,设计师必须通晓各种可能的器件生产测试方法。
上一篇:扣式电池的充放电测试
下一篇:在电路测试阶段使用无铅PCB表面处理工艺的研究和建议
推荐阅读最新更新时间:2024-03-30 22:21