资源描述:
《一种基于并行计算的快速fftip核设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、总第246期计算机与数字工程Vol.38No.42010年第4期Computer&DigitalEngineering1393一种基于并行计算的快速FFTIP核设计1),2)1)1)1)李仕专李维涛姜全贤符天(1)2)海南软件职业技术学院琼海571400)(北京天一集成科技有限公司北京100089)摘要介绍了使用二维RAM和128个蝶形运算模块并行处理实现高速FFT(快速傅立叶变换)算法的突破性技术。该处理器可以支持最大32K的点复数FFT变换(实部和虚部各16位),转换时间为70μs,技术指标居国际先进水平。关键词快速傅里叶变换;二维RAM;蝶形运算;并行处
2、理中图分类号TN47AFastFFTIPCoreDesignBasedonParallelComputing1),2)1)1)1)LiShizhuanLiWeitaoJiangQuanxianFuTian(HainanSoftwareVcationalandTechnicalInstitute1),Qionghai571400)(BeijingAoneIntegrationCompanyLtd.2),Beijing100089)AbstractThisarticleusesthetwo2dimensionalRAMand128butterflycomputin
3、gparallelprocessingtechnologytoa2chievehigh2speedFFT(FastFourierTransform)algorithmbreakthroughtechnology.Theprocessorcansupportthelargest32KpointcomplexFFTtransform(realandimaginarypartofeach162bit),conversiontimeis70μs,technicalindicatorsrankinginternationaladvancedlevel.KeyWordsF
4、FT,22DRAM,butterflycomputing,parallelprocessClassNumberTN471引言2基于并行计算的高速FFT实现自1965年以来,库利与图基发现FFT算法实现FFT算法有许多方法。一般来说,可以后,FFT在数字信号处理中是一个非常重要的算使用软件方式在通用CPU上实现,可以用DSP的[3~4]法,在许多领域得到相当广泛的应用。FFT处理方法实现,可以使用FPGA实现和以及ASIC[5~6]器作为FFT算法的硬件实现,也日益受到重视。方法实现等。目前,许多芯片厂商都推出了定点FFT的IP核对于FFT计算速度而言,ASIC
5、具有无以伦比[1]产品。然而,定点FFT精度不够高,不能在某的优势。加快FFT处理速度的主要技术手段通过些精度要求高的情况下使用,特别是超长点的增加处理器单元和高基算法结构使用并行计算技[2][7~8]FFT运算。在平衡设计的灵活性和可扩展性术。在确定基数时应该全面考虑FFT处理速后,使用二维RAM来提高数据的访问速度,以满度、算法、FPGA的结构特点和硬件资源的消耗等足复杂的浮点蝶形运算阵列操作,并使用并行计因素。基2蝶形算法由一个乘法和两个加法器组算策略,可以实现最高的可达32K点的24位浮成,而基4蝶形算法包含三个复杂的乘法运算,虽点FFT信号处理器的设
6、计,大大提高了系统的运然基4处理器的处理速度是基2处理器的2倍,但行速度。基4蝶形算法硬件使用是基2的两倍。综合考虑3收稿日期:2009年11月18日,修回日期:2009年12月20日基金项目:海南省自然基金课题(编号:609011)资助。作者简介:李仕专,男,硕士,工程师,研究方向:集成电路设计,信息处理。140李仕专等:一种基于并行计算的快速FFTIP核设计第38卷后,本设计的处理器使用基2蝶形算法,如图1所以一个存16个字的二维RAM为例说明其工示是基2蝶形运算单元的结构。作原理,如图4所示。我们知道,FFT数据在整个操作流程中是很清楚的。N点图1基2蝶
7、形运算结构的FFT计算复杂度为(N·log2N),可分为(log2N)层,每层进行n/2次蝶形运算,如图2所示。显然,FFT的蝶形计算在每一层之间没有相关的数据。从理论上讲,n/2个蝴蝶操作可以并行工作。整个FFT操作用(log2在这个二维RAM中:N)步骤就可以完成。·若x方向地址有效,且Ax=00,则并行读出0,1,2,3四个字;·若x方向地址有效,且Ax=10,则并行读出8,9,10,11四个字;·若y方向地址有效,且Ay=00,则并行读出0,4,8,12四个字;·若y方向地址有效,且Ay=10,则并行读出2,6,10,14四个字。使用这个二维RAM配合
8、4个基2蝶型运算单元,我们可以很容易地