一种数据帧定位电路及方法与流程

文档序号:16847654发布日期:2019-02-12 22:27阅读:423来源:国知局
一种数据帧定位电路及方法与流程

本发明涉及电子电路技术领域,具体地,涉及一种数据帧定位电路及方法。



背景技术:

在通信系统中,带帧头的数据经过ad转换和模拟信道后,信噪比增大,存在衰减和变形,再经过da恢复出数字数据后,帧头往往难以直接分辨,必须采取一些复杂的算法来界定帧头,相关性分析就是其中常用一种。

帧头长度越长,相关性分析的结果就越准确,定帧率就越高。但是,传统帧头定位采用纯软件处理方式,在帧头长度很长的情况下,相关性分析会占用大量计算资源,一般cpu的算力难以线速处理高速数据帧。

因此,提供一种能够线速处理高速数据帧的电路结构,从而提高帧头定位效率是本领域急需解决的技术问题。



技术实现要素:

针对现有技术中的缺陷,本发明的目的是提供一种数据帧定位电路及方法。

根据本发明提供的一种数据帧定位电路,包括:

异步fifo缓存器:包括数据流输入端以及数据流输出端;

多个移位寄存器:所述移位寄存器的输入端连接所述数据流输出端;

相关性计算电路:包括多个数字信号处理器以及加法器,所述数字信号处理器的输入端连接所述移位寄存器的输出端,所述加法器的输入端连接所有数字信号处理器的输出端。

较佳的,所述移位寄存器的数量等于所述数据流输入端输入的数据流的位宽。

较佳的,所述数据流输入端输入的数据流为16bit数据流,所述移位寄存器为16个512bit的移位寄存器,16个512bit的移位寄存器每个时钟周期输出512*16bit待相关性计算数据,所述相关性计算电路每个时钟周期输出512*16bit相关性计算结果。

较佳的,所述数字信号处理器的数量等于所有移位寄存器每个时钟周期输出的待相关性计算数据数量的一半。

较佳的,还包括存储器,连接所述相关性计算电路的输出端。

根据本发明提供的一种数据帧定位方法,包括:

异步fifo缓存步骤:异步fifo缓存器获取数据流;

待相关性计算数据产生步骤:移位寄存器从异步fifo缓存器获取数据流,产生待相关性计算数据;

相关性计算步骤:相关性计算电路获取待相关性计算数据并进行相关性计算,输出相关性计算结果,相关性计算电路包括多个数字信号处理器以及加法器。

较佳的,所述移位寄存器的数量等于数据流的位宽。

较佳的,数据流为16bit数据流,所述移位寄存器为16个512bit的移位寄存器,16个512bit的移位寄存器每个时钟周期输出512*16bit待相关性计算数据,所述相关性计算电路每个时钟周期输出512*16bit相关性计算结果。

较佳的,所述数字信号处理器的数量等于所有移位寄存器每个时钟周期输出的待相关性计算数据数量的一半;

所述数字信号处理器将接收到的待相关性计算数据进行处理,所述加法器将所有数字信号处理器的处理结果相加得到相关性计算结果。

较佳的,还包括存储步骤,存储相关性计算结果。

与现有技术相比,本发明具有如下的有益效果:

1、提供了一种可用于帧头定位的硬件结构,该结构简单成本低廉,能够适用于线速处理数据帧。

2、该结构易于实现,也可通过fpga用编程来代替实现,相较于传统方法能够提高20倍帧头定位速度。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明实施例的结构示意图;

图2为本发明相关性计算的结构示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

如图1所示,根据本发明提供的一种数据帧定位电路,包括:

异步fifo缓存器:包括数据流输入端以及数据流输出端。

多个移位寄存器:移位寄存器的输入端连接数据流输出端,移位寄存器的数量等于数据流输入端输入的数据流的位宽。

相关性计算电路:如图2所示,包括多个数字信号处理器(dsp,digitalsignalprocessing)以及加法器,数字信号处理器的输入端连接移位寄存器的输出端,加法器的输入端连接所有数字信号处理器的输出端。数字信号处理器的数量等于所有移位寄存器每个时钟周期输出的待相关性计算数据数量的一半。

存储器,连接相关性计算电路的输出端,用于存储相关性计算结果。

在本实施例中,数据流输入端输入的数据流为16bit数据流,因此移位寄存器为16个512bit的移位寄存器,16个512bit的移位寄存器每个时钟周期输出512*16bit待相关性计算数据,相关性计算电路每个时钟周期输出512*16bit相关性计算结果。相关性计算的原理可采用现有技术实现,本发明对此不做限制。每两个待相关性计算数据输入一个数字信号处理器,数字信号处理器处理16bit*16bit+16bit*16bit(在图2中,为d[15:0]*d[15:0]+d[15:0]*d[15:0]=d[32:0]),加法器处理256个33bit数据相加。

而本发明的结构除了可以采用购买得到的电子元器件实现,也可以通过fpga来实现。而经实际fpga板卡验证(fpga型号为10ax027h4f34i3sg),sys_clock时钟频率最高可达300mhz。在数据流的长度为10k*16bit的情况下,fpga加速方案比纯软件方案快20倍。

在上述一种数据帧定位电路的基础上,本发明还提供一种数据帧定位方法,包括:

异步fifo缓存步骤:异步fifo缓存器获取数据流;

待相关性计算数据产生步骤:移位寄存器从异步fifo缓存器获取数据流,产生待相关性计算数据,移位寄存器的数量等于数据流的位宽。

相关性计算步骤:相关性计算电路获取待相关性计算数据并进行相关性计算,输出相关性计算结果,相关性计算电路包括多个数字信号处理器以及加法器。数字信号处理器的数量等于所有移位寄存器每个时钟周期输出的待相关性计算数据数量的一半;数字信号处理器将接收到的待相关性计算数据进行处理,加法器将所有数字信号处理器的处理结果相加得到相关性计算结果。

存储步骤,存储相关性计算结果。

在本实施例中,数据流为16bit数据流,移位寄存器为16个512bit的移位寄存器,16个512bit的移位寄存器每个时钟周期输出512*16bit待相关性计算数据,相关性计算电路每个时钟周期输出512*16bit相关性计算结果。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

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