CN115391253A - 基于fpga的多通道的hart实现系统 - Google Patents
基于fpga的多通道的hart实现系统 Download PDFInfo
- Publication number
- CN115391253A CN115391253A CN202211160338.4A CN202211160338A CN115391253A CN 115391253 A CN115391253 A CN 115391253A CN 202211160338 A CN202211160338 A CN 202211160338A CN 115391253 A CN115391253 A CN 115391253A
- Authority
- CN
- China
- Prior art keywords
- data
- channel
- hart
- fpga
- control module
- 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.)
- Pending
Links
Images
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/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
Abstract
本发明公开了一种基于FPGA的多通道的HART实现系统,所述实现系统包括:控制模块,用于发送数据至单路转多路模块,并接收所述单路转多路模块的返回数据;单路转多路模块,所述单路转多路模块中包含多个数据通道,用于将所述控制模块的发出数据传输至HART设备,并接收所述HART设备的返回数据,将所述返回数据以多个数据通道传输至所述控制模块。通过设置一种多个通道相对独立的HART通信设计,无需在多个通道进行切换,不受通讯响应时间的限制,减少了多个通道轮询耗时,减轻了通道间的干扰,极大提升了整个HART通讯的效率和可靠性。
Description
技术领域
本专利涉及工业控制技术领域,尤其涉及一种基于FPGA的多通道的HART实现系统。
背景技术
HART(Highway Addressable Remote Transducer,可寻址远程传感器高速通道的开放通信协议)是一种用于现场智能仪表和控制设备之间的通信协议。该协议在工业过程自动化控制领域应用广泛。但其缺陷在于通讯带宽较低,响应时间较长,尤其是多个通道设备轮询时,会耗费更长时间。目前,通用的设计是采用多路开关在多个HART通道之间切换,既耗时又容易造成通道间的串扰。
发明内容
本发明要解决的技术问题是为了克服现有技术中多通道的HART切换耗时并且容易造成通道间的干扰的缺陷,提供一种基于FPGA的多通道的HART实现系统。
本发明是通过下述技术方案来解决上述技术问题:
一种基于FPGA的多通道的HART实现系统,所述实现系统包括:
控制模块,用于发送数据至单路转多路模块,并接收所述单路转多路模块的返回数据;
单路转多路模块,所述单路转多路模块中包含多个数据通道,用于将所述控制模块的发出数据传输至HART设备,并接收所述HART设备的返回数据,将所述返回数据以多个数据通道传输至所述控制模块。
较佳地,所述单路转多路模块包括多个发送寄存器和多个接收寄存器;
每个所述数据通道对应一个发送寄存器或接收寄存器;
所述发送寄存器用于存储所述控制模块的发出数据;
所述接收寄存器用于存储所述HART设备的返回数据。
较佳地,所述单路转多路模块还包括:
配置单元,用于接收所述控制模块发出的配置数据,根据所述配置数据对所述单路转多路模块进行初始化配置,所述配置数据包括以下数据的一种或多种:时钟配置数据、串口模式配置数据、流程控制配置数据、中断初始化配置数据、寄存器配置数据、通用输入输出配置数据。
较佳地,所述控制模块包括:
接收信号单元,用于接收所述单路转多路模块的中断信号,以获得触发中断的对应的所述数据通道。
较佳地,每个所述数据通道对应一个状态寄存器,所述状态寄存器用于存储对应所述数据通道的数据字节数。
较佳地,所述控制模块包括:
读取单元,用于在所述数据字节数不为0时,读取所述状态寄存器对应的所述数据通道中的数据。
较佳地,所述控制模块还包括:
查询单元,用于查询所述数据通道对应的所述状态寄存器的所述数据字节数,在所述数据字节数不为0时,读取所述数据通道中的数据。
较佳地,所述控制模块为现场可编程门阵列。
较佳地,所述控制模块与所述单路转多路模块通过SPI总线或IIC总线进行通信。
较佳地,所述单路转多路模块与所述HART设备通过UART总线进行通信。
本发明的积极进步效果在于:
本发明提供的一种基于FPGA的多通道的HART实现系统,通过设置一种多个通道相对独立的HART通信设计,无需在多个通道进行切换,不受通讯响应时间的限制,减少了多个通道轮询耗时,减轻了通道间的干扰,极大提升了整个HART通讯的效率和可靠性。
附图说明
图1为本发明实施例1的基于FPGA的多通道的HART实现系统的模块示意图;
图2为本发明实施例1的基于FPGA的多通道的HART实现系统的结构示意图;
图3为本发明实施例1的基于FPGA的多通道的HART实现系统的FPGA状态机状态转移图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供一种基于FPGA的多通道的HART实现系统,如图1所示,所述实现系统包括:
控制模块101,用于发送数据至单路转多路模块,并接收所述单路转多路模块的返回数据。控制模块101控制整个通信流程。
单路转多路模块102,单路转多路模块中包含多个数据通道,用于将所述控制模块101的发出数据传输至HART设备,并接收所述HART设备的返回数据,将所述返回数据以多个数据通道传输至控制模块101。通过设计多个数据通道,减少了多个数据通道轮询耗时,减轻了数据通道间的干扰,极大提升了整个HART通讯的效率和可靠性。
在一个实施例中,控制模块101与单路转多路模块102通过SPI总线或IIC总线进行通信。单路转多路模块102与HART设备通过UART总线进行通信。
具体的,所述单路转多路模块102还包括:
配置单元1021,用于接收控制模块101发出的配置数据,根据所述配置数据对所述单路转多路模块102进行初始化配置,所述配置数据包括以下数据的一种或多种:时钟配置数据、串口模式配置数据、流程控制配置数据、中断初始化配置数据、FIFO(先入先出寄存器)配置数据、GPIO(通用输入输出)配置数据。
如图2所示,控制模块101中包含一个发送寄存器和多个接收寄存器,单路转多路模块102中包含多个发送寄存器和多个接收寄存器,每个发送寄存器或接收寄存器对应一个数据通道,所述发送寄存器用于存储所述控制模块101的发出数据;所述接收寄存器用于存储HART设备的返回数据。
在一个实施例中,控制模块101通过SPI总线发送数据至单路转多路模块102,并缓存数据至单路转多路模块102的发送寄存器中,所述发送寄存器为独立的128Byte的发送寄存器,在前一个数据通道发送完毕数据后不必等待,直接发送下一个数据通道的数据。
在一个实施例中,控制模块101接收返回数据有两种方式:1.接收单路转多路模块102的中断信号;2.查询状态寄存器。
具体的,在第一种接收返回数据的方式中,控制模块101包括:
接收信号单元1011,用于接收所述单路转多路模块102的中断信号,根据初始化配置查询触发中断的对应的数据通道。每个所述数据通道对应一个状态寄存器,所述状态寄存器用于存储对应所述数据通道的数据字节数,数据字节数可以用N的值表征,若N为0,则说明该数据通道中没有返回数据,若N不为0,则说明改数据通道中有返回数据。
读取单元1012,用于在数据字节数不为0时,读取所述状态寄存器对应的数据通道中的数据。
查询单元1013,用于直接查询所述数据通道对应的所述状态寄存器的所述数据字节数,在所述数据字节数不为0时,读取所述数据通道中的数据。
在一个实施例中,控制模块101为现场可编程门阵列。
如图2所示,下面以现场可编程门阵列(FPGA)为控制模块、单路转4芯片为单路转多路模块为例具体说明本实施例中的多通道的HART的实现系统的工作过程:
S1、上电复位后,等待单路转4芯片的nIRQ引脚置高;
S2、通过SPI总线,对于单路转4芯片中的相关寄存器写入配置数据,所述配置数据包括但不限于以下的一种或多种:时钟配置数据、串口模式配置数据、流程控制配置数据、中断初始化配置数据、FIFO配置数据、GPIO配置数据。
S3、读取FPGA发送缓冲区数据,通过SPI总线,写入单路转4芯片的第一数据通道的发送寄存器(THR0),直到第一数据通道的数据全部写完;相同方式,按次序发送第二数据通道、第三数据通道……第n数据通道的数据。
由于FPGA通过SPI总线发送数据的速度远高于芯片向HART设备发送数据,本步骤中可适当延时,以等待单路转4芯片对HART设备完成发送数据,并且HART设备已开始向单路转4芯片返回数据。
S4、读取第一数据通道接收FIFO状态寄存器,得到已接收到的数据字节数N0,若字节数N0为0,则说明此数据通道没有返回数据,执行步骤S5;字节数N0不为0则再读取相应的接收寄存器(RHR0),一共读取N0个接收寄存器。
S5、读取第二数据通道接收FIFO状态寄存器,得到已接收到的数据字节数N1,若字节数N1为0,则说明此通道没有返回数据,继续读取下一数据通道的接收FIFO寄存器;字节数N1不为0,则读取相应的接收寄存器(RHR1),一共读取N1个接收寄存器
SPI总线读取速度远高于HART设备通过UART串口返回数据的速度,因此在确定全部HART设备数据返回之前,重复步骤S4-S5,直到全部数据已接收完成,转到步骤S6。
S6、等待下一次数据发送。
对于HART设备的返回数据,FPGA也可以直接轮询的方式,查询相应HART设备的数据通道对应的接收状态寄存器,若所述状态寄存器中的数据字节数不为0,读取相应通道的接收数据寄存器。
对于4个HART设备的数据通道,FPGA采用流水线方式操作。既在对某个HART通道写入发送数据时,不必等待此HART设备的数据通道接收数据返回,即可直接继续对下一个HART通道写入发送数据。
在一个实施例中,FPGA发送数据及接收数据的流程由状态机控制,具体的状态转移如图3所示,在单路转4芯片的nIRQ引脚置为1时,发送配置数据至单路转4芯片进行初始化配置,写入数据至发送寄存器,直至发送寄存器所对应的数据通道均写入完毕。读取单路转4芯片中接收寄存器所对应的状态寄存器,若数据字节数不为0则读取对应的接收寄存器中的数据并返回数据至FPGA的数据缓存区。
应当说明的是,本实施例中的单路转多路模块可以是一个单路转4芯片也可以并联多个单路转4芯片以得到更多数据通道进行通信。
基于FPGA的多通道的HART实现系统通过设置一种多个通道相对独立的HART通信设计,无需在多个通道进行切换,不受通讯响应时间的限制,减少了多个通道轮询耗时,减轻了通道间的干扰,极大提升了整个HART通讯的效率和可靠性。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (10)
1.一种基于FPGA的多通道的HART实现系统,其特征在于,所述实现系统包括:
控制模块,用于发送数据至单路转多路模块,并接收所述单路转多路模块的返回数据;
单路转多路模块,所述单路转多路模块中包含多个数据通道,用于将所述控制模块的发出数据传输至HART设备,并接收所述HART设备的返回数据,将所述返回数据以多个数据通道传输至所述控制模块。
2.如权利要求1所述的基于FPGA的多通道的HART实现系统,其特征在于,所述单路转多路模块包括多个发送寄存器和多个接收寄存器;
每个所述数据通道对应一个发送寄存器或接收寄存器;
所述发送寄存器用于存储所述控制模块的发出数据;
所述接收寄存器用于存储所述HART设备的返回数据。
3.如权利要求1所述的基于FPGA的多通道的HART实现系统,其特征在于,所述单路转多路模块还包括:
配置单元,用于接收所述控制模块发出的配置数据,根据所述配置数据对所述单路转多路模块进行初始化配置,所述配置数据包括以下数据的一种或多种:时钟配置数据、串口模式配置数据、流程控制配置数据、中断初始化配置数据、寄存器配置数据、通用输入输出配置数据。
4.如权利要求3所述的基于FPGA的多通道的HART实现系统,其特征在于,所述控制模块包括:
接收信号单元,用于接收所述单路转多路模块的中断信号,以获得触发中断的对应的所述数据通道。
5.如权利要求4所述的基于FPGA的多通道的HART实现系统,其特征在于,每个所述数据通道对应一个状态寄存器,所述状态寄存器用于存储对应所述数据通道的数据字节数。
6.如权利要求5所述的基于FPGA的多通道的HART实现系统,其特征在于,所述控制模块包括:
读取单元,用于在所述数据字节数不为0时,读取所述状态寄存器对应的所述数据通道中的数据。
7.如权利要求5所述的基于FPGA的多通道的HART实现系统,其特征在于,所述控制模块还包括:
查询单元,用于查询所述数据通道对应的所述状态寄存器的所述数据字节数,在所述数据字节数不为0时,读取所述数据通道中的数据。
8.如权利要求1所述的基于FPGA的多通道的HART实现系统,其特征在于,所述控制模块为现场可编程门阵列。
9.如权利要求1所述的基于FPGA的多通道的HART实现系统,其特征在于,所述控制模块与所述单路转多路模块通过SPI总线或IIC总线进行通信。
10.如权利要求1所述的基于FPGA的多通道的HART实现系统,其特征在于,所述单路转多路模块与所述HART设备通过UART总线进行通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160338.4A CN115391253A (zh) | 2022-09-22 | 2022-09-22 | 基于fpga的多通道的hart实现系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160338.4A CN115391253A (zh) | 2022-09-22 | 2022-09-22 | 基于fpga的多通道的hart实现系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115391253A true CN115391253A (zh) | 2022-11-25 |
Family
ID=84125972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211160338.4A Pending CN115391253A (zh) | 2022-09-22 | 2022-09-22 | 基于fpga的多通道的hart实现系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115391253A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662235A (zh) * | 2023-08-01 | 2023-08-29 | 佛山冠湾智能科技有限公司 | 一种用于多协议编码器的接口 |
-
2022
- 2022-09-22 CN CN202211160338.4A patent/CN115391253A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662235A (zh) * | 2023-08-01 | 2023-08-29 | 佛山冠湾智能科技有限公司 | 一种用于多协议编码器的接口 |
CN116662235B (zh) * | 2023-08-01 | 2023-12-08 | 佛山冠湾智能科技有限公司 | 一种用于多协议编码器的接口 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1552028B (zh) | 片上系统和其分布式直接存储器访问的方法和控制系统 | |
CN101208678B (zh) | 用于rs-232转i2c转换集成电路与主机间通信的软件层 | |
CN101504633B (zh) | 一种多通道dma控制器 | |
CN101636721B (zh) | 用于处理未知长度传输的dmac | |
CN109165178B (zh) | 一种基于RapidIO的弹上系统SoC芯片间高速通信方法 | |
US7779194B2 (en) | Data modification module | |
CN109656851B (zh) | 一种时间确定的包括多路高速总线通道及共享接口的系统 | |
CN102073611B (zh) | 一种i2c总线控制系统及方法 | |
KR100919159B1 (ko) | 멀티미디어 카드 인터페이스 방법, 컴퓨터 프로그램 생성물및 장치 | |
CN105786741B (zh) | 一种soc高速低功耗总线及转换方法 | |
CN115391253A (zh) | 基于fpga的多通道的hart实现系统 | |
CN110188059A (zh) | 数据有效位统一配置的流控式fifo缓存结构及方法 | |
US8090893B2 (en) | Input output control apparatus with a plurality of ports and single protocol processing circuit | |
CN111143261A (zh) | 一种基于pcie高速数据采集系统 | |
CN116680088B (zh) | 一种针对多寄存器存储的多模块同时访问系统及访问方法 | |
US7610415B2 (en) | System and method for processing data streams | |
CN101655825B (zh) | 一种使用fpga实现lpc-usb双向通信的装置及lpc-usb和usb-lpc数据转换方法 | |
CN215376139U (zh) | 基于arm和fpga的高效数据采集系统 | |
CN102214155A (zh) | 串口服务器 | |
CN115934614A (zh) | 基于apb总线带有fifo缓存功能的uart通讯接口 | |
CN102541788A (zh) | Apb桥以及利用apb桥执行读取或写入的方法 | |
KR20230091765A (ko) | 데이지 체인 spi 통합 회로 및 그 동작 방법 | |
KR20020067752A (ko) | 코프로세서 방식의 원칩 비동기 마이크로 프로세서 간의인터페이스 회로 | |
CN100383770C (zh) | 一种基于主从通信方式的主节点链路层优化方法 | |
US5664213A (en) | Input/output (I/O) holdoff mechanism for use in a system where I/O device inputs are fed through a latency introducing bus |
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 |