基于
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 器件选用
XC2S200 系列的 5PQ208,56Kb 专用存储器,最高运行速度 200MHz,I/O
电压在
3.3~5.5V,地址总线、数据总线,/AS,/IACKIN,/IACKOUT,SYS CLK 等可以直
接与
5PQ208 连接。
1.2 CAN 总线节点模块