基于DSP的抖动测量的方案设计
引言 抖动(jitter)会使数字电路的传输性能恶化,由于信号上升沿或是下降沿在时间轴上的正确位置被取代,在数据再生的时候,数据比特流中就会引入错误。在合并了缓冲存储器和相位比较器的数字仪表中,由于数据溢出或是损耗,错误就会引入到数字信号中。此外,在数模变换电路中,时钟信号的相位调制会使恢复出的采样信号恶化,这在传输编码的宽带信号时会造成问题。 1 抖动的分类 抖动分为系统抖动和随机抖动。 (1)系统抖动是在信号再生电路时间上不准,或是码是串扰,或是在幅频转换中的不准确的电缆均衡造成的。系统抖动取决于系统的性能。 (2)随机抖动来源于内部或是外部的干扰信号,如噪声、串扰、反射等。随机抖动与传输信号的系统无关。 系统抖动与不同的脉冲再生电路的脉冲的模式有关,会连续地积累。随机抖动则与脉冲再生电路的脉冲模式无关,而且也不会连续地积累;在大多数低速率的数字系统中,系统抖动占主导地位;而在高速系统中,随机抖动变得越来越重要,甚至会占据主导地位。 干扰性的抖动可以利用信号再生电路划中利用“去抖动”电路来减弱其影响。这种“去抖动”电路来减弱其影响。这种“去抖动”电路包括了一个带有窄带相位平滑电路的信号缓冲器。信号再生电路只能将抖动频率高于时钟再生电路的截止频率的抖动成分减小,而低频的抖动成分则仍然会出现在输出信号或是信号再生电路中。在这种情况下,抖动被传输到输出信号中,信号再生电路此时就象是一个低通滤波器。 2 抖动测量方法 传统的抖动测量采用模拟测试的方法。
2.1 用模拟方法测试抖动的缺点
a 时钟恢复限制了抖动测量的带宽; b 时间恢复由于自由运行频率的偏移引入了抖动噪声; c 大动态范围要求大频率分割,导致产生了起出相位探测器范围的低频脉冲,进一步限制了测量的带宽; d 模拟电压受制于由噪声和寄生电容产生的负面影响; e 模拟电压的范围受制于电源电压的范围; f 基准恢复由于其带宽小获得锁相很慢。 随着DSP技术、ADC应用技术和ASIC技术的发展,抖动分析跟随着科技从模拟到数字的转变进程,发展了基于数字分析的抖动测量方法。基于数字的抖动分析方法有先进得多的特性,能使工程师们为下一代设计的测试和分析作更充分的准备。 下面图给出了基于数字分析的抖动测量方法的原理框图。这里的目标是将每个NRZ沿用二进制数作时间标记,其中计数器最低位(LSB)权值就是时间间隔分辨率。时间间隔计数器完成时间标记功能,通过数字处理标记出抖动大小,再经过数字滤波器提供抖动测量所需的高通和低通滤波。在滤波过程中,可实现分辨率中两个最佳位。抖动得到进一步的处理以检测峰峰值、真有效值或其它参数,比如频谱容量。
2.2 数字化的抖动测量的优点
a 具有更宽的带宽和更低的噪声,因为它不需要时钟恢复。 b 具有更宽的带宽和更光滑的频率响应,因为数字相位探测器将每个NRZ沿以时间标记(不需要对模拟脉冲作平均处理)。 c 具有更低的抖动噪声,因为数字时间标记不受噪声的影响。 d 增益误差率只有0.01%,因为信号处理是完全数字化的。 e 动态范围超过4000UIp-p,同时保持0.01UI的分辨率。 f 测量时没有延时,因为不使用锁相环信号去获取时钟。 3 数字式抖动测试仪的研制 数字式抖动测试仪的基本要求是完成对2.048MHz的锁相时钟进行相位抖动测试,具体要求按ITU-TG.823建议执行。设计方案采用数字方法测试抖动。数字抖动测试方法中关键的就是计数器的设计,本设计选用的计数器的计数时钟频率为100MHz。但是为了保证测试抖动的精度要求,对于100MHz记数产生的误差信号,专门设计了误差脉冲展宽电路,以提高测试精度。 研制的抖动测试仪主要包括以下模块:时钟记数、脉冲展宽、数据存储、数据处理。其中除了脉冲展宽模块是模拟电路外,其余的3个模块都是数字电路,所以该设计是一种数字与模拟的混合电路。在设计中,考虑到算法的复杂性和灵活性,开发时间的紧迫性以及系统的要求,选用了德州仪器(TI)的TMS320F206。 3.1 DSP选择 TMS320F206是德州仪器公司用静态CMOS技术集成的DSP芯片,属于TMS320C2000系列。这是一种低功耗器件,采用了改进的哈佛结构,有1条程序总线和3条数据总线,有高度并行性的算术逻辑单元ALU、专用硬件逻辑、片内存储器、片内外设和高度专业化的指令集,从而使该芯片速度高、操作灵活。TMS320F206有224K的寻址能力、3个外部中断、1个同步串口和一个异步串口,最高时钟为40MHz。由于每秒需处理数据2Mbit,每个符号采样两次,所以实际数据速率是4Mbps。通过其算法来估计其运算量,40MIPS的处理能力完全可以满足其要求。在设计中使用了1个外部中断,一个异步串口。异步串口和PC机的串口相连接,将DSP计算结果送回到PC机显示。 3.2 时钟记数模块 该模块主要作用有以下几个: ①对二分频后的2MHz时钟信号用100MHz的时钟进行记数; ②用100MHz时钟对2MHz信号记数,产生误差脉冲; ③对展宽后的误差脉冲用100MHz的时钟进行记数; ④产生与数据存储模块接口的写时钟和写使能信号; ⑤将2MHz的记数 值和展宽的误差脉冲记数值通过一路8位的数据总线分时输出。 此模块的设计主要是用一块XILINX公司的CPLD XC95108来完成的。 3.3 脉冲展宽模块 脉冲展宽模块是为了提高测试抖动的精度,这是本设计中非常关键的一个模块。本设计测试抖动其实就是精确地测试出每个周期的时间,只有测试的时间精度提高,最终测试抖动才能达到要求的精度。若无脉冲展宽电路,仅用100MHz的时钟记数的话,则单个周期的测时的最大误差将会是20ns,这样根本无法满足抖动测试的精度要求。 为了测出小于度量单位的一个物理量的值,我们很容易地想到只要将该物理量放大一个固定的倍数后,使该放大后的物理量可测,此时只要测出该物理量后除以该放大倍数,即可得到原先的物理量的值。该模块的设计就利用了这样的思路。具体是利用LM234产生两个恒流源,分别做为一个电容的充电电流和放电电流。利用充放电电流的不同产生斜率不同的充电曲线,再与一参考电压进行比较,即可得到一展宽的脉冲。具体的脉冲展宽电路是用两个三级管完成充放电工作和比较电路。三级管的型号是2SC3357,2SC3357是高频三级管,其工作频率可达到2GHz。选用高频三级管对此设计相当重要,因为要测的误差脉冲其时间只有几个ns。 3.4 数据存储模块 数据存储模块主要是作为时钟记数模块所记数据的缓冲器,在时钟记数模块和数据处理模块之间充当接口。正如前面所介绍的,选用了一片选进先出(FIFO)芯片,型号是IDT72230。此型号的FIFO具有2K×8的存储空间。在FIFO的数据全满后,由IDT72230的FF(全满标志引脚)向数据处理模块发送中断请求信号。而数据处理模块中的DSP会从FIFO中将这2K数据读出来。 3.5 数据处理模块 数据处理模块以DSP为核心,来对记数器记得的值进行处理,最终算得Jitter的值。DSP中用到了中断口IT1,当FIFO满时,从FIFO中读出2K个数据。而DSP与外部的通信则用的是异步串口。 4 调试 由于系统工作于较高的频率,计数器为100MHz,DSP为40MHz,DSP的外围设备一般为20MHz,最高为40MHz,因而在系统设计中,必须注意高频影响。 在布线时,特意把数据和地址成组布线,以降低对其它信号的影响。对一些关键的控制线。如存储器读写信号和FIFO读写信号,在其两边都加上了地线保护特别是FIFO的读写信号,由于其对干扰特别敏感。对一些较长的引线,可串接一个30Ω的小电阻或加终端匹配以减小反射。 在软件设计中,采用C语言和汇编语言混合编程。具体的编程方法可查阅DSP的手册。TI公司还提供了一个运行库(RuntimeLib)。用TI公司的JATG调试器进行调试时,在DSP程序中调用运行库的函数,可以打开PC机上的文件获取数据,或将DSP的数据传入PC机并存入文件,或通过PC机键盘向DSP传递信息和发送命令,从而为调试带来了极大的方便。 由于在本设计中采用了DSP技术,使得开发的周期大为缩减,系统的灵活性也大大增强。随着数字处理芯片(DSP)处理速率的加快,外围通讯能力的加强,以及数字信号处理的实时性的需要,其应用范围必将越来越广泛。
|