主要内容

comm.RaisedCosineTransmitFilter

应用脉冲整形插值信号使用提高余弦FIR滤波器

描述

comm.RaisedCosineTransmitFilter系统对象™通过使用提高余弦有限脉冲响应(FIR)滤波器插值输入信号来应用脉冲整形。FIR滤波器具有(FilterSpanInSymbols×OutputSamplesPerSymbol+ 1)水龙头系数。

通过使用凸起余弦FIR滤波器插值输入信号来应用脉冲整形:

  1. 创建comm.RaisedCosineTransmitFilter对象并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

有关系统对象如何工作的详细信息,请参见什么是系统对象?

创建

描述

txfilter= comm.RaisedCosineTransmitFilter返回一个凸起余弦传输FIR滤波器系统对象,它使用凸起余弦FIR滤波器插值输入信号。该滤波器采用高效多相FIR插值结构,具有单位能量。

例子

txfilter= comm.RaisedCosineTransmitFilter(名称,值)使用一个或多个名称-值对设置属性。将每个属性名用引号括起来。例如,comm.RaisedCosineTransmitFilter (FilterSpanInSymbols, 15)配置一个凸起的余弦传输过滤器系统对象,过滤器跨度设置为15个符号。

属性

全部展开

除非另有说明,属性为nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放功能解锁它们。

如果属性为可调,您可以随时更改其值。

有关更改属性值的详细信息,请参见使用系统对象的MATLAB系统设计

过滤器形状,指定为“根”“正常”

数据类型:字符|字符串

滚转因子,指定为范围[0,1]中的标量。

数据类型:

筛选符号范围,指定为正整数。该对象将理想的升余弦滤波器的无限脉冲响应(IIR)截断为跨越此属性指定的符号数量的脉冲响应。

数据类型:

每个符号输出样本,指定为正整数。

数据类型:

线性滤波器增益,指定为正标量。设计了一个具有单位能量的升余弦滤波器,然后应用线性滤波器增益得到最终的抽头系数值。

数据类型:

使用

描述

例子

y= txfilter (x通过使用凸起余弦FIR滤波器插值输入信号,应用脉冲整形。输出由插值信号值组成。

输入参数

全部展开

输入信号,指定为列向量或K——- - - - - -N矩阵。K是每个信号通道输入样本的数量,和N是信号通道的数量。

对于一个K——- - - - - -N矩阵输入时,对象处理输入矩阵的列为N独立的通道。

数据类型:|
复数支持:金宝app是的

输出参数

全部展开

输出信号,返回为列向量或Ko——- - - - - -N矩阵。Ko等于K×OutputSamplesPerSymbolK是每个信号通道输入样本的数量,和N是信号通道的数量。

对象在第一个维度上插入和过滤每个通道,然后生成一个Ko——- - - - - -N输出矩阵。输出信号与输入信号的数据类型相同。

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放system对象的系统资源obj,使用这种语法:

发行版(obj)

全部展开

信息 关于过滤器的信息系统对象
多项式系数 滤波器系数
成本 实现过滤器的计算代价系统对象
freqz 离散时间滤波器的频率响应
fvtool 图滤波器的频率响应
grpdelay 离散滤波器的群时延响应
impz 离散时间滤波器的脉冲响应
订单 离散时间滤波器的阶数系统对象
一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 重置的内部状态系统对象

例子

全部折叠

利用平方根增余弦(SRRC)发射滤波对象对信号进行插值,并显示滤波后信号的频谱。

以每秒1e6个符号的符号速率创建随机双极符号。

Data = 2*randi([0 1],1e6,1) - 1;

创建SRRC传输筛选器对象。默认设置过滤器为平方根形状,每个符号的样本数量为8。

txfilter = com . raisedcosinetransmitfilter
txfilter = com . raisedcosinetransmitfilter与属性:形状:'平方根' RolloffFactor: 0.2000 FilterSpanInSymbols: 10 OutputSamplesPerSymbol: 8增益:1

使用SRRC过滤器过滤数据。

filteredData = txfilter(data);

创建一个采样率为8e6的频谱分析仪对象。该采样率与滤波信号的采样率相匹配。

光谱分析仪=光谱分析仪(SampleRate=8e6);

使用频谱分析仪对象查看滤波后信号的频谱。

简介(filteredData)释放(简介)

从具有不同滤波器跨度的平方根提高余弦(SRRC)滤波器创建插值信号。检查各种滤波器设计的幅度响应。

创建SRRC过滤器对象,设置各种过滤器跨度。使用多项式系数对象函数来获得滤波器系数。

txfilt2 = com . raisedcosinetransmitfilter (“FilterSpanInSymbols”2);txfilt4 = com . raisedcosinetransmitfilter (“FilterSpanInSymbols”4);txfilt6 = com . raisedcosinetransmitfilter (“FilterSpanInSymbols”6);txfilt8 = com . raisedcosinetransmitfilter (“FilterSpanInSymbols”8);txfilt16 = com . raisedcosinetransmitfilter (“FilterSpanInSymbols”16);taps2 = coeffs(txfilt2).分子;ttap4 = coeffs(txfilt4).分子;ttaps6 = coeffs(txfilt6).分子;ttaps8 = coeffs(txfilt8).分子;ttaps16 = coeffs(txfilt16).分子;

启动滤波器可视化工具以显示不同滤波器跨度的震级响应。指定1千赫的采样率。显示双面居中响应。

FVT = fvtool(taps2,1,taps4,1,taps8,1,taps16,1);fvt。Fs = 1e3;fvt。FrequencyRange =“[Fs / 2, Fs / 2) ';传奇(fvt“跨越2个符号”“跨越4个符号”...“跨越8个符号”“跨越10个符号”

{

创建一个平方根提高余弦(SRRC)传输滤波器系统对象™,然后绘制滤波器响应。结果表明,线性滤波器增益大于单位。具体来说,通带增益大于0db。

txfilter = com . raisedcosinetransmitfilter;fvtool (txfilter)

{

函数获得滤波器系数多项式系数对象函数,并将滤波器增益调整为单位能量。

B = coeffs(txfilter);

由于具有单位通带增益的滤波器的滤波器系数之和必须为1,因此将线性滤波器增益设置为滤波器抽头系数之和的倒数,b.Numerator

txfilter。获得= 1/sum(b.Numerator);

验证得到的过滤器系数之和为1。

bNorm = coeffs(txfilter);总和(bNorm.Numerator)
Ans = 1.0000

再画一下滤波器的频率响应。结果表明,通带增益为0 dB,为单位增益。

fvtool (txfilter)

{

扩展功能

版本历史

在R2013b中引入