AnyMath 文档

FIR Rate Conversion

基于FIR滤波器的多相采样频率转换器。

模块类型: SubSystem

库中的路径:

/Signal Operations/Filters/MultirateFilters/FIR Rate Conversion

资料描述

座 *FIR Rate Conversion*使用有理系数对采样频率进行高效多相转换 沿着第一维度。 块将输入信号的每一列视为单独的通道,并且彼此独立地重新采样其中的数据。

从概念上讲,频率转换器结合了FIR内插器和FIR抽取器。 下面给出的方案包含一个结合了重建和平滑滤波器的频率提升元件,以及一个频率降低元件。

变频器执行以下操作:

*通过添加将输入数据的采样率增加到更高的采样率 输入样本之间的零。

*将采样数据通过FIR滤波器。

*通过丢弃将过滤数据的采样率降低到较低的采样率 块存储的每个样本之后的连续样本。

fir rate conversion 1 cn

注意,实际的块算法使用多相分解来执行,这比上面呈现的概念更有效。 有关详细信息,请参阅算法

港口

输入

# IN_1 — 的输入信号
标量,标量 | 向量资料 | 矩阵

Details

输入信号可以指定为标量、矢量或大小矩阵 . 在后一种情况下,输入信号列表示 独立的频道。

有关详细信息,请参阅[基于帧的处理]

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

复数支持

是的

输出

# OUT_1 — 转换后的信号
标量,标量 | 向量资料 | 矩阵

Details

变频后的输出数据可以表示为标量、矢量或矩阵。

块的行为取决于参数的值 Rate options:

  • Enforce single-rate processing -该块保留输入信号的采样频率,但转换尺寸的方式使输出信号中的通道大小不同。 相对于入口的时间。 输出在大小上有一个上限 要输入大小 .

  • Allow multirate processing -单元抽取信号,使输出信号的采样频率在 倍输入的采样率。 输出帧的大小与输入帧的大小相同,但采样率相同。 .

连接到输出的所有单元都以采样频率工作。 ,并且连接到输入的所有单元都以采样频率工作 .

有关详细信息,请参阅[基于帧的处理]

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

复数支持

是的

参数

参数

# Coefficient source — 滤波器系数的设定方法
Dialog parameters

Details

如果参数设置为 Dialog parameters,然后在参数设置窗口中设置滤波器系数。

Dialog parameters

默认值

Dialog parameters

程序使用名称

CS

可调谐

可计算

# Interpolation factor — 的插值系数

Details

指定整数系数 . 块在滤波之前根据该系数增加输入序列的采样率。

依赖关系

若要使用此参数,请为参数设置 *Coefficient source*价值 Dialog parameters.

默认值

3

程序使用名称

IF

可调谐

可计算

# FIR filter coefficients — 低通FIR滤波器的系数

Details

从降序指定FIR滤波器系数 .

依赖关系

若要使用此参数,请为参数设置 *Coefficient source*价值 Dialog parameters.

默认值

[0 -0.000129061486199961 -0.000228040316280948 0 0.000554613738572437 0.000802607430267054 0 -0.00152912350278902 -0.00203638780675590 0 0.00342230705979440 0.00433928347039265 0 -0.00673109372352446 -0.00825637814441869 0 0.0121125402586868 0.0145130044012328 0 -0.0204721583515830 -0.0241392529239787 0 0.0332125142618354 0.0388230898504630 0 -0.0529640018790903 -0.0619837024555044 0 0.0860610417481775 0.102712774109103 0 -0.154048515452570 -0.197567026018057 0 0.408837525145054 0.824655115145336 1 0.824655115145336 0.408837525145054 0 -0.197567026018057 -0.154048515452570 0 0.102712774109103 0.0860610417481775 0 -0.0619837024555044 -0.0529640018790903 0 0.0388230898504630 0.0332125142618354 0 -0.0241392529239787 -0.0204721583515830 0 0.0145130044012328 0.0121125402586868 0 -0.00825637814441869 -0.00673109372352446 0 0.00433928347039265 0.00342230705979440 0 -0.00203638780675590 -0.00152912350278902 0 0.000802607430267054 0.000554613738572437 0 -0.000228040316280948 -0.000129061486199961]

程序使用名称

CF

可调谐

可计算

# Decimation factor — 抽取系数

Details

指定整数系数 . 块在滤波后根据该系数降低输入序列的采样率。

依赖关系

若要使用此参数,请为参数设置 *Coefficient source*价值 Dialog parameters.

默认值

2

程序使用名称

DF

可调谐

可计算

# Rate options — 提供单速或允许多速处理
Enforce single-rate processing | Allow multirate processing

Details

指定要使用的处理。 可供选择的选项:

  • Enforce single-rate processing -输出帧的大小 等于输入帧的大小 乘以 ,在哪里 -插值系数,以及 -抽取系数:

    输出信号的采样率等于输入信号的采样率:

  • Allow multirate processing -输出帧的大小等于输入帧的大小:

    输出信号的采样率等于输入信号的采样率乘以 :

连接到输出的所有单元都以采样频率工作。 ,并且连接到输入的所有单元都以采样频率工作 .

Enforce single-rate processing | Allow multirate processing

默认值

Enforce single-rate processing

程序使用名称

RO

可调谐

可计算

# Allow arbitrary frame length for fixed-size input signals — 允许固定大小输入信号的任意帧长度

Details

指定是否可以将固定大小的输入信号(其大小在仿真期间不改变)转换为具有任意帧长度的输入信号。 在这种情况下,输入帧长度不必是抽取因子的倍数。

对于固定大小的输入信号:

勾选方格 *Allow arbitrary frame length for fixed-size input signals*如果输入信号帧的长度不必是抽取因子的倍数。 如果输入信号的第一个维度不是抽取系数的倍数,那么输出通常是可变大小的信号。 因此,要支持任意大小的输入信号,块还必须支持具有可变大小信号的操作,这是通过勾选框来实现的 *Allow arbitrary frame length for fixed-size input signals. *取消选中该框 *Allow arbitrary frame length for fixed-size input signals*如果输入帧的长度必须是抽取因子的倍数。

依赖关系

若要使用此参数,请为参数设置 *Rate options*价值 Enforce single-rate processing.

默认值

false (关掉)

程序使用名称

AllowArbitrary

可调谐

可计算

此外

设置FIR滤波器系数

Details

在参数中 *FIR filter coefficients*有必要以矢量的形式设置FIR滤波器分子的系数。

传递函数 FIR滤波器设置如下:

系数向量必须具有超过插值系数的长度( ). FIR滤波器应该是一个低通滤波器,其归一化截止频率不超过 . 块在内部以零初始化所有滤波器状态。

设置采样频率

Details

本节仅适用于单速处理模式,当为参数 *Rate options*值已设置 Enforce single-rate processing.

块采样率 FIR Rate Conversion*它是使用参数设置的 *Decimation factor*及 *Interpolation factor. 对于输入矩阵 参数 Decimation factor Interpolation factor 必须符合以下要求:

  • 它们必须是互质数。 即关系 它不能减少到较小的整数的比率。

  • ,在哪里 -分别在输入和输出的整个帧大小。 您可以通过设置满足第二个要求 Decimation factor 等于输入端的帧大小 . 在这种情况下,输出帧大小为 将等于 Interpolation factor .

通过以这种方式改变帧大小,块能够保持帧周期恒定( )并实现采样周期的期望变换使得

哪里 -输出端的采样周期。

下面的图片显示了该块是如何 *FIR Rate Conversion*按尺寸转换输入信号 41 有一个样本期 3/4 维的输出信号中 31 有一个样本期 1. 帧周期 它保持不变。 此示例的参数值:

  • *Interpolation factor*重要 3;

  • *Decimation factor*重要 4;

  • *Rate options*重要 Enforce single-rate processing.

fir rate conversion 2 cn

基于帧的处理

Details

座 *FIR Rate Conversion*按时间重新采样输入信号的每一列。 在这种模式下,单元可以执行单速和多速处理两者。 您可以使用参数 *Rate options*指定块将如何重新计算输入数据:

如果为参数 *Rate options*值已设置 Enforce single-rate processing,则该块的输入和输出数据具有相同的采样率。 为了在保持输入采样率的同时对输出进行重新采样,该块变换每个输入列中的数据,以便输出帧长度在大小上具有上界 ,在哪里 -参数中指定的插值系数 *Interpolation factor, -输入帧的长度,以及 -参数中指定的抽取系数 Decimation factor.

+ 在此模式下,如果在输入端接收到固定大小的信号(仿真过程中帧长度不会改变)并且选中复选框 Allow arbitrary frame length for fixed-size input signals,那么输入帧的长度可以是任意的并且不必是抽取因子的倍数。 如果复选框为 *Allow arbitrary frame length for fixed-size input signals 如果不设置,输入帧长度必须是抽取因子的倍数。

*如果为参数 *Rate options*值已设置 Allow multirate processing,则输入输出数据大小相同,但输出信号的采样率在 倍于输入。 在这种模式下,块处理输入矩阵。 如何 独立的频道。 该块在时间上抽取输入信号的每一列,保持帧大小不变并使输出帧的周期 比输入帧的周期长倍: .

算法

可以基于多相表示高效地执行具有FIR滤波器的频率转换。

要转到多相表示,让我们从定义FIR滤波器的传递函数开始,FIR滤波器是重建和平滑滤波器的组合。:

哪里 -这是FIR滤波器的长度。

您可以按如下方式重新排列此等式:

哪里 —这是多相分量的数量,该值等于插值系数,该系数在参数设置窗口中设置。

你可以把这个方程写成:

哪里 -这些是FIR滤波器的多相组件 .

从概念上讲,带有FIR滤波器的频率转换器包含一个采样率升压元件,然后是一个组合的FIR滤波器 ,随后是采样速率降低元件。

fir rate conversion 1 cn

更换/更换 其多相表示。

fir rate conversion 3

这里是多维插值的标识。

fir rate conversion 4 cn

应用用于插值的标识移动在滤波操作之后添加零样本的操作(增加频率的操作)。 此举允许您以较低的速率过滤信号。

fir rate conversion 5

可以用切换开关代替采样率升压元件、延迟单元和加法器。 为了考虑降低采样率的后续因素,开关以增量移动 . 开关从分支0中获取第一个选择并逆时针移动,每次跳过 的分支。

作为一个例子,考虑一个速度转换器与 ,安装于 5,而 ,安装于 3. 多相组件: , , , . 交换机从第一个分支0开始,跳过分支1和2,从分支3获取下一个样本,然后跳过分支4和0,从分支2获取下一个样本,依此类推。 交换机接收数据样本的分支序列为[0, 3, 1, 4, 2, 0, 3, 1, …​].

因此,在过程中 频率转换首先,对输入数据应用插值系数 ,然后用一个开关仅隔离M个数据样本中的1个,这有效地考虑了抽取系数。 . 转换器输出端的总采样率为 .

fir rate conversion 6 cn

文学作品

  1. Orfanidis,Sophocles J._Introduction To Signal Processing。_上鞍河,NJ:普伦蒂斯-霍尔,1996.