文件

资源共享

资源共享是一种区域优化,其中HDL编码器™识别多个功能等效的资源,并将它们替换为单一资源。数据在共享资源上进行时间多路复用,以执行相同的操作。

资源共享如何运作

您可以指定一个分享因子SF.对于子系统或一个MATLAB函数块。HDL编码器尝试识别一定数量的相同,可共同的资源N.取决于SF..代码生成器如何共享这些资源取决于N.SF.,而且过采样因子

默认情况下,过采样因子是1,资源共享通过超频因子超频共享资源(OCF.)取决于剩下的SF.N.

如果REM(SF,N)== 0 OCF = n;别的OCF =科幻小说;结尾

如果您指定了一个过采样因子大于1,您的设计在目标硬件上运行更快的时钟速率,因为默认情况下会启用时钟速率流水线。当您指定a时SharingFactor,资源共享优化尝试共享多达N个资源,并超出共享资源的一个因子:

超频系数= (block_rate÷dut_base_rate.)×过度采样

您可以使用验证模型来验证优化DUT的输出与原始DUT产生的结果是否为true。要了解有关验证模型的更多信息,请参阅生成的模型和验证模型

资源共享的好处和成本

资源共享可以大大减少芯片区域。例如,生成的代码可以使用一个乘法器来从原始模型执行几个相同配置的乘法器的操作。但是,资源共享具有以下成本:

  • 使用更多多路复用器,可以使用更多寄存器。

  • 减少了分布式流水线或重度的机会,因为HDL编码器不会跨时钟速率边界管道。

  • 将目标硬件的时钟速率乘以共享因子。

不同块中的可共享资源

如果指定了一个非零共享因子MATLAB函数块,HDL编码器识别和共享功能等效的乘数。

如果指定了一个非零共享因子子系统,HDL编码器标识和共享以下类型块的功能等效实例:

  • 获得

  • 产品

  • Multiply-Add

  • 添加有两个输入

  • 原子子系统

  • MATLAB函数

代码生成器共享功能等同MATLAB函数具有固定点类型的块。当您使用浮点类型或使用MATLAB Datapath公司架构MATLAB函数具有定点类型的块,HDL编码器对待MATLAB函数常规Block子系统.然后,您可以在功能上共享功能等同的资源MATLAB函数块。要了解更多,请看使用MATLAB DataPath架构与MATLAB功能块共享

指定资源共享

从UI指定资源共享:

  • 在里面应用选项卡上,选择高密度脂蛋白编码器.的HDL代码选项卡出现了。选择子系统、模型引用或MATLAB函数块然后单击HDL块属性.在里面SharingFactor字段,输入可共享资源的数量。

  • 右键单击子系统,模型引用或MATLAB函数块并选择HDL代码>HDL块属性.在里面SharingFactor字段,输入可共享资源的数量。

在命令行,设置SharingFactor使用hdlset_param.,如下例所示。

modelname =.'sfir_fixed'DUT ='sfir_fixed / symmetric_fir';open_system modelname hdlset_param (dut,“SharingFactor”,4);

资源共享的限制

HDL编码器不支持用于资源共享的模型引金宝app用。

资源共享的块要求

共享的块要求如下:

  • 单一税率。

  • 没有无限的采样率。DUT不得包含块采样时间调成.例如,常数块必须有采样时间设置为-1。为全部设置样本时间至-1常数块在你的DUT,使用以下MATLAB代码:

    黑色= find_system (dut,'blocktype'“不变”);为了set_param(blks{I}, / /设置blks的长度“SampleTime”' 1 ');结尾

  • 没有总线输入或输出。

  • 没有可调掩码参数。要共享这些块,请在“蒙版编辑器”中清除可调复选框。

  • 如果块在反馈循环中,则至少一个单位延迟延迟块必须连接到每个输出端口。

要了解资源共享的块特定设置和要求,请参阅:

资源共享报告

要查看报告中的资源共享信息,在为每个子系统或模型引用生成代码之前,请启用优化报告。要启用此报告,请在HDL代码选项卡上,选择报告选项,然后选择生成优化报告

生成优化报告时,在流和共享部分,您将看到资源共享优化的效果。如果资源共享失败,报告中会显示导致资源共享失败的诊断消息和违规块。

如果资源共享成功,则该报告显示SharingFactor以及包含共享资源的块组的表。表包含:

  • 组ID:一组类似Simulink的唯一ID金宝app®共享资源的块,如添加块或产品块。

  • 资源类型:共享组中的Simulink金宝app块类型。

  • I / O字:在共享组中的块中的输入和输出的单词长度。

  • 小组大小:共享组中相同类型的块数。

  • 块名称:属于共享组的块的名称。

  • 颜色传奇:突出显示共享组中所有块的颜色。

要查看Simulink模型中的共享资源以及生成的模型,请单击“金宝app突出显示共享资源和诊断链接。

相关例子

更多关于