CN103678235B - 基于并行流水线网络数据处理装置及方法 - Google Patents
基于并行流水线网络数据处理装置及方法 Download PDFInfo
- Publication number
- CN103678235B CN103678235B CN201310662519.1A CN201310662519A CN103678235B CN 103678235 B CN103678235 B CN 103678235B CN 201310662519 A CN201310662519 A CN 201310662519A CN 103678235 B CN103678235 B CN 103678235B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- network
- network interface
- feedback
- 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.)
- Active
Links
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明涉及一种基于并行流水线网络数据处理装置及方法,其包括?PCIE?X8总线接口,所述PCIE?X8总线接口通过缓存模块与仲裁模块连接,所述仲裁模块通过存储装置与发送接收装置连接,所述发送接收装置与网口收发数据装置连接,所述存储装置包括至少两个存储模块,发送接收装置内包括与存储装置内存储模块数量对应一致的发送接收模块,网口收发数据装置内包括与存储模块数量对应一致的网口收发数据模块;存储装置内的存储模块与发送接收装置内的发送接收模块一一对应连接,且存储模块通过发送接收模块与网口收发数据模块一一对应连接。本发明结构紧凑,能实现并行流水线的网络数据处理,提高数据处理的速度,适应范围广,安全可靠。
Description
技术领域
本发明涉及一种数据处理装置及方法,尤其是一种基于并行流水线网络数据处理装置及方法,属于网络数据处理的技术领域。
背景技术
并行传输是指多位数据同时通过并行线进行传送,能够大大提高数据传输的速度。流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。如何在处理网络数据时实现并行流水线技术是目前的一个难题。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种基于并行流水线网络数据处理装置及方法,其结构紧凑,能实现并行流水线的网络数据处理,提高数据处理的速度,适应范围广,安全可靠。
按照本发明提供的技术方案,所述基于并行流水线网络数据处理装置,包括PCIEX8总线接口,所述PCIEX8总线接口通过缓存模块与仲裁模块连接,所述仲裁模块通过存储装置与发送接收装置连接,所述发送接收装置与网口收发数据装置连接,所述存储装置包括至少两个存储模块,发送接收装置内包括与存储装置内存储模块数量对应一致的发送接收模块,网口收发数据装置内包括与存储模块数量对应一致的网口收发数据模块;存储装置内的存储模块与发送接收装置内的发送接收模块一一对应连接,且存储模块通过发送接收模块与网口收发数据模块一一对应连接;
PCIEX8总线接口将接收到的发送数据存入缓存模块内,当仲裁模块检测到缓存模块有发送数据时,对缓存模块内发送数据的数据头进行解析,当发送数据全部存入缓存模块内后,仲裁模块根据发送数据的数据头选择对应的网口收发数据模块进行数据发送;当网口收发数据模块检测到网络反馈数据时,发送接收模块统计网络反馈数据的数据包个数及字节数,并将网络反馈数据连同统计的数据包个数及字节数均存入与所述发送接收模块连接的存储模块内;仲裁模块读取存储模块内存储的数据并添加所需的数据头以形成网络反馈接收数据,并将所述网络反馈接收数据存入缓存模块内,以供PCIEX8总线接口读取。
所述仲裁模块对网口收发数据装置内的网口收发数据模块进行编号,仲裁模块添加的数据头包括与存储模块连接网口收发数据模块的编号、网络反馈数据的数据包个数及字节数。
所述PCIEX8总线接口与上位机连接,上位机通过PCIEX8总线接口读取缓存模块内的网络反馈接收数据,并能够向PCIEX8总线接口传输所需的发送数据。
一种基于并行流水线网络数据处理方法,所述网络数据处理方法包括如下步骤:
a、通过PCIEX8总线接口接收发送数据,并将所述发送数据存入缓存模块内;
b、仲裁模块对缓存模块进行实时检测,当缓存模块内有数据时,仲裁模块对缓存模块内发送数据的数据头进行解析;仲裁模块根据发送数据的数据头判断发送数据是否完全进入缓存模块,当发送数据完全进入缓存模块内后,仲裁模块根据发送数据的数据头将发送数据存入相应的存储模块内;
c、与存储模块连接的发送接收模块检测到发送数据后,发送接收模块将发送数据通过网口收发数据模块将发送数据向外发送;
d、通过网口收发数据模块接收网络反馈数据,发送接收模块对网络反馈数据的数据包个数、字节数进行统计,并将网络反馈数据连同统计的数据包个数、字节数均存入存储模块内;
e、仲裁模块读取存储模块内的网络反馈数据、数据包个数、字节数,并根据与存储模块连接的网口收发数据模块的编号对网络反馈数据添加数据头,以形成网络反馈接收数据;
f、仲裁模块将网络反馈接收数据存入缓存模块内,以供PCIEX8总线接口读取所述网络反馈接收数据。
当有多个存储模块内均有网络反馈数据时,仲裁模块根据网口收发数据模块编号的顺序进行依次读取。
所述步骤b中,仲裁模块对发送数据的数据头进行解析得到发送数据的数据包个数、字节数以及向外发送的网口收发数据模块的编号。
本发明的优点:通过PCIEX8总线接口来接收发送数据,仲裁模块对发送数据进行接收、判断及解析,并通过对应的网口收发数据模块进行发送,仲裁模块对网口收发数据模块接收的网络反馈数据添加数据头形成网络反馈接收数据,将网络反馈接收数据存入缓存模块内,以供PCIEX8总线接口读取后传输到上位机,其结构紧凑,能实现并行流水线的网络数据处理,提高数据处理的速度,适应范围广,安全可靠。
附图说明
图1为本发明的结构框图。
图2为本发明仲裁模块将发送数据存入存储装置的流程图。
图3为本发明第一网口收发数据模块进行数据发送的流程图。
图4为本发明仲裁模块对接收数据处理的流程图。
附图标记说明:1-PCIEX8总线接口、2-缓存模块、3-仲裁模块、4-存储装置、5-发送接收装置及6-网口收发数据装置。
具体实施方式
下面结合具体附图和实施例对本发明作进一步说明。
如图1所示:为了能够通过一个PCIEX8总线接口1实现并行流水线的网络数据处理,本发明包括PCIEX8总线接口1,所述PCIEX8总线接口1通过缓存模块2与仲裁模块3连接,所述仲裁模块3通过存储装置4与发送接收装置5连接,所述发送接收装置5与网口收发数据装置6连接,所述存储装置4包括至少两个存储模块,发送接收装置5内包括与存储装置4内存储模块数量对应一致的发送接收模块,网口收发数据装置6内包括与存储模块数量对应一致的网口收发数据模块;存储装置4内的存储模块与发送接收装置5内的发送接收模块一一对应连接,且存储模块通过发送接收模块与网口收发数据模块一一对应连接;
PCIEX8总线接口1将接收到的发送数据存入缓存模块2内,当仲裁模块3检测到缓存模块2有发送数据时,对缓存模块2内发送数据的数据头进行解析,当发送数据全部存入缓存模块2内后,仲裁模块3根据发送数据的数据头选择对应的网口收发数据模块进行数据发送;当网口收发数据模块检测到网络反馈数据时,发送接收模块统计网络反馈数据的数据包个数及字节数,并将网络反馈数据连同统计的数据包个数及字节数均存入与所述发送接收模块连接的存储模块内;仲裁模块3读取存储模块内存储的数据并添加所需的数据头以形成网络反馈接收数据,并将所述网络反馈接收数据存入缓存模块2内,以供PCIEX8总线接口1读取。
具体地,缓存模块2用于数据在PCIEX8总线接口1与仲裁模块3之间流通需要的存储区,PCIEX8总线接口1为现有常用的一种总线接口形式。本发明实施例中,存储装置4至少包括两个存储模块,图1中示出了存储装置4包含四个存储模块,即第一存储模块、第二存储模块、第三存储模块及第四存储模块。当存储装置4包含四个存储模块时,发送接收装置5内包括四个发送接收模块,同时,网口收发数据装置6内包括四个网口收发数据模块(MAC);为了实现一一对应的连接,第一存储模块与第一发送接收模块连接,第一发送接收模块与第一网口收发数据模块连接,第二存储模块与第二发送接收模块连接,第二发送接收模块与第二网口收发数据模块连接,第三存储模块与第三发送接收模块连接,第三发送接收模块与第三网口收发数据模块连接,第四存储模块与第四发送接收模块连接,第四发送接收模块与第四网口收发数据模块连接。在具体实施时,存储装置4内存储模块可以多于四个,发送接收5及网口收发数据装置6内包含的数量与存储模块对应一致,以能够满足一一对应连接的需要。
进一步地,仲裁模块3对网口收发数据装置6内的网口收发数据模块进行编号,在进行数据发送时,可以选择通过对应编号的网口收发数据模块进行发送,在进行数据接收时,可以根据网口收发数据模块的编号来添加数据头。本发明通过仲裁模块3连接的多个网口收发数据模块同时进行数据收发的操作,实现并行数据发送的功能。
所述仲裁模块3对网口收发数据装置6内的网口收发数据模块进行编号,仲裁模块3添加的数据头包括与存储模块连接网口收发数据模块的编号、网络反馈数据的数据包个数及字节数。
所述PCIEX8总线接口1与上位机连接,上位机1通过PCIEX8总线接口1读取缓存模块2内的网络反馈接收数据,并能够向PCIEX8总线接口1传输所需的发送数据。
如图2、图3和图4所示:一种基于并行流水线网络数据处理方法,所述网络数据处理方法包括如下步骤:
a、通过PCIEX8总线接口1接收发送数据,并将所述发送数据存入缓存模块2内;
PCIEX8总线接口1的发送数据为上位机发送,上位机传输的发送数据指定了需要通过相应编号的网口收发数据模块进行发送。
b、仲裁模块3对缓存模块2进行实时检测,当缓存模块2内有数据时,仲裁模块3对缓存模块2内发送数据的数据头进行解析;仲裁模块3根据发送数据的数据头判断发送数据是否完全进入缓存模块2,当发送数据完全进入缓存模块2内后,仲裁模块3根据发送数据的数据头将发送数据存入相应的存储模块内;
所述步骤b中,仲裁模块3对发送数据的数据头进行解析得到发送数据的数据包个数、字节数以及向外发送的网口收发数据模块的编号。仲裁模块3根据解析的数据包个数以及字节数能够判断发送数据是否完全进入缓存模块2内。在解析得到发送设定的网口收发数据模块的编号后,仲裁模块3将发送数据存入与网口收发数据模块编号对应的存储模块内,如通过第一网口收发数据模块发送时,需要将发送数据存入第一存储模块内。
c、与存储模块连接的发送接收模块检测到发送数据后,发送接收模块将发送数据通过网口收发数据模块将发送数据向外发送;
进一步地,仲裁模块3对发送数据的数据头进行解析时,还能得到所述发送数据需要发送的次数,在通过网口收发数据模块进行发送时,还需要检测发送的次数是否达到发送数据的数据头内设定的发送次数,当未到达发送次数时,需要重复发送,直至满足设定的发送次数,从而实现流水线发送的目的。
d、通过网口收发数据模块接收网络反馈数据,发送接收模块对网络反馈数据的数据包个数、字节数进行统计,并将网络反馈数据连同统计的数据包个数、字节数均存入存储模块内;
e、仲裁模块3读取存储模块内的网络反馈数据、数据包个数、字节数,并根据与存储模块连接的网口收发数据模块的编号对网络反馈数据添加数据头,以形成网络反馈接收数据;
当有多个存储模块内均有网络反馈数据时,仲裁模块3根据网口收发数据模块编号的顺序进行依次读取。本发明实施例中,所述顺序读取是指按照对网口收发数据模块进行编号的顺序,如按照第一网口收发数据模块、第二网口收发数据模块、第三网口收发数据模块及第四网口收发数据模块的顺序依次进行读取。
f、仲裁模块3将网络反馈接收数据存入缓存模块2内,以供PCIEX8总线接口1读取所述网络反馈接收数据。
本发明通过PCIEX8总线接口1来接收发送数据,仲裁模块3对发送数据进行接收、判断及解析,并通过对应的网口收发数据模块进行发送,仲裁模块3对网口收发数据模块接收的网络反馈数据添加数据头形成网络反馈接收数据,将网络反馈接收数据存入缓存模块2内,以供PCIEX8总线接口1读取后传输到上位机,其结构紧凑,能实现并行流水线的网络数据处理,提高数据处理的速度,适应范围广,安全可靠。
Claims (6)
1.一种基于并行流水线网络数据处理装置,其特征是:包括PCIEX8总线接口(1),所述PCIEX8总线接口(1)通过缓存模块(2)与仲裁模块(3)连接,所述仲裁模块(3)通过存储装置(4)与发送接收装置(5)连接,所述发送接收装置(5)与网口收发数据装置(6)连接,所述存储装置(4)包括至少两个存储模块,发送接收装置(5)内包括与存储装置(4)内存储模块数量对应一致的发送接收模块,网口收发数据装置(6)内包括与存储模块数量对应一致的网口收发数据模块;存储装置(4)内的存储模块与发送接收装置(5)内的发送接收模块一一对应连接,且存储模块通过发送接收模块与网口收发数据模块一一对应连接;
PCIEX8总线接口(1)将接收到的发送数据存入缓存模块(2)内,当仲裁模块(3)检测到缓存模块(2)有发送数据时,对缓存模块(2)内发送数据的数据头进行解析,当发送数据全部存入缓存模块(2)内后,仲裁模块(3)根据发送数据的数据头选择对应的网口收发数据模块进行数据发送;当网口收发数据模块检测到网络反馈数据时,发送接收模块统计网络反馈数据的数据包个数及字节数,并将网络反馈数据连同统计的数据包个数及字节数均存入与所述发送接收模块连接的存储模块内;仲裁模块(3)读取存储模块内存储的数据并添加所需的数据头以形成网络反馈接收数据,并将所述网络反馈接收数据存入缓存模块(2)内,以供PCIEX8总线接口(1)读取。
2.根据权利要求1所述的基于并行流水线网络数据处理装置,其特征是:所述仲裁模块(3)对网口收发数据装置(6)内的网口收发数据模块进行编号,仲裁模块(3)添加的数据头包括与存储模块连接网口收发数据模块的编号、网络反馈数据的数据包个数及字节数。
3.根据权利要求1所述的基于并行流水线网络数据处理装置,其特征是:所述PCIEX8总线接口(1)与上位机连接,上位机通过PCIEX8总线接口(1)读取缓存模块(2)内的网络反馈接收数据,并能够向PCIEX8总线接口(1)传输所需的发送数据。
4.一种基于并行流水线网络数据处理方法,其特征是,所述网络数据处理方法包括如下步骤:
(a)、通过PCIEX8总线接口(1)接收发送数据,并将所述发送数据存入缓存模块(2)内;
(b)、仲裁模块(3)对缓存模块(2)进行实时检测,当缓存模块(2)内有数据时,仲裁模块(3)对缓存模块(2)内发送数据的数据头进行解析;仲裁模块(3)根据发送数据的数据头判断发送数据是否完全进入缓存模块(2),当发送数据完全进入缓存模块(2)内后,仲裁模块(3)根据发送数据的数据头将发送数据存入相应的存储模块内;
(c)、与存储模块连接的发送接收模块检测到发送数据后,发送接收模块将发送数据通过网口收发数据模块将发送数据向外发送;
(d)、通过网口收发数据模块接收网络反馈数据,发送接收模块对网络反馈数据的数据包个数、字节数进行统计,并将网络反馈数据连同统计的数据包个数、字节数均存入存储模块内;
(e)、仲裁模块(3)读取存储模块内的网络反馈数据、数据包个数、字节数,并根据与存储模块连接的网口收发数据模块的编号对网络反馈数据添加数据头,以形成网络反馈接收数据;
(f)、仲裁模块(3)将网络反馈接收数据存入缓存模块(2)内,以供PCIEX8总线接口(1)读取所述网络反馈接收数据。
5.根据权利要求4所述的基于并行流水线网络数据处理方法,其特征是,当有多个存储模块内均有网络反馈数据时,仲裁模块(3)根据网口收发数据模块编号的顺序进行依次读取。
6.根据权利要求4所述的基于并行流水线网络数据处理方法,其特征是,所述步骤(b)中,仲裁模块(3)对发送数据的数据头进行解析得到发送数据的数据包个数、字节数以及向外发送的网口收发数据模块的编号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310662519.1A CN103678235B (zh) | 2013-12-09 | 2013-12-09 | 基于并行流水线网络数据处理装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310662519.1A CN103678235B (zh) | 2013-12-09 | 2013-12-09 | 基于并行流水线网络数据处理装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103678235A CN103678235A (zh) | 2014-03-26 |
CN103678235B true CN103678235B (zh) | 2016-06-08 |
Family
ID=50315851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310662519.1A Active CN103678235B (zh) | 2013-12-09 | 2013-12-09 | 基于并行流水线网络数据处理装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103678235B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9753876B1 (en) | 2016-09-22 | 2017-09-05 | International Business Machines Corporation | Processing of inbound back-to-back completions in a communication system |
CN109687943B (zh) * | 2018-10-11 | 2021-10-12 | 中国人民解放军海军陆战队训练基地 | 一种双机备份冗余控制*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102394732A (zh) * | 2011-09-06 | 2012-03-28 | 中国人民解放军国防科学技术大学 | 一种多微包并行处理结构 |
CN102650976A (zh) * | 2012-04-01 | 2012-08-29 | 中国科学院计算技术研究所 | 一种支持单根io虚拟化用户级接口控制装置及其方法 |
CN102855090A (zh) * | 2012-07-23 | 2013-01-02 | 深圳市江波龙电子有限公司 | 存储设备及其运行方法 |
CN103109260A (zh) * | 2010-05-04 | 2013-05-15 | 谷歌公司 | 数据的并行处理 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7822889B2 (en) * | 2007-08-27 | 2010-10-26 | International Business Machines Corporation | Direct/indirect transmission of information using a multi-tiered full-graph interconnect architecture |
-
2013
- 2013-12-09 CN CN201310662519.1A patent/CN103678235B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103109260A (zh) * | 2010-05-04 | 2013-05-15 | 谷歌公司 | 数据的并行处理 |
CN102394732A (zh) * | 2011-09-06 | 2012-03-28 | 中国人民解放军国防科学技术大学 | 一种多微包并行处理结构 |
CN102650976A (zh) * | 2012-04-01 | 2012-08-29 | 中国科学院计算技术研究所 | 一种支持单根io虚拟化用户级接口控制装置及其方法 |
CN102855090A (zh) * | 2012-07-23 | 2013-01-02 | 深圳市江波龙电子有限公司 | 存储设备及其运行方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103678235A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202261360U (zh) | 一种测试路由器数据通路鲁棒性的装置 | |
CN103714029B (zh) | 新型二线同步通信协议及应用 | |
CN103490959B (zh) | 一种双冗余can总线故障检测方法 | |
CN104281548A (zh) | 一种基于axi总线传输数据的方法、装置及*** | |
CN104199795B (zh) | 一种总线架构的数据传送和接收方法 | |
CN103178872B (zh) | 通过以太网延长usb***传输距离的方法及装置 | |
CN104135741A (zh) | 蓝牙低功耗通信的方法、蓝牙设备和*** | |
CN1812317A (zh) | 同步媒介访问控制器 | |
CN105791439A (zh) | 一种数据处理方法、数据接收设备及数据处理*** | |
CN103744811A (zh) | 一种串行数据传输***及方法 | |
CN102098187B (zh) | 一种测试路由器数据通路鲁棒性的方法和*** | |
CN105302753A (zh) | 一种基于fpga和fifo芯片的多通道hdlc数据处理装置 | |
CN101699534B (zh) | 远程自动抄表*** | |
CN102420763A (zh) | Dma发送方法 | |
CN103678235B (zh) | 基于并行流水线网络数据处理装置及方法 | |
CN104731737A (zh) | 集线器、操作***与控制方法 | |
CN204256732U (zh) | 基于PCI-Express接口的高速数据传输装置 | |
CN103107862B (zh) | 逻辑器件及其mdio数据发送方法 | |
CN105356988A (zh) | 一种基于PCIe的全双工DMA传输方法 | |
CN203982361U (zh) | 一种多路串口通信测试装置 | |
CN102497296A (zh) | 一种网卡收发包正常性测试方法 | |
CN102768351A (zh) | 一种电表前装功能检测的方法、***及智能工装设备 | |
CN204597988U (zh) | 基于pci接口的afdx终端测试设备 | |
CN204597989U (zh) | 基于cpci接口的afdx终端测试设备 | |
CN105897494A (zh) | 网络传输速率的测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |