基于fpga芯片的hdlc协议控制器的制造方法

文档序号:9508480阅读:579来源:国知局
基于fpga芯片的hdlc协议控制器的制造方法
【技术领域】
[0001]本发明涉及一种HDLC(高级数据链路控制)协议控制器,具体涉及一种基于FPGA芯片的HDLC协议控制器。
【背景技术】
[0002]随着城市化进程的加快,城市聚集的社会财富和人口越来越多,由于道路资源的低效率利用以及市区道路的结构性缺陷等原因,使得城市交通问题日益突出。解决城市的交通问题,发展轨道交通则提上了日程,正是在解决长期交通堵塞的有较好的效果,轨道交通得到了较大的发展。
[0003]网络通讯是地铁列车正常运行重要的一环,如果网络通讯工作不正常,上位机就无法对列车各设备实时传达命令及对设备状态进行监控,整个列车设备也无法协同工作,因此列车网络通讯的性能必须可靠。
[0004]目前列车网络通信总线主要有MVB、CANOPEN、RS-485等,其中RS-485网络主要是以HDLC协议控制为基础实现的。HDLC协议目前是借助于HDLC硬件协议芯片来完成,如摩托罗拉公司的MC92460、Intel的82530等。使用HDLC硬件协议芯片存在灵活性差,片内数据存储器容量有限等缺陷,比如当需要扩大数据缓存的容量时,只能对芯片再外接存储器或其他电路,导致系统规模增大。另外,使用HDLC硬件协议芯片还会增大印刷线路板的面积,不利于设备的小型化,带来成本较高的问题。

【发明内容】

[0005]本发明的目的是提供一种基于FPGA (现场可编程门阵列)芯片的HDLC协议控制器,解决了现有的协议控制器需要借助HDLC硬件协议芯片,使用灵活性差、存储容量有限的技术问题,有利于系统规模小型化,降低设备成本。
[0006]本发明的技术解决方案是:所提供的HDLC协议控制器集成于FPGA芯片上,包括HDLC处理模块、DSP接口模块、双端口 RAM ;HDLC处理模块与通讯网络主设备相连,用于接收、处理和发送HDLC帧信息;DSP接口模块与DSP或者CPU相连,用于转换DSP总线时序与控制器内部读写时序;双端口 RAM分别与HDLC处理模块和DSP接口模块相连,用于接收并暂存通讯网络主设备和DSP间的HDLC帧信息。
[0007]上述控制器还包括Flash接口模块;Flash接口模块分别与HDLC处理模块和Flash相连,用于转换Flash读写时序与HDLC处理模块对Flash的操作时序。
[0008]上述控制器还包括寄存器模块;寄存器模块分别与HDLC处理模块和DSP接口模块相连,用于标识HDLC协议控制器与DSP之间触发的事件。
[0009]上述寄存器模块包括状态寄存器和控制寄存器;状态寄存器用于标识与HDLC协议控制器工作状态有关的事件;控制寄存器用于标识DSP控制HDLC协议控制器的事件。
[0010]上述控制器还包括附加数据区;附加数据区分别与HDLC处理模块和DSP接口模块相连,用于传递DSP和HDLC处理模块之间通信所用到的附加数据。
[0011]上述附加数据区包括第二寄存器和第二双端口 RAM。
[0012]上述控制器还包括循环缓存队列;循环缓存队列与HDLC处理模块相连,用于保存从HDLC处理模块发往通讯网络主设备的实时数据。
[0013]本发明的有益效果:
[0014](1)本发明使用FPGA芯片来实现HDLC功能,可以反复进行编程,能够兼顾速度和灵活性,并能多路并行处理,实时性能够预测和仿真;同时还具有设计开发周期短、设计制造成本低、可实时在线检验的优点。
[0015](2)本发明首次在列车网络通讯系统中采用FPGA技术设计HDLC协议控制器,采用这种方法实现的多通道高性能HDLC协议控制器,具有体积小、功耗低的优点,而且可以均衡整个系统的负荷,保证网络通讯的可靠性。
【附图说明】
[0016]图1为本发明较佳实施例的系统框图;
[0017]图2为本发明使用时的主从设备连接图;
【具体实施方式】
[0018]图1为本发明较佳实施例的系统框图,其中,各模块的主要功能如下:
[0019](l)HDLC 处理模块
[0020]该模块主要负责从接收到的HDLC帧中提取帧信息字段的内容或者把帧信息封装成HDLC帧格式并发送;
[0021](2)DSP 接口模块
[0022]该模块负责DSP总线时序与控制器内部RAM和寄存器读写时序的转换。
[0023](3) Flash 接口模块
[0024]该模块负责Flash读写时序与帧处理模块对Flash操作时序的转换。
[0025](4)双端口 RAM (读、写)
[0026]该双端口 RAM包括RAM (读)和RAM (写),RAM (读)负责暂存HDLC处理模块从主设备接收到的帧信息(info),等待DSP读取;RAM(写)负责暂存DSP要发送的帧信息,由HDLC处理模块读取。
[0027](5)附加数据区(读、写)
[0028]附加数据区主要用来传递DSP和HDLC控制器之间通信所用到的附加数据,由寄存器(传递的附加数据较小时用寄存器)和双端口 RAM(传递数据较大时用RAM)组成,包括附加数据区(读)和附加数据区(写)。需要由DSP读取的附加数据有:上电后检测到的Flash里保存的故障信息,帧统计信息;
[0029](6)寄存器模块
[0030]寄存器模块与附加数据区的区别在于,前者只负责保存指示信号,寄存器中的一个比特对应着一个事件的触发,例如故障发生指示,追踪指示等。寄存器模块分为状态寄存器、控制寄存器。状态寄存器用于标识与HDLC控制器工作状态有关的事件,比如RAM (读)数据准备就绪、上电后检测到有故障信息。控制寄存器用于标识DSP控制HDLC控制器的事件,如RAM(写)数据就绪、故障发生,追踪历史数据。
[0031](7)循环缓存队列(FIFO)
[0032]该模块用来保存从设备发往主设备的实时数据,该FIFO最多保存150组数据。
[0033]图2为网络通讯上位机和下位机的接口电路图,图中ATI为通讯网络的主设备,以FPGA为核心的硬件电路为列车网络通讯的从设备。本HDLC控制器是利用FPGA硬件实现HDLC帧的发送和接收,从而完成与ATI (主设备)的通信,ATI与从设备之间通过RS-485接口进行通信,通信过程使用HDLC协议规范。HDLC控制器具体设计需求如下:
[0034](l)ATI与设备之间通过RS-485接口传输HDLC数据帧。
[0035](2)通信方式:主站(ATI)采用轮询方式访问从站设备。
[0036](3)传输链路:
[0037](a)屏蔽双绞线和地线(ATI侧)。
[0038](b)多设备菊花链互连。
[0039](c)点到点连接。
【主权项】
1.一种基于FPGA芯片的HDLC协议控制器,其特征在于:所述控制器集成于FPGA芯片上;控制器包括HDLC处理模块、DSP接口模块、双端口 RAM ; HDLC处理模块与通讯网络主设备相连,用于接收、处理和发送HDLC帧信息; DSP接口模块与DSP或者CPU相连,用于转换DSP总线时序与控制器内部读写时序; 双端口 RAM分别与HDLC处理模块和DSP接口模块相连,用于接收并暂存通讯网络主设备和DSP间的HDLC帧信息。2.根据权利要求1所述的基于FPGA芯片的HDLC协议控制器,其特征在于:还包括Flash接口模块; Flash接口模块分别与HDLC处理模块和Flash相连,用于转换Flash读写时序与HDLC处理模块对Flash的操作时序。3.根据权利要求1或2所述的基于FPGA芯片的HDLC协议控制器,其特征在于:还包括寄存器模块; 寄存器模块分别与HDLC处理模块和DSP接口模块相连,用于标识HDLC协议控制器与DSP之间触发的事件。4.根据权利要求3所述的基于FPGA芯片的HDLC协议控制器,其特征在于:所述寄存器模块包括状态寄存器和控制寄存器;状态寄存器用于标识与HDLC协议控制器工作状态有关的事件;控制寄存器用于标识DSP控制HDLC协议控制器的事件。5.根据权利要求4所述的基于FPGA芯片的HDLC协议控制器,其特征在于:还包括附加数据区; 附加数据区分别与HDLC处理模块和DSP接口模块相连,用于传递DSP和HDLC处理模块之间通信所用到的附加数据。6.根据权利要求5所述的基于FPGA芯片的HDLC协议控制器,其特征在于:所述附加数据区包括第二寄存器和第二双端口 RAM。7.根据权利要求6所述的基于FPGA芯片的HDLC协议控制器,其特征在于:还包括循环缓存队列; 循环缓存队列与HDLC处理模块相连,用于保存从HDLC处理模块发往通讯网络主设备的实时数据。
【专利摘要】本发明涉及一种HDLC(高级数据链路控制)协议控制器,具体涉及一种基于FPGA芯片的HDLC协议控制器。控制器集成于FPGA芯片上,包括HDLC处理模块、DSP接口模块、双端口RAM;HDLC处理模块与通讯网络主设备相连,用于接收、处理和发送HDLC帧信息;DSP接口模块与DSP或者CPU相连,用于转换DSP总线时序与控制器内部读写时序;双端口RAM分别与HDLC处理模块和DSP接口模块相连,用于接收并暂存通讯网络主设备和DSP间的HDLC帧信息。本发明解决了现有的协议控制器需要借助HDLC硬件协议芯片,使用灵活性差、存储容量有限的技术问题,有利于系统规模小型化,降低设备成本。
【IPC分类】H04L12/40, H04L29/06
【公开号】CN105262659
【申请号】CN201510737866
【发明人】岳文开, 祁国俊, 杨伟, 李康乐, 李航, 刘辉
【申请人】日立永济电气设备(西安)有限公司
【公开日】2016年1月20日
【申请日】2015年11月2日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1