本发明涉及fft刷新率领域,具体涉及一种基于fpga中双口ram的提升fft刷新率的方法及计算机装置。
背景技术:
1、在频谱分析仪中,通过计算采集信号的fft(fast fourier transform,快速傅里叶变换)来获得信号的频谱,为了捕获更小脉冲信号,通常通过提高fft刷新率来增加计算次数,等效缩短计算间隔的方式来实现。
2、常用的提升fft刷新率的方式是把输入数据进行数据的延迟重叠,然后进行多路fft的计算实现的。此方法可以把输入数据的重叠率大幅度提升,从而大幅度提升fft的刷新率,频谱分析仪也就能够捕获更小的信号。
3、通过重叠fft计算路数的方式因为采用了多路fft计算,导致fpga(fieldprogrammable gate array,现场可编程门阵列)的计算资源也大幅度增加。
技术实现思路
1、本发明的目的在于克服现有技术的缺点,提供一种基于fpga中双口ram(randomaccess memory,随机存取存储器)的提升fft刷新率的方法及计算机装置,在不增加fpga计算资源的情况下提升了fft刷新率。
2、本发明采取如下技术方案实现上述目的,第一方面,本发明提供一种基于fpga中双口ram的提升fft刷新率的方法,包括:
3、s1、例化双口ram,将写数据端分别与写时钟信号、写地址信号以及写数据信号连接,读数据端分别与读时钟信号、读地址信号和读数据信号连接;
4、s2、fpga将输入数据在写时钟信号的节拍下,依次从双口ram的数据写入端口写入双口ram中,ram的写地址信号从0开始到1023一直循环递增,写入数据同时在双口ram中写入端口进行循环覆盖更新;
5、s3、初始时,双口ram中为空,然后双口ram的写入端口连续不停地写入数据,当双口ram在第一次将0-1023个地址数据写满之后,双口ram的读数据端口从地址0开始到1023一直循环递增读出ram中缓存的第一帧数据;
6、s4、输入数据的速率小于读取数据的速率,当读出数据端读完1024个数据之后,此时写数据端口还没有对双口ram的1024深度数据更新完成,若此时读数据端口读完1024个数据之后,新的读地址和步骤s3一样从0重新开始循环,则新的一帧fft数据的先后顺序会发生颠倒,若新的一帧fft数据读数据的起始地址为上一帧的读数据结束地址往前回退205,然后开始循环递增到当前帧读操作的起始地址的前一个地址结束,则双口ram读出的数据在读时钟下进行fft计算。
7、第二方面,本发明提供一种计算机装置,包括存储器,所述存储器存储有程序指令,所述程序指令运行时,执行上述所述的基于fpga中双口ram的提升fft刷新率的方法。
8、本发明的有益效果为:
9、本发明采用fpga内部的双口ram,通过提升fft计算时钟频率来提升fft的刷新率,从而实现在不增加fpga计算资源的情况下提升fft刷新率。
1.基于fpga中双口ram的提升fft刷新率的方法,其特征在于,包括:
2.一种计算机装置,包括存储器,所述存储器存储有程序指令,其特征在于,所述程序指令运行时,执行如权利要求1所述的基于fpga中双口ram的提升fft刷新率的方法。
