[发明专利]一种多粒度并行FFT蝶形计算的方法及相应的装置有效
申请号: | 201110460520.7 | 申请日: | 2011-12-31 |
公开(公告)号: | CN102541813A | 公开(公告)日: | 2012-07-04 |
发明(设计)人: | 王东琳;汪涛;谢少林;蒿杰;尹磊祖 | 申请(专利权)人: | 中国科学院自动化研究所 |
主分类号: | G06F17/14 | 分类号: | G06F17/14 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 周国城 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 粒度 并行 fft 蝶形 计算 方法 相应 装置 | ||
1.一种使用多个缓冲器装置对输入数据进行多粒度并行FFT蝶形计算的方法,其中第一和第二缓冲器装置用于缓存并行FFT蝶形组每级蝶形计算所需要的数据,第三缓冲器装置用于缓存并行FFT蝶形组每级蝶形计算所需要的旋转因子,第四缓冲器装置用于缓存经过并行FFT蝶形组计算完成后的结果数据,其特征在于,
N点输入数据分成个计算节,每个计算节中包含个蝶形组,蝶形组是并行蝶形计算的基本单位,其中,表示向上取整,L为并行粒度因子,其决定了并行读取且可独立进行蝶形计算的数据个数为2L;
所述蝶形组中的FFT蝶形计算方法包括以下步骤:
步骤1,设定计数器的初始值i=L-Rq,表示当前FFT蝶形组计算所需要的蝶形计算级数;
步骤2,通过多路复用(MUX)选通器从所述第一或第二缓冲器装置中读入蝶形计算所需要的2L个数据,将2L个数据分为2L-1组,并从所述第三缓冲器装置中顺序读取2L-1个并行蝶形计算所需要的旋转因子;
步骤3,对所述2L-1组数据进行一级并行蝶形计算;
步骤4,将蝶形计算结果写入所述第二缓冲器装置中,对数据进行重排;
步骤5,修改当前计数器i的值为i=i-1;
步骤6,判断i的值是否为0,如果i=0,表示当前蝶形组计算完成,转向步骤7,否则返回到步骤2;
步骤7,将所述第二缓冲器装置中的数据写入所述第四缓冲器装置中,完成一个蝶形组计算。
2.根据权利要求1所述的方法,其特征在于,所述步骤2中,当i=L-Rq时MUX选通器读入所述第一缓冲器装置中的数据,否则读入所述第二缓冲器装置中的数据。
3.根据权利要求1所述的方法,其特征在于,所述第三缓冲器装置中存储的旋转因子满足以下条件:如果输入数据为2L个,那么所述第三缓冲器装置共存储有(L-Rq)*2L-1个旋转因子,这(L-Rq)*2L-1个旋转因子被分为L-Rq组,每一组有2L-1个旋转因子,其中,第L-Rq组中的2L-1个旋转因子各不相同;第L-Rq-1组中2L-1个旋转因子每2个相同,即有2L-2个不同的旋转因子;第L-Rq-2组中2L-1个旋转因子每4个相同,即有2L-3个不同的旋转因子,依次类推。
4.根据权利要求1所述的方法,其特征在于,所述步骤4中,所述第二缓冲器装置对数据进行重排以满足下一级蝶形计算的顺序读入要求,对于2L点的输入数据Y(i),所述第二缓冲器装置的输出x(i)为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院自动化研究所,未经中国科学院自动化研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110460520.7/1.html,转载请声明来源钻瓜专利网。