[发明专利]一种实现FFT及IFFT运算的装置和方法无效
申请号: | 200910179924.1 | 申请日: | 2009-09-30 |
公开(公告)号: | CN102033852A | 公开(公告)日: | 2011-04-27 |
发明(设计)人: | 王经纬 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F17/14 | 分类号: | G06F17/14 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 fft ifft 运算 装置 方法 | ||
1.一种实现FFT及IFFT运算的装置,其特征在于,包括FFT控制单元、ALU运算单元、RAM读/写控制单元、多个RAM、旋转因子存储单元和旋转因子读取单元:
FFT/IFFT控制单元,用于将两路待运算数据和旋转因子输入ALU运算单元,并将ALU输出计算结果分别存储到对应的RAM中,以及利用状态机控制FFT/IFFT每级蝶形运算的切换;
ALU运算单元,用于对两路待运算数据分别进行FFT/IFFT蝶形运算;
RAM读/写控制单元,用于对所述多个RAM进行读和写控制,其中,所述多个RAM存储ALU运算单元每级FFT/IFFT蝶形运算后的结果;
旋转因子读取单元,用于计算每级蝶形运算所需的旋转因子在旋转因子存储单元中的存储地址。
2.如权利要求1所述的装置,其特征在于,其中所述ALU运算单元独立设置在该装置外,进行FFT/IFFT运算时,FFT/IFFT控制单元还用于调用该ALU运算单元进行FFT/IFFT蝶形运算。
3.如权利要求1所述的装置,其特征在于,所述多个RAM为两个双口RAM,则所述RAM读写控制单元用于对所述双口RAM进行读和写控制,包括按照蝶形结为单位从所述双口RAM中读取数据以及将每级蝶形运算后的数据写入所述双口RAM,其中,
读地址(ramrdaddr)计算公式为:
第一个点的读地址为ramrdaddr=(group-1)<<i+T,第二个点读地址为ramrdaddr=(group-1)*M+but_dis tan ce+T;
写地址(ramwraddr)计算公式为:
第一个点的写地址ramwraddr=(groupwr-1)<<i+Twr,第二个点的写地址ramwraddr=(groupwr-1)<<i+but_dis tan ce+Twr;
其中,group为蝶形结计数,M为2的i次方,i为运算级数,T和Twr为2的6-i次方,but_distance为蝶形结中两点的间隔。
4.如权利要求3所述的装置,其特征在于,所述RAM读写控制单元还用于用组合逻辑实现读地址和写地址的计算。
5.如权利要求3或4任一权项所述的装置,其特征在于,所述旋转因子读取单元用于计算每级蝶形运算所需的旋转因子在旋转因子存储单元中的存储地址,包括旋转因子读取单元按照蝶形结为单位从所述旋转因子存储单元中读取旋转因子,读地址(romrdaddr)计算公式为:
romrdaddr=26-i×T或romrdaddr=T<<26-i,其中T,26-i为常量。
6.如权利要求1所述的装置,其特征在于,所述状态机包括多个状态,并且每个状态对应一级碟形运算。
7.一种实现FFT及IFFT运算的方法,其特征在于,包括:
输入两路待运算数据和运算所需的旋转因子,调用ALU运算单元分别对两路待运算数据进行多级FFT/IFFT蝶形运算,并将每级蝶形运算后的两路数据分别存储到对应的RAM中,其中,利用状态机控制每级FFT/IFFT蝶形运算的切换。
8.如权利要求7所述的方法,其特征在于,其中,所述RAM为双口RAM,则进行多级FFT/IFFT蝶形运算之前,还进一步包括:
计算待运算数据或运算后的数据在双口RAM中的存储地址,根据计算得到的存储地址从双口RAM读取待运算的数据或将运算后的数据存入双口RAM的对应存储地址;
计算每级蝶形运算所需的旋转因子在旋转因子存储单元中的存储地址,并从该旋转因子存储单元中读出每级蝶形运算所需的旋转因子发送至该ALU运算单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910179924.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:大白栓菌或其提取物、3-氢化松苓酸B的新用途
- 下一篇:眼镜携带包