错误校正器编码和解码的制作方法

文档序号:7541328阅读:219来源:国知局
错误校正器编码和解码的制作方法
【专利摘要】本发明涉及用于编码和解码包含源数据(S)和冗余数据(R)的经编码数据的方法和装置,所述冗余数据(R)是通过在编码之后将错误校正器码应用到所述源数据上、实施包含采用其系统形式的单位矩阵和用于从源数据转换成冗余数据的可逆矩阵(P)的生成矩阵来获得,所述编码或解码(12)是基于泰纳(Tanner)图,所述泰纳图通过叠加所述错误校正器码的图和所述错误校正器码的对偶码的图将这些图合并在一起。
【专利说明】错误校正器编码和解码1.【技术领域】
[0001]本发明的领域为使用错误校正码的数据编码和解码。
[0002]更具体地说,本发明涉及一种新颖的技术,所述技术用于对源数据进行编码、传递包含源数据和冗余数据的经编码数据包或经编码数据流,所述源数据和冗余数据既定在(例如无线电、光学或电学类型的)传输信道上进行传输或存储在硬件媒体中。本发明还涉及用于解码的对应的技术,所述技术尤其使校正传输信道中固有的传输错误成为可能。 [0003]本发明尤其可以应用于以下领域中:
[0004]-通过电线电信的信息传输,诸如使用ADSL标准的通信、或通过光纤或自由空间光学的光学电信;
[0005]-在空间和地面无线无线电通信中的信息传输,诸如TNT数字电视系统、DAB数字无线电系统、GSM或UMTS电话、WiFi无线电网络以及还有未来通信系统,诸如未来DVB、4G、LTE标准、未来因特网或车辆、物体和通信机器之间的信息的传输等;
[0006]-信息源的压缩和解压缩;
[0007]-在CDMA系统中被称为扰码序列的序列的生成和检测;
[0008]-在用于构成硬盘驱动器或计算机随机存取存储器或USB类型接口记忆棒等的磁性、光学、机械或电学大容量存储器中的信息存储;
[0009]-在微处理器的集成电路中或在计算机中的计算期间的信息校正;
[0010]-通过基于神经网络的人工智能进行控制的机器人技术;
[0011]-等等。
2.【背景技术】
[0012]许多编码技术用于在解码时通过从源数据中生成冗余数据来校正传输错误。
[0013]因此,错误校正码通常通过以下进行定义:
[0014]-长度n,对应于在编码器的输出处的数据(具有由k个源数据和(n-k)个冗余数据形成的长度η的码字);
[0015]-多个有效负载信息位或符号k,对应于在编码器的输入处的数据,所述数据也被称为源数据;以及
[0016]-最小距离CU。
[0017]码的最小距离dmin对应于两个码字之间的最小距离。它使确定码在一个码字中可以校正的错误的最大数目成为可能。
[0018]因此,最小距离dmin越大,错误校正码越好,因为它实现了(dmin-l)个错误符号的检测和的校正(其中运算符U指定整数部分)。
[0019]在实现传输错误的校正的编码技术中,就对具有较大长度η的码的错误校正来说,涡轮码和LDPC(低密度奇偶校验)码具有较高的性能,其中η约为至少数千位(η>1000)。
[0020]相反,涡轮码和LDPC码对于较短的码η具有较低的性能(η〈 1000)。
[0021]这部分由于以下事实:当循环的最小长度减小时,在解码处使用的置信传播算法或此算法的变体变得次优。可以回想起,循环对应于表示约束的泰纳图(Tanner graph)中的闭合路径,字的符号必须满足所述约束以构成码的字。泰纳图的概念是为人所熟知的并且特别在R.M.Tanner (R*M.泰纳)的论文中进行描述,所述论文为“通过图进行分析的最小距离界限”,IEEE信息论会刊,第47卷,2001年2月。
[0022]此种置信传播算法因此对具有非常密集的生成矩阵(B卩,具有许多处于I的位)的码并且因此对具有优良的相对最小汉明距离S=dmin/n的码是效率不高的。
[0023]此外,严格最佳穷举解码算法是难以获得的,因为它具有在0(2k)中的指数复杂性并且因此成本非常高,其中k为码的维度。此外,它不能实现较小长度码的实时编码。
[0024]此外,对于工业规模的使用,就硬件的成本和消耗的能量来说,错误校正码的最优化包括编码和解码的复杂性的最小化。现在,当码的长度是从小到平均值时,即约为n〈1000时,这些使错误校正码的解码最优化的问题变得更加难以解决。
[0025]因此,需要用于对有效错误校正码(即具有尽可能大的最小距离dmin并且尤其具有非常短的循环的错误校正码)进行解码的新颖的技术。
3.
【发明内容】

[0026]本发明提出了不具有现有技术的所有这些缺点的新颖方法,所述新颖方法采用用于解码经编码数据的方法的形式,所述经编码数据包含源数据和冗余数据。这些冗余数据是通过在编码时将错误校正码应用到源数据上、实施包含采用其系统形式的单位矩阵和可逆矩阵的生成矩阵来获得,所述可逆矩阵用于从源数据转换成冗余数据。
[0027]根据本发明,该方法包含一个用于解码的步骤,所述步骤同时实施被称为原始错误校正码的错误校正码和被称为对偶错误校正码的码,所述对偶错误校正码是原始错误校正码的对偶。
[0028]根据本发明,该方法包含用于借助于错误校正码解码经编码数据的步骤,所述步骤同时使用采用其原始形式和采用其对偶形式的错误校正码。
[0029]确切地说,采用其两个原始和对偶形式的错误校正码的联合使用减少了在解码处实施的迭代的数目,尤其是对于置信传播类型的算法并且因此对于较小长度码(n〈1000)的实时解码。
[0030]根据本发明,用于从源数据转换成冗余数据的矩阵P被认为是可逆的。没有其他约束施加到错误校正码上并且尤其到此码的长度或循环的长度上。因此,所实施的错误校正码被认为是准随机的。
[0031]本发明因此提供了比现有技术的那些算法更加简单并且更加有效的解码算法,尤其是对于具有较小长度和/或较短循环的码。
[0032]根据一个特定实施例,解码步骤实施被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于原始错误校正码的泰纳图与被称为对偶图的对应于对偶错误校正码的泰纳图进行叠加而获得,所述叠加由对应于相同源数据的原始图的输入变量与对偶图的输入变量之间的两两连接以及对应于相同冗余数据的原始图的输出变量与对偶图的输出变量之间的两两连接组成。
[0033]以此方式,原始-对偶图的每一个输入或输出变量连接到一对约束上,所述约束包含定义了基本树的等式型约束和模2加法型约束。换句话说,所提出的解码结构实现了小基本树的隔离,其中每一个小基本树对应于一段源数据或对应于一段冗余数据。
[0034]由于此基本树结构,所获得的原始-对偶图不具有任何环路结构,环路通常被认为是解码中的恶化的原因。换句话说,从树的根到叶子仅存在一条路径,因此在原始-对偶图中仅存在一条传播信息的路。因此,此结构通过最佳利用可获得的信息减少了循环的影响,所述影响在现有技术中造成了一个问题。换句话说,在原始-对偶图中的输入/输出变量的同时处理弥补了所进行的用于传播变量的计算并且因此减少了循环对解码算法的影响。
[0035] 此外,与经典的“置信传播”类型算法相比,内部变量的传播被修改并且实现了变得更加容易的较小长度码的解码。此基本树状结构使获得每一个树中的源数据的先验传播的平均成为可能。
[0036]最后,与存在的经编码数据(源数据和冗余数据)一样多对的约束(或基本树)的存在指定了所有可获得数据的使用,从而提高了解码性能。在原始-对偶图的输入和输出变量上可获得的信息也为现有技术的可获得信息的两倍。
[0037]因此,与当前技术相比,原始码的与对偶码的图的叠加通过朝向最靠近接收字的码字提供特别快速的解码算法的收敛而改进了解码性能。它还弥补了关于约束(等式、模2加法)的非线性。
[0038]确切地说,因为原始-对偶图的每一个输入或输出变量连接到包含等式型约束和模2加法型约束的一对约束上,所以根据本发明的解码方法包含用于确定原始-对偶图的至少一个内部变量的步骤,所述步骤执行以下操作:
[0039]-对于模2加法型约束:
[0040]〇连接到模2加法型约束上的变量从实数域到复数域的变换步骤;
[0041]〇在复数域中的加法步骤;
[0042]〇加法步骤的结果从复数域到实数域的变换步骤;
[0043]-对于等式型约束:
[0044]〇在实数域中的加法步骤。
[0045]以此方式,经执行以传播与等式型或模2加法型约束相关的变量的操作通过在复数域中或在实数域中使用加法型运算符而被简化。
[0046]确切地说,变换步骤(从实数域到复数域或从复数域到实数域)应用了非线性函数NL,使得:
[0047]

}/Vi[x]: log[I^CXPH 如:ifec Ψ O

I|_1 + exp[xJJB
[= 0如-Hbc = 0
[0048]应注意,此非线性函数等于其自身的反函数AUxpNLlx]。
[0049]此非线性函数的应用使获得在模2加法(异或运算)型约束的输出处的概率的后验计算等效物成为可能,方法为借助于实数值域中的简单加法和符号的乘法。以此方式,解码的操作复杂性减少。
[0050]根据一个特定实施例,因为原始-对偶图的每一个输入或输出变量连接到包含等式型约束和模2加法型约束的一对约束上,所以解码方法实施至少一次解码迭代,包含:[0051]-前向传播阶段,由连接到等式型约束上的原始-对偶图的内部变量的传播组成,以更新连接到模2加法型约束上的原始-对偶图的内部变量,以及
[0052]-后向传播阶段,由连接到模2加法型约束上的原始-对偶图的内部变量的传播组成,以更新连接到等式型约束上的原始-对偶图的内部变量。
[0053]换句话说,解码迭代包含在所有基本树中源数据的传播的第一阶段以及随后在所有基本树中冗余数据的传播的第二阶段,其中一个阶段将在每一个基本树的输出处获得的值传输给另一个阶段。
[0054]与每一对约束相关联的运算符因此同时起作用。
[0055]确切地说,前向传播阶段对连接到原始-对偶图的输入或输出变量上的每一对约束实施以下子步骤:
[0056]-确定分配给原始-对偶图的输入或输出变量的前向似然值vfy),在实数域中实施加法,使得:
[0057]
【权利要求】
1.一种用于解码经编码数据的方法,所述经编码数据包含源数据(S)和冗余数据(R), 所述冗余数据(R)是通过在编码时将错误校正码应用到所述源数据(S)上来获得,所述错误校正码可以由包含采用其系统形式的单位矩阵和可逆矩阵(P)的生成矩阵表示,所述可逆矩阵用于从源数据转换成冗余数据, 其特征在于,所述方法包含一个用于解码的步骤(12),所述步骤同时实施被称为原始错误校正码的所述错误校正码和被称为对偶错误校正码的码,所述码是所述原始错误校正码的对偶, 所述方法为使用被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于所述原始错误校正码的泰纳图与被称为对偶图的对应于所述对偶错误校正码的泰纳图进行叠加来获得, 所述叠加由对应于相同源数据的所述原始图的输入变量(x0,...,x5)与所述对偶图的输入变量(x0,...,x5)的两两连接以及对应于相同冗余数据的所述原始图的输出变量(rO,..., r5)与所述对偶图的输出变量(rO,..., r5)的两两连接组成。
2.根据权利要求1所述的用于解码的方法,其特征在于所述原始-对偶图的每一个输入或输出变量连接到一对约束上,所述约束包含等式型约束和模2加法型约束, 并且在于所述解码方法包含用于确定所述原始-对偶图的至少一个内部变量的步骤,所述步骤实施: 对于模2加法型约束: 连接到所述模2加法型约束上的变量从实数域到复数域的变换的步骤, 在所述复数域的加法的步骤, 所述加法步骤的结果从所述复数域到所述实数域的变换步骤, 对于等式型约束: 在所述实数域中的加法步骤。
3.根据权利要求2所述的用于解码的方法,其特征在于所述变换的步骤应用非线性函数NL,使得:
4.根据权利要求1所述的用于解码的方法,其特征在于所述原始-对偶图的每一个输入或输出变量连接到一对约束上,所述约束包含等式型约束和模2加法型约束, 并且在于所述解码方法实施至少一次解码迭代,所述解码迭代包含: 前向传播阶段,由连接到等式型约束上的所述原始-对偶图的内部变量的传播组成,以更新连接到模2加法型约束上的所述原始-对偶图的内部变量,以及 后向传播阶段,由连接到模2加法型约束上的所述原始-对偶图的内部变量的传播组成,以更新连接到等式型约束上的所述原始-对偶图的内部变量。
5.根据权利要求4所述的用于解码的方法,其特征在于所述前向传播阶段对于连接到所述原始-对偶图的输入或输出变量上的每一对约束实施以下子步骤: 确定分配给所述原始-对偶图的所述输入或输出变量的前向似然值vOF(t),在所述实数域中实施加法,使得:
6.根据权利要求4所述的用于解码的方法,其特征在于所述后向传播阶段对于连接到所述原始-对偶图的输入或输出变量上的每一对约束实施以下子步骤: 在从所述实数域到所述复数域的变换之后,确定分配给连接到所述模2加法型约束上的所述变量的似然值,所述似然值被称为经变换后向似然值,使得:所述内部变量在变换之后表示为以下形式:
7.根据权利要求4所述的用于解码的方法,其特征在于它包含用于将所述原始-对偶图的所述输入变量、所述输出变量和所述内部变量初始化为零的预备步骤。
8.根据权利要求1所述的用于解码的方法,其特征在于所述原始-对偶图的至少两个输入或输出变量连接到相同的一对约束上,所述约束包含等式型约束和模2加法型约束。
9.一种用于解码经编码数据的装置,所述经编码数据包含源数据(S)和冗余数据(R), 所述冗余数据(R)是通过在编码时将错误校正码应用到所述源数据(S)上来获得,所述错误校正码可以由包含采用其系统形式的单位矩阵和可逆矩阵(P)的生成矩阵表示,所述可逆矩阵用于从所述源数据转换成所述冗余数据,
10.其特征在于所述装置包含用于解码的模块(12),所述模块同时实施被称为原始错误校正码的所述错误校正码以及被称为对偶错误校正码的码,所述码为所述原始错误校正码的对偶,方法为使用被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于所述原始错误校正码的泰纳图与被称为对偶图的对应于所述对偶错误校正码的泰纳图进行叠加而获得, 所述叠加由对应于相同源数据的所述原始图的输入变量(x0,...,x5)与所述对偶图的输入变量(x0,...,x5)的两两连接以及对应于相同冗余数据的所述原始图的输出变量(rO,..., r5)与所述对偶图的输出变量(rO,..., r5)的两两连接组成。
11.一种用于编码源数据(S)从而传递包含所述源数据(S)和冗余数据(R)的经编码数据的方法, 其特征在于所述编码方法包含编码步骤(11),所述编码步骤同时实施: 被称为原始错误校正码的错误校正码,所述错误校正码可以由包含采用其系统形式的单位矩阵和可逆矩阵(P)的生成矩阵表示,所述可逆矩阵用于从所述源数据转换成所述冗余数据,以及 被称为对偶错误校正码的码,所述码为所述原始错误校正码的对偶, 所述编码步骤实施被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于所述原始错误校正码的泰纳图与被称为对偶图的对应于所述对偶错误校正码的泰纳图进行叠加来获得, 所述叠加由对应于相同源数据的所述原始图的输入变量(x0,...,x5)与所述对偶图的输入变量(x0,...,x5)的两两连接以及对应于相同冗余数据的所述原始图的输出变量(rO,..., r5)与所述对偶图的输出变量(rO,..., r5)的两两连接组成。
12.一种用于源 数据(S)的编码从而传递包含所述源数据(S)和冗余数据(R)的经编码数据的装置, 其特征在于所述装置包含编码模块(11),所述编码模块同时实施: 被称为原始错误校正码的错误校正码,所述错误校正码可以由包含采用其系统形式的单位矩阵和可逆矩阵(P)的生成矩阵表示,所述可逆矩阵用于从所述源数据转换成所述冗余数据,以及 被称为对偶错误校正码的码,所述码为所述原始错误校正码的对偶, 所述编码模块实施被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于所述原始错误校正码的泰纳图与被称为对偶图的对应于所述对偶错误校正码的泰纳图进行叠加来获得, 所述叠加由对应于相同源数据的所述原始图的输入变量(x0,...,x5)与所述对偶图的输入变量(x0,...,x5)的两两连接以及对应于相同冗余数据的所述原始图的输出变量(rO,..., r5)与所述对偶图的输出变量(rO,..., r5)的两两连接组成。
13.一种用于数据的编码和解码的装置, 其特征在于它包含编码和解码模块,所述模块同时实施: 被称为原始错误校正码的错误校正码,所述错误校正码可以由包含采用其系统形式的单位矩阵和可逆矩阵(P)的生成矩阵表示,所述可逆矩阵用于从源数据转换成冗余数据,以及 被称为对偶错误校正码的码,所述码为所述原始错误校正码的对偶, 所述编码和解码模块实施被称为原始-对偶图的经修改泰纳图,所述经修改泰纳图是通过将被称为原始图的对应于所述原始错误校正码的泰纳图与被称为对偶图的对应于所述对偶错误校正码的泰纳图进行叠加来获得, 所述叠加由对应于相同源数据的所述原始图的输入变量(X0,...,x5)与所述对偶图的输入变量(x0,...,x5)的两两连接以及对应于相同冗余数据的所述原始图的输出变量(rO,..., r5)与所述对偶图的输出变量(rO,..., r5)的两两连接组成。
14.一种包含指令的计算机程序,当所述程序由处理器执行时,所述指令用于实施根据权利要求1所述的用于解码的方法或 根据权利要求11所述的用于编码的方法。
【文档编号】H03M13/11GK103959656SQ201280049940
【公开日】2014年7月30日 申请日期:2012年10月11日 优先权日:2011年10月14日
【发明者】让-克洛德·盖赫拉, 卜拉欣·维斯拉蒂 申请人:奥兰治
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1