资源描述:
《音频信号分析仪文档》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、音频信号分析仪吴卫陈浩张艳平摘要:木系统是基于FPGA嵌入高性能的嵌入式IP核处理器软核,来代替传统的DSP芯片或者高性能单片机,实现了基于FFT算法的音频信号分析。音频信号通过放大滤波后,A/D模块对其进行采样,采样点送FPGA处理。利用FFT算法实现对信号的各种处理,求出了频率在200Hz—10kHz的信号的总功率及各频率分量的功率之和,且频率分量功率及总功率的相对误差都控制在5%内。同时,还具有对各频率分量存储和冋放显示的功能,可以同吋实吋的显示总功率和至少前两个频率分量的频率值和功率值。还可对信号的失真度进行测量,判断信号
2、周期性等,测量值可通过LCD液晶显示。关键字:FPGAFFT频率功率Abstract:Thissystemisahigh-performancebasedFPGAembeddedsoft-coreembeddedprocessorIPcore,insteadofthetraditionalhigh・performanceDSPchiporchip,theFFTbasedalgorithmtoachievetheaudiosignalanalysis.Afterfilteringtheaudiosignalthroughtheamp
3、lification,A/DmodulebesampledatapointtosendFPGAprocessing・FFTalgorithmusingvanityofsignalprocessing,findthefrequencyofthesignalat200Hz・10kHzfrequencycomponentsofthetotalpoweroftherelativeerroriscontrolledwithin5%.Alsohasthefrequencycomponentsofthestorageandplaybackdis
4、playfunctionscandisplayreal-timetotalpowerandatleasttwofrequencycomponentsbeforethefrequencyandpowervalues.Thesignaldistortioncanbemeasuredtodeterminethesignalperiodically,etc,measuredbyLCDdisplay.Keyword:FPGAFFTfrequencypower1方案选择与论证方案一:采用32位MCU为主控制器,通过AD转换,对音频信号进行采样
5、,然后通过FFT运算,在吋域和频域对咅频信号各个频率分量以及功率等指标进行分析和处理,通过LCD对信号的频谱进行显示。此方案对单片机要求很高,处理速度及精度很难实现。方案二:采用FPGA作为主控制器,运用类似外差原理实现音频信号分析,直接用ADC对信号进行采样,运用DDS芯片或者DSP芯片辅助进行FFT处理,从而获得音频信号的频谱分析图。选用DDS芯片处理电路复杂,调试困难,而用DSP成本较高。图2方案三:采用FPGA内嵌入高性能的嵌入式1P核处理器软核,代替DSP芯片或高性能单片机,实现基于FFT算法的音频信号分析。并在频域对信
6、号的总功率、各频率分量功率、信号周期及失真度进行计算。木设计采用16位AD574实现信号的采样,处理精度高,运算速度快。能实现题目要求的各项功能。根据分析,本设计选用方案三,系统总体设计框图如2图32理论计算与参数计算2.1FFT算法原理FFT是离散傅里叶变换的快速算法,可以将一个信号变换到频威,在频域内观察信号的特征,进行频谱分析等。长度为N的有限长序列x(n)的DFT为:N-1X(£)二工班对"化£=0,1,...,2-1,n=0旋转因子的周期性:W,=w^+IN对称性:vv;w=w^-,n]2=w^WN2=_w,计算X(k
7、)值需要N次复数乘法,(N-l)次复数加法,FFT算法的思想是不断地把长序列的DFT分解成几个短序列的DFT,并利用旋传因子的周期性和对称性来减少DFT的运算次数。将N点DFT分解为两个N/2点的DFT,采用蝶形运算有X(k)可以表示为:X伙)=X
8、伙)+叱;兀伙)*=(),1,...,“—I・下而就N二8点的FFT蝶形运算过程分解如下:图6N=8点的FFT三次分解图N点DET运算可分解后进行M级蝶形运算,每一级运算流图中有N/2个蝶形,每个蝶形只要一次复乘和两次复数加运算,可大大减少运算次数,捉高运算速度。2.2功率谱的计算FP
9、GA通过A/D采样得到N个吋域点序列{x(n)},进行FFT变换后得到N个频域点序列{X(k)},出帕塞瓦尔定理计算处理得到功率信息。帕塞瓦尔定理为:N—l1N-1£门力=万Ex?⑹,n=QN&=o则运算的所有信号的总功率为:1N—l1N=l9N/