CN104393958B - 基于流水线的数据帧发送方法、接收方法 - Google Patents
基于流水线的数据帧发送方法、接收方法 Download PDFInfo
- Publication number
- CN104393958B CN104393958B CN201410707568.7A CN201410707568A CN104393958B CN 104393958 B CN104393958 B CN 104393958B CN 201410707568 A CN201410707568 A CN 201410707568A CN 104393958 B CN104393958 B CN 104393958B
- Authority
- CN
- China
- Prior art keywords
- data
- frame
- frame head
- head section
- segment
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种基于流水线的数据帧发送方法、接收方法,涉及数据帧处理领域;解决串行处理方法对数据帧处理时,时延较长,实时性差,影响通信效率的问题;其技术方案为:在发送数据时,提取需要发送的数据并将其分为帧头段和数据段,然后以流水线方式将帧头段和数据段按段依次进行数据加密和编码,在接收数据时,以流水线方式将帧头段和数据段按段依次进行解码和数据解密。本发明引用流水线处理方式,实现了数据帧的快速处理,提高了数据帧处理实时性,满足实际需要;将本方法与传统方法进行比较,单在数据发送过程中,对于6个消息字的数据帧,就节省时间8.04ms。
Description
技术领域
本发明涉及数据帧处理领域,尤其是涉及一种基于流水线的数据帧发送方法、接收方法。
背景技术
地空数据链终端设备主要用于实现指控命令的上传、态势信息的共享以及平台状态信息的共享。
中频处理模块是地空数据链终端设备重要组成部分之一,主要实现中频信号解调、发送数据调制、实现数据链的物理层和链路层波形、实现与保密机的互联互通。中频数据帧处理能力及方式是衡量链路性能的重要指标,影响通信效率、通信质量。
现有数据帧处理方法主要采用常规串行处理方法及多芯片处理方法。串行处理方法是先将前一个数据帧处理完成后,再处理第二帧数据,此方法能够实现数据通信,但是对于长帧数据,时延较长,实时性差,影响通信效率;多芯片处理方法,是采用多个芯片(4个DSP芯片,4个FPGA,4个加密芯片)同时进行工作,虽然提高了效率,但存在很大缺点:占用硬件资源多,成本高,体积大,灵活性低,资源利用效率低。
发明内容
本发明的目的在于:针对现有技术存在的问题,提供一种基于流水线的数据帧发送方法、接收方法,解决现有采用串行处理方法对数据帧处理时,时延较长,实时性差,影响通信效率的问题;解决现有采用多个芯片对数据帧处理时,占用硬件资源多,成本高,体积大,灵活性低,资源利用效率低的问题。
本发明的发明目的通过以下技术方案来实现:一种基于流水线的数据帧发送方法,其特征在于,该方法包括以下步骤:
(1)提取需要发送的数据并判断是否是一个完整的数据帧,如果是则将其分为帧头段和数据段,并以流水线方式将帧头段和数据段按段依次进行数据加密和编码,如果不是则进行步骤(2);
(2)判断所提取的数据是否为帧头数据,且是否满足帧头段处理要求,如果是则将帧头段进行数据加密和编码处理,一边处理一边接收剩余的数据段;
(3)判断所接收的数据是否满足数据段处理要求,如果是,则接着帧头段的处理,以流水线方式,将数据段按段进行数据加密和编码处理;否则,则继续接收数据;
(4)当整帧数据全部编码完成后,根据协议添加同步头组帧,并将组帧后的数据流发送出去。
优选的,在步骤(1)或步骤(2)处理帧头段数据时,提取帧头中消息字个数位,判断其值是否处于1到K之间,如果是,则继续后续处理;如果否则丢掉此数据帧,处理下一数据帧。
优选的,所述数据帧由帧头和多个消息字组成,帧头独立分为帧头段,每两个消息字组成一个数据段。
优选的,所述以流水线方式将帧头段和数据段按段依次进行数据加密和编码为:当对加密后的帧头段进行编码时,对分成的第一个数据段进行加密,当对第一个数据段进行编码时,对第二个数据段进行加密,依次处理完整帧数据。
一种基于流水线的数据帧接收方法,其特征在于,该方法包括以下步骤:
(1)提取接收到的bit流数据,并判断是否通过窗口法找到最大相关峰,如果是则开始接收帧头段数据,并进行步骤(2),否则继续查收最大相关峰;
(2)判断帧头段数据是否全部接收,如果是则进行步骤(3),否,则继续接收;
(3)继续接收数据段数据,同时,以流水线方式将帧头段和数据段按段依次进行解码和数据解密;
(4)当整帧数据全部解密完成后,发送给下一级处理器。
优选的,判断是否通过窗口法找到最大相关峰的步骤包括以下步骤:
(11)设定相关峰阈值;设定窗口长度,解调的bit流从右端不断进来,填充到窗口中,每1bit从窗口右端进来,窗口中原来数据依次向左移动1bit位置;
(12)每更新1bit数据,则将窗口中的数据与相关码作与运算,得出两组数据,然后统计每组中的比特和,1表+1,0表-1,得到两个相关值;
(13)将两个相关值与相关峰阈值相比,如果都大于相关峰阈值,则认为已找到最大相关峰,否则继续返回步骤(11)。
优选的,所述以流水线方式将帧头段和数据段按段依次进行解码和数据解密为:当对解码后的帧头段进行解密时,对接收到的第一个数据段进行解码,当对第一个数据段进行解密时,对第二个数据段进行解码,依次处理完整帧数据。
与现有技术相比,本发明引用流水线处理方式,实现了数据帧的快速处理,提高了数据帧处理实时性,满足实际需要;将本方法与传统方法进行比较,单在数据发送过程中,对于6个消息字的数据帧,就节省时间8.04ms。
附图说明
图1为发送过程中的流水线处理方式的示意图;
图2为接收过程中的流水线处理方式的示意图;
图3为本发明的硬件结构示意图;
图4为基于本发明硬件的数据帧收发通道原理图;
图5为本发明与现有技术的对比示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
通常,数据帧由帧头(帧头由M字节构成)和消息字(每个消息字包含N字节(N可根据实际情况规定))构成。帧头为本帧数据控制信息,其中前3字节包含:中继信息位,联通标志位,消息字个数位,加密标志位;后M-3个字节包含:备用位,控制位,版本号,平台号等信息。前3个字节不送到保密机,后M-3个字需送到保密机进行加密。消息字个数为1到K(K>1,K为最大消息字个数)个。数据帧分段遵循原则:帧头独立一段,称为帧头段;消息字部分,两个消息字组成一段。
以下以一帧数据(6个消息字,每个消息字包含t字节)为例,阐述本发明的数据发送与接收过程。
一、基于流水线的数据帧发送方法:
1)提取数据
通过串口接收由协议处理模块传送的数据,从接收缓冲中提取数据进行处理。如果是一个完整的数据帧,则按照协议对数据进行分段,共4段(1个帧头段,3个数据段),按段对数据进行处理。若当前数据帧不完整,正在接收,判断所接收到的数据是否为帧头数据,判断是否满足帧头段处理要求,如果满足则按段进行处理,一边处理一边接收剩余的数据段;如果所接收的数据不满足段数据处理要求,则继续接收数据。
在处理帧头段数据时,需要进行数据帧合理性判断,即提取帧头中消息字个数位,判断其值是否处于1到K之间,如果正确,则依次对帧头段,数据段进行处理;如果不正确(可能是串口传输错误导致),则丢掉此数据帧,处理第二帧数据。
2)数据加密
首先,帧头段通过串口送到保密机进行加密,从保密机输出串口接收已经加密的帧头段。
其次,数据段通过串口送到保密机进行加密,从保密机输出串口接收已经加密的数据段。
加密原则:进入保密机的数据个数不变,且前后字节相互独立。
3)分段编码
经过加密后的帧头段,数据段都要进行编码处理。
对于帧头段,接收到M个字节,即进行编码;数据段,每接收到2t字节进行编码,直到整帧结束。
如图1所示,在帧头段进行编码的同时,对数据段1进行加密,数据段3进行加密时,数据段2进行编码,依次处理整帧数据,以提高处理速率。
4)组帧发送
当整帧数据全部编码完成后,根据协议添加同步头组帧,将组帧后的数据流通过EMIF接口传送给FPGA,FPGA进行调制,并通过DA变换处理后,形成基带信号,送到接收机,功率放大器,最后通过天线发送。
二、基于流水线的数据帧接收方法:
ADC数据经过FPGA解调后,形成bit流,通过EMIF接口送到接收缓冲。
1)查收相关峰
首先,设定相关峰阈值THR。
其次,用窗口法计算最大相关峰
设窗口长度为126Byte,解调比特流从右端不断进来,填充到此窗口中,每1bit从窗口右端进来,窗口中原来数据依次向左移动1bit位置。每更新1bit数据,窗口中的数据都要与相关码作与运算,得出两组数据,每组6Byte,然后统计每组中的比特和,1表+1,0表-1,得到两个相关值,然后将两个相关值与相关峰阈值THR相比,都大于相关峰门限时,认为已找到最大相关峰。随后的值为有效数据值。否则按照相同方法继续搜索相关峰。
在实际运用过程中,有可能不止计算一次相关峰。
2)解析帧头段数据
当找到最大相关峰之后,开始接收帧头段数据,根据协议判断帧头段数据是否全部接收,如果是则进行步骤3);否,则继续接收。
3)分段解码
首先分段解码帧头段,然后依次解码数据段。
4)数据解密
对帧头段进行解密,然后依次解密数据段数据。
如图2所示,当保密机在解密帧头段数据,数据段1同时进行解码,保密机在解密数据段2时,数据段3同时进行解码,依次处理整帧数据。
数据解密与加密采用相同流程,它通过发送到保密模块的命令字进行区别。
5)串口数据传输
将解码出的数据通过串口传输给相应协议处理模块。
为了实现前述方法,本发明提供一种硬件平台,如图3所示,其主要由AD,DA转换芯片,FPGA芯片,DSP芯片,存储芯片SDRAM,串口复用芯片TL16C754,及与之相关联的处理器及加密模块组成。接收过程:接收下变频信号,完成AD采样、解调、解帧等处理,将信息通过不同类型接口发送给下一级处理器。发送过程:从处理器接收待发数据,完成加密调制过程,经过DA变换后,产生是上变频信号。地空数据链中频数据帧处理主要由DSP完成,包括发送通道和接收通道两个部分,如图4所示。其中发送过程:提取待发送数据,加密处理,分段编码,FPGA调制,中频信号DA变换处理;接收过程:中频信号AD变换处理,FPGA解调,分段解码,解密处理,串口传送数据。
将本方法与传统方法进行比较,如图5所示,单在数据发送过程中,对于6个消息字的数据帧,就节省时间8.04ms。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,应当指出的是,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于流水线的数据帧发送方法,其特征在于,该方法包括以下步骤:
(1)提取需要发送的数据并判断是否是一个完整的数据帧,如果是则将其分为帧头段和数据段,并以流水线方式将帧头段和数据段按段依次进行数据加密和编码,如果不是则进行步骤(2);
(2)判断所提取的数据是否为帧头数据,且是否满足帧头段处理要求,如果是则将帧头段进行数据加密和编码处理,一边处理一边接收剩余的数据段;
(3)判断所接收的数据是否满足数据段处理要求,如果是,则接着帧头段的处理,以流水线方式,将数据段按段进行数据加密和编码处理;否则,则继续接收数据;所述以流水线方式将帧头段和数据段按段依次进行数据加密和编码为:当对加密后的帧头段进行编码时,对分成的第一个数据段进行加密,当对第一个数据段进行编码时,对第二个数据段进行加密,依次处理完整帧数据;
(4)当整帧数据全部编码完成后,根据协议添加同步头组帧,并将组帧后的数据流发送出去。
2.根据权利要求1所述的一种基于流水线的数据帧发送方法,其特征在于,在步骤(1)或步骤(2)处理帧头段数据时,提取帧头中消息字个数位,判断其值是否处于1到K之间,如果是,则继续后续处理;如果否则丢掉此数据帧,处理下一数据帧。
3.根据权利要求1所述的一种基于流水线的数据帧发送方法,其特征在于,所述数据帧由帧头和多个消息字组成,帧头独立分为帧头段,每两个消息字组成一个数据段。
4.一种基于流水线的数据帧接收方法,其特征在于,该方法包括以下步骤:
(1)提取接收到的bit流数据,并判断是否通过窗口法找到最大相关峰,如果是则开始接收帧头段数据,并进行步骤(2),否则继续查收最大相关峰;
(2)判断帧头段数据是否全部接收,如果是则进行步骤(3),否,则继续接收;
(3)继续接收数据段数据,同时,以流水线方式将帧头段和数据段按段依次进行解码和数据解密;所述以流水线方式将帧头段和数据段按段依次进行解码和数据解密为:当对解码后的帧头段进行解密时,对接收到的第一个数据段进行解码,当对第一个数据段进行解密时,对第二个数据段进行解码,依次处理完整帧数据;
(4)当整帧数据全部解密完成后,发送给下一级处理器。
5.根据权利要求4所述的一种基于流水线的数据帧接收方法,其特征在于,判断是否通过窗口法找到最大相关峰的步骤包括以下步骤:
(11)设定相关峰阈值;设定窗口长度,解调的bit流从右端不断进来,填充到窗口中,每1bit从窗口右端进来,窗口中原来数据依次向左移动1bit位置;
(12)每更新1bit数据,则将窗口中的数据与相关码作与运算,得出两组数据,然后统计每组中的比特和,1表+1,0表-1,得到两个相关值;
(13)将两个相关值与相关峰阈值相比,如果都大于相关峰阈值,则认为已找到最大相关峰,否则继续返回步骤(11)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410707568.7A CN104393958B (zh) | 2014-11-28 | 2014-11-28 | 基于流水线的数据帧发送方法、接收方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410707568.7A CN104393958B (zh) | 2014-11-28 | 2014-11-28 | 基于流水线的数据帧发送方法、接收方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104393958A CN104393958A (zh) | 2015-03-04 |
CN104393958B true CN104393958B (zh) | 2017-11-28 |
Family
ID=52611799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410707568.7A Active CN104393958B (zh) | 2014-11-28 | 2014-11-28 | 基于流水线的数据帧发送方法、接收方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104393958B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105356996B (zh) * | 2015-12-14 | 2018-11-09 | 联想(北京)有限公司 | 一种密文处理方法、电子设备及密文处理装置 |
CN108600248B (zh) * | 2018-05-04 | 2021-04-13 | 广东电网有限责任公司 | 一种通信安全防护方法及装置 |
CN109361490B (zh) * | 2018-08-10 | 2021-06-18 | 锐捷网络股份有限公司 | 数据传输方法、计算机设备、数据转接板及sdr平台 |
CN113691322B (zh) * | 2021-08-20 | 2022-04-26 | 青岛鼎信通讯股份有限公司 | 一种应用于低压漏电定位仪的通信系统及其通信方法 |
CN114189372A (zh) * | 2021-12-01 | 2022-03-15 | 京微齐力(深圳)科技有限公司 | 一种多密码分段式解密方式和装置 |
CN115314157B (zh) * | 2022-07-19 | 2023-10-24 | 烽火通信科技股份有限公司 | 一种以太网成帧方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529512A (zh) * | 2003-10-17 | 2004-09-15 | 中国科学院计算技术研究所 | 基于流水线的帧内预测模式块编码加速方法 |
CN103944689A (zh) * | 2014-04-04 | 2014-07-23 | 浙江大学 | 一种适合物理层无速率编码传输的流水线传输方法 |
CN103974327A (zh) * | 2014-04-28 | 2014-08-06 | 华南理工大学 | 小型无人直升机点对点数据链系统及实现方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7447801B2 (en) * | 2002-11-18 | 2008-11-04 | Microsoft Corporation | Composable data streams for managing flows |
-
2014
- 2014-11-28 CN CN201410707568.7A patent/CN104393958B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529512A (zh) * | 2003-10-17 | 2004-09-15 | 中国科学院计算技术研究所 | 基于流水线的帧内预测模式块编码加速方法 |
CN103944689A (zh) * | 2014-04-04 | 2014-07-23 | 浙江大学 | 一种适合物理层无速率编码传输的流水线传输方法 |
CN103974327A (zh) * | 2014-04-28 | 2014-08-06 | 华南理工大学 | 小型无人直升机点对点数据链系统及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104393958A (zh) | 2015-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104393958B (zh) | 基于流水线的数据帧发送方法、接收方法 | |
US11071116B2 (en) | Coding/decoding method, apparatus, and device | |
CN102664729B (zh) | 一种基于fpga的aes加解密网络通讯装置及其实现方法 | |
CN105049388B (zh) | 一种基于喷泉码与单载波频域均衡的短波通信系统及其传输方法 | |
CN102790659A (zh) | 一种移动通信系统中数据包的传输方法 | |
CN111884900B (zh) | 发送数据的方法和转发设备 | |
CN107360568A (zh) | 利用喷泉码实现对称加密保障无线数据安全传输的方法 | |
CN104301911A (zh) | 纠正移动通信终端中的解译不同步 | |
CN107231215A (zh) | 一种并行信道下基于极化码的安全传输方法 | |
CN107995130A (zh) | 一种分片报文的快转方法 | |
CN109728877A (zh) | 一种用于无线通信的用户设备、基站中的方法和装置 | |
US20150244394A1 (en) | Ternary line code design for controlled decision feedback equalizer error propagation | |
CN105915318B (zh) | 一种基于空间调制的伪中继选择安全传输方法 | |
CN107222284B (zh) | 一种物联网中基于信道反馈的喷泉编码抗窃听传输方法 | |
US20210367710A1 (en) | Apparatus and method for sending side-channel bits on an ethernet cable | |
CN110912841A (zh) | 面向128bit位宽的SRIO协议控制字符与数据包分离系统 | |
CN104158788A (zh) | 一种端到端传输数据的方法 | |
CN103338447B (zh) | 一种应用于短距离传输的自存取加解密电路 | |
CN106603193A (zh) | 一种基于媒体内容的fec机制 | |
Hamidi-Sepehr et al. | Delay-sensitive communication over fading channels: Queueing behavior and code parameter selection | |
CN105282857A (zh) | 自适应传输保持数据连续的方法 | |
CN205566651U (zh) | 基于高斯频移键控无线收发器的加密数字基带控制电路 | |
WO2018077417A1 (en) | Sequence numbers in multiple protocol layered mobile communication | |
CN109542633A (zh) | 一种提高网络数据包加密速度的方法 | |
CN101026412B (zh) | 高速下行分组接入的hs-scch信道编码装置 |
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 |