0

我在使用 SEC/DED 纠错码时遇到了一些问题。似乎我发现了一些解码器认为发生了双位翻转但真正发生的情况。我想我做错了什么,但我无法理解是什么。让我给你看一个例子。

假设我想1011使用 (7,4) 代码加上执行两次错误检测所需的额外位对 4 位进行编码。编码的字应该是00110011,其中最高位是额外的奇偶校验位,以下两个是 p0 和 p1 等等。

现在,让我们假设在传输过程中,较低的有效位被翻转;因此接收到的单词将是00110010。接收器将从该代码中提取四个接收到的数据位 1010 并将构造一个新代码,该代码将产生01011010. 最后,接收器将对获得的两个代码执行按位异或0111。最后三位表示第 7 位已被翻转(这是正确的),但第一位是 0,据我所知,解码器应该将这种情况视为发生了不止一个位翻转。

我做错了什么?

4

1 回答 1

0

我想我已经解决了这个问题。

在上面的示例中,我计算了校正子,然后计算了结果码字的一个新的整体奇偶校验位。相反,我应该检查接收到的单词的整体奇偶性并将 error_happened 布尔值设置为该值;然后计算综合症。

于 2013-07-01T08:48:37.100 回答