嵌入式控制系统行为规范解析
1. 分布式定时多任务概述
分布式定时多任务(Distributed Timed Multitasking,DTM)是一种计算模型,它是在 COMDES(一个基于组件的硬实时嵌入式控制系统框架)的背景下发展起来的。在这个框架中,嵌入式系统被视为一个由活动对象(即参与者)组成的网络,这些参与者通过封装了过程变量(如速度、压力、温度等)的带标签状态消息(信号)相互通信。
1.1 参与者结构
参与者由一个信号处理单元(Signal Processing Unit,SPU)和 I/O 锁存器组成,I/O 锁存器又分别由输入和输出信号驱动器构成。输入锁存器用于接收传入信号,并将其分解为局部变量,供 SPU 处理;输出锁存器则用于将 SPU 产生的局部变量组合成传出信号,并广播给潜在的接收者。物理 I/O 信号的处理方式类似,但锁存器会在精确指定的时间瞬间与环境交换物理信号。
1.2 控制参与者任务映射
控制参与者被映射到一个实时任务,该任务由三部分组成:任务输入、任务主体和任务输出,分别对应输入锁存器、SPU 和输出锁存器。任务主体在动态优先级驱动的调度环境中执行,由触发参与者执行的事件(如周期性定时事件、外部中断或消息到达事件)释放。在执行过程中,它可能会被同一节点中运行的其他更高优先级任务抢占,从而遭受 I/O 抖动。
1.3 任务输入输出执行
任务输入和输出是相对较短的代码片段,其执行时间比参与者任务的执行时间小几个数量级。它们以逻辑零时间原子执行,与任务主体分离(分阶段任务执行)。具体来说,任务输入在参与者任务释放时执行,任务输出在任务截止日期到达时执行。只要任务