掌桥专利:专业的专利平台
掌桥专利
首页

基于数据存储指示控制的FFT计算补零控制装置及方法

文献发布时间:2024-04-18 19:58:30


基于数据存储指示控制的FFT计算补零控制装置及方法

技术领域

本发明涉及FFT(Fast Fourier Transform,快速傅里叶变换)计算设备技术领域,尤其涉及一种基于数据存储指示控制的FFT计算补零控制装置及方法。

背景技术

快速傅里叶变换FFT是数字信号处理中常用的算法。FFT计算设备支持的采集数据输入点数与采用的FFT算法密切相关,例如FFT采用基-N算法(N通常为2或4),硬件装置便只能支持N

在实时采集计算的FFT计算设备中,采集数据是以数据流的方式依次写入一个可读可写的RAM,采集数据全部写入后FFT计算设备再将对应数据依次读出进行运算,因而现有技术中FFT计算设备中补零操作通常是采用在数据流末尾控制补零的方式实现,即先进行点数判断确定出存储点数,在向FFT数据存储RAM存储M个数据后,判断出需要进行补零操作后计算出补零数量N

发明内容

本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、复杂程度低、硬件资源消耗少且实时性以及鲁棒性强的基于数据存储指示控制的FFT计算补零控制装置及方法。

为解决上述技术问题,本发明提出的技术方案为:

一种基于数据存储指示控制的FFT计算补零控制装置,包括:

实时采集数据模块,用于实时采集FFT计算所需的M个数据写入指定的存储空间中,并将写入数据在存储空间的存储状态以及存储地址发送给指示寄存器模块,其中M≤N

指示寄存器模块,用于根据实时采集的FFT计算所需数据在所述存储空间的存储状态、存储地址配置指示寄存器中的各数据位,其中将指示寄存器中对应存储空间中存储有数据的各数据位配置为第一标志,其余数据位配置为第二标志;

数据输出控制模块,用于当接收到数据读取请求时,根据所述指示寄存器中各数据位控制输出N

进一步的,所述实时采集数据模块包括相互连接的数据采集单元以及状态发送单元,所述数据采集单元实时采集FFT计算所需的M个数据并写入指定的存储空间中,由所述状态发送单元将该M个数据的存储状态以及存储地址发送给指示寄存器模块。

进一步的,所述指示寄存器模块还包括与所述指示寄存器连接的配置单元,以用于当所述实时采集数据模块将实时采集到的M个FFT计算所需数据写入指定的存储空间时,将所述指示寄存器中对应存储空间中M个写入数据的数据位配置为所述第一标志,以及将存储空间中N

进一步的,所述指示寄存器的数据位数与存储空间的大小对应,即存储空间的每个数据对应所述指示寄存器中一个数据位。

进一步的,所述指示寄存器模块还包括与所述指示寄存器连接的复位控制单元,用于当接收到有效复位信号时,控制所述指示寄存器进行复位。

进一步的,所述数据输出控制模块包括相互连接的标志判断单元以及控制选择单元,当接收到数据读取请求、需要从存储空间输出N

进一步的,所述存储空间为RAM存储器、flash存储器、缓存或辅助存储器中任意一种。

一种FFT处理器,包括数据读取模块、FFT计算模块,所述数据读取模块用于读取FFT计算所需的N

一种基于数据存储指示控制的FFT计算补零控制方法,步骤包括:

步骤S01.实时采集FFT计算所需的M个数据写入指定的存储空间中,输出M个写入数据在存储空间的存储状态以及存储地址,其中M≤N

步骤S02.根据实时采集的M个FFT计算所需数据在所述存储空间的存储状态、存储地址配置一指示寄存器中的各数据位,其中将所述存储空间中M个存储有数据所对应的各数据位配置为第一标志,存储空间中N

步骤S03.当接收到数据读取请求时,根据所述指示寄存器中各数据位控制输出N

进一步的,所述步骤S01前还包括当接收到复位信号且有效时,控制指示寄存器中各数据位复位。

与现有技术相比,本发明的优点在于:本发明针对于FFT数据存储的特性,从FFT数据存储的角度实现对FFT计算数据的补零指示控制,通过由实时采集数据模块实时采集FFT计算所需数据写入指定的存储空间中,同时将写入数据在存储空间的存储状态以及存储地址发送给指示寄存器模块,由指示寄存器模块根据实时采集的M个FFT计算数据在存储空间的存储状态、存储地址配置指示寄存器中的各数据位,以使得由不同数据位对应是否存储有数据的状态,再结合数据输出控制模块根据指示寄存器中各数据位直接控制输出存储数据或补零,使得无需执行点数判断、补零判断、补零数量计算、补零地址生成等复杂操作,即可快速实现对FFT计算过程中的补零操作,大大减少FFT计算过程中补零的复杂程度以及所需的硬件资源,同时具有非常好的鲁棒性,可以适用于FFT计算中各类型需要补零的场合。

附图说明

图1是本实施例基于数据存储指示控制的FFT计算补零控制装置的结构示意图。

图2是本实施例中基于补零操作实现FFT计算的原理示意图。

图3是本发明在具体应用实施例中基于数据存储指示控制的FFT计算补零控制装置的结构原理示意图。

图4是本发明在具体应用实施例中FFT计算补零的详细实现流程示意图。

图例说明:1、实时采集数据模块;101、数据采集单元;102、状态发送单元;2、指示寄存器模块;201、指示寄存器;202、配置单元;203、复位控制单元;3、数据输出控制模块;301、标志判断单元;302、控制选择单元;4、数据读取模块。

具体实施方式

以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。

如本发明公开所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。本发明公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。

在FFT计算设备中通常设置有实时采集数据模块以及FFT数据存储RAM,实时采集数据模块用于实时采集所需FFT计算的数据,存储至该FFT数据存储RAM中。为实现FFT计算设备中补零操作,传统操作通常是在实时采集数据模块与FFT数据存储RAM中间设置一个补零装置,当实时采集数据模块开始向FFT数据存储RAM存储数据时,由补零装置获取当前一次性存入的数据个数M,然后据此进行点数判断,该M值是否为N

实时采集数据模块在存储各组FFT计算数据时,无论数据个数M是否等于N

如图1所示,本实施例基于数据存储指示控制的FFT计算补零控制装置包括:

实时采集数据模块1,用于实时采集FFT计算所需的M个数据写入指定的存储空间中,并将写入数据在存储空间的存储状态以及存储地址发送给指示寄存器模块2,其中M≤N

指示寄存器模块2,用于根据实时采集的FFT计算所需数据在存储空间的存储状态、存储地址配置指示寄存器201中的各数据位,其中将指示寄存器201中对应存储空间中存储有数据的各数据位配置为第一标志,其余数据位配置为第二标志;

数据输出控制模块3,用于当接收到数据读取请求时,根据指示寄存器201中各数据位控制输出N

本实施例中,实时采集数据模块1的输入端与FFT计算设备中的实时采集数据模块连接,输出端分别与指定的存储空间、指示寄存器模块2连接,以将实时采集数据模块实时采集的FFT计算数据控制写入指定的存储空间中,同时将数据存储状态以及存储地址发送给指示寄存器模块2。

进一步的,本实施例中实时采集数据模块1具体包括数据采集单元101以及状态发送单元102,数据采集单元101实时采集FFT计算所需的M个数据并写入指定的存储空间中,由状态发送单元102将该M个数据的存储状态以及存储地址发送给指示寄存器模块2。每当将一个实时采集到的FFT所需计算数据存储至存储空间时,对应的产生存储状态以及存储地址发送给指示寄存器模块2。例如使用“1”表示存储有数据的状态,使用“0”表示未存储数据的状态,将表示存储状态的“1”/“0”与存储地址一并发送给指示寄存器模块2。则当指示寄存器模块2接收到上述状态信息后,即可确定存储空间中各存储地址的数据存储状态。可以理解的是,也可以根据实际需求配置在存储完M个数据后,统一获取各存储地址的存储状态发送给指示寄存器模块2,具体可以根据实际需求配置。

在一个可选的实施例中,实时采集数据模块1可由FFT计算设备内部的实时采集数据模块实现数据采集功能,同时为实时采集数据模块配置一个状态发送单元102,以将实时采集数据模块实时采集的数据写入指定存储空间后的存储状态以及存储地址发送给指示寄存器模块2。即实时采集数据模块1可以在FFT处理器中原始实时采集数据模块的基础上,增加数据存储状态发送的功能,以使得结合指示寄存器模块2能够指示存储空间中数据存储的状态,进而可以从FFT数据在存储空间存储的角度快速实现补零指示控制,而无需如传统FFT处理器需要在实时采集数据模块与存储模块之间增加补零装置来完成点数判断、补零判断、补零数量计算、补零地址生成等复杂操作。

实时采集数据模块1进行实时数据采集时,一次会将多个FFT计算数据组放入存储空间中,因而需要进行全存储空间指示。本实施例中,指示寄存器模块2中配置有一指示寄存器201,指示寄存器201的数据位数与存储空间的大小对应,即存储空间的每个数据对应所述指示寄存器201中一个数据位。由该指示寄存器201中各数据位分别对应整个存储空间的数据存储状态,一次FFT计算所需的数据量与每组FFT计算数据对应的数据位对应。例如指示寄存器201中有N

本实施例中,还包括与指示寄存器201连接的配置单元202,以用于当实时采集数据模块1将实时采集到的M个FFT计算所需数据写入指定的存储空间时,将指示寄存器201中对应存储空间中M个写入数据的数据位配置为第一标志,以及将存储空间中N

可以理解的是,指示寄存器模块2中可以配置一个指示寄存器,由指示寄存器中各数据位对应整个存储空间中的每个可存放样本的空间个数,当然也可以配置多个指示寄存器,由每个指示寄存器分别对应整个存储空间中的每个可存放样本的空间个数,使得还可以同时批量进行FFT计算过程中的补零操作,指示寄存器的数量以及数据位设置均可以根据实际需求配置。

本实施例中,第一标志具体配置为“1”,以用于标识存储空间对应位置已存入数据,则对应的输出数据为存储空间中的存储数据,第二标志具体配置为“0”,以用于表示存储空间对应位置未存入数据,对应的输出数据需要进行补零。当在FFT计算过程中需要读取N

本实施例中,指示寄存器模块2还包括与指示寄存器连接的复位控制单元203,用于当接收到有效复位信号时,控制指示寄存器201进行复位。例如,当完成上一次补零操作需要进行复位时,产生复位信号给指示寄存器模块2,指示寄存器模块2接收到该有效复位信号后,控制各指示寄存器201的数据位复位为初始状态,等待进行下一次的补零控制操作。

在一个可选的实施例中,配置单元202以及复位控制单元203可以由同一个控制器实现,该控制器的输入端与实时采集数据模块1的输出端连接,复位控制端接收复位信号,控制器的输出端与指示寄存器201。当控制器接收到据写入模块1发送的数据存储状态以及存储地址时,控制指示寄存器201根据数据存储状态以及存储地址配置对应的各数据位的值,当接收到复位信号时,则控制各指示寄存器201的数据位复位为初始状态。

本实施例中,数据输出控制模3具体包括标志判断单元301以及控制选择单元302,当接收到数据读取请求、每次需要从存储空间输出一个数据时,标志判断单元301依次判断指示寄存器201中各数据位,如果为第一标志,启动控制选择单元302按照第一控制逻辑,控制直接将存储空间中存储的数据输出,如果为第二标志,启动控制选择单元302按照第二控制逻辑控制进行补零操作,即控制输出0,以使得最终输出数据能够扩充到N

本实施例通过配置指示寄存器标识FFT计算所需数据在存储空间的存储状态,进而依据该指示寄存器所标识的存储状态控制输出存储空间存储的数据或补0数据,实现为FFT计算补零。当置在复位信号有效时,执行对所有指示寄存器置0的操作。当需要补零的M个实时采集数据进入存储空间时,数据正常写入RAM的前M个空间,同时将指示寄存器模块中对应的M个指示寄存器置1。存储空间后N

本实施例上述存储空间具体可以为RAM存储器、flash存储器、缓存或辅助存储器等。以下以采用RAM作为FFT计算数据存储空间为例,对本发明上述方法进行进一步说明。

如图3所示,本实施例基于数据存储指示控制的FFT计算补零控制装置中FFT计算数据存储空间为RAM,当需要执行FFT计算时,根据实时采集数据模块提供的地址,将实时采集到的FFT计算所需数据写入该RAM中,同时标识RAM的每个空间存储状态,发送给指示寄存器模块2,根据读取数据模块提供的地址将对应数据读出RAM,且该RAM中的数据读出由数据输出控制模块3进行控制。指示寄存器模块2根据RAM空间的大小,设定对应个数的一位指示寄存器,根据RAM中数据存储状态对各数据位进行配置,实时采集数据模块对RAM进行写入时,指示寄存器模块根据写入地址将对应指示寄存器置“1”,即对应于存储有数据的数据位配置为“1”,未存储有数据的数据位配置为“0”。数据输出控制模块3接收RAM和指示寄存器模块2的输出数据,并根据指示寄存器模块2的各数据位的指示,控制选择将RAM中的数据或0数据输出给读取数据模块。具体的,读取数据模块对RAM进行读出时,指示寄存器模块2将地址对应的指示寄存器数据输出到数据控制输出模块3,数据控制输出模块3根据指示寄存器模块提供的各个指示寄存器数据,若指示寄存器为1,则将RAM中对应数据输出到读取数据模块,若指示寄存器为0,则将零数据输出到数据读取模块4。当外部复位信号有效时,模块内部所有指示寄存器复位置0,即指示寄存器模块2收到外部有效复位信号,对模块内部所有寄存器复位置0;存储数据时,模块根据存储数据地址,将对应指示寄存器置1;读取数据时,模块根据读取数据地址,输出对应指示寄存器数据。

本实施例还提供FFT处理器,包括数据读取模块、FFT计算模块,数据读取模块用于读取FFT计算所需的N

本实施例还提供基于数据存储指示控制的FFT计算补零控制方法,步骤包括:

步骤S01.实时采集FFT计算所需的M个数据写入指定的存储空间中,输出M个写入数据在存储空间的存储状态以及存储地址,其中M≤N

步骤S02.根据实时采集的M个FFT计算所需数据在存储空间的存储状态、存储地址配置一指示寄存器201中的各数据位,其中将存储空间中M个存储有数据所对应的各数据位配置为第一标志,存储空间中N

步骤S03.当接收到数据读取请求时,根据指示寄存器201中各数据位控制输出N

本实施例中,步骤S01前还包括当接收到复位信号且有效时,控制指示寄存器201中各数据位复位。

本实施例基于数据存储指示控制的FFT计算补零控制方法与上述基于数据存储指示控制的FFT计算补零控制装置对应,在此不再一一赘述。

在一个可选的应用实施例中,如图4所示,FFT计算数据存储空间具体为RAM存储器时,利用本实施例上述装置执行FFT计算的详细步骤如下:

步骤1)外部输入有效复位信号,本发明FFT计算补零装置复位。

步骤2)指示寄存器模块2收到外部复位信号,将内部所有寄存器置0。

步骤3)RAM存储实时采集数据模块的输入数据,同时指示寄存器模块2根据RAM的存储状态,将所对应的寄存器的数据位置1。

步骤4)数据输出控制模块2向本发明FFT计算补零装置发出数据读取请求。

步骤5)RAM根据读取请求将对应的数据输出给数据输出控制模块3,指示寄存器模块2根据读取请求将对应的指示寄存器的数据输出给数据输出控制模块3。

步骤6)数据输出控制模块3根据各指示寄存器的值,选择将RAM的数据或0数据输出给读取数据模块,其中如果为1则输出RAM中存储的数据,如果为0则进行补零。

步骤7)数据输出控制模块3读取实时采集数据与补零数据进行N

上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

相关技术
  • 数据存储方法、存储器存储装置及存储器控制电路单元
  • 数据存储的控制方法、装置、服务器及可读存储介质
  • 数据存储方法、存储器控制电路单元及存储器存储装置
  • 数据存储方法、装置、系统、服务器、控制节点及介质
  • 数据存储方法、存储器控制电路单元及存储器存储装置
  • 车辆控制装置、车辆控制方法、执行该方法的计算机程序及存储该计算机程序的数据存储介质
  • 一种基于FFT控制算法的纱线张力控制方法和控制系统
技术分类

06120116503164