一种基于fifo和arinc659总线的双余度计算机周期控制系统及方法
【技术领域】
[0001]本发明属于飞机航空机载电子系统设计领域,涉及解决双余度机载计算机的任务周期的时间确定性及同步工作的紧密耦合度。
【背景技术】
[0002]采用同步运行的机载余度计算机,通道之间的信息交互通过专用通道交叉数据传输链路进行(以下简称CCDL)。系统软件在规定的时间周期内运行,此周期称为系统周期(或帧),余度计算机的同步分为两级:一级是系统周期同步,另一级为任务同步。系统周期同步指在每一个系统周期开始,所有余度通道使用同步电路进行同步操作,确保每一系统周期开始于同一时间参考点;任务同步是确保各余度通道在同一时刻执行同一任务,任务同步同样使用同步电路进行同步。使用同步电路各余度通道的时间异步度<50ys,是一种松耦合同步策略。具体执行过程如图1所示。
[0003]每个系统周期中完成信号采集与处理、控制律计算与指令输出、监控和余度管理。余度通道资源(总线、模拟量、离散量)通过专用处理器进行管理,通道主处理器同专用处理器通过共享存储(双口 RAM)完成信息交互。专用处理器负责总线数据的收发,模拟量离散量的采集输出,在专用处理器中运行子周期任务,系统任务周期是子任务周期的指数级。各余度通道对资源信息的获取通过访问双口RAM进行,各资源信息的获取通过专用处理器的子任务周期采集数据,余度通道的系统任务执行同子任务周期存在异步度,导致每一系统周期中的各任务执行时间都存在差异。进而导致系统周期中各任务执行中的时间不确定性。
【发明内容】
[0004]为了解决现有的机载余度计算机中每一系统周期的各任务执行时间都存在差异的技术问题,本发明提供一种基于FIFO和ARINC659总线的双余度计算机周期控制系统及方法,简化任务周期,增强了周期任务的时间确定性,同时实现了双余度计算机通道间的紧耦合同步工作方式。
[0005]本发明的技术解决方案:
[0006]一种基于FIFO和ARINC659总线的双余度计算机周期控制系统,其特殊之处在于:包括命令通道、监控通道和故障逻辑处理电路CFL,命令通道与监控通道结构相同,所述命令通道包括CPU、外部接口和多种FIFO,所述外部接口通过对应种类的FIFO与CPU连接,所述命令通道中的CPU和监控通道中的CPU通过ARINC659总线连接。
[0007]外部接口包括AIN、DIN、A0UT、D0UT和SYS-BUS,AIN接口 与FIF0/REG连接,DIN与FIF0/REG 连接,AOUT 与 FIFO 连接,DOUT 与 FIF0/REG 连接,SYS-BUS 与 FIFO 连接。
[0008]一种基于FIFO和ARINC659总线的双余度计算机周期控制方法,包括以下步骤:
[0009]I)建立总线任务表:根据CPU要执行的周期任务,建立总线任务表;
[0010]2)初始化:[0011 ] ARINC659总线初始化并加载总线任务表;
[0012]将外部接口工作模式配置成具备FIFO缓存的工作模式;
[0013]3)ARINC659总线根据总线任务表控制命令通道、监控通道中CPU启动后,CPU开始执行周期任务;同时ARINC659总线根据CPU执行的周期任务执行同步或延时指令;
[0014]4) CI3U准备数据:外部接口将已经采集的数据放入对应的FIFO中,CI3U从对应的FIFO中直接读取数据;
[0015]5)CPU接收到总线任务表中交叉传输任务,CPU将准备的数据写入ARINC659总线数据存储区;
[0016]6 )CPU继续执行周期任务,命令通道与监控通道CPU之间通过ARINC659同步机制完成CPU之间的同步;
[0017]7)CPU接收到总线任务表中交叉传输任务,CPU从ARINC659总线数据存储区中读取交叉传输数据;
[0018]8)CPU执行数据处理、计算以及故障判别任务,将最终的外部接口输出数据写入对应的FIFO中;
[0019]9)CPU继续执行周期任务,命令通道与监控通道CPU之间通过ARINC659同步机制完成CPU之间的同步;
[0020]10)CPU接收到总线任务表中任务结束标志;执行步骤3。
[0021 ]外部接口 包括AIN、DIN、A0UT、D0UT和SYS-BUS,AIN接口 与FIF0/REG连接,DIN与FIF0/REG 连接,AOUT 与 FIFO 连接,DOUT 与 FIF0/REG 连接,SYS-BUS 与 FIFO 连接。
[0022]本发明的优点是:
[0023]1、本发明采用ARINC659总线取代传统同步及通道交叉传输架构,采用基于ARINC659总线表的时间触发同步工作方式,总线提供同步算法以确保节点间异步度< 20μs,是一种具有紧耦合系统结构。
[0024]2.本发明余度计算机各通道硬件上利用FIFO作为系统任务获取资源的载体,优化了任务周期的任务时间划分,使得系统周期任务执行具有强时间确定性,释放了主处理器的工作载荷。
【附图说明】
[0025]图1是现有同步及CCDL电路和专用处理器的系统周期和任务周期划分说明图;
[0026]图2是本发明系统结构图;
[0027]图3是本发明系统周期和任务周期划分说明图。
【具体实施方式】
[0028]下面对本发明做进一步详细说明。
[0029]如图2所示,一种基于FIFO和ARINC659总线的双余度计算机周期控制系统,包括命令通道、监控通道和故障逻辑处理电路CFL,命令通道与监控通道结构相同,命令通道包括CPU、外部接口和多种FIFO,外部接口通过对应种类的FIFO与CPU连接,所述命令通道中的CPU和监控通道中的CPU通过ARINC659总线连接。
[0030]外部接口包括AIN、DIN、A0UT、D0UT和SYS-BUS,AIN接口 与FIF0/REG连接,DIN与FIFO/REG连接,AOUT与FIFO连接,DOUT与FIFO/REG连接,SYS-BUS与FIFO连接。命令通道与监控通道CPU之间通过ARINC659总线机制完成同步,CPU对所有数据的获取都是访问存储器操作(FIFO或ARINC659_RAM),释放了CPU的载荷,让CPU专注于数据的处理和计算上。
[0031]自动驾驶仪计算机(以下简称AFCC),采用双余度容错计算机架构。通道之间的同步和交叉传输采用ARINC659总线实现。ARINC659总线其高可靠性和强实时性确保了交叉传输的实时可靠。AFCC中各余度通道将系统周期任务同ARINC659总线命令表相结合,总线命令表是ARINC659总线执行的时间序列,总线上两个通道节点按照命令表所规定