电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 接口/总线/驱动 > 详细信息
接口/总线/驱动:1553B总线控制器异步通讯仿真软件设计
来源:   时间: 2007-5-25 16:10:33    

摘要:详细介绍了1553B总线控制器实现异步通讯软件设计方案。

关键词:1533B总线 总线控制器 同步通讯 异步通讯 ISBC协议

1553B是一种时分制指令/响应式多路传输数据总线,因其高可靠性和实时性广泛应用在航空电子设备中,目前在舰船系统中也有广泛应用。总线上可以挂接一个总线控制器(BC),若干(不超过31个)用来连接子系统和数据总线进行数据通信的远程终端(RT),一般还可以挂接
一个总线监视器(MT),用于监听各个节点的通信状态。

总线控制器是在数据总线上被指定执行启动信息传输任务的终端。1553B总线上消息传输的过程是:总线控制器向某一终端发布一个接收/发送指令,终端在给定的响应时间范围内发回一个状态字并执行消息的接收/发送。

在1553B数据总线上,消息是按时间逐次进行传输的,总线上BC与RT间有10种可能的通信模式[1]。大多消息的处理按固定的顺序、周期和相位出现。这类消息称为周期消息,其传输过程叫同步通讯。对这类消息可以按静态的时间表进行,周期时间最小的消息排在一个小帧中(小周期),周期时间最大按小周期2的幂次的调和构成一个主帧(大周期),每个大周期由若干个小周期组成,其余各周期同样按照2的幂次的调和排入消息表,具体的算法详见文献[2]。多数的总线控制器系统软件都只实现了周期消息的传输,即同步通讯。但在实际应用的总线通讯中,有些消息是由系统中随机突发事件激活或由其它事件的请求所引起。这类消息称非周期消息,相应的传输称异步通讯。异步通讯是在有服务请求的情况下插入同步通讯中的,具有很高的实时性和重要性,因此,能够根据用户的需求,在同步通讯的同时实现非周期消息的异步通讯具有非常实际的意义。

1 总线控制器异步通讯处理方案

总线控制器(BC)是总线上的重要组成。总线上所有消息的传输都由BC来激励和控制,是总线进行通讯的开关。为了处理非周期消息,在总线上必须对BC原有的静态总线控制协议进行改进,改进后的协议称为ISBC,它的特点是:

·当消息被更新后才进行传输,其工作机理为更新检测传输(UPD&T);

·消息传输周期是变化的。一个周期消息完成后立即开始新的周期。对任何相关子系统来说,对更新性消息而言,传输周期是异步的。

这一协议的应用降低了通信系统的负载和平均延迟时间,大大改善了子系统的性能。

实现更新数据传输机制(ISBC)的方法有两种:异步服务请求方式和BC定时查询方式。异步服务请求方式是当同步通讯段中的某一周期消息的状态字的服务请求位因异步的服务而被置1时必需插入异步通讯。BC定时查询方式是总线控制器BC以某一预定频率向RT发送方式指令0x1000(发送矢量字)。被查询的RT若有非周期消息,就将矢量字置位,通知BC组织非周期消息的传输。

异步请求方式无查询开销,但它对非周期消息响应不确定,必须在请求RT获得总线使用权时BC才组织传输非周期消息。BC定时查询方式较前者有很强的确定性,它每个小周期对各个终端查询一次,可以保证非周期消息的分辨率,虽然有查询开销,但由于采用UDP&T方式,开销并不多。另外由于它的确定性,系统设计时可确切地对系统进行性能评价,便于系统设计。由于在实时系统中主要考虑实时性问题,因此本软件采用BC定时查询方式。

2 异步通信软件的仿真测试环境

仿真软件的开发基于特定的硬件和软件配置环境。如图1所示。

在整个测试环境中,本软件用来组织整个系统各个子系统间消息的传输,并响应子系统的非周期消息传输请求,实现异步通讯。计算机仿真终端必须由一块多路数据总线接口卡连接到总线上,以进行数据通讯。本软件的开发选用美国DDC公司的IDEA多路数据总线接口卡,Win98操作系统为计算机仿真平台。

IDEA接口卡本身提供了一个RTL(运行时库)函数库,为上层仿真软件的开发提供了与底层硬件驱动相关的特定功能接口函数(API),驱动总线接口卡与总线进行数据通讯。为了给用户提供友好的界面,本仿真软件使用VC++语言进行设计开发。

仿真软件除了要组织消息的异步通讯,还要求对链入网络的各个终端进行监视,判断各个RT故障情况,将其链入或剔除网络的通信过程,以提高网络的数据传输效率,并实时显示节点状态便于管理员及时发现和排除故障。同时在实际通讯中,为了协调各个终端的通讯,设计了周期性的带数据字的同步消息,每个周期向各个RT广播,通知各个RT做好准备,并在特定终端的异步消息传输结束后通知该RT。设计中周期消息的传输周期分别为2s、1s、50ms(周期时间为设计值,可根据用户要求改变),故设定周期性消息的传输大周期为2s,并将其分成40个小周期(每周期为50ms)。每一小周期1553B命令的配置图如图2所示。

3 异步通讯软件的结构

考虑以上功能的实现和VC++语言本身的特点,本软件在界面和功能的实现上采用模块化的设计思想,由设置文件建立模块(M1-1)和仿真功能实现模块(M1-2)两个主模块组成,各主模块根据需要包含相应的功能子模块(模块的命名方式:M层次-模块号)。设置文件建立模块(M1-1)为用户提供输入界面,用户可以方便地定义系统所使用的终端地址、要传输的消息内容和数据以及周期消息传输的消息表,对不同的用户有很大的适应性。仿真功能实现模块(M1-2)根据M1-1提供的数据定时组织周期消息的传输,并查询异步消息的传输请求,及时响应异步消息请求并组织传输,每个大周期定时向故障节点发送查询消息,以判断相应RT的状态并刷新实时显示各节点状态。系统模块数据流如图3所示(设该软件为0级模块,即M0-仿真软件)。

设置文件建立模块主要为用户提供一个友好的输入界面,用户输入的数据主要为仿真功能实现模块提供输入。仿真功能实现模块从软件中取出用户在设置文件模块中定义的传输消息所必需的数据,组织消息传输。根据不同功能的实现,它所包含的子模块主要为:IDEA卡的初始化和周期消息传输(M2-1)、异步通讯实现模块(M2-2)、RT故障检测(M2-3)。

由于IDEA卡在驱动上提供了应用程序接口函数API,因此在操作IDEA卡时只需调用相应的API,而不需直接驱动IDEA卡。在驱动IDEA接口卡进行数据传输前首先要初始化数据接口卡,通过调用相应的API,进行卡的自检,并将用户定义的消息内容和消息表写入IDEA卡的存储区。组织周期消息传输时,为节省总线的开销,在每个大周期结束前向网络连接的终端发送查询状态的消息,判断该节点是否可以正常通讯,将正常通讯的终端设置为活动终端,并在组织消息表时进行过滤,只组织关于活动终端的消息。图4给出了仿真软件在仿真平台中的位置及其结构。

3.1 异步通讯实现模块M2-2

本软件的重点就是非周期消息的组织传输,即异步通讯的实现。周期传输的消息多数时间是固定不变的,因此每个周期都传输相同的消息实际加重了总线的负载,为此本软件中大多数消息都为异步消息,对终端进行查询。当消息变化时请求发送的终端设置相应的矢量字,总线控制器则根据收到的矢量字发送相应的消息。这样大大节省了总线的开销,提高了效率。本软件采用BC定时查询方式实现异步通讯。

仿真软件所仿真的BC每个小周期(50ms)内向各个活动终端发送方式指令-发送矢量字,询问该终端是否有异步通讯请求,被询问终端向BC返回一个矢量字(0~31)。若某一终端返回矢量字0,则表示该终端无异步通讯请求,BC继续查询下一活动终端;若该终端返回的矢量字非零,则表示该终端有异步通讯请求,BC必须立即组织该终端请求的异步通讯。

异步通讯是根据查询返回的矢量字组织的,不同的矢量字(1~31)对应不同的消息内容和数目,每个矢量字所对应的非周期消息数目和内容由用户在设置文件模块中自由定义。为了便于在同步通讯中插入异步通讯的程序实现,定义一个数组队列。在仿真开始前遍历用户在消息定义中输入的异步消息,将消息号加入对应的矢量字的数组中,并将该计数器加1。

在对IDEA卡实现异步通讯即非周期消息的传输时,根据IDEA卡提供的API,采用使IDEA卡产生中断的方法,设置向各个终端查询矢量字的消息传输结束后产生中断,在IDEA卡的中断处理例程中组织异步通讯。如果返回的矢量字非零,则该终端有异步传输请求,取出相应矢量字的第一条异步消息,插入消息表中传输,并将该矢量字的消息数减1;同样为异步消息设置传输结束后中断,在中断处理程序中继续判断消息数目,循环至该适量字对应的异步消息传输完毕,继续查询下一终端,传输周期消息。程序流程图如图5所示。

3.2 RT故障检测模块

由于总线所连接的各个终端正常运行的时间很长,出故障的概率较小。为节省总线开销并及时捕获故障节点,在每个大周期(即40个小周期)结束前向每个终端查询一次状态。若有节点已经启动/修复,则立即清除该节点的故障标志,重排周期消息表,添加与该终端相关的可传输消息;若发现某终端故障标志被设置,同样重排消息表并将相关消息删除。为了保证消息的正确传输,当某条消息传输出错时定义消息的两次重发,当消息在该总线和另一条余度总线上重发失败后,将该消息视为出错,同时将相应的终端RT设置故障标志。程序实现控制流如图6所示。

3.3 软件设计的容错处理

1553B总线主要应用在航空电子即空中运动平台中,舰船系统也有应用。应用环境都比较恶劣,受到的干扰较多,且工作时间长。1553B本身采用了一定的措施以保证数据传输的正确性,如它采用双余度总线A和B(见图3),消息在其中一条总线上传输,若此总线发生错误,则消息也可以在另一条总线上传输。本软件利用1553B这个特点,为每条消息设置中断。在中断例程中,对传输出错的消息在此总线和另一条总线上进行重传两次的重发处理,从而排除因偶然的外界因素影响而出现的消息传输错误。

另外,软件中需用户定义的内容多根据1553B规定的有效性采用直接选择式,防止用户的输入错误;对需用户输入数据都有相应的有效性判断,若输入有误,产生错误警告,提示用户重新输入。

本软件已应用于某舰船系统中,组织各子系统消息传输,仿真测试各子系统。在应用中可以发现,总线传输的效率是应用中必须考虑和提高的一个问题,查询矢量字方式的异步消息传输可以提高总线利用的效率,是减轻总线负载的有效解决方案。

参考文献

1 罗志强.航空电子综合化系统.北京:北京航空航天大学出版社,1990

2 陈 彩.多路数据总线通信传输软件生成工具的研究.北京航空航天大学硕士论文,1995

3 飞机内部时分制指令/响应式多路传输数据总线.美国军用标准,1978

4 BUS-69035 and BUS-69135 Software Manual IDEA CARD RUN TIME LIBRARY for Windows 95/98 and Windows NT. Data Device Corp,1999

5 岳丽华纪金龙黄刘生. 软件技术基础. 合肥:中国科学技术大学出版社,1994

相关信息
发表评论
打印本页 关闭本页
基于改进型谐波检测方法的并联型有源滤波器的闭环控制
    摘 要:介绍了一种基于改进型谐波检测方法的并联型有源滤波器的闭环控制方案。该改进型检测方法用积分、延时和增益环节代替传统ip,iq检测方式中的低通滤波器,检测延时可减少到1/6个电源周期,同时这种方法可以推广到单相、三相四线电路和三相不平衡负载的场合中。采用三角载波方法进行电流闭环跟踪,主电路器件开关频率固定且补偿电流准确跟踪指令电流。基于能量平衡原理并借助检测环节...
>>详细内容
镍镉/镍氢电池的原理及充电方法
    镍镉/镍氢电池的发展  1899年,WaldmarJungner在开口型镍镉电池中,首先使用了镍极板,几乎与此同时,ThomasEdison发明了用于电动车的镍铁电池。遗憾的是,由于当时这些碱性蓄电池的极板材料比其它蓄电池的村料贵得多,因此实际应用受到了极大的限制。  后来,Jungner的镍镉电池经过几次重要改进,性能明显改善。其中最重要的改进是在1932年,科学家在镍电池中开始使用了活性物质...
>>详细内容
新型双端正激式开关电源的研究及开发
    摘 要:提出了一种新型的双端正激式开关电源设计方案,有效地避免了上下桥臂易于出现的直通短路问题,使开关电源的可靠性大为提高。而且其输入电压可以很高,输出直流电源容量大、组数多,尤其适用于具有高压直流侧的大功率电力电子系统。同时还提出了一种独特的磁通维持控制设计方案,很好地解决了双端正激式DC/DC变换器普遍存在的磁通维持阶段不理想的问题,特别适合于直流输入...
>>详细内容
车距语言提醒器 (二)
    本例介绍的车距语言提醒器,安装在机动车的尾部,它能在后方车辆与本车的车距过近时,及时发出语言提醒声,提醒后方车辆的驾驶员注意保持车距,同时也告知本车驾驶员注意后方车辆。在倒车时,若后方有人或障碍物,则该提醒器能提醒驾驶员和车后之人注意倒车安全。  电路工作原理  该车距语言提醒器电路由电源电路、红外线发射器,红外线接收器和语音报警电路组成,如图6-135所示...
>>详细内容
安森美与Melexis共同开拓汽车电源应用方案的LIN和CAN技术
    以便为汽车行业提供更好的服务及扩大先进线性收发器的采购选择,安森美半导体公司和Melexis公司宣布将联合推销先进的器件,并计划分享两家公司各自开发产品的知识产权。  安森美半导体和Melexis将利用安森美半导体良好的分销通道和汽车行业广泛的客户关系,联合促销LIN(区域性互连网络)和CAN(控制器区域网络)收发器产品。 Melexis将继续推销其LIN和CAN收发器产品线,为汽车行业...
>>详细内容
有源功率因数校正技术在开关电源中的应用研究
    摘要:提高开关电源的功率因数已经成为国内电源厂商的当务之急。文中设计了一种采用功率因数校正专用芯片MC33262的宽电压输入范围、固定升压输出的150W的AC/DC变换器,详尽地分析和讨论了有源功率因数校正(APFC)控制技术原理、APFC硬件电路结构。实验结果表明文中所设计的带APFC的AC/DC变换器在宽广的输入电压范围(95~250V)下能够正常工作,各项性能指标均符合要求。   关键词:...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com