纠错码 - 低密度奇偶校验码


纠错码

纠错码 (ECC) 是一系列由特定算法生成的数字,用于检测和消除通过噪声信道传输的数据中的错误。纠错码确定已损坏位的精确数量以及损坏位的位置,并在算法的限制范围内。

ECC 可以大致分为两种类型:分组码和卷积码。低密度奇偶校验码 (LDPC) 是一种线性纠错分组码。它们适用于噪声很大的信道中的大块大小。

LDPC 码由 Robert G. Gallager 在 1960 年在麻省理工学院的博士论文中开发。因此,它们也被称为 Gallager 码。

低密度奇偶校验码的编码

低密度奇偶校验 (LFPC) 码由一个奇偶校验矩阵指定,该矩阵主要包含 0 和少量 1。矩阵的行表示方程,列表示码字中的位,即码符号。

LDPC 码由 表示,其中 是块长度, 是每列中 1 的数量, 是每行中 1 的数量,具有以下属性 -

  • 是每列中 1 的数量,其中 j > 3

  • 是每行中 1 的数量,其中 k > j。

示例 1 - 汉明码的奇偶校验矩阵

以下奇偶校验矩阵汉明码具有 ,其中 4 个信息位后跟 3 个偶校验位。校验位是对角线为 1。奇偶校验方程如下所示 -

示例 2 - 低密度奇偶校验矩阵

此示例说明了一个 (12, 3, 4) LDPC 矩阵,即 n = 12,j = 3 且 k = 4。这意味着每个方程对 4 个码符号进行运算,每个码符号出现在 3 个方程中。与汉明码的奇偶校验矩阵不同,此码在奇偶校验位中没有任何对角线 1。

LDPC 码的解码

LDPC 码有两种可能的解码技术 -

  • 在第一种技术中,解码器根据奇偶校验方程执行所有奇偶校验。如果任何位包含超过固定数量的不满足奇偶校验方程,则该位的数值将反转。获得新值后,使用新值重新计算奇偶校验方程。重复此过程,直到所有奇偶校验方程都满足为止。

    这种解码过程很简单,但仅适用于奇偶校验集较小的情况。

  • 第二种方法对 LDPC 图执行概率算法。该图是一个稀疏二分图,包含两组节点,一组表示奇偶校验方程,另一组表示码符号。如果码符号存在于方程中,则一条线将第一组中的节点连接到第二组。解码是通过沿着图的线传递消息来完成的。消息从消息节点传递到校验节点,然后从校验节点传递回消息节点并计算其奇偶校验值。

    这些方法的两个子类是置信传播和最大似然解码。尽管这些解码算法很复杂,但它们比前者产生更好的结果。

更新于:2020 年 6 月 27 日

2K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告