CN111027013B - 一种支持dab和cdr的多模式可配置fft处理器及方法 - Google Patents

一种支持dab和cdr的多模式可配置fft处理器及方法 Download PDF

Info

Publication number
CN111027013B
CN111027013B CN201911257971.3A CN201911257971A CN111027013B CN 111027013 B CN111027013 B CN 111027013B CN 201911257971 A CN201911257971 A CN 201911257971A CN 111027013 B CN111027013 B CN 111027013B
Authority
CN
China
Prior art keywords
butterfly
base
module
butterfly operation
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.)
Active
Application number
CN201911257971.3A
Other languages
English (en)
Other versions
CN111027013A (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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201911257971.3A priority Critical patent/CN111027013B/zh
Publication of CN111027013A publication Critical patent/CN111027013A/zh
Application granted granted Critical
Publication of CN111027013B publication Critical patent/CN111027013B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F17/141Discrete Fourier transforms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种支持DAB和CDR的多模式可配置FFT处理器及方法,所述FFT处理器包括顶层控制模块、地址产生模块和可配置运算电路模块,所述可配置运算电路模块包括蝶形运算单元、输入控制单元和旋转因子生成单元,所述FFT处理器接收到的配置信息通过所述顶层控制单元进行解析得到工作模式、运算点数和蝶形运算层数,使用所述工作模式对所述蝶形运算单元进行可配置性的重构,通过重构蝶形运算结构进行DAB和CDR两种标准不同模式下的不同运算点数的任意配置和运算,所述FFT处理器兼容DAB和CDR两种标准且能快速重构具有不同运算功能处理单元,提高了运算效率、减少资源消耗且降低了电路面积。

Description

一种支持DAB和CDR的多模式可配置FFT处理器及方法
技术领域
本发明涉及数字多媒体广播技术领域,具体涉及一种支持DAB和CDR的多模式可配置FFT处理器及方法。
背景技术
随着信息传播技术不断向数字化和网络化方向发展,我国广播行业迈入了数字化发展进程,逐步由传统的模拟调频广播转向数字音频广播。目前国内数字音频广播主流标准有数字音频广播即DAB和中国数字广播即CDR等。DAB为全数字***,适合业务多和数据量大的应用场景,但是所述DAB容易干扰模拟广播频段,不支持数模同播,且设备更换费用昂贵;CDR支持数模同播,抗干扰能力强,频谱利用率高。但是数据量偏小,产品链不够丰富,且接收端受到基带解码芯片成本高、功耗大的制约。由于二者各有优劣,国内多地运营商因地制宜选择了不同的数字音频广播标准,出现了DAB与CDR共存的情景。从接收端考虑,由于没有低成本、高性能的接收机,数字音频广播的大面积推广应用显得尤为困难。为推进数字音频广播全面一体化的进程,满足消费者对多模接收端的基本需求,研制出模式切换时可自动配置相应规则和载波调制方式、自动切换为对应模式运算的DAB/CDR双模接收机具有现实重要意义。因此所述双模式接收机要实现DAB与CDR共存的关键是需要能够支持DAB和CDR的基带解调芯片。
DAB和CDR的调制部分都采用了正交频分复用技术,但在载波数量、载波间隔、符号持续器等具体配置上,二者存在着显著的差异。因此为了兼容DAB和CDR两种标准,数字广播接收机的基带解调芯片必须具有可自动配置和可重构的特点,因为两种标准所需要运算的FFT运算点数不同,所以基带解调芯片的关键——FFT处理器需要支持DAB、CDR两种标准的多模式多点可配置,即要求FFT处理器在接收到不同标准的信号时进行信道估计,切换为对应的运算模式,处理不同的数据点数。运用可重构技术,对FFT处理器上的指定运算资源进行独立地配置,而不影响模块上其余部分的功能,可有效提高资源利用率和重构速度,改进***性能。
发明内容
本发明所要解决的技术问题是数字广播接收机的基带解调芯片如何兼容DAB和CDR两种标准且能快速重构具有不同运算功能处理单元,从而实现所述两种标准在不同场景、不同信号标准下不同点数的任意配置和运算,以及如何提高运算效率、减少资源消耗和降低电路面积的问题,目的在于提供一种支持DAB和CDR的多模式可配置FFT处理器及方法,解决上述问题。
本发明通过下述技术方案实现:
一种支持DAB和CDR的多模式可配置FFT处理器,包括顶层控制模块、地址产生模块和可配置运算电路模块;
所述顶层控制模块解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
所述地址产生模块根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址,生成运算结果数的存储地址,并将所述操作数地址、运算结果数的存储地址和旋转因子的读取地址传输给所述可配置运算电路模块;
所述可配置运算电路模块使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数。
本发明中的所述处理器通过所述顶层控制模块对处理器接收到的DAB和CDR配置信息进行解析得到DAB和CDR不同模式下应该使用的工作模式以及运算点数,所述可配置运算电路模块的蝶形运算单元作为固定单元,使用基-2蝶形运算模块和基-4蝶形运算模块组成包含DAB的256/512/1024/2048点和CDR的128/256点的蝶形运算单元,然后根据所述顶层控制模块解析得到的工作模式以及运算点数快速选择对应点数的蝶形运算单元,重构所述运算点数的蝶形运算结构且进行不同运算点数的多批次处理。
本发明在使用同一个蝶形运算单元重构蝶形运算结构,所需资源量较少但是实现的运算点数较多,减少了资源消耗,且所述蝶形运算单元通过FPGA设计实现,在FPGA上主需要输入不同的参数就可以实现所述蝶形运算单元,因此减少了占用的资源。
本发明中使用蝶形运算单元采用4路并行处理和流水线型结构然后使用频域抽样基-2/4混合基算法选择所耗资源少、精度相对较低的蝶形运算模块,生成不同的蝶形运算结构的配置方式,不同的运算结构具有不同的运算效率,因此可以有效的提高了运算效率。
进一步的,所述可配置运算电路模块包括蝶形运算单元、输入控制单元、旋转因子生成单元和乘旋转因子单元;
所述输入控制单元读取所述运算点数,并根据所述运算点数选择蝶形运算单元中的蝶形运算模块进行所述运算点数的输入;
所述旋转因子生成单元生成所述工作模式的旋转因子;
所述蝶形运算单元包括若干定点加法器、定点减法器以及定点乘法器,所述蝶形运算单元使用接收到的所述控制信息重构蝶形运算单元,将接收到的所述运算点数使用所述蝶形运算单元的定点加法器、定点减法器以及定点乘法器进行运算。
进一步的,所述蝶形运算单元进行重构蝶形运算结构的可配置性实现,包括:
所述蝶形运算单元的蝶形运算模块将接收到的所述运算点数与蝶形运算模块自身处理的运算点数进行对比;
当所述运算点数与所述蝶形运算模块自身处理的运算点数相等时,所述蝶形运算模块为此次蝶形运算结构的第一层蝶形运算模块,所述运算点数作为操作数输入所述蝶形运算模块;
当所述运算点数大于所述蝶形运算模块自身处理的运算点数时,将所述蝶形运算模块的上一层蝶形运算模块的输出数据作为操作数输入所述蝶形运算模块;
当所述运算点数小于所述蝶形运算模块自身处理的运算点数时,将所述运算点数输出给所述蝶形运算模块的下一层蝶形运算模块,重复上述操作;
所述运算点数作为操作数通过输入控制单元输入此次蝶形运算的第一层蝶形运算模块进行运算,所述第一层蝶形运算模块将运算后的数据依次通过当前蝶形运算模块的下一层蝶形运算模块进行运算处理,通过此次蝶形运算结构的最后一层蝶形运算模块得到最终运算结果数。
进一步的,还包括存储模块和整序模块;
所述存储模块包括片上SRAM存储器和ROM存储器,所述片上SRAM存储器读取和存储所述顶层控制模块的控制信息以及所述可配置运算电路模块的中间运算结果数和最终运算结果数,通过输出数据缓冲模块与片外存储器进行通信;
所述ROM存储器读取和存储所述可配置运算电路模块的运算点数、中间运算结果数和最终运算结果数;
所述整序模块将所述可配置运算电路模块的倒位序输出的最终运算结果数恢复为顺序输出。
进一步的,所述工作模式的配置包括:
所述工作模式基于频域抽样基-2/4混合基作为待运算点数的蝶形运算模式;
所述基于频域抽样的基-2/4混合基使用离散傅里叶变换进行计算,因此所述基-2/4混合基的算法定义式:
Figure GDA0004185830060000031
其中,
Figure GDA0004185830060000041
为旋转因子,X(k)为基-2/4蝶形运算模式的离散傅里叶变换值,N为配置信息的序列长度,x[n]为配置信息序列;
当所述配置信息的序列长度为N=2n*4m时,将所述点数分解为2次幂和4次幂的乘积,即使用基-2蝶形运算模式和基-4蝶形运算模式进行单一运算模式或者复合运算模式的选择。
进一步的,所述控制信息中运算点数的蝶形运算,包括:
所述配置信息的序列长度为所述控制信息的运算点数;
当所述控制信息的运算点数为N=2n*4m时,使用基-2/4混合基算法进行FFT运算;
所述运算点数分解成2n个4m点的序列,每段小序列采用基-4蝶形运算得到X1(k0,n0);
所述X1(k0,n0)乘以旋转因子
Figure GDA0004185830060000042
所述X1(k0,n0)与旋转因子
Figure GDA0004185830060000043
相乘后的运算结果数再次分解成4m个2n点的序列,每段小序列采用基-2蝶形运算得到X2(k1,k0);
将所述X1(k0,n0)和X2(k1,k0)进行调序,得到X(k1,k0)=X(k)。
本发明中选择基-2/4混合基FFT算法用于硬件实现,采用混合基算法实现128点到256点、256点到2048点N=2n*4m点的定点数的蝶形运算,其中0<m<4,0<n<6。
进一步的,所述蝶形运算单元的流水线型结构的算法,包括:
所述基-2/4混合基算法:
Figure GDA0004185830060000044
对所述蝶形运算单元的最大点数N进行因式分解得到N=r1*r2
令所述基-2/4混合基算法中:
n=r2n1+n0,n1=0,1,……,r1,n0=0,1,……,r2
k=r1k1+k0,k1=0,1,……,r2-1,k0=0,1,……,r1-1;
将n与k带入所述基-2/4混合基算法得到所述流水线型结构的算法公式:
Figure GDA0004185830060000045
所述r1和r2再次进行因式分解并使用上述公式进行运算。
本发明通过流水线型结构的算法对所述运算点数进行因式分解,通过因式分解得到所述运算点数重构的蝶形运算结构中基-2蝶形运算模块和基-4蝶形运算模块的层数,在进行基-2蝶形运算时,采用双路并行架构,将蝶形运算结构设置为双基-2蝶形运算结构,每次输入4个操作数据,送入所述蝶形运算结构,并行完成两次蝶形运算,生成4个运算结果数;在进行基-4蝶形运算时,采用单路结构,将蝶形运算结构设置为一个基-4蝶形运算结构,每次输入4个操作数据,送入蝶形运算结构,生成4个运算结果数,所述蝶形运算结构提高了运算效率,减少了资源的消耗。
进一步的,所述蝶形运算单元的结构,包括:
所述蝶形运算单元的蝶形运算模块包括:逐层连接的基-2运算第1级、基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、所述基-4运算第1级所对应的蝶形运算模块拥有两个数据输入端口,所述数据输入端口分别为输入控制单元的输入端口和上一阶运算模块输出的运算结果的输入端口。
一种支持DAB和CDR的多模式可配置FFT处理器的可配置运算方法,包括:
S1:解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
S2:根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址并进行传输;
S3:使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数;
S4:生成所述运算结果数的存储地址,使用所述存储地址进行所述运算结果数的存储;
S5:不同的运算点数需要根据所述蝶形运算层数重复上述S3~S4步骤进行多层运算得到最终运算结果数;
本发明与现有技术相比,具有如下的优点和有益效果:
1、本发明一种支持DAB和CDR的多模式可配置FFT处理器及方法,通过所述处理器,可进行多种模式的选择与切换,所述多种模式在进行切换时可以自动配置相应模式的相应规则和载波解调方式,并将运算方式自动切换为对应模式的运算方式;
2、本发明一种支持DAB和CDR的多模式可配置FFT处理器及方法,所述处理器以固定处理单元可重构的方式构建任意点数FFT运算的运算结构,设置所述选择输出模块,根据输入的序列的点数将输入数据连接至不同的模块中实现FFT处理器的可配置性,从而具有更好的通用性和灵活性,兼容两种标准并可快速处理多点运算;
3、本发明一种支持DAB和CDR的多模式可配置FFT处理器及方法,所述处理器基于相同可用的计算资源,通过合理的资源调度,重构实现不同点数FFT运算的运算结构,在对运算资源和运算精度有不同需求的应用场景下可采用不同的运算模式,根据应用需求,实时调整资源占用量,在不影响整个处理性能的条件下,以合理的计算效率实现FFT计算,有效提高计算资源利用率和运算效率;
4、本发明一种支持DAB和CDR的多模式可配置FFT处理器及方法,所述处理器能够基于不同可用的运算资源,以不同的配置方式,构建同一点数的、具有不同运算效率的FFT运算结构,满足不同应用场景下FFT运算的运算性能需求;
5、本发明一种支持DAB和CDR的多模式可配置FFT处理器及方法,所述处理器的基本运算单元实现简单,所需资源量少,可以通过一个FFT模块来达到6种不同点数FFT的实现,通过输入不同的参数配置来实现不同点数的FFT的FPGA实现,使得FFT占用的资源面积大大减小。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1为本发明FFT处理器架构图;
图2为本发明FFT处理器任意点数可配置模块结构图;
图3为本发明FFT处理器模块架构图;
图4为本发明FFT模块轮转乒乓操作运算流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例1
如图1所示,一种支持DAB和CDR的多模式可配置FFT处理器,包括顶层控制模块、地址产生模块和可配置运算电路模块;
所述顶层控制模块解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
所述地址产生模块根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址,生成运算结果数的存储地址,并将所述操作数地址、运算结果数的存储地址和旋转因子的读取地址传输给所述可配置运算电路模块;
所述可配置运算电路模块使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数。
如图1所示,所述可配置FFT处理器还包括存储模块和整序模块;
所述存储模块包括片上SRAM存储器和ROM存储器,所述片上SRAM存储器读取和存储所述顶层控制模块的控制信息以及所述可配置运算电路模块的中间运算结果数和最终运算结果数,通过输出数据缓冲模块与片外存储器进行通信;
所述ROM存储器读取和存储所述可配置运算电路模块的运算点数、中间运算结果数和最终运算结果数;
所述整序模块将所述可配置运算电路模块的倒位序输出的最终运算结果数恢复为顺序输出。
所述可配置运算电路模块包括蝶形运算单元、输入控制单元、旋转因子生成单元和乘旋转因子单元;所述输入控制单元读取所述运算点数,并根据所述运算点数选择蝶形运算单元中的蝶形运算模块进行所述运算点数的输入;
所述旋转因子生成单元生成所述工作模式的旋转因子;
所述蝶形运算单元包括若干定点加法器、定点减法器以及定点乘法器,所述蝶形运算单元使用接收到的所述控制信息重构蝶形运算单元,将接收到的所述运算点数使用所述蝶形运算单元的定点加法器、定点减法器以及定点乘法器进行运算。
所述蝶形运算单元进行重构蝶形运算结构的可配置性实现,包括:
所述蝶形运算单元的蝶形运算模块将接收到的所述运算点数Point_num与蝶形运算模块自身处理的运算点数mode进行对比;
当所述运算点数Point_num与所述蝶形运算模块自身处理的运算点数mode相等时,即Point_num=mode时,所述蝶形运算模块为此次蝶形运算结构的第一层蝶形运算模块,所述运算点数作为操作数输入所述蝶形运算模块;
当所述运算点数Point_num大于所述蝶形运算模块自身处理的运算点数mode时,即Point_num>mode时,将所述蝶形运算模块的上一层蝶形运算模块的输出数据作为操作数输入所述蝶形运算模块;
当所述运算点数Point_num小于所述蝶形运算模块自身处理的运算点数mode时,即Point_num<mode时,将所述运算点数Point_num输出给所述蝶形运算模块的下一层蝶形运算模块,重复上述操作;
所述运算点数Point_num作为操作数通过输入控制单元输入此次蝶形运算的第一层蝶形运算模块进行运算,所述第一层蝶形运算模块将运算后的数据依次通过当前蝶形运算模块的下一层蝶形运算模块进行运算处理,通过此次蝶形运算结构的最后一层蝶形运算模块得到最终运算结果数。
所述工作模式的配置包括:
所述工作模式基于频率抽取基-2/4混合基作为待运算点数的蝶形运算模式;
所述基于频率抽取的基-2/4混合基使用离散傅里叶变换进行计算,因此所述基-2/4混合基的算法定义式:
Figure GDA0004185830060000081
其中,
Figure GDA0004185830060000082
为旋转因子,X(k)为基-2/4蝶形运算模式的离散傅里叶变换值,N为配置信息的序列长度,x[n]为配置信息序列;
当所述配置信息的序列长度为N=2n*4m时,将所述点数分解为2次幂和4次幂的乘积,即使用基-2蝶形运算模式和基-4蝶形运算模式进行单一运算模式或者复合运算模式的选择;
所述配置信息的序列长度为所述控制信息的运算点数;
当所述控制信息的运算点数为N=2n*4m时,使用基-2/4混合基算法进行FFT运算;
所述运算点数分解成2n个4m点的序列,每段小序列采用基-4蝶形运算得到X1(k0,n0);所述X1(k0,n0)乘以旋转因子
Figure GDA0004185830060000083
所述X1(k0,n0)与旋转因子
Figure GDA0004185830060000084
相乘后的运算结果数再次分解成4m个2n点的序列,每段小序列采用基-2蝶形运算得到X2(k1,k0);
将所述X1(k0,n0)和X2(k1,k0)进行调序,得到X(k1,k0)=X(k)。
所述蝶形运算单元的流水线型结构的算法,包括:
所述基-2/4混合基算法:
Figure GDA0004185830060000091
对所述蝶形运算单元的最大点数N进行因式分解得到N=r1*r2;
令所述基-2/4混合基算法中:
n=r2n1+n0,n1=0,1,……,r1,n0=0,1,……,r2
k=r1k1+k0,k1=0,1,……,r2-1,k0=0,1,……,r1-1;
将n与k带入所述基-2/4混合基算法得到所述流水线型结构的算法公式:
Figure GDA0004185830060000092
所述r1和r2再次进行因式分解并使用上述公式进行运算。
如图2所示,所述蝶形运算单元的结构,包括:
所述蝶形运算单元的蝶形运算模块包括:逐层连接的基-2运算第1级、基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、所述基-4运算第1级所对应的蝶形运算模块拥有两个数据输入端口,所述数据输入端口分别为输入控制单元的输入端口和上一阶运算模块输出的运算结果的输入端口。
如图3、图4所示,一种支持DAB和CDR的多模式可配置FFT处理器的可配置运算方法,包括:
S1:解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
S2:根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址并进行传输;
使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数;
S4:生成所述运算结果数的存储地址,使用所述存储地址进行所述运算结果数的存储;
S5:不同的运算点数需要根据所述蝶形运算层数重复上述S3~S4步骤进行多层运算得到最终运算结果数。
实施例2
在实施例1的基础上,本实施例的配置信息为CDR的128点,所述顶层控制模块解析所述配置信息,使用:
Figure GDA0004185830060000101
其中N=128=21*43=25*41,即所述工作模式包括1次基-2蝶形运算、3次基-4蝶形运算或者5次基-2蝶形运算、1次基-4蝶形运算,为了提高计算效率,选择1次基-2蝶形运算、3次基-4蝶形运算作为所述工作模式;
所述控制信息包括运算点数128、4层蝶形运算层数和所述工作模式;
所述蝶形运算单元根据1次基-2蝶形运算、3次基-4蝶形运算重构蝶形运算结构,所述蝶形运算结构为基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述输入控制单元读取所述运算点数128,选择基-2运算第5级作为蝶形运算结构的第一层,并输入所述运算点数128,所述运算点数128依次通过基-2运算第5级实现1次基-2蝶形运算,所述运算点数128经基-2运算第5级运算后,所述运算点数128依次通过基-4运算第1级、基-4运算第2级和基-4运算第3级实现3次基-4蝶形运算后输出。
实施例3
在实施例1的基础上,本实施例的配置信息为CDR的256点,所述顶层控制模块解析所述配置信息,使用:
Figure GDA0004185830060000102
其中N=256=22*43=26*41,即所述工作模式包括2次基-2蝶形运算、3次基-4蝶形运算或者6次基-2蝶形运算、1次基-4蝶形运算,为了提高计算效率,选择2次基-2蝶形运算、3次基-4蝶形运算作为所述工作模式;
所述控制信息包括运算点数256、5层蝶形运算层数和所述工作模式;
所述蝶形运算单元根据2次基-2蝶形运算、3次基-4蝶形运算重构蝶形运算结构,所述蝶形运算结构为基-2运算第4级、基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述输入控制单元读取所述运算点数256,选择基-2运算第4级作为蝶形运算结构的第一层,并输入所述运算点数256,所述运算点数256依次通过基-2运算第4级、基-2运算第5级实现2次基-2蝶形运算,所述运算点数256经基-2运算第4级和基-2运算第5级运算后,所述运算点数256依次通过基-4运算第1级、基-4运算第2级和基-4运算第3级实现3次基-4蝶形运算后输出。
实施例4
在实施例1的基础上,本实施例的配置信息为CDR的2048点,所述顶层控制模块解析所述配置信息,使用:
Figure GDA0004185830060000111
其中N=2048=21*45=28*41=25*43,因为所述蝶形运算单元的结构最后都会经过基-4运算第3级输出,所以选择5次基-2蝶形运算、3次基-4蝶形运算作为所述工作模式;
所述控制信息包括运算点数2048、8层蝶形运算层数和所述工作模式;
所述蝶形运算单元根据5次基-2蝶形运算、3次基-4蝶形运算重构蝶形运算结构,所述蝶形运算结构为基-2运算第1级、基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述输入控制单元读取所述运算点数2048,选择基-2运算第1级作为蝶形运算结构的第一层,并输入所述运算点数2048,所述运算点数2048依次通过基-2运算第1级、基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级实现5次基-2蝶形运算,所述运算点数2048经上述蝶形运算模块运算后,所述运算点数2048依次通过基-4运算第1级、基-4运算第2级和基-4运算第3级实现3次基-4蝶形运算后输出。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种支持DAB和CDR的多模式可配置FFT处理器,其特征在于,包括顶层控制模块、地址产生模块和可配置运算电路模块;
所述顶层控制模块解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
所述地址产生模块根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址,生成运算结果数的存储地址,并将所述操作数地址、运算结果数的存储地址和旋转因子的读取地址传输给所述可配置运算电路模块;
所述可配置运算电路模块使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数;
所述可配置运算电路模块包括蝶形运算单元、输入控制单元、旋转因子生成单元和乘旋转因子单元;
所述输入控制单元读取所述运算点数,并根据所述运算点数选择蝶形运算单元中的蝶形运算模块进行所述运算点数的输入;
所述旋转因子生成单元生成所述工作模式的旋转因子;
所述蝶形运算单元包括若干定点加法器、定点减法器以及定点乘法器,所述蝶形运算单元使用接收到的所述控制信息重构蝶形运算单元,将接收到的所述运算点数使用所述蝶形运算单元的定点加法器、定点减法器以及定点乘法器进行运算;
所述蝶形运算单元的流水线型结构的算法,包括:
所述基-2/4混合基算法:
Figure FDA0004195331610000011
对所述蝶形运算单元的最大点数N进行因式分解得到N=r1*r2
令所述基-2/4混合基算法中:
n=r2n1+n0,n1=0,1,......,r1,n0=0,1,......r2
k=r1k1+k0,k1=0,1,......,r2-1,k0=0,1,......,r1-1;
将n与k带入所述基-2/4混合基算法得到所述流水线型结构的算法公式:
Figure FDA0004195331610000021
所述r1和r2再次进行因式分解并使用上述公式进行运算;
所述蝶形运算单元的结构,包括:
所述蝶形运算单元的蝶形运算模块包括:逐层连接的基-2运算第1级、基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、基-4运算第1级、基-4运算第2级和基-4运算第3级;
所述基-2运算第2级、基-2运算第3级、基-2运算第4级、基-2运算第5级、所述基-4运算第1级所对应的蝶形运算模块拥有两个数据输入端口,所述数据输入端口分别为输入控制单元的输入端口和上一阶运算模块输出的运算结果的输入端口。
2.根据权利要求1所述的一种支持DAB和CDR的多模式可配置FFT处理器,其特征在于,所述蝶形运算单元进行重构蝶形运算结构的可配置性实现,包括:
所述蝶形运算单元的蝶形运算模块将接收到的所述运算点数与蝶形运算模块自身处理的运算点数进行对比;
当所述运算点数与所述蝶形运算模块自身处理的运算点数相等时,所述蝶形运算模块为此次蝶形运算结构的第一层蝶形运算模块,所述运算点数作为操作数输入所述蝶形运算模块;
当所述运算点数大于所述蝶形运算模块自身处理的运算点数时,将所述蝶形运算模块的上一层蝶形运算模块的输出数据作为操作数输入所述蝶形运算模块;
当所述运算点数小于所述蝶形运算模块自身处理的运算点数时,将所述运算点数输出给所述蝶形运算模块的下一层蝶形运算模块,重复上述操作;
所述运算点数作为操作数通过输入控制单元输入此次蝶形运算的第一层蝶形运算模块进行运算,所述第一层蝶形运算模块将运算后的数据依次通过当前蝶形运算模块的下一层蝶形运算模块进行运算处理,通过此次蝶形运算结构的最后一层蝶形运算模块得到最终运算结果数。
3.根据权利要求1所述的一种支持DAB和CDR的多模式可配置FFT处理器,其特征在于,还包括存储模块和整序模块;
所述存储模块包括片上SRAM存储器和ROM存储器,所述片上SRAM存储器读取和存储所述顶层控制模块的控制信息以及所述可配置运算电路模块的中间运算结果数和最终运算结果数,通过输出数据缓冲模块与片外存储器进行通信;
所述ROM存储器读取和存储所述可配置运算电路模块的运算点数、中间运算结果数和最终运算结果数;
所述整序模块将所述可配置运算电路模块的倒位序输出的最终运算结果数恢复为顺序输出。
4.根据权利要求1所述的一种支持DAB和CDR的多模式可配置FFT处理器,其特征在于,所述工作模式的配置包括:
所述工作模式基于频域抽样基-2/4混合基作为待运算点数的蝶形运算模式;
所述基于频域抽样的基-2/4混合基使用离散傅里叶变换进行计算,因此所述基-2/4混合基的算法定义式:
Figure FDA0004195331610000031
其中,
Figure FDA0004195331610000032
/>
为旋转因子,X(k)为基-2/4蝶形运算模式的离散傅里叶变换值,为配置信息的序列长度,X[n]为配置信息序列;
当所述配置信息的序列长度为N=2n*4m时,将所述点数分解为2次幂和4次幂的乘积,即使用基-2蝶形运算模式和基-4蝶形运算模式进行单一运算模式或者复合运算模式的选择。
5.根据权利要求4所述的一种支持DAB和CDR的多模式可配置FFT处理器,其特征在于,所述控制信息中运算点数的蝶形运算,包括:
所述配置信息的序列长度为所述控制信息的运算点数;
当所述控制信息的运算点数为N=2n*4m时,使用基-2/4混合基算法进行FFT运算;
所述运算点数分解成2n个4m点的序列,每段小序列采用基-4蝶形运算得到X1(k0,n0);
所述X1(k0,n0)乘以旋转因子
Figure FDA0004195331610000033
所述X1(k0,n0)与旋转因子
Figure FDA0004195331610000034
相乘后的运算结果数再次分解成4m个2n点的序列,每段小序列采用基-2蝶形运算得到X2(k1,k0);
将所述X1(k0,n0)和X2(k1,k0)进行调序,得到X(k1,k0)=X(k)。
6.一种支持DAB和CDR的多模式可配置FFT处理器的可配置运算方法,其特征在于,用于如权利要求1~5任意一项所述的一种支持DAB和CDR的多模式可配置FFT处理器,所述可配置运算方法包括:
S1:解析接收到的配置信息得到控制信号,使用所述控制信号选择数据通路,进行控制信息的配置,并将所述控制信息进行存储和传输;
所述控制信息包括工作模式、运算点数和蝶形运算层数,所述工作模式包括基-2蝶形运算模式和基-4蝶形运算模式;
S2:根据所述工作模式生成相应工作模式的操作数地址和旋转因子的读取地址并进行传输;
S3:使用所述控制信息重构蝶形运算单元、旋转因子生成单元和乘旋转因子单元,使用所述操作数地址和旋转因子的读取地址读取操作数和旋转因子,使用所述蝶形运算单元进行所述操作数的运算后,将运算结果和所述旋转因子送往乘旋转因子单元进行运算得到运算结果数;
S4:生成所述运算结果数的存储地址,使用所述存储地址进行所述运算结果数的存储;
S5:不同的运算点数需要根据所述蝶形运算层数重复上述S3~S4步骤进行多层运算得到最终运算结果数。
CN201911257971.3A 2019-12-10 2019-12-10 一种支持dab和cdr的多模式可配置fft处理器及方法 Active CN111027013B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911257971.3A CN111027013B (zh) 2019-12-10 2019-12-10 一种支持dab和cdr的多模式可配置fft处理器及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911257971.3A CN111027013B (zh) 2019-12-10 2019-12-10 一种支持dab和cdr的多模式可配置fft处理器及方法

Publications (2)

Publication Number Publication Date
CN111027013A CN111027013A (zh) 2020-04-17
CN111027013B true CN111027013B (zh) 2023-05-26

Family

ID=70205297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911257971.3A Active CN111027013B (zh) 2019-12-10 2019-12-10 一种支持dab和cdr的多模式可配置fft处理器及方法

Country Status (1)

Country Link
CN (1) CN111027013B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100568B (zh) * 2020-06-29 2022-11-25 北京理工大学 定点傅里叶变换fft处理器及处理方法
CN111562900A (zh) * 2020-07-20 2020-08-21 长沙海格北斗信息技术有限公司 用于高精度导航的fft计算方法、计算模块及其芯片
CN113608717B (zh) * 2021-10-11 2022-01-04 苏州浪潮智能科技有限公司 一种数论变换计算电路、方法及计算机设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587469A (zh) * 2009-06-03 2009-11-25 北京大学深圳研究生院 可变长度的快速傅立叶变换装置
CN102063411A (zh) * 2009-11-17 2011-05-18 中国科学院微电子研究所 一种基于802.11n的FFT/IFFT处理器
CN104268122A (zh) * 2014-09-12 2015-01-07 安徽四创电子股份有限公司 一种可变点数的浮点fft处理器
CN106951394A (zh) * 2017-03-27 2017-07-14 南京大学 一种可重构定浮点通用fft处理器
WO2017125023A1 (zh) * 2016-01-19 2017-07-27 清华大学 一种流水可重构的单精度浮点fft/ifft协处理器
CN109117188A (zh) * 2018-08-06 2019-01-01 合肥工业大学 一种多路混合基fft可重构蝶形运算器
CN109977347A (zh) * 2019-03-29 2019-07-05 南京大学 一种支持多模式配置的可重构fft处理器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7979485B2 (en) * 2005-12-20 2011-07-12 Samsung Electronics Co., Ltd. Circuit for fast fourier transform operation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587469A (zh) * 2009-06-03 2009-11-25 北京大学深圳研究生院 可变长度的快速傅立叶变换装置
CN102063411A (zh) * 2009-11-17 2011-05-18 中国科学院微电子研究所 一种基于802.11n的FFT/IFFT处理器
CN104268122A (zh) * 2014-09-12 2015-01-07 安徽四创电子股份有限公司 一种可变点数的浮点fft处理器
WO2017125023A1 (zh) * 2016-01-19 2017-07-27 清华大学 一种流水可重构的单精度浮点fft/ifft协处理器
CN106951394A (zh) * 2017-03-27 2017-07-14 南京大学 一种可重构定浮点通用fft处理器
CN109117188A (zh) * 2018-08-06 2019-01-01 合肥工业大学 一种多路混合基fft可重构蝶形运算器
CN109977347A (zh) * 2019-03-29 2019-07-05 南京大学 一种支持多模式配置的可重构fft处理器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"A low power ASIP for precision configurable FFT processing";Yifan Bo等;《Proceedings of The 2012 Asia Pacific Signal and Information Processing Association Annual Summit and Conference》;全文 *
"CDR标准的数字调制***研究与设计";陈冬英;《微型机与应用》;全文 *
"Low-Cost Reconfigurable VLSI Architecture for Fast Fourier Transform";Hao Xiao等;《IEEE Transactions on Consumer Electronics》;全文 *

Also Published As

Publication number Publication date
CN111027013A (zh) 2020-04-17

Similar Documents

Publication Publication Date Title
CN111027013B (zh) 一种支持dab和cdr的多模式可配置fft处理器及方法
US7415595B2 (en) Data processing without processor core intervention by chain of accelerators selectively coupled by programmable interconnect network and to memory
Bidet et al. A fast single-chip implementation of 8192 complex point FFT
US9647731B2 (en) Reconfigurable network on a chip (NoC) radio through reduced instruction set computer (RISC) agents by overwriting program store for different phases of demodulation
Ebeling et al. Implementing an OFDM receiver on the RaPiD reconfigurable architecture
JP2009535678A (ja) パイプラインfftのアーキテクチャおよび方法
Prakash et al. Performance evaluation of FFT processor using conventional and Vedic algorithm
Shamani et al. FPGA implementation issues of a flexible synchronizer suitable for NC-OFDM-based cognitive radios
US9104615B2 (en) Processor for processing digital data with pipelined butterfly operator for the execution of an FFT/IFFT and telecommunication device
Wenqi et al. Design of fixed-point high-performance FFT processor
Yan et al. Implementation of an OFDM underwater acoustic communication system on an underwater vehicle with multiprocessor structure
Dinh et al. An area-efficient multimode FFT circuit for IEEE 802.11 ax WLAN devices
KR101165079B1 (ko) 다중입출력 직교주파수분할다중화 시스템을 위한 고속 푸리에 변환 장치 및 그 방법
Yuan et al. A 256-point dataflow scheduling 2× 2 MIMO FFT/IFFT processor for IEEE 802.16 WMAN
Kirubanandasarathy et al. VLSI Design of Mixed radix FFT Processor for MIMO OFDM in wireless communications
Ali et al. A multi‐mode IFFT/FFT processor for IEEE 802.11 ac: design and implementation
US8938034B2 (en) Processor for processing digital data with butterfly operator for the execution of an FFT/IFFT and telecommunication device
Suk et al. A 8192 complex point FFT/IFFT for COFDM modulation scheme in DVB-T system
Locharla et al. Implementation of input data buffering and scheduling methodology for 8 parallel MDC FFT
Aboelaze An FPGA based low power multiplier for FFT in OFDM systems using precomputations
Camarda et al. Towards a reconfigurable FFT: application to digital communication systems
Chitra et al. Design of low power mixed radix FFT processor for MIMO OFDM systems
Ma et al. Implementation of a high-throughput OFDM system using Graphics Processing Units
Mehra Prototype Design of Computationally Efficient Digital Down Converter for 3G Applications
Cabral et al. Implementation of a DAB receiver with FPGA technology

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