欢迎访问有用文档网!

当前位置: 有用文档网 > 作文大全 >

一种基于FPGA的ISA总线转CAN总线设计与实现

| 浏览次数:

【摘 要】 本设计采用FPGA芯片及其技术实现了智能CAN通讯卡的设计和开发。本设计主要包括:ISA总线、主控制器模块、缓冲区模块、CAN协议控制器模块、以及CAN总线驱动器模块。本设计已在实际工程中得到运用。实践结果表明数据传输稳定,可靠性高。

【关键词】 CAN总线 FPGA VHDL 循环存储

ISA(Industry Standard Architecture,工业标准体系结构)总线是Intel/IEEE/和EISA在62线PC总线基础上经过扩展36根线而开发出的一种系统总线。ISA具有16位数据线,最高工作频率为8MHz,数据传输速率达16Mb/s。24根地址线,可寻址16Mb。使用ISA总线的外部设备不需要具有非常快的吞吐速率。

CAN(Controller Area Network)即控制器局域网络,是一种全数字化、多主和双向的现场总线。CAN总线数据通信具有很高的可靠性、实时性和灵活性,越来越广泛地应用于各种工业现场。

随着计算机应用技术的迅速发展,对高性能/高效率板卡的需求将会越来越大,微机中低性能的ISA总线必将被淘汰。但是在现实应用中仍有数量众多的支持ISA总线的板卡在使用。因此,CAN到ISA总线桥在一定时期内将扮演一种特殊的角色。

1 系统总体设计(图1)

2 工作原理

CAN模块共由四个部分组成:主控制器模块、缓冲区模块、CAN协议控制器模块、以及CAN总线驱动器。见图1。

2.1 主控制器

主控制器是整个模块的控制中心,通过访问CAN协议控制器来实现对CAN总线的访问;同时控制缓冲区,减少数据的丢失率、增加CPU的工作效率。

2.2 数据缓冲区

为了增加模块的数据吞吐量,减少数据丢失率,同时减少CPU的工作负担,在设计时增加了数据接收和发送缓冲器。该缓冲器应该同时满足CPU对其的读写,及CAN协议控制器对其的读写。

双口RAM有时会发生共享冲突问题。因此,将双口RAM作为缓冲区使用,利用FPGA控制程序,它不仅保证了数据的先后次序,也保证了数据流通的速度。

2.3 CAN协议控制器

CAN协议控制器实现CAN协议的数据链路层和物理层功能,对外具有与主控制器和总线接收器的接口。通过对其编程,主控制器可以设置它的工作方式,控制它的工作状态,进行数据的发送和接收,把应用层建立在它的基础之上。

2.4 CAN总线收发器

CAN控制器SJA1000并不能直接与总线连接,还要通过总线收发器才能接于总线上。CAN总线收发器提供CAN协议控制器与物理总线的接口,总线收发器的性能决定了总线接口、总线终端、总线长度和节点数,是影响整个总线网络通信性能的关键因素之一。

3 程序设计

程序可分为三个部分:(1)控制双口RAM。(2)控制SJA1000。(3)写SJA1000命令寄存器程序流程如图2所示。

由流程图可看出在发送CAN总线数据帧时,必须先从双口RAM中读出数据,所以需使双口RAM的片选信号、读信号有效:同时根据前两个字节中的信息获取数据帧信息;然后将读取的数据依次写入SJA1000发送缓冲区;最后写SJA1000命令寄存器,通知SJA1000可以发送CAN数据。

4 读写CAN数据

4.1 写CAN通道数据

如果模块未向CPU发中断以申明某路8KRAM已满,则CPU可以将数据写入该通道。每次最多只能写10个数据。CPU可以根据数据长度来写数据。当需要发送的数据写完后,CPU必须发写结束命令以终止写操作。这样可以节约CPU的操作时间。写数据过程为(以下以写第一通道为例):(1)查询数据状态寄存器(基址+2),看1通道是否能写。(2)向通道1命令口(基址+00)写入写操作开始命令(0x01)。(3)向通道1数据口(基址+01)连续写入1帧的数据(小于等于10字节)。(4)向通道1命令口(基址+00)写入写操作结束命令(0x00)。(5)其他通道的写操作与此类同。

4.2 读CAN通道数据

CPU可以采用扫描方式查询各个通道的状态,当某个通道内有数据时CPU可读取这些数据。CPU可以根据ID1和ID2的数据长度来读取数据。当读数据结束后,CPU必须发读结束命令以告诉CAN终止读操作。这样CPU可以尽早结束读操作,节约CPU的CAN操作时间。读数据过程为(以下以写第二通道为例):(1)查询数据状态寄存器(基址+10),看2通道是否有数据,如果没有数据结束操作,如果有数据则向通道2命令口(基址+04),写入读操作开始命令(0x02)。(2)从通道2数据口(基址+05),连续的读出1帧的数据(小于等于10字节),读完指定长度的数据后,向通道2命令口(基址+04),写入读操作结束命令(0x00)。

参考文献

[1]徐伟业.基于FPGA的CPU核及其虚拟平台的设计与实现[D].河海大学,2007年.

[2]贾晓宇.基于ISA总线的嵌入式智能型张力控制系统[D].武汉理工大学,2002年.

[3]安磊,梁尚军,邴洋海.一种基于FPGA的ISA航空总线设计方法[J].飞机设计,2012(4).

推荐访问:总线 设计 FPGA ISA

热门排行Top Ranking

支部组织生活方面存在问题清单和整改措施 党组织生活个人问题整改清单

下面是小编为大家精心整理的支部组织生活方面存在问题清单和整改措施党组织生活个人问题整改清单文章,供大家阅读参考

2021年党员个人问题清单及整改措施 党组织生活个人问题整改清单

下面是小编为大家精心整理的2021年党员个人问题清单及整改措施党组织生活个人问题整改清单文章,供大家阅读参考。

浅析军队战斗力损耗的新变化

关键词:军队;战斗力损耗;新变化军队战斗力的结构,是战斗力各要素间的结合方式和相互关系。军队战斗力的

小学六年级毕业演讲稿100字左右9篇

小学六年级毕业演讲稿100字左右9篇小学六年级毕业演讲稿100字左右篇1敬爱的老师,亲爱的同学们:大

问题及整改措施 (2) 药房个人存在问题及整改措施

下面是小编为大家精心整理的问题及整改措施(2)药房个人存在问题及整改措施文章,供大家阅读参考。精品文章《问题及

个人问题清单及整改措施(最新) 能力作风建设个人问题清单及整改措施

下面是小编为大家精心整理的个人问题清单及整改措施(最新)能力作风建设个人问题清单及整改措施文章,供大家阅读参考。在认真

疫情防控赞美警察诗朗诵 关于警察的诗朗诵

下面是小编为大家精心整理的疫情防控赞美警察诗朗诵关于警察的诗朗诵文章,供大家阅读参考。疫情防控赞美警

纳税人满意度调查存在不足及对策探讨 提升纳税人满意度的方式方法有哪些

下面是小编为大家精心整理的纳税人满意度调查存在不足及对策探讨提升纳税人满意度的方式方法有哪些文章,供大家阅读参考。纳

小学思想品德教育面临的问题及对策

摘要:小学思想品德课程是小学教育教学过程中不可或缺的一门综合性课程,它对学生良好品德的形成具有重要影

2020党支部班子查摆问题清单及整改措施 农村党支部问题清单

下面是小编为大家精心整理的2020党支部班子查摆问题清单及整改措施农村党支部问题清单文章,供大家阅读参

消防安全检查简报 派出所校园消防安全检查简报

下面是小编为大家精心整理的消防安全检查简报派出所校园消防安全检查简报文章,供大家阅读参考。简报第2期申扎县中学

2021教师党员年度个人总结8篇

2021教师党员年度个人总结8篇2021教师党员年度个人总结篇1敬爱的党组织:我是一个普通年轻的人民