一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种多通道同步高速数据采集装置的制作方法

2021-10-24 03:58:00 来源:中国专利 TAG:示波器 数据采集 装置 同步 通道


1.本发明属于示波器技术领域,更为具体地讲,涉及一种多通道同步高速数据采集装置。


背景技术:

2.随着科研水平的不断提升,人们对多通道示波器的需求不断增高。在越来越多的应用场景下,用户渴望同时获取足够多通道的数据。直升机桨毂的安全探测中,需要采集多通道的声发射信号来定位直升机桨毂中央件裂纹;地震数据采集系统中,观测信号不仅包含几千公里之外的微弱地震、核震信号、地脉动及地球背景噪声等微弱信号,还包括近场监测的8级以上大地震,而多通道分级采集技术能够有效扩展地震数据采集器的动态范围;在风洞试验中,数据采集系统具有32路输入通道,各通道工作独立,一个通道不会受到其他通道的故障影响,故而整个测试系统具有高可靠性和可维护性;在战斗部殉爆试验中,同时对多个战斗部进行数据采集还能提高单位成本内获取的信息量。
3.对于为了追求更高采样率而使用jesd204b接口的gsps adc(模数转换器)的多通道高速数据采集系统来说,多片adc的数据同步一直是亟待解决的关键难点。单块电路板上的adc可以使用确定性延迟以达到数据对齐的效果,但是对于诸如前文提到的多通道大型系统中,往往包含两块甚至两块以上的电路板,如何实现多块电路板上的多片adc数据同步,一直以来没有明确的解决方案。


技术实现要素:

4.本发明的目的在于克服现有技术的不足,提供一种多通道同步高速数据采集装置,包含一块处理板和多块采集子板,每个采集子板对多通道数据进行采样,然后实现多块电路板上的多片adc数据同步,且整个装置的通道间延迟不超过25ps。
5.为实现上述发明目的,本发明一种多通道同步高速数据采集装置,其特征在于,包括一块处理板和多块采集子板,每块采集子板的结构相同,以并行方式采集数据,再发送给处理板;
6.在采集子板与处理板内部具体又包括如下模块:
7.一时钟管理模块,包括晶振和多片时钟芯片,时钟芯片采用时钟树级联结构,为整个系统提供足够多通道的同步时钟信号;
8.晶振产生低频的源时钟信号发送给处理板上的时钟芯片,由处理板上的时钟芯片通过时钟输出通道向采集板上的时钟芯片提供时钟源,再通过脉冲输出通道向采集板时钟提供同步脉冲信号,采集板的时钟芯片接收到该同步信号后响应该信号,以调整时钟输出通道的相位,并通过配置为脉冲模式的输出通道向采集板fpga和adc提供脉冲信号,据此实现多时钟芯片的同步时钟输出;
9.一多adc数据同步模块,包括时间戳添加模块、采样数据调序模块以及增加动态时延模块;
10.时间戳添加模块根据adc数据手册,将adc芯片的时间戳功能打开;adc 在sclk的驱动下对输入的模拟信号进行采样,将模拟信号转换为m个bit的采样点数据;随后,通过adc内部的串行通道映射单元为m个bit的采样点数据添加w个bit的冗余控制位,形成m w个bit的串行通道数据,默认情况下冗余控制位的值为0,当由时钟管理模块发送的时间戳标记信号sysref上升沿到来时,对上升沿之后的第一个采样点进行标记,具体方式是把冗余控制位中的其中一位进行置1,完成时间戳的添加;
11.采样数据调序模块对由adc传输到fpga并完成降速之后的k路并行数据进行调序:检测时间戳标记出现在并行数据的位置,记为l,1≤l≤k;将原并行数据的第1至l

1路延迟两个dclk周期,原并行数据的第路至第路延迟一个dclk周期,形成延迟后的并行数据;最后将延迟后的并行数据按第l路至第k路、第1路至第l

1路的顺序重新依次排列,形成调序后的并行数据;
12.增加动态时延模块使用多片fifo分别为每通道调序后的并行数据增加动态延迟,当某一通道调序后的并行数据被检测出含有时间戳标记位“1”时,则开启对应通道的fifo的写使能;当所有通道调序后的并行数据均被检测出含有时间戳标记位“1”后,则开启所有通道的fifo的读使能,且保持写使能开启,读写保持平衡,各通道并行数据被动态地增加延迟,形成最终的用户数据流;
13.一时钟同步、时间戳添加和链路建立顺序管理模块,确定时钟同步、时间戳添加和传输链路建立三个独立过程的工作顺序,系统处理板上的fpga分三次向时间管理模块发送同步脉冲,具体处理流程如下:
14.fpfa第一次发送的同步脉冲至时钟管理器后,时钟管理器内的时钟分配网络进行复位操作,完成时钟同步过程;随后,fpga向时钟管理器发送spi命令,一方面屏蔽时钟分配网络对同步脉冲的响应,另一方面打开脉冲分配网络对同步脉冲的响应;同时,fpga还向adc发送spi命令,对adc的默认寄存器数据进行改写,禁用adc中默认的多帧时钟对齐功能,打开时间戳功能;
15.fpfa第二次发送的同步脉冲至时钟管理器后,时钟管理器内的脉冲分配网络进行复位操作,产生系统的参考脉冲sysref,并分别反馈给fpga和所有 adc;当fpga内部的千兆收发器模块接收到参考脉冲sysref后,置高由 fpga发送到每个adc的syncb信号,当adc接收到被置高的syncb信号后,开始向fpga传输串行通道数据流,完成数据传输链路建立过程;
16.fpfa第三次发送的同步脉冲至时钟管理器后,时钟管理器内的脉冲分配网络再次进行复位操作,第二次产生系统的参考脉冲sysref,并分别反馈给 fpga和所有adc;当adc接收到参考脉冲sysref后,标记参考脉冲sysref 上升沿时刻之后的第一个采样点数据,并将其所对应的串行通道数据的冗余控制位中的某一位置1,其余位保持为0,从而完成时间戳标记过程;
17.一多通道采样同步模块,包括adc时序调整、通道间延迟测量以及通道间延迟校正;
18.adc时序调整通过spi通讯协议回读adc内部寄存器数据,监测adc的 sysref建立/保持时间窗口寄存器,若寄存器回读值为1,表示时序违例,即sysref的有效沿出现在sclk有效沿的窗口内,sysref不满足sclk的时序条件,此时应逐步增加对应的发送至adc的
sysref延迟值,直至再次初始化后不显示时序违例,即回读值为0;
19.通道间延迟测量通过选取一个通道作为基准通道,其余的通道作为待测通道,利用信号源输出已知频率的正弦信号,再通过功率分配器和等长传输线将正弦信号输入至基准通道和待测通道,使用fpga调试工具ila收集基准通道和待测通道在同一时间段内采集到的用户数据,计算出各通道间的相位差并进一步得到通道间延迟;
20.通道间延迟校正通过按步进逐步增加待测通道的sclk延迟与sysref延迟,使得增加的延迟量尽可能接近通道间延迟值,直至增加的延迟量与测得的通道间延迟值之差的绝对值小于时钟芯片延迟的可调节最小步进;
21.一基于触发的数据存储同步模块,在采集板数据同步之后,挑选一段时间内得波形数据送至处理板fpga进行处理并在上位机进行显示,这一过程称为触发,将被挑选的数据从实现同步的align fifo中暂存入采集板内另一级实现触发的block fifo中,block fifo的读写使能信号均由处理板fpga向两块采集板fpga发送,并使用fpga idelay2单元对跨板传输的控制信号实施精确延迟调节,使接收端控制信号远离亚稳态区间,保证多模块波形数据的存储同步。
22.本发明的发明目的是这样实现的:
23.本发明一种多通道同步高速数据采集装置,包括一块处理板和两块采集子板,多块采集子板的结构相同,以并行方式采集数据,再发送给处理板;在采集子板与处理板内部具体又包括时钟管理模块、多adc数据同步模块、多通道采样同步模块、时钟同步时间戳添加和链路建立顺序管理模块以及基于触发的数据存储同步模块;时钟管理模块为整个系统提供同步的时钟,adc在采样时钟的驱动下对模拟信号进行采样,得到采样点数据后传输到采集fpga中,多 adc数据同步模块在adc中为采样点数据添加时间戳标记,在采集fpga中对采样数据进行调序,将带有标记位的采样点调整为第一路数据,并通过增加动态时延实现多adc数据流的同步,时钟同步时间戳添加和链路建立顺序管理模块对时钟同步、时间戳功能和jesd204b链路三个独立过程的工作顺序进行管理,解决三者在多adc数据同步过程中存在的冲突,多通道采样同步模块通过调节时间戳信号与发送端器件时钟的相位关系,避免了两者时序为例而产生随机延迟,并对各通道间存在的固有延迟进行了校正,基于触发的数据存储同步模块通过对跨板传输的控制信号进行精确延迟调节,实现了不同采集板之间的数据同步存储;这样整个装置实现了多通道高速数据采集的同步,且通道间延迟不超过25ps,具有同步速率快、精度高等特点。
附图说明
24.图1是本发明一种多通道同步高速数据采集装置一种具体实施方式架构图;
25.图2是时钟树级联结构的一种具体实施方式结构图;
26.图3是本系统时钟分配的一种具体实施方式结构图;
27.图4是样本点添加时间戳标记示意图;
28.图5是采样点顺序调整示意图;
29.图6是增加fifo增加动态延迟示意图;
30.图7是系统初始化流程图;
31.图8是通过寄存器监控sysref有效沿时序违例示意图;
32.图9是数据流对齐和校正流程;
33.图10fpga内数据传输与存储流程示意图。图11是控制信号时序分析模型。
具体实施方式
34.下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
35.实施例
36.图1是本发明一种多通道同步高速数据采集装置一种具体实施方式架构图。
37.在本实施例中,如图1所示,本发明一种多通道同步高速数据采集装置,包括一块处理板和两块采集子板,两块采集子板的结构相同,以并行方式采集数据,再发送给处理板;
38.在采集子板与处理板内部具体又包括如下模块:
39.时钟管理模块包括晶振和三片时钟芯片,时钟芯片采用时钟树级联结构,为整个系统提供足够多通道的同步时钟信号;
40.在本实施例中,处理板除了对2个采集子板的采样数据进行接收和处理外,还承担着对采集板的fpga进行控制和状态回读、为各采集模块时钟芯片提供时钟源的任务。处理板的时钟芯片以晶振输出的10mhz时钟为源,向采集板时钟芯片提供时钟源和同步信号。为了提高系统的可靠性,板级的信号通路都采用了差分信号的传输方式。
41.时钟同步是系统同步的基础。如果各采集子板的时钟是异步关系,那么每一次上电,各采集板的时钟相位关系就会随机变化,采样数据自然难以对齐;时钟不同步的另一个隐患就是控制信号的不确定性,系统需要两块采集板在同一时钟周期接收到由处理板发送的控制信号,这些控制信号跨越多片fpga,由时序逻辑产生,也由时序逻辑接收,如果发送侧和接收侧的时钟是异步关系,把它们作为异步信号处理,那么异步信号传输亚稳态就难以避免,控制信号必然会出现1个时钟周期的误差,由于一个时钟周期对应8个采样点,因此反映在数据上会放大成8个采样点的误差。从这个角度来看,系统也要确保不同 fpga的工作时钟是同步时钟。
42.对于单块时钟芯片,其各通道输出本身就是同步对齐。但由于本系统通道数较多、jesd204b协议还需要额外的时钟信号等原因,单块时钟芯片的通道数量不足以驱动所有的分支,系统因此采用多片时钟芯片提供时钟。与多adc的同步类似,时钟芯片的输出也需要进行同步。
43.多时钟芯片同步的基础是一种被称为时钟树的级联结构,时钟树结构也称为时钟阵列结构,如图2所示。它是指由第一级时钟芯片通过时钟输出通道向第二级时钟芯片提供时钟源,再通过脉冲输出通道向第二级时钟芯片提供同步脉冲信号,第二级的时钟芯片接收到该同步信号并响应该信号,以调整时钟输出通道的相位,并通过配置为脉冲模式的输出通道继续向第三级时钟芯片传播同步脉冲。在响应同步脉冲事件后,同一级时钟芯片所输出的时钟具有固定的相位关系。实际应用中,根据系统对时钟通道数的需求确定时钟级联结构的级数,将最后一级输出的时钟信号和脉冲信号送入系统的fpga和adc中。时钟树级
联结构不仅解决了单片时钟芯片扇出通道不足的问题,还提供了多片时钟芯片同步的解决方案。
44.晶振产生低频的源时钟信号发送给处理板上的时钟芯片,由处理板上的时钟芯片通过时钟输出通道向采集板上的时钟芯片提供时钟源,再通过脉冲输出通道向采集板时钟提供同步脉冲信号,采集板的时钟芯片接收到该同步信号后响应该信号,以调整时钟输出通道的相位,并通过配置为脉冲模式的输出通道向采集板fpga和adc提供脉冲信号,据此实现多时钟芯片的同步时钟输出;
45.在本系统中时钟树具体的实现如图3所示,本系统中采用了两级时钟树结构。在处理底板上,一块晶振芯片为第一级时钟芯片a提供10mhz的时钟源,第一级时钟芯片a通过响应来自fpga的sync命令来对齐输出时钟相位并向采集板时钟芯片发射同步脉冲信号。在采集子板上,第二级时钟芯片b1和时钟芯片b2接收第一级时钟芯片a的经过相位调整的10mhz时钟作为主时钟源,并响应来自第一级时钟芯片a的rfsync同步脉冲。对于第二级的时钟芯片,响应来自第一级时钟芯片a发出的rfsync同步信号包括两个作用:一是进行输出时钟相位对齐,包括对传递给adc的2.5ghz采样时钟(dclk)和fpga的 156.25mhz参考时钟(refclk)进行相位对齐;二是向fpga和adc发出 sysref脉冲,该脉冲被用于jesd204b链路建立和添加时间戳。
46.多adc数据同步模块包括时间戳添加模块、采样数据调序模块以及增加动态时延模块;
47.在本实施例中,每一块采集子板包含4片2.5gsps采样率12bits分辨率的 adc,adc对4路模拟信号进行采样后将采样数据传输至fpga,时钟芯片提供给adc所需的2.5ghz采样时钟sclk和fpga gt口所需的参考时钟 refclk。根据jesd204b协议,时钟芯片还发送sysref脉冲至所有adc和 fpga作为多帧时钟相位对齐的基准;sync信号则由fpga传递至adc,它在fpga接收到sysref后的下一个lmfc拉高,指示adc进入ilas阶段,该阶段的作用是实现单条链路间多通道数据的同步。在ilas之后便进入用户数据传输阶段,即adc开始向fpga发送采样数据。采样数据被fpga接收后,会通过jesd204ip核进行解码、降速等操作转换成用户可以处理的采样数据。在对采样数据进行一些预处理后,两块采集模块的数据再汇集至处理模块 fpga,进行更高层次的数据处理任务。
48.时间戳添加模块根据adc数据手册,将adc芯片的时间戳功能打开;adc 在sclk的驱动下对输入的模拟信号进行采样,将模拟信号转换为12bit的采样点数据;随后,通过adc内部的串行通道映射单元为12bit的采样点数据添加 4bit的冗余控制位,形成16bit的串行通道数据,默认情况下冗余控制位的值为 0,当由时钟管理模块发送的时间戳标记信号sysref上升沿到来时,对上升沿之后的第一个采样点进行标记,具体方式是把冗余控制位中的其中一位进行置 1,完成时间戳的添加;
49.本实施例采用的adc(ad96xx)没有专用的时间戳端口,而是利用sysref 作为时间戳信号,阅读技术手册后根据寄存器配置说明,将sysref用于本地多帧时钟相位对齐的功能禁用,而改为时间戳功能,ad96xx系列使用16bits 传输12bits的样本点,因此选择剩余4个bits的其中一位携带时间戳标记。adc 为样本点添加时间戳标记位的过程如图4所示,器件时钟sclk对sysref采样,当检测到sysref信号从低电平到高电平的跳变时,对之后的第一个采样点数据进行标记,进行时间戳标记的具体方法是选择待标记采样点对应4位冗余
控制位中的一位进行置1操作,在其余任何时候该控制位均为0。
50.采样数据调序模块对由adc传输到fpga并完成降速之后的k路并行数据进行调序:检测时间戳标记出现在并行数据的位置,记为l,1≤l≤k;将原并行数据的第1至l

1路延迟两个dclk周期,原并行数据的第路至第路延迟一个dclk周期,形成延迟后的并行数据;最后将延迟后的并行数据按第l路至第k路、第1路至第l

1路的顺序重新依次排列,形成调序后的并行数据;
51.由于fpga时钟速率的限制,因此必须通过降低时钟速率提升位宽的方式接收和传输adc的采样数据,本系统单片adc的数据位宽为12bits,时钟速率高达2.5ghz,而经过fpga解串器后时钟速率会降低为312.5mhz,位宽会相应地提升至96bits,这意味着在fpga内,一个数据时钟周期对齐的是8个采样点,携带时间戳标记的采样点可能是存在于8路数据中的任意一路,因此首先调整各路数据流的顺序,使得携带时间戳标记的采样点固定在8路数据中的第一路。
52.对采样点调整顺序如图5所示,采样点顺序调整在检测到timestamp(时间戳标记信号)为高后开始进行,将携带时间戳标记的采样点(d4)移动到原第一个采样点的位置,同一时钟周期在d4之后的3个采样点(d5、d6、d7)和下一时钟周期靠前的4个采样点(d8、d9、d10、d10)补齐余下7个采样点的位置,此时数据有效使能才拉
53.增加动态时延模块使用多片fifo分别为每通道调序后的并行数据增加动态延迟,当某一通道调序后的并行数据被检测出含有时间戳标记位“1”时,则开启对应通道的fifo的写使能;当所有通道调序后的并行数据均被检测出含有时间戳标记位“1”后,则开启所有通道的fifo的读使能,且保持写使能开启,读写保持平衡,各通道并行数据被动态地增加延迟,形成最终的用户数据流;
54.数据流的顺序经过调整后,各通道数据存在着整数倍时钟周期的相位差,即:δt=
±
n*3.2ns,n=1,2,3,

;为此,我们可以将经过顺序调整的数据流送往一个fifo阵列,每片adc数据分别送往一个fifo。fifo的写位宽和读位宽保持一致,均为96bits。fifo的写使能为数据有效使能;当检测到所有的fifo都有数据写入后,所有fifo再一起打开读使能,写使能也不关闭,fifo保持边写边读的读写平衡状态,这样快路数据就增加了相应延迟和慢路数据保持对齐,通过fifo为快路数据增加动态延迟的过程如图6所示。
55.时钟同步、时间戳添加和链路建立顺序管理模块,确定时钟同步、时间戳添加和传输链路建立三个独立过程的工作顺序,系统处理板上的fpga分三次向时间管理模块发送同步脉冲,具体处理流程如下:
56.fpfa第一次发送的同步脉冲至时钟管理器后,时钟管理器内的时钟分配网络进行复位操作,完成时钟同步过程;随后,fpga向时钟管理器发送spi命令,一方面屏蔽时钟分配网络对同步脉冲的响应,另一方面打开脉冲分配网络对同步脉冲的响应;同时,fpga还向adc发送spi命令,对adc的默认寄存器数据进行改写,禁用adc中默认的多帧时钟对齐功能,打开时间戳功能;
57.fpfa第二次发送的同步脉冲至时钟管理器后,时钟管理器内的脉冲分配网络进行复位操作,产生系统的参考脉冲sysref,并分别反馈给fpga和所有 adc;当fpga内部的千兆收发器模块接收到参考脉冲sysref后,置高由 fpga发送到每个adc的syncb信号,当adc接收到被置高的syncb信号后,开始向fpga传输串行通道数据流,完成数据传输链路建立过
程;
58.fpfa第三次发送的同步脉冲至时钟管理器后,时钟管理器内的脉冲分配网络再次进行复位操作,第二次产生系统的参考脉冲sysref,并分别反馈给 fpga和所有adc;当adc接收到参考脉冲sysref后,标记参考脉冲sysref 上升沿时刻之后的第一个采样点数据,并将其所对应的串行通道数据的冗余控制位中的某一位置1,其余位保持为0,从而完成时间戳标记过程;
59.在实际调试时,发现时钟同步、时间戳功能以及jesd204b链路建立存在冲突,当时钟芯片响应sync/rfsync事件时,时钟相位调整和脉冲发送将同时进行,后级时钟芯片在接收到脉冲信号时又会进行相同的动作。但此时后级时钟芯片的输入时钟源相位不稳,在这种情况下进行的输出时钟相位对齐自然会失效。
60.将上述的后级时钟芯片替换为adc和fpga也会出现类似的问题,若adc 在采样时钟或fpga在参考时钟相位不稳定时接收到sysref脉冲,那么有极大概率出现无法识别该脉冲的情况,造成的后果有两个:1、链路无法建立,2、时间戳无法标记。
61.最后,jesd204b链路建立和时间戳标记是两个独立的过程,在adc发送 k码或者ilas的时候,时间戳标记是无法添加的。因此,需要对三个过程顺序进行管理。
62.完整的配置流程如图7所示,图中的sync箭头是指处理底板的fpga向处理底板的时钟芯片发送sync同步脉冲,该流程的核心思想是将时钟芯片时钟相位对齐和向后级发射脉冲分为两步。做法是在时钟芯片对输出时钟通道进行相位调整对齐后,检测到时钟芯片锁相环锁定后,时钟通道的sync使能关闭使其屏蔽后续接收的sync事件,脉冲通道的配置不变,继续保持向后级传播同步脉冲的状态。然后还要将链路建立过程与时间戳标记过程分为两步,具体而言是指采集板时钟芯片发送两次sysref脉冲至adc和fpga。第一次脉冲事件的目的是向fpga方发送链路建立的命令,adc是否接收该脉冲不会产生任何影响,因为根据前文所述,此时时间戳功能是不生效的;第二次脉冲事件是为了给adc的采样数据添加上时间戳标记,fpga是否该脉冲也不会产生任何影响,因为fpga jesd204b ip核设置为只响应一次脉冲,因此在链路建立后不会对后续sysref进行回应。
63.至此,数据传输链路已经建立完毕,携带时间戳标记的采样数据将会进入 fpga并根据前文所述的时间戳同步内容进行数据对齐。
64.多通道采样同步模块包括adc时序调整、通道间延迟测量以及通道间延迟校正;
65.adc时序调整通过spi通讯协议回读adc内部寄存器数据,监测adc的 sysref建立/保持时间窗口寄存器,若寄存器回读值为1,表示时序违例,即 sysref的有效沿出现在sclk有效沿的窗口内,sysref不满足sclk的时序条件,此时应逐步增加对应的发送至adc的sysref延迟值,直至再次初始化后不显示时序违例,即回读值为0;
66.通道间延迟测量通过选取一个通道作为基准通道,其余的通道作为待测通道,利用信号源输出已知频率的正弦信号,再通过功率分配器和等长传输线将正弦信号输入至基准通道和待测通道,使用fpga调试工具ila收集基准通道和待测通道在同一时间段内采集到的用户数据,计算出各通道间的相位差并进一步得到通道间延迟;
67.通道间延迟校正通过按步进逐步增加待测通道的sclk延迟与sysref延迟,使得增加的延迟量尽可能接近通道间延迟值,直至增加的延迟量与测得的通道间延迟值之差的绝对值小于时钟芯片延迟的可调节最小步进;
68.经过fpga软逻辑对齐后的多通道数据还存在随机部分和固定部分的延迟值差异。随机延迟来源于sysref信号与器件时钟的时序违例所造成的亚稳态现象,通过调节sysref与器件时钟的相位关系可以避免出现亚稳态消除这部分随机延迟;固定延迟来源于数据传输路径不一致,通过之前部署的时间戳机制配合下文将要叙述的延迟调节就可以减小固定延迟直至小于一个可编程延迟值。
69.如图8所示,本发明实施例所用adc内含一个sysref建立时间和保持时间的监控寄存器,若sysref的有效沿出现在clk有效沿的窗口内,则该寄存器读出值将为1,警告用户sysref不满足clk的时序条件,该窗口宽度还可以增大以留出更多的裕量。在时钟芯片为adc提供了稳定的时钟之后,发送 sysref脉冲信号,再回读上述寄存器值,若值为0,则不必进行任何调整;若为1,则增加相应sysref脉冲的延迟值,再重复上述过程直到回读值变为0。对于本实施例而言,一个采样时钟周期为400ps,而时钟芯片输出通道的可编程延迟值为25ps,可调整步进为0~23,因此总能找出一个合适值使得sysref的有效沿不会落在clk的时序违例窗口内。最后需要注意的是,所有adc都必须进行此操作。
70.之后确定一个参考通道,其余通道为待测通道,输入同样的信号测量参考 通道和待测通道的相位差。该信号通过功率分配器从一个信号源一分为二得到, 并通过等长传输线连接至系统;相位差测量的方法可以采用互相关相位差测量 法、三参数正弦拟合或者其他的信号相位差测量算法,这里不详细讨论。计算 的结果可以用以下式子表示:δt=k*t c*d m,其中,δt是计算得到的通道 间延迟,t为采样时钟周期,d为时钟芯片可编程延迟值,k和c为大于等于0 的整数,m是小于d的延迟部分。该式子的含义是将通道间延迟值划分为k个 时钟周期、c个可调整最小步进和余下不能调整的延迟m部分。以本实施例为 例,t=400ps,d=25ps,若测δt为736ps,则δt可分解为: δt=736ps=1*400ps 13*25ps 11ps;
71.为滞后通道的sysref信号延迟k个t延迟值(采用不同于d的数字延迟通道),可以将滞后信号数据提前k个时钟周期,因为sysrff信号以整数倍时钟周期移动,所以不会产生新的时序违例;为滞后通道的sysref信号和clk 信号同时延迟c个d延迟值(不用于t的模拟延迟通道),可以将滞后数据提前 c*d时间值,因为sysref与clk同时移动,相位关系不会发生变化所以也不会产生时序违例。经过上述分解,m始终会小于d,对于本实施例来说也就是25ps。上述完整的数据流对齐和校正流程如图9所示。
72.基于触发的数据存储同步模块,在采集板数据同步之后,挑选一段时间内得波形数据送至处理板fpga进行处理并在上位机进行显示,这一过程称为触发,将被挑选的数据从实现同步的align fifo中暂存入采集板内另一级实现触发的block fifo中,block fifo的读写使能信号均由处理板fpga向两块采集板fpga发送,并使用fpga idelay2单元对跨板传输的控制信号实施精确延迟调节,使接收端控制信号远离亚稳态区间,保证多模块波形数据的存储同步。
73.采集板fpga内数据同步之后,由于io口数量和速率的限制,只能挑选一段时间内的波形数据送至处理板fpga进行处理并在上位机进行显示,这一挑选的过程被称为触发。被挑选的数据会在采集板内另一级fifo进行暂存,本文将之前用作数据流同步的一级fifo称为align fifo,用作数据暂存实现触发功能的一级fifo称为block fifo。尽管生成触发的方式多种多样,但是最终都反映成block fifo的读写使能。
74.表1 触发系统不同阶段的block fifo读写控制
75.阶段写读预触发√
×
等待触发√√(但数据无效)触发后√
×
写满后
×
√(数据有效)
76.如表1,预触发是保证触发前一段时间的波形数据也能够被观察到,这时候block fifo只写不读,在写满预触发所要求的点数后进入等待触发阶段。等待触发阶段,block fifo边写边读保持数据更新,这时候block fifo输出数据无效。触发信号到来,block fifo关闭读使能直至写满。写满后的block fifo 中的数据即为应该传送至处理板并在上位机显示的数据,此时数据有效使能置为有效,将所有数据传递至后端进行处理并显示。
77.fifo的读写位宽为96bits,而最终采集板fpga与处理板fpga的数据总线宽度仅为12bits,因此在fifo写满后的读阶段,每八个时钟周期才生成一个读使能,读使能持续一个时钟周期,在上一个读使能有效到下一个读使能有效的间隔期需要把96bits数据转换成12bits的数据轮流送至处理板fpga。整个传输流程如图10所示,jesd204b ip核将adc采样数据进行解扰、解映射、降速升位宽等操作。align fifo模块实现上文所述的时间戳同步逻辑。block fifo 接收上一级传输的同步数据,其读写使能信号均由处理板fpga向两块采集板 fpga发送,以达到同步存储的目的。data tx sdr模块实现上述的并串转换,并通过调用fpga select io ip核将采样数据传输至处理板fpga。rgisterinterface模块通过额外的数据总线与处理板相连,它既可以接收从上位机下达的控制命令,也能向上位机上传状态信号。
78.本系统的两块采集子板需要同时接收由处理板发送的三个控制信号:start、 fifo_wen、fifo_ren。这些信号由处理板fpga内部d触发器输出端传输至采集板fpga内部d触发器输入端,其传输延迟由三部分组成,处理板fpga内部走线延迟,pcb走线延迟,采集板fpga内部走线延迟。当传输延迟与时钟周期相比拟时,控制信号将难以满足接收端d触发器的时序条件,亚稳态将会产生,前文所述的两块采集子板的波形存储与传输将会产生一个时钟周期共8 个采样点的误差。
79.本施例采用的方法是:调节采集板fpga内部走线延迟,使数据信号的跳变沿避免出现在目的时钟的亚稳态窗口内。具体实现是利用xilinx 7系列fpga 内部集成的idelay2模块,将输入信号以78ps为步进逐步增加延迟,使得控制信号远离目的时钟的亚稳态区间。
80.相应的时序分析模型如图11所示。t
co
是fpga触发器时钟到输出延迟,t
net
是控制信号传输延迟,t
sys

clk2

t
sys

clk1
=t
skew
。除此之外,t
period
是系统时钟周期,t
setup
和t
hold
分别为fpga d触发器建立时间和保持时间,t
slack.setu
和 t
slack.hold
分别为fpga d触发器建立时间裕量和保持时间裕量,通过idelay2模块增加的延迟为δt
net

81.根据静态时序分析理论,有以下两式:
82.t
slack.setup
=t
period
t
skew

t
co

t
net

t
setup

δt
net
83.t
slack.hold
=t
co
t
net

t
skew

t
hold
δt
net
84.进而可以得到:t
skew

t
co

t
net
t
hold
<t
skew

t
co

t
net
t
period

t
setup
,通过 idelay2增加的延迟需要处于(t
skew

t
co

t
net
t
hold
,t
skew

t
co

t
net
t
period

t
setup
)的区间内。在上述参数无法准确获知的情况下,可以通过重复发送控制信号观 察其有效沿对齐的数据是否一致
来逐步调整该延迟值,最佳情况是δt
net
处于 (t
skew

t
co

t
net
t
hold
,t
skew

t
co

t
net
t
period

t
setup
)区间的中间。确定延迟值后对 采集板fpga和处理板fpga内部相关电路进行固定布线的约束,避免fpga 重新进行布局布线后走线延迟发生变化。
85.尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜