繁体   English   中英

如何计算CRC码的汉明距离

[英]How to Calculate Hamming Distance of CRC code

我的研究生教授给了我们一个任务,计算他在幻灯片中演示的CRC方法的汉明距离

他向我们展示了CRC协议如何捕获所有单,双,奇数个误码,突发错误2 <= k <= n,突发错误n + 1(其中余数为0且消息错误地吸收为1) / 2 ^(n-1),因为第一位和最后一位始终固定为1,最后出现的错误突发大于n + 1,而其余的概率为0,其中1/2 ^ n

到目前为止,这是我对他的两部分问题的回答:

问题5

a)考虑带有p,q和附加r位的奇偶校验位协议。 该协议的汉明距离是多少? 简要说明原因

我们知道Hamm(code)> = x +1。将奇偶校验位协议与p的q和r结合使用可提供3位错误检测能力。 因此x =3。这意味着该协议的汉明距离> = x + 1 = 3 +1 = 4。

b)假设我们有一个CRC协议,它满足了我们在幻灯片中描述的所有理想属性。 该协议的汉明距离是多少? 简要解释原因。

如上所述,代码的汉明距离是x + 1,其中x是x比特错误检测能力。 如果我们有一个CRC协议满足我们在幻灯片中讨论的所有理想属性,这些属性是:1)所有单比特错误2)所有双比特错误3)所有奇数比特错误4)k个比特的突发错误,2 <= k <= n

如果使用这些因素,我们可以看到CRC协议满足所有错误突发,包括2个<= k <= n个突发。 这意味着Hamm(Code)> = x + 1 =(n-2)+1 = n-1。

c)对于a)和b),可以将这些协议用于纠错吗?如果可以,则可以纠正多少位? (即,他们可以执行x位校正,如果是,则x是什么?)说明如何达到此值。

对于a),因为我们知道所讨论的奇偶校验位协议可以检测到所有3个或更少的位错误,x =3。我们也知道为了执行x位校正:Hamm(code)> = 2x + 1 = 2( 3)+ 1 = 7


我不确定这是否正确

但是对于b)部分,我对CRC协议的错误纠正感到困惑。 我对汉明校正的答案是Hamm(code)> = 2x + 1 <= 2(n-1)+1 = 2n-2 + 1 = 2n-1我什至不确定这完全正确还是我能做到确定它可以纠正的位数。

实际上,我最终看到的是我最缺乏知识的地方,但是仍然不确定我对a)和b)的回答是否正确。 有人可以告诉我我走的路是否正确吗? 我不是在寻找“这就是答案”。 如果我是正确的话,听到是肯定会很高兴,但是如果不是这样的话,一个非常简单的指导将非常感谢。

对于a),因为我们知道所讨论的奇偶校验位协议可以检测到所有3个或更少的位错误,因为Hamm(code)> = 4,所以x =3。我们也知道为了执行x位校正:Hamm(code) > = 2x +1。因此,由于2(1)+ 1 = 3,我们只能检测单个位错误。大于3的任何东西都将大于4。

对于b),我们知道CRC协议的Hamm(code)> = n + 2,其中x = n + 1。 为了使Hamm(code)> = 2x + 1,x <= floor(n / 2)。 然后,该协议可以使用错误纠正。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM