CN114995765A - 数据处理方法、装置、存储介质及电子设备 - Google Patents

数据处理方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN114995765A
CN114995765A CN202210631560.1A CN202210631560A CN114995765A CN 114995765 A CN114995765 A CN 114995765A CN 202210631560 A CN202210631560 A CN 202210631560A CN 114995765 A CN114995765 A CN 114995765A
Authority
CN
China
Prior art keywords
operand
operands
data processing
storage space
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210631560.1A
Other languages
English (en)
Other versions
CN114995765B (zh
Inventor
何鹏
王劲松
倪海峰
丁克忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Chuangxin Huilian Technology Co ltd
Original Assignee
Nanjing Chuangxin Huilian Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Chuangxin Huilian Technology Co ltd filed Critical Nanjing Chuangxin Huilian Technology Co ltd
Priority to CN202210631560.1A priority Critical patent/CN114995765B/zh
Publication of CN114995765A publication Critical patent/CN114995765A/zh
Application granted granted Critical
Publication of CN114995765B publication Critical patent/CN114995765B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

本申请提供了一种数据处理方法、装置、存储介质及电子设备,涉及数据处理领域。该方法包括:针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个操作数,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,其中,N、M和K均为正整数;基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间。通过本申请中的方案,可以将第N级迭代运算中所需的M个操作数分别映射到不同的存储空间,以解决在第N级迭代运算时可能产生的数据读取冲突问题。

Description

数据处理方法、装置、存储介质及电子设备
技术领域
本申请涉及数据处理技术领域,具体涉及一种数据处理方法、装置、存储介质及电子设备。
背景技术
在各类通信系统中,经常会利用快速傅里叶变换(Fast FourierTransformation,FFT)将时域信号转换为频域信号、或者将频域信号转换成时域信号。然而,在FFT的多次迭代运算后,会发生同一时钟、在同一个存储空间中取多个存储地址的操作数的情况、进而导致FFT存储器的读写冲突问题。
发明内容
为了解决上述技术问题,提出了本申请。本申请实施例提供了一种数据处理方法、装置、存储介质及电子设备。
第一方面,本申请一实施例提供了一种数据处理方法,包括:针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个操作数,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,其中,N、M和K均为正整数;基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间。
结合第一方面,在第一方面的某些实现方式中,在基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间之后,该方法还包括:确定M个操作数在M个操作数各自对应的存储空间中的存储地址。
结合第一方面,在第一方面的某些实现方式中,确定M个操作数在M个操作数各自对应的存储空间中的存储地址,包括:针对M个操作数中的每个操作数,基于操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定操作数在所述操作数对应的存储空间中的存储地址。
结合第一方面,在第一方面的某些实现方式中,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,包括:基于2的a次幂、以及K位二进制数值中的第a位数值、第(a+Q)位数值直至第(a+nQ)位数值,确定第a个逻辑表达式,其中,a∈{0,1……,(Q-1)},Q为以log2为底、基值P的对数,Q和n均为正整数,(a+nQ)为小于或等于(K-1)的正整数;对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算,得到操作数对应的运算结果。
结合第一方面,在第一方面的某些实现方式中,第a个逻辑表达式为:
Figure BDA0003680176990000021
结合第一方面,在第一方面的某些实现方式中,对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算的表达式为:
Figure BDA0003680176990000022
Figure BDA0003680176990000031
结合第一方面,在第一方面的某些实现方式中,基于操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定操作数在操作数对应的存储空间中的存储地址的表达式为:
Figure BDA0003680176990000032
其中,xa表示操作数对应的K位二进制数值中的第a位数值。
第二方面,本申请一实施例提供了一种数据处理装置,包括:运算模块,用于针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个操作数,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,其中,N、M和K均为正整数;确定模块,用于基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间。
第三方面,本申请一实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序用于执行第一方面所述的数据处理方法。
第四方面,本申请一实施例提供了一种电子设备,该电子设备包括:处理器;用于存储处理器可执行指令的存储器;该处理器用于执行第一方面所述的数据处理方法。
本申请实施例提供的数据处理方法,是基于操作数对应的K位二进制数值、以及FFT对应的基值,进行关于K位二进制数值的逻辑运算,再根据运算结果,将操作数存储到对应的存储空间中。通过本申请中的方案,可以将FFT的第N级迭代运算所需的M个操作数分别存储在不同的存储空间,进而解决在第N级迭代运算时产生的数据读写冲突问题。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1所示为本申请一示例性实施例提供的16点数序列在存储空间0和存储空间1中的存储示意图。
图2所示为本申请一示例性实施例提供的数据处理方法的流程示意图。
图3所示为本申请另一示例性实施例提供的数据处理方法的流程示意图。
图4所示为本申请一示例性实施例提供的得到操作数对应的运算结果的流程示意图。
图5所示为本申请一示例性实施例提供的64点数序列在基4的FFT存储器中的存储示意图。
图6所示为本申请一示例性实施例提供的数据处理装置的结构示意图。
图7所示为本申请一示例性实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
对于点数为W、基为P、采用同址计算的FFT存储器,FFT存储器会被分成P个存储空间,每个存储空间的容量为W/P个复数。将W点的FFT复数平均且连续地存储在P个存储空间中,则在第N次迭代迭代运算中,会发生一个时钟内、在同一个存储空间中取多个复数的情况。
例如,对于点数为16、基为2、采用同址计算的FFT存储器,FFT存储器被分为两个存储空间,分别记为存储空间0和存储空间1,存储空间0和存储空间1的容量分别为8个复数。首先定义FFT复数对应的16点数序列index=0,1,2,……,15,(以下将点数序列中的b描述为操作数b),则FFT复数对应的16点数序列在存储空间0和存储空间1中的存储结果如图1所示。
如图1所示,FFT的16点数序列平均且连续地存放在存储空间0和存储空间1中。其中,操作数0、操作数1、操作数2、操作数3、操作数4、操作数5、操作数6、操作数7分别存储在存储空间0中的地址0、地址1、地址2、地址3、地址4、地址5、地址6、地址7;操作数8、操作数9、操作数10、操作数11、操作数12、操作数13、操作数14、操作数15分别存储在存储空间1中的地址0、地址1、地址2、地址3、地址4、地址5、地址6、地址7。示例性地,在FFT的第一次迭代运算中,服务器从存储空间0和存储空间1中读取操作数0和操作数8,此时,操作数0和操作数8所在的存储空间不同,故不存在一个时钟内、从同一存储空间中取多个地址的操作数对应的复数的情况。示例性地,在FFT的第二次迭代运算中,服务器从存储空间0中读取操作数0和操作数4,此时,操作数0和操作数4同在存储空间0中,而服务器一个时钟内只能从一个存储空间取一个地址的操作数对应的复数,故在FFT的第二次迭代运算时,会产生数据读取冲突问题。
图2所示为本申请一示例性实施例提供的数据处理方法的流程示意图。示例性地,该数据处理方法应用于FFT算法系统。如图2所示,本申请实施例提供的数据处理方法包括如下步骤。
步骤10,针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个操作数,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果。其中,N、M和K均为正整数。
具体地,FFT的点数为W、基值为P,则FTT存储器被分成P个存储空间,每个存储空间的容量是W/P个复数。其中,存储空间chipselect∈[0,(P-1)],(存储空间chipselect∈t,在本申请说明书中描述为存储空间t),存储空间中的存储地址
Figure BDA0003680176990000071
Figure BDA0003680176990000072
(存储地址chipaddr∈f,在本申请说明书中描述为地址f)。
示例性地,FFT的点数W为64,基值P为2,则FFT存储器被分为2个存储空间,每个存储空间的容量是32个复数。存储空间chipselect∈[0,1],64点的FFT的点数序列index=0,1,2,……63。针对FFT的第4级迭代运算所需的、同在存储空间0或存储空间1中的两个操作数,进行关于操作数对应的K位二进制数值的逻辑运算。
步骤20,基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间。
沿用步骤10中的示例,若操作数对应的运算结果为0,则将其存储在存储空间0中;若操作数对应的运算结果为1,则将其存储在存储空间1中。
通过本申请实施例中的技术方案,可以方便、快捷地将FFT的第N级迭代运算所需的M个操作数分别存储到不同的存储空间,以避免在FFT的迭代运算过程中产生的一个时钟内、在同一个存储空间中读取多个地址的操作数对应的复数的情况。即本申请实施例可以简单易行地解决FFT同址运算时产生的存储空间内的地址冲突问题。
图3所示为本申请另一示例性实施例提供的数据处理方法的流程示意图。在图2所示实施例的基础上延伸出图3所示实施例,下面着重叙述图3所示实施例与图2所示实施例的不同之处,相同之处不再赘述。
如图3所示,在基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间之后,还包括如下步骤。
步骤30,确定M个操作数在M个操作数各自对应的存储空间中的存储地址。
具体地,基于FFT的点数W和基值P,FFT存储器对应的每个存储空间都包含一定数量的具体地址。
沿用步骤10中的示例,存储空间中的存储地址chipaddr∈[0,31]。
通过本实施例中的技术方案,可以确定操作数在其对应的存储空间中的存储地址,以便在进行FFT运算时,更方便、快捷地读取到对应的存储空间中的、存储地址内的操作数所对应的复数。
在本申请一示例性实施例中,确定M个操作数在M个操作数各自对应的存储空间中的存储地址,包括:针对M个操作数中的每个操作数,基于操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定操作数在操作数对应的存储空间中的存储地址。
具体地,将操作数对应的K位二进制数值、从右向左依次记为第0位数值至第(K-1)位数值。
例如,对于操作数28,其对应的二进制数值为011100,在确定了操作数28对应的存储空间后,再基于操作数的第0位数值至第(K-3)位数值、即1100,确定操作数在操作数对应的存储空间中的存储地址。
需要说明的是,在确定操作数对应的存储空间之后,可以通过任意的地址映射方式,将操作数存储在对应的存储空间中的存储地址,本申请实施例只是提供了一种可选的地址映射方式,并不是对具体的地址映射方式的限定,
本领域技术人员可以根据实际情况选择具体的地址映射方式。例如,操作数20存储在存储空间3中,则相应地,操作数20即可通过某一地址映射方式存储到存储空间3中的地址6,也可通过另一地址映射方式存储到存储空间9中。
通过本实施例中的技术方案,可以更明确地依据操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值、确定操作数在对应的存储空间中的存储地址,以便进行FFT运算时,服务器可以根据这种计算方式精确地找到该级迭代运算所需的操作数所在的存储空间中的存储地址。
图4所示为本申请一示例性实施例提供的得到操作数对应的运算结果的流程示意图。在图2所示实施例的基础上延伸出图4所示实施例,下面着重叙述图4所示实施例与图2所示实施例的不同之处,相同之处不在赘述。
如图4所示,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,包括如下步骤。
步骤11,基于2的a次幂、以及K位二进制数值中的第a位数值、第(a+Q)位数值直至第(a+nQ)位数值,确定第a个逻辑表达式。
其中,a∈{0,1……,(Q-1)},Q为以log2为底、基值P的对数,Q和n均为正整数,(a+nQ)为小于或等于(K-1)的正整数。
步骤12,对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算,得到操作数对应的运算结果。
具体地,基于当前FFT运算的基值P确定Q的取值,即
Figure BDA0003680176990000101
Figure BDA0003680176990000102
例如,FFT运算的基值为4,则Q=2。依次取a=0、a=1,基于2的a次幂、以及K位二进制数值中的第a位数值、第(a+2)位数值直至第(a+2n)位数值依次确定第0个逻辑表达式和第1个逻辑表达式。再对第0个逻辑表达式和第1个逻辑表达式进行算术运算,得到操作数对应的运算结果。
另一个示例,FFT运算的基值为8,则Q=3。依次取a=0、a=1、a=2,基于2的a次幂、以及K位二进制数值中的第a位数值、第(a+3)位数值直至第(a+3n)位数值依次确定第0个逻辑表达式、第1个逻辑表达式和第2个逻辑表达式。再对第0个逻辑表达式、第1个逻辑表达式和第2个逻辑表达式进行算术运算,得到操作数对应的运算结果。
通过本实施例中的技术方案,进一步明确了关于操作数对应的、适用性更广的K位二进制数值的运算法则,以得到准确度更高的操作数对应的运算结果。
在本申请一示例性实施例中,第a个逻辑表达式为:
Figure BDA0003680176990000111
Figure BDA0003680176990000112
具体地,首先进行关于操作数对应的K位二进制数值的异或运算,再将异或运算结果与2a进行乘法运算,以得到第a个逻辑表达式对应的运算结果。
示例性地,对于点数为64,基为4的FFT运算,则Q=2、K=6。取a=1,则第一个逻辑表达式可以具体表示为
Figure BDA0003680176990000113
在本申请一示例性实施例中,对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算的表达式为:
Figure BDA0003680176990000114
示例性地,对于点数为64,基为4的FFT运算,则Q=2、K=6,a∈[0,1],对于该FFT运算,对第0个逻辑表达式和第1个逻辑表达式进行算术运算的表达式为
Figure BDA0003680176990000115
若该表达式的运算结果为3,则将对应的操作数存储在FFT存储器的存储空间3中。
另一个示例,对于点数为128,基为8的FFT运算,则Q=3,K=7,a∈[0,1,2],对于该FFT运算,对第0个逻辑表达式、第1个逻辑表达式和第2个逻辑表达式进行算术运算的表达式为
Figure BDA0003680176990000121
Figure BDA0003680176990000122
若该表达式的运算结果为6,则将对应的操作数存储在FFT存储器的存储空间7中。
在本申请一示例性实施例中,基于操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定操作数在操作数对应的存储空间中的存储地址的表达式为:
Figure BDA0003680176990000123
其中,xa表示操作数对应的K位二进制数值中的第a位数值。
具体地,将操作数对应的K为二进制数值中的第0位数值至第(K-3)位数值转换为十进制,基于十进制数值,确定操作数在操作数对应的存储空间中的存储地址。
示例性地,对于操作数38,其对应的二进制数值为100110,此时K=6,从右向左选择100110的第0位数值至第3位数值,即0110,则上述公式的计算结果为20x0+21x1+22x2+23x3=1×0+2×1+4×1=6,即操作数38应该存储在操作数38对应的存储空间中的地址6。
下面,以点数为64,基为4的FFT算法为例,对本申请实施例中的数据处理方法进行详细地说明。
图5所示为本申请一示例性实施例提供的64点数序列在基4的FFT存储器中的存储示意图。
如图5所示,首先定义64点的FFT的点数序列为index=0,1,2,……,63,其中每个点数也可以表示为
Figure BDA0003680176990000124
xi表示操作数对应的二进制数值中的、从右向左数的第i位数值。在本实施例中,
Figure BDA0003680176990000131
即K=6,Q=2,a∈[0,1]。对应地,存储空间chipselect∈[0,1,2,3],每个存储空间中的存储地址chipaddr∈[0,15]。
例如,在第二次迭代运算时,所需的操作数数组为[1、5、9、13],该操作数数组对应的二进制数组为[000001,000101,001001,001101]。
对于二进制000001,利用前述实施例中的数据处理方法,对第0个逻辑表达式和第1个逻辑表达式进行算术运算的结果为:
Figure BDA0003680176990000132
Figure BDA0003680176990000133
即二进制000001应存储在存储空间1中。基于二进制000001中的第0位数值至第3位数值0001,公式
Figure BDA0003680176990000134
则二进制000001应存储在存储空间1中的地址1。
对于二进制000101,对第0个逻辑表达式和第1个逻辑表达式进行算术运算的结果为:
Figure BDA0003680176990000135
Figure BDA0003680176990000136
即二进制000101应存储在存储空间0中。基于二进制数值000101中的第0位数值至第3位数值0101,公式
Figure BDA0003680176990000137
则二进制000101应存储在存储空间0中的地址5。
对于二进制001001,对第0个逻辑表达式和第1个逻辑表达式进行算术运算的结果为:
Figure BDA0003680176990000138
Figure BDA0003680176990000141
即二进制001001应存储在存储空间3中。基于二进制数值001001中的第0位数值至第3位数值1001,公式
Figure BDA0003680176990000142
则二进制001001应存储在存储空间3中的地址9。
对于二进制001101,对第0个逻辑表达式和第1个逻辑表达式进行算术运算的结果为:
Figure BDA0003680176990000143
Figure BDA0003680176990000144
即二进制001101应存储在存储空间2中。基于二进制数值001101中的第0位数值至第3位数值1101,公式
Figure BDA0003680176990000145
则二进制001001应存储在存储空间2中的地址13。
上文结合图1至图5,详细描述了本申请的数据处理方法实施例,下面结合图6,详细描述本申请的数据处理装置实施例。应理解,数据处理方法实施例的描述与数据处理装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
图6所示为本申请一示例性实施例提供的数据处理装置的结构示意图。如图6所示,本申请实施例提供的数据处理装置包括:
运算模块610,用于针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个操作数,基于操作数对应的K位二进制数值、以及快速傅里叶变换对应的基值,进行关于K位二进制数值的逻辑运算,得到操作数对应的运算结果,其中,N、M和K均为正整数;
确定模块620,用于基于M个操作数各自对应的运算结果,确定M个操作数各自对应的存储空间。
在本申请一实施例中,确定模块620还用于,确定M个操作数在M个操作数各自对应的存储空间中的存储地址。
在本申请一实施例中,确定模块620还用于,针对M个操作数中的每个操作数,基于操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定操作数在所述操作数对应的存储空间中的存储地址。
在本申请一实施例中,运算模块610还用于,基于2的a次幂、以及K位二进制数值中的第a位数值、第(a+Q)位数值直至第(a+nQ)位数值,确定第a个逻辑表达式,其中,a∈{0,1……,(Q-1)},Q为以log2为底、基值P的对数,Q和n均为正整数,(a+nQ)为小于或等于(K-1)的正整数;对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算,得到操作数对应的运算结果。
在本申请一实施例中,第a个逻辑表达式为:
Figure BDA0003680176990000151
Figure BDA0003680176990000152
在本申请一实施例中,运算模块610还用于,基于
Figure BDA0003680176990000153
Figure BDA0003680176990000154
Figure BDA0003680176990000155
对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算。
在本申请一实施例中,确定模块620还用于,基于
Figure BDA0003680176990000156
对操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值进行运算,基于运算结果确定操作数在操作数对应的存储空间中的存储地址,其中,xa表示操作数对应的K位二进制数值中的第a位数值。
下面,参考图7来描述根据本申请实施例的电子设备。图7所示为本申请一示例性实施例提供的电子设备的结构示意图。
如图7所示,电子设备70包括一个或多个处理器701和存储器702。
处理器701可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备70中的其他组件以执行期望的功能。
存储器702可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器701可以运行所述程序指令,以实现上文所述的本申请的各个实施例的数据处理方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如包括M个操作数、操作数对应的二进制数值、操作数对应的运算结果等各种内容。
在一个示例中,电子设备70还可以包括:输入装置703和输出装置704,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
该输入装置703可以包括例如键盘、鼠标等等。
该输出装置704可以向外部输出各种信息,包括M个操作数、操作数对应的二进制数值、操作数对应的运算结果等。该输出装置704可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图7中仅示出了该电子设备70中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备70还可以包括任何其他适当的组件。
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述描述的根据本申请各种实施例的数据处理方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述描述的根据本申请各种实施例的数据处理方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个所述操作数,基于所述操作数对应的K位二进制数值、以及所述快速傅里叶变换对应的基值,进行关于所述K位二进制数值的逻辑运算,得到所述操作数对应的运算结果,其中,N、M和K均为正整数;
基于所述M个操作数各自对应的运算结果,确定所述M个操作数各自对应的存储空间。
2.根据权利要求1所述的数据处理方法,其特征在于,在所述基于所述M个操作数各自对应的运算结果,确定所述M个操作数各自对应的存储空间之后,还包括:
确定所述M个操作数在所述M个操作数各自对应的存储空间中的存储地址。
3.根据权利要求2所述的数据处理方法,其特征在于,所述确定所述M个操作数在所述M个操作数各自对应的存储空间中的存储地址,包括:
针对所述M个操作数中的每个所述操作数,基于所述操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定所述操作数在所述操作数对应的存储空间中的存储地址。
4.根据权利要求1至3任一项所述的数据处理方法,其特征在于,所述基于所述操作数对应的K位二进制数值、以及所述快速傅里叶变换对应的基值,进行关于所述K位二进制数值的逻辑运算,得到所述操作数对应的运算结果,包括:
基于2的a次幂、以及所述K位二进制数值中的第a位数值、第(a+Q)位数值直至第(a+nQ)位数值,确定第a个逻辑表达式,其中,a∈{0,1……,(Q-1)},Q为以log2为底、所述基值P的对数,Q和n均为正整数,(a+nQ)为小于或等于(K-1)的正整数;
对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算,得到所述操作数对应的运算结果。
5.根据权利要求4所述的数据处理方法,其特征在于,所述第a个逻辑表达式为:
Figure FDA0003680176980000021
6.根据权利要求5所述的数据处理方法,其特征在于,所述对第0个逻辑表达式直至第(Q-1)个逻辑表达式进行算术运算的表达式为:
Figure FDA0003680176980000022
7.根据权利要求3所述的数据处理方法,其特征在于,所述基于所述操作数对应的K位二进制数值中的第0位数值至第(K-3)位数值,确定所述操作数在所述操作数对应的存储空间中的存储地址的表达式为:
Figure FDA0003680176980000023
其中,xa表示所述操作数对应的K位二进制数值中的第a位数值。
8.一种数据处理装置,其特征在于,包括:
运算模块,用于针对快速傅里叶变换的第N级迭代运算中所需的、在同一存储空间中的M个操作数中的每个所述操作数,基于所述操作数对应的K位二进制数值、以及所述快速傅里叶变换对应的基值,进行关于所述K位二进制数值的逻辑运算,得到所述操作数对应的运算结果,其中,N、M和K均为正整数;
确定模块,用于基于所述M个操作数各自对应的运算结果,确定所述M个操作数各自对应的存储空间。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1至7任一项所述的数据处理方法。
10.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于执行上述权利要求1至7任一项所述的数据处理方法。
CN202210631560.1A 2022-06-06 2022-06-06 数据处理方法、装置、存储介质及电子设备 Active CN114995765B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210631560.1A CN114995765B (zh) 2022-06-06 2022-06-06 数据处理方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210631560.1A CN114995765B (zh) 2022-06-06 2022-06-06 数据处理方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN114995765A true CN114995765A (zh) 2022-09-02
CN114995765B CN114995765B (zh) 2023-11-21

Family

ID=83032141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210631560.1A Active CN114995765B (zh) 2022-06-06 2022-06-06 数据处理方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN114995765B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3932695A1 (de) * 1988-09-30 1990-04-05 Hitachi Ltd Datenverarbeitungssystem vom mehrfach virtuellen adressraum-typ
CN1504890A (zh) * 2002-12-03 2004-06-16 中国科学院计算技术研究所 数据全并行的fft处理器地址映射方法和系统
CN101339546A (zh) * 2008-08-07 2009-01-07 那微微电子科技(上海)有限公司 地址映射方法和操作数并行的fft处理系统
CN105718424A (zh) * 2016-01-26 2016-06-29 北京空间飞行器总体设计部 一种并行快速傅立叶变换处理方法
CN111258950A (zh) * 2018-11-30 2020-06-09 上海寒武纪信息科技有限公司 原子访存方法、存储介质、计算机设备、装置和系统
CN112800386A (zh) * 2021-01-26 2021-05-14 Oppo广东移动通信有限公司 傅里叶变换处理方法和处理器、终端、芯片及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3932695A1 (de) * 1988-09-30 1990-04-05 Hitachi Ltd Datenverarbeitungssystem vom mehrfach virtuellen adressraum-typ
CN1504890A (zh) * 2002-12-03 2004-06-16 中国科学院计算技术研究所 数据全并行的fft处理器地址映射方法和系统
CN101339546A (zh) * 2008-08-07 2009-01-07 那微微电子科技(上海)有限公司 地址映射方法和操作数并行的fft处理系统
CN105718424A (zh) * 2016-01-26 2016-06-29 北京空间飞行器总体设计部 一种并行快速傅立叶变换处理方法
CN111258950A (zh) * 2018-11-30 2020-06-09 上海寒武纪信息科技有限公司 原子访存方法、存储介质、计算机设备、装置和系统
CN112800386A (zh) * 2021-01-26 2021-05-14 Oppo广东移动通信有限公司 傅里叶变换处理方法和处理器、终端、芯片及存储介质

Also Published As

Publication number Publication date
CN114995765B (zh) 2023-11-21

Similar Documents

Publication Publication Date Title
TWI409695B (zh) 用於配置裝置之系統、方法及裝置
JP3599352B2 (ja) フレキシブルなn−ウェイ・メモリ・インターリーブ方式
US9652374B2 (en) Sparsity-driven matrix representation to optimize operational and storage efficiency
CN109145080B (zh) 一种文本指纹获得方法及装置
US9940102B2 (en) Partial stochastic rounding that includes sticky and guard bits
WO2017074368A1 (en) Machine learning classifiers
US20100138464A1 (en) Digital Signal Processor Having Instruction Set With One Or More Non-Linear Functions Using Reduced Look-Up Table With Exponentially Varying Step-Size
US9244886B1 (en) Minimum resource fast fourier transform
CN111435383A (zh) 数据处理方法、数据处理芯片及电子设备
CN111638925A (zh) 一种接口方法表生成方法、函数指针查询方法及装置
CN114139693A (zh) 神经网络模型的数据处理方法、介质和电子设备
US20170115889A1 (en) Systems and methods for set membership matching
CN114995765B (zh) 数据处理方法、装置、存储介质及电子设备
CN113805974A (zh) 基于应用程序的数据类型选择
US9772975B2 (en) Hybrid table-lookup algorithm for functions
Jézéquel et al. Numerical validation of half precision simulations
TW202333041A (zh) 執行浮點運算的系統及方法
US8539461B2 (en) Method for identifying memory of virtual machine and computer system thereof
CN112084443B (zh) 页面缓存方法及装置
CN112163184A (zh) 一种实现fft的装置及方法
US6502177B1 (en) Single cycle linear address calculation for relative branch addressing
CN112907501A (zh) 物体检测方法、装置及电子设备
CN110781354A (zh) 一种对象选择方法、装置、系统及计算设备
US20210405969A1 (en) Computer-readable recording medium recording arithmetic processing program, arithmetic processing method, and arithmetic processing device
WO2022052946A1 (en) Concurrent marking garbage collection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant