我有一个信号 S,其带宽为bw赫兹,并以fs赫兹采样。
为了用对应于 SNR xdB 的噪声来污染它,我使用了 matlab 函数
out = awgn(S,x);
但是我遇到了一些代码,而不是像下面这样。
out = awgn(S,corrected_x);
在哪里corrected_x = x + 10*log(bw/fs);
哪个是正确的方法,为什么?
我有一个信号 S,其带宽为bw赫兹,并以fs赫兹采样。
为了用对应于 SNR xdB 的噪声来污染它,我使用了 matlab 函数
out = awgn(S,x);
但是我遇到了一些代码,而不是像下面这样。
out = awgn(S,corrected_x);
在哪里corrected_x = x + 10*log(bw/fs);
哪个是正确的方法,为什么?
10*log(bw/fs)考虑过采样操作,因为该函数指定每个样本awgn()的信噪比,以 dB 为单位。
离散时间 AWGN 模型是
其中 X 是来自连续时间的数据, N 是来自 AWGN 过程的噪声序列Y 是接收符号。
如果其特点是其基带等效限制在,那么我们可以识别通过观察在一个速率每秒符号数。见第 2 章,采样定理和无关定理。
称呼平均功率(焦耳每秒)。样本功率噪声符号功率为. 每个符号的信噪比定义为.
如果复数基带信号被过采样,噪声采样功率仍为而数据采样功率降低次,因此.
以分贝为单位,.
该awgn()函数通过先前定义的添加 AWG 噪声.