8.6.9 预定交通状态机
端口门控制列表(8.6.8.4)中门操作的执行由三个状态机控制: a)循环定时器状态机(8.6.9.1); b) 列表执行状态机 (8.6.9.2); c) 列表配置状态机 (8.6.9.3)。每个状态机的一个实例为每个支持调度流量增强的端口实例化。
Cycle Timer 状态机启动门控列表的执行,并确保为端口定义的门控循环时间保持不变。 List Execute 状态机按顺序执行门控制列表中的门操作,并在每个操作之间建立适当的时间延迟。 List Config 状态机管理更新当前活动计划的过程,在执行更新过程时中断其他两个状态机的操作,并在安装新计划后重新启动它们。状态机符号在附件 E 中规定。状态机的概述,显示它们的关系和它们使用的变量,可以在图 8-13 中看到。
Notation:变量既显示在初始化它们的机器内,也显示在用于传递信息的机器之间。在后一种情况下,从一台机器运行到另一台机器的箭头样式提供了如何使用变量的概述:
目标机器未更改此变量,该变量在同一端口的状态机之间进行通信。
由源机器设置(或清除),由目标机器清除(或设置),在同一端口的机器之间进行通信。
8.6.9.1 Cycle Timer 状态机 Cycle Timer 状态机应实现图 8-14 中的状态图以及 8.6.9.1.1 和 8.6.9.4 中的相关定义所规定的功能。
8.6.9.1.1 SetCycleStartTime() SetCycleStartTime() 过程确定下一个门控制列表执行周期开始的时间。该过程根据 CurrentTime (8.6.9.4.10)、OperBaseTime (8.6.9.4.18)、OperCycleTime (8.6.9.4.20) 的值将 CycleStartTime 变量 (8.6.9.4.12) 设置为开始时间, OperCycleTimeExtension (8.6.9.4.21)、ConfigChangeTime (8.6.9.4.9) 和 ConfigPending (8.6.9.4.8),按照以下规则: