CN110347622A - 一种多接口协议双向转换装置及实现方法 - Google Patents
一种多接口协议双向转换装置及实现方法 Download PDFInfo
- Publication number
- CN110347622A CN110347622A CN201910487194.5A CN201910487194A CN110347622A CN 110347622 A CN110347622 A CN 110347622A CN 201910487194 A CN201910487194 A CN 201910487194A CN 110347622 A CN110347622 A CN 110347622A
- Authority
- CN
- China
- Prior art keywords
- fpga
- module
- agreement
- protocol
- conversion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种多接口协议双向转换装置及实现方法,本发明为实现多种不同应用系统之间的数据通信,打通多种不同通信协议间的数据通路,设计一种多接口协议双向转换装置,以FPGA作为核心控制平台,通过Verilog语言编程设计支持RS232、RS485、SPI、IIC四种常用通信协议与TCP/IP协议之间的相互转换模块。
Description
技术领域
本发明具体涉及一种多接口协议双向转换装置及实现方法,属于各类接口协议转换技术领域。
背景技术
数据通信与传输在物联网中的作用尤为重要,目前流行多种数据通信协议标准,由于竞争的激励还没有哪一种协议或是几种协议可以统一整个市场,这些通信协议在很多的领域都扮演着重要的角色。这样就导致海量传感器的不同通信标准、多样的通信协议以及协议的互不兼容性大大降低了设备之间的操作性与连通性。目前针对协议转换系统,在架构设计上并没有突破,大多协议转换都是两种协议之间的转换,在多协议转换的领域,并没有对其中所涉及的关键技术路线进行深入的研究。在目前的有研究的利用有限状态机实现多种协议转换,其所实现的是不同现场总线的之间的转换,其并没有涉及通信协议的领域。设计一种多接口协议双向转换装置,实现常见的RS232、RS485、SPI和IIC间相互转换,将改变端到端的单一传输模式,具有很好的实际意义。
发明内容
技术问题:本发明目的是设计一种多接口协议双向转换装置及实现方法,打通多种不同通信协议间的数据通路,实现对多种常用接口协议设备间数据通信的无缝结合,提高通信效率,降低成本。
技术方案如下:
(1)以Altera公司FPGA作为控制核心单元,将RS232、RS485、SPI、IIC四种协议接口模块分别与FPGA外部IO接口相连;(2)结合FPFA内部的IP核资源建立协议有效数据专用存储空间组,并通过硬件设计语言Verilog模块化设计多协议转换模块,完成不同协议之间的相互转换;(3)本发明提供统一的外部时钟;(4)本发明通过组合按键实现协议转换参数配置,可根据实际需求灵活配置不同协议、不同参数;(5)TFT显示模块显示参数信息,避免参数配置错误。本发明可灵活实现RS232、RS485、SPI、IIC四种协议中任意协议间的单向、双向数据转换,实现数据无缝传输。
本发明以FPGA作为控制核心单元,将多协议接口模块与FPGA专用外部接口相连,充分利用FPGA可编程的优点,利用FPGA内部的相关时钟管理模块、存储IP核资源再结合硬件设计语言Verilog设计的协议转换模块提取每种协议的有效数据,并完成不同协议之间的相互转换。
多协议间转换工作原理如图3所示:(1)在FPGA内部通过编程分别为每种接口协议设计数据接受功能模块,完成有效数据的提取;(2)在FPGA内部为每种协议单独建立专用有效数据存储单元,缓存和独立存放不同接口协议有效数据;为存放不同协议数据的存储单元进行专门编址,并为每一个存储单元设置状态控制位,用来表明当前存储单元的存储状态和数据更新情况;(3)通过编程为每种接口协议设计数据发送模块,根据需要发送的数据协议来源,通过专门协议地址寻址取出要发送的有效数据,完成数据打包协议转换发送。
具体如下:
1、系统硬件电路设计
硬件电路设计主要包括:FPGA及各个功能模块外围电路设计,FPGA与四种协议接口模块的接口电路设计、电源模块设计、显示模块设计、协议转换参数设置电路设计,(1)选用FPGA作为装置的主控单元,FPGA外围电路设计,电源模块提供外接5V电源,另外还包括3.3V、1.5V电源电路,统一使用一个外部时钟源;(2)协议转换参数设置利用五个拨码开关P、P3、P2、P1、P0分别连接至FPGA五个通用I/O口;(3)RS232通信接口的2个端子RX和TX分别连接至FPGA的两个I/O;(3)RS485通信接口通过MAX485芯片转换,MAX485的RO、DI分别连接至FPGA的2个I/O,RE和DE短接至FPGA的一个I/O,MAX485的A、B引脚连接2个端子以用于外接485通信模块;(4)SPI通信接口的4个端子SPI_SCLK、SPI_CS、SPI_MOSI、SPI_MISO分别接至FPGA的4个I/O;(5)IIC通信接口的2个端子SCL、SDA分别接至FPGA的2个I/O;(6)TFT显示屏与FPGA连接,用于显示参数配置情况。
2、本发明装置实现方法
通过Quartus II开发环境建立工程,利用FPGA内部的DCM时钟管理模块产生各种协议转换所需时钟,并通过内部的RAM IP核生成多个内部RAM存储单元,分别用于独立存放每种协议的有效数据。利用硬件设计语言Verilog设计多协议转换功能,主要包括参数配置模块的Verilog设计、协议转换功能的Verilog设计。步骤如下:
步骤1:运用Verilog语言设计参数配置模块,在时钟上升沿触发实时读取五个拨码开关P、P3、P2、P1、P0的状态,参照表1拨码开关参数设置功能表,通过case语句判断确定协议的转换参数,例如,当P、P3、P2、P1、P0的状态为10000时,实现RS232向RS485的单向转换;当P、P3、P2、P1、P0的状态为00101时,实现RS232与SPI的双向转换。
表1
步骤2:调用RAM IP核建立4个专用有效数据存储单元,如图3所示,为每个存储单元进行专门编址以存放不同协议有效数据,为每一个存储单元设置状态控制位,用来表明当前存储单元的存储状态和数据更新情况;通过Verilog编程分别设计RS232、RS485、SPI、II四种接口协议数据接受功能模块,根据步骤1确定的数据输入端接口协议,提取相应接受端口有效数据存放至与该协议地址对应的RAM中;
步骤3:通过Verilog语言编程设计RS232、RS485、SPI、II四种接口协议数据发送功能模块,根据步骤1确定的数据输入端和输出端接口协议,从输入端协议RAM地址中提取有效数据,并将提取的有效数据传递给相应输出端口的发送功能模块,完成数据打包协议转换发送。以A协议与B协议间相互转换为例,设计转换功能的转换原理如图4所示:A接口协议数据向B接口协议转换过程为:在FPGA内部,通过A接口协议接受模块完成A协议数据拆包提取有效数据存入到指向A协议地址的RAM中,B接口协议发送模块从A地址中取出A协议有效数据,进行B协议打包发送;B协议数据向A接口协议转换同理可得。
有益效果
该多接口协议双向转换装置可实现物联网中不同应用系统之间的数据通信,打通多种不同通信协议间的数据通路。提高接口间不同通信协议间的相互兼容性和连通性,实现不同接口设备间的无缝连接。本发明采用FPGA作为主控单元,充分利用了FPGA的可编程、并行、多IP核的特点,简化外部硬件电路,降低分立器件的数量,抗干扰强,稳定性高;并行特点可保证协议转换的多个任务模块同步并发执行,提高转换效率;可编程特点提高了装置的灵活性和可扩展性。
附图说明
图1为本发明多接口协议转换装置结构图;
图2为本发明多协议转换设计方法图;
图3为多接口协议转换装置硬件设计框图;
图4为两个不同接口协议双向转换过程图。
具体实施方式
以下结合附图具体说明本发明的技术方案。
本发明是一种多接口协议双向转换装置,以FPGA作为控制核心单元,实现RS232、RS485、SPI和IIC四种常见接口协议间相互转换。
步骤1)准备构建多接口协议转换装置结构图
如图1所示:多接口协议转换装置包括:RS232、RS485、SPI和IIC外部接口、FPGA控制单元、协议转换参数配置模块、TFT显示模块、电源模块和时钟管理模块。首先通过协议转换参数配置模块设置协议转换参数,然后通过接口将数据采集到FPGA内部,通过DCM时钟管理模块将外部时钟转换得到各种协议转换所需时钟,通过FPGA编程构建多协议转换模块,完成不同协议之间的相互转换。
步骤2)协议转换参数灵活配置
利用五个拨码开关P、P3、P2、P1、P0分别连接至FPGA五个通用I/O口;参照表1,通过设置五个拨码开关P、P3、P2、P1、P0的状态,灵活配置不同协议间单向和双向转换。例如,当P、P3、P2、P1、P0的状态为10000时,实现RS232向RS485的单向转换;当P、P3、P2、P1、P0的状态为00101时,实现RS232与SPI的双向转换。本发明可实现18种状态切换。
步骤3)确定多协议间转换方法
多协议间转换工作方法如图2所示:(1)在FPGA内部通过编程分别为每种接口协议设计数据接受功能模块,完成有效数据的提取;(2)在FPGA内部为每种协议单独建立专用有效数据存储单元,缓存和独立存放不同接口协议有效数据;为存放不同协议数据的存储单元进行专门编址,并为每一个存储单元设置状态控制位,用来表明当前存储单元的存储状态和数据更新情况;(3)通过编程为每种接口协议设计数据发送模块,根据需要发送的数据协议来源,通过专门协议地址寻址取出要发送的有效数据,完成数据打包协议转换发送。
步骤4)多接口协议转换装置硬件设计
硬件电路设计主要包括:FPGA及各个功能模块外围电路设计,FPGA与四种协议接口模块的接口电路设计、电源模块设计、显示模块设计、协议转换参数设置电路设计。如图3所示:(1)选用FPGA作为装置的主控单元,FPGA外围电路设计,电源模块提供外接5V电源,另外还包括3.3V、1.5V电源电路,统一使用一个外部时钟源;(2)协议转换参数设置利用五个拨码开关P、P3、P2、P1、P0分别连接至FPGA五个通用I/O口;(3)RS232通信接口的2个端子RX和TX分别连接至FPGA的两个I/O;(3)RS485通信接口通过MAX485芯片转换,MAX485的RO、DI分别连接至FPGA的2个I/O,RE和DE短接至FPGA的一个I/O,MAX485的A、B引脚连接2个端子以用于外接485通信模块;(4)SPI通信接口的4个端子SPI_SCLK、SPI_CS、SPI_MOSI、SPI_MISO分别接至FPGA的4个I/O;(5)IIC通信接口的2个端子SCL、SDA分别接至FPGA的2个I/O;(6)TFT显示屏与FPGA连接,用于显示参数配置情况。
步骤5)多接口协议双向转换装置功能设计
利用FPGA内部的DCM时钟管理模块产生各种协议转换所需时钟,并通过内部的RAMIP核生成多个内部RAM存储单元,分别用于独立存放每种协议的有效数据。利用硬件设计语言Verilog设计多协议转换功能,主要包括参数配置模块的Verilog设计、协议转换功能的Verilog设计。(1)参数配置模块的设计通过判断五个拨码开关P、P3、P2、P1、P0的状态,参照表1拨码开关参数设置功能表,确定协议的转换参数,用case语句实现;(2)协议转换功能的转换原理如图4所示:两个不同接口协议双向转换原理以A接口协议和B接口协议为例,A接口协议数据向B接口协议转换过程为:在FPGA内部,通过A接口协议接受模块完成A协议数据拆包提取有效数据存入到指向A协议地址的RAM中,B接口协议发送模块从A地址中取出A协议有效数据,进行B协议打包发送;B协议数据向A接口协议转换同理可得。
Claims (3)
1.一种多接口协议双向转换装置及实现方法,其特征在于,包括以FPGA作为核心控制平台,通过Verilog语言编程设计支持RS232、RS485、SPI、IIC四种常用通信协议与TCP/IP协议之间的相互转换模块,具体如下:
1)将RS232、RS485、SPI、IIC四种协议接口模块分别与FPGA外部IO接口相连;四种协议接口模块包括接口电路、电源模块、显示模块、协议转换参数设置电路;
2)结合FPFA内部的IP核资源建立协议有效数据专用存储空间组,并通过硬件设计语言Verilog模块化设计多协议转换模块,完成不同协议之间的相互转换;
3)提供统一的外部时钟;
4)通过组合按键实现协议转换参数配置,根据实际需求灵活配置不同协议间单向或双向转换;
5)TFT显示模块显示参数信息,避免参数配置错误。
2.如权利要求1所述的装置,其特征在于,所述以FPGA作为核心控制平台包括:
选用FPGA作为装置的主控单元,FPGA外围电路设计包括电源模块提供外接5V电源,还包括3.3V、1.5V电源电路,统一使用一个外部时钟源;
所述2)、4)中,通过协议转换的协议转换参数设置利用五个拨码开关P、P3、P2、P1、P0,分别连接至FPGA五个通用I/O口;
所述1)中RS232通信接口的2个端子RX和TX分别连接至FPGA的两个I/O;RS485通信接口通过MAX485芯片转换,MAX485的RO、DI分别连接至FPGA的2个I/O,RE和DE短接至FPGA的一个I/O,MAX485的A、B引脚连接2个端子以用于外接485通信模块;
所述SPI通信接口的4个端子SPI_SCLK、SPI_CS、SPI_MOSI、SPI_MISO分别接至FPGA的4个I/O;
所述IIC通信接口的2个端子SCL、SDA分别接至FPGA的2个I/O;
所述TFT显示屏与FPGA连接,用于显示参数配置情况。
3.如权利要求1或2所述的装置的实现方法,其特征在于,包括:
通过Quartus II开发环境建立工程,利用FPGA内部的DCM时钟管理模块产生各种协议转换所需时钟,并通过内部的RAM IP核生成多个内部RAM存储单元,分别用于独立存放每种协议的有效数据。利用硬件设计语言Verilog设计多协议转换功能,包括参数配置模块的Verilog设计、协议转换功能的Verilog设计;步骤如下:
步骤1):运用Verilog语言设计参数配置模块,在时钟上升沿触发实时读取五个拨码开关P、P3、P2、P1、P0的状态,参照拨码开关参数设置功能表,通过case语句判断确定协议的转换参数,当P、P3、P2、P1、P0的状态为10000时,实现RS232向RS485的单向转换;当P、P3、P2、P1、P0的状态为00101时,实现RS232与SPI的双向转换;
步骤2):调用RAM IP核建立4个专用有效数据存储单元,为每个存储单元进行专门编址以存放不同协议有效数据,为每一个存储单元设置状态控制位,用来表明当前存储单元的存储状态和数据更新情况;通过Verilog编程分别设计RS232、RS485、SPI、II四种接口协议数据接受功能模块,根据步骤1)确定的数据输入端接口协议,提取相应接受端口有效数据存放至与该协议地址对应的RAM中;
步骤3):通过Verilog语言编程设计RS232、RS485、SPI、II四种接口协议数据发送功能模块,根据步骤1)确定的数据输入端和输出端接口协议,从输入端协议RAM地址中提取有效数据,并将提取的有效数据传递给相应输出端口的发送功能模块,完成数据打包协议转换发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910487194.5A CN110347622A (zh) | 2019-06-05 | 2019-06-05 | 一种多接口协议双向转换装置及实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910487194.5A CN110347622A (zh) | 2019-06-05 | 2019-06-05 | 一种多接口协议双向转换装置及实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110347622A true CN110347622A (zh) | 2019-10-18 |
Family
ID=68181540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910487194.5A Withdrawn CN110347622A (zh) | 2019-06-05 | 2019-06-05 | 一种多接口协议双向转换装置及实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110347622A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111203874A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 机器人的控制方法、装置、电子设备及存储介质 |
CN111240250A (zh) * | 2020-04-08 | 2020-06-05 | 湖南中大检测技术集团有限公司 | 一种多接口协议双向转换无线传输装置及其控制方法 |
CN111600892A (zh) * | 2020-05-19 | 2020-08-28 | 山东超越数控电子股份有限公司 | 分布式数据采集系统和方法 |
CN112506833A (zh) * | 2020-12-15 | 2021-03-16 | 北京无线电测量研究所 | 一种数据转换传输装置和方法 |
WO2022166424A1 (zh) * | 2021-02-05 | 2022-08-11 | 中国电子科技集团公司第五十八研究所 | 互联裸芯与dsp/fpga的通信方法及其通信系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202077061U (zh) * | 2011-03-24 | 2011-12-14 | 华中科技大学 | 一种多端口多网络协议转换器 |
CN102546336A (zh) * | 2011-12-28 | 2012-07-04 | 北京航空航天大学 | 一种基于VersaPHY的IEEE-1394b光总线协议转换器 |
CN204291023U (zh) * | 2014-12-11 | 2015-04-22 | 中国矿业大学 | 一种基于fpga的rs232、rs485及can转以太网装置 |
CN107980215A (zh) * | 2016-08-31 | 2018-05-01 | 深圳配天智能技术研究院有限公司 | 一种协议转换器及协议转换方法 |
CN207623974U (zh) * | 2017-12-26 | 2018-07-17 | 北京航科恒益科技有限责任公司 | 一种多接口协议转换器 |
-
2019
- 2019-06-05 CN CN201910487194.5A patent/CN110347622A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202077061U (zh) * | 2011-03-24 | 2011-12-14 | 华中科技大学 | 一种多端口多网络协议转换器 |
CN102546336A (zh) * | 2011-12-28 | 2012-07-04 | 北京航空航天大学 | 一种基于VersaPHY的IEEE-1394b光总线协议转换器 |
CN204291023U (zh) * | 2014-12-11 | 2015-04-22 | 中国矿业大学 | 一种基于fpga的rs232、rs485及can转以太网装置 |
CN107980215A (zh) * | 2016-08-31 | 2018-05-01 | 深圳配天智能技术研究院有限公司 | 一种协议转换器及协议转换方法 |
CN207623974U (zh) * | 2017-12-26 | 2018-07-17 | 北京航科恒益科技有限责任公司 | 一种多接口协议转换器 |
Non-Patent Citations (2)
Title |
---|
张科等: "多接口协议转换器的设计与实现", 《信息化研究》 * |
杨会伟等: "基于FPGA研究实现SPI__IIS双向协议转换技术", 《南阳理工学院学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111203874A (zh) * | 2019-12-26 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 机器人的控制方法、装置、电子设备及存储介质 |
CN111240250A (zh) * | 2020-04-08 | 2020-06-05 | 湖南中大检测技术集团有限公司 | 一种多接口协议双向转换无线传输装置及其控制方法 |
CN111600892A (zh) * | 2020-05-19 | 2020-08-28 | 山东超越数控电子股份有限公司 | 分布式数据采集系统和方法 |
CN112506833A (zh) * | 2020-12-15 | 2021-03-16 | 北京无线电测量研究所 | 一种数据转换传输装置和方法 |
WO2022166424A1 (zh) * | 2021-02-05 | 2022-08-11 | 中国电子科技集团公司第五十八研究所 | 互联裸芯与dsp/fpga的通信方法及其通信系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110347622A (zh) | 一种多接口协议双向转换装置及实现方法 | |
CN104852845B (zh) | 一种物联网智能网关 | |
CN105785958A (zh) | 基于智慧工厂的多功能数据采集器、采集系统及方法 | |
CN106201946A (zh) | 一种基于fpga和dsp的星载电子系统数据接口系统 | |
CN107980215A (zh) | 一种协议转换器及协议转换方法 | |
CN103905281A (zh) | 可互换实现网络控制器与网络终端功能的fc-ae-1553总线节点卡 | |
CN113923205B (zh) | 一种物联网智能感知终端远程重构系统 | |
CN104539502A (zh) | 一种自定义添加modbus设备的方法 | |
CN107959523A (zh) | 基于北斗通信技术的电力北斗通信系统及通信方法 | |
CN110087037A (zh) | 一种集成摄像头的EtherCAT主站和工作方法 | |
CN107315706A (zh) | 一种模块化plc扩展通信系统及通信方法 | |
CN101900772B (zh) | 一种插箱等效器 | |
CN109752992B (zh) | 一种fpga+8051系统控制器 | |
CN103561116A (zh) | 可重构pxi串行通讯卡及采用该通讯卡实现远程重构的方法 | |
CN201114176Y (zh) | 外置式hdlc-ip协议转换器 | |
CN103034206A (zh) | 一种采用后绑定通信插件的工业数据采集系统 | |
CN210129874U (zh) | 一种基于fpga的多协议物联网网关设备 | |
CN107196975A (zh) | 一种多协议转换的plc联网串口转换器 | |
CN202424743U (zh) | 配电网自动化远程通信管理机 | |
CN202918326U (zh) | 智能式多串口交换机 | |
Piasetzky et al. | Switch asic programmability in hybrid mode | |
CN212909590U (zh) | 基于分布式数据库同步的云芯片及云平台模块和系统 | |
RU2008103106A (ru) | Шлюз связи между двумя объектами | |
CN110083567A (zh) | 一种芯片架构 | |
CN206258865U (zh) | 一种可重构的信号处理器asic架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20191018 |
|
WW01 | Invention patent application withdrawn after publication |