基于FPGA实现非同步信号采样的方法技术

技术编号:36804100 阅读:34 留言:0更新日期:2023-03-09 00:03
本发明专利技术涉及一种基于FPGA实现非同步信号采样的方法,其包括以下步骤:采样信号接收模块以原信号频率的N倍频率接收采样信号,采样信号包括采样时钟信号和与采样时钟信号对应的采样数据信号;利用上升沿信号数据压缩算法,将采样信号中连续N个采样点压缩为一个采样点,得到目标信号;向用户终端发送目标信号。本发明专利技术在对采样时钟信号进行压缩时,既能够将位于各个分组内的上升沿信号找出,又能找出位于两个分组交界处的上升沿信号,避免了现有技术中当上升沿信号位于两个分组交界时无法准确找出上升沿信号而导致的信号失真,使得到的目标信号与采样信号表征的信息一致性更高。目标信号与采样信号表征的信息一致性更高。目标信号与采样信号表征的信息一致性更高。

【技术实现步骤摘要】
基于FPGA实现非同步信号采样的方法


[0001]本专利技术属于数据采集处理
,特别是一种基于FPGA实现非同步信号采样的方法。

技术介绍

[0002]目前,在高速数字信号采集领域,有同步信号采样和非同步信号采样。同步信号采样是指从待采集的芯片(或者PCB)端,引出时钟信号到采样设备上,采样设备再根据这个时钟来工作,来实现信号的同步采集。即同步信号采集方法可以使采样设备采集信号的频率与目标信号的频率保持一致。而非同步信号采集方法则是要将采集频率调整为目标信号频率的若干倍,通过这种采样,使采集的信号精度更高。但是,采用这种非同步的信号采集方法,就无法实现信号发送端与用户终端之间数据的时间同步。
[0003]在公开号为CN111665756A的专利文件中公开了一种基于FPGA实现非同步信号采样的方法,在该专利中具体公开了接收采样信号,采样信号的频率为所述目标频率的N倍;根据预先设置的数据压缩算法,将所述采样信号中的连续N个采样点压缩为一个采样点,得到所述目标信号,其中所述目标信号表征的信息与所述采样信号表征的信息一致;向用户终端发送所述目标信号;所述采样信号包括采样时钟信号,所述根据预先设置的数据压缩算法将所述采样信号中的连续N个采样点压缩为一个采样点,包括:判断所述采样时钟信号的连续N个采样点中是否存在构成第一方向转换信号的连续两个采样点,其中,所述第一方向转换信号为上升沿信号;若是,用一个表征高电平的采样点替换所述采样时钟信号的连续N个采样点,所述采样信号包括与所述采样时钟信号对应的采样数据信号,在所述用一个表征高电平的采样点替换所述采样时钟信号的连续N个采样点之后,所述方法还包括,获取所述采样时钟信号中的构成第一方向转换信号的连续两个采样点中的表征高电平的采样点,获取与所述表征高电平的采样点对应的采样数据信号的采样点的电平状态,用表征所述电平状态的采样点替换所述采样数据信号中的连续N个采样点。
[0004]该专利的方案先将采样信号的频率扩大至目标频率的N倍;然后再将采样信号进行压缩,将连续的N个采样点压缩为一个采样点,通过这种方式实现了信号发送端与用户终端之间数据的时间同步。但是这种方案的缺点在于,因为是将采样频率扩大至目标频率的N倍,所以得到的信号的精度更高,而在信号压缩的过程中,因为压缩算法的问题,可能导致压缩后的信号失真,例如以该专利的实施例中的压缩算法为例,将采样信号的频率扩大至目标频率的4倍,再将采样信号的连续4个采样点压缩为一个采样点,如果其中存在第一方向转换信号(即从0到1的上升沿信号)则将4个采样点压缩为1,如果不存在第一方向转换信号,则将4个采样点压缩为0。对于该专利中举例的信号0011 0001 1000 0001 1100压缩成11010是没有问题的,但是如果信号的第4为和第5位为01,用该专利方法是无法识别出第一方向转换信号的,例如对于信号1100 1110 1100 1000 1111,按照该专利的方法会被压缩成0000,但是事实上,在这段信号中存在4个上升沿信号,因而采用该专利的方法会导致连续4个采样点的错误,导致采样信号的失真。

技术实现思路

[0005]本专利技术的目的在于针对
技术介绍
中所述的现有技术中的非同步信号采样方法可能导致采样信号失真的问题,提供一种能够解决前述问题的基于FPGA实现非同步信号采样的方法。
[0006]为实现以上目的,本专利技术通过以下技术方案予以实现:一种基于FPGA实现非同步信号采样的方法,其包括以下步骤:S1、采样信号接收模块以原信号频率的N倍频率接收采样信号,采样信号包括采样时钟信号和与采样时钟信号对应的采样数据信号;S2、根据数据压缩算法,将采样信号中连续N个采样点压缩为一个采样点,得到目标信号;S3、向用户终端发送目标信号;上述的步骤S2中,将采样信号中的连续N个采样点压缩为一个采样点的具体算法为:将采样信号中的采样时钟信号按顺序每N个采样点分为一组,判断各组采样点加下一组的第一个采样点共N +1个采样点中是否存在上升沿信号;如果不存在上升沿信号,则用低电平的采样点来表征该组的N个采样点;如果存在上升沿信号,且这个上升沿信号出现在该组的N个采样点中,则用一个表征高电平的采样点来替换该组的N个采样点,如果这个上升沿信号出现在该组的最后一个采样点与下一组的第一个采样点,则用低电平表征该组的N个采样点,而用高电平表征下一组的N个采样点;将采样数据信号按顺序每N个采样点分为一组,并使采样数据信号的分组与采样时钟信号的分组相对应;在采样数据信号中获取与上述的采样时钟信号中的上升沿的高电平对应的采样点的电平状态,并用该电平状态来表征其所在分组的N个采样点;在采样时钟信号中,没有上升沿的其余各组的采样点对应的采样数据信号的采样点分组,都以一个低电平来表征。
[0007]在上述方案中,所述的步骤S1中,采样信号接收模块以目标信号频率的4倍频率接收采样信号。
[0008]在上述方案中,所述的采样信号接收模块为FPGA模块,FPGA模块中设有处理器模块、存储模块和总线,处理器模块与存储模块之间通过总线通信,所述的算法和采集的数据都存储在存储模块中,处理器模块运行时调用存储器模块中的算法和采样时钟信号和采样数据信号,对采样时钟信号和采样数据信号压缩处理后,得到目标信号并存储在存储模块中。
[0009]本专利技术的有益效果为:本专利技术在对采样时钟信号进行压缩时,既能够将位于各个分组内的上升沿信号找出,又能找出位于两个分组交界处的上升沿信号,避免了现有技术中当上升沿信号位于两个分组交界时无法准确找出上升沿信号而导致的信号失真,使得到的目标信号与采样信号表征的信息一致性更高。
附图说明
[0010]图1为本专利技术的非同步信号采样的方法的原理示意图。
具体实施方式
[0011]下面通过实施例对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0012]如图1所示,本专利技术提供一种基于FPGA实现非同步信号采样的方法,其包括以下步骤:S1、采样信号接收模块以原信号频率的N倍频率接收采样信号,采样信号包括采样时钟信号和与采样时钟信号对应的采样数据信号;S2、根据数据压缩算法,将采样信号中连续N个采样点压缩为一个采样点,得到目标信号;S3、向用户终端发送目标信号;上述的步骤S2中,将采样信号中的连续N个采样点压缩为一个采样点的具体算法为:将采样信号中的采样时钟信号按顺序每N个采样点分为一组,判断各组采样点加下一组的第一个采样点共N +1个采样点中是否存在上升沿信号;如果不存在上升沿信号,则用低电平的采样点来表征该组的N个采样点;如果存在上升沿信号,且这个上升沿信号出现在该组的N个采样点中,则用一个表征高电平的采样点来替换该组的N个采样点,如果这个上升沿信号出现在该组的最后一个采样点与下一组的第一个采样点,则用低电平表征该组的N个采样点,而用高电平表征下一组的N本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA实现非同步信号采样的方法,其特征在于:其包括以下步骤:S1、采样信号接收模块以原信号频率的N倍频率接收采样信号,采样信号包括采样时钟信号和与采样时钟信号对应的采样数据信号;S2、利用数据压缩算法,将采样信号中连续N个采样点压缩为一个采样点,得到目标信号;S3、向用户终端发送目标信号;上述的步骤S2中,将采样信号中的连续N个采样点压缩为一个采样点的具体算法为:将采样信号中的采样时钟信号按顺序每N个采样点分为一组,判断各组采样点加下一组的第一个采样点共N +1个采样点中是否存在上升沿信号;如果不存在上升沿信号,则用低电平的采样点来表征该组的N个采样点;如果存在上升沿信号,且这个上升沿信号出现在该组的N个采样点中,则用一个表征高电平的采样点来替换该组的N个采样点,如果这个上升沿信号出现在该组的最后一个采样点与下一组的第一个采样点,则用低电平表征该组的N个采样点,而用高电平表征下一组的N个采样点;将采样数据信号按顺...

【专利技术属性】
技术研发人员:范国山范舟
申请(专利权)人:常州德尔科机电设备有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1