background image

基于

FPGA 和 MCU 的 CAN-VME 总线转换设计

摘要:为了扩展

VME 总线和 CAN 总线的应用范围,充分利用两种总线的不同传输特

点,采用了模块设计方法,提出一种基于

FPGA 和 MCU 的总线转换方案。该方案给出了

FPGA 与上位 VME 总线部分的 VME 总线接口设计,利用 MCU 控制 CPLD 扩展的多通道
CAN 节点完成 CAN 总线部分的设计,还给出软件实现上的重点、难点和流程。实现了两种
不同总线的转换,满足了工业环境对两种总线混合使用的要求。

CAN(Controller Area Network 控制器局域网)以其高性能、高可靠性以及独特的设计等优

点,为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的支持。

CAN 总

线突出的可靠性、实时性和灵活性显示了它突出的优势,成为公认的最有前途的总线标准,
广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。

VME(Versa Module Eurocard)是

一种通用的计算机总线,结合了

Motorola 公司 Versa 总线的电气标准和在欧洲建立的

Eurocard 标准的机械形状因子,是一种开放式架构。其独特的紧密耦合(Closely coupled)硬件
构架,为其外围系统模块的设计提供了良好的基础,使

VME 总线广泛地应用于工业控制、

军用系统、航空航天、交通运输和医疗领域。

本文提出了基于

FPGA 的 VME 总线和 CAN 总线之间的传输转换方案,满足一些特殊

工业环境的需要,具有一定的研究意义和实用价值。

1 转换系统的硬件设计

该系统由

VME 总线接口模块、CAN 总线节点(8 路 CAN 节点)模块、复杂可编程逻辑器

模块、

MCU 模块 4 部分核心模块构成。整个系统在一个 3U 标准的 VME 板卡上实现,机构

紧凑,布局合理。系统的原理框图如图

1 所示。

1.1 VME 总

线接口模块

整个系统实

现是两种通信之
间的转换,所以
数据的发送都是
由上位主机发送
的。由于

FPGA 控制灵活,所以很方便实现与 VME 总线的连接。文中 FPGA 器件选用

XILINX  

公司的

XC2S200 系列的 5PQ208,56Kb 专用存储器,最高运行速度 200MHz,I/O

电压在

3.3~5.5V,地址总线、数据总线,/AS,/IACKIN,/IACKOUT,SYS CLK 等可以直

接与

5PQ208 连接。

1.2 CAN 总线节点模块