深入探究升余弦滚降滤波器及其在通信系统中的应用
创作时间:
作者:
@小白创作中心
深入探究升余弦滚降滤波器及其在通信系统中的应用
引用
CSDN
1.
https://m.blog.csdn.net/qq_16763641/article/details/144927570
升余弦滚降滤波器是通信系统中常用的一种滤波器,主要用于脉冲成形和匹配滤波。本文将深入探讨升余弦滚降滤波器的原理及其在MATLAB中的实现方法。
一、rcosdesign函数设计升余弦脉冲或平方根升余弦脉冲
可以使用MATLAB函数rcosdesign
来生成升余弦脉冲或平方根升余弦脉冲。
b = rcosdesign(beta,span,sps)
beta
:滚降因子span
:滤波器跨越的符号数sps
:每个符号的采样点数
当shape
设置为"sqrt"
时,返回平方根升余弦滤波器;当shape
设置为"normal"
时,返回升余弦FIR滤波器。
a) 平方根升余弦脉冲
假设符号周期为1秒(Ts=1),beta=0.25,span=6,sps=9,shape="sqrt":
Ts = 1; % 码元周期
L = 9; % 每个符号周期包含9个样本
r = 0.25; % 滚降系数
t = -3:Ts/L:3; % 时间向量
pt = rcosdesign(r,6,L,'sqrt'); % 返回一个平方根升余弦滤波器。跨越6个符号
b) 升余弦脉冲
将rcosdesign(r,6,L,'sqrt')
中的sqrt
改为rcosdesign(r,6,L,'normal')
:
c) 根据函数表达式编写MATLAB
升余弦滚降滤波器的函数为:
% 平方根升余弦滚降函数
hr1=sin(pi*t/Ts)./(pi*t/Ts);
hr2=cos(alpha*pi*t/Ts)./(1-(2*alpha*t/Ts).^2);
hr=hr1.*hr2;
HR=abs(t2f(hr));
GT=sqrt(HR);
GR=GT;
function X=t2f(x)
global dt N
H=fft(x);
X=[H(N/2+1:N),H(1:N/2)]*dt;
end
二、脉冲调制的无符号间干扰(ISI)
脉冲调制时,需脉冲整形(插入0进行上采样)后与升余弦滚降滤波器卷积能实现无符号间干扰(ISI)。
a) 脉冲波形成
生成一个升余弦脉冲:
Ts = 1; % symbol duration
L = 9;
span = 6;
r = 0.25; % Roll-off factor
t_step = Ts/L;
pt = rcosdesign(r,span,L,'normal');
b) 单极到双极(幅度调制)
当nth信息为1时,设置αn=1,当nth信息为0时,设置αn=-1:
Ns = 2;%2个bit需要传输
data_bit =[0 1];
amp_modulated = 2*data_bit-1; % 0 => -1, 1 => 1
c) 脉冲调制
将信息每两个bit之间插入8个(L-1)个0:
impulse_modulated = [];
for n = 1:Ns
num_zeros =L-1;%延迟8bit,因为单个符号范围的采样个数为9
delta_signal = [amp_modulated(n) zeros(1, num_zeros)];
impulse_modulated = [impulse_modulated delta_signal];
end
d) 脉冲整形(传递滤波)
将脉冲调制(插入0)的信号与成型滤波器卷积:
tx_signal = conv(impulse_modulated, pt);
三、经过升余弦滚降滤波器后的眼图
使用升余弦滤波器绘制眼图的部分关键代码如下:
t_step = Ts/L;%相邻采样点之间的间隔
Ns = 1000;%Ns为总信息bit数量
pt = rcosdesign(r,span,L,'normal');
figure
for k = 1:floor(Ns/3) % k是三个连续符号部分的索引。Ns为总信息bit数量
tmp = tx_signal( ((k-1)*3*L + 1) : k*3*L ); %第k个连续的符号部分(波形)。
plot(t_step*(0:(3*L-1)), tmp);
axis([0 3 min(tx_signal) max(tx_signal)]);
grid on;
hold on
% pause % 需要按下一个键继续绘图,或者您可以选择common out“暂停”,以一键查看最终结果。
end
四、匹配滤波
匹配滤波器使滤波器输出的信噪比在某一特定时刻达到最大。在通信系统中,根升余弦滤波器(RRC)常用于发送和接收滤波器,来进行匹配滤波。
clear;
close all;clc;
R=0.3; % roll-off factor
delay=4; % the group delay of the filter
sps=16; % oversampling factor
sym=[-3,1,-1,-3,3]; % symbol
len_x=length(sym);
xx=zeros(1,(len_x+2*delay)*sps);
for ii=delay+1:len_x+delay
xx((ii-1)*sps+1)=sym(ii-delay); % oversampling
end
h_rrc=rcosdesign(R,2*delay,sps,'sqrt'); % RRC filter
send=conv(xx,h_rrc); % filter with RRC at the transmitter
send=send(delay*sps+1:end-delay*sps); % remove the delay
recv=conv(send,h_rrc); % filter with RRC at the receiver
recv=recv(delay*sps+1:end-delay*sps); % remove the delay
从图 1可以看出,滤波后波形在最佳采样点处的值并不等于采样点的值。而经过接收端匹配滤波后,波形在最佳采样点处的值正好是发送符号的幅度值,这说明经过匹配滤波后ISI得到缓解。
本文原文来自CSDN
热门推荐
商鞅变法:百姓视角的利弊与评价
北海杯:柯洁终出山!拿到外卡,第一局可能遇到卞相壹?奖金高昂
日本人在饮酒上有哪些礼仪
道路行车道的宽度是多少
为什么不应该遛猫?丰富家中环境4大技巧,让猫咪在家不无聊!
猫咪为什么会突然咬人
幼儿园小班朗朗上口的常规儿歌
每天坚持吃维生素B12,半年后身体会有什么变化?医生说出答案
血战库尔斯克:乌军反攻初尝战果,7个月损失65400余人
揭秘神奇的石灰水:从“饱和”到“奇妙”的化学世界
高效创建思维导图:组织与规划信息的7个步骤
轨道交通系统中应对110V输入瞬态过压的电路设计与保护措施
本土化策略:解锁市场潜力的关键
骑手社保「破冰」进行时,专家:社保制度需突破传统模式
代表委员建言“给外卖骑手缴社保”:加快全国社保一体化的进程,调整缴保灵活性
路边隔音的有效措施有哪些?这些措施如何减少噪音污染?
恒温花洒安装与维护手册解析
喝什么茶不会牙黄?这些茶能让牙齿保持洁白
草甘膦和草铵膦都是灭生性除草剂,但效果差距大,选对药才能保效果
氧化铝粉的生产过程及其环境影响
ETO MARKETS:锑价飙升为哪般?后续走势又将如何?
上海举行石油化工装置灭火救援综合演练
胆囊壁结晶是什么意思
成都周边古镇全攻略:8个古镇各具特色,总有一个适合你
河流系统的生态价值与人类文明发展的新视角
从施工员到项目经理:八大关键能力全面提升
除了学和练,还能怎么提升还原魔方的速度?
河源镜花缘游玩攻略:从行程规划到实用建议
2024年教师资格证考试指南:报名入口与备考攻略
婴儿流黄鼻涕的原因及护理方法