matlab - 无法获得 Σ-Δ 调制器所需的 FFT

标签 matlab fft simulink dft adc

我在 simulink matlab 中有一个二阶 sigma delta 调制器。工作正常,我将正弦波形应用到输入,Vp - p = 1V,在输出中进行低通滤波后,我有相同的波形(有一点延迟):

我得到这个 fft : fft

sampling freq=256 MHz
input freq= 4MHz

采样和保持时钟的周期为1/256MHZ 图中所示的 adc_out block 的采样时间为 1/256MHz 而且我没有碰其他任何东西。

我根据这个公式计算了输入频率:

fin=(prime/N)* sampling freq

Prime是质数,我选择了257 N是fft点数,我选择了16384 采样频率为256MHz 因此,我将 4MHz 作为最佳输入频率,并且在 fft 之后,这些考虑因素应该为我提供 4MHz 的良好脉冲以及较高频率的整形噪声 正如你所看到的,我在 4MHz 时没有得到我想要的脉冲! 我就是不知道为什么!!

最佳答案

只是看一下图像,我会说它是 windowing问题。特别是,由于您不使用显式窗口,因此您正在使用 block 函数。 block 的 FFT 为 sin(x)/x,它与您的真实响应相混淆。

关于matlab - 无法获得 Σ-Δ 调制器所需的 FFT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44646496/

相关文章:

python - Python 中是否有 quadprog() 的替代方案

image - 如何在 Matlab 中傅立叶相位扰乱灰度 JPEG 图像?

python - 陷波滤波器的脉冲响应

javascript - 振荡器的网络音频 FFT?

hadoop - hadoop的fft算法实现

c++ - SIMULINK 模型的 C/C++ 包装器

MATLAB:朴素贝叶斯与单变量高斯

matlab - max 会引入舍入误差吗?

android - 我可以在 Android 设备上运行 Simulink 吗?

matlab - 如何在 Simulink Matlab 功能 block 中使用 syms