当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于DM642的实时多协议转换器设计

摘要:为了解决虚拟试验系统中具有不同总线类型的各实物子系统互联的实时性问题,设计了一种多协议转换器。按协议高低优先级分配软硬件资源,硬件设计采用DM642+FPGA的结构,使用FPGA实时匹配高优先级协议,并对DM642分类返回不同中断信息;软件设计时,按地址分块存储协议以提高的协议的查找效率,并根据DSP/BIOS中各类线程的特点,合理分配任务并分类触发不同任务,以加快数据处理速度并保证高优先级协议实时性。
关键词:多协议转换器;实时性;DM642;DSP/BIOS

0 引言
    在虚拟试验系统中,需要将不同总线类型和不同传输协议的各实物子系统进行互联,实物设备子系统常采用1553B,ARINC429,RS 232等总线,协议转换的实时性对整个虚拟试验系统试验结果的真实性具有重要的影响,因此设计了基于DM642的实时多协议转换器
    协议转换方法有过程控制级转换和现场设备级实现。OPC(OLE for Process Control)为最常用控制级转换方法,所有的工作全部在上位机中由软件完成,简单方便,但总线系统中节点间的通信较慢,实时性较差。采用现场设备级转换方法的协议,如Profibus,DeviceNet等,需专门开发软硬件,但可以实现差异较大协议总线间的转换,可以满足实时性要求。曾翠荣等采用现场设备级转换方法,设计出通用报文格式和地址分配方法,简单明了,但不同总线协议间的转换必须借助于上位机和网络,仅满足传输延时小于20 ms。本文借鉴现场设备级转换方法,设计了一种高实时多协议的转换器。设计中,采用C6000系列高速DSP,将协议分为高低优先级,采用FPGA实时识别高优先级协议,按地址块存储协议描述信息,使用了DSP/BIOS提供的不同类型线程,并采用触发不同消息的方法跳转线程,有效地保证了实时性。

1 协议传输格式及描述方法
    虚拟试验系统中不同总线上传输的数据流通常按如图1所示的方式传输,一帧数据由帧头、数据长度、数据体、帧尾、数据校验等组成,帧头标志不同协议,帧尾或帧长标志该帧数据流的长度,帧头和帧尾可以是1个、2个或者4个数据字,数据体由多个数据字组成。但协议以数据元素作为基本单位进行编解码,数据元素由一个或多个数据字组成,有具体的物理含义,可以表示一个具体的物理量,也可以按位表示多个不同的工作状态。协议解码时,先根据帧头识别出协议类型,然后根据数据长度或帧尾提取出数据体,再按协议提取出数据元素,将数据元素乘以或加上特定系数转换为具体物理意义数据,或提取出每一状态位;编码过程为解码的逆过程。


    为便于协议的识别、编解码,建立由数据帧、数据元素、数据位三级描述结构体组成的协议描述表,各级协议描述结构体所描述的信息如图2所示。

[!--empirenews.page--]

2 硬件设计
    本系统采用如图3所示的DM642+FPGA的设计方式,实现了双通道RS 232总线、双通道ARINC429,单通道双冗余1553B总线以及LAN总线的通信。DM642为TI公司的C6000系列高速DSP,其主频最高可达720 MHz,数据处理能力达4 800 MIPS,其收发通道独立的EMAC和MDIO可以很好的支持10 Mb/s和100 Mb/s以太网。DM642还扩展32 MB SDRAM和8 MB FLASH,用于缓存数据和存储协议。FPGA选择Altera公司的EP3C55F4 84,其LE单元、储存单元、可用I/O均比较丰富。DM642实现以太网接口,控制系统并完成协议的编解码。FPGA中的总线单元实现RS 232等总线的物理层收发,总线管理单元协调DM642与各总线单元间的通信。采用专业芯片实现各总线的电气转换。


    总线管理单元管理各总线,并协调各总线与DM642的通信。为防止总线冲突,总线管理单元中记录DM642及RS 232等总线单元的工作状态。1553B总线与RS 232总线和ARINC429总线不同,其收发是相关的,无论其收发数据时,总线管理单元都视其被占用。当DM642处理高优先级协议时,总线管理单元将对DM642屏蔽低优先级协议产生的中断,直至DM642完成相应数据处理。对为了防止总线被“锁死”,总线管理单元对超过一定时长处于忙状态而未被使用的总线复位,并对DM642产生总线异常中断。


    每个总线单元都采用如图4所示的结构,“总线收发”实现相应总线物理层收发。在总线单元中实现8个帧头识别单元和一个帧尾识别单元,实时匹配和提取协议。帧头识别单元记录有高优先级协议的帧头、帧尾、帧长等信息,DM642在识别出低优先级协议后,将该协议的帧尾、帧长等信息写入帧尾识别单元。无论是DM642还是任一帧头帧尾识别单元协议匹配成功后,帧头帧尾识别管理单元都将使其它帧头帧尾识别单元处于非工作状态,在该帧头帧尾识别单元根据帧尾或帧长提取完协议后,其它帧头帧尾识别单元将再次使能。帧头帧尾识别管理单元在识别出协议和完成协议提取时,将向总线管理单元产生不同中断。总线发送FIFO由非空变为空,也产生发送完成中断。
[!--empirenews.page--]
3 软件设计
3.1 协议存储、加载方法
    为了使上电复位后无需重新加载协议,将协议描述表存储于FLASH中,FLASH的分配方法的存储空间分配方法如图5所示。


    8 MB存储空间的前128 KB存储空间用于存储DSP程序,剩余的空间划分为252个32 KB大小的数据块,每个数据块用于存储一条协议的所有信息;每个32 KB大小数据块在划分为512个64 B大小的次级数据块,第1个次级数据块用于存储数据帧描述表,后511个次级数据块存储数据元素的相关信息;64 B存储空间的前32 B用于存储数据元素描述表,后32 B用于存储数据位描述表,同一个数据元素最多支持8个数据位操作。采用这种协议存储方法的好处是,方便了协议的加载及修改,DM642很容易计算出每个数据帧、数据元素、数据位描述表的地址,加快了协议信息的查找,但对存储空间的浪费也比较大。
3.2 DSP程序设计
    软件程序调用CCS 2提供实时操作系统DSP/BIOS,DSP/BIOS采用抢先式多任务内核,支持硬件中断、软件中断、任务、后台线程等4种线程,并提了同步机制。在DSP/BIOS下调用NDK的函数库进行TCP/IP协议编程时,需配置EMAC并开启线程监控网络接口,参考文献详细介绍了DSP/BIOS下的TCP/IP协议编程,这里把网络总线视为普通接口。
    为了保证系统实时性,需合理使用DSP/BIOS提供的不同类型线程,并协调好各线程间的通信。协议及各总线的配置数据均存储于FLAS-H,也上电后通过以太网在线动态加载至DM642。在主线程中对DM642和FPGA进行初始化配置。硬件中断的实时性最高,监控各总线状态,并根据从FPGA读回的中断信息,生成相应消息并触发软件中断和线程。硬件中断的流程如图6所示,依次扫描各总线中断信息,根据中断信息触发总线异常、接收数据、帧头识别、协议接收完成、发送完成等中断的处理程序。[!--empirenews.page--]


    在接收数据所遵从的传输协议未知时,先触发软件中断识别协议类型,在传输协议已知时,直接触发总线管理线程。任务可以被阻塞和挂起,支持动态内存分配等API函数,对以太网及RS 232等总线建立线程分别建立总线管理线程。各总线管理线程的流程如图7所示,根据触发的消息类型,建立和释放缓冲区,编解码协议,触发数据发送总线,监控总线状态,协调总线发送通道的使用。在识别出传输协议为高优先级协议时,总线管理线程会调用API函数提高自身优先级,以达到抢占CPU的目的,处理完协议后会再次恢复以前的优先级。软件中断优先级低于硬件中断,对堆栈要求小,用于低优先级协议的帧头识别。采用触发跳转至相应处理程序的方法可以加快数据处理,保证高优先级协议的实时性。各级线程都会尽量在等待数据或资源时跳转至阻塞状态,以便释放CPU。

4 结语
    本设计采用以下几个方法保证多协议转换实时性:采用高速DSP加快数据处理速度;将协议分为高低优先级,采用FPGA实时识别高优先级协议,大大提高了高优先级协议匹配速度;按地址将协议的帧描述表、数据元素描述表、数据位描述表等信息存储与FLAsH,提高了协议信息的查找效率;使用了DSP/BIOS提供的不同类型线程,并采用触发不同消息的方法跳转线程,提高了数据处理效率,并保证了高优先级协议优先编解码。FPGA识别协议、DM642编解码、线程转换所产生的延时均为微秒级至几十微秒级,因此本设计在一定程度上可以保证对高优先级协议单个数据元素的编解码延时小于1 ms,但在支持协议的通用性上可以进一步研究。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

助力科研与检测新突破 上海2024年5月15日 /美通社/ -- 全球知名的科学仪器和服务提供商珀金埃尔默公司今日在上海举办了主题为"创新不止,探索无界"的新品发布会,集中展示了其在分析仪器领域的最...

关键字: 质谱仪 BSP DSC 气相色谱

上海2024年5月16日 /美通社/ -- 2024年5月10日至5月13日,富士胶片(中国)投资有限公司携旗下影像产品创新力作亮相北京P&E 2024。在数码相机展览区域,全新制定的集团使命"为世界绽...

关键字: 富士 数码相机 影像 BSP

贝克曼库尔特目前已成为MeMed Key免疫分析平台和MeMed BV检测技术的授权经销商 在原有合作的基础上,继续开发适用于贝克曼库尔特免疫分析仪的MeMed BV检测 加州布瑞亚和以色列海法2024年5月16日...

关键字: BSP IO 检测技术 免疫分析仪

英国英泰力能的燃料电池是可产业化的产品解决方案 英国首个专为乘用车市场开发的燃料电池系统 在 157kW 功率下,此燃料电池比乘用车的其他发动机更为强大 &...

关键字: ENERGY INTELLIGENT 氢燃料电池 BSP

深爱人才,共赴"芯"程 深圳2024年5月15日 /美通社/ -- 5月11日,深圳国资国企"博士人才荟"半导体与集成电路产业专场活动在深圳市重投天科半导体有限公司(简...

关键字: 半导体 集成电路产业 BSP 人工智能

武汉2024年5月15日 /美通社/ -- 北京时间4月26日-5月4日,2024 VEX 机器人世界锦标赛于美国得克萨斯州达拉斯市举办。本届 VEX 世锦赛为期九天,设有 VIQRC 小学组/初中组、V5RC 初中组/...

关键字: 机器人 BSP RC POWERED

上海2024年5月15日 /美通社/ -- 由生成式人工智能(AI)驱动的临床阶段生物医药科技公司英矽智能宣布,与复星医药(600196.SH;02196.HK)合作开发的潜在"全球首创"候选药物IS...

关键字: ISM BSP PC 人工智能

上海2024年5月13日 /美通社/ -- 5月8日,浦东新区国资委组织陆家嘴集团等9家区属企业与立邦中国召开合作交流会,旨在贯彻落实浦东新区区委、区政府工作要求,进一步放大进博会溢出带动效应,持续扩大区属企业与进博会重...

关键字: BSP 数字化 自动化立体仓库 智慧园区

上海2024年5月13日 /美通社/ -- 在数字化时代,高效的税务管理和ERP系统成为企业发展的关键。为了满足这一需求商应信息科技与Exact Software 易科软件就金四全电票税系统与ERP系统集成及商务合作建立...

关键字: AC 软件 BSP 数字化

北京2024年5月13日 /美通社/ -- 5月11日,鲲鹏昇腾开发者大会2024期间,华为举办"昇思AI框架及大模型技术论坛",软通动力数字基础设施与集成事业部总经理谢睿受邀出席、软通动力...

关键字: AI 模型 BSP 精度
关闭
关闭