- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于FPGA的线性卷积的实时实现
在图5中,由上位机产生的一组8 192点随机复数a(t)写入ROM中,作为FFT模块的信号输入,经过FFT后将结果B(ω)存入RAM中,以方便上位机读取并与a(t)使用Matlab计算出来的FFT结果A(ω)进行比较;接着将该FFT结果B(ω)再进行IFFT计算,由数字信号处理理论可知,一个信号进行FFT后再进行IFFT的结果应该是信号本身,所以将B(ω)再进行IFFT计算后得到的结果b(t)存入RAM,由上位机读取并与原始信号a(t)进行比较,可以分析整个卷积系统的处理误差。图6给出了计算FFT结果相对误差的Matlab相关程序。
求出A(ω)的最大值max[A(ω)],分别对B(ω)的实部和虚部计算相对误差,得到如图7所示的相对误差曲线。由图6可知,在FFT过程中,相对误差可以保证在0.5%以内。对FFT所得的结果B(ω)做IFFT得到b(t),分析b(t)与原数据a(t)的误差,得到如图8所示的相对误差曲线。
观察图8可知,经过FFT变换和IFFT变换以后的累积相对误差保持在±3%以内,主要原因是FPGA计算FFT和IFFT过程中由于精度的要求,进行数据舍去,造成误差的产生。这种误差是由硬件客观条件限制的,不可避免,但是±3%的误差精度完全可以满足实际应用。
本系统由于涉及到高速A/D、高速D/A,所以在PCB设计过程中必须考虑电磁兼容EMC(Electro Magnetic Compatibility)和抗电磁干扰EMI(Electro Magnetic Interference)性和信号的完整性。总体来说,在进行高速PCB设计过程中,不仅要考虑PCB的元器件布局和布线,同时设计中的接地、去耦和旁路同样重要。例如在A/D部分这种混合信号PCB设计中,由于混合了模拟信号与数字信号,只有尽可能减小电流环路的面积才能降低数字信号与模拟信号之间的相互干扰。一个可行的方法是将地平面分割,然后在A/D转换器下面将模拟地和数字地连接在一起。
来源:电子科技