
fft
文章平均质量分 61
renggang
这个作者很懒,什么都没留下…
展开
-
几个基础点(FFT8)
前阵子纠结在c语言的思路里难以自拔,其实硬件电路语言综合了c语言的串行思维,和电路的并行思维。在完全copy c语言时,用到的for语句,在fpga综合时不推荐使用,因为电脑只是很笨地把for里的电路复制了n遍,并没有利用的概念。同理对于functino的调用,调用几次也会直接复制几次电路,这在实际设计中会浪费大量资源。这些基础的东西,却是很重要。自己摸索,慢慢来吧。 逻辑大致理清,下一步要做原创 2011-11-17 19:54:27 · 1676 阅读 · 0 评论 -
基2蝶算模块(fft8)
满眼的管脚线看得眼晕,尤其是在测试的时候,才发现测试对象的思考更纠结。对于蝶算模块,其功能是由控制器输出4个控制计数,butter_fly在每一个时钟接收一组数。内部设两级缓存交替存储输入,同时计算出结果按原址存到ram里。如下图所示:对于cmul,每个时钟接收8个数据,异步得出结果。基二的蝶型公式是 A=A+B*Wn, A=A-B*Wn,涉及到小数运算,将小数定标,提高64倍,考虑到原创 2011-11-18 18:26:22 · 1930 阅读 · 2 评论 -
DIT基2点fft的编程实现
找了很多资料,发现这个最有用,思路简单清晰,结合自己的理解贴出来。彻底弄懂基2点流程之后,基4也就不难。下一次贴出基4FFT编程实现。蝶形公式:X(K) = X’(K) + X’(K+B)W PN , X(K+B) = X’(K) - X’(K+B) W PN 其中W PN= cos(2πP/N)- jsin(2πP/N)。设 X(K+B) = XR(K+B) + jXI(转载 2011-11-03 12:34:28 · 4580 阅读 · 0 评论 -
16点基4DIT-FFT实现
C程序的思路大致是理清了,平时不编程,小毛病很多,还好有度娘陪伴,迅速化解。照猫画虎地弄出16点的FFT。这并不是最优化的程序,但为了思路清晰,就姑且这样吧。下一步开始FPGA了吧,日语单词还没背,这周凌乱,应该是每一周都很乱。和上一次的程序思路一样,其中比较烦的一点是4点数据输入会分成实部虚部共8个等式。 关于旋转因子,WNP=e^(-j*2*pi*p/n)=cos(-j*2*pi*原创 2011-11-04 21:33:21 · 16515 阅读 · 2 评论 -
关于FFT IP CORE的记忆(altera fft ip core配置)
现成的东西已经很高端了,自己编的怎么也不好,就像别人家的孩子一样。IP CORE有最优化的代码,效率和资源的兼顾,所以君子性非异也,善假于物也。之前实验了很久结果老是不对,费尽了各种周折,最终知道自己的测试方法不对。ip core是根所实际信号优化过的,所以要加以实际信号,如正弦波,而我的思路还停留在教书。展开来说,ip core对于小信号不敏感,比如对于N点fft,输入N个1和输入N个2,结原创 2012-03-28 16:21:17 · 11940 阅读 · 19 评论