如何解决Reed-Solomon 检测能力
我对 Reed-Solomon 检测能力的分析感兴趣(仅检测,当无法纠正时),特别是 RS(10,8),符号为 8 位,一个码字中总共有 10 个符号,其中 8 个用于数据,2 个用于 ECC。 在这种情况下,Reed-Solomon 码应该能够纠正 1 个有多个错误的符号,但在文献中我没有找到关于错误检测能力的太多信息(没有纠正),例如在 2 个不同的符号中有 2 个错误RS 应该能够检测到但不正确。
我想用 Python 做一些 Montecarlo 分析,我为 Reed-Solomon 找到了这个包: https://pypi.org/project/unireedsolomon/
python 包允许我创建 RS 代码,注入错误并进行更正解码,但它似乎没有提供检测能力,我尝试在两个不同的符号中注入 2 个错误,但我得到了错误纠正,我相信在在这种情况下,Reed-Solomon 应该能够报告无法纠正的错误。 unireedsolomon 包似乎没有实现这样的检测功能,或者我错了。 你知道unireedsolomon包中是否有这样的能力吗?
或者您对我如何使用不同的python包运行此类仅检测分析有建议吗? 或者任何关于 Reed-Solomon 代码中检测的评论也很有用。 谢谢
解决方法
RS(10,8) 保证检测任何 2 个错误或纠正任何单个错误,但不能同时检测两者。有 2 个错误且码字中只有 10 个符号,大多数情况下它应该检测到 2 个错误的情况是不可纠正的,但是根据 2 个错误值和位置,它看起来好像有一个单一的错误的可能性很小在第三个位置出现错误,纠正过程将错误纠正,产生一个有效的代码字(两个校验子 == 0),但在 3 个位置与原始代码字不同。 10 个符号中有 2 个错误导致此类错误纠正的概率较低,约为 0.00001538。
如果 unireedsolomon 包的错误纠正率更高,我怀疑它没有消除 10 个符号代码字的 0 到 9 个有效位置范围之外的位置,并且由于错误的错误而产生无效的代码字-更正。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。