适用于多种端口的数据接收存储转发装置的制作方法

文档序号:7744968阅读:156来源:国知局
专利名称:适用于多种端口的数据接收存储转发装置的制作方法
技术领域
本发明涉及适用于多种串行总线通信方式端口的数据接收存储转发装置,属于通信电子领域。
背景技术
目前,针对数据接收、存储、转发的装置有很多种。就其接收方式来说,包括有线 接收和无线接收两种,无线接收一般抗干扰性弱,有线数据接收种类繁杂,常的有RS-232 总线、RS-422总线、RS-485总线、CAN总线等接收方式。从存储方式来说,存储器一般采用 FIFO、SRAM、SDRAM、ROM、FLASH、固态盘等存储介质来实现。从转发方式来说,一般采用串行 通讯实现,常用的有USB总线、RS-422总线、RS-485总线。就目前存在的有线数据接收存储转发装置进行归纳和总结,此类装置没有形成统 一的、标准的设计原则,通用性和兼容性较差。

发明内容
本发明目的是为了解决现有有线串行数据接收存储转发装置不具有通用性的问 题,提供了一种适用于多种端口的数据接收存储转发装置。本发明包括FPGA、接收端口电路、端口选择电路、RS-232单元、RS-422单元、 RS-485单元、存储单元和转发单元,
接收端口电路的输出端与端口选择电路的输入端相连,端口选择电路的RS232串行端 口通过RS-232单元与FPGA的RS232串行端口相连,端口选择电路的RS422串行端口通过 RS-422单元与FPGA的RS422串行端口相连,端口选择电路的RS485串行端口通过RS-485 单元与FPGA的RS485串行端口相连,FPGA的控制输出端与端口选择电路的受控端相连, FPGA的数据存储输入输出端与存储单元的输入输出端相连, FPGA的转发或存储控制信号输出端与转发单元的转发或存储控制信号输入端相连。本发明的优点
针对现有数据接收存储转发装置不具有通用性的问题,提出了一种集数据接收存储转 发于一体的多功能装置。多功能装置的多功能性主要体现在一下几点
1、多种通讯数据接收功能。该装置可以接收RS-232、RS-422及RS-485三种电平的差 分数据;
2、多种通讯方式。通过可编程逻辑器件的Verilog语言编程,可实现同步/异步选择、 HDLC协议、通讯速率可设置;
3、多种数据转发。数据转发可通过USB接口在线转发,适合较近的距离。由可通过CF 离线转发,即通过读卡器直接获取CF卡内的数据,其优点是没有距离的限制。


图1是本发明结构示意图,图2是FPGA内部逻辑框图,图3是异步通讯的IP核原理图,图4是HDLC核的原理图,图5是CF卡逻辑框图,图6是本发明工作流程图。
具体实施例方式具体实施方式
一下面结合图1至图6说明本实施方式,本实施方式包括FPGA1、 接收端口电路2、端口选择电路3、RS-232单元4、RS-422单元5、RS_485单元6、存储单元7 和转发单元8,
接收端口电路2的输出端与端口选择电路3的输入端相连,端口选择电路3的RS232 串行端口通过RS-232单元4与FPGAl的RS232串行端口相连,端口选择电路3的RS422串 行端口通过RS-422单元5与FPGAl的RS422串行端口相连,端口选择电路3的RS485串行 端口通过RS-485单元6与FPGAl的RS485串行端口相连,FPGAl的控制输出端与端口选择 电路3的受控端相连,
FPGAl的数据存储输入输出端与存储单元7的输入输出端相连,
FPGAl的转发或存储控制信号输出端与转发单元8的转发或存储控制信号输入端相连。HDLC (英文全称HighlevelDataLinkControl,高级数据链路控制),HDLC是一个在 同步网上传输数据、面向位的数据链路层协议。本实施方式所述装置能接收三种类型的数据,分别为RS-232、RS-422及RS-485, 端口选择电路3在FPGAl的控制下只能选择其中一种类型的数据,与其对应的接收单元相 连,即RS-232类型数据被接收端口电路2接收后,通过端口选择电路3进入RS-232单元4 ; RS-422类型数据被接收端口电路2接收后,通过端口选择电路3进入RS-422单元5 ;RS-485 类型数据被接收端口电路2接收后,通过端口选择电路3进入RS-485单元6,RS-232单元 4、RS-422单元5和RS-485单元6采用标准的电平转换芯片实现差分电平到TTL电平的转 换,RS-232单元4、RS-422单元5或RS-485单元6被选中之后开始接收数据,即实现差分 电平到TTL电平的转换。转换后的TTL电平进入FPGAl,在FPGAl内通过Verilog语言编程 实现数据的串并转换、数据处理及数据存储。存储单元7采用CF卡实现,CF卡容量大、体积小、抗震抗冲击能力强,是目前大容 量数据存储较为流行的产品,CF卡的控制单元通过FPGAl实现。当数据接收完成之后,通 过转发单元8实现数据的转发,转发给计算机9,转发单元8采用计算机普遍使用的USB接 口,该接口通用性强,数据传输速度快。转发单元8的控制部分在FPGAl内实现,通过硬件 描述语言实现数据的转发,同时还实现对接收端口选择、通讯协议、通讯速率、软复位的设 置等功能。FPGAl采用Altera公司的EP2C70F系列芯片。接收端口电路2采用DB-9连接器。端口选择电路3采用多路选择器。转发单元8采用USB器件CY7C68013。硬件设计的核心部分为FPGAl内部的逻辑设计,该部分采用Verilog语言实现。主 要完成异步通讯协议(主要针对RS_232\422)、同步HDLC通讯协议逻辑(RS422\485)及数据存储的逻辑控制功能。FPGA内部的逻辑框图如图2所示。FPGAl包括串并转换单元11、数据处理单元12、存储控制单元13和USB控制单元 14,串并转换单元11的三个输入端分别接收RS-232单元4输出的信号、RS-422单元5输 出的信号和RS-485单元6输出的信号,串并转换单元11的输出端与数据处理单元12的输 入端相连,数据处理单元12的输出端与存储控制单元13的输入端相连,存储控制单元13 的数据存储输入输出端与存储单元7的输入输出端,存储控制单元13的转发输出端与USB 控制单元14的输入端相连,USB控制单元14的控制输出端与串并转换单元11的受控端相 连,USB控制单元14的转发或存储端与转发单元8的转发或存储端相连。存储控制单元13 (基于SOPC的CF控制单元)
CF控制单元基于SOPC技术实现,如图5所示。第一部分为接口部分,与系统外部的接 口——输入FIFO、输出FIFO、命令/状态寄存器,其功能是完成外部数据的输入和输出、接 收外部命令以及向外部发送状态参数;与存储区的接口——CF控制,其功能是完成对各路 存储模块的读写操作。第二部分为控制部分,其功能是初始化存储区及接口部分、向各存储 模块发送各种命令及发送和接收数据。CPU是整个系统的核心,负责协调控制各个模块的工 作。在系统启动以后,CPU的主要工作有系统初始化、对数据进行编码变换处理、将数据写 入CF卡。系统初始化工作主要进行通用寄存器设置、定时器设置、中断设置、CF卡初始化。 CPU对外部数据按一定格式进行编码,编码后的数据暂存于外部RAM中的缓冲区中。CPU在 主程序中循环查询缓冲区数据长度,当数据量大于等于512bytes时,,就将512bytes的数 据写入CF卡的一个扇区(512bytes/Sector)。串并转换单元11包括第一多路选择器11-1、第二多路选择器11-2、异步核11_3 和HDLC核11-4,第一多路选择器11-1上有的三个串行数据端口,分别为RS-232串行端口、 RS-422串行端口和RS-485串行端口,第一多路选择器11_1的异步信号输出端与异步核 11-3的输入端相连,异步核11-3的输出端与第二多路选择器11-2异步信号输入端相连,第 一多路选择器11-1的同步信号输出端与HDLC核11-4的输入端相连,HDLC核11_4的输出 端与第二多路选择器11-2同步信号输入端相连,USB控制单元14的转发或存储控制输出 端同时与第一多路选择器11-1的控制信号输入端、第二多路选择器11-2的控制信号输入 端相连、异步核11-3的控制信号输入端和HDLC核11-4的控制信号输入端连接,其中异步 核11-3的控制信号输入端接收到的控制信号包括波特率控制信号、校验控制信号、停止位 控制信号和字节长度控制信号,HDLC核11-4的控制信号输入端接收到的制信号是速率设 置控制信号。异步核11-3 (异步通讯IPCore) 接收RS-232和异步RS-422类型数据。异步通讯协议在FPGAl内以可编程逻辑实现,通讯协议具有较强的灵活性,包括通讯波特率,停止位,校验位,数据位等都是可设置的,图3是FPGAl内异步通讯协议的实现 方法。通讯协议的核心是实现串行输入数据的接收。当复位及起始控制器给出允许接收 命令后,接收数据编码器根据用户设置,确定接收数据的位数为n,起始位检测器不断检测 是否有起始位输入,当检测到起始位后,串行数据就在约定的波特率时钟下输入η位移位 寄存器,当输入位数满足η位时,接收数据编码器从移位寄存器中将并行数据读出,并去掉结束位,对校验位进行校验,然后将有限数据位写入接收缓冲区。
HDLC 核 11-4 (HDLC 通讯 IPCore) 接收同步RS-422和RS-485类型数据。HDLC协议的实现采用在FPGAl内以可编程逻辑实现,HDLC协议的实现包括发送器 和接收器。为满足用户需要,在设计中提供最大的灵活性,包括帧头、帧尾数目,传输速率, 本地地址等都是可以通过寄存器设置的。HDLC协议接收器的构成如图4所示。接收器包括 ‘7E’检测器,去O控制器,串并转换器,CRC校验器,接收数据编码器,设置寄存器,状态寄存 器,接收缓冲区。串行输入数据在以同步时钟的速度输入到‘7E’检测器,当7E检测器检测到有效 帧头后,使能去O控制器,经过去O的串行数据进入串并转换器和CRC校验器,串并转换器 的一个并行输出进入地址判读器,以判读当前数据是否为有效帧,当该帧有效时,接收数据 编码器从串并转换器读入并行数据后存入接收缓冲区,并更新状态寄存器。CRC校验器对输 入的串行数据进行实时判读,在帧尾将判读结果通过接收数据编码器发送到状态寄存器。在USB控制单元14的控制下,第二多路选择器11-2只选择让一路数据输出给数 据处理单元12,数据处理单元12为缓存,并通过存储控制单元13将接收的一路数据存储在 存储单元7中,当需要此数据时,将存储在存储单元7中的数据通过USB控制单元输出给计 算机9。参见图6说明本发明装置的工作流程
一、装置上电,连接至计算机的USB接口,进行硬件初始化;
二、通过上位机软件选择接收数据的端口;
三、选择端口后进行通讯设置同步/异步设置,异步设置包括RS-232通讯和RS-422 通讯,需要设置数据的波特率、校验方式、停止位长度、字节长度,同步设置包括通讯速率设 置、帧长设置、帧头个数设置;
四、等待数据;
五、数据接收按照相应的协议进行数据接收;
六、数据进行串并转换、数据处理将串行数据按照既定的协议进行处理,转换为并行 数据,去掉多余的信息;
七、数据存储基于SOPC技术将数据存储到CF卡中;
八、数据接收结束。九、进行数据转发功能一种是通过USB接口进行数据转发,另外一种方式就是通 过CF读卡器读取CF卡中的数据至计算机中进行处理;
十、完成数据接收、存储、转发功能。
权利要求
适用于多种端口的数据接收存储转发装置,其特征在于,它包括FPGA(1)、接收端口电路(2)、端口选择电路(3)、RS-232单元(4)、RS-422单元(5)、RS-485单元(6)、存储单元(7)和转发单元(8),接收端口电路(2)的输出端与端口选择电路(3)的输入端相连,端口选择电路(3)的RS232串行端口通过RS-232单元(4)与FPGA(1)的RS232串行端口相连,端口选择电路(3)的RS422串行端口通过RS-422单元(5)与FPGA(1)的RS422串行端口相连,端口选择电路(3)的RS485串行端口通过RS-485单元(6)与FPGA(1)的RS485串行端口相连,FPGA(1)的控制输出端与端口选择电路(3)的受控端相连,FPGA(1)的数据存储输入输出端与存储单元(7)的输入输出端相连,FPGA(1)的转发或存储控制信号输出端与转发单元(8)的转发或存储控制信号输入端相连。
2.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于, FPGA (1)包括串并转换单元(11 )、数据处理单元(12)、存储控制单元(13)和USB控制单元 (14),串并转换单元(11)上有三个串行数据端口,分别为RS-232串行端口、RS-422串行端 口和RS-485串行端口,串并转换单元(11)的并行数据端口与数据处理单元(12 )的并行数 据端口相连,数据处理单元(12)的输出端与存储控制单元(13)的输入端相连,存储控制单 元(13)的数据存储输入输出端与存储单元(7)的输入输出端相连,存储控制单元(13)的串 行数据转发端口与USB控制单元(14)的串行数据输入端相连,USB控制单元(14)的转发或 存储控制输出端同时与串并转换单元(11)的受控端和转发单元(8)的转发或存储控制信 号输入端相连。
3.根据权利要求2所述的适用于多种端口的数据接收存储转发装置,其特征在于,串 并转换单元(11)包括第一多路选择器(11-1)、第二多路选择器(11-2)、异步核(11-3)和 HDLC核(11-4),第一多路选择器(11-1)上有的三个串行数据端口,分别为RS-232串行端 口、RS-422串行端口和RS-485串行端口,第一多路选择器(11-1)的异步信号输出端与异步 核(11-3)的输入端相连,异步核(11-3)的输出端与第二多路选择器(11-2)异步信号输入 端相连,第一多路选择器(11-1)的同步信号输出端与HDLC核(11-4)的输入端相连,HDLC 核(11-4)的输出端与第二多路选择器(11-2)同步信号输入端相连,USB控制单元(14)的 转发或存储控制输出端同时与第一多路选择器(11-1)的控制信号输入端、第二多路选择器 (11-2)的控制信号输入端相连、异步核(11-3)的控制信号输入端和HDLC核(11_4)的控制 信号输入端连接,其中异步核(11-3)的控制信号输入端接收到的控制信号包括波特率控制 信号、校验控制信号、停止位控制信号和字节长度控制信号,HDLC核(11-4)的控制信号输 入端接收到的制信号是速率设置控制信号。
4.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于, FPGA (1)采用Altera公司的EP2C70F系列芯片。
5.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于,接 收端口电路(2 )采用DB-9连接器。
6.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于,端 口选择电路(3)采用多路选择器。
7.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于,存储单元(7)采用CF卡。
8.根据权利要求1所述的适用于多种端口的数据接收存储转发装置,其特征在于,转 发单元(8)采用USB器件CY7C68013。
全文摘要
适用于多种端口的数据接收存储转发装置,属于通信电子领域,本发明为解决现有数据接收存储转发装置不具有通用性的问题。本发明装置的接收端口电路的输出端连接端口选择电路,端口选择电路的RS232串行端口通过RS-232单元与FPGA的RS232串行端口相连,端口选择电路的RS422串行端口通过RS-422单元与FPGA的RS422串行端口相连,端口选择电路的RS485串行端口通过RS-485单元与FPGA的RS485串行端口相连,FPGA的控制输出端连接端口选择电路的受控端,FPGA的数据存储输入输出端连接存储单元的输入输出端,FPGA的转发或存储控制信号输出端与转发单元的转发或存储控制信号输入端相连。
文档编号H04L29/08GK101808027SQ201010136948
公开日2010年8月18日 申请日期2010年3月31日 优先权日2010年3月31日
发明者刘大同, 周建宝, 彭宇, 潘大为, 王少军, 赵光权 申请人:哈尔滨工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1