CN112131169A - 高速数据通信系统及方法 - Google Patents
高速数据通信系统及方法 Download PDFInfo
- Publication number
- CN112131169A CN112131169A CN202010930940.6A CN202010930940A CN112131169A CN 112131169 A CN112131169 A CN 112131169A CN 202010930940 A CN202010930940 A CN 202010930940A CN 112131169 A CN112131169 A CN 112131169A
- Authority
- CN
- China
- Prior art keywords
- data
- chain
- rapidio
- speed data
- address
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004891 communication Methods 0.000 title claims abstract description 32
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims abstract description 6
- 238000004364 calculation method Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 8
- 230000000903 blocking effect Effects 0.000 claims description 6
- 230000003139 buffering effect Effects 0.000 claims description 6
- 230000001105 regulatory effect Effects 0.000 claims description 5
- 230000001276 controlling effect Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000010365 information processing Effects 0.000 description 7
- 239000013307 optical fiber Substances 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
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/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种高速数据通信系统及方法,包括:VPX总线背板:包含多个标准槽位,槽位插入相应模块的板卡,实现背板上各模块之间的高速信号互联;交换模块:为各功能板卡的槽位提供高速数据通道、高速数据辅助通道及高速控制通道,实现各槽位间的高速数据通信;电源模块:用于提供各槽位电源;CPU计算模块:为各槽位之间传输的高速数据提供计算服务。本发明数据收发采用双循环四链表的异步收发设计,可以很好地进行高速数据的收发,且对于CPU和内存的消耗相对稳定,不会造成占用大量内存的情况;在待发送链与待接收链配置水位线技术,进行FPGA RapidIO流量控制,保证了发送端和接收端能力的平衡。
Description
技术领域
本发明涉及数据通信技术领域,具体地,涉及一种高速数据通信系统及方法。尤其地,涉及一种基于雷达信息处理计算机RapidIO总线的高速数据通信方法。
背景技术
RapidIO是一种开放式的互连技术标准,应用于芯片间、板间互连系统。其具有传输效率高、拓扑结构灵活、可靠性高等特点,已经各种系统中广泛应用。
在某些基于RapidIO接口的传输系统中,对时敏性能和传输速率都有较高的要求。考虑到时敏因素,加之数据并非匀速传输,数据速率具有较大的随机性,故只能采用短数据帧。在瞬时传输速率较高时,会产生大量的门铃事务(Doorbell)或者信箱(Mailbox)数据传输,接收端CPU会频繁地响应中断,极大地增加了系统开销。以某数据链系统为例,该数据链系统为了保证系统的时敏性能设计通信帧长度为127Bytes,而RapidIO接口传输速率要求达到400Mbps,这样CPU端每秒接收到393700次Doorbell或者Mailbox数据传输,并响应相同次数的中断。这样就极大增加了CPU的系统开销,传输速率急速降低,甚至导致CPU不能正常工作。
RapidIO为一种嵌入式的高速数据总线,CPU端程序设计者一般至少需要结合RapidIO的路由与枚举配置,RapidIO地址映射,操作系统物理和虚拟内存映射,DMA的数据读写,门铃的数据收发或消息数据的收发等RapidIO总线开发技术,由于专业性限制,对于雷达程序设计者而言其学习于开发成本过高;
CPU与FPGA之间对于RapidIO的数据通信存在着不平衡,一个不平衡是FPAG对于RapidIO协议的处理普遍高于绝大多数的CPU(即使有ts i721等桥片协助的情况),另一个不平衡是CPU需主动地实时地读取FPGA过来的RapidIO数据,否则就会存在数据溢出情况,这种情况若数据同步处理不好,非常容易出现设备死机、奔溃的情况;
DMA指直接内存访问。
专利文献CN106528485A(申请号:201610975736.X)公开了一种基于RapidIO的发送装置和接收装置,该发送装置根据接收装置返回的Doorbell向接收装置的窗口空间发送RapidIO数据帧,并在该窗口空间的信息位标明有效数据长度信息和数据读取标志为未读。该接收装置根据窗口空间的信息位读取RapidIO数据帧,并更新数据标志信息为已读,以及通过Doorbell返回最后读取的窗口序号给发送装置。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种高速数据通信系统及方法。
根据本发明提供的高速数据通信系统,包括:
VPX总线背板:包含多个标准槽位,槽位插入相应模块的板卡,实现背板上各模块之间的高速信号互联;
交换模块:为各功能板卡的槽位提供高速数据通道、高速数据辅助通道及高速控制通道,实现各槽位间的高速数据通信;
电源模块:用于提供各槽位电源;
CPU计算模块:为各槽位之间传输的高速数据提供计算服务。
优选的,所述交换模块还为各槽位提供复位信号、参考时钟和地址配置信号。
优选的,所述交换模块还为各槽位提供智能平台管理通道,监控和反馈各槽位板卡的温度和电压。
优选的,所述交换模块监测背板各平面总线资源利用情况,并对各功能板进行控制命令动态加载和逻辑资源在线重构,以及接收各功能板上传的动态参数。
优选的,CPU计算模块采用双循环四链表的异步收发数据模型,进行数据的接收和发送,其中,发送用户与接收用户分别对应CPU计算模块的数据发送与数据接收的主调程序,数据传输收发均以流水方式实现。
优选的,所述流水方式包括:
输入流:发送用户输入数据;
控制流:通过水位线,保持发送端和接收端能力的平衡,对FPGA RapidIO流量进行控制;
缓冲流:通过双循环四链表对传输的数据进行缓冲;
输出流:接收用户输出数据。
根据本发明提供的高速数据通信方法,包括:
初始化步骤:安装RapidIO驱动程序,初始化RapidIO设备、门铃、物理内存-RapidIO地址映射和虚拟内存映射,初始化待接收链、可用地址链和接收服务,初始化待发送链、可用地址链和发送服务;
运行步骤:数据发送时从可用地址链获取RapidIO地址,将待发送数据和RapidIO地址存入待发送链,后台运行的发送服务线程/进程持续检查待发送链表,一旦发现有数据就将其发送出去;数据接收时采用阻塞中断式或轮询式进行数据接收;
释放步骤:停止并释放数据发送服务和数据接收服务,释放待接收链及可用地址链,释放待发送链及可用地址链,释放虚拟内存、物理内存-RapidIO地址,关闭门铃和RapidIO设备。
优选的,当获取到RapidIO地址后,在可用地址链中清除该地址;
发送完成后将RapidIO地址填回到可用地址链中。
优选的,阻塞中断式数据接收包括:底层接收服务线程/进程一直处于门铃中断的监听等待状态,当RapidIO链路上有数据时,数据接收服务向可用地址链申请一个已分配的虚拟内存地址,用于放入接收数据,并填入待接收链,当待接收链有数据时,用户获得接收数据。
优选的,轮询式数据接收包括:底层接收服务线程/进程按预设频率自检底层RapidIO链路数据,当RapidIO链路上有数据时,数据接收服务向可用地址链申请一个已分配的虚拟内存地址,用于放入接收数据,并填入待接收链,当待接收链有数据时,用户获得接收数据;
所述预设频率根据实际数据接收速率进行调控。
与现有技术相比,本发明具有如下的有益效果:
1、本发明通过简单的应用编程接口实现RapidIO高速数据收发,具有高效、稳定、快速的特点;
2、本发明数据收发采用双循环四链表异步收发的设计,可以很好地进行高速数据的收发,且对于CPU和内存的消耗相对稳定,不会造成占用大量内存的情况;
3、本发明通过在待发送链与待接收链配置水位线技术,进行FPGA RapidIO流量控制,保证了发送端和接收端能力的平衡。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为雷达后端的信息处理框架图;
图2为雷达信息处理RapidIO数据高速通信设计示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例1:
本发明主要实现:CPU端程序设计者可通过简单的应用编程接口(API)实现RapidIO高速数据收发,直接返回用户层数据,不需要用户管理RapidIO路由配置,不需要用户管理诸如DMA操作、消息操作、事件操作、门铃操作等底层RapidIO通信细节,单计算节点支持多通道数据接收(如多路光纤接口),内部通过缓存的方式,实现一种RapidIO异步数据收发方法。根据前端数据速率、机箱内数据交互速率、数据包大小、组播/单播模式、用户收发线程/进程数等参数配置,实现高效、稳定、快速的数据通信方法。
如图1,雷达后端的信息处理,其数据获取来源通常为前端光纤数据,光纤数据经过FPGA后可转换为RapidIO协议数据输入到雷达后端信息处理计算模块中。
本发明提出了一种基于雷达信息处理计算机RapidIO总线的高速数据通信方法,用于雷达后端的信息处理计算机与前端设备通过RapidIO总线进行高速数据通信,本发明主要作用范围为雷达信息处理计算机CPU计算模块RapidIO数据收发方法,FPGA端进行配套设计。
CPU端数据接入整体设计如图2,在RapidIO数据通信软件中采用“双循环四链表”的异步收发的数据模型,其中发送用户与接收用户分别对应CPU端的数据发送与CPU端的数据接收主调程序,数据传输收发均以“流水”方式实现。
初始化过程:安装RapidIO驱动程序,初始化RapidIO,初始化门铃,初始化物理内存-RapidIO地址映射,初始化虚拟内存映射,初始化待接收链,可用地址链和接收服务,初始化待发送链,可用地址链和发送服务;
运行过程:以数据发送为例,发送用户从可用地址链获取一个可用的RapidIO地址,得到地址后,发送用户就把数据和RapidIO地址放入待发送链,后台的发送服务线程/进程会一直检查待发送链表,一旦发现有数据就将其发送出去,发送完成后将RapidIO地址填入可用地址链。同理数据接收,模式上用户可选择两种接收方式,即阻塞中断式接收带超时返回以及轮询式自检数据接收:
阻塞中断式:底层接收服务线程/进程一直处于门铃中断的监听等待状态,当RapidIO链路上有数据时,接收服务将向可用地址链申请一个已经分配好的虚拟内存地址,用于放入接收数据,并填入待接收链,待接收链有数据时,用户就可获得接收数据;
轮询式:底层接收服务线程/进程按一定频率(频率可根据实际数据速率调控)自检底层RapidIO链路数据,当RapidIO链路上有数据时,接收服务将向可用地址链申请一个已经分配好的虚拟内存地址,用于放入接收数据,并填入待接收链,待接收链有数据时,用户就可获得接收数据。
释放过程:停止发送和接收服务,释放待接收链,可用地址链,释放待发送链,可用地址链,释放虚拟内存,释放物理内存-RapidIO地址,关闭门铃,关闭RapidIO设备,释放发送和接收服务。
在用户接口设计上非常简单,无需用户关心底层具体运行细节,仅需利用三组典型函数(至少但不限于三组)即可实现高效的RapidIO数据收发,分别为创建接口三个函数(打开RapidIO设备,发送初始化,接收初始化),数据收发接口两个函数(数据发送接口,数据接收接口)和销毁接口三个函数(释放发句柄,释放发句柄,关闭设备),其中与收发相关的配置均于发送与接收数据结构中配置,操作简单。
实施例2:
根据本发明提供的高速数据通信系统,包括:
VPX总线背板:包含多个标准槽位,槽位插入相应模块的板卡,实现背板上各模块之间的高速信号互联;
交换模块:为各功能板卡的槽位提供高速数据通道、高速数据辅助通道及高速控制通道,实现各槽位间的高速数据通信;
电源模块:用于提供各槽位电源;
CPU计算模块:为各槽位之间传输的高速数据提供计算服务。
优选的,所述交换模块还为各槽位提供复位信号、参考时钟和地址配置信号。
优选的,所述交换模块还为各槽位提供智能平台管理通道,监控和反馈各槽位板卡的温度和电压。
优选的,所述交换模块监测背板各平面总线资源利用情况,并对各功能板进行控制命令动态加载和逻辑资源在线重构,以及接收各功能板上传的动态参数。
优选的,CPU计算模块采用双循环四链表的异步收发数据模型,进行数据的接收和发送,其中,发送用户与接收用户分别对应CPU计算模块的数据发送与数据接收的主调程序,数据传输收发均以流水方式实现。
优选的,所述流水方式包括:
输入流:发送用户输入数据;
控制流:通过水位线,保持发送端和接收端能力的平衡,对FPGA RapidIO流量进行控制;
缓冲流:通过双循环四链表对传输的数据进行缓冲;
输出流:接收用户输出数据。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种高速数据通信系统,其特征在于,包括:
VPX总线背板:包含多个标准槽位,槽位插入相应模块的板卡,实现背板上各模块之间的高速信号互联;
交换模块:为各功能板卡的槽位提供高速数据通道、高速数据辅助通道及高速控制通道,实现各槽位间的高速数据通信;
电源模块:用于提供各槽位电源;
CPU计算模块:为各槽位之间传输的高速数据提供计算服务。
2.根据权利要求1所述的高速数据通信系统,其特征在于,所述交换模块还为各槽位提供复位信号、参考时钟和地址配置信号。
3.根据权利要求1所述的高速数据通信系统,其特征在于,所述交换模块还为各槽位提供智能平台管理通道,监控和反馈各槽位板卡的温度和电压。
4.根据权利要求1所述的高速数据通信系统,其特征在于,所述交换模块监测背板各平面总线资源利用情况,并对各功能板进行控制命令动态加载和逻辑资源在线重构,以及接收各功能板上传的动态参数。
5.根据权利要求1所述的高速数据通信系统,其特征在于,CPU计算模块采用双循环四链表的异步收发数据模型,进行数据的接收和发送,其中,发送用户与接收用户分别对应CPU计算模块的数据发送与数据接收的主调程序,数据传输收发均以流水方式实现。
6.根据权利要求5所述的高速数据通信系统,其特征在于,所述流水方式包括:
输入流:发送用户输入数据;
控制流:通过水位线,保持发送端和接收端能力的平衡,对FPGA RapidIO流量进行控制;
缓冲流:通过双循环四链表对传输的数据进行缓冲;
输出流:接收用户输出数据。
7.一种高速数据通信方法,其特征在于,采用权利要求1-6中任一种或任多种所述的高速数据通信系统,包括:
初始化步骤:安装RapidIO驱动程序,初始化RapidIO设备、门铃、物理内存-RapidIO地址映射和虚拟内存映射,初始化待接收链、可用地址链和接收服务,初始化待发送链、可用地址链和发送服务;
运行步骤:数据发送时从可用地址链获取RapidIO地址,将待发送数据和RapidIO地址存入待发送链,后台运行的发送服务线程/进程持续检查待发送链表,一旦发现有数据就将其发送出去;数据接收时采用阻塞中断式或轮询式进行数据接收;
释放步骤:停止并释放数据发送服务和数据接收服务,释放待接收链及可用地址链,释放待发送链及可用地址链,释放虚拟内存、物理内存-RapidIO地址,关闭门铃和RapidIO设备。
8.根据权利要求7所述的高速数据通信方法,其特征在于,当获取到RapidIO地址后,在可用地址链中清除该地址;
发送完成后将RapidIO地址填回到可用地址链中。
9.根据权利要求7所述的高速数据通信方法,其特征在于,阻塞中断式数据接收包括:底层接收服务线程/进程一直处于门铃中断的监听等待状态,当RapidIO链路上有数据时,数据接收服务向可用地址链申请一个已分配的虚拟内存地址,用于放入接收数据,并填入待接收链,当待接收链有数据时,用户获得接收数据。
10.根据权利要求7所述的高速数据通信方法,其特征在于,轮询式数据接收包括:底层接收服务线程/进程按预设频率自检底层RapidIO链路数据,当RapidIO链路上有数据时,数据接收服务向可用地址链申请一个已分配的虚拟内存地址,用于放入接收数据,并填入待接收链,当待接收链有数据时,用户获得接收数据;
所述预设频率根据实际数据接收速率进行调控。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010930940.6A CN112131169B (zh) | 2020-09-07 | 2020-09-07 | 高速数据通信系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010930940.6A CN112131169B (zh) | 2020-09-07 | 2020-09-07 | 高速数据通信系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112131169A true CN112131169A (zh) | 2020-12-25 |
CN112131169B CN112131169B (zh) | 2022-03-18 |
Family
ID=73847426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010930940.6A Active CN112131169B (zh) | 2020-09-07 | 2020-09-07 | 高速数据通信系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131169B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148461A1 (en) * | 2003-01-13 | 2004-07-29 | Steinmetz Joseph Harold | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves and that support virtual disk formatting |
CN201387385Y (zh) * | 2009-03-18 | 2010-01-20 | 南京航空航天大学 | 基于计算机总线的集成压电多通道扫查结构健康监测系统 |
CN206877318U (zh) * | 2017-06-08 | 2018-01-12 | 山东超越数控电子股份有限公司 | 一种基于vpx架构的通信系统信息处理平台 |
-
2020
- 2020-09-07 CN CN202010930940.6A patent/CN112131169B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148461A1 (en) * | 2003-01-13 | 2004-07-29 | Steinmetz Joseph Harold | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves and that support virtual disk formatting |
CN201387385Y (zh) * | 2009-03-18 | 2010-01-20 | 南京航空航天大学 | 基于计算机总线的集成压电多通道扫查结构健康监测系统 |
CN206877318U (zh) * | 2017-06-08 | 2018-01-12 | 山东超越数控电子股份有限公司 | 一种基于vpx架构的通信系统信息处理平台 |
Also Published As
Publication number | Publication date |
---|---|
CN112131169B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106648896B (zh) | 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法 | |
CN108345555B (zh) | 基于高速串行通信的接口桥接电路及其方法 | |
CN113872796B (zh) | 服务器及其节点设备信息获取方法、装置、设备、介质 | |
US20020091826A1 (en) | Method and apparatus for interprocessor communication and peripheral sharing | |
KR20210033996A (ko) | 전용 저 레이턴시 링크를 사용한 다수의 하드웨어 가속기에 대한 통합된 어드레스 공간 | |
CN103888293A (zh) | 多通道fc网络数据仿真系统的数据通道调度方法 | |
CN114077563A (zh) | 多端口i/o混合系统中的系统功率管理 | |
EP2975812A1 (en) | Bus system and computer program | |
JP2008287718A (ja) | 仮想レーン資源を動的に再割当てするシステムおよび方法 | |
CN108628784B (zh) | 串行通信器及串行通信系统 | |
CN110968352B (zh) | 一种pcie设备的复位系统及服务器系统 | |
CN110618956B (zh) | 一种bmc云平台资源池化方法与系统 | |
CN201583943U (zh) | 音频soc芯片的高效低功耗dma的ip结构 | |
CN101567873B (zh) | 一种多任务并行处理方法及系统 | |
CN112202600B (zh) | 一种多节点单主机与多主机通信自动切换装置及方法 | |
GB2377138A (en) | Ring Bus Structure For System On Chip Integrated Circuits | |
CN112131169B (zh) | 高速数据通信系统及方法 | |
CN109426643A (zh) | Usb接口请求调度方法、装置及设备 | |
CN111666238A (zh) | 数据传输装置及方法 | |
JP2018524697A (ja) | ネットワークラインカード(lc)のホストオペレーティングシステム(os)への統合 | |
US11748289B2 (en) | Protocol aware bridge circuit for low latency communication among integrated circuits | |
US8996737B1 (en) | Method for emulating communication standards of transceiver modules for native host devices | |
West et al. | Real-Time USB Networking and Device I/O | |
CN106603188A (zh) | 一种变频器接口装置 | |
CN117222994A (zh) | 使用共享时钟和专用数据线的i2c总线架构 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |