CN103049414B - Fc总线与can总线间数据的转换及传输方法 - Google Patents

Fc总线与can总线间数据的转换及传输方法 Download PDF

Info

Publication number
CN103049414B
CN103049414B CN201210591137.XA CN201210591137A CN103049414B CN 103049414 B CN103049414 B CN 103049414B CN 201210591137 A CN201210591137 A CN 201210591137A CN 103049414 B CN103049414 B CN 103049414B
Authority
CN
China
Prior art keywords
data
bus
buffer zone
message
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210591137.XA
Other languages
English (en)
Other versions
CN103049414A (zh
Inventor
朱志强
黄韬
王晓华
张利洲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AVIC No 631 Research Institute
Original Assignee
AVIC No 631 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AVIC No 631 Research Institute filed Critical AVIC No 631 Research Institute
Priority to CN201210591137.XA priority Critical patent/CN103049414B/zh
Publication of CN103049414A publication Critical patent/CN103049414A/zh
Application granted granted Critical
Publication of CN103049414B publication Critical patent/CN103049414B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明提供一种FC总线与CAN总线间数据的转换及传输方法,解决以CAN总线作为局部总线的子***与FC主干网络之间数据相互通信的问题。本发明的方案中,FPGA内部PPC处理器对FC总线和CAN总线接口进行初始化、收发控制、数据管理和中断处理等操作,完成FC-AE-ASM协议下的FC数据帧信息与CAN报文信息的解析和帧格式转换工作,同时FPGA内部设计环形缓冲区,解决FC与CAN两种不同总线带宽数据转发过程中的速率不匹配问题。

Description

FC总线与CAN总线间数据的转换及传输方法
技术领域:
本发明属于计算机通信技术,涉及通信网络中一种FC与CAN两种总线之间基于FC-AE-ASM与CAN的协议转换及数据相互转发的实现技术。
背景技术:
由于光纤通信总线(以下简称“FC总线”)具备高带宽、低延迟、高可靠和支持交换网络架构等特性,适合于构建大规模分布式实时***并满足其对网络带宽和数据传输实时性的较高要求。目前符合FC-AE-ASM协议的FC网络已作为主干网络应用于航空产品的通信网络***,为新一代飞机上各子***之间的互联提供通信支持。
在***整体设计过程中,虽然采用FC网络作为主干网络,但是一些子***内部的各功能模块之间基于通信要求、有效数据量及技术成熟度等因素考虑,会选用CAN总线作为子***内部的局部总线使用;而子***又需要与FC主干网络进行互联和通信,因此需要提供一种FC总线与CAN总线之间数据相互转发的实现技术。
发明内容:
本发明的目的是,提供一种FC总线与CAN总线间数据的转换及传输方法,解决以CAN总线作为局部总线的子***与FC主干网络之间数据相互通信的问题。
本发明的技术解决方案如下:
FC总线与CAN总线间数据的转换及传输方法,
其中,FC至CAN总线数据转发及传输包括以下步骤:
1)对FC总线接口和CAN总线接口进行配置和初始化操作;
2)FC接收状态机响应FC MAC状态;
3)若FC端口接收到消息,则FC接收控制逻辑将接收到的FC数据帧信息写入FC接收缓冲区,更新接收缓冲区尾指针,将FC消息接收中断上报PPC处理器;若无接收消息,则重复步骤2);
4)PPC处理器收到FC接收消息中断后,进入中断服务程序,读取FC接收缓冲区中的数据并写入环形缓冲区,更新接收缓冲区头指针和环形缓冲区指针,清除中断;
5)PPC处理器查询CAN总线端口状态,判断CAN接口是否具备发送条件;
6)若CAN总线接口具备发送条件,则转步骤7);若CAN总线不具备发送条件,则重复步骤5);
7)PPC处理器查询环形缓冲区状态;
8)若环形缓冲区中有待向CAN总线发送的数据,则转步骤9);若无待向CAN总线发送的数据,则重复步骤7);
9)PPC处理器将环形缓冲区中的数据取出,根据设置的CAN报文参数进行CAN报文信息的组织,并将组织好的CAN报文写入CAN发送FIFO;
10)CAN控制逻辑和CAN协议处理逻辑将CAN报文信息进行封装并由CAN驱动器发送至CAN总线;
CAN至FC总线数据转发及传输包括以下步骤:
11)对FC和CAN总线接口进行配置和初始化操作;
12)CAN协议处理逻辑解析接收到的CAN报文信息,CAN总线控制逻辑
将接收到的数据写入CAN消息接收缓冲区,向PPC处理器上报CAN接收
中断;
13)PPC处理器响应CAN接收中断,从CAN接收FIFO读取有效数据,根
据设置的FC参数对数据进行FC帧格式的组织,并将组帧完成的FC数
据写入FC发送缓冲区,更新FC发送缓冲区尾指针;
14)FC发送控制逻辑检测发送缓冲区状态;
15)若FC发送缓冲区有待发送的数据,则FC发送控制逻辑将发送缓
冲区中的FC数据帧送至FC MAC,更新发送缓冲区头指针;若发送缓
冲区无数据,则重复步骤14);
16)FC数据帧发送至FC网络。
本发明的优点是:
专用接口转换功能:本设计为一种全新的接口转换技术,提供了一种专用的FC总线接口与CAN总线接口之间基于FC-AE-ASM与CAN的协议转换及数据相互转发的实现技术,可实时完成FC总线数据与CAN总线数据的接收、缓存、格式转换与数据转发功能;
适应性强:接口基于标准协议进行开发,可满足与网络中各种符合FC-AE-ASM协议的FC节点机、FC交换机以及各种CAN节点机进行通信;
使用方便:将接口转换模块的FC光接口与***FC网络相连,CAN总线接口与子***CAN总线相连,模块上电即可自动加载逻辑和相应程序,实现FC与CAN接口数据的转发功能;
功耗低、体积小、易于维护:由于基于FPGA设计实现,因此转换接口模块具有功耗低、体积小等特点,设计提供串行接口,易于实现调试、测试及通信配置等功能。
附图说明
图1是FC与CAN总线转换接口逻辑结构图;
图2是FC至CAN总线数据转发流程图;
图3是CAN至FC总线数据转发流程图。
具体实施方式:
本发明的方案中,接口转换基于内嵌PPC处理器硬核的FPGA设计实现,FPGA周边配置CAN总线接口电路、光电收发器及其他相应外设电路。通过FPGA逻辑实现FC MAC接口功能、CAN接口控制功能和CAN协议处理功能。FPGA内部PPC处理器运行Vxworks操作***,对FC总线和CAN总线接口进行初始化、收发控制、数据管理和中断处理等操作,完成FC-AE-ASM协议下的FC数据帧信息与CAN报文信息的解析和帧格式转换工作,同时FPGA内部设计环形缓冲区,解决FC与CAN两种不同总线带宽数据转发过程中的速率不匹配问题。
下面结合附图对实施方式进行具体说明。
首先对FC与CAN总线数据转发的逻辑架构及设计实现进行介绍,如图1所示:转换接口基于内嵌PPC处理器的FPGA进行设计,配合相应外设实现接口转换及程序运行与调试等功能。
FPGA外部配置MAX3232串口驱动器、FLASH和DDR2存储器以实现PPC处理器的程序运行与调试维护等功能,逻辑内部通过接口控制器、存储器管理器和DDR2控制器IP核实现对串行接口和存储器的管理。PPC处理器运行Vxworks操作***,负责完成FC和CAN总线的接口控制及初始化、中断处理、数据转换与组帧和传输管理等工作。可通过串行接口实现对相关接口参数的配置,参数包括:FC_PortID、FC_MsgID、FC_D_ID、CAN总线速率、CAN消息号等。
FC接口采用FC MAC协议IP核处理FC链路原语信号及原语序列,实现对FC数据帧的解析和封装;Serdes基于FPGA的MGT实现FC信号的串/并转换、8B/10B编码、时钟恢复以及CRC校验等工作;FC电信号与光信号的转换通过光电收发器件实现。
FC接收控制逻辑负责响应FC接口状态机并判断FC接收缓冲区状态,从FC MAC接收FC数据帧并将信息写入FC接收缓冲区,完成对接收缓冲区指针的维护,最后对PPC处理器上报FC接收中断。FC发送控制逻辑负责维护发送缓冲区状态,判断FC链路状态,进行发送状态机管理,将当前发送缓冲区的数据提交FC MAC。PPC处理器通过一系列FC管理寄存器实现FC链路初始化、状态控制以及对FC接收、发缓冲区的管理。FC接收及发送缓冲区采用4缓机制,每个缓冲区的大小为最大帧长。
CAN总线接口通过CAN驱动器对外提供电信号,FPGA内部CAN协议处理单元实现对CAN报文信息的解析和封装。CAN控制逻辑负责维护CAN总线状态机,将13Byte宽度发送FIFO内的报文信息发送至CAN总线,同时负责将从CAN总线接收到的报文信息写入64Byte深度的CAN接收缓冲区,并将CAN接收中断上报处理器。PPC处理器从13Byte宽度的接收FIFO读取CAN接收消息,并通过一系列CAN管理寄存器实现对CAN总线链路控制及CAN报文信息收/发管理的操作。
由于FC总线接口与CAN总线接口是相互独立的,处理器可以同时进行2种总线上数据的接收与发送操作,并完成转发过程中的数据管理与帧格式转换工作。PPC处理器收到CAN接收中断,从CAN接收FIFO读取CAN报文信息,将有效数据取出,并根据设置的FC相关参数(若未设置则采用默认值)进行FC消息的组帧工作,最后将组织好的数据帧写入FC发送缓冲区,更新发送缓冲区指针。由于FC总线带宽为2.125Gbps,CAN总线带宽为1Mbps,因此逻辑内部建立数据缓冲机制,设计128个帧长的环形缓冲区以及相应管理寄存器以解决FC总线带宽与CAN总线带宽不匹配的问题。PPC处理器收到FC接收中断,将FC接收缓冲内的有效数据取出并写入环形缓冲区,更新FC接收缓冲和环形缓冲区指针,同时PPC处理器查询CAN总线端口状态,待CAN接口具备发送条件,PPC处理器从当前环形缓冲区将数据取出,根据设置的CAN报文参数(若未设置则采用默认值)进行CAN报文信息的组织,最后将组织好的CAN报文写入CAN发送FIFO。
下面对FC至CAN总线数据转发流程进行介绍,如图2所示:
1)对FC总线接口和CAN总线接口进行配置和初始化操作;
2)FC接收状态机响应FC MAC状态;
3)若FC端口接收到消息,则FC接收控制逻辑将接收到的FC数据帧信息写入FC接收缓冲区,更新接收缓冲区尾指针,将FC消息接收中断上报PPC处理器;若无接收消息,则重复步骤2);
4)PPC处理器收到FC接收消息中断后,进入中断服务程序,读取FC接收缓冲区中的数据并写入环形缓冲区,更新接收缓冲区头指针和环形缓冲区指针,清除中断;
5)PPC处理器查询CAN总线端口状态,判断CAN接口是否具备发送条件;
6)若CAN总线接口具备发送条件,则转步骤7);若CAN总线不具备发送条件,则重复步骤5);
7)PPC处理器查询环形缓冲区状态;
8)若环形缓冲区中有待向CAN总线发送的数据,则转步骤9);若无待向CAN总线发送的数据,则重复步骤7);
9)PPC处理器将环形缓冲区中的数据取出,根据设置的CAN报文参数(若未设置则采用默认参数)进行CAN报文信息的组织,并将组织好的CAN报文写入CAN发送FIFO;
10)CAN控制逻辑和CAN协议处理逻辑将CAN报文信息进行封装并由CAN驱动器发送至CAN总线。
下面对CAN至FC总线数据转发流程进行介绍,如图3所示:
1)对FC和CAN总线接口进行配置和初始化操作;
2)CAN协议处理逻辑解析接收到的CAN报文信息,CAN总线控制逻辑将接收到的数据写入CAN消息接收缓冲区,向PPC处理器上报CAN接收中断;
3)PPC处理器响应CAN接收中断,从CAN接收FIFO读取有效数据,根据设置的FC参数(若未设置则采用默认参数)对数据进行FC帧格式的组织,并将组帧完成的FC数据写入FC发送缓冲区,更新FC发送缓冲区尾指针;
4)FC发送控制逻辑检测发送缓冲区状态;
5)若FC发送缓冲区有待发送的数据,则FC发送控制逻辑将发送缓冲区中的FC数据帧送至FC MAC,更新发送缓冲区头指针;若发送缓冲区无数据,则重复步骤4);
6)FC数据帧发送至FC网络。

Claims (1)

1.FC总线与CAN总线间数据的转换及传输方法,
其中,FC至CAN总线数据转发及传输包括以下步骤:
1)对FC总线接口和CAN总线接口进行配置和初始化操作;
2)FC接收状态机响应FC MAC状态;
3)若FC端口接收到消息,则FC接收控制逻辑将接收到的FC数据帧信息写入FC接收缓冲区,更新接收缓冲区尾指针,将FC消息接收中断上报PPC处理器;若无接收消息,则重复步骤2);
4)PPC处理器收到FC接收消息中断后,进入中断服务程序,读取FC接收缓冲区中的数据并写入环形缓冲区,更新接收缓冲区头指针和环形缓冲区指针,清除中断;
5)PPC处理器查询CAN总线端口状态,判断CAN接口是否具备发送条件;
6)若CAN总线接口具备发送条件,则转步骤7);若CAN总线不具备发送条件,则重复步骤5);
7)PPC处理器查询环形缓冲区状态;
8)若环形缓冲区中有待向CAN总线发送的数据,则转步骤9);若无待向CAN总线发送的数据,则重复步骤7);
9)PPC处理器将环形缓冲区中的数据取出,根据设置的CAN报文参数进行CAN报文信息的组织,并将组织好的CAN报文写入CAN发送FIFO;
10)CAN控制逻辑和CAN协议处理逻辑将CAN报文信息进行封装并由CAN驱动器发送至CAN总线;
CAN至FC总线数据转发及传输包括以下步骤:
11)对FC和CAN总线接口进行配置和初始化操作;
12)CAN协议处理逻辑解析接收到的CAN报文信息,CAN总线控制逻辑将接收到的数据写入CAN消息接收缓冲区,向PPC处理器上报CAN接收中断;
13)PPC处理器响应CAN接收中断,从CAN接收FIFO读取有效数据,根据设置的FC参数对数据进行FC帧格式的组织,并将组帧完成的FC数据写入FC发送缓冲区,更新FC发送缓冲区尾指针;
14)FC发送控制逻辑检测发送缓冲区状态;
15)若FC发送缓冲区有待发送的数据,则FC发送控制逻辑将发送缓冲区中的FC数据帧送至FC MAC,更新发送缓冲区头指针;若发送缓冲区无数据,则重复步骤14);
16)FC数据帧发送至FC网络。
CN201210591137.XA 2012-12-28 2012-12-28 Fc总线与can总线间数据的转换及传输方法 Active CN103049414B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210591137.XA CN103049414B (zh) 2012-12-28 2012-12-28 Fc总线与can总线间数据的转换及传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210591137.XA CN103049414B (zh) 2012-12-28 2012-12-28 Fc总线与can总线间数据的转换及传输方法

Publications (2)

Publication Number Publication Date
CN103049414A CN103049414A (zh) 2013-04-17
CN103049414B true CN103049414B (zh) 2015-04-15

Family

ID=48062059

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210591137.XA Active CN103049414B (zh) 2012-12-28 2012-12-28 Fc总线与can总线间数据的转换及传输方法

Country Status (1)

Country Link
CN (1) CN103049414B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015379B1 (en) * 2013-10-11 2015-04-21 Ge Aviation Systems, Llc Method of controlling data communication
CN104679702B (zh) * 2013-11-28 2018-01-12 中国航空工业集团公司第六三一研究所 多路高速串行接口控制器
CN104714918B (zh) * 2013-12-15 2018-01-12 中国航空工业集团公司第六三一研究所 主机环境下高速fc总线数据接收及缓冲方法
CN104731747A (zh) * 2013-12-20 2015-06-24 中国航空工业集团公司第六三一研究所 一种高速总线数据接收中的分级缓冲实现方法
CN103957089B (zh) * 2014-04-28 2017-06-23 上海大学 一种高可靠线速数据通信方法
CN104767697A (zh) * 2015-01-23 2015-07-08 珠海欧比特控制工程股份有限公司 一种航空全双工交换式以太网控制器及其控制方法
CN105550142A (zh) * 2015-12-07 2016-05-04 中国航空工业集团公司西安航空计算技术研究所 一种高低速转换接口中的数据完整性处理方法
CN108462651A (zh) * 2016-12-12 2018-08-28 中国航空工业集团公司西安航空计算技术研究所 一种采用dma链实现的1394异步流传输的方法
CN107070937B (zh) * 2017-04-27 2020-06-05 北京广利核***工程有限公司 一种基于fpga的协议转换装置、方法
CN107623728B (zh) * 2017-09-07 2020-07-03 国营芜湖机械厂 基于产品接口控制文件的fc-ae-asm数据通用解析方法
CN107483370B (zh) * 2017-09-14 2020-07-03 电子科技大学 一种在fc网络上传输ip和can业务的方法
CN107951372B (zh) * 2017-12-19 2021-07-06 九阳股份有限公司 一种烹饪器具的烹饪方法
CN108650160B (zh) * 2018-04-26 2020-07-17 西安微电子技术研究所 一种基于链式端口的总线桥接器及其工作方法
CN110196824B (zh) 2018-05-31 2022-12-09 腾讯科技(深圳)有限公司 实现数据传输的方法及装置、电子设备
CN109710554B (zh) * 2018-11-29 2021-02-09 北京计算机技术及应用研究所 Fc-ae-1553总线与can总线非透明桥接***
CN109558107B (zh) * 2018-12-04 2023-06-30 中国航空工业集团公司西安航空计算技术研究所 一种共享缓冲区的fc消息接收管理方法
CN111049718B (zh) * 2019-12-30 2021-07-20 北京京航计算通讯研究所 Can总线模拟监控方法
CN111510456B (zh) * 2020-04-20 2022-03-01 中国电子科技集团公司第五十八研究所 一种fc-ae-1553转can/rs422的双冗余通信协议转换器
CN111639043B (zh) * 2020-06-05 2023-04-25 展讯通信(上海)有限公司 一种通信装置
CN111866579A (zh) * 2020-07-27 2020-10-30 无锡和博永新科技有限公司 一种v4l2的数据转换方法
CN112596492A (zh) * 2020-11-30 2021-04-02 北京东土军悦科技有限公司 一种can帧传输方法、装置、设备及介质
CN113704154B (zh) * 2021-07-30 2024-02-23 浙江亚太智能网联汽车创新中心有限公司 一种感知***通用接口集成***及装置
CN113742269B (zh) * 2021-11-03 2022-02-22 浙江国利信安科技有限公司 用于epa设备的数据传输方法、处理设备和介质
CN115622835A (zh) * 2022-10-27 2023-01-17 北京旋极信息技术股份有限公司 一种发送转换装置及接收转换装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741766A (zh) * 2008-11-07 2010-06-16 北京广利核***工程有限公司 一种can网到以太网转换装置和方法
CN101834674A (zh) * 2010-03-31 2010-09-15 中国航空工业集团公司西安飞机设计研究所 双余度光纤can总线组网方法
CN202268698U (zh) * 2011-10-20 2012-06-06 国电南京自动化股份有限公司 一种用于电力***联网工程的稳定控制装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8949392B2 (en) * 2007-11-07 2015-02-03 Brocade Communications Systems, Inc. Workload management with network dynamics

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741766A (zh) * 2008-11-07 2010-06-16 北京广利核***工程有限公司 一种can网到以太网转换装置和方法
CN101834674A (zh) * 2010-03-31 2010-09-15 中国航空工业集团公司西安飞机设计研究所 双余度光纤can总线组网方法
CN202268698U (zh) * 2011-10-20 2012-06-06 国电南京自动化股份有限公司 一种用于电力***联网工程的稳定控制装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张鑫等.CAN总线光纤通信接口设计.《西北大学学报(自然科学版)》.2008,第38卷(第2期),第229-232页. *

Also Published As

Publication number Publication date
CN103049414A (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
CN103049414B (zh) Fc总线与can总线间数据的转换及传输方法
CN103440219B (zh) 一种通用总线转换桥ip核
CN102780705B (zh) Ethernet-CAN协议转换器
CN103905281A (zh) 可互换实现网络控制器与网络终端功能的fc-ae-1553总线节点卡
CN110837486B (zh) 一种基于FPGA的FlexRay-CPCIe通信***
CN104679702B (zh) 多路高速串行接口控制器
CN102185833B (zh) 一种基于fpga的fc i/o并行处理方法
CN111277478B (zh) 一种基于不同波特率从设备的rs485总线复用控制方法
CN105117319A (zh) 基于fpga实现对多路mdio设备实时监控的方法
WO2011130965A1 (zh) 无线传感器网络、移动终端及其互联方法和***
CN202190284U (zh) 一种CAN总线与SpaceWire总线的协议转换器
CN101106504A (zh) 基于can总线的智能自主机器人分布式通信***
CN115589342A (zh) 一种sas控制器的功耗管理方法
CN203434983U (zh) 可配置fpga的光纤通道数据接口卡
CN103210680B (zh) 带宽调整方法、发送芯片及***
CN102137310A (zh) 分布式实时控制的楼宇对讲***
CN101702839B (zh) Ir接口主备链路倒换功能实现装置及方法
CN110676818B (zh) 一种基于星型网络拓扑的就地化母线保护方法与***
CN216599651U (zh) 一种支持tsn特性的以太网卡
CN111416654B (zh) 一种基于硬件加速的卫星虚拟化信关站传输架构
CN115086083A (zh) 一种基于fpga的网闸隔离交换***及方法
CN113676253A (zh) 一种基于FPGA的FlexRay总线光纤通信模块
CN110297795B (zh) 基于以太网phy芯片实现单路串行数据传输***及其方法
CN109818941B (zh) 实现10ge接口设备支持25ge接口的***及方法
CN102508809B (zh) 现场总线至pc104总线的转换装置及数据传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant