[发明专利]基于FPGA的高速可变点FFT处理器及其处理方法无效
申请号: | 201210364555.5 | 申请日: | 2012-09-18 |
公开(公告)号: | CN102945224A | 公开(公告)日: | 2013-02-27 |
发明(设计)人: | 马佩军;谢辉辉;舒浩;史江义;田映辉;邸志雄;汤海华 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F17/14 | 分类号: | G06F17/14 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 田文英;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 fpga 高速 可变 fft 处理器 及其 处理 方法 | ||
技术领域
本发明涉及数字信号处理技术领域,更进一步涉及通信和雷达信号处理中基于现场可编程门阵列(Field Programmable Gate Array,FPGA)的高速可变点流水线快速傅里叶变换(Fast Fourier Transform,FFT)处理器及其处理方法。本发明可用于解决数字信号处理技术中高速可变点数的FFT运算的实时处理,易于FPGA实现,可扩展性强。
背景技术
随着现场可编程门阵列FPGA(Field Programmable Gate Array)技术的迅速发展,采用并行度更大、速度更快的FPGA芯片来实现FFT已成为必然趋势。FPGA技术的关键就是利用强有力的设计工具来缩短开发周期,提供丰富的片上资源,降低设计成本,并能够并行处理数据,容易实现流水结构,且升级方便,提高设计的灵活性。
传统的采用原址运算的FFT处理器在实时专用处理器中得到广泛应用。但采用原址运算的FFT处理器,其不同级同一位置蝶形输入数据寻址不固定,所以每一级的存储地址和控制逻辑不相同,从而增加了地址控制的难度和复杂性,其模块的移植性比较低。
南京航空航天大学申请的专利“基于FPGA实现高速FFT处理的方法”(申请号201010278997.9,申请公告号CN101937424A)公开了一种改进基-2算法的FFT处理器。该FFT处理的中间数据采用顺序存放的方式,每级输入、输出数据顺序不变,因此几何结构固定,其使用两块数组采用循环处理的方法进行计算。但是该方法存在的不足是,其电路循环处理的结构特点导致对于大点数的FFT运算实时性差,速度低;而且系统全部用16位宽,数据精度差;特别是不能进行可变点数的FFT运算处理,灵活性差。
发明内容
本发明的目的在于克服现有技术的不足,解决传统FFT处理器控制逻辑复杂、模块可移植性低的问题,提出了一种基于FPGA的高速可变点FFT处理器及其处理方法,并采用流水线结构方式实现了改进的基-2算法,可实现对数据的快速、可变点数的FFT运算处理。
本发明基于FPGA的高速可变点流水线FFT处理器,包括多级处理模块和一级输出模块,多级处理模块的总级联数由用户进行FFT运算的序列的最大长度决定。
多级处理模块和输出模块以流水线方式级连;所述处理模块中的存储单元与控制单元、蝶形单元通过数据总线和控制总线相连;所述输出模块中的存储单元与控制单元、输出选择单元通过数据总线和控制总线相连;
处理模块中的存储单元,用于存储处理模块的输入数据;
处理模块中的控制单元,用于控制和协调本级处理模块的存储单元、蝶形单元和下一级处理模块的控制单元;
处理模块中的蝶形单元,用于完成每级处理模块的蝶形处理,并把处理结果送给输出模块和下一级处理模块的存储单元;
输出模块,用于从不同级处理模块选择输出结果来实现可变点数的FFT处理器。
基于FPGA的高速可变点流水线FFT处理方法,包括如下步骤:
(1)初始设置
用户根据进行FFT运算的序列需要的长度,设置可变点流水线FFT处理器需要参与运算的处理模块级数;
(2)接收数据
多级处理模块的第一级处理模块接收待进行FFT运算的输入数据序列;
(3)数据存储
第一级处理模块的存储单元接收待进行FFT运算的输入数据序列,在第一级处理模块的控制单元的控制下,将待进行FFT运算的输入数据序列存入到“写”状态的存储器组;第一级处理模块的存储单元中的数据选择器将“读”状态的存储器组的输出数据传送给第一级处理模块的蝶形单元;
(4)蝶形处理
处理模块中的蝶形单元采用蝶形公式对存储单元传来的数据进行处理,得到蝶形处理结果;
(5)判断FFT运算是否结束
5a)将已经参与运算的处理模块个数相加,得到的结果作为已经级联的处理模块数目;
5b)判断已经级联的处理模块数目是否与步骤(1)中所设置的需要参与FFT运算的处理模块级数相等,如果是,则认为FFT运算完成,执行步骤(6)的操作;否则,认为运算未完成,执行步骤5c)的操作;
5c)前级处理模块中的蝶形单元将蝶形处理结果通过数据总线传输给本级处理模块中的存储单元,在本级控制单元控制下存入“写”状态存储器组;本级处理模块的存储单元中的数据选择器将“读”状态的存储器组的输出数据传送给本级处理模块的蝶形单元,执行步骤(4)的操作;
(6)结果输出
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210364555.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种文字识别方法
- 下一篇:多用户硬盘系统及其实现方法