对话框 FIR 细分
使用 FIR 滤波器进行多相稀化。FIR 滤波器系数在输入栏中设置。
类型: SubSystem
图书馆中的路径:
|
说明
对话框 FIR 去细化*块在第一次测量时使用整数下采样因子 执行高效的多相细化。
从概念上讲,FIR 去微器(如原理图所示)由一个平滑 FIR 滤波器和一个下采样器组成。
FIR 滤波器用直接形式的 FIR 滤波器过滤输入信号每个通道的数据。接下来的降采样是通过取 -th 样本并丢弃其后的 样本来减少每个通道滤波数据的采样,其中 是在*降采样系数*参数中设置的降采样系数的值。这样得到的离散时间信号与原始信号相比,采样频率降低了 。
FIR 滤波器系数在输入栏中设置。
请注意,实际的块算法实现了直接形式 FIR 滤波器的多相结构,实际上等同于图中所示的组合系统。详见算法。
端口
输入
#
IN_1
—
输入数据
标量 | 向量 | 矩阵
Details
以标量、向量或矩阵形式指定的数据块的输入数据。
数据类型 |
|
复数支持 |
是 |
输出
#
OUT_1
—
稀释后的输出数据
标量 | 向量 | 矩阵
Details
细化后的输出数据,以标量、向量或矩阵形式返回。
块行为取决于 Rate options 参数的值:
-
强制单速率处理"--选中此值时,块会保持输入采样率并对信号进行稀疏处理,将输出帧大小减少 倍。
-
允许多速率处理"--选择此值时,程序块会对信号进行稀释,使输出采样率比输入采样率小 倍。输出帧大小与输入帧大小相同。
数据类型 |
Float16、Float32、Float64、Int8、Int16、Int32、Int64、UInt8、UInt16、UInt32、UInt64。 |
复数支持 |
是 |
参数
Main
# FIR 滤波器系数 — 低通FIR滤波器的系数
Details
按降序指定FIR滤波器传递函数的分子的系数:
传递函数 FIR滤波器定义如下:
为了作为有效的平滑滤波器工作,系数通常对应于归一化截止频率不超过的低通滤波器 ,在哪里 -抽取系数。
块将所有滤波器状态初始化为零。
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
# 细分因子 — 抽取系数
Details
指定整数系数 . 块通过该因子降低输入序列的采样率。
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
#
过滤器结构 —
FIR滤波器结构
Direct form
| Direct form transposed
Details
指定FIR滤波器的结构’直接形式’或’直接形式转置'。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
#
输入处理 —
输入信号处理类型
Columns as channels (frame based)
| Elements as channels (sample based)
Details
指定块是基于参考还是帧执行处理。 可供选择的选项:
-
'元素作为通道(基于样本)`—输入信号的每个元素被视为独立的通道(基于样本的处理)。
-
'列作为通道(基于帧)`—输入信号的每列被视为独立的通道(基于帧的处理)。
有关详细信息,请参阅 按帧和计数进行信号处理.
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
#
速率选项 —
块抽取输入数据的方法
Enforce single-rate processing
| Allow multirate processing
Details
指定块应该精简输入数据的方法。 可供选择的选项:
-
'强制执行单速率处理`-当选择此方法时,该单元保存输入信号的采样率并抽取信号,减少输出帧的大小 有一次。 要选择此方法,*Input processing*参数必须具有值’Columns as channels(frame based)'。
如果*Rate options*参数设置为"强制执行单速率处理",则可以在触发器子系统内部使用*Dialog Fir Decimation*块。
-
"允许多速率处理"-当选择此方法时,单位抽取信号的方式,输出采样率在 比入口少一倍。
依赖关系
要使用此参数,请将*Input processing*参数设置为’列作为通道(基于帧)`。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
#
速率选项 —
块抽取输入数据的方法
Allow multirate processing
Details
该块使用"允许多速率处理"方法抽取数据—输出采样率 次小于输入。
依赖关系
要使用此参数,请将*Input processing*参数设置为`Elements as channels(sample based)`。
值 |
|
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
# 允许固定尺寸输入信号的任意帧长 — 对于固定大小的输入信号,允许任意帧大小
Details
指定固定大小的输入信号(其大小在仿真期间不改变)是否可以具有任意帧大小,即帧大小不必是抽取因子的倍数。 该模块仅对固定大小的输入信号使用此参数,如果输入信号具有可变大小,则将其忽略。
对于固定大小的输入信号:
-
如果选中*允许固定大小输入信号的任意帧长度*复选框,则信号帧的大小不必是抽取因子的倍数。 如果输入信号不是抽取因子的倍数,那么输出通常是可变大小的信号。 因此,为了支持任意输入大小,块还必须支持可变大小操作,这可以通过检查*允许固定大小输入信号的任意帧长度*复选框来启用。
-
如果取消选中*允许固定大小输入信号的任意帧长度*复选框,则输入帧大小必须是抽取因子的倍数。
依赖关系
要使用此参数,请将*Input processing*参数设置为"列作为通道(基于帧)",将*Rate options*参数设置为"强制执行单速率处理"。
默认值 |
|
程序使用名称 |
|
可调谐 |
无 |
可计算 |
是 |
更多信息
多相子过滤器
FIR 去微器的多相实现将低通 FIR 滤波器的脉冲响应分解为 不同的子滤波器,其中 是下采样或去微因子。有关多相实现的更多详情,请参阅算法。
让 表示长度为 的 FIR 滤波器的脉冲响应, 表示输入信号。将滤波器的输出信号稀释 ,就相当于降采样卷积:
多相滤波效率的关键在于,在降采样卷积过程中,某些输入值只与选定的脉冲响应值相乘。例如,如果 ,那么 的输入值只与 的滤波器系数相乘,而 的输入值只与 的滤波器系数相乘。通过将滤波器系数分成两个多相子滤波器,卷积过程中就不会进行不必要的计算。多相子滤波器卷积的输出交错相加,得到滤波器输出。
基于帧的处理
当*输入处理*设置为 "列作为通道(基于帧)"时,设备将对输入信号的每一列进行基于时间的重采样。在此模式下,程序块可执行单速率或多速率处理。您可以使用*速率选项*参数来指定块将如何重新计算输入数据:
-
如果*速率选项*参数设置为 "强制单速率处理",则块的输入和输出数据具有相同的采样速率。为了在保持输入数据采样率的同时稀释输出数据,程序块将重新计算输入数据每一列中的数据,使输出数据帧大小的上限为`ceil`( ),其中 是输入数据帧大小, 是*抽取系数*参数中指定的抽取系数。
在此模式下,如果信号大小固定(帧大小在仿真过程中不会改变),且*允许固定大小输入信号的任意帧长度*复选框被选中,则输入帧大小可以是任意的,不必是抽取因子的倍数。如果未选中 允许固定大小输入信号的任意帧长度 复选框,则输入帧大小必须是抽取因子的倍数。
本表显示了当*输入处理*设置为 "列作为通道(基于帧)"和*速率选项*设置为 "强制单速率处理 "时对任意输入帧大小的支持。
输入信号 | 设备支持该信号 | 支持任意输入帧尺寸 | 输入尺寸 | 输出尺寸 |
---|---|---|---|---|
固定尺寸信号 |
是 |
如果*允许固定尺寸输入信号的任意帧长度*复选框被选中 |
在 |
ceil"( )尺寸的上限由 |
-
当*速率选项*设置为 "允许多通道处理 "时,FIR 除法器块的输入和输出数据大小相同。但是,输出数据采样率比输入数据采样率低 倍。在这种模式下,程序块将输入矩阵 至 视为 独立通道。该块在保持帧大小不变的情况下,及时对输入信号的每一列进行细化,输出帧 ( ) 的周期是输入帧 ( ) 周期的 倍。
在这种模式下,分块只接受固定大小的信号,这些信号的帧大小可以是任意的。
本表显示了当*输入处理*设置为 "列作为通道(基于帧)"且*速率选项*设置为 "允许多速率处理 "时对任意输入帧大小的支持。
输入信号 | 设备支持此信号 | 支持任意输入帧大小 | 输入大小 | 输出大小 |
---|---|---|---|---|
固定尺寸信号 |
是 |
始终 |
开 |
开 |
信号大小可变 |
无 |
不适用 |
不适用 |
不适用 |
参考处理
如果将*输入处理*设置为 "元素作为通道(基于采样)",程序块会将输入矩阵 至 视为 独立通道,并对每个通道进行时间采样。输出采样周期 ( ) 是输入采样周期 ( ) 的 倍,而输入和输出数据大小保持一致。
在这种模式下,设备只接受固定大小的信号,这些信号可以是任意帧大小。
本表显示了当*输入处理*参数设置为 "元素作为通道(基于采样)"时对任意输入帧大小的支持。速率选项*参数自动设置为 "允许多速率处理"。
输入信号 | 设备支持此信号 | 支持任意输入帧大小 | 输入大小 | 输出大小 |
---|---|---|---|---|
固定尺寸信号 |
是 |
始终 |
开 |
开 |
信号大小可变 |
无 |
不适用 |
不适用 |
不适用 |
延迟时间
如果程序块在基于采样的处理模式下运行,其延迟时间始终为零。零延迟是指该模块将在 时间收到的第一个滤波输入采样作为第一个输出采样进行传输。第一个输出采样之后是经过滤波的输入采样 , 等。
算法
FIR 滤波稀化可通过多相结构有效实现。有关多相结构的更多详情,请参阅多相子滤波器。
为了推导多相结构,我们首先要定义 FIR 滤波器的传递函数:
其中 是 FIR 滤波器的长度。
我们可以将这个等式重新排列如下
其中 是多相分量的数量,其值等于在参数设置窗口中设置的抽取系数。
我们可以将这一等式写成
其中 , , …, 是 FIR 滤波器 的多相分量。
从概念上讲,FIR 滤波器减薄由一个低通 FIR 滤波器和一个降采样元件组成。
让我们用它的多相表示法取代 。
这里给出了多元稀疏的特性。
应用稀疏化特性可将下采样操作移至滤波操作之前。这样可以降低信号的滤波速度。
您可以用切换开关取代输入端的延迟和抽取因子。
当第一个输入采样到达时,开关将其送入 "0 "分支,然后抽取器计算第一个输出值。当收到更多输入样本时,开关会逆时针移动,经过 、 和 `0`分支,向每个分支馈入一个样本。当开关到达 "0 "分支时,消隐器产生下一组输出值。只要数据继续流动,这一过程就会继续。每次开关接近 "0 "分支时,消隐器都会输出 。每接收到 个采样,消隐器就会有效地输出一个采样。因此,FIR 抽取器输出端的采样率为 。