Discrete FIR Filter

发布时间:2012-10-07 08:18:07

Discrete FIR Filter

http://tieba.baidu.com/p/1906014933

模型FIR滤波器

离散的

描述



Discrete FIR Filter块独立地过滤与指定的数字FIR滤波器的各信道的输入信号。该块可以实现静态过滤器与固定系数,以及随着时间的推移而改变的系数随时间变化的过滤器。在模拟过程中,您可以调整静态过滤器的系数。

此块过滤器的输入信号的各信道独立地随着时间的推移。Input processing参数允许你指定块是否将每个元素的输入作为一个独立的通道(基于样本的处理),或每列的输入作为一个独立的通道(基于帧的处理)。要执行基于帧的处理,你必须有一个DSP系统工具箱许可证。

维度相等的输入的输出,除非你指定的矩阵滤波器分接头Coefficients参数.当你这样做时,输出尺寸取决于您指定的不同的滤波器分接头数量

输出此块数字的输出相匹配的DSP系统工具箱Digital Filter Design块和信号处理工具箱™dfilt对象.

该模块支持Simulink的状态记录功能。States

过滤器结构的支持

通过选择下列之一的,您可以更改过滤器结构的Discrete FIR Filter模块实现Filter structure参数.

Direct form

Direct form symmetric

Direct form antisymmetric

Direct form transposed

Lattice MA

您必须有可用的DSP系统工具箱许可证来运行一个直接的形式以外的任何这些过滤器的结构模型。

指定初始状态

Discrete FIR Filter块内部过滤器的状态初始化为零,默认情况下,具有相同的效果,假设过去的输入和输出均为零。您可以选择使用的初始状态参数来指定非零的初始条件为过滤器的延迟。

确定有多少的初始状态,你必须指定,如何指定有效的初始状态,请参阅下表。Initial states参数可以是下表中所描述的形式之一。

有效的初始状态

初始条件

描述

标量

该块初始化所有的延迟元件,在过滤器中的标量值。

向量或矩阵

(用于施加不同的延迟元件给每个信道的)

每个向量或矩阵的元素指定了一个唯一的初始条件下,在一个相应的信道为一个相应的延迟元件:

向量的长度等于产品的数量的输入通道和在过滤器中的延迟元件的数目,点阵MA#_of_filter_coeffs-1 (or #_of_reflection_coeffs.

该矩阵的行数必须具有相同的过滤器中的延迟元件的数目,#_of_filter_coeffs-1 (点阵MA #_of_reflection_coeffs), 并且必须具有为每个信道的一列的输入信号。

数据类型支持

Discrete FIR Filter块接受和输出任何数字数据类型支持通过Simulink实数或复数信号。该块支持相同的类型的系数。

下图显示了滤波器的结构和Discrete FIR Filter块中使用的数据类型为固定点信号

直接表单Direct Form

您可以不指定状态数据类型掩码对这种结构,因为输入状态与输入有具有相同的数据类型

对称的直接型Direct Form Symmetric

您可以不指定状态数据类型块掩码对这种结构,因为输入状态与输入有具有相同的数据类型

它是假定滤波器系数是对称的。该块仅使用第一个一半的系数进行滤波。

非对称直接型Direct Form Antisymmetric

您可以不指定状态数据类型块掩码对这种结构,因为输入状态与输入有具有相同的数据类型

它是假定的滤波器系数是反对称的。该块仅使用第一个的一半的系数进行滤波。

直接型转置Direct Form Transposed

当输入或系数是复数时,状态是复数

点阵MALattice MA

参数和对话框

Discrete FIR Filter块对话框中Main窗格显示如下。

Coefficient source

选择是否要指定的滤波器系数在块掩码,或通过输入端口。

Filter structure

选择你想要的过滤器结构块来实现。您必须有可用的DSP系统工具箱许可证来运行模型的Discrete FIR Filter块任何其他过滤器结构该实现direct form

Coefficients

指定滤波器的向量系数的传递函数。滤波器系数必须被指定为一个行向量。当您指定一个列向量滤波器分接头,块适用一个过滤器的输入。要应用多个过滤器相同的输入,指定的系数矩阵,其中每一行代表一组不同的滤波器分接头Coefficient source被设置为Dialog parameters时,此参数才可见.对于多个过滤器,Filter structure必须是Direct form,输入必须是一个标量。

Input processing

指定块是否执行采样或基于帧的处理。您可以选择下列选项之一:

Elements as channels (sample based)对待每个元素作为一个独立的输入信道(基于样品的处理)。

Columns as channels (frame based)对待每列的输入作为一个独立的信道(基于帧的处理)。

注:基于帧的处理需要一个DSP系统工具箱许可证。

Sample- and Frame-Based Concepts

Initial states

指定滤波器的初始条件的状态。Specifying Initial States.

Sample time (-1 for inherited)

指定样本之间的时间间隔。要继承采样时间,此参数设置为-1。看Specify Sample Time.

Discrete FIR Filter块对话框中Data Types窗格显示如下。

Tap sum

指定的分接头和数据类型的direct form symmetricdirect form antisymmetric称滤波器,这是该数据类型的过滤器使用时,它的输入求和之前乘系数。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Inherit via internal rule

内置的整数,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

当选定的过滤器结构无论是Direct form symmetricDirect form antisymmetric该参数可见

点击Show data type assistant按钮显示Data Type Assistant, 它可以帮助您设置Tap sum parameter.

Specify Data Types Using Data Type Assistant

Coefficients

指定系数的数据类型。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Same word length as input

内置的整数,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

点击Show data type assistant按钮显示Data Type Assistant,它可以帮助您设置Coefficients parameter.

Specify Data Types Using Data Type Assistant.

Coefficients minimum

指定最小的滤波器系数的值,该值应该有。 默认值是[](未指定)。Simulink软件使用这个值来执行:

参数范围检查(Check Parameter Values)

自动缩放的定点数据类型

Coefficients maximum

指定的最大的滤波器系数的值,该值应该有。 默认值是[](未指定)。Simulink软件使用这个值来执行:

参数范围检查(Check Parameter Values)

自动缩放的定点数据类型

Product output

指定产品的输出数据类型。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Inherit via internal rule

内置的数据类型,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

点击Show data type assistant按钮显示Data Type Assistant,它可以帮助您设置Product output参数.

Specify Data Types Using Data Type Assistant.

Accumulator

指定累加器的数据类型。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Inherit via internal rule

内置的数据类型,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

点击Show data type assistant按钮显示Data Type Assistant,它可以帮助您设置Accumulator参数.

Specify Data Types Using Data Type Assistant.

State

指定状态的数据类型。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Same as accumulator

内置的整数,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

只有当选定的过滤器结构的Lattice MA,此参数可见。

点击Show data type assistant按钮显示Data Type Assistant,它可以帮助您设置State参数.

Specify Data Types Using Data Type Assistant.

Output

指定输出的数据类型。您可以将其设置为:

继承的规则,数据类型,例如,Inherit: Same as accumulator

内置的数据类型,例如,int8

数据类型的对象,例如,Simulink.NumericType对象

一个表达式,其值的数据类型,例如,fixdt(1,16,0)

点击Show data type assistant按钮显示Data Type Assistant,它可以帮助您设置Output参数.

Specify Block Output Data Types.

Output minimum

指定块输出的最小值。 默认值是[](未指定)。Simulink软件使用这个值来执行:

模拟范围检查 (Signal Ranges)

自动缩放的定点数据类型

Output maximum

指定块输出的最大值。 默认值是[](未指定)。Simulink软件使用这个值来执行:

模拟范围检查 (Signal Ranges)

自动缩放的定点数据类型

Lock data type settings against changes by the fixed-point tools

选择锁定此块对所有数据类型设置定点工具和定点顾问Locking the Output Data Type Setting

Integer rounding mode

指定定点运算的舍入模式。Rounding

Saturate on integer overflow

作用

采取这一行动的原因

溢出会发生什么事

例子

选中此复选框。

你的模型有可能溢出,并在生成的代码,你要明确的饱和保护。

溢出饱和到任何的数据类型可以表示的最小或最大值。

有符号的8位整数溢出饱和-128或127。

不选择此复选框。

你想生成的代码,以优化效率。

你要避免过度指定块如何处理范围的信号。, Checking for Signal Range Errors.

溢出换到数据类型表示的适当的值。

数130不适合在有符号的8位整数,换到-126。

当您选择此复选框,饱和度适用于每一个块的内部运作,而不仅仅是输出或结果。一般情况下,代码生成过程中可以检测到溢出是不可能的。在这种情况下,代码生成器不产生饱和的代码

特征

直接馈通

可以

采样时间

Sample time参数里指定

标量表达式

是的,初始状态

状态

Specifying Initial States

量纲

过零检测

没有

Discrete FIR Filter

相关推荐