# 信号标签传播


您可以为信号命名并配置信号在 Sysblock 模型中传播信号名称,以跟踪通过一个或多个模块的信号。

为信号命名并对允许的模块的输出信号启用信号标签传播显示时:

  • 如果存在 Sysblock 可以传播的用户指定的信号名称,则传播的信号标签会将该名称包括在尖括号中(例如 <test>)。

  • 如果没有可传播的名称,Sysblock 将为该标签显示一对空的尖括号 (<>)。

例如,在下面的模型中,为 Subsystem 模块的输出信号配置了信号标记传播。传播的信号标签 (<test>) 基于 Constant 模块的上游输出信号的名称 (test)。

# 支持信号标签传播的模块

您可以在这些模块的输出端传播信号标签:

  • BusSelector - 传播的名称来自对应的 BusCreator 模块的输入。

  • From - 传播的名称来自对应的 Goto 模块的输入。

  • Inport - 传播的名称来自父级子系统的对应输入。为了支持信号标签传播,Inport 模块必须位于子系统中,而不是模型中。

  • Subsystem - 传播的名称来自对应 Outport 的输入。

# Sysblock 如何传播信号标签

# 一般信号标签传播的处理过程

通常,当您为模块(例如,Block)的输出信号启用信号标签传播后,Sysblock 将完成以下处理过程,以查找要传播的源信号名称:

  1. 检查输出信号连接到 Block 的模块,如有必要,继续检查上游模块,从最近的模块向最远的模块依次执行。

  2. 在遇到符合以下任一条件的模块时停止:

    • 支持信号标签传播并具有信号名称

    • 不支持信号标签传播

  3. 获取 Sysblock 停止时遇到的模块的输出信号的信号名称(如果有)。

  4. 当一个信号被传播到下游模块时,其输出信号上对应的标签应直接被命名为该信号的名称。

例如,在下面的模型中,假设您为 subSystem 模块的输出信号(即,连接outport1端口的信号)启用了信号标签传播。

子系统内部:

Sysblock 在该子系统内从 fromgoto 模块(支持信号标签传播但没有名称)往上游检查,然后继续往上游检查到 Constant 模块(不支持信号标签传播)。

Sysblock 使用 Constant 模块的输出信号的信号名称test。Subsystem 模块输出信号的传播的信号标签是<test>

如果 Constant 模块的输出信号没有信号名称,则传播的信号标签将是一对空的尖括号 (<>)。

假设您在 subSystem 模块中为 u 模块的输出信号启用了信号标签传播,并设置 from 模块的输出信号指定了信号名称 test-from,如下所示。

为 subSystem 模块输出信号传播的信号标签将更改为 <test-from>,因为这是 Sysblock 在信号标签传播处理过程中遇到的第一个具有名称的信号。

在下面的模型中,subSystem 模块输出信号的信号标签传播使用信号名称 bus1,这是 Bus Creator 模块的输出总线的名称。传播的信号标签不包含总线元素信号(ab)的名称。