filterBuilder

交互式过滤器设计

语法

filterBuilder (h)
filterBuilder ('回复')

描述

filterBuilder启动构建过滤器的交互式工具。它依赖于F设计面向对象面向对象过滤器设计范式,旨在减少过滤器设计过程中的开发时间。filterBuilder使用以规范为中心的方法来为期望的响应找到最佳算法。

请注意

您必须安装用于使用的信号处理工具箱™F设计filterBuilder.如果您的安装不额外包含DSP系统工具箱™,则可能无法使用下面描述的一些功能。您可以通过输入来验证这两个工具箱的存在ver在命令提示符处。

有关如何使用的详细信息,请参阅filterBuilder,请参阅滤清器设计流程

使用filterBuilder,输入filterBuilder在MATLAB®命令行使用以下三种方法之一:

  • 只需输入filterBuilder.MATLAB打开一个对话框供您选择过滤器响应类型。选择筛选器响应类型后,filterBuilder启动适当的过滤器设计对话框。

  • 进入filterBuilder (h),其中h是一个已存在的过滤器对象。例如,如果h是一个带通滤波器,filterBuilder (h)打开带通滤波器设计对话框。的h对象必须是使用创建的filterBuilder或使用F设计

    请注意

    您必须有DSP系统工具箱软件来创建和导入过滤系统对象。

  • 进入filterBuilder ('回复')来代替回复使用下表的响应方法。MATLAB打开一个过滤器设计对话框,该对话框对应于指定的响应。

请注意

你必须有DSP系统工具箱软件来实现下表中列出的滤波器设计。如果您只有信号处理工具箱软件,您可以设计以下滤波器响应类型的有限集。

反应方法 结果滤波器设计的描述 过滤器对象
arbgrpdelay 任意群延迟滤波器设计 fdesign.arbgrpdelay.
arbmag. 任意幅值滤波器设计 fdesign.arbmag
arbmagnphase 任意响应滤波器(幅值和相位) fdesign.arbmagnphase
经济威士忌 音频加权滤波器 设计音频加权
带通英国石油公司 带通滤波器 fdesign.Bandpass
带阻废话 Bandstop过滤器 fdesign.bandstop
中投公司 CIC滤波器 fdesign.decimator(m,'cic',...)fdesign.interpolator (L,“中投”,…)
看到fdesign.decimatorfdesign.interpolator
ciccomp 中投公司补偿器 fdesign.ciccomp
梳子 梳状滤波器 F设计梳
diff 微分滤波器 fdesign.differentiator
fracdelay 分数延迟滤波器 设计延迟
halfband乙肝 Halfband过滤器 fdesign.halfband
高通惠普 高通滤波器 fdesign.highpass
hilb 希尔伯特过滤器 fdesign.hilbert
isinc.
isinclp.,或
isinchp
逆SIND低通或高通滤波器 fdesign.isinclp.
fdesign.isinchp
低通滤波器lp 低通滤波器(默认) fdesign.lowpass
切口 陷波滤波器 fdesign.notch
尼奎斯特 奈奎斯特滤波器 fdesign.nyquist.nyquist.nyquist.nyquist.nyquist.nyquist.nyquist.nyquist.nyquist
octave. 倍频程滤波器 fdesign.octave
parameq 参量均衡器滤波器 fdesign.parameq
峰过滤器 fdesign.peak.

请注意

因为它们不改变滤波器的结构,所以在使用时大小规格和设计方法是可调的filterBuilder

过滤器构建器设计窗格

主设计窗格

Filter Builder的主窗格因过滤器响应类型的不同而不同,但基本结构是相同的。下图显示了对话框的基本布局。

当您为筛选器选择响应时,对话框中显示的可用选项和设计参数就会改变。此显示允许您只关注在过滤器设计上下文中有意义的参数。

每个过滤器设计对话框包括显示在对话框顶部的选项,如下图所示。

  • 将变量保存为-当你点击应用应用您的更改或好吧要关闭此对话框,filterBuilder将当前的过滤器保存到MATLAB工作空间中,作为带有您输入的名称的过滤器对象。

  • 视图滤波器响应-通过打开过滤器可视化工具(FVTool.).

请注意

filterBuilder对话框包括一个应用选择。每次点击应用filterBuilder将修改后的过滤器写入MATLAB工作区。这个修改过的过滤器具有您在其中分配的变量名将变量保存为.要在不覆盖您工作区中的变量的情况下应用更改,请更改变量名称将变量保存为在单击之前应用

在Filter Builder对话框中有三个选项卡,包含三个窗格:主要数据类型,代码生成.第一个窗格根据所设计的过滤器进行更改。所有过滤器的最后两个窗格都是相同的。以下部分讨论了这些窗格。

数据类型的面板

Filter Builder对话框中的第二个选项卡如下图所示。

算术下拉框允许选择双精度单精度,或固定点.根据过滤器参数的不同,其中一些选项可能不可用。下表描述了这些选项。

算术列表条目 对过滤器的影响
双精度 所有过滤操作和系数都使用双精度,浮点表示和数学。当你使用时filterBuilder要创建过滤器,双精度是算术属性的默认值。
单精度 所有过滤操作和系数都使用单精度浮点表示和数学。
固定点 此条目应用于许多数字处理器上通常使用的选定默认值,用于固定点过滤器中的属性。这些属性包括系数字长度,分数长度和各种操作模式。此设置仅允许签名的固定数据类型。固定点滤波器设计filterBuilder仅在安装定点设计器时可用™ 软件以及DSP系统工具箱软件。

下图显示了数据类型选择后的窗格固定点算术并设置过滤器内部指定精度.这个数字显示了数据类型窗格,用于使用System对象来实现过滤器复选框未选择主要窗格。

当您选择使用System对象来实现过滤器复选框中的主要窗格中,数据类型窗格显示如下:

并非下一节中描述的所有参数都适用于所有过滤器。例如,FIR滤波器没有输入部分截面输出参数。

输入信号

指定筛选器对要筛选的数据应用的格式。在所有情况下,filterBuilder实现使用二进制点缩放和有符号输入的过滤器。您可以根据需要设置单词长度和分数长度。

系数

选择你如何指定单词长度和过滤器分子和分母系数的分数长度:

  • 指定字长允许您输入以比特为单位的系数的字长。在这种模式下,filterBuilder自动将系数的分数长度设置为仅按二值点缩放,这为系数的值和字长提供了可能的最佳精度。

  • 二进制扩展点使您可以进入位中系数的单词长度和分数长度。如果适用,请输入分号和分母系数的单独分数长度。

  • 过滤器系数不会遵守舍入模式溢出模式选择时可用的参数指定精度从Filter internals列表中。系数总是饱和的,四舍五入最近的

区段输入

选择如何在SOS过滤器的每个部分中指定单词长度和分数长度。仅当选择的过滤结构为IIR和SOS时,此参数才可见。

  • 二进制扩展点使您可以输入输入的部分的单词和分数长度。

  • 指定字长允许您以位为单位输入单词长度。

部分输出

选择如何指定来自SOS筛选器每个部分的定点数据类型的单词长度和分数长度。仅当选择的过滤结构为IIR和SOS时,此参数才可见。

  • 二进制扩展点允许您以位为单位输入段输出的字和分数长度。

  • 指定字长允许您以位为单位输入输出字的长度。

状态

在过滤操作之前,期间和之后包含过滤器状态。默认运行或会话之间的过滤器内存。使用此参数指定如何指定状态字和分数长度。此参数不可见,可直接表格和直接表格I过滤器结构,因为filterBuilder直接从输入格式推断状态。状态总是使用signed表示:

  • 二进制扩展点允许您以位为单位输入累加器的字长和分数长度。

  • 指定精度允许您输入以比特为单位的单词长度和分数长度(如果可用)。

产品

确定筛选器如何处理产品操作的输出。从以下选项中选择:

  • 全精度-保持结果的精确性。

  • 保持LSB-当需要缩短数据字时,在结果中保留最低有效位。

  • 指定精度-允许您设置乘法输出使用的精度(分数长度)。

过滤器内部

指定定点筛选器在筛选器中执行算术运算的方式。受影响的筛选器部分包括筛选器乘积、总和、状态和输出。请选择以下选项之一:s manbetx 845

  • 全精度- 指定滤波器在所有计算中保持完整精度,用于产品,输出和累加器中的所有计算。s manbetx 845

  • 指定精度-设置应用于产品操作结果、过滤器输出和累加器的字和分数长度。选择此选项可启用单词和分数长度控件。

签署

选择此选项会使过滤器指示过滤器系数的签名表示。

字长

设置相关过滤器参数的字长(以位为单位)。

分数长度

设置位的关联滤波器参数的分数长度。

累积

使用此参数指定希望如何指定累加器单词和分数长度。

确定累加器如何输出存储的值。从下列选项中选择:

  • 全精度-保持蓄电池的全精度。

  • 保持最高有效位—保留累加器中的最高有效位。

  • 保持LSB—当需要缩短数据字时,将最低有效位保留在累加器中。

  • 指定精度—允许设置累加器使用的精度(分数长度)。

输出

设置过滤器用于过滤后缩放输出数据的模式。你有以下选择:

  • 避免溢出- 设置输出数据分数长度,以避免导致数据溢出。避免溢出被认为是保守设置,因为它独立于输入数据值和范围。

  • 最好的精确度—设置输出数据的分数长度,使输出数据的精度最大化。

  • 指定精度—设置过滤数据使用的分数长度。

定点操作参数

此组中的参数控制过滤器如何舍入定点值以及它如何处理溢出的值。

舍入模式

设置当数值介于数据格式的可表示值(字和分数长度)之间时,过滤器用于量化数值的模式。

  • (用熟石膏、木板等)装天花板-向正无穷方向旋转。

  • 收敛- 舍入到最接近的可代表整数。围绕到最近的偶数存储的整数。这是本软件中可用的方法的最少偏置。

  • 0 /修复-接近零。

  • 地板上-趋近于负无穷。

  • 最近的-向最近的方向转。趋向正无穷。

  • 圆形的-向最近的方向转。对于负数,趋向于负无穷,对于正数,趋向于正无穷。

您所做的选择会影响除系数值和始终四舍五入的输入数据之外的所有内容。在大多数情况下,产品不会溢出,因为它们可以保持完全的精度。s manbetx 845

溢出模式

设置过滤器在定点算法中用于响应溢出条件的模式。从下列选项中选择:

  • 饱和-限制输出到最大的正或负的可表示值。

  • 包装-使用模数算法将溢出值设置为最接近的可表示值。

您所做的选择会影响除系数值和始终四舍五入的输入数据之外的所有内容。在大多数情况下,产品不会溢出,因为它们可以保持完全的精度。s manbetx 845

在剩余之前演员

指定在执行和操作之前是否将数值数据转换为适当的累加器格式。选择在剩余之前演员确保受影响的和操作的结果最密切地匹配大多数数字信号处理器上的结果。在求和之前执行展览操作添加一个或两个可以将错误源添加到筛选结果的额外量化操作。

如果你清楚的话在剩余之前演员,该过滤器防止加数在进行加法操作之前被转换为sum格式。选择此设置可以从求和中获得最准确的结果,而无需考虑过滤器可能使用的硬件。引用的输入格式在剩余之前演员这取决于你使用的过滤器结构。

清除或选择的效果在剩余之前演员如下:

  • 清除-配置过滤器和操作,以保留前一个操作带来的格式的加数。

  • 选定-配置过滤器求和操作,在执行求和操作之前,将加数的输入格式转换为与求和输出格式匹配。通常,选择在剩余之前演员从求和得到的结果更接近数字信号处理器的结果。

代码生成窗格

代码生成窗格包含用于已完成筛选器设计的各种实现的选项。根据您的安装情况,您可以从设计的过滤器生成MATLAB、VHDL和Verilog代码。您还可以选择创建或更新Simulink万博1manbetx®来自设计过滤器的型号。以下部分解释了这些选项。

HDL.

有关此选项的更多信息,请参见从过滤器构建器打开过滤器设计HDL编码器UI(Filter Design HDL编码器)

马铃薯

基于过滤器规范生成MATLAB代码

  • 生成将过滤器作为输出返回的函数

    选择此选项将生成一个函数,该函数使用F设计

  • 生成过滤数据的函数

    选择此选项将生成一个函数,该函数将数据作为输入,并输出使用设计的过滤器过滤的数据。属性中的数据类型设置筛选器输出的数据类型数据类型窗格。

点击生成matlab代码按钮,带来保存文件对话框。指定文件名和位置,保存。过滤器现在包含在可编辑文件中。

万博1manbetx仿真软件模型

从设计过滤器生成S万博1manbetximulink块和子系统

当你点击生成模型,过滤器构建器从设计过滤器生成Simulink块和子系统。万博1manbetx

点击生成模型按钮打开“导出到Simulink”对话框。万博1manbetx

  • 块名—新增子系统块的名称,设置为筛选默认情况下。

  • 目的地- - - - - -当前的将生成的模型保存到当前Simulink模型。万博1manbetx新的创建一个新模型以包含生成的块。用户定义的中指定的位置创建新模型或子系统用户定义的

  • 覆盖生成的'Filter'块—使用中指定的名称覆盖已存在的块块名.清除此复选框可创建具有相同名称的新块。

  • 使用基本元素构建模型-仅使用基本块构建模型。

  • 优化零收益-从模型中移除所有零增益块。

  • 优化以获得统一收益-将所有单位增益替换为直接连接

  • 优化负增益-移除所有负的单位增益块,并改变最近的求和块的符号。

  • 优化延迟链-替换由以下组件组成的延迟链:n单位延迟单一延迟n

  • 优化单位比例值-从过滤器结构中删除所有比例值乘以1。

  • 输入处理—指定生成的过滤块或子系统块如何处理输入。根据你所设计的滤镜的类型,下列一种或两种选择可能是可用的:

    • 列作为通道(基于帧)-块将输入的每一列作为一个单独的通道。

    • 作为通道的元素(基于样本)-块将输入的每个元素作为一个单独的通道。

    有关基于样本和基于帧的处理的详细信息,请参见基于样本和框架的概念

  • 实现模型-使用设置的参数构建模型。

当。。。的时候使用System对象来实现过滤器复选框中被选中主要窗格中,生成模型按钮在万博1manbetx仿真软件模型面板在以下情况下被禁用:

  • 选择过滤响应作为梳子算术数据类型窗格固定点

  • 选择过滤响应作为任意响应脉冲响应作为IIR.,设置指定响应作为到任一大小和阶段频率响应,算术数据类型窗格固定点

这些设置设计了一个dsp.iirfilter系统对象™与定点算法。生成定点的Simulink万博1manbetx模型dsp.iirfilter对象不受支持。万博1manbetx

过滤响应

选择您的过滤器响应filterBuilder反应选择主菜单。

如果您有DSP系统工具箱软件,请执行以下操作反应选择菜单出现。

从菜单中选择您想要的过滤器响应并设计过滤器。

以下部分描述每种响应类型的可用选项。

任意响应滤波器设计 - 主窗格

过滤器规格

响应规范

乐队属性

算法

过滤实施

音频加权过滤器设计-主窗格

过滤器规格

算法

过滤实施

带通滤波器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

BandStop过滤器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

CIC过滤器设计-主窗格

过滤器规格

频率的规范

幅度规格

CIC补偿器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

梳状过滤器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

微分器过滤器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

部分延迟设计-主窗格

频率的规范

半带滤波器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

高通滤波器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

希尔伯特滤波器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

逆真管滤波器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

低通滤波器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

奈奎斯特滤波器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

倍频滤波器设计-主窗格

过滤器规格

算法

过滤实施

参数均衡器滤波器设计-主窗格

过滤器规格

频率的规范

获得规范

算法

过滤实施

峰/缺口过滤器设计 - 主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

脉冲整形滤波器设计-主窗格

过滤器规格

频率的规范

幅度规格

算法

过滤实施

介绍了R2009a