CN105512079A - 一种1394总线多通道流数据并行组包方法 - Google Patents
一种1394总线多通道流数据并行组包方法 Download PDFInfo
- Publication number
- CN105512079A CN105512079A CN201510931308.2A CN201510931308A CN105512079A CN 105512079 A CN105512079 A CN 105512079A CN 201510931308 A CN201510931308 A CN 201510931308A CN 105512079 A CN105512079 A CN 105512079A
- Authority
- CN
- China
- Prior art keywords
- flow data
- subpackage
- data
- message
- stream data
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Small-Scale Networks (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种1394总线多通道流数据并行组包方法,由多个节点并行发送至本节点的多路流数据可由硬件逻辑并行完成组包操作,不额外占用处理器资源,可实现多路流数据包并行接收。另外,本发明在流数据分包负载中设置心跳值,可用于标示同一通道号的同一条数据。如一条流数据在组包成功前,收到心跳值不同的新一条流数据,可直接切换保存缓冲区,直接丢弃组包失败的流数据。
Description
技术领域
本发明属于计算机硬件技术,涉及一种1394总线多通道流数据并行组包方法。
背景技术
标准的IEEE1394总线协议对消息的最大负载有限制,不能满足军事航空领域对大数据量网络传输的要求,在标准协议的基础上,定义了流数据用于传输大数据量的网络消息,即在发送方将大数据包拆分为若干个小包(满足1394总线最大负载要求)通过1394总线传输,接受法收到这些小包后再组合成一条完整的消息传递给应用软件。同时为了满足消息的处理效率,要求流数据接收方的组包操作由硬件电路完成,在目前技术中,没有支持此类问题的解决方法和电路,本设计就此现状,提出了1394总线流数据组包方法,可以解决这类问题。
发明内容
本发明目的是提供一种1394总线多通道流数据并行组包方法,其解决了1394总线大数据量网络传输中发送方拆包方法及实现问题,不额外占用处理器资源。
本发明的技术解决方案是:
一种1394总线多通道流数据并行组包方法,包括步骤如下:
步骤1:根据系统应用,驱动层在节点初始化时,将期望接收由哪些节点发送至本通道的流数据信息填入接收流数据配置表区;
步骤2:驱动层为期望接收到的该节点的流数据在主存中申请A、B两个接收缓冲区,用于网络层设备的流数据接收控制;
步骤3:硬件逻辑接收到数据包后,提取接收到消息的通道号;
步骤4:判断接收到消息的通道号与当前调度配置表得到的期望接收消息通道号是否相同:如果都不相同,则直接丢弃并返回步骤3;如果相同,则转入步骤5;
步骤5:将分包消息存入硬件逻辑内部对应数据接收缓存区;
步骤6:提取流数据分包负载中的心跳值,如果心跳值与上次接收到相同通道的流数据分包的心跳值不同,则转入步骤7;否则,转入步骤8;所述流数据分包负载中的心跳值用于标示同一通道号的同一条流数据;
步骤7:切换本条流数据在主存中的目标接收缓冲区,将该条流数据分包接收计数器清“0”,然后转入步骤8;
步骤8:根据本条流数据分包负载中携带的分包序号信息(0、…、n、…、N),将其保存至主存当前消息“目标接收缓冲区A/B区起始地址+n*分包负载包长”中对应的位置;
步骤9:将该条流数据分包接收计数器增“1”;
步骤10:判断该流数据分包接收计数器是否计满,如不满则继续等待后续消息接收,如该计数器计满则表示该条流数据已接收完成,完成标识置位。
上述步骤1中的接收流数据配置表区可填入多个不同的节点;上述步骤2中驱动层为期望接收到的不同节点的流数据在主存中均申请A、B两个接收缓冲区;上述步骤3至步骤10可对不同节点的流数据进行并行处理。
本发明具有的有益效果:
1、本发明在流数据分包负载中设置心跳值,可用于标示同一通道号的同一条数据。如一条流数据在组包成功前,收到心跳值不同的新一条流数据,可直接切换保存缓冲区,直接丢弃组包失败的流数据。
2、本发明由于采用上述1394总线流数据组包方法,流数据可由硬件逻辑完成组包操作,不额外占用处理器资源,可实现大数据量包通过1394总线传输。
附图说明
图1为本发明的方法流程图。
具体实施方式
本发明1394总线多通道流数据并行组包方法,参照图1示例,处理步骤如下:
步骤1:根据系统应用,驱动层在节点初始化时,将期望接收由哪些节点发送至本通道的流数据(由通道号标识)等信息填入接收流数据配置表区;
步骤2:驱动层为期望接收到的每条流数据在主存中申请A、B两个接收缓冲区,用于网络层设备的流数据接收控制;
步骤3:硬件逻辑接收到数据包后,提取接收到消息的通道号;
步骤4:判断与当前调度配置表得到的期望接收消息通道号是否相同:如果都不相同,则直接丢弃并返回步骤3;如果相同,则转入下步;
步骤5:将分包消息存入硬件逻辑内部对应数据接收缓存区;
步骤6:提取流数据分包负载中的心跳值,如果心跳值与上次接收到相同属性(具有相同的通道号)分包的心跳值不同,表示此为同一通道的新一条流数据分包,转入步骤7处理;否则,此为同一条流数据分包,转入步骤8处理;
步骤7:切换本条流数据在主存中的目标接收缓冲区(第一条消息保存至缓冲区A,后续流数据在A/B缓冲区间切换),将该条流数据分包接收计数器清“0”,转入步骤8处理;
步骤8:根据本条流数据分包负载中携带的分包序号信息(0、…、n、…、N),将其保存至主存当前消息“目标接收缓冲区A/B区起始地址+n*分包负载包长”中对应的位置;
步骤9:将该条流数据分包接收计数器增“1”;
步骤10:判断该流数据分包接收计数器是否计满,如不满则继续等待后续消息接收,如该计数器计满则表示该条流数据已接收完成,完成标识置位。
对于从不同节点发送至本通道的流数据分包组包操作,可采用上述的步骤3至步骤10并行处理,此时需要步骤1中的接收流数据配置表中填入多个不同的节点;步骤2中驱动层为期望接收到的不同节点的流数据在主存中均申请A、B两个接收缓冲区。
Claims (2)
1.一种1394总线多通道流数据并行组包方法,其特征在于:包括步骤如下:
步骤1:根据系统应用,驱动层在节点初始化时,将期望接收由哪些节点发送至本通道的流数据信息填入接收流数据配置表区;
步骤2:驱动层为期望接收到的该节点的流数据在主存中申请A、B两个接收缓冲区,用于网络层设备的流数据接收控制;
步骤3:硬件逻辑接收到数据包后,提取接收到消息的通道号;
步骤4:判断接收到消息的通道号与当前调度配置表得到的期望接收消息通道号是否相同:如果都不相同,则直接丢弃并返回步骤3;如果相同,则转入步骤5;
步骤5:将分包消息存入硬件逻辑内部对应数据接收缓存区;
步骤6:提取流数据分包负载中的心跳值,如果心跳值与上次接收到相同通道的流数据分包的心跳值不同,则转入步骤7;否则,转入步骤8;所述流数据分包负载中的心跳值用于标示同一通道号的同一条流数据;
步骤7:切换本条流数据在主存中的目标接收缓冲区,将该条流数据分包接收计数器清“0”,然后转入步骤8;
步骤8:根据本条流数据分包负载中携带的分包序号信息(0、…、n、…、N),将其保存至主存当前消息“目标接收缓冲区A/B区起始地址+n*分包负载包长”中对应的位置;
步骤9:将该条流数据分包接收计数器增“1”;
步骤10:判断该流数据分包接收计数器是否计满,如不满则继续等待后续消息接收,如该计数器计满则表示该条流数据已接收完成,完成标识置位。
2.根据权利要求1所述的1394总线多通道流数据并行组包方法,其特征在于:所述步骤1中的接收流数据配置表区可填入多个不同的节点;所述步骤2中驱动层为期望接收到的不同节点的流数据在主存中均申请A、B两个接收缓冲区;所述步骤3至步骤10可对不同节点的流数据进行并行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510931308.2A CN105512079B (zh) | 2015-12-12 | 2015-12-12 | 一种1394总线多通道流数据并行组包方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510931308.2A CN105512079B (zh) | 2015-12-12 | 2015-12-12 | 一种1394总线多通道流数据并行组包方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105512079A true CN105512079A (zh) | 2016-04-20 |
CN105512079B CN105512079B (zh) | 2018-07-03 |
Family
ID=55720075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510931308.2A Active CN105512079B (zh) | 2015-12-12 | 2015-12-12 | 一种1394总线多通道流数据并行组包方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105512079B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108183835A (zh) * | 2017-12-08 | 2018-06-19 | 中国航空工业集团公司成都飞机设计研究所 | 一种分布式系统军用1394总线数据完整性监控方法 |
CN108616368A (zh) * | 2016-12-12 | 2018-10-02 | 中国航空工业集团公司西安航空计算技术研究所 | 基于Mi-1394总线协议处理SoC芯片的网络管理消息数据发送方法 |
CN111193574A (zh) * | 2019-12-31 | 2020-05-22 | 西安翔腾微电子科技有限公司 | 一种数据传输方法及数据传输系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997048056A1 (en) * | 1996-06-14 | 1997-12-18 | Silicon Image, Inc. | A system and method for sending multiple data signals over a serial link |
US20050216262A1 (en) * | 2004-03-25 | 2005-09-29 | Digital Theater Systems, Inc. | Lossless multi-channel audio codec |
CN1905531A (zh) * | 2006-08-11 | 2007-01-31 | 白杰 | 待发送数据的处理方法以及数据发送方法、装置 |
CN101039256A (zh) * | 2006-03-17 | 2007-09-19 | 中兴通讯股份有限公司 | 分组控制单元帧分段传输方法 |
US8046776B1 (en) * | 2006-11-30 | 2011-10-25 | Marvell International Ltd. | Method and apparatus for transferring firmware between an operating system device in a host |
CN103346949A (zh) * | 2013-07-25 | 2013-10-09 | 北京大学 | 基于嵌入式的双通道网络数据包的拆包和组包方法及系统 |
CN104270684A (zh) * | 2014-09-24 | 2015-01-07 | 北京中科大洋科技发展股份有限公司 | 一种面向实时应用的视音频数据网络传输系统和方法 |
CN105072702A (zh) * | 2015-07-20 | 2015-11-18 | 上海摩软通讯技术有限公司 | Wifi-Direct网络的数据传输方法及系统 |
-
2015
- 2015-12-12 CN CN201510931308.2A patent/CN105512079B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997048056A1 (en) * | 1996-06-14 | 1997-12-18 | Silicon Image, Inc. | A system and method for sending multiple data signals over a serial link |
US20050216262A1 (en) * | 2004-03-25 | 2005-09-29 | Digital Theater Systems, Inc. | Lossless multi-channel audio codec |
CN101039256A (zh) * | 2006-03-17 | 2007-09-19 | 中兴通讯股份有限公司 | 分组控制单元帧分段传输方法 |
CN1905531A (zh) * | 2006-08-11 | 2007-01-31 | 白杰 | 待发送数据的处理方法以及数据发送方法、装置 |
US8046776B1 (en) * | 2006-11-30 | 2011-10-25 | Marvell International Ltd. | Method and apparatus for transferring firmware between an operating system device in a host |
CN103346949A (zh) * | 2013-07-25 | 2013-10-09 | 北京大学 | 基于嵌入式的双通道网络数据包的拆包和组包方法及系统 |
CN104270684A (zh) * | 2014-09-24 | 2015-01-07 | 北京中科大洋科技发展股份有限公司 | 一种面向实时应用的视音频数据网络传输系统和方法 |
CN105072702A (zh) * | 2015-07-20 | 2015-11-18 | 上海摩软通讯技术有限公司 | Wifi-Direct网络的数据传输方法及系统 |
Non-Patent Citations (1)
Title |
---|
秦爽: ""多通道同步数据采集系统设计与实现"", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616368A (zh) * | 2016-12-12 | 2018-10-02 | 中国航空工业集团公司西安航空计算技术研究所 | 基于Mi-1394总线协议处理SoC芯片的网络管理消息数据发送方法 |
CN108183835A (zh) * | 2017-12-08 | 2018-06-19 | 中国航空工业集团公司成都飞机设计研究所 | 一种分布式系统军用1394总线数据完整性监控方法 |
CN108183835B (zh) * | 2017-12-08 | 2021-05-07 | 中国航空工业集团公司成都飞机设计研究所 | 一种分布式系统军用1394总线数据完整性监控方法 |
CN111193574A (zh) * | 2019-12-31 | 2020-05-22 | 西安翔腾微电子科技有限公司 | 一种数据传输方法及数据传输系统 |
CN111193574B (zh) * | 2019-12-31 | 2023-04-28 | 西安翔腾微电子科技有限公司 | 一种数据传输方法及数据传输系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105512079B (zh) | 2018-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105511954B (zh) | 一种报文处理方法及装置 | |
US9304961B2 (en) | Method and apparatus for transferring packets between interface control modules of line cards | |
US9967201B2 (en) | Data transmission method, core forwarding device, and endpoint forwarding device | |
WO2018059446A1 (zh) | 业务数据传输方法、设备和系统、存储介质 | |
WO2018125518A3 (en) | Computer program product, system, and method to allow a host and a storage device to communicate using different fabric, transport, and direct memory access protocols | |
CN111209240B (zh) | 数据传输的方法、电子设备及存储介质 | |
CN102891809B (zh) | 多核网络设备报文按接口保序方法及系统 | |
US9538545B2 (en) | Mapping data traffic throughout protocol layers based on priority information | |
CN104038505A (zh) | 一种IPSec防重放的方法和装置 | |
CN105512079A (zh) | 一种1394总线多通道流数据并行组包方法 | |
US9164771B2 (en) | Method for thread reduction in a multi-thread packet processor | |
CN104158764A (zh) | 报文处理方法及装置 | |
JP6325642B2 (ja) | スレーブデバイスの制御方法 | |
US10025752B2 (en) | Data processing method, processor, and data processing device | |
CN105550153A (zh) | 一种1394总线多通道流数据并行拆包方法 | |
CN105871675B (zh) | 一种数据处理方法及装置 | |
KR20170126732A (ko) | 슬레이브 디바이스 제어 방법 | |
CN105704023A (zh) | 一种堆叠系统的报文转发方法、装置及堆叠设备 | |
CN105323160A (zh) | 报文收发方法及装置、通道单元及通信设备 | |
US10348835B2 (en) | Slave device and method for controlling the same | |
Mammeri et al. | On handling real-time communications in mac protocols. | |
CN104168124A (zh) | 分布式系统的灵活QinQ规则的配置方法 | |
CN117081873A (zh) | 业务控制方法和系统及vBRAS-CP设备 | |
CN114531730A (zh) | 一种传输通道分配方法、系统及存储介质 | |
CN117478616A (zh) | 报文处理系统及报文处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221025 Address after: Room S303, Innovation Building, No. 25, Gaoxin 1st Road, Xi'an, Shaanxi 710075 Patentee after: XI'AN XIANGTENG MICROELECTRONICS TECHNOLOGY Co.,Ltd. Address before: No. 15, Jinye Second Road, Xi'an, Shaanxi 710065 Patentee before: AVIC XI''AN AERONAUTICS COMPUTING TECHNIQUE RESEARCH INSTITUTE |