基于UltraFlex系统进行LVDS接口芯片的测试方法
2014-03-22苏洋
苏 洋
(中国电子科技集团公司第58研究所,江苏 无锡 214035)
基于UltraFlex系统进行LVDS接口芯片的测试方法
苏 洋
(中国电子科技集团公司第58研究所,江苏 无锡 214035)
高速接口通常采用差分信号实现,LVDS接口可以满足高速信号传输,对具备LVDS接口芯片的测试方法与单端信号的测试有较大差别。描述了如何使用UltraFlex测试系统进行LVDS接口芯片的测试方法,包括通道分配、测试接口板设计和相关测试设置等内容。此方案已经应用于800 Mbps多路LVDS输入和输出接口的测试。
LVDS;ATE;信号完整性;动态测试向量
1 引言
LVDS是一种低摆幅的差分信号技术,LVDS具有高速率、低功耗、抗干扰能力强、低EMI等优点,在高速信号传输中有广泛应用。LVDS接口芯片的验证和测试对测试系统和测试接口板设计均有比较高的要求,本文介绍了如何使用UltraFlex进行LVDS接口芯片的测试,从LVDS接口原理、DUT概述、测试系统程序设置和测试接口板设计几个方面详细介绍了如何完成LVDS接口参数的测试。
2 LVDS接口原理
LVDS信号的基本应用如图1所示,由三个部分组成,分为驱动器、传输介质和接收器,传输介质需要保证差模阻抗为100 Ω,传输介质可以使用平衡线缆或者PCB印刷线;LVDS接收器输入阻抗很大,LVDS信号传输时消耗的功耗基本都由100 Ω电阻产生。LVDS标准信号要求共模电压1.2 V,驱动器由一对电流源组成,此电流源负责给差分线提供3.5 mA电流(典型值),因此在100 Ω电阻两端会产生摆幅350 mV的差分信号,LVDS接收端就是通过检测此差分信号完成信号传递。
LVDS技术的恒流源模式低摆幅输出意味着LVDS能高速驱动,例如对于点到点的连接,传输速率可达800 Mbps,对于多点互连FR4背板,十块卡作为负载插入总线,传输速率可达400 Mbps。
图1 LVDS接口原理
LVDS器件是用CMOS工艺实现的,这就提供了低的静态功耗。负载100 Ω终端电阻的功耗仅为1.2 mW;恒流源模式驱动设计降低系统功耗,并极大地降低了Icc的频率成分对功耗的影响。与其相比,TTL/CMOS收发器的动态功耗相对频率呈指数上升。
LVDS信号是低摆幅的差分信号,差分数据传输方式比单线数据传输对共模输入噪声有更强的抵抗能力,在两条差分信号线上电流方向及电压振幅相反,噪声以共模方式同时耦合到两条线上。而接收端只关心两信号的差值,于是噪声被抵消。由于两条信号线周围的电磁场也相互抵消,故比单线信号传输电磁辐射小得多。而且,恒流源驱动模式不易产生振铃和切换尖锋信号,进一步降低了噪声。
LVDS使用低摆幅和低电流实现了低噪声和低功耗特性,信号传输速率可以达到数百Mbps,在ANSI/ TIA/EIA-644标准中,推荐最大速率为655 Mbps,理论极限速率为1.923 Gbps。
3 DUT功能概述
此次测试的LVDS接口芯片是专用集成电路,实现了特定的算法,其功能框图见图2。
DUT为55 nm CMOS工艺,BGA179封装,0.80 mm节距。
DATA_IN(0-15)为16对LVDS高速数据输入接口,正常工作速率为800 Mbps,DATA_OUT(0-13)为14对LVDS高速数据输出接口,CLK_IN为1对400 MHz LVDS输入接口,CLK_OUT为1对200 MHz LVDS输出接口,控制信号和状态信号均为低速信号,为LVTTL电平;正常工作时DUT将LVDS输入接口接收到数据实时运算,直接送出至DATA_OUT(0-13)接口。
图2 DUT功能框图
控制信号可以设置芯片内部工作时钟和CLK_IN的相位关系,输出信号相位也会有相应调整。芯片内部有DLL模块,可以对CLK_IN锁定,每次锁定的时刻不固定,输出数据也同锁定时刻相关,芯片每次运行的向量实际是在动态变化的,如果要ATE每次都能准确对齐输出数据有一定难度。
4 测试实现过程
4.1测试系统设置
UltraFlex测试系统配置UP800模块,可以工作在800 Mbps速率下,单独一块UP800板卡有128个单端通道,或者配置成64对差分通道;为了保证测试接口板走线信号完整性,减少通道间串扰,使用2块UP800模块分配32对差分通道。
UltraFlex的测试程序开发软件是IG-XL,针对差分信号的测试需要进行特定的设置才能正确测试,在pinMap、channel、level、timeSet、pat格式的设置同单端信号的测试均有区别;pat在single模式下(NR格式)只能达到250 Mbps,单独使用DUAL模式或2×模式,也只能达到500 Mbps,必须使用DUAL 2×模式才能到达到800 Mbps,DUAL 2×模式下pat格式和timeSet也有特定要求。下面针对以上有特定约束的设置进行详细描述。
pinMap中需要明确差分信号对,使用GROUP将一对差分信号组合成差分组,GROUP类型必须选择diff;通过差分GROUP设置后,程序的其他参数设置就可以将差分信号当成一个信号来处理,不用重复设置差分两个信号。
channel分配很关键,差分信号的P端必须分配到2×n通道,差分信号的N端必须分配到2×n+1通道,n为0~63的整数。差分信号GROUP的信号设置同P端信号一致。
level设置,按照规范设置差分信号共模电压和摆幅,差分输出信号的测试同正常应用存在一些区别,LVDS接口标准要求接收端必须有100 Ω电阻,共模电平由DUT提供,ATE测试时(如图3所示),ATE PPMU选择VT模式,也可以实现差分100 Ω匹配,但是通过P端和N端串接两个50 Ω电阻实现的,两个电阻中间还由ATE提供了可以调整的电压VT,VT设置同输出共模保持一致。如果DUT共模同规范存在偏差,对差分信号电平的检测也会存在偏差。
图3 差分信号测试组网
timeSet必须选择NR格式,输入数据和输出数据均需设置2×数据的第一位和第二位时刻。
pat设置,差分引脚设置成两个独立的信号,也可以按照差分信号组只设置一个信号。设置成两个独立的信号可以针对P、N信号分别调节比较电平,调试时比较直观。
4.2测试接口板设计
该DUT工作速度要求达到800 Mbps,对测试接口板的设计要求比较高,要求高速信号的走线长度尽可能一致,需要进行阻抗匹配,如果测试接口板设计不当,阻抗匹配不好会产生反射,信号失真,DUT输入数据会受到影响,无法得到正确的数据,计算结果也会出错;也可能DUT接收到正确的数据,计算正确,输出结果也正确,但是信号失真可能导致ATE无法接收到正确的输出数据,产生误判或者测试结果不稳定;信号线之间没有合理分配则可能导致串扰,同样会影响测试结果的正确性。DUT封装为0.8 mm节距的BGA封装,封装比较小,BGA管脚之间的走线不可能走太宽,对信号完整性存在一定影响。下面详细描述高速测试接口板设计需要遵守的原则。
测试接口板层叠设计,高速信号相邻层需要用完整的地层或电源层,高速信号和低速信号尽可能分层布线,避免高速信号受到影响。本次测试接口板设计采用8层PCB,首层和底层走LVDS高速信号,底层LVDS信号不经过过孔,首层LVDS信号只经过1个过孔,第二层和第七层为地层,第三层分配给LVTTL信号,其余三层分给6组电源。
元器件封装选择:DUT LVDS输入端需要加100 Ω匹配电阻,在高频电路中需要尽可能选择小封装器件,针对800 Mbps速率,选择0603封装电阻即可,焊接难度一般;但是DUT输入输出差分信号对总共32对,并且输入LVDS也是集中在一起,电阻距离器件pad距离需要小于1 cm,选择0603器件无法满足以上约束,因此只能选择0402封装电阻。
布局:将0402贴片电阻交错放置在首层和底层,因DUT插座放置在首层,占用空间比较大,首层电阻距离DUT pad比较远,但也满足小于1 cm的要求。
LVDS差分信号阻抗需要满足100 Ω阻抗匹配,布线选用152 μm线宽,间距152 μm;因DUT pad间距太小,考虑到加工精度,DUT pad间线宽改为102 μm。
铺地层设计:高速信号回流要求高速信号走线不跨区域,高速信号相邻地层划开不能影响到高速信号走线,如果必须分区,可以使用搭接地桥的方法实现。
4.3调试关键技术
此款DUT每次上电启动后锁定时间不一致,锁定后的输入数据时序和输出数据均受到锁定时间的影响,UltraFlex必须能根据实际情况进行动态调整测试向量,保证ATE向量同DUT输出刚好匹配上。
本次测试使用的UltraFlex UP800板卡,最大测试速率刚好为800 Mbps,满足此款芯片的测试要求;但是在500 Mbps以上就必须选择Dual 2×模式,Dual 2×模式下,Pattern可以实现800 Mbps 的速度,但是控制Pattern运行的opCode却只能运行到400 Mbps,响应速度慢了一半。
ATE同DUT同步过程:首先使用opCode中的“match”功能,捕捉到DUT 锁定输出信号DLL_LOCKED,当DLL_LOCKED变高后,即表示DUT已经锁定到输入时钟,可以进行后续的数据输入、运算、数据输出。具体使用方法如下:
设置分支跳转条件为fail(branch_con = fail);
设置match 用计数器(set_msb=2000,set c0=2000),根据芯片的锁定时间设置计数器次数,保证芯片在match循环周期内可以锁定;
将match 用计数器压入堆栈(push c0);
设置match信号:(将DLL_LOCKED信号置为L,待DLL_LOCKED信号变高后会满足跳转条件fail,跳转至对应的测试向量),因为ATE有255行的流水线深度,出现fail时并不是马上跳转,DUAL 2×模式下跳转后实际已经距离DLL_LOCKED变高晚了1020行测试向量;
设置match到标签:match到DLL_LOCKED变高将跳转至此行。
以上5步即完成了DLL锁定的匹配。但是匹配后仍然存在很大概率的测试错误问题,根据DLL锁定特性分析出错情况,锁定时刻为输入时钟周期(Tperiod)的整数倍,DLL锁定时刻为Tlock,match跳转时刻(Tjump)为4行测试向量的整数倍,如上时刻关系公式为:
M为正整数。
N为大于255的正整数。
将式(1)、(2)带入式(3)会得出:
N=M/2 + 255,如果M为偶数,N也为正整数,满足要求;如果M为奇数,N则无解,会导致测试向量出错。
将DUT测试速度降为400 Mbps,将DUAL 2×模式改为2×模式,opCode执行速度也为400 Mbps,进行多次测试,功能测试很稳定,没有出错情况。
M为奇数就是导致概率出错问题,针对此问题提出了多种解决方案:
使用opCode代码执行速度更高的测试板卡,可以达到800 Mbps的执行速度,不用DUAL模式,Tjump可以实现N×Tperiod,保证奇数行和偶数行均能跳转。但是新采购测试板卡,测试进度会受到影响,并且测试成本也会增加。
使用DSSC抓取输出的数据,比对测试结果;制作DSSC PAT时,DUAL 2×模式下无法输入成功转换测试码,高速下此方法不可行。
使用根据同一颗芯片概率性锁定到奇数行和偶数行的情况,使用多次复位,有一次锁定到偶数行,功能即可以PASS。每次测试设置超时时间为10 s,重复执行30次,发现成功概率明显提升,但是每次测试时间也会延长,并且仍然有一定概率测试失败。
将测试向量改奇数行和偶数行都可以匹配到的测试向量,再增加一次奇数行测试向量的match,如果是偶数行则直接向下执行;如果是奇数行则跳转至新增的奇数行PAT执行。但是由于测试向量行数达到70万行,必须使用VM才能完整装载奇数行向量和偶数行向量,match必须在SRM向量中实现,制作PAT时无法从SRM跳转至VM中的标签,此方法未实现。
在方法四的基础上进行一些改进,奇数行测试向量match到后,将输入时钟暂停一个周期提供,没有匹配到(偶数行情况)则正常执行测试向量。使用此方法在奇数行情况时刚好错开一个周期,后续测试向量不用更改,完美匹配到后续测试向量,经100次LOOP执行,稳定PASS。
5 测试结论
经过两个DUT版本的测试,测试接口板和测试系统设置均能满足800 Mbps的测试要求,功能稳定测试,常温下直流参数和交流参数测试结果满足产品规范要求。DUT的LVDS信号相关规范和实测结果如表1,VID使用仪表测试也是0.2 V,ATE测试结果同仪表测试结果一致。
表1 LVDS信号规范和实测结果
[1] 郭之光. LVDS(Low-Voltage Diferential Signaling)设计及应用[J]. 20070101. 2.
[2] 张松松,刘飞飞. 高速电路板级信号完整性设计[J]. 电子科技,2013,26(10).
Method of IC with LVDS Interface Testing
SU Yang
(China Electronics Technology Group Corporation No.58Research Institute,Wuxi214035,China)
The differential signal can be used as high speed interface, LVDS interface can afford high speed translation, the method of testing LVDS interface has great difference form single signal. The paper describe the method of using UltraFlex to test IC with LVDS interface, the content include how to assign ATE channel, how to design DUT PCB and other test techniques. The method is already used for LVDS input and output signal at 800 Mbps.
LVDS; ATE; signal integrality; dynamic pattern
TN407
A
1681-1070(2014)10-0004-04
2014-06-11