首页> 中国专利> 一种用于分布式控制器光纤通信协议及其实现装置

一种用于分布式控制器光纤通信协议及其实现装置

摘要

本发明涉及一种用于分布式控制器光纤通信协议,M节点将指令帧信号写入M指令帧站队区,并向S1节点发出;S1节点将指令帧存入M指令帧站队区,并向下一个S节点转发指令帧,以此类推,S

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-28

    授权

    授权

  • 2015-05-27

    实质审查的生效 IPC(主分类):G06F13/38 申请日:20131030

    实质审查的生效

  • 2015-05-06

    公开

    公开

说明书

技术领域

本发明涉及一种用于分布式控制器光纤通信协议,特别是涉及一种飞行 控制系统中,作为执行机构应用的光纤通信协议。本发明还涉及该光纤通信 协议的实现装置。

背景技术

箭载飞行控制系统中,控制系统与伺服系统、测量系统、平台设备之间 主要应用MTL-STD-1553B总线进行通讯,作为第一代军用通讯总线技术, MTL-STD-1553B总线采用命令响应方式,由控制系统发出指令,目标子系统 响应指令后向控制系统返回消息。MTL-STD-1553B总线速率最高为1Mbps,总 线上节点最多为32个,采用1553B屏蔽电缆作为传输介质;随着航天产品对 数据传输的要求越来越高,电子设备数量多,测量数据量大,电磁环境复杂, 对重量限制要求苛刻,急需研制开发新一代航天数据总线产品。

FC(Fiber Channel),即光纤通道,是一种高速串行总线传输协议,单条 链路数据速率从100Mbps到10Gbps,支持多种上层应用协议映射,其中FC-AE 为光纤通道航空电子环境网络协议,在航空航电系统设计中已有采用,光纤 通道已成为国际公认的第二代军用总线协议发展趋势;FC-AE-1553是 MTL-STD-1553B在光纤通道航空电子环境的上层映射协议,方便在两种协议 之间平滑过度,其具备高速率、低延迟、低误码率的特性,支持三种拓扑结 构,点对点、仲裁环和交换式网络。点对点拓扑结构不能满足箭上产品多节 点通讯的需求;交换式网络拓扑结构需要专用的交换机设备,不适合箭上伺 服系统的特殊环境条件、节点较少和小型化设计等需求特征;环形拓扑结构 能够满足分布式控制产品多点通讯需求,不需要专用的交换机设备,通信速 率可达到2.5Gbit/s,节点数量达到127个,省去了大量的模拟量电缆,易 于实现产品的小型化、轻量化,因此采用分布式控制、环形拓扑结构的光纤 总线通信技术是箭上飞行控制系统和伺服系统发展的必然趋势。

在光纤通道仲裁环协议里,节点间的通讯延时无法确定,环上的节点只 有检测到总线处于空闲状态才能通过仲裁获得总线的使用权,从而与目的节 点建立双向连接,通讯过程中的非目的节点直接让数据通过,任一时刻,只 有一对节点使用总线,其它节点只能等到他们放弃总线使用权才能获得仲裁。

在飞控系统与伺服系统通讯过程中,伺服系统采用分布式控制,总线环 路上的各节点需在同一指令周期响应指令并向主节点返回测量信息,仲裁环 协议难以满足上述需求,需要设计一种适用于分布式控制系统的光纤通信协 议。

发明内容

本发明要解决的技术问题是提供一种满足航天飞行控制系统中作为执行 机构的伺服系统应用的二级总线协议,可以实现一个指令周期内所有节点接 收并执行指令,同时向控制系统返回测量数据,总线速率可达2.5Gbps,进 一步满足航天电子设备应用光纤通讯技术的发展需求的用于分布式控制器光 纤通信协议。

为解决上述技术问题,本发明一种用于分布式控制器光纤通信协议,

消息队列由S1、S2……Sn节点数据帧和M节点指令帧组成;

每个指令周期由M节点发起,M节点将各S节点信息形成指令帧信号写 入M指令帧站队区,并向S1节点发出;

S1节点检测到指令帧信号后,将指令帧存入M指令帧站队区,并向下一 个S节点转发指令帧,以此类推,Sn节点将指令帧发送给M节点并覆盖M指 令帧站队区;

对于S1节点,数据帧直接向下一节点传送;对于Sn(n≥2)节点,接收上 一节点数据帧和本节点数据帧,形成一个新的消息队列向下一节点传输;以 此类推,Sn节点的消息队列包含所有S节点的数据帧向M节点传输;

M节点检测到数据帧信号后,将数据帧写入消息队列的各节点数据帧站 队区,与之前接收并覆盖的指令帧形成一个完整的消息队列。

本发明还提供一种该光纤通信协议的实现装置,包括CPU读写接口、GTP 接收端口、GTP发送端口、消息队列检阅区、接收数据FIFO、发送数据FIFO、 CPU端口状态机、接收端口状态机、发送端口状态机、以及地址切换开关;

CPU读写接口:提供CPU双向数据接口,输入CPU中断信号,输出CPU 读写逻辑;

GTP接收端口:输入接收总线串行数据,输出并行接收数据1、GTP按收 控制逻辑;

GTP发送端口:接收并行发送数据2、GTP发送控制逻辑;输出发送总线 串行数据;

消息队列检阅区:输入CPU数据、CPU读写逻辑、并行接收数据2、装置 读写地址、逻辑;输出并行发送数据1;消息队列检阅区用于存取消息队列, 由S1、S2……Sn节点数据帧和M节点指令帧组成,各帧在队列中的位置约定统 一,对于M节点,使用整块消息队列检阅区,对于Sn节点,使用M指令帧站 队区和S1~Sn数据帧站队区;

接收数据FIFO:输入并行接收数据1、GTP接收控制逻辑、RXFIFO控制 逻辑;输出并行接收数据2;

发送数据FIFO:输入并行发送数据1、TXFIFO控制逻辑;输出并行发送 数据2、GTP发送控制逻辑;

CPU端口状态机:输入CPU读写逻辑,输出CPU写RAM完成信号;当检 测到CPU写RAM时,对数据字进行计数,当计数溢出时,产生CPU写RAM完 成信号;

对于M节点,CPU只向消息队列中写入指令帧,对于S节点,CPU只向消 息队列中写入数据帧;

接收端口状态机:输入GTP接收控制逻辑、读RAM完成信号、CPU写RAM 完成信号;输出CPU中断信号,接收数据写地址、逻辑,指令或数据写RAM 完成信号,输入输出RXFIFO控制逻辑;

对于M节点:有接收指令和接收数据两种大状态,接收指令完成后,不 产生CPU中断信号;接收数据完成后,产生CPU中断信号,通知DSP读取消 息队列中各子控制器的数据及返回指令;

对于S1节点:只有接收指令一种状态,接收指令完成后,产生CPU中断 信号,通知CPU读取指令,产生指令写RAM完成信号,通知发送端口状态机向 下一节点转发指令;

对于S2~Sn节点:有接收指令和接收数据两种大状态;接收指令完成后, 产生CPU中断信号,通知CPU读取指令,产生指令写RAM完成信号,通知发 送端口状态机向下一节点转发指令;接收数据完成后,如果检测到本节点CPU 写RAM信号有效,产生数据写RAM完成信号,通知发送端口状态机向下一节 点转发数据;

发送端口状态机:输入数据或指令写RAM完成信号;输出发送数据读地 址、逻辑,TXFIFO控制逻辑,读RAM完成信号;

对于M节点:只有发送指令一种大状态,GTP端口发送状态机将消息队 列检阅区中的指令帧写入TXFIFO,向接收端口状态机产生读RAM完成信号;

对于S1节点:有发送数据和转发指令两种大状态;所述发送数据只包括 本节点数据;当检测到接收端口状态机输出的数据或指令写RAM完成信号有 效时,将消息队列检阅区中的数据帧或指令帧写入TXFIFO,并产生读RAM完 成信号;

对于S2-Sn节点:有发送数据和转发指令两种大状态;所述发送数据包括 本节点数据和转发上一节点数据;当检测到接收端口状态机向输出的指令写 RAM完成信号后,将消息队列检阅区中的指令帧写入TXFIFO,并产生写RAM 完成信号;当接收上一节点数据帧完成,并检测到本节点CPU写数据完成, 将消息队列检阅区中的数据帧写入TXFIFO,并产生写RAM完成信号;

地址切换开关:输入数据或指令写RAM完成信号、读RAM完成信号、接 收数据写地址、逻辑、发送数据读地址、逻辑;输出装置读写地址、逻辑;

初始化时,装置读写地址、逻辑由接收端口状态机使用,当接收端口状 态机产生数据或指令写RAM完成信号时,装置读写地址、逻辑交给发送端口 状态机使用,当产生读RAM完成信号时,再将装置读写地址、逻辑交给接收 端口状态机,如此往复。

本发明通过消息队列的方式,实现一个指令周期内完成主控制器节点和 各从控制器节点的数据交互;分布式控制系统各节点之间的传输延迟可控, 总线利用率高,实时性强,便于控制多台伺服机构实时响应指令、执行动作。

本发明提供了通用处理器接口,可应用于基于DSP、ARM、SOC等架构设 计;

本发明定义了指令帧和数据帧两种帧类型,各节点的同步信息、状态信 息和校验信息均包含在其中;

本发明采用可配置缓存方式,不同节点处理的数据量不同,提高总线利 用率。

附图说明

图1为分布式控制器光纤通信拓扑结构图。

图2为光纤通信协议实现装置组成图。

图3为光纤通信协议消息队列组成图。

图4为CPU端口状态转移图。

图5为GTP端口接收状态转移图。

图6为GTP端口发送状态转移图。

图中:①为CPU双向数据,②为CPU读写逻辑,③为CPU中断信号,④为 CPU写RAM完成信号,⑤为接收总线串行数据,⑥为并行接收数据1,⑦为 GTP接收控制逻辑,⑧并行接收数据2,⑨为并行发送数据1,⑩为并行发送 数据2,为GTP发送控制逻辑,为发送总线串行数据,为RXFIFO控制 逻辑,为接收数据写地址、逻辑,为装置读写地址、逻辑,为发送数 据读地址、逻辑,为TXFIFO控制逻辑,为数据或指令写RAM完成信号, 为读RAM完成信号。

具体实施方式

下面结合附图和实施例对本发明作进一步详细的说明。

如附图1所示为分布式控制器光纤通信协议的载体,包括主控制器节点 M(简称M节点),和多个从控制器节点S1~Sn(简称S节点),通讯媒介可为 光纤但不局限于光纤介质,也可以为同轴电缆或双绞屏蔽线等可传输差分信 号的介质。

提出一种“队列检阅环”的环形拓扑协议,由M节点发出指令,各S节点 接收指令并向下一节点转发指令;各S节点响应指令后,S1节点将本节点数 据向S2节点传输,S2节点将S1节点数据和S2节点数据向S3节点传输,如此, 每个S节点(S2~Sn)接收上一节点数据并与本节点数据合并向下一个S节点传 输,由Sn节点将所有S节点的数据传给M节点。

就像运动会检阅仪式时,主席台为M节点,各参赛单位队列方阵为S节点, 跑道为传输介质。主席台发出指令,第1个单位的队列向跑道行进,行进至 第2个单位的站队区后,第2个单位的队列跟在第1个单位的队列后,形成 一个更大的队列继续前进,后面的单位依次加入,在所有单位的队列抵达主 席台时,按单位队列的站队区排列好由主席台进行检阅,故命名为“队列检 阅环”。

具体来说,本发明一种用于分布式控制器光纤通信协议,消息队列由S1、 S2……Sn节点数据帧和M节点指令帧组成;

每个指令周期由M节点发起,M节点将各S节点信息形成指令帧信号写 入M指令帧站队区,并向S1节点发出;

S1节点检测到指令帧信号后,将指令帧存入M指令帧站队区,并向下一 个S节点转发指令帧,以此类推,Sn节点将指令帧发送给M节点并覆盖M指 令帧站队区;

对于S1节点,数据帧直接向下一节点传送;对于Sn(n≥2)节点,接收上 一节点数据帧和本节点数据帧,形成一个新的消息队列向下一节点传输;以 此类推,Sn节点的消息队列包含所有S节点的数据帧向M节点传输;

M节点检测到数据帧信号后,将数据帧写入消息队列的各节点数据帧站 队区,与之前接收并覆盖的指令帧形成一个完整的消息队列。

如附图2所示,该光纤通信协议的实现装置包括:CPU读写接口、GTP接 收端口、GTP发送端口、消息队列检阅区、接收数据FIFO、发送数据FIFO、 CPU端口状态机、接收端口状态机、发送端口状态机、以及地址切换开关;

CPU读写接口:完成主、从控制器内部CPU(主处理器)与装置的信息交互, 提供CPU双向数据接口,输入CPU中断信号,输出CPU读写逻辑;

GTP(高速串行收发器)接收端口:输入接收总线串行数据,输出并行接 收数据1、GTP按收控制逻辑;

GTP发送端口:接收并行发送数据2、GTP发送控制逻辑,输出发送总线 串行数据;

消息队列检阅区(多口RAM):分配指令帧和数据帧站队区,存放数据帧 和指令帧,整理形成消息队列,输入CPU数据、CPU读写逻辑、并行接收数 据2、装置读写地址、逻辑,输出并行发送数据1;消息队列检阅区用于存取 消息队列,附图3为消息队列组成图,由S1、S2……Sn数据帧和1个M节点指 令帧组成,各帧在队列中的位置约定统一,各节点的数据帧和指令帧只能进 入各自的站队区。对于M节点,将会使用整块消息队列检阅区,对于Sn节点, 将会使用M指令帧站队区和S1~Sn数据帧站队区;

接收数据FIFO(先进先出数据缓存器)(RXFIFO):输入并行接收数据1、 GTP接收控制逻辑、RXFIFO控制逻辑,输出并行接收数据2;

发送数据FIFO(TXFIFO):输入并行发送数据1、TXFIFO控制逻辑,输出 并行发送数据2、GTP发送控制逻辑;

CPU端口状态机:输入CPU读写逻辑,输出CPU写RAM完成信号;状态转 移图如附图4所示,当检测到CPU写RAM时(对于M节点,CPU只向消息队 列中写入指令帧,对于S节点,CPU只向消息队列中写入数据帧),对数据字 进行计数,当计数溢出时,产生CPU写RAM完成信号;

接收端口状态机:输入GTP接收控制逻辑、读RAM完成信号、CPU写RAM 完成信号;输出CPU中断信号,接收数据写地址、逻辑,指令或数据写RAM 完成信号,输入输出RXFIFO控制逻辑。接收端口状态转移图,如附图5所示, 对于M节点:有接收指令和接收数据两种大状态,接收指令完成后,不产生 CPU中断信号;接收数据完成后,产生CPU中断信号,通知DSP读取消息队 列中各子控制器的数据及返回指令。对于S1节点:只有接收指令一种状态, 接收指令完成后,产生CPU中断信号,通知CPU读取指令,产生指令写RAM完 成信号,通知发送端口状态机向下一节点转发指令。对于S2~Sn节点:有接收 指令和接收数据两种大状态;接收指令完成后,产生CPU中断信号,通知CPU 读取指令,产生指令写RAM完成信号,通知发送端口状态机向下一节点转发 指令;接收数据完成后,不产生CPU中断信号,如果检测到本节点CPU写RAM 信号有效,产生数据写RAM完成信号,通知发送端口状态机向下一节点转发 数据。

发送端口状态机:输入写RAM完成信号,输出发送数据读地址、逻辑, TXFIFO控制逻辑,读RAM完成信号。发送端口状态转移图,如附图6所示: 对于M节点:只有发送指令一种大状态,GTP端口发送状态机将消息队列检 阅区中的指令帧写入TXFIFO,向接收端口状态机产生读RAM完成信号;对于 S1节点:有发送数据(只有本节点数据)和转发指令两种大状态;当检测到 接收端口状态机输出的数据或指令写RAM完成信号有效时,将消息队列检阅 区中的数据帧或指令帧写入TXFIFO,并产生读RAM完成信号;对于S2-Sn节 点:有发送数据(包括本节点数据和转发上一节点数据)和转发指令两种大 状态;当检测到接收端口状态机向输出的指令写RAM完成信号后,将消息队 列检阅区中的指令帧写入TXFIFO,并产生写RAM完成信号;当接收上一节点 数据帧完成,并检测到本节点CPU写数据完成,将消息队列检阅区中的数据 帧写入TXFIFO,并产生写RAM完成信号。

地址切换开关:输入数据或指令写RAM完成信号、读RAM完成信号、接 收数据写地址、逻辑、发送数据读地址、逻辑,输出装置读写地址、逻辑, 分配接收端口状态机和发送端口状态机的地址总线使用权。初始化时,装置 读写地址、逻辑由接收端口状态机使用,当接收端口状态机产生数据或指令 写RAM完成信号时,装置读写地址、逻辑交给发送端口状态机使用,当产生 读RAM完成信号时,再将装置读写地址、逻辑交给接收端口状态机,如此往 复。

图5中,IDEL1:初始化状态机;

S11:检测帧头序列,判断帧类型(数据或指令),配置基地址寄存器(此 帧数据头的存放地址),配置累加溢出寄存器,并置位GTP接收数据类型标志;

S12:使能RX_FIFO,将RX_FIFO中的数据从基地址开始依次写入消息队 列检阅区;

S13:禁止RX_FIFO;

S14:如果为M节点,产生CPU中断信号;如果为S2~Sn节点,检测CPU 写RAM完成信号是否有效;

S15:如果为M节点,不做处理;如果为S节点,则产生CPU中断信号;

S16:输出指令或数据写RAM完成信号;

条件11:GTP接收控制逻辑中帧起始信号有效;

条件12:帧头序列有效,并且RX_FIFO非空;

条件13:RX_FIFO写消息队列检阅区完成;

条件14:接收帧为数据帧;

条件15:接收帧为指令帧;

条件16:非S1节点且CPU写RAM完成信号有效,或为M节点;

条件17:无条件转移;

条件18:M节点或S1节点,CPU写RAM完成信号有效;

条件19:发送状态机模块中读RAM完成信号有效。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号