首页> 中国专利> 一种基于单片机与FPGA的FlexRay-CPCIe通信模块

一种基于单片机与FPGA的FlexRay-CPCIe通信模块

摘要

本发明公开了一种基于单片机与FPGA的FlexRay‑CPCIe通信模块,其中,FlexRay通信单元包括单片机和总线收发器,总线收发器受单片机最小系统控制实现FlexRay总线数据收发,FlexRay通信协议由单片机执行;FPGA最小系统是CPCIe通信单元的控制核心,通过对FPGA芯片内部IP核和集成硬核设计,实现对通信模块的时钟管理和逻辑控制,并执行PCIe总线标准,实现计算机与通信模块之间数据交换;FlexRay通信单元与CPCIe通信单元之间的数据交换通过单片机与FPGA之间的本地总线实现。本发明可直接安装于具有CPCIe接口的计算机背板上;实现PCIe系统总线与FlexRay高速外部总线两种通信协议之间数据的交换。

著录项

  • 公开/公告号CN112347018A

    专利类型发明专利

  • 公开/公告日2021-02-09

    原文格式PDF

  • 申请/专利权人 天津津航计算技术研究所;

    申请/专利号CN202011253732.3

  • 发明设计人 董虓霄;马云峰;靳五强;

    申请日2020-11-11

  • 分类号G06F13/38(20060101);

  • 代理机构11011 中国兵器工业集团公司专利中心;

  • 代理人刘二格

  • 地址 300308 天津市东丽区空港经济区保税路357号

  • 入库时间 2023-06-19 09:52:39

说明书

技术领域

本发明属于网络通信技术领域,涉及一种基于单片机与FPGA的FlexRay-CPCIe通信模块,用于实现计算机通过PCIe系统总线与FlexRay高速外部总线进行数据通信。

背景技术

总线通信广泛应用于各种工业控制网络中,主要为了解决不同电子设备之间的通信问题,尤其体现在航空航天、汽车制造、航海、自动控制、过程工业等领域。目前,应用时间长,技术发展成熟的外部总线通信技术包括CAN总线、1553B总线等,其具有高可靠性、高确定性和高容错性等特点。但随着科学技术的不断发展,日益增长的数据量和越来越高的实时性通信需求已经逐渐对传统的外部总线通信技术提出了挑战,新一代的高速外部总线技术FlexRay总线开始在相关领域得到应用。

FlexRay作为新一代高速串行外部总线协议,与传统总线相比,在通信速率/可靠性和灵活性等方面具备明显优势。FlexRay总线目前只应用于少数品牌的车载总线通信网络中,具有极大的应用前景。相比于CAN总线和1553B总线最高1Mbps的数据传输速率,FlexRay总线单通道上的数据传输速率最高支持10Mbps,两条通道的总传输速率最高可达20Mbps,因此能够适应大数据量和高实时性的通信要求;两条通道可实现单通道工作、双通道工作和冗余工作三种工作方式。此外,FlexRay总线网络拓扑结构灵活,支持点对点、总线型和有源星型等多种结构。在通信机制方面,FlexRay总线采用循环周期通信,数据帧最大支持到254帧,通过合理配置通信周期和消息长度,可保证接收节点提前预知消息到达时间。

在系统总线通信网络中,第三代I/O总线-PCIe总线因其支持串行差分传输、带宽灵活和传输速率高等特点,逐渐替代第二代I/O总线-PCI总线技术,并大量应用于计算机背板接口,实现CPU、内存以及其他板卡之间的数据通信。相比于普通PCIe接口,CPCIe接口因其电磁兼容性强和抗氧化性好等特点,更广泛的应用于军工、测控、航空航天等诸多领域中。由于计算机具有人机交互性和系统可操作性强等优势,普遍作为上位机或网络节点负责命令的收发、数据的采集和监测。通过将不同功能的板卡安装于具有CPCIe接口的计算机背板上,实现板卡间或板卡与计算机之间的通信。当计算机需要与外部总线通信时,应针对具体外部通讯总线协议,在机箱内增加基于CPCIe接口的总线通信模块。

但是,PCIe系统总线与FlexRay高速外部总线两种通信协议之间互不兼容,制约了计算机在FlexRay总线通信网络中发挥作用的同时,也限制了FlexRay高速总线的应用范围。因此,设计一种基于CPCIe的FlexRay总线通信模块,该模块可自由安装于计算机机箱背板上的CPCIe标准接口中,采用单片机和FPGA分别完成对两种总线的收发控制,实现计算机通过PCIe系统总线与FlexRay高速外部总线进行数据通信,并进一步实现基于计算机的操作系统对FlexRay总线网络进行开发、仿真和测试,增加FlexRay总线应用的便利性。

发明内容

(一)发明目的

本发明的目的是:针对PCIe系统总线与FlexRay高速外部总线两种通信协议之间互不兼容的问题,提出一种基于单片机与FPGA的FlexRay-CPCIe通信模块的实现方法,实现了将计算机作为上位机或网络节点,与FlexRay总线通信,向FlexRay高速总线收发命令,采集和监测数据的功能。

(二)技术方案

为了解决上述技术问题,本发明提供一种基于单片机与FPGA的FlexRay-CPCIe通信模块,包括FlexRay通信单元、CPCIe通信单元和电源电路单元。其特征在于,FlexRay通信单元采用由单片机和总线收发器组成的FlexRay总线节点框架方案,实现通信模块与外部FlexRay高速总线网络之间数据传输;其中,总线收发器受单片机最小系统控制实现FlexRay总线数据收发,FlexRay通信协议由单片机执行;FPGA最小系统是CPCIe通信单元的控制核心,通过对FPGA芯片内部IP核和集成硬核设计,实现对通信模块的时钟管理和逻辑控制,并执行PCIe总线标准,实现计算机与通信模块之间数据交换;FlexRay通信单元与CPCIe通信单元之间的数据交换通过单片机与FPGA之间的本地总线实现;电源电路单元为通信模块各单元供电。所述通信模块安装于计算机机箱内CPCIe背板上,从而实现利用计算机操作系统对FlexRay高速总线进行开发、测试等功能。

所述单片机最小系统包括单片机芯片、时钟电路、复位电路和调试接口电路。

所述单片机芯片本专利中以NXP公司的MPC5644A微控制器为例,但不局限于同款芯片。

所述总线收发器芯片与单片机连接,本专利中总线收发器芯片以TJA1080为例,但不局限于同款芯片。

所述FPGA最小系统包括FPGA芯片、时钟电路、复位电路和调试接口电路。

所述FPGA芯片本专利中以Xillinx公司的Virtex-5系列的XC5VLX110T芯片为例,但不局限于同款芯片。

所述FlexRay通信单元采用单片机内部的FlexRay模块实现通信协议。

所述CPCIe通信单元采用FPGA芯片内部集成硬核设计。

所述CPCIe通信单元采用CPCIe标准接口与计算机机箱内CPCIe背板连接,实现通信模块与计算机之间数据传输。

所述电源电路单元分别为FlexRay通信单元和CPCIe通信单元提供供电需求。

(三)有益效果

上述技术方案所提供的基于单片机与FPGA的FlexRay-CPCIe通信模块,采用单片机和FPGA分别实现对FlexRay通信单元和CPCIe通信单元的控制。FlexRay总线的数据经单片机处理后通过本地总线与FPGA进行数据交换,由CPCIe通信单元发送给计算机;同时,计算机下达的命令通过CPCIe通信单元并经FPGA处理后通过本地总线由单片机控制FlexRay通信单元发送给总线上的指定终端。实现将计算机作为上位机或网络节点,向FlexRay高速总线收发命令,采集和监测数据的功能;有益效果及优点如下:

1、该通信模块可直接安装于具有CPCIe接口的计算机背板上;

2、实现PCIe系统总线与FlexRay高速外部总线两种通信协议之间数据的交换。

3、实现基于计算机的操作系统对FlexRay总线网络进行开发、仿真和测试,增加FlexRay总线应用的便利性。

附图说明

图1本发明基于单片机与FPGA的FlexRay-CPCIe通信模块原理图;

图2本发明单片机最小系统原理图;

图3本发明FPGA最小系统原理图;

图4本发明CPCIe通信单元原理图;

图5本发明FlexRay通信单元原理图;

图6本发明单片机与FPGA之间本地总线原理图;

图7本发明异步FIFO逻辑功能图;

图8本发明电源模块原理图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

图1为本发明基于单片机与FPGA的FlexRay-CPCIe通信模块原理图。通信模块包括FlexRay通信单元、CPCIe通信单元和电源电路单元。FlexRay通信单元采用由单片机和总线收发器组成的FlexRay总线节点框架方案,实现通信模块与外部FlexRay高速总线网络之间数据传输;其中,总线收发器受单片机最小系统控制实现FlexRay总线数据收发,FlexRay通信协议由单片机执行;FPGA最小系统是CPCIe通信单元的控制核心,通过对FPGA芯片内部IP核和集成硬核设计,实现对通信模块的时钟管理和逻辑控制,并执行PCIe总线标准,实现计算机与通信模块之间数据交换;FlexRay通信单元与CPCIe通信单元之间的数据交换通过单片机与FPGA之间的本地总线实现;电源电路单元为通信模块各单元供电。所述通信模块安装于计算机机箱内CPCIe背板上,从而实现利用计算机操作系统对FlexRay高速总线进行开发、测试等功能。

图2为本发明单片机最小系统原理图。单片机最小系统包括单片机芯片、时钟电路、复位电路和调试接口电路。单片机芯片采用NXP公司的MPC5644A微控制器,该芯片基于e200z4 Power Architecture core结构,具有150MHz工作频率;1个双通道FlexRay接口,并在内部完成了对FlexRay通信协议的移植;1个可配置用于本地总线的EBI接口。时钟电路采用高精度外部晶振;配置接口可满足调试(JTAG)模式和。

图3为本发明FPGA最小系统原理图。FPGA最小系统包括FPGA芯片,时钟电路,配置接口和程序存储电路。FPGA芯片采用Xillinx公司的Virtex-5系列的XC5VLX110T芯片,该芯片具有多达680个用户自定义I/O引脚接口和多种配置模式,便于提高设计灵活性;16个高速串行收发器(GTP)和硬核端点PCIe模块可直接用于PCIe数据的收发;时钟采用高精度外部晶振;为加强FPGA芯片配置效率,配置接口可同时满足调试(JTAG)模式和比特外设接口(BPI)模式;程序存储芯片采用StrataFlash芯片。

图4为本发明CPCIe通信单元原理图。CPCIe通信单元利用FPGA内部集成的PCIe硬核和高速数据输入输出接口(Rocket I/O)IP核实现本通信模块的PCIe通信。发送/接收控制和配置状态检查均由verilog语言编写,其中发送/接收控制负责对数据缓存模块数据的提取与存储,配置状态检查负责检查PCIe硬核配置空间的状态。PCIe集成硬核完全兼容PCIe 1.1版本,实现总线事务层、数据链路层和物理层协议功能。数据经PCIe集成硬核后,利用高速数据输入输出接口(Rocket I/O)的高速串行收发器(GTP)直接连接至CPCIe标准连接器,实现PCIe数据的收发。

图5为本发明FlexRay总线通信单元原理图。FlexRay总线通信单元采用通信控制器和总线驱动器的FlexRay总线节点框架方案,包括一个通信控制器分别与两个总线驱动器。通信控制器芯片与FPGA连接,采用MFR4310;两个总线驱动器芯片分别与通信控制芯片连接,采用TJA1080。单片机与总线驱动器之间通过数据信号与收/发使能信号相连。

图6为单片机与FPGA之间本地总线原理图。单片机与FPGA之间通过MPC5644A的EBI接口相连,包括时钟信号、数据信号、地址信号、读/写使能信号。当接收外部FlexRay数据时,单片机的写使能有效,将数据传输给FPGA;当需要发送FlexRay数据时,单片机的读使能有效,读取由FPGA处理的PCIe数据。

图7为本发明异步FIFO逻辑功能图。由于FlexRay数据收发模块和CPCIe数据收发模块时钟速率不同,为避免数据丢失,在FPGA内部采用异步FIFO用于缓存数据。异步FIFO主要由双口RAM、读/写地址发生器和空/满信号发生器组成。对于FlexRay数据收发模块和CPCIe数据收发模块,异步FIFO的工作方式一致。信号的发送由写时钟和写使能(发送使能)控制,当非满信号有效时,将发送数据和地址写入RAM中;然后由读时钟和读使能(通信协议接收使能)控制,将数据和地址发送给对应的通信协议。信号的接收由写时钟和写使能(通信协议发送使能)控制,当非满信号有效时,将接收数据和地址写入RAM中;然后由读时钟和读使能(接收使能)控制,提取数据和地址,执行后续操作。

图8为本发明电源模块原理图。电源模块采用多输出DC/DC芯片为通信模块提供稳定电源。FPGA涉及1.2V、1.5V和3.3V供电,单片机为1.2V和3.3V供电,TJA1080为3.3V供电。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号