APP下载

时间触发总线技术研究与实现

2022-05-11王晨博

无线互联科技 2022年3期
关键词:派系时隙时钟

王晨博,孟 博,张 楠

(中航工业西安航空计算技术研究所,陕西 西安 710068)

1 时间触发总线架构

基于TTP总线的网络由TTP节点和双通道的TTP总线组成。典型的TTP架构如图1所示,称作一个集群,集群的主体是TTP节点。取决于系统架构和系统需求,集群上各节点的通信可以基于单通道(通道0或者通道1)或者冗余通道(通道0和通道1)建立[1]。

图1 典型TTP架构

TTP采用总线型架构,基于时分复用(TDMA)的通信调度策略,总线上各个节点按照预先定义的消息描述表(MEDL),基于全局时间基进行数据传输的调度。TTP控制器是时间触发体系的核心,其提供全局时间基触发TTP服务的执行、数据帧发送与接收操作等,并通过CNI实现主机与控制器之间的数据交换[2]。TTP协议定义了两类服务:通信服务和安全性服务,这两类服务确保了节点之间可靠的数据交换。

2 通信服务

通信服务确保单节点的故障可以被发现并且容忍,TTP总线可以在不降低服务质量的情况下继续执行。通信服务包括集群启动、节点间重整合、确认服务、时钟同步以及集群模式更改的处理。

2.1 集群启动/整合

节点控制器基于接收到的帧进行整合,若集群通信没有进行,节点发起一个冷启动操作[3]。

整合是一个节点达到与集群通信同步的过程。节点采用接收到的帧的控制器状态(c-state),并初始化自身的c-state,从而达到同步。整合过程何时结束和节点何时可以获得一个时隙取决于下述条件:

(1) 节点的发送时隙标记在配置字中;

(2) 主机生命标记正确的更新;

(3) 基于冷启动帧进行整合时,当主机生命标记无效时,如果这是节点的第一个发送时隙并且当前集群模式是启动模式时,节点也允许发送帧;

(4) 基于非冷启动帧整合时,如果整合计数条件满足,表示当最小数目的正确帧被接收时整合已经结束。

2.2 确认服务

确认服务处理关于发送节点发送帧的正确性的信息收集过程。发送节点从最多两个有效后继节点发送的帧当中获取确认信息。发送节点通过检查接收到的帧的c-state中成员矢量是否与确认算法定义的情景一致判断确认失败还是成功。c-state是状态变量的集合,状态变量包括全局时间、集群位置和成员关系状态,cstate长度为12个字节。每一个控制器在TDMA周期中的每个时隙中更新本地的c-state。

2.3 时钟同步

TTP总线提出了一种分布式的高精度时钟同步算法。通过多个授时节点同时发出授时帧对网络进行同步,避免了传统的集中式时钟同步技术中的授时端单节点故障问题;通过达到亚微秒的高精度同步过程,提高传输过程中帧到达的“准点率”,提高了系统通信的效率。TTP总线全局时间的基本参数包括:macrotick,microtick和precision。

TTP总线时钟同步操作按照下述3个阶段进行:

(1) 控制器计算每一个接收到的帧的实际到达时间,并根据预计的接收时间计算偏差;

(2) 控制器基于记录的偏移值,根据分布式时钟同步算法计算出一个修正期限;

(3) 控制器使用修正期限修正自身的时钟。

3 安全性服务

安全性服务确保任一故障节点的故障静默,防止分布式失效。安全性服务包含成员关系和派系检测算法等服务。

3.1 成员关系

节点成员关系服务确保所有活跃的节点在一个TDMA周期的延迟时间内调整其对每个节点操作状态的视图,节点控制器维护一个成员关系向量。成员关系向量共64位,每一位代表一个节点的状态。

控制器基于接收到的帧时隙状态信息对其他节点的操作状态“表决”。时隙状态值不是“correct”时,控制器在本地c-state中复位相应的发送节点的成员关系向量标记位。基于表决结果,各节点控制器在分配的时隙的PRP阶段更新时隙状态统计信息。

3.2 派系检测

派系被定义为基于一个一致的c-state整合的节点集。TTP控制器通过使用时隙状态统计表和派系检测算法解决派系问题,避免系统的非一致性错误,对于集群派系的问题在每个时隙的PSP阶段进行。

每个控制器在一个TDMA周期中计算一次自身是否在占多数的派系中,通过检查在TDMA周期中,当前控制器对于各时隙的判断中agreed slot是否比failed slot多来进行判断。如果不满足,表示节点检测到自身与大多数节点不一致。控制器上报派系错误信息,并停止操作。

4 TTP节点设计

TTP节点基本硬件组成包括FPGA电路、存储器电路、复位电路、时钟电路和电源电路,其原理框图如图2所示。

图2 TTP节点原理

TTP节点以FPGA电路为核心,采用两个收发控制器作为冗余的TTP总线通信物理层接口,同时为了防止电气损坏,使用隔离变压器进行电源隔离。TTP节点采用5 V供电,通过电源管理电路将输入电压转为模块所需的其他电压。

FPGA的PCI核使用PCI总线输入的时钟。节点上通过晶振产生10 MHz和16 MHz时钟,分别提供给FPGA中的功能电路使用[4]。

TTP节点逻辑设计主要包括PCI核、控制器、监护等部分。其中PCI核实现PCI总线Agent功能,控制器实现TTP状态机和协议。

5 功能验证

结合TTP节点设计需求,对其功能进行测试验证,搭建测试验证平台。测试验证平台包括TTP通信平台、监控节点、故障注入节点、PC机和示波器组成。TTP通信平台包含4块TTP节点。测试项目主要包括TTP总线同步测试、TDMA测试、基本通信测试和故障注入测试[5]。

经测试验证,TTP节点的功能性能均满足技术指标要求。

6 结语

本文从通过对时间触发总线技术的理解和研究,设计实现了一种符合SAE AS6003规范要求的TTP节点,并给出了该模块的试验测试方法。试验测试和工程应用结果表明,该模块各项指标均满足设计要求,符合协议标准。

猜你喜欢

派系时隙时钟
别样的“时钟”
古代的时钟
复用段单节点失效造成业务时隙错连处理
“派系撕裂校园”:暨南大学驱长风潮研究(1933—1934)
派系政治与农民上访的逻辑
一种高速通信系统动态时隙分配设计
学院派系
时隙宽度约束下网络零售配送时隙定价研究
民進黨派系新動向
时钟会开“花”