编码方法及装置、及译码方法及装置的制造方法

文档序号:10555307阅读:202来源:国知局
编码方法及装置、及译码方法及装置的制造方法
【专利摘要】本发明公开了一种编码方法,所述编码方法包括:将信息码生成输入矩阵I;获取生成矩阵G所分解的n个单位循环矩阵;n为大于或等于2的正整数;将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算;将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩阵O。同时,本发明还公开了一种编码装置、解码方法及解码装置。采用本发明的技术方案,能节省编码时间及解码时间,提高编码效率以及解码效率。
【专利说明】
编码方法及装置、及译码方法及装置
技术领域
[0001] 本发明涉及编解码技术领域,具体涉及一种编码方法及装置、及译码方法及装置。
【背景技术】
[0002] 密度循环矩阵编码是信息编码中的一种方法,即信息码I与具有密度循环特性的 生成矩阵G进行编码,经运算输出矩阵0,其运算公式如下:
[0003;
[0004; 有若干个l,i卜一仃是上一仃的循朴石移。
[0005] 实际应用中,需要存储生成矩阵G,为了减小存储空间,普遍采用的方法是只存储 生成矩阵G的第一行Goitgogi ... gq],用1个时钟与信息码I运算得出〇〇后,对Go进行循环 右移,算出〇1,以此类推,在Q = q+1个时钟之后,可以得出全部编码结果。但是,这种方法使 得编码时所需的时钟数较大,比较费时间,影响了编码效率。同理,在对利用该编码方法的 编码结果进行解码时,所需的时钟数也较大,也会较为费时,从而影响解码效率。

【发明内容】

[0006] 有鉴于此,本发明期望提供一种编码方法及装置、及译码方法及装置,能节省编码 时间及解码时间,提高编码效率以及解码效率。
[0007]为达到上述目的,本发明的技术方案是这样实现的:
[0008] 本发明提供了 一种编码方法,所述方法包括:
[0009] 将信息码生成输入矩阵I;
[0010] 获取生成矩阵G所分解的η个单位循环矩阵;η为大于或等于2的正整数;
[0011] 将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算;
[0012] 将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩阵0。
[0013] 上述方案中,优选地,所述生成矩阵G具有密度循环特性;
[0014]
[0015] 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0016] 上述方案中,优选地,所述方法还包括:
[0017]预先设定生成矩阵G;
[0018] 将所述生成矩阵G分解成η个单位循环矩阵;其中,
[0019] 每个单位循环矩阵均为q+Ι行、q+Ι列的矩阵,且在每个单位循环矩阵中,第1个行 向量只有一个元素为1、其余元素均为〇;且第i+Ι个行向量是第i行个行向量的各元素依次 右移一个位置得到的向量;i为正整数,且l<i<q;q为大于或等于2的正整数。
[0020] 上述方案中,优选地,所述将所述生成矩阵G分解成η个单位循环矩阵,包括:
[0021] 获取生成矩阵G中第一行中的元素为1的个数以及元素为1的位置;
[0022]将所述第一行中元素为1的个数确定为η的值;
[0023] 基于所述生成矩阵G中第一行中的元素为1的个数以及元素为1的位置η个单位循 环矩阵。
[0024] 上述方案中,优选地,所述基于所述生成矩阵G中第一行中的元素为1的个数以及 元素为1的位置η个单位循环矩阵,包括:
[0025] 根据所述生成矩阵G中第一行中的元素为1的位置,确定所述η个单位循环矩阵中 的第一行的元素为1的位置;
[0026] 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的 第一行中除元素1之外的其他元素位置设置为〇;
[0027] 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到 第2个行向量,以此类推,将第i个行向量各元素依次右移一个位置得到第i + Ι个行向量,得 到n个单位循环矩阵。
[0028] 本发明还提供了 一种解码方法,所述方法包括:
[0029] 将接收到的编码输出矩阵0拆成η个待解码矩阵之和;η为大于或等于2的正整数;
[0030] 确定任意一个待解码矩阵,并在生成矩阵G所分解的η个单位循环矩阵中查找与所 述待解码矩阵相对应的单位循环矩阵;
[0031] 获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵;
[0032] 将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待解码矩阵进行乘 法运算,得到解码输出矩阵I。
[0033] 上述方案中,优选地,所述生成矩阵G具有密度循环特性;
[0034]
[0035] 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0036] 上述方案中,优选地,所述方法还包括:
[0037] 获取编码所采用的生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵;
[0038] 存储所述生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵。
[0039]本发明还提供了 一种编码装置,所述装置包括:
[0040] 第一处理器,用于将信息码生成输入矩阵I;
[0041] 第二处理器,用于获取生成矩阵G所分解的η个单位循环矩阵;η为大于或等于2的 正整数;
[0042] 第一运算器,用于将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算;
[0043] 第二运算器,用于将各个乘法运算结果进行加法运算,生成所述信息码的编码输 出矩阵0。
[0044] 上述方案中,优选地,所述生成矩阵G具有密度循环特性;
[0045]
[0046] 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+Ι行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0047] 上述方案中,优选地,所述编码装置还包括:
[0048] 第三处理器,用于:
[0049] 预先设定生成矩阵G;
[0050] 将所述生成矩阵G分解成η个单位循环矩阵;其中,
[0051]每个单位循环矩阵均为q+Ι行、q+Ι列的矩阵,且在每个单位循环矩阵中,第1个行 向量只有一个元素为1、其余元素均为〇;且第i+Ι个行向量是第i行个行向量的各元素依次 右移一个位置得到的向量;i为正整数,且l<i<q;q为大于或等于2的正整数。
[0052] 上述方案中,优选地,所述第三处理器,还用于:
[0053]获取生成矩阵G中第一行中的元素为1的个数以及元素为1的位置;
[0054]将所述第一行中元素为1的个数确定为η的值;
[0055]基于所述生成矩阵G中第一行中的元素为1的个数以及元素为1的位置η个单位循 环矩阵。
[0056] 上述方案中,优选地,所述第三处理器,还用于:
[0057]根据所述生成矩阵G中第一行中的元素为1的位置,确定所述η个单位循环矩阵中 的第一行的元素为1的位置;
[0058] 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的 第一行中除元素1之外的其他元素位置设置为〇;
[0059] 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到 第2个行向量,以此类推,将第i个行向量各元素依次右移一个位置得到第i + Ι个行向量,得 到n个单位循环矩阵。
[0060] 本发明还提供了 一种解码装置,所述装置包括:
[0061] 第四处理器,用于将接收到的编码输出矩阵0拆成η个待解码矩阵之和;η为大于或 等于2的正整数;
[0062]第五处理器,用于确定任意一个待解码矩阵,并在生成矩阵G所分解的η个单位循 环矩阵中查找与所述待解码矩阵对应的单位循环矩阵;
[0063] 第三运算器,用于获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵;
[0064] 第四运算器,用于将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待 解码矩阵进行乘法运算,得到解码输出矩阵I。
[0065] 上述方案中,优选地,所述生成矩阵G具有密度循环特性;
[0066]
[0067]在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+Ι行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0068]上述方案中,优选地,所述装置还包括:
[0069] 接收器,用于获取编码所采用的生成矩阵G以及生成矩阵G所分解成的η个单位循 环矩阵;
[0070] 存储器,用于存储所述生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵。
[0071] 本发明提供的编码方法及装置、及其对应的解码方法及解码装置,将信息码生成 输入矩阵I;获取生成矩阵G所分解的η个单位循环矩阵;η为大于或等于2的正整数;将各个 单位循环矩阵分别与所述输入矩阵I进行乘法运算;将各个乘法运算结果进行加法运算,生 成所述信息码的编码输出矩阵〇。如此,能节省编码或解码时所需要的时钟数,提高编码效 率以及解码效率。
【附图说明】
[0072] 图1为本发明实施例编码方法的实现流程示意图;
[0073] 图2为本发明实施例解码方法的实现流程示意图;
[0074] 图3为本发明实施例编码装置的结构示意图;
[0075] 图4为本发明实施例解码装置的结构示意图。
【具体实施方式】
[0076] 为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实 现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
[0077] 在本发明提供的编码方法及装置、及其对应的解码方法及解码装置的以下各实施 例中,主要思想是:
[0078] 利用信息码矩阵与单位循环矩阵的乘积是信息码循环系数的移位这一特性,将具 有密度循环特性的生成矩阵G分解为η个单位循环矩阵的和,即:
[0079]
[0080] 阵 η-1,
[0081] 具体地,子矩阵0、···、子矩阵η-1均为单位循环矩阵;每个单位循环矩阵均为q+1 行、q+1列的矩阵,且在每个单位循环矩阵中,第1个行向量只有一个元素为1、其余元素均为 〇;且第i+Ι个行向量是第i行个行向量的各元素依次右移一个位置得到的向量;i为正整数, 且l<i<q;q为大于或等于2的正整数。
[0082] 在所述生成矩P
_,第一行中包括至少两个1、至少一个 〇;且第j+Ι行是第j行的循环右移;j为正整数,且l$j<q;q为大于或等于2的正整数。
[0083]下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
[0084] 实施例一
[0085] 图1为本发明实施例编码方法的实现流程示意图,应用于第一设备,在本发明一个 优选实施例中,所述编码方法主要包括以下步骤:
[0086]步骤101:将信息码生成输入矩阵I。
[0087] 这里,所述信息码是指原始信息符号。
[0088] 通常,所述信息码为数组形式,将数组形式的信息码按照矩阵形式输出,即生成输 入矩阵。
[0089] 例如,输入矩阵I可以表示成
[0090]步骤102:获取生成矩阵G所分解的η个单位循环矩阵;η为大于或等于2的正整数。
[0091] 在一具体子实施例中,所述获取生成矩阵G所分解的η个单位循环矩阵,包括:
[0092] 从本地存储器获取生成矩阵G所分解的η个单位循环矩阵;或
[0093] 从第二设备获取生成矩阵G所分解的η个单位循环矩阵,其中,所述第二设备为与 所述第一设备连接的设备。
[0094] 例如,所述第二设备可以是远程或云端的设备,如云服务器。
[0095] 优诜地,所沭牛成矩阵G具有密度循环特性;所述生成矩阵G表示成:
[0096]
[0097]在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+Ι行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0098]优选地,在执行步骤102或步骤101之前,所述方法还包括:
[0099]预先设定生成矩阵G;
[0100] 将所述生成矩阵G分解成η个单位循环矩阵;其中,
[0101] 每个单位循环矩阵均为q+Ι行、q+Ι列的矩阵,且在每个单位循环矩阵中,第1个行 向量只有一个元素为1、其余元素均为〇;且第i+Ι个行向量是第i行个行向量的各元素依次 右移一个位置得到的向量;i为正整数,且l<i<q;q为大于或等于2的正整数。
[0102] 也就是说,将生成矩阵G分解成的η个单位循环矩阵进行预先存储,如此,待需要 用到所述η个单位循环矩阵时,能及时获取;相对于仅存储所述生成矩阵G来说,能够节省分 解时间。
[0103] 在一具体子实施例中,所述将所述生成矩阵G分解成η个单位循环矩阵,可以包括:
[0104] 获取生成矩阵G中第一行中的元素为1的个数以及元素为1的位置;
[0105] 将所述第一行中元素为1的个数确定为η的值;
[0106] 基于所述生成矩阵G中第一行中的元素为1的个数以及元素为1的位置η个单位循 环矩阵。
[0107] 在一具体子实施例中,所述基于所述生成矩阵G中第一行中的元素为1的个数以及 元素为1的位置η个单位循环矩阵,包括:
[0108] 根据所述生成矩阵G中第一行中的元素为1的位置,确定所述η个单位循环矩阵中 的第一行的元素为1的位置;
[0109] 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的 第一行中除元素1之外的其他元素位置设置为0;
[0110] 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到 第2个行向量,以此类推,将第i个行向量各元素依次右移一个位置得到第i + Ι个行向量,得 到n个单位循环矩阵。
[0111] 举例来说
,那么,第一行中元素为1的个数为2,因此,n = 2,第 一行中元素为1的位置为第一行第2列、第一行第4列;那么,在生成的2个单位循环矩阵中, 第一行元素为1的位置分别第一行第2列、第一行第4列,将所述2个单位循环矩阵分别设为 子矩阵G0、子矩阵Gl;
[0112] 那么,子矩阵GO的第一行的行向量可记为[0 I 0 0]或[0 0 0 1];子矩阵Gl的第 一行的行向量可记为[0 0 0 1]或[0 1 0 0];进而根据单位循环矩阵的特性可以获得
[0115]步骤104:将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩阵0。
[0116] 仍以上述例子为例
'
[0117] 需要说明的是,对于每个单位循环矩阵与输入矩阵的乘积运算需要一个时钟。因 此,若采用并行计算,即每个单位循环矩阵同时分别与输入矩阵进行乘积运算,那么,仅需 要一个时钟即可求出编码输出矩阵0;若采用串行计算,即每个单位循环矩阵按序分别与输 入矩阵进行乘积运算,那么,需要η个时钟即可求出编码输出矩阵0。
[0118] 在该例子中,若采用并行计算方法,同时进行两次矩阵相乘的运算,只需要1个时 钟即可求出编码输出矩阵0;若采用串行计算方法,两次矩阵相乘的运算按序进行,只需要2 个时钟即可求出编码输出矩阵0。
[0119] 在【背景技术】中已经提到,若采用现有的矩阵编码方法,需要Q = q+1个时钟,而采用 本发明实施例所述方法,所需的时钟数为1~n,其中,n$q。表1示出了优化前与优化后所需 时钟数的对比表,如表1所示, L0121」 表1
[0122] 综上所述,采用本发明实施例所述方法,所需的时钟数大大减少。
[0123] 本实施例中,所述第一设备可以是需要进行编码处理的设备。
[0124] 在本发明实施例中,将信息码生成输入矩阵I;获取生成矩阵G所分解的η个单位循 环矩阵;η为大于或等于2的正整数;将各个单位循环矩阵分别与所述输入矩阵I进行乘法运 算;将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩阵〇;如此,能节省编 码时所需要的时钟数,提高编码效率。
[0125] 实施例二
[0126] 相对于实施例一中所述的编码方法,本发明实施例还提供了一种将所编码结果进 行解码的验证方法。
[0127] 图2为本发明实施例解码方法的实现流程示意图,应用于第三设备,在本发明一个 优选实施例中,所述解码方法主要包括以下步骤:
[0128] 步骤201:将接收到的编码输出矩阵0拆成η个待解码矩阵之和;η为大于或等于2的 正整数。
[0129] 优选地,在执行步骤201之前,所述方法还包括:
[0130] 获取编码所采用的生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵;
[0131] 存储所述生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵。
[0132] 优选地,所述生成矩阵G具有密度循环特性;
[0133]
[0134] 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0135] 仍以实施例一中所举的例子为例进行说明,若获知编码时采用的
[0136] 步骤202:确定任意一个待解码矩阵,并在生成矩阵G所分解的η个单位循环矩阵中 查找与所述待解码矩阵相对应的单位循环矩阵。
[0137] 仍以上述例子为例,假定选择的待解码矩阵戈
查找到与该待解码矩阵 相对应的单位循环矩阵为
[0138] 步骤203:获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵;
[0139] 在一【具体实施方式】中,所述获取与所述待解码矩阵相对应的单位循环矩阵的逆矩 阵,可以包括:
[0140] 对所述与所述待解码矩阵相对应的单位循环矩阵做逆运算。
[0141] 在另一【具体实施方式】中,所述获取与所述待解码矩阵相对应的单位循环矩阵的逆 矩阵,包括:在本地存储器查找或从第四设备获取与所述单位循环矩阵对应的逆矩阵。其 中,所述第四设备为与第三设备连接的设备。例如,所述第四设备可以是远程或云端的设 备,如云服务器。
[0142] 也就是说,可以在本地存储器或第四设备中预先存储单位循环矩阵以及与所述单 位循环矩阵对应的逆矩阵。
[0143] 如此,能够节省做逆矩阵运算的时间。
[0144] 仍以上述例子为例,按照求逆运算方法求取GO的逆运算,因此
[0145] 步骤204:将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待解码矩 阵进行乘法运算,得到解码输m拓陈T"
[0146] 仍以上述例子为$ ,即得到原解码 输出矩阵I。
[0147] 综上所述,采用本发明实施例所述方法,所需的时钟数大大减少。
[0148] 本实施例中,所述第三设备可以是需要进行解码处理的设备。
[0149] 在本发明实施例中,将接收到的编码输出矩阵0拆成η个待解码矩阵之和;确定任 意一个待解码矩阵,并在生成矩阵G所分解的η个单位循环矩阵中查找与所述待解码矩阵相 对应的单位循环矩阵;对所述与所述待解码矩阵相对应的单位循环矩阵做逆运算;将与所 述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待解码矩阵进行乘法运算,得到解码 输出矩阵I;如此,能节省解码时所需要的时钟数,提高解码效率。
[0150] 实施例三
[0151] 图3为本发明实施例编码装置的结构示意图,如图3所示,所述编码装置包括:
[0152]第一处理器31,用于将信息码生成输入矩阵I;
[0153] 第二处理器32,用于获取生成矩阵G所分解的η个单位循环矩阵;η为大于或等于2 的正整数;
[0154] 第一运算器33,用于将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算;
[0155] 第二运算器34,用于将各个乘法运算结果进行加法运算,生成所述信息码的编码 输出矩阵0。
[0156] 上述方案中,所述生成矩阵G具有密度循环特性;
[0157]
[0158] 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0159] 优选地,所述编码装置还包括:
[0160] 第三处理器35,用于:
[0161] 预先设定生成矩阵G;
[0162] 将所述生成矩阵G分解成η个单位循环矩阵;其中,
[0163] 每个单位循环矩阵均为q+Ι行、q+Ι列的矩阵,且在每个单位循环矩阵中,第1个行 向量只有一个元素为1、其余元素均为〇;且第i+Ι个行向量是第i行个行向量的各元素依次 右移一个位置得到的向量;i为正整数,且l<i<q;q为大于或等于2的正整数。
[0164] 优选地,所述第三处理器35,还用于:
[0165] 获取生成矩阵G中第一行中的元素为1的个数以及元素为1的位置;
[0166] 将所述第一行中元素为1的个数确定为η的值;
[0167] 基于所述生成矩阵G中第一行中的元素为1的个数以及元素为1的位置η个单位循 环矩阵。
[0168] 优选地,所述第三处理器35,还用于:
[0169] 根据所述生成矩阵G中第一行中的元素为1的位置,确定所述η个单位循环矩阵中 的第一行的元素为1的位置;
[0170] 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的 第一行中除元素1之外的其他元素位置设置为0;
[0171] 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到 第2个行向量,以此类推,将第i个行向量各元素依次右移一个位置得到第i + Ι个行向量,得 到n个单位循环矩阵。
[0172] 其中,第一处理器31、第二处理器32、第一运算器33、第二运算器34、第三处理器 35,可以集成对应于同一处理器,或分别对应不同的处理器,其中,所述处理器包括可执行 代码,所述可执行代码存储在存储介质中,所述处理器可以通过总线等通信接口与所述存 储介质中相连,在执行具体的各模块的对应功能时,从所述存储介质中读取并运行所述可 执行代码。所述存储介质用于存储所述可执行代码的部分优选为非瞬间存储介质。
[0173] 本领域技术人员应当理解,本发明实施例的编码装置中各器件的功能,可参照前 述编码方法的相关描述而理解,本发明实施例的编码装置中各器件,可通过实现本发明实 施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智 能终端上的运行而实现。
[0174]本实施例所述的编码装置,能节省编码时所需要的时钟数,提高编码效率。
[0175] 实施例四
[0176] 图4为本发明实施例解码装置的结构示意图,如图4所示,所述解码装置包括:
[0177]第四处理器41,用于将接收到的编码输出矩阵0拆成η个待解码矩阵之和;η为大于 或等于2的正整数;
[0178]第五处理器42,用于确定任意一个待解码矩阵,并在生成矩阵G所分解的η个单位 循环矩阵中查找与所述待解码矩阵对应的单位循环矩阵;
[0179]第三运算器43,用于获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵; [0180]第四运算器44,用于将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述 待解码矩阵进行乘法运算,得到解码输出矩阵I。
[0181]在一【具体实施方式】中,所述第三运算器43,具体用于:
[0182] 对所述与所述待解码矩阵相对应的单位循环矩阵做逆运算。
[0183] 在另一【具体实施方式】中,所述第三运算器43,具体用于:
[0184] 在本地存储器查找或从第四设备获取与所述单位循环矩阵对应的逆矩阵。其中, 所述第四设备为与第三设备连接的设备。例如,所述第四设备可以是远程或云端的设备,如 云服务器。
[0185] 上述方案中,所述生成矩阵G具有密度循环特性;
[0186]
[0187] 在所述生成矩阵G中,第一行中包括全少两个1、全少一个0;且第j+Ι行是第j行的 循环右移;j为正整数,且K j$q;q为大于或等于2的正整数。
[0188] 优选地,所述解码装置还包括:
[0189] 接收器45,用于获取编码所采用的生成矩阵G以及生成矩阵G所分解成的η个单位 循环矩阵;
[0190]存储器46,用于存储所述生成矩阵G以及生成矩阵G所分解成的η个单位循环矩阵。
[0191] 其中,第四处理器41、第五处理器42、第三运算器43、第四运算器44、接收器45、存 储器46,可以集成对应于同一处理器,或分别对应不同的处理器,其中,所述处理器包括可 执行代码,所述可执行代码存储在存储介质中,所述处理器可以通过总线等通信接口与所 述存储介质中相连,在执行具体的各模块的对应功能时,从所述存储介质中读取并运行所 述可执行代码。所述存储介质用于存储所述可执行代码的部分优选为非瞬间存储介质。
[0192] 本领域技术人员应当理解,本发明实施例的解码装置中各器件的功能,可参照前 述解码方法的相关描述而理解,本发明实施例的解码装置中各器件,可通过实现本发明实 施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智 能终端上的运行而实现。
[0193] 本实施例所述的解码装置,能节省解码时所需要的时钟数,提高解码效率。
[0194] 本发明实施例还记载了一种编解码设备,其中,所述编解码设备包括如图3所示的 编码装置和如图4所示的解码装置,在此不再赘述。
[0195] 在本发明所提供的几个实施例中,应该理解到,所揭露的方法、装置和电子设备, 可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划 分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可 以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的 各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的 间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0196] 上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显 示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单 元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0197] 另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可 以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述 集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0198] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读 存储器(R0M,Read_0nly Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或 者光盘等各种可以存储程序代码的介质。
[0199] 或者,本发明实施例上述集成的单元如果以软件功能模块的形式实现并作为独立 的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发 明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设 备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部 或部分。而前述的存储介质包括:移动存储设备、R〇M、RAM、磁碟或者光盘等各种可以存储程 序代码的介质。
[0200] 以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
【主权项】
1. 一种编码方法,其特征在于,所述方法包括: 将信息码生成输入矩阵I; 获取生成矩阵G所分解的n个单位循环矩阵;n为大于或等于2的正整数; 将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算; 将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩阵0。2. 根据权利要求1所述的编码方法,其特征在于,所述生成矩阵G具有密度循环特性;:其中, 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的循环 右移;j为正整数,且为大于或等于2的正整数。3. 根据权利要求1所述的编码方法,其特征在于,所述方法还包括: 预先设定生成矩阵G; 将所述生成矩阵G分解成n个单位循环矩阵;其中, 每个单位循环矩阵均为q+1行、q+1列的矩阵,且在每个单位循环矩阵中,第1个行向量 只有一个元素为1、其余元素均为0;且第i+1个行向量是第i行个行向量的各元素依次右移 一个位置得到的向量;i为正整数,且为大于或等于2的正整数。4. 根据权利要求3所述的编码方法,其特征在于,所述将所述生成矩阵G分解成n个单位 循环矩阵,包括: 获取生成矩阵G中第一行中的元素为1的个数W及元素为1的位置; 将所述第一行中元素为1的个数确定为n的值; 基于所述生成矩阵G中第一行中的元素为1的个数W及元素为1的位置n个单位循环矩 阵。5. 根据权利要求4所述的编码方法,其特征在于,所述基于所述生成矩阵G中第一行中 的元素为1的个数W及元素为1的位置n个单位循环矩阵,包括: 根据所述生成矩阵G中第一行中的元素为1的位置,确定所述n个单位循环矩阵中的第 一行的元素为1的位置; 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的第一 行中除元素1之外的其他元素位置设置为0; 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到第2个 行向量,W此类推,将第i个行向量各元素依次右移一个位置得到第i+1个行向量,得到n个 单位循环矩阵。6. -种解码方法,其特征在于,所述方法包括: 将接收到的编码输出矩阵0拆成n个待解码矩阵之和;n为大于或等于2的正整数; 确定任意一个待解码矩阵,并在生成矩阵G所分解的n个单位循环矩阵中查找与所述待 解码矩阵相对应的单位循环矩阵; 获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵; 将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待解码矩阵进行乘法运 算,得到解码输出矩阵I。7庶据扔甫I取龙fi航冰的偏招古'法-且赔饰#平-航冰_生成矩阵G具有密度循环特性; 廷中, 在所述生成矩阵G中,第一行中包括至少两个1、至少一个O ;且第j+1行是第j行的循环 右移;j为正整数,且为大于或等于2的正整数。8. 根据权利要求6所述的解码方法,其特征在于,所述方法还包括: 获取编码所采用的生成矩阵GW及生成矩阵G所分解成的n个单位循环矩阵; 存储所述生成矩阵G W及生成矩阵G所分解成的n个单位循环矩阵。9. 一种编码装置,其特征在于,所述装置包括: 第一处理器,用于将信息码生成输入矩阵I; 第二处理器,用于获取生成矩阵G所分解的n个单位循环矩阵;n为大于或等于2的正整 数; 第一运算器,用于将各个单位循环矩阵分别与所述输入矩阵I进行乘法运算; 第二运算器,用于将各个乘法运算结果进行加法运算,生成所述信息码的编码输出矩 阵0。10. 根据权利要求9所述的编码装置,其特征在于,所述生成矩阵G具有密度循环特性;;其中, 在所述生成矩阵G中,第一行中包括至少两个1、至少一个0;且第j+1行是第j行的循环 右移;j为正整数,且为大于或等于2的正整数。11. 根据权利要求9所述的编码装置,其特征在于,所述编码装置还包括: 第=处理器,用于: 预先设定生成矩阵G; 将所述生成矩阵G分解成n个单位循环矩阵;其中, 每个单位循环矩阵均为q+1行、q+1列的矩阵,且在每个单位循环矩阵中,第1个行向量 只有一个元素为1、其余元素均为0;且第i+1个行向量是第i行个行向量的各元素依次右移 一个位置得到的向量;i为正整数,且为大于或等于2的正整数。 12 .根据权利要求11所述的编码装置,其特征在于,所述第=处理器,还用于: 获取生成矩阵G中第一行中的元素为1的个数W及元素为1的位置; 将所述第一行中元素为1的个数确定为n的值; 基于所述生成矩阵G中第一行中的元素为1的个数W及元素为1的位置n个单位循环矩 阵。13. 根据权利要求12所述的编码装置,其特征在于,所述第=处理器,还用于: 根据所述生成矩阵G中第一行中的元素为1的位置,确定所述n个单位循环矩阵中的第 一行的元素为1的位置; 确定各个单位循环矩阵的第一行的元素为1的位置之后,将各个单位循环矩阵的第一 行中除元素1之外的其他元素位置设置为O; 对于每一个待定的单位循环矩阵,将第1个行向量各元素依次右移一个位置得到第2个 行向量,W此类推,将第i个行向量各元素依次右移一个位置得到第i+1个行向量,得到n个 单位循环矩阵。14. 一种解码装置,其特征在于,所述装置包括: 第四处理器,用于将接收到的编码输出矩阵O拆成n个待解码矩阵之和;n为大于或等于 2的正整数; 第五处理器,用于确定任意一个待解码矩阵,并在生成矩阵G所分解的n个单位循环矩 阵中查找与所述待解码矩阵对应的单位循环矩阵; 第=运算器,用于获取与所述待解码矩阵相对应的单位循环矩阵的逆矩阵; 第四运算器,用于将与所述待解码矩阵相对应的单位循环矩阵的逆矩阵与所述待解码 矩阵进行乘法运算,得到解码输出矩阵I。15. 根据权利要求14所述的解码装置,其特征在于,所述生成矩阵G具有密度循环特性;廷中, 在所述生成矩阵G中,第一行中包括至少两个1、至少一个O ;且第j+1行是第j行的循环 右移;j为正整数,且为大于或等于2的正整数。16. 根据权利要求14所述的解码装置,其特征在于,所述装置还包括: 接收器,用于获取编码所采用的生成矩阵GW及生成矩阵G所分解成的n个单位循环矩 阵; 存储器,用于存储所述生成矩阵G W及生成矩阵G所分解成的n个单位循环矩阵。
【文档编号】H03M13/15GK105915233SQ201610184645
【公开日】2016年8月31日
【申请日】2016年3月28日
【发明人】郭江伟, 李立华
【申请人】联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1