插值和十进制使用RRC滤波器
此示例演示如何使用平方根凸起余弦滤波器对信号进行插值和抽取rcosdesign
函数。本例需要Communications Toolbox™软件。
定义平方根凸起余弦滤波器参数。定义信号星座参数。
滚落= 0.25;%过滤器滚转Span = 6;%滤波器跨度SPS = 4;每个符号的样本百分比M = 4;信号星座的大小k = log2(M);%每个符号的比特数
函数生成平方根凸起余弦滤波器的系数rcosdesign
函数。
rrcFilter = rcosdesign(rolloff,span,sps);
生成10000个数据符号兰迪
函数。
data = randi([0 M-1],10000,1);
对数据符号应用PSK调制。由于星座大小为4,所以调制类型为QPSK。
modData = pskmod(data,M,pi/4);
使用upfirdn
函数,上采样和过滤输入数据。
txSig = upfirdn(modData,rrcFilter,sps);
将Eb/N0转换为信噪比,然后将信号通过AWGN通道传递。
EbNo = 7;信噪比= EbNo + 10*log10(k) - 10*log10(sps);rxSig = awgn(txSig,snr,“测量”);
对接收到的信号进行滤波和下采样。去除一部分信号来解释滤波器延迟。
rxFilt = upfirdn(rxSig,rrcFilter,1,sps);rxFilt = rxFilt(span+1:end-span);
使用前5000个符号创建调制数据的散点图。
hScatter = scatterplot(根号(sps)*...rxSig (1: sps * 5000),...sps, 0);持有在散点图(rxFilt (1:5000) 1 0,“软”hScatter)标题(接收信号,滤波前后)传说(“之前过滤”,过滤后的)轴([-3 3 -3 3])%设置轴范围持有从