删余卷积码的母码和删余模式的识别方法及装置转让专利

申请号 : CN202310850393.4

文献号 : CN116582137B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨刚

申请人 : 北京谷数科技股份有限公司

摘要 :

本发明提供一种删余卷积码的母码和删余模式的识别方法及装置,涉及数字通信编码技术领域,方法包括:获取编码序列数据和编码序列数据对应的编码码字序列;基于编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于删余卷积码的码长、维数和编码码字序列,确定删余卷积码的第一多项式生成矩阵;基于删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码和删余模式;第一关联关系表示第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的关系,实现了删余卷积码的母码和删余模式的识别,提高了删余卷积码的母码和删余模式的识别准确率和效率。

权利要求 :

1.一种删余卷积码的母码和删余模式的识别方法,其特征在于,包括:获取编码序列数据和所述编码序列数据对应的编码码字序列;

基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;

基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;

基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系;

所述基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数,包括:基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩;

基于各所述近似秩,确定各所述近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差;

基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数。

2.根据权利要求1所述的删余卷积码的母码和删余模式的识别方法,其特征在于,所述基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩,包括:基于所述编码序列数据,构造第一矩阵;

将所述第一矩阵转化为下三角形式,得到第二矩阵;

基于所述第二矩阵,分别确定所述第二矩阵中每一列对应的汉明重量;

基于各所述汉明重量和第一预设阈值,确定所述编码序列数据对应的所述第一矩阵的各所述近似秩。

3.根据权利要求1所述的删余卷积码的母码和删余模式的识别方法,其特征在于,所述基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数,包括:基于各所述降秩位置,计算相邻降秩位置对应的差序列;所述差序列包括多个相邻降秩位置对应的位置差值;

基于各所述位置差值,识别所述删余卷积码的码长;

基于各所述矩阵秩差、各所述位置差值和所述码长,识别所述删余卷积码的维数。

4.根据权利要求1至3任一项所述的删余卷积码的母码和删余模式的识别方法,其特征在于,所述基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵,包括:基于所述删余卷积码的码长、维数和所述编码码字序列,采用哈达玛变换法确定所述删余卷积码的第一多项式生成矩阵。

5.根据权利要求1至3任一项所述的删余卷积码的母码和删余模式的识别方法,其特征在于,所述基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式,包括:步骤A:基于所述删余卷积码的第一多项式生成矩阵,确定所述第一多项式生成矩阵的列集合和初始化删余模式位串;

步骤B:在所述列集合不为空的情况下,依次取所述列集合中的一列并计算第一公式;

步骤C:在所述第一公式为多项式的情况下,将所述第一公式转化为第三矩阵;

步骤D:判断所述第三矩阵和所述第一多项式生成矩阵是否存在重合的列;

步骤E:在所述第三矩阵和所述第一多项式生成矩阵存在所述重合的列的情况下,基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串;

步骤F:在所述新的列集合不为空的情况下,基于所述新的列集合和所述新的删余模式位串,重复执行步骤B‑步骤F,直至最终更新后的新的列集合为空;

步骤G:将每一次计算的第一公式和每一次更新得到的新的删余模式位串分别进行拼接,得到所述删余卷积码的母码的所述第二多项式生成矩阵和所述删余模式。

6.根据权利要求5所述的删余卷积码的母码和删余模式的识别方法,其特征在于,所述基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串,包括:基于所述重合的列和所述第一关联关系,将所述重合的列从所述第一多项式生成矩阵对应的列集合中删除,得到所述新的列集合,并对所述删余模式位串进行左移运算,得到所述新的删余模式位串。

7.一种删余卷积码的母码和删余模式的识别装置,其特征在于,包括:获取模块,用于获取编码序列数据和所述编码序列数据对应的编码码字序列;

第一识别模块,用于基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;

确定模块,用于基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;

第二识别模块,用于基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系;

所述第一识别模块,具体用于:

基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩;

基于各所述近似秩,确定各所述近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差;

基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数。

8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述删余卷积码的母码和删余模式的识别方法。

9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述删余卷积码的母码和删余模式的识别方法。

说明书 :

删余卷积码的母码和删余模式的识别方法及装置

技术领域

[0001] 本发明涉及数字通信编码技术领域,尤其涉及一种删余卷积码的母码和删余模式的识别方法及装置。

背景技术

[0002] 为了适应数字通信系统不同信道质量及各种传输速率的要求,卷积码常采取删余模式来使用,即以码率为1/m的卷积码为母码,从其连续k个时刻输出的km个码元中,选择删除部分码元,将剩余的n个码元作为编码序列传输。在接收端解码时,在删除位置填充特定的码元,仍可采用母码解码器解码,这样就得到码率为k/n的删余卷积码。删余卷积码用纠错能力的降低,换取信息传输效率的提高,对适应信道质量的改善是很有意义的。在实际应用中,通常基于1/2码率的卷积码,通过删余来得到高码率的删余卷积码。
[0003] 卷积码的主要解码算法为维特比(Viterbi)算法,该算法的复杂度主要取决于卷积码的维数k和记忆深度u,是k+u的指数函数。因此,对于删余卷积码,正确识别出删余卷积码母码,用删余卷积码的母码解码器来解码,能够指数级提高解码效率。
[0004] 识别删余卷积码母码的前提,是识别出删余卷积码的等价参数。以往的删余卷积码识别算法,通常对要识别的删余卷积码的码率有所限制,如限制为(n‑1)/n,使得删余卷积码的识别准确度不高,导致删余卷积码母码的识别准确率和效率低。

发明内容

[0005] 本发明提供一种删余卷积码的母码和删余模式的识别方法及装置,用以解决删余卷积码母码的识别准确率和效率低的问题。
[0006] 本发明提供一种删余卷积码的母码和删余模式的识别方法,包括:
[0007] 获取编码序列数据和所述编码序列数据对应的编码码字序列;
[0008] 基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;
[0009] 基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;
[0010] 基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0011] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数,包括:
[0012] 基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩;
[0013] 基于各所述近似秩,确定各所述近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差;
[0014] 基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数。
[0015] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩,包括:
[0016] 基于所述编码序列数据,构造多个第一矩阵;
[0017] 将所述第一矩阵转化为下三角形式,得到第二矩阵;
[0018] 基于所述第二矩阵,分别确定所述第二矩阵中每一列对应的汉明重量;
[0019] 基于各所述汉明重量和第一预设阈值,确定所述编码序列数据对应的所述第一矩阵的各所述近似秩。
[0020] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数,包括:
[0021] 基于各所述降秩位置,计算相邻降秩位置对应的差序列;所述差序列包括多个相邻降秩位置对应的位置差值;
[0022] 基于各所述位置差值,识别所述删余卷积码的码长;
[0023] 基于各所述矩阵秩差、各所述位置差值和所述码长,识别所述删余卷积码的维数。
[0024] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵,包括:
[0025] 基于所述删余卷积码的码长、维数和所述编码码字序列,采用哈达玛变换法确定所述删余卷积码的第一多项式生成矩阵。
[0026] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式,包括:
[0027] 步骤A:基于所述删余卷积码的第一多项式生成矩阵,确定所述第一多项式生成矩阵的列集合和初始化删余模式位串;
[0028] 步骤B:在所述列集合不为空的情况下,依次取所述列集合的中的一列并计算第一公式;
[0029] 步骤C:在所述第一公式为多项式的情况下,将所述第一公式转化为第三矩阵;
[0030] 步骤D:判断所述第三矩阵和所述第一多项式生成矩阵是否存在重合的列;
[0031] 步骤E:在所述第三矩阵和所述第一多项式生成矩阵存在所述重合的列的情况下,基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串;
[0032] 步骤F:在所述新的列集合不为空的情况下,基于所述新的列集合和所述新的删余模式位串,重复执行步骤B‑步骤F,直至最终更新后的新的列集合为空;
[0033] 步骤G:将每一次计算的第一公式和每一次更新得到的新的删余模式位串分别进行拼接,得到所述删余卷积码的母码的所述第二多项式生成矩阵和所述删余模式。
[0034] 根据本发明提供的一种删余卷积码的母码和删余模式的识别方法,所述基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串,包括:
[0035] 基于所述重合的列和所述第一关联关系,将所述重合的列从所述第一多项式生成矩阵对应的列集合中删除,得到所述新的列集合,并对所述删余模式位串进行左移运算,得到所述新的删余模式位串。
[0036] 本发明还提供一种删余卷积码的母码和删余模式的识别装置,包括:
[0037] 获取模块,用于获取编码序列数据和所述编码序列数据对应的编码码字序列;
[0038] 第一识别模块,用于基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;
[0039] 确定模块,用于基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;
[0040] 第二识别模块,用于基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0041] 本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述删余卷积码的母码和删余模式的识别方法。
[0042] 本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述删余卷积码的母码和删余模式的识别方法。
[0043] 本发明提供的删余卷积码的母码和删余模式的识别方法及装置,通过获取编码序列数据和编码序列数据对应的编码码字序列,基于编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于删余卷积码的码长、维数和编码码字序列,确定删余卷积码的第一多项式生成矩阵;基于删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式;第一关联关系表示第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的关系。通过矩阵近似秩算法识别删余卷积码的码长和维数,能够识别任意码率的删余卷积码,而且提高了容错能力,进而根据删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式,能够提高删余卷积码的母码和删余模式的识别准确率和效率。

附图说明

[0044] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045] 图1是本发明提供的删余卷积码的母码和删余模式的识别方法的流程示意图之一;
[0046] 图2是本发明提供的删余卷积码的母码和删余模式的识别方法的流程示意图之二;
[0047] 图3是本发明提供的删余卷积码的母码和删余模式的识别装置的结构示意图;
[0048] 图4是本发明提供的电子设备的结构示意图。

具体实施方式

[0049] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0050] 下面结合图1‑图2描述本发明的删余卷积码的母码和删余模式的识别方法。
[0051] 图1是本发明提供的删余卷积码的母码和删余模式的识别方法的流程示意图之一,如图1所示,方法包括步骤101‑步骤104;其中,
[0052] 步骤101,获取编码序列数据和所述编码序列数据对应的编码码字序列。
[0053] 需要说明的是,本发明提供的删余卷积码的母码和删余模式的识别方法适用于数字通信系统中信道传输数据的场景中,该方法的执行主体可以为删余卷积码的母码和删余模式的识别装置,例如电子设备、或者该删余卷积码的母码和删余模式的识别装置中的用于执行删余卷积码的母码和删余模式的识别方法的控制模块。电子设备可以为手机、平板电脑或者台式电脑中的任一项,或者其他能够传输数据的设备。
[0054] 具体地,编码序列数据为连续L比特编码数据,编码序列数据对应的编码码字序列包括多个码字,每个码字对应n个码元。
[0055] 步骤102,基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数。
[0056] 具体地,任意码率的删余卷积码等价于一个(n,k)卷积码,删余卷积码的识别包括码长(n)和维数(维数k)的识别。为了在有误码情况下识别码长n,提出矩阵近似秩,并给出计算矩阵近似秩算法;其中,矩阵近似秩是指当矩阵的元素做少许改变时,通常该矩阵的秩也会随之改变,在此情况下,称原矩阵的秩为改变后的矩阵的近似秩,因此,计算矩阵近似秩,是在有误码的情况下识别删余卷积码的等价参数(n和k)的关键。
[0057] 步骤103,基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵。
[0058] 具体地,根据识别的删余卷积码的码长、维数和编码码字序列,可以进一步确定删余卷积码的第一多项式生成矩阵。
[0059] 步骤104,基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0060] 具体地,第一关联关系表示第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的制约关系,为了建立删余卷积码的第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的制约关系,首先对一些定理与结论进行介绍。
[0061] 定义1、给定多项式 和正整数M,对,令
[0062] (1)
[0063] (2)
[0064] 称 为多项式 的M阶相分解,并记为。
[0065] 定义 矩阵 为:
[0066] (3)
[0067] 定理2、给定多项式 和正整数M,设,则对任意 有 ,
其中, 为矩阵 。
[0068] 记全体整数的集合为 ,记 。对两个正整数 和k,任取 ,有两种表示方法,即 ,或者
。定义 上的置换 为:
[0069] (4)
[0070] 取 为第 位为1,其余位为0的n维单位向量,定义矩阵 为:
[0071] (5)
[0072] 定理3 、设码C为1 /m 码率的 卷积码 ,码C的多项式 生成矩阵 为,则将码C的输入和输出分别以l拍进行划分,得到的 卷积码 的多项式生成矩阵为:
[0073] (6)
[0074] 其中, 可以通过 通过上述公式(3)进行转换得到。
[0075] 例 如 ,设 码C 为 ( 2 ,1 ) 卷 积 码 ,码C 的 多 项 式 生 成 矩 阵 为 :。
[0076] 对 ,有
[0077] (7)
[0078] (8)
[0079] (9)
[0080] 因此,(6,3)卷积码 的多项式生成矩阵为:
[0081] (10)
[0082] 若取删余模式 , ,由3/6码率的卷积码 和删余模式P,得到的删余卷积码 的多项式生成矩阵(取 的多项式生成矩阵的第1、2、4和5列)为:
[0083] (11)
[0084] 上述公式(11)表示第一关联关系。
[0085] 具体地,根据删余卷积码的第一多项式生成矩阵和第一关联关系,可以进一步识别删余卷积码的母码的第二多项式生成矩阵和删余模式,其中,第二多项式生成矩阵用于表示删余卷积码的母码,利用第一关联关系,能够避免对删余模式的遍历,显著提高母码和删余模式的识别效率。
[0086] 本发明提供的删余卷积码的母码和删余模式的识别方法,通过获取编码序列数据和编码序列数据对应的编码码字序列,基于编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于删余卷积码的码长、维数和编码码字序列,确定删余卷积码的第一多项式生成矩阵;基于删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式;第一关联关系表示第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的关系。通过矩阵近似秩算法识别删余卷积码的码长和维数,能够识别任意码率的删余卷积码,而且提高了容错能力,进而根据删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式,能够提高删余卷积码的母码和删余模式的识别准确率和效率。
[0087] 可选地,上述步骤102的具体实现方式包括:
[0088] (1)基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩。
[0089] 具体地,根据编码序列数据和矩阵近似秩算法,可以采用矩阵近似秩算法确定编码序列数据对应的第一矩阵的至少一个近似秩。
[0090] (2)基于各所述近似秩,确定各所述近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差。
[0091] 具体地,根据第一矩阵的至少一个近似秩,在近似秩小于第一矩阵的列的情况下,记录每个近似秩对应的降秩位置,以及计算相邻近似秩对应的矩阵秩差。
[0092] (3)基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数。
[0093] 具体地,根据各降秩位置和各矩阵秩差,可以进一步识别删余卷积码的码长和维数。
[0094] 本发明提供的删余卷积码的母码和删余模式的识别方法,通过编码序列数据和矩阵近似秩算法,确定编码序列数据对应的第一矩阵的至少一个近似秩,再确定相邻近似秩对应的降秩位置和矩阵秩差,进而识别删余卷积码的码长和维数,使用近似秩算法确定编码序列数据对应的多个第一矩阵的近似秩,进而根据近似秩识别删余卷积码的码长和维数,能够提高删余卷积码的识别准确性,进而提升删余卷积码的母码和删余模式的识别准确率和效率。
[0095] 可选地,所述基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的多个第一矩阵的近似秩,包括:
[0096] (a)基于所述编码序列数据,构造第一矩阵。
[0097] 具体地,将编码序列数据划分为多个比特段,将多个比特段进行排反复,即将每个比特段作为一行依次排列,取目标行的比特段作为第一矩阵,从而实现第一矩阵的构造。
[0098] 例如,编码序列数据为连续L比特数据,将L比特数据按照 比特进行划分,得到多个 比特段,将多个 比特段的数据进行排反复,得到多行比特数据,取前 行的比特数据构成第一矩阵 ,其中,的取值范围为12和min(64, )。
[0099] (b)将所述第一矩阵转化为下三角形式,得到第二矩阵。
[0100] 具体地,将第一矩阵 转化为下三角形式,可以得到第二矩阵;其中,将第一矩阵转化为下三角形式,包括:针对第一矩阵的每行和每列元素,若第一矩阵的第i行第i列的元素为0,则搜寻满足第i行元素非零的列,找到后将该列和第i列进行交换;然后,若第一矩阵的第i行第i列的元素为0,则搜寻满足第i列元素非零的行,找到后将该行和第i行进行交换;最后,若第一矩阵的第i行第i列的元素为1,则搜寻满足第i行元素非零的所有列,找到后将第i列的每个元素和第j列的相应元素进行异或运算,并将得到的异或结果作为第j列的元素。
[0101] (c)基于所述第二矩阵,分别确定所述第二矩阵中每一列对应的汉明重量。
[0102] 具体地,选取第二矩阵的下半部分,统计下半部分中每一列对应的汉明重量。
[0103] 例如,选取第二矩阵的第 行至第M行,统计选取的下半部分中每一列的汉明重量(元素数据为1的数量) , 。
[0104] (d)基于各所述汉明重量和第一预设阈值,确定所述编码序列数据对应的所述第一矩阵的各所述近似秩。
[0105] 具体地,根据每个汉明重量和第一预设阈值,采用公式(12)进行判断,其中,公式(12)表示为:
[0106] (12)
[0107] 其中,wj表示汉明重量,M表示第二矩阵的行数,表示第二矩阵的列数, 表示第一预设阈值。
[0108] 在上述公式满足的情况下,第二矩阵的近似秩依次减1,直至 ,则最终得到第二矩阵的近似秩,将该秩作为编码序列数据对应的第一矩阵的近似秩,从而可以得到第一矩阵的多个近似秩。
[0109] 算法1、矩阵近似秩算法
[0110] 输入:行数M大于列数 的0和1第一矩阵 ,以及第一预设阈值 。
[0111] 输出:第一矩阵 的近似秩。
[0112] 1. 将第一矩阵 转化为下三角形式
[0113] 1.1i=1;
[0114] 1.2 若 ,则搜寻满足第i行元素非零的列,找到后将该列与第i列交换。
[0115] 1.3 若 ,则搜寻满足第i列元素非零的行,找到后将该行与第i行交换。
[0116] 1.4 若 ,则搜寻满足第i行元素非零的所有列,找到后将第i列和第j列进行异或运算,并将得到的异或结果作为第j列的元素数据。
[0117] 1.5 ,如果 ,则退出,否则返回1.2。
[0118] 2. 选取第二矩阵中各列的下半部分(第 行至第M行),统计其汉明重量(元素数据为1的数量) , 。
[0119] 3. 计算第一矩阵 的近似秩并输出。
[0120] 3.1j=1, ;
[0121] 3.2 若 ,则z‑‑;
[0122] 3.3 j++,如果 ,则返回3.2,否则转至步骤3.4;
[0123] 3.4 将z作为第一矩阵 的近似秩。
[0124] 可选地,所述基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数,包括:
[0125] 1)基于各所述降秩位置,计算相邻降秩位置对应的差序列;所述差序列包括多个相邻降秩位置对应的位置差值。
[0126] 具体地,根据多个降秩位置,计算每个相邻降秩位置对应的位置差值,可以得到多个相邻降秩位置对应的差序列,差序列包括多个相邻降秩位置对应的位置差值。例如,降秩位置分别为 、 和 ,则位置差值分别为 , ,则差序列包括 和。
[0127] 2)基于各所述位置差值,识别所述删余卷积码的码长。
[0128] 具体地,根据多个位置差值,确定多个位置差值的最大公因子,并将最大公因子作为删余卷积码的码长的估计值 ,从而识别得到删余卷积码的码长。
[0129] 3)基于各所述矩阵秩差、各所述位置差值和所述码长,识别所述删余卷积码的维数。
[0130] 具体地,将多个位置差值作为自变量,每个位置差值对应的矩阵秩差作为因变量,采用直线拟合,即将矩阵秩差与位置差值之间的斜率t作为 的估计值,计算 ,即将 作为删余卷积码的维数。
[0131] 例如,位置差值 ,位置差值 , 对应的矩阵秩为 , 对应的矩阵秩为 , 对应的矩阵秩为 , 对应的矩阵秩差 , 对应的矩阵秩差
, 或者 ,再根据 估算出删余卷积码的维数。
[0132] 在矩阵近似秩算法的基础上,下面对识别删余卷积码算法进行详细说明。
[0133] 算法2、识别删余卷积码的参数
[0134] 输入:连续L比特编码数据。
[0135] 输出:删余卷积码的参数 。
[0136] 1. 初始化 , 。
[0137] 2. 构造第一矩阵 :将编码序列数据划分为多个比特段,将多个比特段进行排反复,取目标行(例如前 行)的比特段作为第一矩阵,从而实现第一矩阵的构造。
[0138] 3. 采用上述算法1计算第一矩阵 的近似秩 ,若 ,则记录该降秩位置 。
[0139] 4. 根据多个降秩位置,计算相邻降秩位置对应的差序列,差序列包括多个位置差值,将多个位置差值的最大公因子作为删余卷积码的码长的估计值 。
[0140] 5. 根据每个降秩位置对应的近似秩,计算相邻降秩位置对应的近似秩之间的矩阵秩差。
[0141] 6. 将多个位置差值作为自变量,每个位置差值对应的矩阵秩差作为因变量,采用直线拟合方式,将拟合的直线的斜率 作为k/n的估计值,计算 ,即将 作为删余卷积码的维数。
[0142] 7. 输出 。
[0143] 可选地,上述步骤103的具体实现方式包括:
[0144] 基于所述删余卷积码的码长、维数和所述编码码字序列,采用哈达玛变换法确定所述删余卷积码的第一多项式生成矩阵。
[0145] 具体地,删余卷积码的第一多项式生成矩阵可以采用两种实现方式进行计算,其中,在不存在误码的情况下,采用第一种实现方式计算删余卷积码的第一多项式生成矩阵;在存在误码的情况下,采用容错能力很强的第二种实现方式计算删余卷积码的第一多项式生成矩阵。第一种实现方式如下:
[0146] 设多项式校验矩阵为:
[0147] (13)
[0148] 其中,n为识别的删余卷积码的码长 ,k为识别的删余卷积码的维数 ,。
[0149] 则有
[0150] (14)
[0151] 其中, 表示码字多项式向量, 。
[0152] 则上述公式(14)等价于公式(15):
[0153] (15)
[0154] 求解该方程组,就可得到校验多项式,在得到校验多项式之后,利用多项式生成矩阵与校验矩阵之间的关系,通过解线性方程组的方法得到第一多项式生成矩阵。其中,多项式生成矩阵与校验矩阵之间的关系,采用公式(16)表示:
[0155] (16)
[0156] 其中, 表示多项式生成矩阵。
[0157] 第二种实现方式如下:
[0158] 算法3、哈达玛(Hadamard)变换法求取多项式生成矩阵算法
[0159] 输入:校验多项式的次数估计最大值m、删余卷积码的码长n、第二预设阈值 和编码码字序列 。
[0160] 输出:第一多项式生成矩阵 。
[0161] 1. 初始化长度为 的整数序列A[ ]为0。
[0162] 2.  。
[0163] 3. 依次取分量码字 ,令
[0164]
[0165] 更新 。
[0166] 4.  ,若 ,转步骤3。
[0167] 5. 对 长序列A[ ]进行快速Hadamard变换。
[0168] 6 .  取 变换 后的 A[  ] 的值 大于 处的 下 标向 量集 合。
[0169] 7.  将向量集合作为线性方程组的系数矩阵,解该线性方程组,得解,k表示删余卷积码的维数。
[0170] 8. 将每个解 拆解成n个m次的多项式 、 、…、 。
[0171] 9.  将每组多项式 ,计算最大公因式 ,若,则 。
[0172] 10. 输出第一多项式生成矩阵 。
[0173] 可选地,上述步骤104的具体实现方式包括:
[0174] 步骤A:基于所述删余卷积码的第一多项式生成矩阵,确定所述第一多项式生成矩阵的列集合和初始化删余模式位串。
[0175] 具体地,根据删余卷积码的第一多项式生成矩阵,将第一多项式生成矩阵的列作为列集合S,初始化删余模式位串P’。
[0176] 步骤B:在所述列集合不为空的情况下,依次取所述列集合中的一列并计算第一公式。
[0177] 具体地,判断列集合S是否为空,在列集合S不为空的情况下,依次取列集合中的一列,并根据定理2中的 计算方式计算。其中, 和 相同。
[0178] 步骤C:在所述第一公式为多项式的情况下,将所述第一公式转化为第三矩阵。
[0179] 具体地,判断第一公式是否为多项式,在第一公式为多项式的情况下,将第一公式采用定理1中的上述公式(3)进行转化,得到第三矩阵。
[0180] 步骤D:判断所述第三矩阵和所述第一多项式生成矩阵是否存在重合的列。
[0181] 步骤E:在所述第三矩阵和所述第一多项式生成矩阵存在所述重合的列的情况下,基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串。
[0182] 具体地,在第三矩阵和第一多项式生成矩阵存在重合的列的情况下,可以根据重合的列和第一关联关系,更新列集合和删余模式位串,得到新的列集合和新的删余模式位串。
[0183] 步骤F:在所述新的列集合不为空的情况下,基于所述新的列集合和所述新的删余模式位串,重复执行步骤B‑步骤F,直至最终更新后的新的列集合为空。
[0184] 具体地,判断新的列集合是否为空,在新的列集合不为空的情况下,根据新的列集合和新的删余模式位串,重复执行步骤B‑步骤F,直至最终更新后的新的列集合为空。
[0185] 步骤G:将每一次计算的第一公式和每一次更新得到的新的删余模式位串分别进行拼接,得到所述删余卷积码的母码的所述第二生成多项式矩阵和所述删余模式。
[0186] 具体地,将每一次计算的第一公式进行拼接,得到删余卷积码的母码的第二生成多项式矩阵,以及将每一次更新得到的新的删余模式位串进行拼接,得到删余模式。
[0187] 可选地,所述基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串,包括:
[0188] 基于所述重合的列和所述第一关联关系,将所述重合的列从所述第一多项式生成矩阵对应的列集合中删除,得到所述新的列集合,并对所述删余模式位串进行左移运算,得到所述新的删余模式位串。
[0189] 具体地,根据重合的列和第一关联关系,将重合的列从第一多项式生成矩阵对应的列集合中删除,得到新的列集合,以及对删余模式位串中与重合的列对应的位置进行左移运算,即将删余模式位串中与重合的列对应的位置左移一位,并在对应位上存1,得到新的删余模式位串。
[0190] 设删余卷积码 已识别为 卷积码,其第一生成多项式矩阵 为,设 其 母 码为 卷 积码 ,生 成 多 项 式 矩阵 为
,令 ,则对 的每一列
,必存在某一 ,使得 是 的一列,因
此可以根据定理2,从 恢复出 ,并确定删余模式。具体
算法如下:
[0191] 算法4、计算删余卷积码的母码的第二生成多项式矩阵及删余模式
[0192] 输入:删余卷积码的第一多项式生成矩阵 。
[0193] 输出:母码的第二多项式生成矩阵 和删余模式P。
[0194] 1. 初始化:取S为第一多项式生成矩阵 的列集合, , , 。
[0195] 2. while( )
[0196] {
[0197] 取P’=0, ;
[0198] while( )
[0199] {
[0200] ;
[0201] if( 是一个多项式)
[0202] {
[0203] for(i=1;i
[0204] {
[0205] if( 的第i列 )
[0206] {
[0207] P’=(P’<<1)|1;
[0208] 从S中删除该列;
[0209] }
[0210] elseP’=(P’<<1);
[0211] }
[0212] ;
[0213] }
[0214] else  ;
[0215] }
[0216] j=j+1;
[0217] ;
[0218] P=(P<
[0219] }
[0220] m=j;
[0221] 3. 输出母码的第二多项式生成矩阵 和P。
[0222] 例如,设母码的第二多项式生成矩阵为
[0223] ;
[0224] 删余模式为 ;
[0225] 则删余卷积码的第一多项式生成矩阵为
[0226] ;
[0227] 按上述算法4,由 计算 和P的过程如下:
[0228] 第一步,取 的第1列, ,P’=0,计算
[0229] ;
[0230] 不难看出, 的第1列和第3列等于 的第1列和第4列,于是更新P’和S为:
[0231] ;
[0232] 第二步,取 的第一列, ,计算
[0233] ;
[0234] 可以看出, 不是多项式, ,计算
[0235] ;
[0236] 不难看出, 的第2列等于 的第1列,于是更新P’和S为:
[0237] ;
[0238] 第三步,取 的第一列, ,计算
[0239] ;
[0240] 可以看出, 不是多项式, ,计算
[0241] ;
[0242] 不难看出, 的第2列等于 的第1列,于是更新P’和S为:
[0243] ;
[0244] 最终得到母码的第二多项式生成矩阵,
及删余模式P=(101010010)。
[0245] 图2是本发明提供的删余卷积码的母码和删余模式的识别方法的流程示意图之二,如图2所示,方法包括步骤201‑步骤216;其中,
[0246] 步骤201,获取编码序列数据和所述编码序列数据对应的编码码字序列。
[0247] 步骤202,基于编码序列数据,构造第一矩阵,将第一矩阵转化为下三角形式,得到第二矩阵;基于第二矩阵,分别确定第二矩阵中每一列对应的汉明重量。
[0248] 步骤203,基于各汉明重量和第一预设阈值,确定编码序列数据对应的第一矩阵的至少一个近似秩。
[0249] 步骤204,基于各近似秩,确定各近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差;基于各降秩位置,计算相邻降秩位置对应的差序列;差序列包括多个相邻降秩位置对应的位置差值;基于各位置差值,识别删余卷积码的码长。
[0250] 步骤205,基于各矩阵秩差、各位置差值和码长,识别删余卷积码的维数。
[0251] 步骤206,基于删余卷积码的码长、维数和编码码字序列,确定删余卷积码的第一多项式生成矩阵。
[0252] 步骤207,基于删余卷积码的第一多项式生成矩阵,确定第一多项式生成矩阵的列集合和初始化删余模式位串。
[0253] 步骤208,判断列集合是否为空。在列集合不为空的情况下,转至步骤209;在列集合为空的情况下,结束。
[0254] 步骤209,依次取列集合中的一列并计算第一公式。
[0255] 步骤210,判断第一公式是否为多项式。在第一公式为多项式的情况下,转至步骤211;在第一公式不为多项式的情况下,转至步骤209。
[0256] 步骤211,将第一公式转化为第三矩阵。
[0257] 步骤212,判断第三矩阵和第一多项式生成矩阵是否存在重合的列。在第三矩阵和第一多项式生成矩阵存在重合的列的情况下,转至步骤213;在第三矩阵和第一多项式生成矩阵不存在重合的列的情况下,转至步骤214。
[0258] 步骤213,将重合的列从第一多项式生成矩阵对应的列集合中删除,得到新的列集合,并对删余模式位串进行左移运算,得到新的删余模式位串。
[0259] 步骤214,将第一多项式生成矩阵对应的列集合作为新的列集合,并对删余模式位串左移一位,得到新的删余模式位串。
[0260] 步骤215,判断新的列集合是否为空。在新的列集合不为空的情况下,重复执行步骤209‑步骤215,直至最终更新后的新的列集合为空。
[0261] 步骤216,将每一次计算的第一公式和每一次更新得到的新的删余模式位串分别进行拼接,得到删余卷积码的母码的第二生成多项式矩阵和删余模式。
[0262] 下面对本发明提供的删余卷积码的母码和删余模式的识别装置进行描述,下文描述的删余卷积码的母码和删余模式的识别装置与上文描述的删余卷积码的母码和删余模式的识别方法可相互对应参照。
[0263] 图3是本发明提供的删余卷积码的母码和删余模式的识别装置的结构示意图,如图3所示,删余卷积码的母码和删余模式的识别装置300包括:获取模块301、第一识别模块302、确定模块303和第二识别模块304;其中,
[0264] 获取模块301,用于获取编码序列数据和所述编码序列数据对应的编码码字序列;
[0265] 第一识别模块302,用于基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;
[0266] 确定模块303,用于基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;
[0267] 第二识别模块304,用于基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0268] 本发明提供的删余卷积码的母码和删余模式的识别装置,通过获取编码序列数据和编码序列数据对应的编码码字序列,基于编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于删余卷积码的码长、维数和编码码字序列,确定删余卷积码的第一多项式生成矩阵;基于删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式;第一关联关系表示第一多项式生成矩阵、母码的第二多项式生成矩阵和删余模式之间的关系。通过矩阵近似秩算法识别删余卷积码的码长和维数,能够识别任意码率的删余卷积码,而且提高了容错能力,进而根据删余卷积码的第一多项式生成矩阵和第一关联关系,识别删余卷积码的母码的第二多项式生成矩阵和删余模式,能够提高删余卷积码的母码和删余模式的识别准确率和效率。
[0269] 可选地,所述第一识别模块302,具体用于:
[0270] 基于所述编码序列数据和矩阵近似秩算法,确定所述编码序列数据对应的第一矩阵的至少一个近似秩;
[0271] 基于各所述近似秩,确定各所述近似秩对应的降秩位置和相邻近似秩对应的矩阵秩差;
[0272] 基于各所述降秩位置和各所述矩阵秩差,识别所述删余卷积码的码长和维数。
[0273] 可选地,所述第一识别模块302,具体用于:
[0274] 基于所述编码序列数据,构造第一矩阵;
[0275] 将所述第一矩阵转化为下三角形式,得到第二矩阵;
[0276] 基于所述第二矩阵,分别确定所述第二矩阵中每一列对应的汉明重量;
[0277] 基于各所述汉明重量和第一预设阈值,确定所述编码序列数据对应的所述第一矩阵的各所述近似秩。
[0278] 可选地,所述第一识别模块302,具体用于:
[0279] 基于各所述降秩位置,计算相邻降秩位置对应的差序列;所述差序列包括多个相邻降秩位置对应的位置差值;
[0280] 基于各所述位置差值,识别所述删余卷积码的码长;
[0281] 基于各所述矩阵秩差、各所述位置差值和所述码长,识别所述删余卷积码的维数。
[0282] 可选地,所述确定模块303,具体用于:
[0283] 基于所述删余卷积码的码长、维数和所述编码码字序列,采用哈达玛变换法确定所述删余卷积码的第一多项式生成矩阵。
[0284] 可选地,所述第二识别模块304,具体用于:
[0285] 步骤A:基于所述删余卷积码的第一多项式生成矩阵,确定所述第一多项式生成矩阵的列集合和初始化删余模式位串;
[0286] 步骤B:在所述列集合不为空的情况下,依次取所述列集合中的一列并计算第一公式;
[0287] 步骤C:在所述第一公式为多项式的情况下,将所述第一公式转化为第三矩阵;
[0288] 步骤D:判断所述第三矩阵和所述第一多项式生成矩阵是否存在重合的列;
[0289] 步骤E:在所述第三矩阵和所述第一多项式生成矩阵存在所述重合的列的情况下,基于所述重合的列和所述第一关联关系,更新所述列集合和所述删余模式位串,得到新的列集合和新的删余模式位串;
[0290] 步骤F:在所述新的列集合不为空的情况下,基于所述新的列集合和所述新的删余模式位串,重复执行步骤B‑步骤F,直至最终更新后的新的列集合为空;
[0291] 步骤G:将每一次计算的第一公式和每一次更新得到的新的删余模式位串分别进行拼接,得到所述删余卷积码的母码的所述第二生成多项式矩阵和所述删余模式。
[0292] 可选地,所述第二识别模块304,具体用于:
[0293] 基于所述重合的列和所述第一关联关系,将所述重合的列从所述第一多项式生成矩阵对应的列集合中删除,得到所述新的列集合,并对所述删余模式位串进行左移运算,得到所述新的删余模式位串。
[0294] 图4是本发明提供的一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行删余卷积码的母码和删余模式的识别方法,该方法包括:获取编码序列数据和所述编码序列数据对应的编码码字序列;基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0295] 此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0296] 又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的删余卷积码的母码和删余模式的识别方法,该方法包括:获取编码序列数据和所述编码序列数据对应的编码码字序列;基于所述编码序列数据和矩阵近似秩算法,识别删余卷积码的码长和维数;基于所述删余卷积码的码长、维数和所述编码码字序列,确定所述删余卷积码的第一多项式生成矩阵;基于所述删余卷积码的第一多项式生成矩阵和第一关联关系,识别所述删余卷积码的母码的第二多项式生成矩阵和删余模式;所述第一关联关系表示所述第一多项式生成矩阵、所述母码的所述第二多项式生成矩阵和所述删余模式之间的关系。
[0297] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0298] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0299] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。