比较模型组件的能力
在您使用特定类型的模型组件实现系统的一部分之前,请考虑该组件类型是否满足您的建模需求。
提示
要根据高级指南和用例确定要考虑的组件类型,请参见在模型组件类型中进行选择.
组件的考虑 | 建模需求 |
---|---|
开发过程 |
|
性能需求 |
|
特性 |
|
请注意
关于代码生成的注意事项,请参见:
子系统(金宝app仿真软件编码器)
为模型参考层次结构生成代码(金宝app仿真软件编码器)
快速原型部署的设计模型(金宝app仿真软件编码器)
将嵌入式系统架构映射到Simulink建模环境金宝app(嵌入式编码)
开发过程
建模的要求 | 子系统 | 相关子系统 | 子系统的引用 | 模型引用 |
---|---|---|---|---|
单独的文件 | 不支持金宝app 将子系统保存在与其父子系统相同的文件中。 要创建或更改子系统,必须编辑父文件,这可能导致文件争用和合并问题。 |
金宝app支持 将链接块的父库块保存在单独的文件中。 使用单独的文件有助于避免文件争用。 |
金宝app支持 将引用的子系统保存在单独的文件中。 使用单独的文件有助于避免文件争用。 |
金宝app支持 将引用的模型保存在单独的文件中。 使用单独的文件有助于避免文件争用。 |
组件重用 | 不支持金宝app 当您可以复制一个子系统以在模型中重用它时,这些副本是相互独立的。 |
金宝app支持 您可以在多个模型中多次链接到相同的父库块,而无需创建副本。 管理库链接会增加一些开销,比如管理损坏的、禁用的或参数化的链接。 |
金宝app支持 您可以在多个模型中多次引用相同的子系统,而无需创建副本。 |
金宝app支持 您可以在多个模型中多次引用相同的模型,而无需创建副本。看到模型重用. |
共享数据 | 金宝app支持 通过在组件外部定义数据,可以在实例之间共享数据。例如,通过使用公共父子系统中的数据存储。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 通过在模型内创建数据存储,您可以在引用模型的实例之间共享数据。看到在引用模型实例之间共享数据. |
特定于编辑 | 金宝app支持 子系统副本彼此独立。 |
金宝app支持 编辑父库块时,更改应用于库文件并传播到链接到该库块的所有块。 若要编辑块的实例,可以禁用库链接。 当父库块的写访问受到限制时,不能禁用库链接。 |
不支持金宝app 当您编辑引用子系统的实例时,所做的更改将应用于子系统文件并传播到引用子系统的所有其他实例。 |
不支持金宝app 当您编辑引用模型的实例时,更改应用于模型文件并传播到引用模型的所有其他实例。 您可以为引用的模型指定特定于实例的参数值。有关更多信息,请参见参数化可重用引用模型的实例. |
变体 | 金宝app支持 向a中添加子系统变量不同的子系统或变体模型块。 有关更多信息,请参见定义、配置和激活变体子系统块中的变体选择. |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 将模型变量添加到不同的子系统或变体模型块。 有关更多信息,请参见定义、配置和激活变体子系统块中的变体选择. |
版本控制和配置管理 | 不支持金宝app 您不能直接在源代码控制系统中放置子系统。 要减少文件争用并为每个子系统使用单独的版本控制,请使用子系统引用。 |
金宝app支持 您可以将库文件放在源代码控制系统中。 要为每个库块提供单独的版本控制,请使用库中的子系统引用和模型引用。当您将这些块从库拖到模型中时,它们会引用子系统文件或模型文件。 转发表允许您将旧的库块映射到新版本的库块。 |
金宝app支持 您可以在源代码控制系统中放置子系统文件。 |
金宝app支持 您可以在源代码控制系统中放置模型文件。 |
知识产权保护 | 不支持金宝app 应该使用模型引用。 |
不支持金宝app 与子系统相同的行为。 |
不支持金宝app 与子系统相同的行为。 |
金宝app支持 受保护的模型掩盖了模型内容,这在分发模型时很有用。 创建受保护的模型需要金宝app®编码器™许可证。有关更多信息,请参见保护模型以隐藏内容(金宝app仿真软件编码器). 使用受保护的模型可以不需要一个金宝app仿真软件编码器许可证。有关更多信息,请参见从第三方引用受保护的模型. |
单元测试 | 金宝app支持 子系统依赖于它们在模型中的上下文。如果子系统的上下文发生了变化,例如输入信号的数据类型,则必须更新相关的测试集。 对于非原子的子系统,由于虚拟边界,测试工具可能使用不同的块执行顺序。 有关支持编写、管理和执行系统的金宝app、基于模拟的子系统测试的工具,请参见创建测试装置并选择属性(金宝app仿真软件测试). 要度量模型组件测试的彻底程度,请参见模型覆盖(金宝app仿真软件覆盖). |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 您可以通过将其模拟为顶级模型来独立地测试引用模型以隔离行为。 您可以在MATLAB中使用数据定义的测试工具®测试向量和直接覆盖收集。 有关支持编写、管理和执行系统的金宝app、基于模拟的子系统测试的工具,请参见创建测试装置并选择属性(金宝app仿真软件测试). 要度量模型组件测试的彻底程度,请参见模型覆盖(金宝app仿真软件覆盖). |
性能需求
建模的要求 | 子系统 | 相关子系统 | 子系统的引用 | 模型引用 |
---|---|---|---|---|
增量模型加载 | 不支持金宝app 加载模型将加载保存在模型中的所有子系统内容。 |
金宝app支持 金宝app在编辑、更新图表或模拟模型期间,Simulink在所需的点增量加载库。 |
金宝app支持 金宝app在编辑、更新图表或模拟模型期间,Simulink在所需的点增量地加载引用的子系统。 |
金宝app支持 金宝app在编辑、更新图表或模拟模型期间,Simulink在所需的点增量加载引用模型。 |
构建工件重用 | 不支持金宝app 构建工件,例如模拟目标,不是为子系统生成的。 |
不支持金宝app 与子系统相同的行为。 |
不支持金宝app 与子系统相同的行为。 |
金宝app支持 您可以使用Simulink缓存文件共享和重用构建构件,例如模拟目标。金宝app有关更多信息,请参见共享Simu金宝applink缓存文件以实现更快的仿真. |
减少大模型的内存使用 | 不支持金宝app 子系统不会减少模拟和代码生成的内存使用。 |
不支持金宝app 链接的子系统不会减少模拟和代码生成的内存使用。 金宝appSimulink在块更新期间复制库块实例。 |
不支持金宝app 子系统引用不会减少模拟和代码生成的内存使用。 金宝appSimulink在块更新期间复制子系统引用实例。 |
金宝app支持 在加速模式中引用的模型减少了模拟和代码生成的内存使用,因为Simulink增量地加载它们的编译版本。金宝app |
人工代数环消去 | 金宝app支持 非原子的子系统避免人工代数循环。 方法,可以尝试消除人工代数循环子系统块参数尽量减少代数循环的出现. |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 您可以尝试通过启用来消除人工代数循环配置参数>模型参考>尽量减少代数循环的出现. |
特性
建模的要求 | 子系统 | 相关子系统 | 子系统的引用 | 模型引用 |
---|---|---|---|---|
兼容配置参数设置 | 金宝app支持 子系统使用包含它们的模型的配置参数设置。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 父模型及其引用模型的配置参数设置通常是不同的。有关兼容性信息,请参见为模型层次结构设置配置参数. |
接口信号特性规范 | 金宝app支持 您可以在子系统接口上指定信号属性。 对于未指定的信号属性,子系统将从它们的上下文继承信号属性。信号属性的传播可能导致Simulink使用您没有预料到的信号属性。金宝app |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 您必须在引用的模型接口上指定大多数信号属性。 引用模型与上下文无关,具有定义的边界,因此它们不继承大多数信号属性。 当被引用模型与采样时间无关时,被引用模型可以继承离散的采样时间。 |
接口物理连接 | 金宝app支持 您可以在子系统接口上指定物理连接。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
不支持金宝app 物理连接必须完全包含在引用的模型中。它们不能跨越模型接口。 |
总线规范 | 金宝app支持 你可以使用 子系统不需要使用 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 你可以使用 的模型引用不需要使用 |
状态初始化 | 金宝app支持 您可以初始化子系统的状态。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 您可以使用结构格式或结构随时间格式从顶层模型初始化状态。 |
条件执行 | 金宝app支持 子系统支持条件执行。金宝app有关更多信息,请参见有条件执行的子系统概述. |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 引用模型支持有条件执行。金宝app有关更多信息,请参见有条件地执行参考模型. |
基于事件的行为 | 金宝app支持 子系统支持基于事件的行金宝app为。有关更多信息,请参见使用初始化、重新初始化、重置和终止函数. |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 引用模型支持基于事件的行为。金宝app有关更多信息,请参见使用初始化、重新初始化、重置和终止函数. |
独立的功能 | 金宝app支持 你可以在子系统中定义独立的函数。有关更多信息,请参见金宝appSimulink功能概述. |
金宝app支持 与子系统相同的行为。 |
金宝app支持 与子系统相同的行为。 |
金宝app支持 您可以在引用模型中定义独立的函数。有关更多信息,请参见导出功能模型概述. |