主要内容

级联过滤器

金宝app支持的级联滤波器类型

该编码器支持多速率级金宝app联的滤波器对象的代码生成(dsp.filtercascade.)。

生成级联滤波器代码

实例化过滤器阶段并将其级联在Matlab中®工作区。

hm1 = dsp.firdecimator('decimationfactor',12);hm2 = dsp.firdecimator('decimationfactor'4);my_cascade = dsp.filtercascade(HM1,HM2);
使用方法请参见dsp.filtercascade.在DSP系统工具箱™文档中。

编码器目前对级联滤波器中允许的滤波器类型施加某些限制。看使用级联滤波器的代码生成的限制在创建过滤器阶段和级联筛选器对象之前。

生成级联滤波器代码fdhdltool.函数

称呼fdhdltool.要打开“生成HDL”对话框,请传递级联滤波器系统对象™和固定点输入数据类型。

fdhdltool(my_cascade,numerictype(1,16,15))
设置所需的代码生成属性,然后单击产生按钮生成代码。

生成级联滤波器代码generatehdl.函数

称呼generatehdl.要为筛选器生成HDL代码,请根据需要在级联滤波器系统对象,定点输入数据类型和代码生成属性中传递。

generatehdl(my_cascade,'inputdatatype',numerictype(1,16,15),......'名称''myfilter''目标语言''Verilog'......'generatehdltestbench''上'

使用级联滤波器的代码生成的限制

以下规则和限制适用于用于代码生成的级联过滤器:

  • 您可以为Cascades生成代码,这些代码组合以下过滤器类型:

    • 抽取器和/或单速率过滤器结构

    • 内插器和/或单速率过滤器结构

    不支持级联的代码生成,包括Deetimator和Interpoolator的级联。金宝app如果级联中金宝app包含不支持的过滤器结构或滤波器结构的组合,则代码生成返回错误。

  • 对于代码生成,只允许使用平面(单层)级联结构。不允许嵌套级联过滤器。

  • 默认情况下,生成的HDL代码从级联的阶段排除输入和输出寄存器,除非:

    • 第一阶段的输入和最终阶段的输出。

    • 内插器阶段的输入寄存器。

    要为每个阶段生成输出寄存器,请选择添加管道寄存器“生成HDL”对话框中的选项。使用此选项时,也可以根据过滤器结构添加内部管道寄存器。

  • 当一个级联滤波器被传递给fdhdltool., 这冷杉加法器风格选项已禁用。如果您需要在级联中的FIR滤波器进行树添加剂,请选择添加管道寄存器选项(因为管道需要树样式FIR添加剂)。

  • 除了级联滤波器本身的顶级代码之外,编码器还为级联的每个阶段生成单独的HDL代码文件。通过附加字符向量来识别过滤阶段代码文件'_阶段1''_stage2',......'_stagen'到过滤器名称。

该图显示了级联滤波器设计的“生成HDL”对话框选项的默认设置。