CN101610139A - 一种水声modem混合自动重传方法 - Google Patents
一种水声modem混合自动重传方法 Download PDFInfo
- Publication number
- CN101610139A CN101610139A CNA2009101007473A CN200910100747A CN101610139A CN 101610139 A CN101610139 A CN 101610139A CN A2009101007473 A CNA2009101007473 A CN A2009101007473A CN 200910100747 A CN200910100747 A CN 200910100747A CN 101610139 A CN101610139 A CN 101610139A
- Authority
- CN
- China
- Prior art keywords
- sign indicating
- indicating number
- crc
- information
- receiving end
- 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
Images
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明涉及一种水声MODEM混合自动重传方法,步骤如下:(1)收端解码获得发端的码字序列,先RS码纠错,再CRC码检错;(2)如果收端没有发现任何错误,则反馈ACK信号,如果发现了错误,收端将错误的帧编号进行组帧编码发射,将这些检错结果反馈给发端,要求发端重发对应帧编号的信息;(3)发端根据收到的错误包号,提取错误帧编号的信息进行递增冗余编码,重新发射给收端;(4)收端调整RS码参数,提取第一次收到的信息码与接收到冗余编码的校验码,再次进行RS码纠错,然后CRC码检错,直到认为正确为止。本发明的优点在于:该方法为纠、检错编码联合,并实现自动反馈重传,同时结合递增冗余编码技术,减少误码率,提高水声通信的可靠性。
Description
技术领域
本发明涉及声学和电子学领域,主要是一种水声MODEM混合自动重传方法,用于水声MODEM实现信息传输的差错控制以提高通信可靠性,或水声通信中纠、检错编码。
背景技术
如何提高水声通信的高数据率和可靠性,一直是世界性的重要研究课题。水声通信的研究相比无线通信起步较晚,一般的研究主要围绕如何提高数据率和带宽的利用率上,主要为研究先进的调制解调技术、信道均衡技术以克服多径和多普勒频移等,但除此之外,水声通信的研究还应该在研究差错控制技术方面下工夫,来增加通信的可靠性,从而提高整体的通信性能。国外的水声MODEM产品一般采用了纠错编码来进行差错控制,如L-3Communications ELAC Nautik GmbH公司的Digital Underwater Modem UM 30水声MODEM和Sonardyne公司的uCOMM Omni MF水声MODEM。
由香农信道编码理论知,形成好的纠错编码需具备三个前提条件,一为码的长度要长,二为码必须随机,三要采用最大似然概率译码。据报道,低密度奇偶校验码LDPC,在码长为107时,距离香农限0.0045dB,可见好的纠错码是长码,而水声通信的数据率一般较低,码长度过长,会引起很大的编码延时,降低通信的实时性,因此水声通信仅仅采用纠错编码,并不能较好降低通信的误码率。
发明内容
本发明的目的是克服现有技术的缺点和不足,提供一种水声MODEM混合自动重传方法,该方法为纠、检错编码联合,并实现自动反馈重传,同时结合递增冗余编码技术,减少误码率,提高水声通信的可靠性,进一步降低仅采用纠错码的误码率。
为解决上述技术问题,本发明是提出以下技术方案实现的:这种水声MODEM混合自动重传方法,步骤如下:
(1)、收端解码获得发端的码字序列,先RS码纠错,再CRC码检错,检查出那些超出RS码纠错能力的错误码字;
(2)、如果收端没有发现任何错误,则反馈ACK信号,如果发现了错误,收端首先发射一个NACK信号,然后收端再将错误的帧编号进行组帧编码发射,将这些检错结果反馈给发端,要求发端重发对应帧编号的信息;
(3)、发端根据收到的错误包号,提取错误帧编号的信息,将该信息进行递增冗余编码,重新发射给收端;
(4)、收端调整RS码参数,提取第一次收到的信息码与接收到冗余编码的校验码,再次进行RS码纠错,然后CRC码检错,直到认为正确为止,如果不正确,重复1~3步骤,如果重传超过了收发双方规定次数,也会终止双方通信。
作为优选:在发端,首先将待发送的信息码进行CRC检错编码,加入CRC码的校验位,再按照帧格式对含CRC码的校验位信息码的进行编号,在MODEM的RAM备份一份该信息码和编号;然后进行RS纠错编码,加入RS码的校验位,完成第1次通信发射的编码过程,信息发射后,发端MODEM要一直处于帧听状态,来获得接收端的反馈信息,如果获得ACK反馈,则结束本次通信,否则要将接收端的错误信息解调出来,获得错误的帧编号后,按照此编号从RAM中找到需要重发信息码,对该信息码重新进行RS编码,将递增的冗余编码进行第2次通信发射,发射后又进入帧听状态,如果还是没有收到接收端的ACK反馈,则重复第2次通信编码发射过程,直到收到接收端的ACK反馈为止,如果重传的次数超过了规定的最大重传次数,发端MODEM也将终止本次通信过程;
在收端,首先将解调出的原始信息码进行RS译码,获得的信息码再进行CRC译码,如果CRC译码结果为检查出没有错误,则将发送一个ACK信号,该信号为一个帧头信号结合一个固定频率f1单频信号,并结束该通信过程;发端只要检测到频率f1就知道收端接收的信息正确,如果检查出错误,收端首先发射一个NACK信号,该信号为一个帧头信号结合一个固定频率f2单频信号,再将该错误位于哪个帧编号的信息编码发射给发端;之后进入通信帧听状态,第2次的通信接收将按照收发双方约定好的冗余度修改RS码的译码参数进行RS译码,之后又进行CRC译码,根据检查结果决定反馈信号,如果还是检查出错误,将重复第2次通信接收过程,接受次数超过了重传次数将结束整个通信过程。
作为优选,所述RS编码步骤如下:
(1)、首先可编制GF域运算汇编函数库,在该函数库中定义了一种称之为码失的变量;
(2)、获得GF域的码矢与多项式的映射表;
(3)、由根值计算生成多项式;
(4)、码矢多项式与生成多项式相乘。
作为优选,所述RS译码过程步骤如下:
(1)、获得GF域的码矢与多项式的映射表;
(2)、计算伴随多项式;
(3)、BM迭代计算,获得错误值多项式;
(4)、钱搜索获得错误位置(求解方程组,获得根值);
(5)、错误值计算,进行纠错。
作为优选,所述循环冗余校验码CRC检错过程步骤如下:CRC校验采用多项式编码方法,发送方和接收方用同一个生成多项式g(x),发送方以g(x)去除信息多项式t(x),得到的余数作为CRC校验码;校验时,以计算的校验结果是否为0,判断数据帧是否出错。
本发明的原理:提出了混合自动重传HARQ的差错控制方案,该方案为纠、检错编码联合,并实现自动反馈重传,同时结合递增冗余编码技术,减少误码率,该方案已经在研制的水声MODEM中获得应用,取得良好效果。HARQ技术结合了前向纠错方式FEC和重传反馈方式ARQ。HARQ技术的基本思想是收端正确接收到数据帧后,给发端发确认信号ACK;如果收端收到错误信息,给发端发否定确认信号NACK,要求发端重发数据包。在传输过程中误码率高时,采用FEC容易出现“乱纠”现象,采用ARQ方式的检错功能,检查出码字序列的错误,将检查结果反馈给发端,发端根据反馈结果,把收端认为有错的消息再次传送,直到收端认为正确接收为止。HARQ技术由于具备了错误自动重传功能,因此比仅采用前向纠错方式FEC的误码率要低。本发明的前向纠错方式FEC采用RS码,它是基于迦罗华域GF的特殊的多进制的BCH码,具有较强的纠突发错误能力,ARQ方式的检错码采用了循环冗余校验码CRC,它是由线性分组码分支出来,编码简单且误判概率很低,在通信、计算机等领域运用十分广泛,UART通信芯片、以太网芯片、MPEG解码芯片等,都采用了CRC码。
本发明制定了采用了多参数编译的RS码作为前向纠错编码,CRC码作为检错码,并对反馈后的错误信息递增冗余编码技术,使得能够比较智能地改变对错误信息再次纠正的纠错能力,实现时,本发明充分分析了RS码、CRC码的编译码运算特点,开发了专门针对在编码领域运算的函数库,只需要调用这些函数库,就可以很方便的完成整个编译码过程。
本发明的优点在于:
(1)在水声通信中,由于受码长限制,很难找到纠错能力强的纠错码,本发明的混合自动重传结合了纠、检错编码技术,实现前向纠错和反向纠错,很大程度降低误码率,通信实验误码率结果。
(2)RS码、CRC码模块由于采用C与汇编混合编程,代码执行效率与占用硬件资源少,据测试,RS码最大可支持2.5Mbps比特流的实时编译码,存储器占用率3.9%,CRC码最大可支持32Mbps比特流的实时编译码,存储器占用率1.14%,本发明开发的RS码、CRC码模块可集成在其他通信系统中。
附图说明
图1利用本发明的GF域函数库实现的RS编码过程;
图2利用本发明的GF域函数库实现的RS译码过程;
图3为SW-HARQ原理示意图;
图4为SR-HARQ原理示意图;
图5收发端进行HARQ的流程示意图。
具体实施方式
下面结合附图和实施例对发明作进一步说明:
(1)RS(Reed-Solomon)纠错码实时模块与实现
RS码最主要特点之一是码元取自GF(q)上,GF(q)域运算实质表现为逻辑运算,因此采用定点DSP较浮点DSP更具优势,首先可编制GF域运算汇编函数库,在该函数库中定义了一种称之为码失的变量,以下函数库基于该变量进行运算的,如下:
①GF域的向量与向量的乘法
②GF域的向量与矩阵的乘法
③GF域的向量求幂
④GF域的向量点积
⑤GF域的向量加法
⑥GF域的向量与、或、非等运算
⑦GF域的向量卷积
⑧GF域的模值运算
为了使得本发明的RS码模块可以集成在其他通信系统中,并且多参数编译码,实现时并不是采用了存储数据表的方式,而是利用了这些函数库来通过计算获得这些数据表,本发明的RS码的编码流程图如图1,RS码的译码流程图如图2。
(2)循环冗余校验码CRC检错模块
CRC校验采用多项式编码方法,发送方和接收方用同一个生成多项式g(x),发送方以g(x)去除信息多项式t(x),得到的余数作为CRC校验码。校验时,以计算的校验结果是否为0,判断数据帧是否出错。利用GF域运算汇编函数库中的除法运算函数很方便实现多项式相除,并且实现多种参数的CRC码,分别为CRC-4、CRC-12、CRC-16、CRC-32等,由信息帧的长短,可选择不同参数的CRC码。
(3)混合自动重传HARQ的差错控制方案
水声MODEM采取了两种HARQ,停止等待模式SW-HARQ和选择模式SR-HARQ,如图3、4,传输协议包、参数包、命令包等,采用SW-HARQ,传输数据包,采用SR-HARQ。前向纠错方式FEC采用了RS码,检错码采用了CRC码,形成纠、检错编码联合,并自动重传反馈的差错控制系统。
在发端,首先将待发送的信息码进行CRC检错编码,加入CRC码的校验位,再按照帧格式对含CRC码的校验位信息码的进行编号,在MODEM的RAM备份一份该信息码和编号,然后进行RS纠错编码,加入RS码的校验位,完成第1次通信发射的编码过程,信息发射后,发端MODEM要一直处于帧听状态,来获得接收端的反馈信息,如果获得ACK反馈,则结束本次通信,否则要将接收端的错误信息解调出来,获得错误的帧编号后,按照此编号从RAM中找到需要重发信息码,对该信息码重新进行RS编码,此次编码可按照冗余度10%递增,增加RS码的纠错能力,将递增的冗余编码进行第2次通信发射,发射后又进入帧听状态,如果还是没有收到接收端的ACK反馈,则重复第2次通信编码发射过程,直到收到接收端的ACK反馈为止,如果重传的次数超过了规定的最大重传次数,发端MODEM也将终止本次通信过程。
在收端,首先将解调出的原始信息码进行RS译码,获得的信息码再进行CRC译码,如果CRC译码结果为检查出没有错误,则将发送一个ACK信号,该信号为一个帧头信号结合一个固定频率f1单频信号,并结束该通信过程,发端只要检测到频率f1就知道收端接收的信息正确,如果检查出错误,收端首先发射一个NACK信号,该信号为一个帧头信号结合一个固定频率f2单频信号,再将该错误位于哪个帧编号的信息编码发射给发端,之后进入通信帧听状态,第2次的通信接收将按照收发双方约定好的冗余度修改RS码的译码参数进行RS译码,之后又进行CRC译码,根据检查结果决定反馈信号,如果还是检查出错误,将重复第2次通信接收过程,接受次数超过了重传次数将结束整个通信过程。
如图5为收发端进行HARQ的流程,其整个过程为:
a.收端解码获得发端的码字序列,先RS码纠错,再CRC码检错,检查出那些超出RS码纠错能力的错误码字。
b.如果收端没有发现任何错误,则反馈ACK信号,如果发现了错误,收端首先发射一个NACK信号,然后收端再将错误的帧编号进行组帧编码发射,将这些检错结果反馈给发端,要求发端重发对应帧编号的信息。
c.发端根据收到的错误包号,提取错误帧编号的信息,将该信息进行递增冗余编码,为节省通信时间,只将这些冗余编码的校验码组帧编码重新发射给收端。
d.收端调整RS码参数,提取第一次收到的信息码与接收到冗余编码的校验码,再次进行RS码纠错,然后CRC码检错,直到认为正确为止,如果不正确,重复a~c步骤,如果重传超过了收发双方规定次数,也会终止双方通信。
以上对本发明的描述不具有限制性,如果本领域的普通技术人员受其启示,在不脱离本发明权利要求的保护的情况,作出本发明的其它结构变形和实施方式,均属于本发明的保护范围。
Claims (3)
1、一种水声MODEM混合自动重传方法,其特征在于:步骤如下:
(1)、收端解码获得发端的码字序列,先RS码纠错,再CRC码检错,检查出那些超出RS码纠错能力的错误码字;
(2)、如果收端没有发现任何错误,则反馈ACK信号,如果发现了错误,收端首先发射一个NACK信号,然后收端再将错误的帧编号进行组帧编码发射,将这些检错结果反馈给发端,要求发端重发对应帧编号的信息;
(3)、发端根据收到的错误包号,提取错误帧编号的信息,将该信息进行递增冗余编码,重新发射给收端;
(4)、收端调整RS码参数,提取第一次收到的信息码与接收到冗余编码的校验码,再次进行RS码纠错,然后CRC码检错,直到认为正确为止,如果不正确,重复1~3步骤,如果重传超过了收发双方规定次数,也会终止双方通信。
2、根据权利要求1所述的水声MODEM混合自动重传方法,其特征在于:在发端,首先将待发送的信息码进行CRC检错编码,加入CRC码的校验位,再按照帧格式对含CRC码的校验位信息码的进行编号,在MODEM的RAM备份一份该信息码和编号;然后进行RS纠错编码,加入RS码的校验位,完成第1次通信发射的编码过程,信息发射后,发端MODEM要一直处于帧听状态,来获得接收端的反馈信息,如果获得ACK反馈,则结束本次通信,否则要将接收端的错误信息解调出来,获得错误的帧编号后,按照此编号从RAM中找到需要重发信息码,对该信息码重新进行RS编码,将递增的冗余编码进行第2次通信发射,发射后又进入帧听状态,如果还是没有收到接收端的ACK反馈,则重复第2次通信编码发射过程,直到收到接收端的ACK反馈为止,如果重传的次数超过了规定的最大重传次数,发端MODEM也将终止本次通信过程;
在收端,首先将解调出的原始信息码进行RS译码,获得的信息码再进行CRC译码,如果CRC译码结果为检查出没有错误,则将发送一个ACK信号,该信号为一个帧头信号结合一个固定频率f1单频信号,并结束该通信过程;发端只要检测到频率f1就知道收端接收的信息正确,如果检查出错误,收端首先发射一个NACK信号,该信号为一个帧头信号结合一个固定频率f2单频信号,再将该错误位于哪个帧编号的信息编码发射给发端;之后进入通信帧听状态,第2次的通信接收将按照收发双方约定好的冗余度修改RS码的译码参数进行RS译码,之后又进行CRC译码,根据检查结果决定反馈信号,如果还是检查出错误,将重复第2次通信接收过程,接受次数超过了重传次数将结束整个通信过程。
3、根据权利要求1所述的水声MODEM混合自动重传方法,其特征在于:所述循环冗余校验码CRC检错过程步骤如下:CRC校验采用多项式编码方法,发送方和接收方用同一个生成多项式g(x),发送方以g(x)去除信息多项式t(x),得到的余数作为CRC校验码;校验时,以计算的校验结果是否为0,判断数据帧是否出错。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910100747A CN101610139B (zh) | 2009-07-20 | 2009-07-20 | 一种水声modem混合自动重传方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910100747A CN101610139B (zh) | 2009-07-20 | 2009-07-20 | 一种水声modem混合自动重传方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101610139A true CN101610139A (zh) | 2009-12-23 |
CN101610139B CN101610139B (zh) | 2012-08-29 |
Family
ID=41483740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910100747A Active CN101610139B (zh) | 2009-07-20 | 2009-07-20 | 一种水声modem混合自动重传方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101610139B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171768A (zh) * | 2017-05-10 | 2017-09-15 | 深圳市朗信浩通科技有限公司 | 水声通信方法及装置 |
CN108234030A (zh) * | 2018-01-12 | 2018-06-29 | 苏州汇万家数字科技有限公司 | 声波传输装置及其传输方法 |
CN108270499A (zh) * | 2018-04-08 | 2018-07-10 | 西北工业大学 | 一种水声通信性能测试设备及方法 |
CN108281160A (zh) * | 2018-01-12 | 2018-07-13 | 南阳师范学院 | Dvd纠错码的设计方法 |
CN108683426A (zh) * | 2018-05-18 | 2018-10-19 | 中国科学院微电子研究所 | 一种基于bch码的ecc系统及存储器 |
CN113132054A (zh) * | 2019-12-31 | 2021-07-16 | 杭州萤石软件有限公司 | 数据传输方法、装置及系统 |
CN115361103A (zh) * | 2022-08-18 | 2022-11-18 | 陈冠宇 | 用于选择-重复混合式自动重传请求协议的缓冲区管理机制 |
WO2023116245A1 (zh) * | 2021-12-22 | 2023-06-29 | 华为技术有限公司 | 发送方法、接收方法、装置、系统、设备及存储介质 |
CN117271202A (zh) * | 2023-11-23 | 2023-12-22 | 中国西安卫星测控中心 | 多遍重发数据最优提取方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1165123C (zh) * | 2001-12-30 | 2004-09-01 | 中国科学院声学研究所 | 高码速率低误差概率的水声相干通信系统的信号处理方法 |
CN101257354A (zh) * | 2008-04-15 | 2008-09-03 | 哈尔滨工程大学 | 一种低码率的水下语音通信方法 |
-
2009
- 2009-07-20 CN CN200910100747A patent/CN101610139B/zh active Active
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171768A (zh) * | 2017-05-10 | 2017-09-15 | 深圳市朗信浩通科技有限公司 | 水声通信方法及装置 |
CN108234030A (zh) * | 2018-01-12 | 2018-06-29 | 苏州汇万家数字科技有限公司 | 声波传输装置及其传输方法 |
CN108281160A (zh) * | 2018-01-12 | 2018-07-13 | 南阳师范学院 | Dvd纠错码的设计方法 |
CN108270499A (zh) * | 2018-04-08 | 2018-07-10 | 西北工业大学 | 一种水声通信性能测试设备及方法 |
CN108683426A (zh) * | 2018-05-18 | 2018-10-19 | 中国科学院微电子研究所 | 一种基于bch码的ecc系统及存储器 |
CN108683426B (zh) * | 2018-05-18 | 2022-08-26 | 中国科学院微电子研究所 | 一种基于bch码的ecc系统及存储器 |
CN113132054A (zh) * | 2019-12-31 | 2021-07-16 | 杭州萤石软件有限公司 | 数据传输方法、装置及系统 |
CN113132054B (zh) * | 2019-12-31 | 2022-04-26 | 杭州萤石软件有限公司 | 数据传输方法、装置及系统 |
WO2023116245A1 (zh) * | 2021-12-22 | 2023-06-29 | 华为技术有限公司 | 发送方法、接收方法、装置、系统、设备及存储介质 |
CN115361103A (zh) * | 2022-08-18 | 2022-11-18 | 陈冠宇 | 用于选择-重复混合式自动重传请求协议的缓冲区管理机制 |
CN117271202A (zh) * | 2023-11-23 | 2023-12-22 | 中国西安卫星测控中心 | 多遍重发数据最优提取方法 |
CN117271202B (zh) * | 2023-11-23 | 2024-02-09 | 中国西安卫星测控中心 | 多遍重发数据最优提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101610139B (zh) | 2012-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101610139B (zh) | 一种水声modem混合自动重传方法 | |
KR101530933B1 (ko) | 집합된 패킷 전송들에서의 패킷-레벨 소거 보호 코딩 | |
US8327234B2 (en) | Code block reordering prior to forward error correction decoding based on predicted code block reliability | |
WO2009015170A1 (en) | Hybrid automatic repeat request (harq) systems and methods for packet-based networks | |
US8780694B2 (en) | Hybrid ARQ with variable retransmission energy | |
CN105306165A (zh) | 数据发送方法及装置 | |
CN101621367B (zh) | 一种基于包校验信息的harq译码方法 | |
CN103490866B (zh) | 星地传输网络中基于网络编码的harq传输方法 | |
US8386892B1 (en) | Partial packet recovery for wireless networks | |
Angelopoulos et al. | PRAC: Exploiting partial packets without cross-layer or feedback information | |
EP2264930B1 (en) | Distributed code generation method and device | |
CN102148665B (zh) | 一种lt码的译码方法 | |
CN101777963B (zh) | 一种基于反馈模式的帧级别编码与译码方法 | |
CA2694933C (en) | Code block reordering prior to forward error correction decoding based on predicted code block reliability | |
EP1932268B1 (en) | Method, apparatuses and system for error detection and selective retransmission | |
CN101764677B (zh) | 一种基于前向纠错的帧级别编码与译码方法 | |
CN102208963B (zh) | 一种系统二进制确定无速率码的译码方法 | |
WO2017176147A1 (en) | Device and method for adjusting transmission size in case of decoding failures | |
CN101741516B (zh) | 一种基于无速率模式的帧级别编码与译码方法 | |
CN101232346B (zh) | 低密度奇偶校验码译码方法和译码装置 | |
Lin et al. | An adaptive hybrid ARQ scheme with constant packet lengths | |
Veer | OVERVIEW OF ERROR DETECTION AND CORRECTION SCHEME IN COMMUNICATION | |
Ur-Rehman et al. | Iterative enhanced packet combining over hybrid-arq | |
Wei et al. | Recovering erroneous data bits using error estimating code | |
Hund et al. | A packet-level adaptive forward error correction scheme for wireless networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |