CN112231625A - 一种基于混合基算法的fft处理器及其工作方法 - Google Patents
一种基于混合基算法的fft处理器及其工作方法 Download PDFInfo
- Publication number
- CN112231625A CN112231625A CN202011104139.2A CN202011104139A CN112231625A CN 112231625 A CN112231625 A CN 112231625A CN 202011104139 A CN202011104139 A CN 202011104139A CN 112231625 A CN112231625 A CN 112231625A
- Authority
- CN
- China
- Prior art keywords
- fft
- data
- fft processor
- algorithm
- radix
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004364 calculation method Methods 0.000 claims abstract description 29
- 239000008358 core component Substances 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 9
- 238000007726 management method Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/141—Discrete Fourier transforms
- G06F17/142—Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/4806—Computations with complex numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/4806—Computations with complex numbers
- G06F7/4812—Complex multiplication
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Discrete Mathematics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开一种基于混合基算法的FFT处理器及其工作方法,属于数字信号处理的专用集成电路领域,包括AXI总线接口、控制器、FFT运算单元、旋转因子生成单元、存储管理单元和外部存储单元。AXI总线接口接收外部的上位机发出的配置信息,将收到的配置信息送入控制器,进行相应的寄存器配置;控制器通过寄存器配置来控制FFT处理器的运行模式;FFT运算单元进行傅里叶级数计算;旋转因子生成单元提供傅里叶级数计算过程中所需要的旋转因子;存储管理单元为控制器提供数据输入、输出方向和地址分配;外部存储单元用于存储源数据、中间过程数据和结果数据的输入、输出控制。本发明能够高效的进行FFT运算,灵活可配置,能广泛的在信号处理系统中得到应用。
Description
技术领域
本发明涉及数字信号处理的专用集成电路技术领域,特别涉及一种基于混合基算法的FFT处理器实现方法。
背景技术
随着微电子技术和计算机技术的迅速发展,数字信号处理技术显得日益重要,傅里叶变换在语音、图像、通讯等多个领域中得到了广泛的应用。在高性能处理器中,需要更高速度的数字信号处理器来解决大量的数据处理任务。随着信息时代的到来,井喷式增长的数据已经严重影响到数字信号处理系统的运行速度了,某些实时性数据处理更不可能得到较好的使用。
FFT(fast Fourier transform,快速傅里叶变换)作为数字信号处理器的核心部分,从提出的一开始到现在,人类进行了大量的研究。为了减少运算量,推动数字信号处理更好的利用,人们提出了多种FFT算法,比如基2算法、基4算法、分裂基算法、实数因子算法等。
通过ASIC实现FFT处理器,需要寻求较好的算法易于ASIC实现,还要设计出一种与算法相匹配的处理器结构,提高内部器件的使用率。采用先进工艺技术的FFT处理器,不仅能提高FFT处理器运算速度,还能集成一些多元化功能,从而进一步增强其兼容性。
发明内容
本发明的目的在于提供一种基于混合基算法的FFT处理器及其工作方法,以解决背景技术中的问题。
为解决上述技术问题,本发明提供了一种基于混合基算法的FFT处理器,包括:
AXI总线接口,接收上位机发出的配置信息,将收到的配置信息送入控制器,进行相应的寄存器配置;所述控制器通过寄存器配置来控制FFT处理器的运行模式;
FFT运算单元,为FFT处理器的核心部件,进行傅里叶级数计算;
旋转因子生成单元,提供傅里叶级数计算过程中所需要的旋转因子;
存储管理单元,为控制器提供数据输入、输出方向和地址分配;
外部存储单元,用于存储源数据、中间过程数据和结果数据的输入、输出控制。
可选的,所述上位机通过发送配置信息给所述控制器,根据输入所述FFT运算单元的操作数长度来使用对应的混和基算法:
以基2-FFT为基本操作形式,则进行1K-16K点FFT/IFFT运算;
以基8-FFT为基本操作形式,则进行17K-32K点FFT/IFFT运算。
可选的,所述FFT运算单元的核心部件为蝶形运算单元并且灵活可配置,基8蝶形运算单元为3级基2蝶形运算单元级联而成,通过复用同一组复数乘法器和复数加法器。
可选的,所述FFT蝶形运算单元每一次计算过程都需要旋转因子参与;为了提高运算速度需事先计算出所有的旋转因子,将事先计算好的旋转因子存入到旋转因子生成单元,通过控制器从中取出每一次运算需要的旋转因子并同时送入所述FFT蝶形运算单元。
可选的,所述AXI总线接口包括AXI slave接口和AXI master接口;其中,
FFT处理器的AXI slave接口,负责接收配置信息;
FFT处理器的AXI master接口,负责进行数据的读写操作。
可选的,所述存储管理单元包括数据交换开关和组交换开关,根据每个数据端口的地址识别所对应的存储器,把地址和写数据以及控制信号连接到该存储器,并把从该存储器读出的数据连接到这个数据端口。
可选的,所述存储管理单元对片上数据存储器进行灵活的地址分配和管理,以满足FFT/IFFT计算过程中并行数据读取和存储的要求,避免地址冲突的产生,实现层与层间的数据交织。
可选的,所述控制器实现自动产生计算过程每一步的操作数地址、系数地址和计算结果需要存储的地址;根据FFT/IFFT运算的规律,计算N点FFT/IFFT的每一层运算过程中,实时生成操作数,结果数和旋转因子地址。
可选的,所述FFT处理器的运行模式包括FFT计算的长度、运算方式和中断方式。
本发明还提供了一种基于混合基算法的FFT处理器的工作方法,包括:
步骤一:上位机发送配置信息;
步骤二:AXI slaver接口接收配置信息,随后对FFT处理器进行配置;
步骤三:AXI master接口读取源数据,从外部存储单元中将需处理的数据进行读取;
步骤四:根据输入数据的长度,进行补零对齐;
步骤五:使能FFT处理器,进行FFT计算;
步骤六:AXI master接口将结果数据写入到外部存储单元中,完成计算过程。
可选的,所述配置信息包括数据长度、使能信号、中断方式以及AXI接口信号。
在本发明提供的基于混合基算法的FFT处理器及其工作方法中,包括AXI总线接口、控制器、FFT运算单元、旋转因子生成单元、存储管理单元和外部存储单元。AXI总线接口接收外部的上位机发出的配置信息,将收到的配置信息送入控制器,进行相应的寄存器配置;控制器通过寄存器配置来控制FFT处理器的运行模式;FFT运算单元进行傅里叶级数计算;旋转因子生成单元提供傅里叶级数计算过程中所需要的旋转因子;存储管理单元为控制器提供数据输入、输出方向和地址分配;外部存储单元用于存储源数据、中间过程数据和结果数据的输入、输出控制。
本发明具有以下有益效果:
1)采用了混合基FFT算法,在输入数据长度小于16K时,采用基2算法,降低系统功耗有一定优势;在输入数据长度大于16K时(不超过32K),采用基8算法,该算法运算速度快,提供了大数据情况下的运算速度;
2)预留外挂存储器接口,需处理的原始数据可存入外挂的存储器中,从而节约了片内存储器资源的开销;
3)计算序列长度可配置,在处理器控制寄存器中对要处理的数据量可以进行编程配置,设置数据计数器,对数据数量进行计数。
附图说明
图1是本发明提供的基于混合基算法的FFT处理器结构示意图;
图2是本发明提供的基于混合基算法的FFT处理器工作流程示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的一种基于混合基算法的FFT处理器及其工作方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
实施例一
本发明提供了一种基于混合基算法的FFT处理器,能够高效的进行FFT运算,灵活可配置,能广泛的在信号处理系统中得到应用。
所述基于混合基算法的FFT处理器结构如图1所示,包括AXI总线接口、控制器、FFT运算单元、旋转因子生成单元、存储管理单元和外部存储单元。所述AXI总线接口接收外部的上位机发出的配置信息,将收到的配置信息送入控制器,进行相应的寄存器配置;所述控制器通过寄存器配置来控制FFT处理器的运行模式;该运行模式包括FFT计算的长度、运算方式和中断方式。所述FFT运算单元为FFT处理器的核心部件,进行傅里叶级数计算;所述旋转因子生成单元提供傅里叶级数计算过程中所需要的旋转因子;所述存储管理单元为控制器提供数据输入、输出方向和地址分配;所述外部存储单元用于存储源数据、中间过程数据和结果数据的输入、输出控制。
所述上位机通过发送配置信息给所述控制器,根据输入所述FFT运算单元的操作数长度来使用对应的混和基算法:以基2-FFT为基本操作形式,则进行1K-16K点FFT/IFFT变换;以基8-FFT为基本操作形式,则进行17K-32K点FFT/IFFT运算。
所述FFT运算单元的核心部件为蝶形运算单元并且灵活可配置,基8蝶形运算单元为3级基2蝶形运算单元级联而成,通过复用同一组复数乘法器和复数加法器。所述FFT蝶形运算单元每一次计算过程都需要旋转因子参与;为了提高运算速度需事先计算出所有的旋转因子,将事先计算好的旋转因子存入到旋转因子生成单元,通过控制器从中取出每一次运算需要的旋转因子并同时送入所述FFT蝶形运算单元。
所述AXI总线接口包括AXI slave接口和AXI master接口;其中,FFT处理器的AXIslave接口,负责接收配置信息;FFT处理器的AXI master接口,负责进行数据的读写操作。
所述存储管理单元包括数据交换开关和组交换开关,根据每个数据端口的地址识别所对应的存储器,把地址和写数据以及控制信号连接到该存储器,并把从该存储器读出的数据连接到这个数据端口。所述存储管理单元对片上数据存储器进行灵活的地址分配和管理,以满足FFT/IFFT计算过程中并行数据读取和存储的要求,避免地址冲突的产生,实现层与层间的数据交织。
所述控制器实现自动产生计算过程每一步的操作数地址、系数地址和计算结果需要存储的地址;根据FFT/IFFT运算的规律,计算N点FFT/IFFT的每一层运算过程中,实时生成操作数,结果数和旋转因子地址。
实施例二
本发明还提供了一种基于混合基算法的FFT处理器的工作方法,数据的传输流程如图2所示,包括如下步骤:
步骤一:上位机发送配置信息;该配置信息包括数据长度、使能信号、中断方式以及AXI接口信号;
步骤二:AXI slaver接口接收配置信息,随后对FFT处理器进行配置;
步骤三:AXI master接口读取源数据,从外部存储单元中将需处理的数据进行读取;
步骤四:根据输入数据的长度,若需要,则进行补零对齐;不需要补零对齐则进入步骤五;
步骤五:使能FFT处理器,进行FFT计算;
步骤六:AXI master接口将结果数据写入到外部存储单元中,完成计算过程。
上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (11)
1.一种基于混合基算法的FFT处理器,其特征在于,包括:
AXI总线接口,接收上位机发出的配置信息,将收到的配置信息送入控制器,进行相应的寄存器配置;所述控制器通过寄存器配置来控制FFT处理器的运行模式;
FFT运算单元,为FFT处理器的核心部件,进行傅里叶级数计算;
旋转因子生成单元,提供傅里叶级数计算过程中所需要的旋转因子;
存储管理单元,为控制器提供数据输入、输出方向和地址分配;
外部存储单元,用于存储源数据、中间过程数据和结果数据的输入、输出控制。
2.如权利要求1所述的基于混合基算法的FFT处理器,其特征在于,所述上位机通过发送配置信息给所述控制器,根据输入所述FFT运算单元的操作数长度来使用对应的混和基算法:
以基2-FFT为基本操作形式,则进行1K-16K点FFT/IFFT变换;
以基8-FFT为基本操作形式,则进行17K-32K点FFT/IFFT运算。
3.如权利要求2所述的基于混合基算法的FFT处理器,其特征在于,所述FFT运算单元的核心部件为蝶形运算单元并且灵活可配置,基8蝶形运算单元为3级基2蝶形运算单元级联而成,通过复用同一组复数乘法器和复数加法器。
4.如权利要求3所述的基于混合基算法的FFT处理器,其特征在于,所述FFT蝶形运算单元每一次计算过程都需要旋转因子参与;为了提高运算速度需事先计算出所有的旋转因子,将事先计算好的旋转因子存入到旋转因子生成单元,通过控制器从中取出每一次运算需要的旋转因子并同时送入所述FFT蝶形运算单元。
5.如权利要求1所述的基于混合基算法的FFT处理器,其特征在于,所述AXI总线接口包括AXI slave接口和AXI master接口;其中,
FFT处理器的AXI slave接口,负责接收配置信息;
FFT处理器的AXI master接口,负责进行数据的读写操作。
6.如权利要求1所述的基于混合基算法的FFT处理器,其特征在于,所述存储管理单元包括数据交换开关和组交换开关,根据每个数据端口的地址识别所对应的存储器,把地址和写数据以及控制信号连接到该存储器,并把从该存储器读出的数据连接到这个数据端口。
7.如权利要求6所述的基于混合基算法的FFT处理器,其特征在于,所述存储管理单元对片上数据存储器进行灵活的地址分配和管理,以满足FFT/IFFT计算过程中并行数据读取和存储的要求,避免地址冲突的产生,实现层与层间的数据交织。
8.如权利要求1所述的基于混合基算法的FFT处理器,其特征在于,所述控制器实现自动产生计算过程每一步的操作数地址、系数地址和计算结果需要存储的地址;根据FFT/IFFT运算的规律,计算N点FFT/IFFT的每一层运算过程中,实时生成操作数,结果数和旋转因子地址。
9.如权利要求1所述的基于混合基算法的FFT处理器,其特征在于,所述FFT处理器的运行模式包括FFT计算的长度、运算方式和中断方式。
10.一种基于混合基算法的FFT处理器的工作方法,其特征在于,包括:
步骤一:上位机发送配置信息;
步骤二:AXI slaver接口接收配置信息,随后对FFT处理器进行配置;
步骤三:AXI master接口读取源数据,从外部存储单元中将需处理的数据进行读取;
步骤四:根据输入数据的长度,进行补零对齐;
步骤五:使能FFT处理器,进行FFT计算;
步骤六:AXI master接口将结果数据写入到外部存储单元中,完成计算过程。
11.如权利要求10所述的基于混合基算法的FFT处理器的工作方法,其特征在于,所述配置信息包括数据长度、使能信号、中断方式以及AXI接口信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011104139.2A CN112231625A (zh) | 2020-10-15 | 2020-10-15 | 一种基于混合基算法的fft处理器及其工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011104139.2A CN112231625A (zh) | 2020-10-15 | 2020-10-15 | 一种基于混合基算法的fft处理器及其工作方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112231625A true CN112231625A (zh) | 2021-01-15 |
Family
ID=74117417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011104139.2A Pending CN112231625A (zh) | 2020-10-15 | 2020-10-15 | 一种基于混合基算法的fft处理器及其工作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112231625A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822139A (zh) * | 2021-02-04 | 2021-05-18 | 展讯半导体(成都)有限公司 | 数据输入、数据转换方法及装置 |
CN118192933A (zh) * | 2024-05-16 | 2024-06-14 | 中国传媒大学 | 基于复用机制的混合基fft的蝶形运算装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140280421A1 (en) * | 2013-03-15 | 2014-09-18 | Analog Devices, Inc. | Fft accelerator |
CN108958800A (zh) * | 2018-06-15 | 2018-12-07 | 中国电子科技集团公司第五十二研究所 | 一种基于fpga硬件加速的ddr管理控制系统 |
-
2020
- 2020-10-15 CN CN202011104139.2A patent/CN112231625A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140280421A1 (en) * | 2013-03-15 | 2014-09-18 | Analog Devices, Inc. | Fft accelerator |
CN108958800A (zh) * | 2018-06-15 | 2018-12-07 | 中国电子科技集团公司第五十二研究所 | 一种基于fpga硬件加速的ddr管理控制系统 |
Non-Patent Citations (2)
Title |
---|
张立材 等: "数字信号处理解题指导", 28 February 2006, 北京邮电大学出版社, pages: 74 - 80 * |
陈波 等: "机电一体化的数字化检测与控制技术", 30 June 2019, 中国海洋大学出版社, pages: 33 - 47 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822139A (zh) * | 2021-02-04 | 2021-05-18 | 展讯半导体(成都)有限公司 | 数据输入、数据转换方法及装置 |
CN118192933A (zh) * | 2024-05-16 | 2024-06-14 | 中国传媒大学 | 基于复用机制的混合基fft的蝶形运算装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ma et al. | Optimizing the convolution operation to accelerate deep neural networks on FPGA | |
CN109522052B (zh) | 一种计算装置及板卡 | |
US7325123B2 (en) | Hierarchical interconnect for configuring separate interconnects for each group of fixed and diverse computational elements | |
Zhong et al. | A power-scalable reconfigurable FFT/IFFT IC based on a multi-processor ring | |
CN103336672B (zh) | 数据读取方法、装置及计算设备 | |
CN112231625A (zh) | 一种基于混合基算法的fft处理器及其工作方法 | |
CN107391422A (zh) | 多路异步串行通讯数据访问系统及方法 | |
CN111079908B (zh) | 片上网络数据处理方法、存储介质、计算机设备和装置 | |
Liang et al. | Mapping parallel fft algorithm onto smartcell coarse-grained reconfigurable architecture | |
Bhuyan et al. | Performance analysis of FFT algorithms on multiprocessor systems | |
CN1246784C (zh) | 带有可重构通道数dma的数字信号处理器 | |
CN113918221A (zh) | 运算模块、流水优化方法及相关产品 | |
CN112559954A (zh) | 基于软件定义可重构处理器的fft算法处理方法及装置 | |
CN101794276B (zh) | 适用于soc的dct_idct协处理器 | |
CN115248701B (zh) | 一种处理器寄存器堆之间的零拷贝数据传输装置及方法 | |
Zhong et al. | An ultra high-speed FFT processor | |
KR20220143333A (ko) | 분산 sram 아키텍쳐를 가지는 모바일넷 하드웨어 가속기 및 상기 가속기의 채널 정상 데이터 플로우 설계 방법 | |
CN111260046B (zh) | 运算方法、装置及相关产品 | |
CN111367567B (zh) | 一种神经网络计算装置和方法 | |
CN111078625B (zh) | 片上网络处理系统和片上网络数据处理方法 | |
CN118192933B (zh) | 基于复用机制的混合基fft的蝶形运算装置 | |
Patil et al. | An area efficient and low power implementation of 2048 point FFT/IFFT processor for mobile WiMAX | |
CN111078623A (zh) | 片上网络处理系统和片上网络数据处理方法 | |
CN111078624A (zh) | 片上网络处理系统和片上网络数据处理方法 | |
CN201607728U (zh) | 适用于soc的dct_idct协处理器 |
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 |