CN111562900A - 用于高精度导航的fft计算方法、计算模块及其芯片 - Google Patents
用于高精度导航的fft计算方法、计算模块及其芯片 Download PDFInfo
- Publication number
- CN111562900A CN111562900A CN202010695951.0A CN202010695951A CN111562900A CN 111562900 A CN111562900 A CN 111562900A CN 202010695951 A CN202010695951 A CN 202010695951A CN 111562900 A CN111562900 A CN 111562900A
- Authority
- CN
- China
- Prior art keywords
- calculation
- butterfly
- accumulation
- fft8
- unit
- 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
Images
Classifications
-
- 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/544—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 for evaluating functions by calculation
- G06F7/5443—Sum of products
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种用于高精度导航的FFT计算方法,包括引入一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;获取FFT计算的计算类型,采用FFT8蝶形累加计算单元和4组蝶形累乘加计算单元进行若干次计算并完成FFT计算。本发明还公开了实现上述用于高精度导航的FFT计算方法的计算模块,以及包括了上述用于高精度导航的FFT计算方法和计算模块的芯片。本发明通过将逻辑资源简化为30个加法器,4个乘法器和一些简单控制逻辑,并采用精确的流水线控制实现了加法器和乘法器的最大利用率;同时本发明的计算延时相对较低,资源利用率更高,而且有效减少了芯片模块的面积。
Description
技术领域
本发明属于信号处理领域,具体涉及一种用于高精度导航的FFT计算方法、计算模块及其芯片。
背景技术
随着经济技术的发展,高精度导航和定位,已经成为了人们生产和生活中必不可少的辅助技术,给人们的生产和生活带来了无尽的便利。
目前,在高精度导航芯片中,跟踪引擎需要对相干累加结果进行非相干累加,因此芯片需要引入FFT计算来提取频域信息。常见的FFT计算包括8点FFT计算、16点FFT计算和32点FFT计算。根据不同场景,以及灵敏度的不同需求,芯片需要灵活选择FFT计算的种类。因此,在芯片的逻辑设计中,需要芯片支持三种FFT计算。目前最常见的方案,即为分别实现三种点数的FFT计算,芯片的控制逻辑根据配置调用对应的模块,并在结果中进行选择输出。目前,其计算模块框图如图1所示。通过控制部分control调用FFT8部分、FFT16部分或FFT32部分进行计算,并通过数据选择器mux进行结果选择并输出。
FFT计算的选择,最常见的DIT-FFT基2时间抽取算法。
8点FFT的算法运算分为:两步的蝶形累加计算和一个4组蝶形乘累加计算,其运算框图如图2所示;16点FFT的算法框图由两个FFT8运算和8组蝶形运算组成,算法框图如图3所示;32点FFT的算法由两个FFT16运算和16组蝶形运算组成,算法框图如图4所示。
但是,现有技术的缺点也是明显的:为了实现3种不同点数的FFT计算,芯片必须引入三个独立的计算模块,这使得芯片占用的面积较大,而且芯片内部模块的复用率较低也使得芯片的整体效率较低。
发明内容
本发明的目的之一在于提供一种能够有效提高芯片资源利用率且有效减少芯片模块面积的用于高精度导航的FFT计算方法。
本发明的目的之二在于提供一种实现所述用于高精度导航的FFT计算方法的计算模块。
本发明的目的之三在于提供一种包括了所述用于高精度导航的FFT计算方法和计算模块的芯片。
本发明提供的这种用于高精度导航的FFT计算方法,具体包括如下步骤:
S1. 引入一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;
S2. 获取FFT计算的计算类型;
S3. 根据步骤S2获取的计算类型,采用FFT8蝶形累加计算单元和4组蝶形累乘加计算单元进行若干次计算,从而完成FFT计算。
所述的FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果。
所述的4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果。
步骤S3所述的根据步骤S2获取的计算类型,采用FFT8蝶形累加计算单元和4组蝶形累乘加计算单元进行若干次计算,从而完成FFT计算,具体为采用如下步骤进行FFT计算:
若计算类型为FFT8计算,则控制流水调用一次FFT8蝶形累加计算单元,再调用一次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT16计算,则控制流水调用两次FFT8蝶形累加计算单元,再调用两次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT32计算,则控制流水调用两次FFT16计算,再调用四次4组蝶形累乘加计算单元,并将计算结果输出。
本发明还提供了一种实现所述用于高精度导航的FFT计算方法的计算模块,包括一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元均与控制单元连接;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元依次串联;同时4组蝶形累乘加计算单元的输出端还同时连接FFT8蝶形累加计算单元;FFT8蝶形累加计算单元用于接收控制单元下发的控制指令并进行FFT8蝶形累加计算;4组蝶形累乘加计算单元用于根据控制单元下发的控制指令和FFT8蝶形累加计算单元的计算结果进行4组蝶形累乘加计算;数据选择单元用于根据控制单元下发的控制指令选定最终的计算结果并进行输出。
所述的FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果。
所述的4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果。
本发明还提供了一种芯片,该芯片包括了上述的用于高精度导航的FFT计算方法和计算模块。
本发明提供的这种用于高精度导航的FFT计算方法、计算模块及其芯片,通过将逻辑资源简化为30个加法器,4个乘法器和一些简单控制逻辑,并采用精确的流水线控制实现了加法器和乘法器的最大利用率;同时本发明的计算延时相对较低,资源利用率更高,而且有效减少了芯片模块的面积。
附图说明
图1为现有技术的计算模块的示意图。
图2为现有技术的8点FFT的算法运算的示意图。
图3为现有技术的16点FFT的算法运算的示意图。
图4为现有技术的32点FFT的算法运算的示意图。
图5为本发明方法的方法流程示意图。
图6为本发明模块的功能模块示意图。
具体实施方式
如图5所示为本发明方法的方法流程示意图:本发明提供的这种用于高精度导航的FFT计算方法,具体包括如下步骤:
S1. 引入一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;
其中,FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果;4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果;
S2. 获取FFT计算的计算类型;
S3. 根据步骤S2获取的计算类型,采用FFT8蝶形累加计算单元和4组蝶形累乘加计算单元进行若干次计算,从而完成FFT计算;具体为采用如下方法进行FFT计算:
若计算类型为FFT8计算,则控制流水调用一次FFT8蝶形累加计算单元,再调用一次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT16计算,则控制流水调用两次FFT8蝶形累加计算单元,再调用两次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT32计算,则控制流水调用两次FFT16计算,再调用四次4组蝶形累乘加计算单元,并将计算结果输出。
如图6所示为本发明模块的功能模块示意图:本发明提供的这种实现所述用于高精度导航的FFT计算方法的计算模块,包括一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元均与控制单元连接;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元依次串联;同时4组蝶形累乘加计算单元的输出端还同时连接FFT8蝶形累加计算单元;FFT8蝶形累加计算单元用于接收控制单元下发的控制指令并进行FFT8蝶形累加计算;4组蝶形累乘加计算单元用于根据控制单元下发的控制指令和FFT8蝶形累加计算单元的计算结果进行4组蝶形累乘加计算;数据选择单元用于根据控制单元下发的控制指令选定最终的计算结果并进行输出。
同时,在具体实施时, FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果;4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果。
以下就本发明方法和传统方法,在实现相同运算效率的条件下,对资源利用进行对比。资源对比如下表1所示。
表1 资源对比示意表
从表1可以看到,相比较传统方法,在实现相同运算效率的条件下,本方案的逻辑资源整体优化率为40%,因此本发明方法对比现有技术,具有明显的技术优势。
Claims (7)
1.一种用于高精度导航的FFT计算方法,具体包括如下步骤:
S1. 引入一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;
S2. 获取FFT计算的计算类型;
S3. 根据步骤S2获取的计算类型,采用FFT8蝶形累加计算单元和4组蝶形累乘加计算单元进行若干次计算,从而完成FFT计算;具体为采用如下步骤进行FFT计算:
若计算类型为FFT8计算,则控制流水调用一次FFT8蝶形累加计算单元,再调用一次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT16计算,则控制流水调用两次FFT8蝶形累加计算单元,再调用两次4组蝶形累乘加计算单元,并将计算结果输出;
若计算类型为FFT32计算,则控制流水调用两次FFT16计算,再调用四次4组蝶形累乘加计算单元,并将计算结果输出。
2.根据权利要求1所述的用于高精度导航的FFT计算方法,其特征在于FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果。
3.根据权利要求1所述的用于高精度导航的FFT计算方法,其特征在于4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果。
4.一种实现权利要求1~3之一所述的用于高精度导航的FFT计算方法的计算模块,其特征在于包括一个FFT8蝶形累加计算单元、一个4组蝶形累乘加计算单元、一个控制单元和一个数据选择单元;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元均与控制单元连接;FFT8蝶形累加计算单元、4组蝶形累乘加计算单元和数据选择单元依次串联;同时4组蝶形累乘加计算单元的输出端还同时连接FFT8蝶形累加计算单元;FFT8蝶形累加计算单元用于接收控制单元下发的控制指令并进行FFT8蝶形累加计算;4组蝶形累乘加计算单元用于根据控制单元下发的控制指令和FFT8蝶形累加计算单元的计算结果进行4组蝶形累乘加计算;数据选择单元用于根据控制单元下发的控制指令选定最终的计算结果并进行输出。
5.根据权利要求4所述的计算模块,其特征在于FFT8蝶形累加计算单元的内部包括24个加法器,一级流水输出结果。
6.根据权利要求5所述的计算模块,其特征在于4组蝶形累乘加计算单元的内部包括4个乘法器和6个加法器,两级流水输出结果。
7.一种芯片,其特征在于包括了权利要求1~3之一所述的用于高精度导航的FFT计算方法和权利要求4~6之一所述的计算模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010695951.0A CN111562900A (zh) | 2020-07-20 | 2020-07-20 | 用于高精度导航的fft计算方法、计算模块及其芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010695951.0A CN111562900A (zh) | 2020-07-20 | 2020-07-20 | 用于高精度导航的fft计算方法、计算模块及其芯片 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111562900A true CN111562900A (zh) | 2020-08-21 |
Family
ID=72075447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010695951.0A Pending CN111562900A (zh) | 2020-07-20 | 2020-07-20 | 用于高精度导航的fft计算方法、计算模块及其芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111562900A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221490A (zh) * | 2021-04-20 | 2021-08-06 | 长沙海格北斗信息技术有限公司 | 一种芯片间可配置延时链的数据采样方法与系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421696B1 (en) * | 1999-08-17 | 2002-07-16 | Advanced Micro Devices, Inc. | System and method for high speed execution of Fast Fourier Transforms utilizing SIMD instructions on a general purpose processor |
CN101587469A (zh) * | 2009-06-03 | 2009-11-25 | 北京大学深圳研究生院 | 可变长度的快速傅立叶变换装置 |
US20100179978A1 (en) * | 2009-01-15 | 2010-07-15 | Telefonaktiebolaget L M Ericsson (Publ) | Fft-based parallel system with memory reuse scheme |
CN101847137A (zh) * | 2009-03-27 | 2010-09-29 | 杭州中科微电子有限公司 | 一种实现基2fft计算的fft处理器 |
CN105095152A (zh) * | 2015-08-04 | 2015-11-25 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种可配置的128点fft装置 |
CN106951394A (zh) * | 2017-03-27 | 2017-07-14 | 南京大学 | 一种可重构定浮点通用fft处理器 |
CN109992741A (zh) * | 2019-03-15 | 2019-07-09 | 西安电子科技大学 | 一种混合基2-4串行fft实现方法及装置 |
CN111027013A (zh) * | 2019-12-10 | 2020-04-17 | 重庆邮电大学 | 一种支持dab和cdr的多模式可配置fft处理器及方法 |
-
2020
- 2020-07-20 CN CN202010695951.0A patent/CN111562900A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421696B1 (en) * | 1999-08-17 | 2002-07-16 | Advanced Micro Devices, Inc. | System and method for high speed execution of Fast Fourier Transforms utilizing SIMD instructions on a general purpose processor |
US20100179978A1 (en) * | 2009-01-15 | 2010-07-15 | Telefonaktiebolaget L M Ericsson (Publ) | Fft-based parallel system with memory reuse scheme |
CN101847137A (zh) * | 2009-03-27 | 2010-09-29 | 杭州中科微电子有限公司 | 一种实现基2fft计算的fft处理器 |
CN101587469A (zh) * | 2009-06-03 | 2009-11-25 | 北京大学深圳研究生院 | 可变长度的快速傅立叶变换装置 |
CN105095152A (zh) * | 2015-08-04 | 2015-11-25 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种可配置的128点fft装置 |
CN106951394A (zh) * | 2017-03-27 | 2017-07-14 | 南京大学 | 一种可重构定浮点通用fft处理器 |
CN109992741A (zh) * | 2019-03-15 | 2019-07-09 | 西安电子科技大学 | 一种混合基2-4串行fft实现方法及装置 |
CN111027013A (zh) * | 2019-12-10 | 2020-04-17 | 重庆邮电大学 | 一种支持dab和cdr的多模式可配置fft处理器及方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221490A (zh) * | 2021-04-20 | 2021-08-06 | 长沙海格北斗信息技术有限公司 | 一种芯片间可配置延时链的数据采样方法与系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lin et al. | A dynamic scaling FFT processor for DVB-T applications | |
KR100551111B1 (ko) | 파이프라인 고속 푸리에 변환 프로세서 | |
Cheng et al. | High-throughput VLSI architecture for FFT computation | |
CN112231626A (zh) | 一种fft处理器 | |
US11715456B2 (en) | Serial FFT-based low-power MFCC speech feature extraction circuit | |
CN114186183B (zh) | 一种轻量化的fft运算方法及其实现装置 | |
CN101847986A (zh) | 一种实现fft/ifft变换的电路及方法 | |
CN107544942A (zh) | 一种快速傅里叶变换的vlsi设计方法 | |
CN111562900A (zh) | 用于高精度导航的fft计算方法、计算模块及其芯片 | |
CN103412851A (zh) | 一种高精度低功耗的fft处理器 | |
Ramachandran et al. | Performance analysis of mantissa multiplier and dadda tree multiplier and implementing with DSP architecture | |
CN101894096A (zh) | 一种适用于cmmb和dvb-h/t的fft运算电路结构 | |
CN116450217A (zh) | 一种多功能定点乘法和乘累加运算装置及方法 | |
CN106951394A (zh) | 一种可重构定浮点通用fft处理器 | |
Revanna et al. | A scalable FFT processor architecture for OFDM based communication systems | |
CN104657334B (zh) | 一种快速傅里叶变化的基2-4-8混合基蝶算器及其应用 | |
CN100378719C (zh) | 基2单路深度延时反馈的流水线构成fft处理器的实现方法 | |
CN111178492B (zh) | 计算装置及相关产品、执行人工神经网络模型的计算方法 | |
CN109829132A (zh) | 一种嵌入式环境下长数据序列快速谱分析方法 | |
CN115344526A (zh) | 一种数据流架构的硬件加速方法及装置 | |
Hazarika et al. | Low-complexity continuous-flow memory-based FFT architectures for real-valued signals | |
El-Khashab et al. | An architecture for a radix-4 modular pipeline fast Fourier transform | |
CN112231625A (zh) | 一种基于混合基算法的fft处理器及其工作方法 | |
KR100617248B1 (ko) | 고속 푸리에 변환 장치 및 방법 | |
WO2019232091A1 (en) | Radix-23 fast fourier transform for an embedded digital signal processor |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200821 |
|
RJ01 | Rejection of invention patent application after publication |