基于SOPC的列车通信网卡的设计
时间:09-03
来源:互联网
点击:
Avolon总线接口设计
MVB总线处理IP核与NiosII的接口设计的实现是通过Traffic Store(共享RAM)来实现的。使用Quarters Ⅱ中的MegaWizard plug-in Manager工具来产生一个双口RAM模块,其设置如表1所示。
该通信存储器与Nios II处理器通过Avalon总线接口。
SOPC片上系统MVB网卡的实现
总线访问IP核与Nios II的系统集成
利用Quarters II的SOPC Builder工具我们集成了NiosII 软核处理器、4k的片内RAM、MVB总线访问IP核(包括编码器和解码器)以及LCD控制模块,构成了一个能实现MVB一类网卡功能的片上系统。
软件设计
基于以上所述的SOPC系统,我们设计了一个基本的MVB节点以实现过程数据传输。本节点将0x14地址设置为源端口,当主帧轮询0x14地址时,本节点将此端口里的数据打包成从帧发送到总线上面,以刷新0x14地址的宿端口。
altera_avalon_mvb.h的设计,包括总线访问IP核寄存器读写的宏定义。
#define IORD_ALTERA_AVALON_ MVB_SENDREG(base) IORD(base, 0)
#define IOWR_ALTERA_AVALON_ MVB_SENDREG(base, data) IOWR(base, 0, data)
在主函数里置MVB总线接收允许位,循环等待接收MVB主控制器发过来的主帧。节点在接收到主帧之后,程序进入中断处理程序。在中断程序里提取接收到的主帧里的端口地址,并与自身预设的端口地址码进行比较,如果地址码相符,则节点将本端口的数据通过MVB发送器发到总线上,实现端口数据刷新操作。
仿真及实现
仿真波形
在本实验中,对实验室设计的MVB板卡进行了功能仿真和FPGA验证,通过对过程数据的发送与接收验证了所搭建的MVB系统。
实测波形
在编好程序后,再编译一遍QuartersII工程文件,将得到的.pof文件下载至FPGA内,上电后用示波器测输出管脚,便可观察到MVB帧波形。对照IEC-61375协议标准,可以判断出该波形为符合标准的正确波形,并且源端口节点上收到了正确的数据,从而证明该过程数据端口的成功刷新。
结语
目前国内的列车网络及控制技术是在技术引进的基础上发展起来的,国外厂商只愿提供产品而不转让关键技术。由于难以单独购买网络专用芯片等种种原因,目前仍是直接采用国外产品,或用国外(设计)的网卡(万元以上的高价)等进行系统集成,以此构成列车通信网络(即国产化)。本论文围绕MVB总线底层协议展开研究,基于SOPC设计思想,对利用FPGA实现IEC61375协议进行了尝试,初步完成了MVB网络I类板卡的设计。目前,对该网络协议的实现方面还仅限于初期阶段,只实现了MVB总线基本的过程数据的收发。该系统的后续还需加入消息监督数据等的通信。在实际的节点应用中,也可能出现各种各样的问题需要加以改进。
参考文献:
1. IEC61375-1-1999, Part 1:“Train Communication Network”
2.zur Bonsen, The Multifunction Vehicle Bus (MVB), Factory Communication Systems, 1995
3. Jaime Jiménez, José L.Martin, Carlos Cuadrado, Jagoba Arias and Jesús Lázaro, “A Top-down Design for the Train Communication Network”,2003 IEEE
4. Alberto Chavarría, Joseba López de Arroyabe, Aitzol Zuloaga, " Slave node architecture for train communications networks" , 2000 IEEE
5. 张大波、王建,《MVB总线实时协议实现及其实验研究》
6. 侯宁,丁荣军,王永翔,王立德,《MVB网卡的帧收发器设计》
MVB总线处理IP核与NiosII的接口设计的实现是通过Traffic Store(共享RAM)来实现的。使用Quarters Ⅱ中的MegaWizard plug-in Manager工具来产生一个双口RAM模块,其设置如表1所示。
该通信存储器与Nios II处理器通过Avalon总线接口。
SOPC片上系统MVB网卡的实现
总线访问IP核与Nios II的系统集成
利用Quarters II的SOPC Builder工具我们集成了NiosII 软核处理器、4k的片内RAM、MVB总线访问IP核(包括编码器和解码器)以及LCD控制模块,构成了一个能实现MVB一类网卡功能的片上系统。
软件设计
基于以上所述的SOPC系统,我们设计了一个基本的MVB节点以实现过程数据传输。本节点将0x14地址设置为源端口,当主帧轮询0x14地址时,本节点将此端口里的数据打包成从帧发送到总线上面,以刷新0x14地址的宿端口。
altera_avalon_mvb.h的设计,包括总线访问IP核寄存器读写的宏定义。
#define IORD_ALTERA_AVALON_ MVB_SENDREG(base) IORD(base, 0)
#define IOWR_ALTERA_AVALON_ MVB_SENDREG(base, data) IOWR(base, 0, data)
在主函数里置MVB总线接收允许位,循环等待接收MVB主控制器发过来的主帧。节点在接收到主帧之后,程序进入中断处理程序。在中断程序里提取接收到的主帧里的端口地址,并与自身预设的端口地址码进行比较,如果地址码相符,则节点将本端口的数据通过MVB发送器发到总线上,实现端口数据刷新操作。
仿真及实现
仿真波形
在本实验中,对实验室设计的MVB板卡进行了功能仿真和FPGA验证,通过对过程数据的发送与接收验证了所搭建的MVB系统。
实测波形
在编好程序后,再编译一遍QuartersII工程文件,将得到的.pof文件下载至FPGA内,上电后用示波器测输出管脚,便可观察到MVB帧波形。对照IEC-61375协议标准,可以判断出该波形为符合标准的正确波形,并且源端口节点上收到了正确的数据,从而证明该过程数据端口的成功刷新。
结语
目前国内的列车网络及控制技术是在技术引进的基础上发展起来的,国外厂商只愿提供产品而不转让关键技术。由于难以单独购买网络专用芯片等种种原因,目前仍是直接采用国外产品,或用国外(设计)的网卡(万元以上的高价)等进行系统集成,以此构成列车通信网络(即国产化)。本论文围绕MVB总线底层协议展开研究,基于SOPC设计思想,对利用FPGA实现IEC61375协议进行了尝试,初步完成了MVB网络I类板卡的设计。目前,对该网络协议的实现方面还仅限于初期阶段,只实现了MVB总线基本的过程数据的收发。该系统的后续还需加入消息监督数据等的通信。在实际的节点应用中,也可能出现各种各样的问题需要加以改进。
参考文献:
1. IEC61375-1-1999, Part 1:“Train Communication Network”
2.zur Bonsen, The Multifunction Vehicle Bus (MVB), Factory Communication Systems, 1995
3. Jaime Jiménez, José L.Martin, Carlos Cuadrado, Jagoba Arias and Jesús Lázaro, “A Top-down Design for the Train Communication Network”,2003 IEEE
4. Alberto Chavarría, Joseba López de Arroyabe, Aitzol Zuloaga, " Slave node architecture for train communications networks" , 2000 IEEE
5. 张大波、王建,《MVB总线实时协议实现及其实验研究》
6. 侯宁,丁荣军,王永翔,王立德,《MVB网卡的帧收发器设计》
总线 Altera FPGA ARM 收发器 编码器 解码器 LCD LTE 仿真 示波器 相关文章:
- 热插拔和缓冲I2C总线 (04-14)
- PCIe总线何时突破Unix服务器坚冰(02-03)
- TMS320VC5402 HPI接口与PCI总线接口设计(04-12)
- 基于Nios II的I2C总线接口的实现(04-09)
- 双口RAM CY7C026在高速数据采集系统中的应用(04-12)
- 计算机在新型多电机同步系统中的应用(07-08)
