一种高速LVDS接口ADC数据与时钟同步的方法与流程

文档序号:21541325发布日期:2020-07-17 17:43阅读:1256来源:国知局
一种高速LVDS接口ADC数据与时钟同步的方法与流程

本发明涉及信号检测领域,具体涉及一种高速lvds接口adc数据与时钟同步的方法。



背景技术:

随着通信速度的不断提高,越来越多的系统都要求更高的速率和更大的带宽,这对于adc(模数转换器)的采样速率提出了更高的要求。当今,adc的采样率可以达到ghz级别,主流方式是采用并行的lvds接口将采样数据和源同步时钟传输到fpga内部进行数据处理,如此高速率并行信号和时钟在传输过程中容易受到pcb布局布线等因素影响,使得系统获得的采样数据产生较大失真。随着fpga技术的不断发展,芯片内部集成输入输出延时单元已经成为主流,这为在fpga内部实现高速并行lvds接口的adc采样数据在源同步时钟边沿获得最佳采样提供了硬件基础,通过一定控制算法,可以使得输入的并行数据在该模块获得相应的相位补偿,从而提高信噪比。

为解决在fpga内部的高速lvds接口adc数据与时钟同步的问题,现存如下几种解决方案:

方案1:对输入fpga的源同步时钟进行输入延时处理。本方案的优点是只对一根时钟线进行优化处理,fpga内部处理算法简单易实现,缺点是必须保证所有并行数据线的相位差在一个时钟周期以内。

方案2:对输入fpga的并行数据线所有位都采用信噪比比较的方法进行。该方案的优点是能够找到所有数据线的最优延时,缺点是快速傅里叶变换次数和比较次数会随着adc分辨率的位数成指数形式递增,当adc分辨率位数很高时,该方法几乎无法实现。

方案3:不利用输入延时单元,通过相应的rtl级算法对输入的数据进行相位补偿,该方案适用于对输入所有信号类型已知的情况下,使用具有一定局限性。

故针对目前现有方案中存在的上述缺陷,实有必要进行研究,以提供一种方案,解决现有技术中存在的缺陷。



技术实现要素:

为了解决现有方案中存在的技术问题,本发明提供一种高速lvds接口adc数据与时钟同步的方法,将adc产生的并行lvds数据的高位和低位分开处理,从而降低了信号线输入延时的调整次数。

为了解决现有技术存在的技术问题,本发明的技术方案如下:

步骤s1:adc输入高低电平随机跳变信号;

步骤s2:fpga内部核心控制算法单元对输入的并行信号线高n位(取决于adc精度)进行多周期垂直比对,使输入信号获得相应延时调整,并产生中断信号;

步骤s3:adc输入确定正弦波信号;

步骤s4:fpga内部核心控制算法单元对输入信号进行快速傅里叶变换后求得信噪比,通过信噪比来确定低位最优输入延时;

步骤s5:可对临近有效位进行上述s4步骤操作,以获得最优输入延时。

该方法运用于采样率在1ghz以上的adc芯片;采用本发明方法的fpga芯片应集成输入延时调整单元;且由于pcb走线等原因造成的并行数据之间的到达时差小于输入延时调整单元可调节范围的一半。

作为进一步的改进方案,步骤s1中的高低电平随机跳变信号是指adc输出的所有并行数据为全0或者全1,且全0和全1的出现不存在规律性,更进一步是指adc输入的模拟信号在满量程和0之间随机切换;步骤s3中的确定正弦波信号指的是频率、相位已知,其中频率应不小于adc采样率的二十分之一,且该正弦波的幅值不得小于adc允许输入最大值的二分之一。

作为进一步的改进方案,步骤s2、步骤s4和步骤s5中所述的fpga内部核心算法控制单元具有以下特征:该控制单元可以通过rtl逻辑接口来控制所述的fpga芯片中集成的输入延时调整单元;该控制单元将输入信号分成高位和低位两部分进行延时调整,分别使用高低电平随机跳变信号和确定正弦波信号,并依据信号不同使用多周期垂直比对法和信噪比比较法进行延时调整;核心算法控制单元在步骤s5中,可以对输入信号有效位附近数据线的延时进行优化调整。

作为进一步的改进方案,fpga内部核心算法控制单元对高位信号进行的多周期垂直比对法,设adc的分辨率为n,数据位从最高位到最低位依次表示为l(n),l(n-1),……,l(1),adc的有效分辨率为x,adc的高位定义为l(n)(n>n-x),低位定义为l(n)(n<n-x),l(n-x)定义为有效位,每一根线上的输入延时定义为tl(n),n为(n,n-1,……,1)。该方法的使用前提是输入高低电平随机跳变信号。使用该方法时,首先将l(n)的输入延时调整为0,从最低到最高依次调整l(n-1)的输入延时,在每个延时情况下采集1万次数据,记录l(n)与l(n-1)的值不相等的次数m(n-1),当m(n-1)小于100时认为相位对齐,记录满足相位对齐时tl(n-1)的最大值和最小值,取中间值e(n-1)作为l(n-1)的临时最佳延时值。如若对l(n-1)进行上述操作以后没有满足m(n-1)小于100的tl(n-1),则说明l(n)在源同步时钟域不满足建立时间或保持时间,或者l(n)的相位提前于l(n-1),因此需要对l(n)的输入延时进行调整:从最低到最高依次调整l(n)的输入延时,在每个tl(n)的情况下,重复上述l(n-1)的延时调整步骤,直至出现有3次以上的tl(n-1)与之对应的m(n-1)小于100的情况出现,这时的tl(n)即为l(n)的临时最佳延时e(n),取tl(n-1)的中间值e(n-1)作为l(n-1)的临时最佳延时值;对l(n-2)进行多周期垂直比对时,从最低到最高依次调整l(n-2)的输入延时,每个延时采集1万次数据,记录l(n),l(n-1),l(n-2)的值不相等的m(n-2),当m(m-2)小于100时默认为相位对齐,记录相位对齐时延时的最大值和最小值,取中间值e(n-2)作为l(n-2)的临时最佳延时值。如若对l(n-2)所有延时操作以后没有满足m(n-2)小于100次的tl(n-2),则说明已经同步的l(n)和l(n-1)的相位提前于l(n-2),则需要对上述l(n-2)调整方法进行优化:方法是对e(n)和e(n-1)不断增加一个步长调整,直至某一位的延时值取到最大,在此之间,从最低到最高依次调整l(n-2)的输入延时,每个延时采集1万次数据,记录l(n),l(n-1),l(n-2)的值不相等的m(n-2),直至出现有3次以上的tl(n-2)与之对应的m(n-2)小于100的情况出现,这时的tl(n)和t(n-1)即为l(n)和l(n-1)的临时最佳延时e(n)和e(n-1),取tl(n-2)的中间值e(n-2)作为l(n-2)的临时最佳延时值。同样的,l(n-3),l(n-4)的调整步骤同上l(n-2)一致,直至调整到l(n-x)。

作为进一步的改进方案,fpga内部核心算法控制单元对低位信号进行的信噪比比较法,运用信噪比比较法的前提是,对于adc输出数据的高位已经完成了多周期垂直比对法;该方法首先对经过多周期垂直比对法调整以后的高位临时最佳延时e(n)(n取n、n-1、……、n-x)做加一步长操作,直至某一位到达最大延时值,在每次加一步长的情况下,从最低到最高依次调整l(n-x-1)的输入延时,在每个延时情况下采集8192个数据并对该数据做8192点的快速傅里叶变换,通过快速傅里叶变换结果求得每个tl(n-x-1)情况下的信噪比,比较所有情况下信噪比取最大值时的tl(n-x-1)作为l(n-x-1)的该高位延时情况下的最佳e(n-x-1),取所有高位tl(n)(n取n、n-1、……、n-x)作为该位的临时最佳延时值e(n)(n取n、n-1、……、x);同样的,对于l(n-x-2),l(n-x-3),……,l(1),重复上述操作即可。

与现有的方案相比,本发明的有益效果在于:

本发明将adc产生的并行lvds数据的高位和低位分开处理,高位采用多周期垂直比对法进行延时处理,低位采用信噪比比较法进行延时处理。其中,高位采用的多周期垂直比对法要求输入随机跳变高低电平信号,核心控制算法单元从最高位到次高位依次进行输入延时处理,并对各个信号线上的高低电平值进行多周期比对以确定所有高位的最佳延时,使用该方法可以极大的简化同步算法的设计,整个算法只需要最简单的逻辑与运算即可,与现存方案相比,该方法极大的降低了信号线输入延时的调整次数;低位采用的信噪比比较法是通过输入确定的正弦波信号,核心控制算法单元从次高位到最低位以此进行输入延时处理,通过对输入信号的信噪比进行比较,以确定最佳的低位输入延时。与现存方案相比,使用该方法最大的优点就是整个并行数据线上的延时调整次数不会随着adc分辨率的增加而呈现指数增加的情况,并且,该方案考虑到了adc输出的有效位附近数据可能存在数据不稳定现象,从而设计了步骤s5,对输入的数据做了进一步的优化。

附图说明

图1是本发明方法所适用的系统的整体框架图(以xilinx7系fpga为例)。

图2是本发明方法的流程图。

图3是本发明方法所运用的fpga内部输入延时单元和串并转换单元(以xilinx7系fpga为例)。

图4是本发明方法所使用的高低电平随机跳变信号(以10位adc为例)。

图5是输入未同步信号的仿真图(以10位adc为例)。

图6是经过垂直比对法以后的信号仿真图(以10位adc为例)。

图7是经过信噪比比较法以后的信号仿真图(以10位adc为例)。

具体实施方式

以下将结合附图对本发明提供的技术方案作进一步说明。

以xilinx7系fpga为例,本发明所适用系统的整体框架如图1所示。首先,并行的adc数据和源同步时钟以lvd形式输入到fpga内部,通过输入缓冲区将双端的lvds信号转为单端信号;对于输入的源同步时钟将经过时钟处理单元(内部包含bufio和bufr),该单元将输入该单元的时钟进行一定的分频处理并将其接入时钟专用网络,该单元能够产生串并转换单元、输入延时控制单元和核心控制算法单元所需要的时钟;对于输入的并行adc数据将经过输入延时单元和串并转换单元(如图3所示),其中输入延时单元包括iodelay(输入输出延时调节单元)和idelaycontrol(输入延时控制单元),iodelay内部集成了一个64阶的可编程信号延时调节单元,对于200mhz的idelaycontrol时钟输入,iodelay能够调节的最小延时为78.15ps,最大延时调节范围为5ns。串并转换单元的功能是将ghz以上的adc采样信号进行1:n降速处理,以使得fpga内部逻辑电路能够进行处理;经过串并转换单元以后的多路低速并行数据将作为输入进入核心控制算法模块,核心控制模块将会按照图2所示的步骤来产生相应的输出信号,用于控制输入延时单元进行延时调整。

本发明将adc产生的并行lvds数据的高位和低位分开处理,高位采用多周期垂直比对法进行延时处理,低位采用信噪比比较法进行延时处理。其中,高位采用的多周期垂直比对法要求输入随机跳变高低电平信号,该信号的特征是所有并行数据为全0或者全1,且全0和全1的出现不存在规律性,更进一步是指adc输入的模拟信号在满量程和0之间随机切换。使用该信号作为输入是因为若所有并行数据相位对齐,那么任意时刻比较所有并行线上数据都是相等的。使用此作为指导思想,理论上是可以只通过多周期垂直比对法就能将所有数据与时钟同步,但是考虑到实际中,adc存在有效采样位,也即adc采样的低位数据可能不是精确数据,所以,对于adc输入高低电平随机跳变信号,在所有数据相位对齐的情况下,其低几位并行线上数据也存在不相等现象,因此,本发明对于低位采用信噪比比较法,以输出信号信噪比作为直观比较条件,即可求得在实际情况下的最优输出。

该发明方法在上述实例系统中的具体实施过程如下:以10位adc系统为例,在相位未进行调整时以正弦波作为激励,输出仿真结果如图5所示,可以看到并行线相位未对齐造成的结果是输出数据具有较大的噪声。下面采用本发明方法对该系统进行同步处理。首先进行多周期垂直比对法,adc输入高低电平随机跳变信号,然后fpga内部核心控制算法单元对输入的并行信号线高位进行多周期垂直比对,过程如下:设数据位从最高位到最低位依次表示为l(10),l(9),……,l(1),adc的有效分辨率为6,adc的高位定义为l(n)(n>4),低位定义为l(n)(n<4),l(4)定义为有效位,每一根线上的输入延时定义为tl(n),n为(10,9,……,1)。首先将l(10)的输入延时调整为0,从最低到最高依次调整l(9)的输入延时,在每个延时情况下采集1万次数据,记录l(10)与l(9)的值不相等的次数m(9),当m(9)小于100时认为相位对齐,记录满足相位对齐时tl(9)的最大值和最小值,取中间值e(9)作为l(9)的临时最佳延时值。如若对l(9)进行上述操作以后没有满足m(9)小于100的tl(9),则说明l(10)在源同步时钟域不满足建立时间或保持时间,或者l(10)的相位提前于l(9),因此需要对l(10)的输入延时进行调整:从最低到最高依次调整l(10)的输入延时,在每个tl(10)的情况下,重复上述l(9)的延时调整步骤,直至出现有3次以上的tl(9)与之对应的m(9)小于100的情况出现,这时的tl(10)即为l(10)的临时最佳延时e(10),取tl(9)的中间值e(9)作为l(9)的临时最佳延时值;对l(8)进行多周期垂直比对时,从最低到最高依次调整l(8)的输入延时,每个延时采集1万次数据,记录l(10),l(9),l(8)的值不相等的m(8),当m(8)小于100时默认为相位对齐,记录相位对齐时延时的最大值和最小值,取中间值e(8)作为l(9)的临时最佳延时值。如若对l(8)所有延时操作以后没有满足m(8)小于100次的tl(8),则说明已经同步的l(10)和l(9)的相位提前于l(8),则需要对上述l(8)调整方法进行优化:方法是对e(10)和e(9)不断增加一个步长调整,直至某一位的延时值取到最大,在此之间,重复上述l(8)的延时为,直至出现有3次以上的tl(8)与之对应的m(8)小于100的情况出现,这时的tl(10)和t(9)即为l(10)和l(9)的临时最佳延时e(10)和e(9),取tl(8)的中间值e(8)作为l(8)的临时最佳延时值。同样的,l(7),l(6)的调整步骤同上l(8)一致,直至调整到l(4)。经过垂直比较法以后,输入同样正弦波测试激励,输出如图6所示,可以明显看到,由高位相位不齐产生的低频率噪声已经去除,由低位产生的高频的噪声分量依然存在。接下来进行信噪比比较法,adc输入确定正弦波信号,fpga内部核心控制算法单元对输入信号进行信噪比比较法,过程如下:首先对经过多周期垂直比对法调整以后的高位临时最佳延时e(10)(n取10、9、……、4)做加一步长操作,直至某一位到达最大延时值,在每次加一步长的情况下,从最低到最高依次调整l(3)的输入延时,在每个延时情况下采集8192个数据并对该数据做8192点的快速傅里叶变换,求得每个tl(3)情况下的信噪比,比较所有情况下信噪比取最大值时的tl(3)作为l(3)的该高位延时情况下的最佳e(3),取所有高位tl(n)(n取10、9、……、4)作为该位的临时最佳延时值e(n)(n取10、9、……、4);同样的,对于l(2),l(1),重复上述操作即可。经过信噪比比较法以后,输入同样正弦波测试激励,输出如图7所示,可以明显看到由于低位相位不齐造成的高频噪声已经消除。由于垂直比对法默认为adc的有效位数据线附近的位数据线(l(4)和l(5))是精确的,实际情况下,有效位附近数据线上的数据可能会存在低概率的不准确现象,可对有效位数据线附近的位数据线进行上述s4步骤操作,以获得最优输入延时。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1