一种新型1553B备份总线控制器设计与实现

发布者:bin0990最新更新时间:2013-10-29 来源: 现代电子技术 关键字:1553B总线  总线控制器  备份总线控制器  远程终端  监控终端 手机看文章 扫描二维码
随时随地手机看文章
0 引言
   
1553B总线是在20世纪70年代末由美国提出的飞机内部电子系统互联的标准,具有灵活性和高可靠性,广泛应用于三代机中。经过多年的发展和型号应用,1553B软硬件设计技术已经相当成熟,但随着系统性能的提升,系统对1553B总线的性能要求也越来越高,应用模式也发生较大的变化,如何让1553B总线适应新的系统性能要求及新的应用模式是当前研究的热点。
    BC是1553B总线消息传输的组织者和发起者,即总线上所有的消息传输都由BC通过发送1553B命令来实现,RT响应BC发送的命令并执行操作。1553B总线是双冗余的传输线,具有A、B两个互为备份的通道,增强了系统的可靠性。但是,由于总线上只能存在一个BC,一旦BC出现故障,则整个总线将瘫痪。工程实践中通过增加BBC的方法来提升系统的可靠性,殷杰波等人提出了利用RT模式作为BBC的设计方法,该RT只接收一条BC的特定消息,通过查询该消息的时间标志寄存器判断在周期内是否收到了该消息,以此判断BC是否工作正常。此设计方法简单有效,一旦BC故障,BBC可以切换为BC模式,进行总线管理与维护。杨卫军等人提出了利用MT模式作为BBC的设计方法;以上设计中,BBC仅用于监控BC的工作状态,功能单一。新的应用需求中,BBC需要具备三个功能:监控BC的工作状态、与其他子系统通信、同步获取BC与其他子系统之间的应用数据传输,完成系统应用的同步解算,传统RT或者MT模式作为BBC的设计方法无法满足系统的要求,本文依据某1553B协议芯片,针对新的应用模式,给出了一种BBC工作于RTMT模式的设计方法。

1 1553B应用模式
   
1553B采用总线型拓扑结构,节点按照功能可以划分为3类:BC、RT及MT,新的应用模式下,接口控制文件定义了应用相关的所有RT-BC及BC-RT的消息,如图1所示,A系统为主,B系统为备份,A系统主机通过BC负责消息的组织与发送,B系统主机作为备份具有三个功能:


    (1)通过BBC监控A系统的运行状态,一旦A系统故障,B系统复位BBC并将其切换为BC,控制整个网络的正常运行;
    (2)BBC要能够完成与BC及其他RT的数据通信;
    (3)B系统主机需要实时获取ICD文件中定义的所有应用相关的消息,用于同步解算。例如,ICD文件中MSG1为一条RT-BC的消息,当BC组织此消息时,A系统主机通过BC获取到该消息,与此同时,B系统也要通过BBC获取到该消息。
    在以往设计模式中,如果BBC工作在RT模式,要满足功能(3),必须根据原ICD文件中定义的RT-BC及BC-RT的消息增加相同数量的RT-BBC及BC-BBC的消息,会导致消息量倍增,无法保证系统的实时性,甚至超出1553B协议可承载的消息数量;如果BBC工作于MT模式,则无法满足功能(2)。针对新的应用模式,RT功能可以满足条件(1),(2),MT功能则可以满足条件(1),(3),若BBC工作于RTMT模式,某一时刻仅能工作于其中一种工作模式,即作RT时,完成RT功能,MT功能停止,作MT时,有选择的监控总线上的通信数据,RT功能停止,RTMT功能根据总线上消息的类型完成自动切换,如果总线上的消息是与BBC的RT地址相关,则工作于RT模式,如果总线上的消息和BBC的RT地址无关,则工作于MT模式,则可以在不增加消息通信量的条件下满足新的应用模式。依据备份总线控制器工作于RTMT模式的思想,本文基于1553B协议芯片给出了BBC工作于RTMT模式的设计与实现方法,其应用模式如图1所示。

2 设计与实现
   
1553B协议芯片内部功能强大,接口灵活、便于控制,可设置为BC、RT、MT及RTMT模式,在需要主机较小干预的情况下,基于RT地址、T/R位及子地址进行选择性消息监控。MT模式包含一个命令栈和一个数据栈,位于共享RAM的固定位置,且与BC或RT的命令栈独立,选择消息监控模式下,协议芯片接收到一个有效命令,根据“选择监控表”(RAM中固定位置)决定是否使能该消息,如果指定的BIT位在“选择监控表”内是0,命令将不被使能,忽略该消息,如果BIT位为1,命令被使能,进入监控命令栈并将数据内容存放到相应的监控数据栈中。
    RTMT模式使得协议芯片除了处理和自己RT地址相关的消息外,其余时间用来有选择的监控总线上的数据,其通过一个中断状态队列实现RT模式与MT模式的判断,如图2所示。


    该队列按中断产生的次序记录中断条件和中断事件。中断状态队列为64 B长度,可存储32条监控消息中断。中断状态队列的指针存储在中断向量队列指针寄存器(寄存器地址0x1F)中,该寄存器必须由主机初始化,并由主机累加,中断向量队列指针寄存器始终指向下一个中断的存储地址。每个中断事件产生,协议芯片将2 B写入中断队列,第一个字为中断向量,表明哪一类事件导致了中断。中断事件被分为2类:消息中断事件和非消息中断事件,第二个字为消息描述块指针,指向消息描述块的首地址。
    基于以上1553B协议芯片的特点,RTMT功能实现主要包括两部分:相关资源初始化及中断服务处理程序的设计。[page]

2. 1 协议芯片初始化
  
初始化协议芯片由主机完成,主要包括协议芯片固定地址初始化及寄存器初始化,表1给出了在共享RAM为64 KB的硬件环境下,RTMT的资源分配表,其中标明“固定”的表示该地址为1553B协议芯片单独使用,且地址的值不能变更。


2.1. 1 固定地址初始化
    RTMT模式中需要初始化的固定地址包括:RT命令栈指针A、监控命令栈指针A、监控数据栈指针A、方式代码选择中断表、方式代码数据、RT查询表A、忙位查询表、选择监控查询表、命令非法表。固定地址初始化步骤及方法如下:双端口RAM地址0000H-00FFH初始化为0000H,作为RT命令站空间;双端口RAM地址0100H初始化为0000H,用于设置RT命令栈指针首地址为0000H;双端口RAM地址0102H初始化为0400H,用于设置MT命令栈指针A起始地址为0400H;双端口RAM地址0103H初始化为0800H,用于设置MT数据栈指针A起始地址为0800H;设置方式代码选择中断表;双端口RAM地址0110H~013FH设置为0000H,用于初始化方式代码数据值为0000H;双端口RAM地址0240H~0247H设置为0000H,清除RT的所有子地址忙位;双端口RAM地址000H~03FFH设置为FFFFH,设置命令非法表;初始化RT查找表数据指针空间,接收缓冲区地址从0x6000开始,发送缓冲区地址从0x8000开始;每个数据块长度为40 B,开始的一个字作为消息块标志字,广播接收消息与非广播接收消息共用同一个缓冲区,具体初始化流程如下:
   
   
2.1.2 寄存器初始化
   
通过配置1553B协议芯片的寄存器,设置协议芯片处于不同的工作模式,RTMT工作模式下的协议芯片寄存器初始化方法及步骤如下:向启动/复位寄存器写入值0001H,复位ACE协议芯片;配置寄存器3写入8000H,使ACE协议芯片工作于增强模式;中断掩码寄存器1设置为0201 H,使能握手失败中断及消息结束中断;配置寄存器1设置为9880H,使能BUSY,SSFLAG,RTFLAG RT/BM;配置寄存器2设置为8498H,使能电平中断,256 B边界禁止,RT子地址发送/接收采用单缓冲模式;配置寄存器3设置为8D5DH,使能方式命令的相关操作,设置RT命令栈为256 B,MT命令栈为1 024 B,MT数据栈为2 048 B;配置寄存器4设置为C008H,外部BIT字使能,使能RT地址软件锁存方式;将经过奇校验RT地址写入配置寄存器5,作为备份总线控制器的RT地址;配置寄存器6设置为6172H,设置时钟频率为20 MHz,使能软件配置RT地址,使能协议芯片中断队列操作;将中断向量队列指针寄存器初始化为1000H,表明中断向量队列是从1000H开始的64 B空间;将数据栈指针寄存器初始化为080 0H,用于设置MT数据栈指针的起始地址为0800H;读取配置寄存器1的值或上0400H后写入配置寄存器1,用于清除RT忙位,使能协议芯片进行通信。

[page]

2.2 中断服务处理
   
共享RAM中固定地址及ACE协议芯片寄存器初始化完成后,协议芯片即工作于RTMT模式,当协议芯片接收到有效命令,将触发消息结束中断,中断服务程序完成对该条消息的处理。首先,用全局变量CurrQueuePtr记录尚未处理的中断队列指针,其初始值为中断队列的起始地址0x1000;中断向量队列指针寄存器始终存放的是下一次中断待写入的中断队列指针,读取中断向量队列指针寄存器(1F)内下一次待写入的中断队列指针NextQueuePtr,并进行如下处理:
   
    其中Rt_Do_Msg()函数主要完成RT功能下消息接收或发送后的相关处理,如新数据标志的置位与清除等,方式命令的处理等。Mt_Do_Msg()函数主要完成MT功能,将数据从较小的MT数据栈(0x800~0x9FF)根据监控过滤位,将需要监控的消息按照特定的格式重新组织并存储到较大的MT数据缓冲区(0xA000~0xF000)内,以备用户使用。

3 应用实例及分析
   
某项目采用1553B总线作为主干总线,总线上共有RT 13个,RT地址分别为1~13,1个BC,1个BBC,工作于RTMT模式下,RT地址为18。系统应用的消息类型及条数见表2,系统应用要求BBC应能够与BC同时获取BC-RT及RT-BC之间的应用数据通信内容,用于同步解算。根据应用要求,若采用BBC工作于RT模式,排列出的总线消息类型及消息条数见表3,根据应用需求,共有BC-RT消息24条,为了满足BBC同时获取BC-RT消息的需求,必须增加24条BC到BBC的消息,同样,共有RT-BC的消息65条,为了满足BBC同时获取RT-BC消息的需求,必须增加65条RT-BBC的消息,BBC需排列接收消息为BC-BBC及RT-BBC的消息综合,共计92条,远远大于BBC作为RT模式,仅能接收消息30条消息的限制,且总线传输存在延迟,导致BBC不能与BC同步获取BC-RT与RT-BC的消息,因此,BBC工作于RT模式无法满足应用需求。若采用BBC工作于MT模式,则无法满足BC-BBC、BBC-BC及BBC-RT之间的数据传输要求。


    采用新的设计方法后,BBC工作于RTMT模式,作为RT18可以满足BBC-BC、BC-BBC、BBC-RT及RT-BBC之间的消息通信,同时作为MT可以有选择的监控BC-RT及RT-BC的消息,无需额外增加BC-BBC及RT-BBC的消息,即可让BBC与BC同步获取相应应用数据内容,在不增加消息量的前提下,满足了系统应用的需求。

4 结论
   
本文首先介绍了当前1553B方向BBC的最新应用模式,并基于1553B协议芯片给出了工作于RTMT模式下BBC的设计与实现方法,并结合工程实例,从实际应用需求出发,分析了RTMT模式与以往RT或MT模式下的应用差别,在RT模式或者MT模式均不能满足系统要求的前提下,采用RT MT模式很好的解决了系统对于BBC新的应用需求,且无需增加任何总线负载,具有较强的工程实践意义。

关键字:1553B总线  总线控制器  备份总线控制器  远程终端  监控终端 引用地址:一种新型1553B备份总线控制器设计与实现

上一篇:在线签名识别系统的数据采集和USB通信
下一篇:USB端口找到新居,落户嵌入式系统

推荐阅读最新更新时间:2024-05-02 22:49

SM总线控制器是什么
好多的朋友经常问我:SM总线控制器是什么? 我总是回答:你的主板芯片组驱动没有装好吧。 SMBus是System Management Bus的缩写,是1995年由Intel提出的,应用于移动PC和桌面PC系统中的低速率通讯。它主要是希望通过一条廉价并且功能强大的总线(由两条线组成),来控制主板上的设备并收集相应的信息。SMBus为系统和电源管理这样的任务提供了一条控制总线,使用SMBus的系统,设备之间发送和接收消息都是通过SMBus,而不是使用单独的控制线,这样可以节省设备的管脚数。 
[嵌入式]
电动汽车快速充电机监控终端的设计
  0 引言   随着国家对新能源技术的大力扶持,电动汽车逐渐成为国家在新能源汽车产业大力发展的对象,而电动汽车充电站、快速充电机是电动汽车大规模化后不可或缺的服务基础设施之一。大量分布于各住宅小区、停车场的电动汽车用非车载智能快速充电机,实现高效、安全、智能化的管理必定成为主流。针对目前快速充电机群实行无人值守的运行情况,这就要求快速充电机须具有较高的可靠性和自动化程度,功能更加完善,可远程维护等功能。   这样,使得分布式、模块化、智能化成为快速充电机的发展方向,而高性能、低成本的充电机监控终端是其中的关键技术。为管理区域多台充电机的资源优化利用与管理的智能化,监控终端与Internet网的交互成为一种必然。   1 监
[单片机]
电动汽车快速充电机<font color='red'>监控</font><font color='red'>终端</font>的设计
GPS车辆监控调度系统中高速数据传终端的设计
摘要:介绍一款应用于GPS车辆监控调度的高速GPS数传终端的设计开发。该终端半双工通信,GMSK数据调制解调,传输数据率9600bps,同时能够传输话音。使用此数传终端的车辆监控调度系统可实时监控车辆超过1200辆/分钟。 关键词:全球定位系统(GPS) 高斯滤波最小频移键控(GMSK) 无线通信 GPS车辆监控调度系统中,需要将车辆的定位数据通过无线数据通信平台回传到监控调度中心。常用的无线数据通信平台可以分为两大类:公网和专网。公网指的是GPRS、CDPD、GSM等以用无线数据网,专网则是指为调度系统专门建立的无线通信网。采用公网的GPS系统具有投资小、覆盖面大、系统维护量小等优点,但它的实时性比较差,不能进行GPS差分定
[网络通信]
基于AVR单片机的船载中小型信息监控终端的设计方案
目前,随着信息产业的迅猛发展,各类船舶亟需配备更多质优价廉的中小型信息监控终端,用于监控气象状况、获取导航信息以便保证航行安全。以ARM、MIPS等领衔的32位处理器在信息监控终端应用中,显示出极大优势,但是一般以32位处理器构建的嵌入式系统往往需要配置外部FLASH和SDRAM,这样就使得开发和维护整个系统的成本较高,本设计采用高性能低功耗的AVR单片机和LCD液晶模块来设计信息监控终端,具有价格低廉、性能稳定、显示清晰、人机界面良好等优点,能够满足船舶对中小型信息监控终端的需求。 1 总体设计 信息监控终端主要由显示控制板、键盘、通信接口和液晶显示模块构成,具有数据收发、数据显示、人机交互和屏幕亮度调整等功能,其组
[单片机]
基于AVR单片机的船载中小型信息<font color='red'>监控</font><font color='red'>终端</font>的设计方案
1553B总线在嵌入式系统中的应用
作者Email: cai_yang@etang.com 1 介绍 MIL-STD-1553是为数据总线定义的军方标准。这种数据总线被用来为各种的系统之间的数据和信息的交换提供媒介,它类似“局域网或者LAN”。 1950年至60年代中,航空电子学是简单、独立的系统,航空、通信、飞行控制和显示器由模拟系统构成;信号主要由模拟电压、同-异步信号和接触式开关构成。 MIL-STD-1553总线的传输速度为每秒1M比特,字的长度为20个比特,数据有效长度为16个比特,信息量最大长度为32个字,传输方式为半双工方式,传输协议为命令/响应方式,故障容错有典型的双冗余方式,第二条总线处于热备份状态;信息格式有BC到RT、RT
[嵌入式]
基于BU-61580的MIL-STD-1553B远程终端设计
摘要: 给出了基于BU-61580的MIL-STD-1553B远程终端设计思路和方法。 关键词: BU-61580;MIL-STD-1553B;RT;MSC1210Y5 MIL-STD-1553B总线 MIL-STD-1553B总线(以下简称1553B总线)是美国定义的一种军用串行总线标准,国内对应为GJB 289A-97,全称《数字式时分制指令/响应型多路传输数据总线》,它规定了数字式时分制指令/响应型多路传输数据总线及其接口电子设备的技术要求,同时规定了多路传输数据总线的工作原理和总线上的信息流及要采用的电气和功能格式。 1553B总线网络由终端、子系统和总线传输介质组成,结构如图1所示。终端是使数据总线与
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved