的离散冷杉滤波器(金宝app模型)(当用于标量或多通道输入数据时)和Biquad过滤器块参与子系统级的优化。要设置优化属性,右键单击子系统并打开高密度脂蛋白的属性对话框。
为了让这些块参与子系统级的优化,您必须离开块级体系结构设置为默认值,完全平行
.
当在基于帧的输入模式下使用离散FIR滤波器时,不能使用这些子系统优化。
这些筛选器块支持在筛选器中共享资源,并跨金宝app子系统中的多个块共享资源。当你指定SharingFactor,优化工具在HDL中生成一个过滤器实现,使用时间多路复用共享资源。要生成使用最小乘数的HDL实现,请设置SharingFactor到一个大于或等于乘数总数的数字。共享算法共享具有相同输入和输出数据类型的乘数。要启用块之间的共享,您可能需要自定义过滤器的内部数据类型。或者,您可以选择一个特定的系统时钟速率作为目标SharingFactor.
默认情况下,资源共享应用于乘数。要共享加法器,请选择下面的复选框资源共享在配置参数>HDL代码生成>全局设置>优化对话框。
有关更多信息,请参见资源共享(高密度脂蛋白编码器)和多通道滤波子系统的面积缩小的例子。
你也可以用aSharingFactor与多通道过滤器。看到滤波子系统的面积缩小.
流媒体指的是跨多个通道共享设计的原子部分。要生成多通道子系统的流HDL实现,请设置StreamingFactor到您的设计中的通道数量。
如果子系统包含一个过滤块,则为块级ChannelSharing选项和子系统级StreamingFactor选项导致类似的HDL实现。使用StreamingFactor当子系统包含多个滤波器块或附加的多通道逻辑时,可以参与优化。您必须设置块级别ChannelSharing来从
使用StreamingFactor在子系统级别。
看到流媒体(高密度脂蛋白编码器)和滤波子系统的面积缩小的例子。
您可以启用DistributedPipelining在子系统级别允许过滤器参与管道优化。优化工具对InputPipeline和OutputPipeline在子系统级别指定的管道阶段。优化工具还可以在以下区块级流水线阶段进行操作:
InputPipeline和OutputPipeline
MultiplierInputPipeline和MultiplierOutputPipeline
AddPipelineRegisters
优化工具不会在过滤器体系结构中移动设计延迟。看到分布式流水线(高密度脂蛋白编码器).
如果在中启用,过滤器块也会参与时钟速率流水线配置参数.该特性在默认情况下是启用的。看到时钟频率流水线(高密度脂蛋白编码器).
为了减少多通道滤波器和周围逻辑的HDL实现中的乘数,使用StreamingFactor高密度脂蛋白编码器™优化。
该模型包括一个双通道正弦信号源,用于生成HDL代码的滤波器子系统。
该分系统包含一个离散FIR滤波器块和一个常数乘法器。包含乘数是为了显示对子系统中所有符合条件的逻辑进行的优化。
滤波器有44个对称系数。在没有启用优化的情况下,生成的HDL代码利用了对称性。非优化的HDL实现使用46个乘法器:22个用于滤波器的每个通道,1个用于Product块的每个通道。
要启用多通道FIR滤波器子系统的流优化,右键单击该子系统并选择HDL代码>高密度脂蛋白块属性.
设置StreamingFactor2,因为本设计是双通道系统。
为了观察优化的效果,在配置参数>HDL代码生成中,选择生成资源利用率报告和生成优化报告.然后,要生成HDL代码,右键单击多通道FIR滤波器子系统并选择HDL代码>为子系统生成HDL.
应用流因素后,一个通道的逻辑实例化一次,并以原始模型的两倍速度运行。
在代码生成报告窗口中,单击高层资源报告.生成的HDL代码现在使用23个乘数,而非优化代码中使用46个乘数。滤波器核中的乘法器和后续的扩展在通道之间共享。
应用SharingFactor若要多通道过滤器,请设置SharingFactor23。
优化后的HDL现在只使用2个乘数。优化工具不共享不同大小的乘数。
在HDL实现的多滤波器设计中,为了减少乘法器的数量,使用SharingFactor高密度脂蛋白编码器™优化。
该模型包括一个正弦信号源,用于生成HDL代码的滤波器子系统。
该分系统包括一个离散FIR滤波器块和一个双四滤波器块。这个设计演示了优化工具如何在多个过滤块之间共享资源。
离散FIR滤波器块有43个对称系数。Biquad滤波器块有6个系数,其中两个是统一的。在没有启用优化的情况下,生成的HDL代码利用了对称和统一系数。子系统的非优化HDL实现使用27个乘数。
的流优化Multi-Filter子系统,右键单击该子系统并选择HDL代码>高密度脂蛋白块属性.
设置SharingFactor到27,将设计减少到一个乘数。优化工具试图与匹配的数据类型共享乘数。要将其减少为单个乘数,必须将筛选器块的内部数据类型设置为彼此匹配。
为了观察优化的效果,在配置参数>HDL代码生成中,选择生成资源利用率报告和生成优化报告.然后,要生成HDL代码,右键单击Multi-Filter子系统并选择HDL代码>为子系统生成HDL.
与SharingFactor应用后,子系统将速率向上采样27以共享所有系数的单个乘数。
在代码生成报告窗口中,单击高层资源报告.生成的HDL代码现在使用一个乘法器。