LMS Filter
用于计算输出、误差和权重的自适应最小二乘算法。
模块类型: LMSFilter
库中的路径:
|
资料描述
座 *LMS Filter*可以使用五种不同的算法实现自适应FIR滤波器。 块评估最小化误差所需的滤波器权重。 之间的输出信号 和期望的信号 . 输出是经过滤波的输入信号,其是期望信号的估计。 *Error*端口输出从所需信号中减去输出信号的结果。
港口
输入
#
输入
—
的输入信号
标量,标量 | 列向量
Details
输入信号被指定为标量或列向量。
如果为参数 *Algorithm*值已设置 Sign-Error LMS, Sign-Data LMS 或 Sign-Sign LMS,那么*Input*端口上的数据必须是真实的。
| 数据类型 |
|
| 复数支持 |
非也。 |
#
期望的
—
所需的信号
标量,标量 | 列向量
Details
期望的信号,指定为标量或列向量。
所需信号必须具有与*输入*端口上的信号相同的数据类型、复杂度和大小。
如果为参数 *Algorithm*值已设置 Sign-Error LMS, Sign-Data LMS 或 Sign-Sign LMS,那么*所需*端口上的数据必须是真实的。
| 数据类型 |
|
| 复数支持 |
非也。 |
#
适应
—
更新过滤器权重
标量,标量
Details
如果*Adapt*端口上的值大于零,则块不断更新滤波器权重。
如果*Adapt*端口上的值小于或等于零,则权重保持其当前值。
依赖关系
要使用此端口,请选中此框 Adapt port.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
重置
—
重置过滤器权重
标量,标量
Details
用于将滤波器权重的值重置为它们的初始值的信号,设置为标量。
每次在*Reset*端口上检测到reset事件时,块都会重置权重。
有关重置事件的类型,请参阅参数 Reset port.
依赖关系
要使用此端口,请设置参数 *Reset port*价值 Rising edge, Falling edge, Either edge 或 Non-zero sample.
| 数据类型 |
|
| 复数支持 |
非也。 |
#
步长
—
步长
标量,标量
Details
输入步长 .
用于算法方程的收敛 Normalized LMS: .
输入数据类型必须与*Input*端口上的数据类型匹配。
依赖关系
要使用此端口,请设置参数 *Specify step size via*价值 Input port.
| 数据类型 |
|
| 复数支持 |
非也。 |
输出
#
输出
—
期望信号的评估
标量,标量 | 列向量
Details
期望信号的估计值,作为标量或列向量返回。 它具有与输入信号相同的大小和复杂度。
输出信号具有与期望信号相同的数据类型。
| 数据类型 |
|
| 复数支持 |
非也。 |
#
错误
—
输出和所需信号之间的误差
标量,标量 | 列向量
Details
输出和所需信号之间的误差,作为标量或列向量返回。 该误差是从期望信号中减去输出信号的结果。
误差信号具有与期望信号相同的数据类型。
| 数据类型 |
|
| 复数支持 |
非也。 |
#
西隧
—
过滤器权重
标量,标量 | 列向量
Details
作为标量或列向量返回的过滤器权重。 对于每次迭代,块从该端口输出当前更新的滤波器权重。
依赖关系
要使用此端口,请选中此框 Output filter weights.
| 数据类型 |
|
| 复数支持 |
非也。 |
参数
主要
#
Algorithm —
计算滤波器权重的算法
LMS | Normalized LMS | Sign-Error LMS | Sign-Data LMS | Sign-Sign LMS
Details
选择用于计算滤波器权重的算法。
| 值 |
|
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
#
Filter length —
过滤器长度
Int64 integer
Details
输入FIR滤波器权重向量的长度。
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
是 |
#
Specify step size via —
步长设置方法
Dialog | Input port
Details
-
Dialog-使用参数指定步长 Step size (mu). -
Input port-使用*Step-size*端口指定步长。
| 值 |
|
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
#
Step size (mu) —
步长
Real number
Details
输入步长 .
用于算法方程的收敛 Normalized LMS: .
依赖关系
若要使用此参数,请为参数设置 *Specify step size via*价值 Dialog.
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
是 |
| 可计算 |
是 |
#
Leakage factor (0 to 1) —
损失比率
Real number
Details
输入损耗因子 .
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
是 |
| 可计算 |
是 |
#
Initial value of filter weights —
滤波器权重的初始值
Scalar / vector of real and/or complex numbers
Details
输入过滤器权重的初始值 矢量或标量的形式。
如果输入标量,则块使用标量值来创建过滤器权重的向量。 这个向量的长度等于滤波器的长度,它的所有值都等于一个标量值。
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
是 |
#
Adapt port —
启用适配端口
Logical
Details
选中此框以启用*Adapt*端口。
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
#
Reset port —
重置端口
None | Rising edge | Falling edge | Either edge | Non-zero sample
Details
如果要将筛选器权重重置为其初始值,请使用此参数。
复位信号必须具有与输入数据信号相同的速度。
-
None-禁用*重置*端口。
要启用*Reset*端口,请选择以下值之一:
-
Rising edge-当输入端口*Reset*上的信号改变如下时开始计数或复位操作:
**从前沿增加到正或零;
**当增加不是从后边缘到零增加的延续时,从零增加到前边缘,如图所示:
+
-
Falling edge-当输入端口*Reset*上的信号改变如下时开始计数或复位操作:
**从前沿减小到负或零;
**当减小不是从前沿到零减小的延续时,从零减小到后沿,如图所示:
+
-
Either edge-在输入端口上发生触发事件时启动计数或复位操作*复位*Rising edge或Falling edge. -
Non-zero sample—当输入端口*Reset*上的信号不为零时在每个采样时钟周期开始计数或复位操作。
| 值 |
|
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
#
Output filter weights —
滤波器输出端的加权因子
Logical
Details
选择此选项可从*Wts*输出端口导出筛选器权重。 对于每次迭代,块从该端口输出当前更新的权重。
| 默认值 |
|
| 程序使用名称 |
|
| 可调谐 |
无 |
| 可计算 |
无 |
此外
LMS滤波算法
Details
如果为参数 *Algorithm*值已设置 LMS 块使用最小二乘(Lms)算法计算滤波器权重。 该算法由以下方程定义:
该块中可用的各种自适应LMS滤波器算法定义如下:
-
LMS: -
Normalized LMS:的情况下
Normalized LMS为了克服更新权重时潜在的数值不稳定性,在分母中添加了一个小的正常数 . 用于双精度浮点输入 等于函数的输出eps(Float64). 对于单精度数据 等于函数的输出eps(Float32). -
Sign-Error LMS: -
Sign-Data LMS:哪里 是实数。
-
Sign-Sign LMS:哪里 是实数。
上面的方程中使用了以下变量:
-
-现时时间指数;
-
-每步缓冲输入样本的向量 ;
-
是每步缓冲输入样本的复共轭向量 ;
-
-步骤中滤波器的权重估计的向量 ;
-
-滤波后的输出信号的步骤 ;
-
-步骤中的估计误差 ;
-
-步骤中所需的信号 ;
-
-适应步骤的大小;
-
-损失系数是这样的 ;
-
-校正权重更新期间发生的任何潜在数值不稳定性的常数。