主要内容

dsp。CICCompensationInterpolator

利用FIR插值器对CIC插值滤波器进行补偿

描述

你可以补偿CIC插补器的缺点,即它的通带下垂和宽过渡区域,通过在它前面加上一个补偿插补器。这个System对象™允许您设计和使用这样的过滤器。

为了弥补CIC滤波器使用FIR插值器的缺点:

  1. 创建dsp。CICCompensationInterpolator对象并设置其属性。

  2. 调用带有参数的对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

ciccompint= dsp。CICCompensationInterpolator返回一个System对象,ciccompint,它将FIR插值器应用到输入信号的每个通道。利用对象的属性,可以设计插值滤波器来补偿后续的CIC滤波器。

ciccompint= dsp。CICCompensationInterpolator (插值函数返回一个CIC补偿插值器系统对象,ciccompint,InterpolationFactor属性设置为插值函数

ciccompint= dsp。CICCompensationInterpolator (中投公司返回一个CIC补偿插值器系统对象,ciccompint,CICRateChangeFactorCICNumSections,CICDifferentialDelaydsp。CICInterpolator系统对象中投公司

ciccompint= dsp。CICCompensationInterpolator (中投公司插值函数返回一个CIC补偿插值器系统对象,ciccompint,CICRateChangeFactorCICNumSections,CICDifferentialDelaydsp。CICInterpolator系统对象中投公司,InterpolationFactor属性设置为插值函数

例子

ciccompint= dsp。CICCompensationInterpolator (<年代pan class="argument_placeholder">___名称,值返回一个CIC补偿插值器对象,其中每个指定属性设置为指定值。将每个属性名用引号括起来。可以将此语法用于以前的任何输入参数组合。

属性

全部展开

除非另有说明,属性为<年代pan class="emphasis">nontunable,这意味着在调用对象后不能更改它们的值。对象在调用时锁定,而释放函数打开它们。

如果属性是<年代pan class="emphasis">可调,您可以随时更改其值。

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

指定被补偿的CIC过滤器的差分延迟为一个正整数标量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定作为正整数标量进行补偿的CIC过滤器的节数。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定被补偿的CIC过滤器的变化率因子为正整数标量。默认值为2。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定是将最小顺序的过滤器设计为逻辑标量还是将指定顺序的过滤器设计为逻辑标量。默认值是真正的,对应最小阶滤波器。

指定插值补偿器过滤器的顺序为正整数标量。

依赖关系

此属性仅在设置DesignForMinimumOrder财产

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

将补偿器系统对象的插值因子指定为正整数标量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定通带边缘频率为以赫兹表示的正实标量。PassbandFrequency必须小于<年代pan class="inlineequation">F<年代ub>年代/ 2,在那里<年代pan class="inlineequation">F<年代ub>年代为输出采样率。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定滤波器通带波纹为以分贝表示的正实标量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定输入采样速率为正实标量,单位为赫兹。

数据类型:|

指定滤波器阻带衰减为正实标量,以分贝表示。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

指定阻带边缘频率为正实标量,以赫兹表示。StopbandFrequency必须小于<年代pan class="inlineequation">F<年代ub>年代/ 2,在那里<年代pan class="inlineequation">F<年代ub>年代为输出采样率。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

定点属性

系数的字和分数长度,指定为有符号或无符号numerictype对象。默认的,numerictype (16)对应于具有16位系数和基于系数值确定的分数长度的带符号数值类型对象,以提供最佳精度。

此属性不可调。

输出的字长与输入的字长相同。计算输出的部分长度,这样输出的整个动态范围可以表示而不溢出。有关如何计算输出的分数长度的详细信息,请参见FIR滤波器中避免溢出的定点精度规则

输出定点操作的舍入方法,指定为字符向量。有关舍入模式的更多信息,请参见精度和范围

使用

描述

例子

y= ciccompint (x输出上采样和过滤的值,y输入信号的,x

输入参数

全部展开

数据输入,指定为向量或矩阵。System对象处理K<年代ub>我×N输入矩阵N独立通道,在第一个维度上插值每个通道。

此对象不支持复杂无符号定点数据。万博1manbetx

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi
复数的支持:万博1manbetx是的

输出参数

全部展开

上采样和滤波的信号,作为矢量或矩阵返回。对于一个K<年代ub>我×N输入矩阵,结果是aK<年代ub>o×N输出矩阵,K<年代ub>oK<年代ub>我×l而且l是插值因子。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|fi
复数的支持:万博1manbetx是的

对象的功能

要使用对象函数,请将System对象指定为第一个输入参数。例如,释放名为obj,使用以下语法:

发行版(obj)

全部展开

freqz 离散时间滤波器的频率响应<年代pan class="trademark entity">系统对象
fvtool 可视化DSP滤波器的频率响应
信息 信息过滤<年代pan class="trademark entity">系统对象
成本 估计实施过滤器的成本<年代pan class="trademark entity">系统对象
多项式系数 返回过滤器<年代pan class="trademark entity">系统对象结构中的系数
多相 多速率滤波器的多相分解
generatehdl 生成量化DSP滤波器的HDL代码(要求<年代pan class="trademark entity">滤波器设计HDL编码器)
一步 运行<年代pan class="trademark entity">系统对象算法
释放 释放资源并允许更改<年代pan class="trademark entity">系统对象属性值和输入特征
重置 的内部状态重置<年代pan class="trademark entity">系统对象

例子

全部折叠

设计一个CIC补偿插补器。指定插补因子为2,通带频率为200hz,阻带频率为500hz,输入采样率为600hz。

fs = 600;成就= 200;fStop = 500;CICCompInterp = dsp。CICCompensationInterpolator (<年代pan style="color:#0000FF">...“InterpolationFactor”,2,<年代pan style="color:#0000FF">...“PassbandFrequency”成就,<年代pan style="color:#0000FF">...“StopbandFrequency”fStop,<年代pan style="color:#0000FF">...“SampleRate”fs);

画出脉冲响应。零阶系数延迟6个样本,等于滤波器的组延迟。

fvtool (CICCompInterp<年代pan style="color:#A020F0">“分析”,<年代pan style="color:#A020F0">“冲动”)

图1:脉冲响应包含一个轴对象。标题为Impulse Response的axis对象包含一个类型为stem.

绘制幅值和相位响应。

fvtool (CICCompInterp<年代pan style="color:#A020F0">“分析”,<年代pan style="color:#A020F0">“频率”)

图2:幅值响应(dB)和相位响应包含一个轴对象。标题为幅度响应(dB)和相位响应的axis对象包含一个类型为line.

请注意:如果您使用的是R2016a或更早的版本,请用等效的步骤语法替换对对象的每次调用。例如,obj (x)就变成了步骤(obj, x)

为现有的6段插补因子为16的CIC插补器设计一个补偿插补器。

CICInterp = dsp。CICInterpolator (<年代pan style="color:#A020F0">“InterpolationFactor”, 16岁,<年代pan style="color:#0000FF">...“NumSections”6);

构造补偿插补器。指定插值因子为2,输入采样率为600hz,通带频率为100hz,阻带频率为250hz。将阻带中的别名组件的最小衰减设置为至少80 dB。

fs = 600;成就= 100;fStop = 250;ast = 80;CICCompInterp = dsp。CICCompensationInterpolator (CICInterp<年代pan style="color:#0000FF">...“InterpolationFactor”,2,<年代pan style="color:#A020F0">“PassbandFrequency”成就,<年代pan style="color:#0000FF">...“StopbandFrequency”fStop,<年代pan style="color:#A020F0">“StopbandAttenuation”ast,<年代pan style="color:#0000FF">...“SampleRate”fs);

想象级联的频率响应。将所有震级响应归一化为0分贝。

FC = dsp。F我lterCascade(CICCompInterp, CICInterp); f = fvtool(CICCompInterp,CICInterp,FC,<年代pan style="color:#0000FF">...“Fs”, [fs*2 fs*16*2 fs*16*2]);f.NormalizeMagnitudeto1 =<年代pan style="color:#A020F0">“上”;传奇(f,<年代pan style="color:#A020F0">“中投公司补偿插入器”,<年代pan style="color:#A020F0">“中投插入器”,<年代pan style="color:#0000FF">...“总体响应”);

图1:量级响应(dB)包含一个坐标轴对象。标题为幅度响应(dB)的axis对象包含5个类型为line的对象。这些对象表示CIC补偿插补器,CIC插补器:量化,CIC插补器:参考,总体响应:量化,总体响应:参考。

将该设计应用于1000样本随机输入信号。

x = dsp.SignalSource (fi (rand(1000 1), 1, 16日15),<年代pan style="color:#A020F0">“SamplesPerFrame”, 100);y = fi(0(32000 1), 1, 32岁,20);<年代pan style="color:#0000FF">为ind = 1:10 x2 = CICCompInterp(x());y (((ind-1) * 3200) + 1:印第安纳州* 3200)= CICInterp (x2);<年代pan style="color:#0000FF">结束

算法

CIC滤波器的响应为:

H c c ω R D ω 2 ω 2 N

RD,N分别为变化率因子、差分时延和CIC滤波器的节数。

在抽取之后,cic响应的形式是:好的

H c c ω D ω 2 ω 2 R N

CIC补偿器需要补偿的是最后一个响应的规范化版本。因此,CIC补偿器的通带响应应为:

H c c c o p ω R D ω 2 R D ω 2 N ω ω p < π

在哪里ωp为CIC补偿滤波器的通带频率。

注意,当ω/ 2Rπ,即前面的方程式Hciccompω)可以用sin(x)≅x

H c c c o p ω D ω 2 D ω 2 N 年代 n c D ω 2 N ω ω p < π

前面的方程是CIC滤波器真实逆通带响应的逆sinc近似。

扩展功能

版本历史

介绍了R2014b

另请参阅

功能

  • |<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<年代pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">

对象