FEC介绍(五)— RS编解码学习路径总结

前提:因项目需要,需要用代码实现RS编解码过程。在基本上算是小白的情况下,按照如下路径学习之后,用代码实现了RS编解码过程。需要说明的是,这个学习路径仅针对工程技术人员。

1、链接:两种丢包处理策略:丢包重传 和 FEC(前向纠错) - 简书

通过这个链接,可以了解为什么要有fec,fec大致是如何实现的。简单的说,fec即为纠错的一种方式,通过特定的算法将k个数据包编程成h个,实现有限个数的纠错。本质上就是异或处理。

2、链接①:有限域计算简述 - 知乎

链接②:理解FEC(Reed-Solomon)编码 - 知乎

通过链接①,可以了解有限域计算的问题。因为RS编解码的计算,均在有限域内。

通过链接②中的实例,可以理解编解码的计算过程,对整体编解码计算过程,有实际的理解。需要注意的是,在讲解译码时,错误个数是直接按照已知来处理的。实际在处理时是未知的,作者在评论区也补充了,如果错误个数是2个,按照其他个数来进行方程计算,是无解的。</

  • 1
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Raptor编解码是一种前向纠错编码技术,用于在无线通信和数据存储中提高数据传输的可靠性。它是一种基于FEC(Forward Error Correction,前向纠错)的编码方案,可以通过添加冗余信息来检测和纠正传输过程中的错误。 Raptor编解码的核心思想是使用Fountain码(喷泉码)生成冗余数据。Fountain码是一种随机生成的码字序列,可以无限地生成冗余数据。编码过程中,源数据被分割成多个小块,并与Fountain码进行异或运算,生成冗余数据。解码过程中,接收端收到的数据包含了源数据和冗余数据,通过对接收到的数据进行解码和纠错操作,可以恢复出原始的源数据。 在MATLAB中,可以使用Communication Toolbox提供的函数来实现Raptor编解码。具体步骤如下: 1. 创建一个Raptor编码器对象:使用comm.RaptorEncoder函数创建一个Raptor编码器对象,并设置相关参数,如编码块大小、冗余因子等。 2. 编码:将待传输的数据分割成多个小块,并使用encode方法对每个小块进行编码,生成冗余数据。 3. 传输:将编码后的数据通过信道进行传输。 4. 创建一个Raptor解码器对象:使用comm.RaptorDecoder函数创建一个Raptor解码器对象,并设置相关参数,如编码块大小、冗余因子等。 5. 解码:接收端收到数据后,使用decode方法对接收到的数据进行解码和纠错操作,恢复出原始的源数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值