在学习DSP的过程中遇到了一些问题,包括面试与讨论中,记录在这篇博客中。
1、DSP的哈佛结构特点,与常规的冯诺依曼结构区别。
2、给定一个信号为两个幅值为A的正弦信号的叠加(1000hz和1050hz),给定8khz的采样率,一个周期有多少个采样点?
思路:这个问题的关键在于理解频率分辨率和DFT的实质。对于有限长离散点做DFT,相当于时域加窗(乘以一个矩形函数),频域上卷积sinc函数,sinc函数的主瓣宽度恰好是频率分辨率(即一个区间),如果信号恰好落在离散的整数频点上,则其他频点的幅值都是0,sinc函数的零点;如果在两个频点中间,相当于sinc函数的峰值在两个频点中间,那么左右频点都会有值,距离信号实际频率越近,幅值越大。
(1)对128个采样点做FFT,所得的信号频谱图是什么样的?
思考:注意频率分辨率,8k/128=62.5hz,两个正弦信号频率间隔为50hz,小于频率分辨率,故而不能分辨出来。频谱图要注意1000hz是否在整数点上,若不是62.5的整数倍,那么将落在附近的离散频率点上,并且距离最近的频率点幅值最大,依次衰落。
(2)对128个采样点补零,做512点FFT,所得的频谱如何?
思考:时域补零并不会影响频谱图,仅仅是对原来频域的插值。同时幅值成比例缩小。仅仅通过补零来增加DFT点数,看似增加了频率分辨率,但是实质上时域信号的窗函数长度并没有改变,仍然是补零之前的,这种做法虽可以克服栅栏效应,但是对频谱分析的准确性却是无益的。
(3)对512个采样点做FFT,所得的频谱如何?
思考:此时的频率分辨率可以满足,但是仍要注意是否在整数点上的问题。
(4)若原问题改为8k采样,100个点FFT,1000和1080信号能否分开?
思考:频率分辨率为80hz,1000/80=12.5,不在整数点上,所以1000hz的信号会落