高速LVDS接口信号完整性处理
一、系统介绍
EMCCD相机由图像传感器、驱动电路、FPGA(Spartan-3)、LVDS接口和电源等组成。LVDS输出接口使用2片DS92LV1021,每片实现10bit并行数据到1路串行LVDS的转换(即串行调制,Ser),其中1片转换10bit图像数据,1片转换行(H)、场(V)同步,统一使用像素时钟(25MHz)调制,LVDS串行速率为25x10=250MHz。
图像输入使用配套的2片DS92LV1210完成LVDS到并行数据的转换(即解串,Deser),送FPGA(Virtex-5)预处理后,由CameraLink接口输出至标准PCI CameraLink图像采集卡。
二、故障现象
观察图像有抖动现象,实测图像采集卡的H、V信号有干扰脉冲,往前测试发现1片DS92LV1210解码芯片有时“失锁”,即其Locked输出上有脉冲(正常一直为低电平!)。
三、问题分析
这套采集系统以前使用普通CCD相机是都是正常的,这次换成EMCCD相机后才出现这个问题, 其主要区别是EMCCD相机有1MHz的幅度达45V以上的高压CCD驱动脉冲ΦHV,事实上只要关掉高压脉冲(这样CCD没有图像输出),使用FPGA中产生的测试图像,Locked、H和V信号就都正常了,说明问题就是这个ΦHV给LVDS输出通道所造成的EMI干扰(传导或辐射)引起的。
由于LVDS接口已使用双绞线并加了屏蔽,只能从数据源上想办法,用示波器观测FPGA送给DS92LV1021的并行数据(10bit图像、H、V和像素时钟等),发现打开、关闭ΦHV时其上升/下降沿有变化,说明这些信号抗干扰能力较弱,即信号的完整性有问题。
四、解决办法
对于FPGA来说,要提高输出脉冲沿的抗干扰能力,可修改引脚的Slew Rate和Drive Current(或Drive Strength),而Drive Current与I/O电平标准有关,下图是Xilinx Spartan-6的相关数据表。
(来源:Spartan-6 FPGA SelectIO 用户指南P31)
FPGA I/O口的Slew Rate有Fast或Slow两种,Drive Current从2mA~24mA,都可在约束文件中设定,缺省值为:Slew Rate=Slow,Drive Current=12mA,I/O电平=LVCMOS25。
通过将FPGA输出的所有并行数据的Drive Current提高到24mA,问题解决。
总结:Fast Slew Rate + 大的Drive Current + 高的I/O电平,抗干扰能力越强,同时,其所产生的EMI信号也越强(干扰其它电路),具体取舍应根据系统实际情况来定。
(本文原作者:emesjx)