一文读懂matlab中rcosdesign函数(成型滤波器)

直接来描述一下:

b = rcosdesign(beta,span,sps,shape)

beta: 滚降系数,取值0~1之间,决定频宽和陡峭程度。取值一般大于0.2。

span: 表示截断的符号范围。

sps: 单个符号范围的采样个数。

shape:可选参数。可不加,可加上'normal',可加上'sqrt'。

当选择'sqrt'时,返回一个平方根升余弦滤波器。

下图是滚降系数不同的对比


贴一段测试代码:

clear all
h1 = rcosdesign(0.25,6,4,'sqrt');
fvtool(h1,'Analysis','impulse');


我们可以看到阶段范围为6,每个范围采样点数为4,上图共存在24个采样点。

下面是对20个随机码元成型滤波并调制:

clear all
rolloff = 0.25;
span = 4;
sps = 40;
b = rcosdesign(rolloff, span, sps);
d = 2 * randi([0 1], 20, 1) - 1;
x = upfirdn(d, b, sps);
r = x + randn(size(x)) * 0.01;
y = upfirdn(r, b, 40, sps);
fvtool(y,'Analysis','impulse');
fc = 0.1;
t = [1:length(y)];
carrier = cos(2 * pi * fc * t);
z = 20 * y .* carrier';
plot(z)

基带成型波形:


调制后波形:



猜你喜欢

转载自blog.csdn.net/lanluyug/article/details/80401943
今日推荐