SoC中混合信号的测试
作者:刘全喜,何怡刚,刘美容,彭浴辉 时间:2006-10-22 23:14 来源:
摘 要:随着经济社会的发展,人们对消费类电子的多媒体功能要求越来越高;这极大促进了SoC中混合信号工艺的运用,但是随之而来的是SoC在测试上遇到了前所未有的难题,因为混合信号电路的集成使他不同于纯数字电路IC的测试。SoC中混合信号的测试是SoC进一步发展的瓶颈,这对研究提出了紧迫的要求。介绍SoC中混合信号测试面临的主要问题,着重讨论了混合信号边界扫描测试,内置自测试方法(BIST)等测试手段及各自的特点。展望了SoC混合信号测试的研究方向。
关键词:SoC;混合信号;扫描测试;内置自测试
引 言随着半导体科技的进步,我们已经可以把越来越多的电路设计在同一个芯片中,这里面可能包含有中央处理器(CPU)、嵌入式内存(Embedde Memory)、数字信号处理器(DSP)、数字功能模块(DigitalFunction)、模拟功能模块(Analog Function)、模拟数字转换器(ADC,DAC)以及各种外围配置(USB,MPEG,……)等,这就是SoC(系统单芯片)技术。目前,很多具有中央处理器功能的消费性电子产品,如视频转换器(Set-top box)、移动电话(mobilephones)和个人数字助理(PDA)等,都可称之为SoC(System-on-a-Chip)芯片。SoC集成了多种逻辑、存储器及模拟功能,大量使用了源于内部或第三部分、具有特定功能的嵌入芯核,设计上极大地发展了复用概念。现在各种系统级芯片不断问世,呈现出很强的发展势头。这类产品不仅在市场上占有重要地位,且其销售量还在不断地增长当中,已经越来越成为消费性电子的主流产品。
面临的主要问题
SoC芯片内部非常复杂,研发制造的技术一直处于持续改进的状态。同样的,在测试上也遇到前所未有的难题。混合信号测试,是指对含有A/D,D/A,锁相环等兼有数字和模拟2种信号的混合电路芯片的测试。他是SoC进一步发展的瓶颈所在,使得SoC中测试成本远大于设计成本。
混合信号的系统集成是SoC测试所面临的最严峻的挑战。目前,SoC中混合信号测试面临的主要问题有:
(1)仿真时间和准确性;
(2)在深亚微米工艺下,版图布线的负荷已成为主要的时序影响因素,当生产工艺小于0.35μM以下时,因为布线而造成的时序差异和延迟常常超过模块中电路设计的差异和延迟;
(3)天线效应(Antenna Fffect):当走线过长时产生的天线效应会对电路的时序产生影响;
(4)交叉干扰(Cross Talk):当两条平行的走线非常靠近时,他们之间的耦合效应会产生交叉干扰,也会对电路的时序造成不利影响;
(5)如何用高级或抽象模型来模拟内部故障;
(6)由于非理想加工所导致的元件容差模型的建立;
(7)用DC,AC和瞬态输入输出数据处理时域和频域信息的能力;
(8)用行为模型精确描绘由于激励电路故障引起的信号超出规定输入范围的情景;准确预测节点电压和电流来支持电压和电流测试策略的能力。
SoC中混合信号测试
混合信号边界扫描测试微电子技术、集成电路封装技术和印刷电路板的制造技术的飞速发展,使印刷电路板越来越小,电路板上的器件密度和复杂性越来越高,集成电路芯片的引脚间距也越来越小,例如,以前DIP封装间距是0.1inch(约2.5mm),这时候传统的外探针测试法和“针床”夹具测试法还可以勉强应对,而现在封装形式的进步,出现了QFP,PGA和BGA封装,引脚数量达到甚至超过200,引脚的间距只有甚至低于0.3 mM,这时候,传统的外探针测试法和“针床”夹具测试法则很难实现。
为了应对日益复杂的大规模集成电路的可测试性问题,联合测试小组(Joint Test Action Group)提出了第一个边界扫描机制的标准,即JTAG标准,并被IEEE采纳,形成了IEEE1149.1-90标准。基本结构如图1所示。

使用J TAG进行测试时,设计人员使用边界扫描测试规范测试引脚连接时,再也不必使用物理探针,而且可以在芯片正常工作的时候捕获功能数据。扫描测试(SCAN)主要有内部扫描(Internal Scan)和边界扫描(Boundary Scan),内部扫描是一种成熟的时序电路DFT技术,而边界扫描是具有JTAG标准的支持在电路板一级对芯片或板上的逻辑与连接进行测试。扫描测试是可测试性设计中普遍采用的一种方法,也是最成熟的一种测试方法。典型的应用方式有下面4种:
器件功能测试 他是通过IN TEST指令进行器件内部核心逻辑的静态功能测试,由TDI输入测试图形,TDO串行读出响应图形。
互联测试 通过EXTEST指令检测电路板或集成电路内部各个部件之间的电气连接故障或缺陷,如开路、短路和桥接故障等,与器件功能测试不同的是激励加在器件的输出引脚而在输入引脚上采样测试响应数据。边界扫描链的完备性测试 他的目的是确保边界扫描电路本身的功能和连接的正确。
器件存在性测试 确保器件在电路板上或者SoC器件内部各个元件的位置正确或存在与否,这里我们可以提供器件的标志码来检测。
尽管这种测试标准有很多优点,但他只是针对数字电路芯片提出的,因而不能解决模拟数模混合电路的测试问题。为此,组建了P1149.4工作组。工作组的主旨是定义一个标准信号检测总线,将其成文并推动他的使用。在器件级和组件级上使用这个总线会改善混合信号设计的可控制性和可观察性,改善测试质量。他支持混合信号的内嵌自检结构,以减少测试开发时间和测试成本。IEEE半导体工业学会标准委员会于1999年6月批准了建立混合信号测试总线标准的IEEE1149.4文件,IEEE1149.4测试总线能将板上所有芯片与板外的模拟信号激励源和对外激励作出响应的测试仪器相连。对每1块混合信号IC来讲,IEEE1149.4总线规定了芯片上的矩阵开关,从而通过芯片的边界扫描寄存器就能把特定的引脚与IEEE1149.4总线相连。IEEE1149.4向被测的系统级芯片提供了连接模拟激励与响应的路径。符合此标准的器件通过与1149.1兼容的数据寄存器(IEEE1149.1-1990规定的标准测试接入端和边界扫描结构)控制的虚拟模拟开关阵列,就能提供模拟测试能力。通过符合IEEE1149.4标准的混合信号器件的每一根模拟管脚均能输入模拟电流,输出电压响应。总的说来,数模混合电路边界扫描测试的关键在于模拟边界控制模块,如图2所示。AIO1,AIO2是两个模拟输入输出管脚,AB1,AB2为模拟测试总线,AT1,AT2为对应的芯片管脚,DR为数据寄存器,其余为开关。CD代表在测试中把模拟管脚和电路内核断开的机制,其导通阻抗应不影响电路的正常工作。测试的响应由边界扫描链串行输出,也可以由AB1或AB2直接输出到信号检测装置上。

扫描测试基本上是针对数字IC的。对于混合信号测试,Fansang提出了一种用于混合信号边界扫描的设计方法,即充分利用芯片中的ADC和DAC,所有的模拟输出存储到扫描寄存器之前用他们来进行数字化。这种方法在一定程度上提高了模拟和数字部分的可控性和可观测性。但是,并不能隔离模拟块内部的故障。为了进一步提高诊断模拟块内部故障的能力,可以按着ADC,DAC,PLL,运算放大器,振荡器,滤波器等分别进行独立测试。
由图2可以得到启发,借助缓冲器可以隔离模拟块,而其控制由数字电路完成。而且,为了测量开环参数可能要打开反馈环,以免反馈降低了输入的可控性。
一种提高可观测性的方法是对节点增加一个小的金属触点,信号通过一个带缓冲的高阻抗微探针或电子束检测器获得。这种方法对增加为数不多的触点和探针所带来的芯片面积的增加是微不足道的,但是对大规模集成电路,尤其是SoC,“积沙成塔”所带来的芯片面积的增加就非常可观了。对于复杂的电路测试的通常做法是应用扫描链,即运用一系列的移位寄存器,使测试数据通过输入引脚依次传入移位寄存器到达内部节点,测试结果由移位寄存器捕俘,并顺次通过移位寄存器由输出引脚输出。
扫描测试本身也有他的缺欠,如果要实现高覆盖率测试,则扫描测试的数据量将急剧增长。影响数据量的因素包括扫描状态元件总数,目标故障位置总数和被测故障模式的数量和复杂度。而每个因素都会随新一代硅片工艺技术进步而使最后的数据量大幅增加。把这些因素与芯片I/O的数量限制和速度增长,以及ATE通道的物理约束结合起来考虑时,会发现扫描测试时间和成本都将呈指数增长。
全扫描测试的不足之处是要占用较大的面积(有时高达10%到15%),其次电路的性能也会受到一定程度的影响,而且对电路结构的要求也比较苛刻。部分扫描则是选择性地组成扫描链,例如可以将关键路径上的时序单元以及难于满足扫描结构要求的单元排除在扫描链之外,以确保芯片满足面积和性能方面的要求,但其算法比较复杂,需要花费更长的运算时间才能达到更高的故障覆盖率。
内置自测试方法(BIST)BIST是指在设计中集成测试发生电路,在一定的条件下自动启动并且产生测试数据,在内部检测电路故障。BIST在很大程度上降低了对ATE带宽的要求,而且非常适合在使用过程中需要定期测试的电路。从前面的分析可以看出,SCAN和测试总线的确可以大大提高电路的可控性和可观测性,但是,也要看到,在得到测量结果以前,信号需要被传输,因而模拟信号就可能因为寄生和耦合而存在失真和搀杂的问题,而这一点正好给BIST提供了用武之地。BIST不是在ATE系统中存储测试模式,而是将一个激励电路和一个响应电路加在被测电路(CUT)中,激励电路产生大量激励信号,并将其应用于CUT中,响应电路用来对CUT的响应进行评测。总的说来,使用BIST的好处可以归纳如下:
(1)能够大大简化stuck-at故障的连接/次序,减少存储的测试模式;
(2)突破ATE的存储限制,同时可以进行at-speed测试,相对ATE来说,成本低廉;
(3)使得能够并行测试很多单元;
(4)提高和简化元件维护;
(5)减少测试时间,因为内部测试电路运行于在片速度。
BIST技术源于激励-响应-比较的测试机理,如图3所示。模式产生器采用基于线性反馈移位寄存器LFSR(Lined Feed bacK Shift Register)的伪随机法。采用LFSR的原因是不想给测试电路附加另外大量的芯片面积,因而BIST就无法通过ATPG程序创建一个全定制的测试序列,所以一般使用伪随机序列作为测试序列。为简化计算,对产生的测试向量没有加权;响应压缩器采用具有较低错误混淆率的双特征压缩分析器。

为了便于集成,BIST的实现一般可以采用FPGA实现,用VHDL描述的BIST内核如下,其中componentconTrol,vector-gen,signal-analy,compare分别对应于图3中的控制逻辑、模式产生器、响应压缩器及其内核电路。用VHDL描述的BIST内核程序如下:

Runbist是BIST的启动信号,在VHDL中定义中间号Runbist1,其上跳沿真正启动BIST测试;当测试结束时,Runbist1从高跳到低。其中的测试时钟信号CLK的频率应有一个范围,其上限应满足每一个测试从测试向量生成响应压缩的时间要求,下限应使BIST测试过程能在可容忍的时间内完成。在非加权的情形下,测试向量长度等于(2
N-1),N是内核输入个数。因此,BIST测试时间约等于(2
N-1)T
CLK,T
CLK是CLK的周期。
BIST的检测结果可以通过SBCAN传输到芯片的引脚,他的实现方法如图4所示。

与ATE不同,BIST的性能可以不受负载板或测试头电气特性的限制。在可复用内核或SoC内部大的组件上运用BIST,可以大大降低SoC测试生成的复杂程度。由于BIST带有嵌入式测试电路的内核,从而使真正的即插即用SoC设计成为可能。然而其缺点是成本比扫描测试要高,而且还要牺牲IC的一些性能,因为在设计中增加了关键路径延迟而影响设计的性能,测试点插入带来的问题是他可能与高级设计流程不兼容。另外,对于单时钟电路,以系统速度运行BIST相对比较简单。但当CUT内有多个不同频率的系统时钟时,这种方法会变得非常困难。
撇开这些方面,BIST还是得到了不少应用,例如:他非常适合静态存储器SRAM这类规则电路的测试。因为,为了测试存储器,必须要有一条宽的数据通道,而当SRAM深嵌在一个芯片系统之中时,该通道可能很难访问。但使用BIST不需要对通道进行外部存取访问,所以将他用于存储器测试是方便的,特别是在该测试可能与其他测试并行运作的情况下。有一些电子设计自动化供货商提供使设计者易于实现存储器BIST的工具。另外,对于混合信号的测试可以充分利用芯片中的ADC,DAC,这样只用数字测试仪器就可以进行测试,从而大大减轻了测试的难度。当然,BIST同样有很多的难点值得研究,传统逻辑BIST工具仍限定在设计流程,而不是一个综合解决方案,覆盖率取决于随机逻辑BIST,这导致不可预测的设计影响和更低的测试质量,诊断需要专用ATE接口,不能提供完整的信息确定缺陷的位置,测试依赖于长时间自测,相对于在昂贵的ATE上的测试效率较差。
SoC混合信号测试的发展方向
混合信号SoC的出现,在很大程度上促进了测试技术的发展。人们对混合信号的测试的研究焦点已经从最初的故障测试类型和测试方法及技巧上转变到功能建模,系统建模和产品测试上,包括利用CAD进行测试、设计和优化。尽管对于混合信号的测试已经有了测试总线的标准,BIST等方法,但是在前述分析中已经看到各种方法都有他的局限和不完善的地方,针对SoC中混合信号的测试还有很多问题有待解决。
首先,混合信号系统级芯片的建模是一个很大的挑战。VHDL-AMS或者Verilogger HDL-AMS能否像VHDL和Verilog-HDL解决数字电路的建模那样有效地解决混合信号系统的建模还需要付出艰辛的努力。这当中,主要包括混合信号的建模和有效的EDA软件的开发。另外,随着VLSI的集成度越来越高,传统的测试方法如HDL语言描述,测试的效率往往比较低。测试者往往要耗费大量的时间和精力手工进行算法的转化。而由于面向对象的方法在处理复杂问题上的能力较强,而且可重用性较好,而这些特性是SoC的设计和测试飞速发展迫切需要的。所以运用面向对象的HDL语言SYSTEMC+ +进行测试分析也必将成为一种重要的方法。
其次,混合信号SoC测试数据的生成和编码压缩技术的相对纯数字系统来说要复杂得多,在未来的SoC测试中可以考虑应用形式验证。形式验证的优点是可以更早发现设计缺陷,降低周期和成本。由于市场竞争激烈,IC设计规模越来越大,而设计周期却越来越短。能否及时发现错误对设计周期有很大的影响。形式验证工具能够根据设计的结构自动地提取特性(property),表达成作为判断标准的断言(assertion)并且给予验证。由于形式验证的方法不需要验证者给与激励,所以工程师能够在仿真之前较方便地发现一些错误,从而做到最早纠正设计中的不良。其次,断言取代测试用例,减小验证难度。利用基于仿真的验证方法,工程师往往为了验证某一特性而编写一系列的测试用例,甚至要考虑到一些特殊的测试用例。这一切需要花费大量的时间、精力。随着所验证的逻辑的复杂程度不断加大,验证所需的测试用例成级数增长,以至于某些特性已难以用测试用例完全验证。对于形式验证,只要能将特性表达成为断言,形式验证工具能够自动验证特性的正确性,极大地方便了测试者。再次,形式验证不影响原有验证流程,易整合其他验证方法,SoC系统不断增大,以至于任何一种验证方法都难以单独完整地完成验证任务。因此需要各验证方法能够较好地结合,形式验证能够和仿真验证完美地整合在一起,而互不影响,这有利于多个工作组合作。
最后,混合信号系统级芯片的软硬件协同验证研究。通常复杂的系统级芯片的设计由硬件设计人员用Verilog和VHDL完成硬件部分,然后用硬件模拟器做验证。软件设计人员利用汇编,C,C+ +语言完成系统级芯片所需的RTOS内核软件和其他功能软件如通信协议软件等设计,利用处理器模型和ICE来测试软件。软件人员要等到硬件原型完成才能够进行最后的系统集成。很多问题会产生在系统集成的过程中。而软硬件协同验证把系统的集成阶段移到设计周期的前期,这样可以较早消除系统集成的问题。这需要通过创建一个软件/硬件协同验证环境来解决这个问题。快速原型就是其中一个值得研究的方向。
结 语
总之,混合信号SoC的测试需要一系列完整的测试算法和可测性设计技术,需要功能强大的测试平台来进行混合信号的功能和时序验证、接口测试和系统验证。因为市场对高性能、高可靠性、短设计周期的混合信号SoC的渴望是如此之巨大,以至于随着消费类电子市场不断地增大,将极大地推动混合信号SoC测试的研究及其在工业上的应用。