CN103186503B - 一种fft/dft倒序排列系统与方法及其运算系统 - Google Patents

一种fft/dft倒序排列系统与方法及其运算系统 Download PDF

Info

Publication number
CN103186503B
CN103186503B CN201110444738.3A CN201110444738A CN103186503B CN 103186503 B CN103186503 B CN 103186503B CN 201110444738 A CN201110444738 A CN 201110444738A CN 103186503 B CN103186503 B CN 103186503B
Authority
CN
China
Prior art keywords
inverted order
data
control signal
fft
dft
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.)
Expired - Fee Related
Application number
CN201110444738.3A
Other languages
English (en)
Other versions
CN103186503A (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.)
Shenzhen ZTE Microelectronics Technology Co Ltd
Original Assignee
Shenzhen ZTE Microelectronics 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 Shenzhen ZTE Microelectronics Technology Co Ltd filed Critical Shenzhen ZTE Microelectronics Technology Co Ltd
Priority to CN201110444738.3A priority Critical patent/CN103186503B/zh
Priority to JP2014549307A priority patent/JP2015503785A/ja
Priority to KR1020147020943A priority patent/KR101696987B1/ko
Priority to PCT/CN2012/077800 priority patent/WO2013097436A1/zh
Priority to EP12862239.6A priority patent/EP2800010A4/en
Publication of CN103186503A publication Critical patent/CN103186503A/zh
Application granted granted Critical
Publication of CN103186503B publication Critical patent/CN103186503B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • H04L27/2649Demodulators
    • H04L27/265Fourier transform demodulators, e.g. fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators
    • H04L27/2651Modification of fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators for performance improvement

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及通信领域技术,尤其涉及一种FFT/DFT的倒序排列系统与方法及其运算系统,所述倒序排列系统,包括:信号控制装置,用于获取各点待倒序的数据对应的控制信号,并向所述倒序装置发送所述控制信号,以使所述待倒序装置按照接收到的所述控制信号进行各点数据倒序;所述倒序装置,用于根据接收到的所述控制信号,将所述待倒序数据进行倒序。本发明提供的系统,解决了用矢量处理器计算FFT/DFT时,FFT/DFT倒序排列时间过长,矢量处理器利用效率低下的问题,可以提高FFT/DFT的矢量计算效率。

Description

一种FFT/DFT倒序排列系统与方法及其运算系统
技术领域
本发明涉及通信领域技术,尤其涉及一种FFT/DFT的倒序排列系统与方法及其运算系统。
背景技术
快速傅立叶变换FFT(Fast Fourier Transformation)及离散傅里叶变换DFT广泛应用于信号处理、通信系统中,尤其是涉及正交频分复用技术(Orthogonal FrequencyDivision Multiplexing,OFDM)的LTE(Long Term Evolution,长期演进),数字音频广播(Digital Audio Broadcast,DAB)等通信系统中。传统的FFT/DFT算法,无论是时间抽取(DIT)还是频率抽取(DIF)算法,都需要对输入或者输出数据进行一次专门的倒序操作,并且无论是DIT算法还是DIF算法,在矢量处理器中实现时都需要在矢量处理单元引入一定的交叉连线,否则无法充分发挥矢量处理器的效率,导致功耗的增加。
如图1所示,为16点正序输入的FFT时间抽取算法的流程图,如果直接在4个DIT蝶形的矢量处理器中实现,最高的效率是每级FFT两次矢量蝶形运算完成,从图2可以看到最后两级FFT需要引入交叉连线才能充分利用所有4个蝶形,否则无法充分发挥矢量处理器的效率,尤其是最后一级每次只能计算一个蝶形,导致效率的大大降低,增加功耗。另一方面,交叉连线的引入虽然可以提高运算的效率,但是在计算单元较多时连线的数量庞大,譬如在矢量计算单元有16个DIT单元时,那么FFT运算在最后四级都需要引入交叉连线,而交叉连线总数高达4000(如果数据位宽为16),大量交叉连线导致充放电的电流增加,功耗增加。
另外,除了上述交叉连线的问题,标准FFT/DFT算法在蝶形运算之外还需要一次专门的数据倒序操作。数据的倒序可以采用串行或并行的方式进行,串行方式可以用软件或硬件计算每个数据倒序后的地址,这种方式倒序需要消耗大量时间,在矢量蝶形单元较多时,倒序时间可能是数倍于蝶形运算消耗的时间,导致矢量处理器效率低下。
发明内容
本发明实施例提供了一种FFT/DFT的倒序排列系统与方法及其运算系统,能够快速并行完成FFT/DFT运算中的倒序排列。
本发明实施例提供了一种FFT/DFT的倒序系统,包括:信号控制装置以及倒序装置;
所述信号控制装置,用于获取各点待倒序的数据对应的控制信号,并向所述倒序装置发送所述控制信号,以使所述倒序装置按照接收到的所述控制信号进行各点数据倒序;其中所述控制信号根据特定倒序规则设置,所述特定倒序规则为:根据待倒序的数据的点数N=pm…pi…p2p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列;
所述倒序装置,用于根据接收到的所述控制信号,将所述待倒序数据进行倒序。
较佳的,所述信号控制装置中存储有控制信号查找表,通过所述控制信号查找表查找出对应所述待倒序数据的控制信号,并发出。
进一步,所述系统还包括:控制信号查找表存储装置;
所述信号控制装置从所述控制信号查找表存储装置中获取存储的控制信号查找表,通过所述控制信号查找表查找出对应所述待倒序数据的控制信号,并发出。
进一步,所述倒序装置,还包括:控制信号处理单元、存储单元和交换单元;
所述控制信号处理单元,用于接收所述信号控制装置发出的控制信号,并将该控制信号发送给对应的交换单元;
所述存储单元,用于存储各点待倒序数据;
所述交换单元,用于实现两个存储单元中存储的对应待倒序数据的交换。
较佳的,所述交换单元组成多级网状结构,级数由矢量处理器存取数据的宽度决定;
每级交换单元的数量相同;
每级所述交换单元的数量由矢量处理器运算单元个数决定。
较佳的,每级所述交换单元的数量由矢量处理器运算单元个数决定,具体为:
所述矢量处理器运算单元个数为n,则每级交换单元的个数为n/2。
较佳的,所述交换单元具体包括:两个多路选择器;
每个多路选择器的控制信号输入端,用于输入与两点待倒序的数据对应的控制信号;
每个多路选择器的两个数据输入端,分别连接两点待倒序数据对应的存储单元,根据输入的所述控制信号,将输入的两点数据进行交换或者直通。
本发明还提供一种FFT/DFT运算系统,包括:矢量运算装置、矢量寄存器以及存储器,所述矢量运算装置将每级FFT/DFT运算后的数据发送到所述矢量寄存器缓存,所述矢量寄存器缓存的数据被倒序后发送给所述存储器,还包括:所述的倒序系统;
所述倒序系统,用于将所述矢量运算装置每级FFT/DFT运算后缓存到所述矢量寄存器的数据,进行倒序后发送给所述存储器;
所述存储器,用于存储每级通过所述倒序系统倒序后的数据,并将下一级需要运算的数据发送给所述矢量寄存器缓存,等待下一级FFT/DFT运算。
本发明还提供一种FFT/DFT的倒序方法,该方法包括:
存储待倒序的数据;
根据待倒序的数据的点数N=pm…pi…p2p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,倒序规则为:对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列。
进一步,在首次获得待倒序的数据时,将运算级初始化为0;
每次接收下一级倒序数据后,将运算级加1。
进一步,在进行每级倒序排列时,通过存储的控制信号查找表,查找出对应所述待倒序数据的控制信号,根据所述待倒序数据的对应控制信号完成本级倒序排列,经过m次蝶形运算和m-1次排序,完成FFT/DFT运算。
本发明与现有技术相比具有以下优点:
本发明实施例提供了一种FFT/DFT的倒序排列系统与方法及其运算系统,FFT/DFT倒序通过矢量流水线数据通路中的硬件排序网络中的交换单元进行,在每级蝶形运算之后通过控制流水线中的倒序装置对数据进行排序,以解决采用矢量处理器计算FFT/DFT时,FFT/DFT倒序排列时间过长,矢量处理器利用效率低下的问题,可以提高FFT/DFT的矢量计算效率。
附图说明
图1为现有技术16点正序输入的FFT时间抽取流程图;
图2为图1中在四个DIT蝶形矢量处理器中需要的交叉线布图;
图3为本发明实施例倒序排列系统的结构示意图;
图4为本发明实施例运算系统的结构示意图;
图5为本发明实施例方法的流程示意图;
图6为本发明实施例一倒序装置的结构示意图;
图7为本发明实施例一中交换单元的结构示意图;
图8为本发明实施例二16点FFT的迭代倒序的规则图;
图9为本发明实施例三中24点DFT的迭代倒序的规则图;
图10为本发明实施例四16点数据在级间进行排序的流程图;
图11为本发明实施例五24点数据在级间进行排序的流程图;
图12为本发明实施例六中具有16个DIT蝶形单元排序的流程图;
图13为本发明实施例六中的第一级数据通路结构图;
图14为本发明实施例六中的第二级数据通路结构图;
图15为本发明实施例六中的第三级数据通路结构图;
图16为本发明实施例六中的第四级数据通路结构图。
具体实施方式
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
如图3所示,为本发明实施例倒序排列系统的结构示意图,包括:信号控制装置31以及倒序装置32;
信号控制装置31,用于获取各点待倒序的数据对应的控制信号,并向倒序装置32发送所述控制信号,以使所述倒序装置32按照接收到的所述控制信号进行各点数据倒序;其中所述控制信号根据特定倒序规则设置,所述特定倒序规则为:根据待倒序数据的点数N=pm…pi…p2p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列;
倒序装置32,用于根据接收到的所述控制信号,将所述待倒序数据进行倒序。
如图4所示,为本发明实施例运算系统的结构示意图,包括:矢量运算装置41、矢量寄存器42以及存储器43,矢量运算装置41将每级FFT/DFT运算后的数据发送到矢量寄存器42缓存,矢量寄存器42缓存的数据被倒序后发送给存储器43,还包括:倒序系统44;
倒序系统44,用于将所述矢量运算装置41每级FFT/DFT运算后缓存到所述矢量寄存器42的数据,进行倒序后发送给所述存储器43;
存储器43,用于存储每级通过所述倒序系统44倒序后的数据,并将下一级需要运算的数据发送给所述矢量寄存器42缓存,等待下一级FFT/DFT运算。
如图5所示,为本发明实施例方法的流程示意图,包括以下步骤:
步骤1:存储待倒序的数据;
步骤2:根据待倒序的数据的点数N=pm…pi…p2p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,倒序规则为:对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列。
如图6所示,为本发明实施例一倒序装置的结构示意图,每个黑点代表一个交换单元,其中包括5级交换单元,每级交换单元的数量为16个,通过32个脚码器存放待倒序的数据,各点数据可以直通输出,也可以交叉输出。具体通路是根据交换单元接收到的控制信号来控制。如图7所示为交换单元的结构示意图,包括:两个多路选择器;每个多路选择器的控制信号输入端ctl,用于输入与两点待倒序的数据对应的控制信号;每个多路选择器的两个数据输入端in0、in1,分别连接两点待倒序数据对应的存储单元,根据输入的所述控制信号,将输入的两点数据进行交换,并通过其输出端out0、out1输出交换后的两点数据。
如图8所示,为本发明实施例二16点FFT的迭代倒序的规则图,其过程为:16个数据用4个地址比特c4c3c2c1表示,从左至右,每次对数据进行一次排序,使得4个地址比特每次新增一个比特与最终倒序结果一致。第一次排序使c4与倒序后的地址排列一致,其过程通过将数据分为c4=0的上半部和c4=1的下半部,而后将上半部和下半部交替排列实现。第二次排序使c3与倒序后的地址排列一致,为了保证已经排列好的c4不受影响,将相邻的c4分别为0和1的数据两两视为一个数据组,以数据组为单位对数据进行排序,其过程与c4排序过程类似,同样将数据分为c3=0的上半部和c3=1下半部,而后将上半部和下半部的数据以数据组为单位交替排列实现。第三次排序使c2与倒序后的地址排列一致,为了保证已经排列好的c4c3不受影响,将相邻的c4c3分别为00、01、10、11的数据视为一个数据组,以数据组为单位对数据进行排序,同样将数据分为c2=0的上半部和c2=1下半部,而后将上半部和下半部的数据以数据组为单位交替排列实现,此时c1的排列顺序与倒序后c1的排列顺序自动一致,完成倒序。
如图9所示,为本发明实施例三中24点DFT的迭代倒序的规则图,以按基2、2、3、2的顺序计算的24点DFT的迭代倒序过程:设其地址混合基表示为c4c3c2c1(c4,c3,c1每逢2进1,c2每逢3进1),第一次排序使c4顺序与倒序后的地址排列一致,其排序过程与上面的16点FFT类似。第二次排序使c3顺序与倒序后的地址排列一致,其排序过程与上面的16点FFT类似。第三次排序使c2顺序与倒序后的地址排列一致,其排序过程为将相邻的c4c3分别为00、01、10、11的数据视为一个数据组,以数据组为单位对数据进行排序避免对排好序的c4c3的影响;而后将数据按c2取值分割为c2=0、1、2的3部分,并将3个部分的数据以数据组为单位交替排列。此时c1顺序与倒序后c1的排列顺序自动一致,完成倒序。
如图10所示,为本发明实施例四16点数据在级间进行排序的流程图,及如图11所示,为本发明实施例五24点(基2、2、3、2)数据在级间进行排序的流程图,各点数据按正序输入,运算结果即为FFT/DFT要倒序的结果。同时从图10及图11中可以看到只要每一级的输入按要求排好序,那么只要蝶形运算的基相同,不同运算级的输入数据可以按完全相同的顺序送入矢量单元进行运算。以16点FFT为例,每一级都是前8个数据和后8个数据对应组成蝶形进行运算,且蝶形的输入数据间有相等最大的距离,非常有利于蝶形的矢量计算,且矢量计算单元中不需要为FFT/DFT引入额外的数据连线,有利于功耗的降低。为了彻底消除倒序占用的时间,可以将上述排序过程插入到如图4所示的将数据从寄存器存回到存储器的流水级中,如果矢量运算单元有16个DIT蝶形单元,且FFT/DFT点数中至少包含4个因子2,则需要在排序网络中实现如图12所示的4级数据排序方式(需要将基2运算排在最前面),相应的排序可以用如图6所示的5级排序网络实现。其中,图6中每个黑点表示一个交换单元,数据可以直通或者交叉,可以采用如图7所示的电路结构,由两个多路选择器构成(如前述)。该排序网络可以实现附图12所要求的4级排序,该排序网络实现前4级排序时的数据通路如图13-图16所示。
另外,对于点数较大的FFT的蝶形运算,例如LTE所需的2048点FFT,前4级运算每次将相隔1024点的连续16个数据输入矢量计算单元进行蝶形运算,再将结果存回存储器时倒序系统分别用4种排序方式对数据进行排序,4级之后的FFT运算因为交替排序的数据组长度为16的倍数,只需要在保存数据时控制数据存回存储器的地址就可以实现所需要的排序。如果FFT/DFT中因子2的个数少于4个,例如LTE上行DFT中因子2的个数最少为2个,且只有因子2、3、5,需要将基2运算排在前面进行计算,以利用排序网络的排序功能对运算结果进行排序,之后1或2级的运算需要在数据存回存储器时添加长度为4、12或长度为8的掩码和移位控制,每次存回4、12或者8个蝶形运算结果,运算效率有所降低,但是仍然可以通过数据保存的地址控制避免数据排序消耗的独占时间。
本发明提供了一种FFT/DFT的矢量计算架构及一套相应的硬件排序网络,通过在矢量运算结果存回存储器的流水级中的硬件排序网络实现FFT/DFT倒序,消除了数据倒序的独占时间,并且可以避免在矢量计算单元中引入大量交叉连线,可以降低硬件开销,降低FFT/DFT运算的功耗。该排序网络还可以实现一系列的排序操作用于支持矢量运算中需要的其它排序操作。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种FFT/DFT的倒序排列系统,其特征在于,包括:信号控制装置以及倒序装置;
所述信号控制装置,用于获取各点待倒序的数据对应的控制信号,并向所述倒序装置发送所述控制信号,以使所述倒序装置按照接收到的所述控制信号进行各点数据倒序;其中所述控制信号根据特定倒序规则设置,所述特定倒序规则为:根据待倒序的数据的点数N=pm…pi…p2 p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列;
所述倒序装置,用于根据接收到的所述控制信号,将所述待倒序数据进行倒序。
2.如权利要求1所述的系统,其特征在于,所述信号控制装置中存储有控制信号查找表,通过所述控制信号查找表查找出对应所述待倒序数据的控制信号,并发出。
3.如权利要求1所述的系统,其特征在于,还包括控制信号查找表存储装置;
所述信号控制装置从所述控制信号查找表存储装置中获取存储的控制信号查找表,通过所述控制信号查找表查找出对应所述待倒序数据的控制信号,并发出。
4.如权利要求1所述的系统,其特征在于,所述倒序装置,还包括:控制信号处理单元、存储单元和交换单元;
所述控制信号处理单元,用于接收所述信号控制装置发出的控制信号,并将该控制信号发送给对应的交换单元;
所述存储单元,用于存储各点待倒序数据;
所述交换单元,用于实现两个存储单元中存储的对应待倒序数据的交换。
5.如权利要求4所述的系统,其特征在于,所述交换单元组成m级网状结构;
每级交换单元的数量相同;
每级所述交换单元的数量由矢量处理器运算单元个数决定。
6.如权利要求5所述的系统,其特征在于,所述交换单元具体包括:两个多路选择器;
每个多路选择器的控制信号输入端,用于输入与两点待倒序的数据对应的控制信号;
每个多路选择器的两个数据输入端,分别连接两点待倒序数据对应的存储单元,根据输入的所述控制信号,将输入的两点数据进行交换或者直通。
7.一种FFT/DFT运算系统,包括:矢量运算装置、矢量寄存器以及存储器,所述矢量运算装置将每级FFT/DFT运算后的数据发送到所述矢量寄存器缓存,所述矢量寄存器缓存的数据被倒序后发送给所述存储器,其特征在于,还包括:权利要求1~6所述的倒序系统;
所述倒序系统,用于将所述矢量运算装置每级FFT/DFT运算后缓存到所述矢量寄存器的数据,进行倒序后发送给所述存储器;
所述存储器,用于存储每级通过所述倒序系统倒序后的数据,并将下一级需要运算的数据发送给所述矢量寄存器缓存,等待下一级FFT/DFT运算。
8.一种FFT/DFT的倒序方法,其特征在于,该方法包括:
存储待倒序的数据;
根据待倒序的数据的点数N=pm…pi…p2 p1,判断出该点数为按基pm、…基pi、…基p2、基p1的顺序进行m级FFT/DFT倒序排列,倒序规则为:对第m-i级的数据进行倒序时,将相邻的pmpm-1…pi+1作为一个数据组,将数据对应的地址比特表示为cm…c2c1,其第i位ci按取值从上到下分为pi个部分,以所述数据组为单位交替排列。
9.如权利要求8所述的方法,其特征在于,首次获得待倒序的数据时,将运算级初始化为0;
每次接收下一级倒序数据后,将运算级加1。
10.如权利要求9所述的方法,其特征在于,在进行每级倒序排列时,通过存储的控制信号查找表,查找出对应所述待倒序数据的控制信号,根据所述待倒序数据的对应控制信号完成本级倒序排列,经过m次蝶形运算和m-1次排序,完成FFT/DFT运算。
CN201110444738.3A 2011-12-27 2011-12-27 一种fft/dft倒序排列系统与方法及其运算系统 Expired - Fee Related CN103186503B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201110444738.3A CN103186503B (zh) 2011-12-27 2011-12-27 一种fft/dft倒序排列系统与方法及其运算系统
JP2014549307A JP2015503785A (ja) 2011-12-27 2012-06-28 Fft/dftの逆順ソーティングシステム、方法およびその演算システム
KR1020147020943A KR101696987B1 (ko) 2011-12-27 2012-06-28 Fft/dft의 역순 배열 시스템과 방법 및 그 연산 시스템
PCT/CN2012/077800 WO2013097436A1 (zh) 2011-12-27 2012-06-28 一种fft/dft的倒序排列系统与方法及其运算系统
EP12862239.6A EP2800010A4 (en) 2011-12-27 2012-06-28 FFT / DFT RECYCLING SYSTEM AND METHOD AND CALCULATION SYSTEM THEREFOR

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110444738.3A CN103186503B (zh) 2011-12-27 2011-12-27 一种fft/dft倒序排列系统与方法及其运算系统

Publications (2)

Publication Number Publication Date
CN103186503A CN103186503A (zh) 2013-07-03
CN103186503B true CN103186503B (zh) 2017-05-17

Family

ID=48677674

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110444738.3A Expired - Fee Related CN103186503B (zh) 2011-12-27 2011-12-27 一种fft/dft倒序排列系统与方法及其运算系统

Country Status (5)

Country Link
EP (1) EP2800010A4 (zh)
JP (1) JP2015503785A (zh)
KR (1) KR101696987B1 (zh)
CN (1) CN103186503B (zh)
WO (1) WO2013097436A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10013253B2 (en) * 2014-12-23 2018-07-03 Intel Corporation Method and apparatus for performing a vector bit reversal
CN107948102A (zh) * 2016-10-12 2018-04-20 深圳市中兴微电子技术有限公司 一种矢量数据的并行排序网络及方法
CN109522674A (zh) * 2018-12-05 2019-03-26 天津大学 基2-2算法的快速傅里叶变换硬件设计方法
CN112667959B (zh) * 2020-12-30 2024-02-23 上海金卓科技有限公司 混合基dft处理方法、装置、设备及存储介质
CN114578093B (zh) * 2022-03-10 2023-08-18 中国计量科学研究院 一种基于混合基fft的激光多普勒测速仪测速方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129419A (zh) * 2011-03-04 2011-07-20 中山大学 基于快速傅立叶变换的处理器

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3731284A (en) * 1971-12-27 1973-05-01 Bell Telephone Labor Inc Method and apparatus for reordering data
JPH06342449A (ja) * 1993-06-01 1994-12-13 Fujitsu Ltd データ並べ替え回路,及び、高速フーリエ変換回路
US6609140B1 (en) * 1999-11-30 2003-08-19 Mercury Computer Systems, Inc. Methods and apparatus for fast fourier transforms
US7062523B1 (en) * 2000-08-01 2006-06-13 Analog Devices, Inc. Method for efficiently computing a fast fourier transform
KR100692997B1 (ko) * 2001-04-17 2007-03-12 삼성전자주식회사 패스트퓨리에변환 장치
CA2352683C (en) * 2001-07-09 2005-11-15 Tropic Networks Inc. Real-time method for bit-reversal of large size arrays
US20040059766A1 (en) * 2002-09-23 2004-03-25 Yeou-Min Yeh Pipelined low complexity FFT/IFFT processor
CN101083643A (zh) * 2006-05-31 2007-12-05 中国科学院微电子研究所 一种低存储器开销的混合基fft处理器及其方法
CN101404550B (zh) * 2008-07-08 2010-07-28 宁波中科集成电路设计中心有限公司 一种drm接收机中基于正交频分复用的解调器
JP5556323B2 (ja) * 2010-04-15 2014-07-23 日本電気株式会社 データ並び替え回路に対する制御情報自動生成方法、データ並び替え回路、コンピュータ、及び制御情報自動生成プログラム
CN102346728B (zh) * 2010-07-29 2016-02-10 中兴通讯股份有限公司 一种采用矢量处理器实现fft/dft倒序的方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129419A (zh) * 2011-03-04 2011-07-20 中山大学 基于快速傅立叶变换的处理器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FFT快速整序算法的对比、改进及实现;贾渊,等.;《电子科技大学学报》;20090331;第38卷(第2期);第292-295页 *
The FFT Algorithm for the Production of K Permutation Factor Circulant Matrices;Zhao Wenling,Song Daojing.;《2009 ISECS International Colloquium on Computing, Communication, Control, and Management》;20091231;第347-350页 *
基于查找表的单基 FFT原址倒序算法;汪海兵,等.;《清华大学学报(自然科学版)》;20081231;第48卷(第1期);第43-45,50页 *

Also Published As

Publication number Publication date
WO2013097436A1 (zh) 2013-07-04
KR101696987B1 (ko) 2017-01-16
EP2800010A1 (en) 2014-11-05
CN103186503A (zh) 2013-07-03
JP2015503785A (ja) 2015-02-02
EP2800010A4 (en) 2015-08-05
KR20140116160A (ko) 2014-10-01

Similar Documents

Publication Publication Date Title
CN103186503B (zh) 一种fft/dft倒序排列系统与方法及其运算系统
US11620491B2 (en) Neural processor
CN101571849B (zh) 一种快速傅立叶变换处理器及其方法
CN112465110B (zh) 一种卷积神经网络计算优化的硬件加速装置
JP3749022B2 (ja) 高速フーリエ変換を用いて短い待ち時間でアレイ処理を行う並列システム
CN103049241B (zh) 一种提高cpu+gpu异构装置计算性能的方法
CN111062472A (zh) 一种基于结构化剪枝的稀疏神经网络加速器及其加速方法
CN103699515B (zh) 一种fft并行处理装置和方法
CN104268124B (zh) 一种fft实现装置和方法
CN111737638A (zh) 基于傅里叶变换的数据处理方法及相关装置
CN108710943A (zh) 一种多层前馈神经网络并行加速器
CN107133194A (zh) 基于混合基底的可配置fft/ifft协处理器
WO2013097217A1 (zh) 一种多粒度并行fft蝶形计算的方法及相应的装置
Crocetti et al. Bandwidth advertising for MAN/ATM connectionless internetting
CN105955896A (zh) 一种可重构dbf算法硬件加速器及控制方法
US9268744B2 (en) Parallel bit reversal devices and methods
EP2538345A1 (en) Fast fourier transform circuit
CN116303219A (zh) 一种网格文件的获取方法、装置及电子设备
Honbo et al. Efficient Pairwise Statistical Significance Estimation using FPGAs.
Zhang et al. Small area high speed configurable FFT processor
CN113159302A (zh) 一种用于可重构神经网络处理器的路由结构
KR100617248B1 (ko) 고속 푸리에 변환 장치 및 방법
CN106970895B (zh) 基于fpga的fft装置及方法
CN113705773B (zh) 用于图神经网络推理的动态可重构pe单元及pe阵列
CN113535637B (zh) 一种运算加速单元及其运行方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20151015

Address after: Dameisha Yantian District of Shenzhen City, Guangdong province 518085 Building No. 1

Applicant after: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Applicant before: ZTE Corporation

GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20130703

Assignee: Xi'an Chris Semiconductor Technology Co. Ltd.

Assignor: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Contract record no.: 2019440020036

Denomination of invention: A FFT/DFT Inverse Arrangement System and Method and Its Operating System

Granted publication date: 20170517

License type: Common License

Record date: 20190619

EE01 Entry into force of recordation of patent licensing contract
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170517

Termination date: 20191227

CF01 Termination of patent right due to non-payment of annual fee