主要内容

HDL代码生成的系统对象

高密度脂蛋白编码器™既金宝app支持预定义和用户定义的系统对象代码生成。

为什么要使用系统对象吗?

系统对象提供一个设计优势,因为:

  • 你可以节省时间在设计和测试通过使用现有的系统对象™组件。

  • 你可以设计和定制系统对象在多个设计重用。

  • 你可以定义你的算法的系统对象,和重用在一个MATLAB设计的多个实例。

    这个成语不能用于MATLAB函数的状态。例如,如果算法状态,需要使用持久变量,函数不能多次实例化设计。相反,您需要为每个实例复制和重命名的功能。

  • HDL代码生成系统对象模块化和更具可读性。

预定义的系统对象

预定义的系统对象用MATLAB可用®、DSP系统工具箱™和通信工具箱支持™HDL代码生成。金宝app列表,请参阅预定义的系统对象支持HDL代码生成金宝app

用户定义的系统对象

您可以创建用户定义的系统对象HDL代码生成。例如,看到的为用户定义的系统对象生成代码

HDL代码生成的局限性系统对象

以下限制适用于HDL代码生成系统对象:

  • 你的设计可以调用系统对象只有一次。

  • 你不能调用对象在一个嵌套的条件语句,如一个嵌套循环,如果声明中,或开关声明。

  • 你不能调用对象在一个条件语句包含一个矩阵索引操作。

  • 一个系统对象必须声明持久如果状态。

    系统对象的状态,当它有一个可调私人或公共属性,或属性DiscreteState属性。

  • 您可以使用dsp.Delay系统对象只有在前馈延时建模。

  • 不支持枚举。金宝app

  • 不支持全局变量。金宝app

金宝app支持方法

为预定义的系统对象调用对象本身是支持HDL代码生成,但没有其他对象支持功能。金宝app

为用户定义的系统对象,要么一步方法,或输出更新HDL代码生成方法,支持。金宝app

额外的限制为预定义的系统对象

预定义的系统对象不支持从在HDL金宝app代码生成MATLAB系统块。

为用户定义的额外的限制系统对象

除了限制系统对象以下限制适用于用户定义的系统对象HDL代码生成:

  • setupImplresetImpl方法,如果属性或变量赋值,值必须是常数。

  • 如果你的设计使用输出更新方法,它可以调用每一个方法只有一次/系统对象。

  • 初始和重置属性的值必须在编译时常量。

  • 用户定义的系统对象不得公共属性。

  • 内具有多个输出的系统对象不能被称为一个条件语句。

系统对象示例HDL代码生成

学习如何使用系统对象HDL代码生成、查看MATLAB设计下面的例子: