1

我正在尝试使用 Simulink 和 Xilinx 模块组构建 DBPSK 解调器。我像这样计算连续样本的相位差: 在此处输入图像描述

所以,现在我需要根据相位差是 0 还是 pi 将这些相位差映射到符号 0 或 1。

% ----------------------------------------
% | Bit input   |   Phase change (+j*pi) |
% ----------------------------------------
% |     0       |       0                |
% ----------------------------------------
% |     1       |       pi               |
% ----------------------------------------

我不确定如何在 Simulink(Xilinx)中进行相位到符号映射。顺便说一句,这是 Matlab 版本:

demod_symbol=abs(round(DBPSK_Signal/pi));
for i=1:length(demod_symbol)
        if(demod_symbol(i)==2)
            demod_symbol(i)=0;
        end
end

请让我知道,如果我的方法是正确的,以及如何进一步

4

1 回答 1

1

获取减法器的输出并将其馈送到“大于”比较块,另一个输入设置为 pi/2。其输出将是您需要的位。

请注意,您将在这些 atan 块中创建相当多的逻辑 - 几乎肯定有一种更有效的方法可以做到这一点,但现在还没有想到。

于 2011-05-05T13:44:12.027 回答