0

我有一个电流信号,我从节奏模拟中获得了 30ns 的时间,但我的电流实际上在一段时间内变化(我称之为活动区域)。我提取了超过 1ps 固定步长的电流信号数据并绘制了电流图。然后为了分析频谱和功率谱密度,我在 MATLAB 中使用了 FFT 和 PSD。但是我对这种分析的含义以及如何实现它感到困惑。

我的电路的工作频率是2GHz。所以我的目标是查看这个工作频率下的频谱和功率。现在到目前为止,我明白我需要在 MATLAB 中进行 FFT 时对信号进行归一化。我做的。如果我的当前信号是x,我使用FFT_x = abs(fft(x)/sqrt(N))I 的等式进行FFT N = length(x),例如,我当前信号的长度。但是我的工作频率(2 GHz)没有任何峰值,甚至在任何其他频率也没有。FFT 如下所示(注意:为了分析我的操作频率,我将图移到一侧)。

FFT_normalized

但是,如果我不规范化,我会在我使用的工作频率 (2 GHz) 处达到峰值FFT_x = fftshift(fft(x));该图如下所示:

FFT_not_normalized

现在后面的情节没有标准化,但我有一些东西可以实现我的目标。但是我不能说它是我的 FFT,因为我在各种论坛上读到我需要标准化信号。在对其进行归一化时,频谱几乎是平坦的。我如何将其用于我的分析。

此外,我的 PSD 类似于归一化 FFT 的图,只是幅度值不同,如果我将 FFT 归一化为psd = abs(fft(x).^2);

您知道我如何在这里进行分析。我做错了吗?

如果我能为我的案例获得有关 FFT 和 PSD 的一些很好的参考,那就太好了。

解决上述问题后。我有两个担心。在许多论文或参考文献中,我读到需要开窗来进行 FFT。需要吗?这有什么重要性?如果是这样,我该怎么做?

另一个是 - 如何展示 Perseval 定理?我的意思是 FFT 之前的功率和 FFT 之后的功率与 Perseval 定理相同。如何在 MATLAB 中编写代码?

4

0 回答 0