当前位置: 首页 > 专利查询>山东大学专利>正文

一种BCH码做外码的级联码识别交织长度的盲识别方法技术

技术编号:10713665 阅读:84 留言:0更新日期:2014-12-03 17:28
一种BCH码做外码的级联码识别交织长度的盲识别方法,属信道编码盲识别技术领域,通过计算机进行数据读入、分析及计算处理,首先建立一个矩阵,通过线性矩阵分析找出对应的最小秩时所存在的最大列数z,再以z或z的整倍数做为列数建立新的矩阵,求出不同列数的秩,若满足所有的以秩为纵轴,列数为横轴的点斜率均相等,即可求出交织长度。此方法可以解决BCH作为外码时交织长度的识别问题,同时也提升了识别速度。

【技术实现步骤摘要】
一种BCH码做外码的级联码识别交织长度的盲识别方法
本专利技术涉及数字通信系统中的一种BCH码做外码的级联码识别交织长度的盲识别方法,属于信道编码盲识别

技术介绍
级联编码是一种通过短分量码构造强纠错能力的长码的有效技术。使用非二进制码作为外码、二进制码作为内码的级联码已广泛应用于通信和数据存储系统中,大多数应用中,使用RS码或BCH码作为外码,卷积码作为内码。由于级联码较好的编码增益和较低的实现复杂度在各种通信场合中得到了广泛的应用。张永光、楼才义著的《信道编码及其识别分析》中给出定理:对经(n,k)线性分组码+分组交织编码后的数据序列所构成的p×q矩阵,若q为L或L的整数倍,则单位化后左上角单位阵的维数相等,且此时矩阵的秩不等于列数q。此定理对于RS码做外码的级联码交织长度的盲识别适用,然而有时却不适用于BCH码做外码的级联码交织长度的识别。且因为其对每一个不同的列数均要建立矩阵并进行化简,导致识别速度降低。因此,针对上述问题本文提出了一种针对BCH码做外码的级联码交织长度盲识别的算法。
技术实现思路
为了克服现有技术存在的缺陷和不足,本专利技术提供了一种BCH码做外码的级联码识别交织长度的盲识别方法。本专利技术的技术方案如下:一种BCH码做外码的级联码识别交织长度的盲识别方法,通过计算机进行数据读入、分析及计算处理,该方法步骤如下:(1)由计算机从待识别数据读入部分待识别的数据,设置一个表示列数循环时其最大值的变量q_max,其值为100;(2)设列数q的初值为10,此值应小于可能出现的最小的交织长度,其中交织长度等于BCH码长乘以交织宽度,BCH码阶数范围为3~8,交织宽度最小为2,因此最小交织长度为(23-1)×2=14;(3)建立一个p×q大小的矩阵,其中p是行数,q是列数,且p>q;(4)对所建立的矩阵从左到右按列化简,若对角线上元素为1,则将此行依次与其下方每一行进行模二加运算;如果对角线元素为0,则寻找该列对角线下方的非零元素所在行,将非零元素所在行与当前行互换,再执行上述化简;如果对角线下方元素全为0,则不再化简;(5)计算化简后矩阵的秩,若秩不等于列数时则记录此时矩阵的列数和秩,否则不记录;(6)将列数q加1,当q>q_max时,转入步骤(7),否则转入步骤(3);(7)比较保存的所有秩,求出最小的秩r_min;在此基础上,统计所有满足该最小秩的列数,求出该最小秩所对应的最大的列数z;(8)设循环变量i的初值为2;(9)使用待识别数据重新建立一个p×q大小的矩阵,其中p为行数,q为列数(p和q跟上面的是一样的变量,只是赋值不同),且q的值为(8)中i的值与(7)中所求出的最大列数z的值的乘积,同时使p>q;(10)对(9)中所建立的矩阵进行步骤(4)中的化简运算;(11)计算化简后矩阵的秩,若秩不等于上面所求的最小秩r_min,则记录此时矩阵的列数和秩,将列数和秩两个数作为一组,依次记为r1q1、r2q2、r3q3…;然后i加1,若i小于10则转入步骤(9),否则转入步骤(12),若秩等于上面所求出的最小秩r_min,则将最大列数z更新为此时的列数q,且给i赋值为2,转入步骤(8);(12)设另一个循环变量flag为2;设比值变量ratio,使其其中r1、q1为步骤(11)中的r1、q1;(13)计算由于flag设为2,故rflag、rflag-1、qflag、qflag-1分别对应为步骤(11)中的r2、r1、q2、q1(若flag设为3,rflag、rflag-1、qflag、qflag-1分别对应为步骤(11)中的r3、r2、q3、q2。);(14)若等于ratio,则flag加1,如果flag小于9则转入步骤(13),若不等于ratio,q_max加50,转入步骤(2),若flag等于9则交织长度应等于此时最大列数z。本专利技术的有益效果是可以实现BCH码作为外码的级联码交织长度的识别,并提高识别速度。附图说明图1是本专利技术方法的流程示意框图。具体实施方式下面结合实施例对本专利技术作进一步说明,但不限于此。实施例:本专利技术实施例如下:一种BCH码做外码的级联码识别交织长度的盲识别方法,通过计算机进行数据读入、分析及计算处理,该方法步骤如下:(1)由计算机从待识别数据读入部分待识别的数据,设置一个表示列数循环时其最大值的变量q_max,其值为100;(2)设列数q的初值为10,此值应小于可能出现的最小的交织长度,其中交织长度等于BCH码长乘以交织宽度,BCH码阶数范围为3~8,交织宽度最小为2,因此最小交织长度为(23-1)×2=14;(3)建立一个p×q大小的矩阵,其中p是行数,q是列数,且p>q;(4)对所建立的矩阵从左到右按列化简,若对角线上元素为1,则将此行依次与其下方每一行进行模二加运算;如果对角线元素为0,则寻找该列对角线下方的非零元素所在行,将非零元素所在行与当前行互换,再执行上述化简;如果对角线下方元素全为0,则不再化简;(5)计算化简后矩阵的秩,若秩不等于列数时则记录此时矩阵的列数和秩,否则不记录;(6)将列数q加1,当q>q_max时,转入步骤(7),否则转入步骤(3);(7)比较保存的所有秩,求出最小的秩r_min;在此基础上,统计所有满足该最小秩的列数,求出该最小秩所对应的最大的列数z;(8)设循环变量i的初值为2;(9)使用待识别数据重新建立一个p×q大小的矩阵,其中p为行数,q为列数(p和q跟上面的是一样的变量,只是赋值不同),且q的值为(8)中i的值与(7)中所求出的最大列数z的值的乘积,同时使p>q;(10)对(9)中所建立的矩阵进行步骤(4)中的化简运算;(11)计算化简后矩阵的秩,若秩不等于上面所求的最小秩r_min,则记录此时矩阵的列数和秩,将列数和秩两个数作为一组,依次记为r1q1、r2q2、r3q3…;然后i加1,若i小于10则转入步骤(9),否则转入步骤(12),若秩等于上面所求出的最小秩r_min,则将最大列数z更新为此时的列数q,且给i赋值为2,转入步骤(8);(12)设另一个循环变量flag为2;设比值变量ratio,使其其中r1、q1为步骤(11)中的r1、q1;(13)计算由于flag设为2,故rflag、rflag-1、qflag、qflag-1分别对应为步骤(11)中的r2、r1、q2、q1(若flag设为3,rflag、rflag-1、qflag、qflag-1分别对应为步骤(11)中的r3、r2、q3、q2。);(14)若等于ratio,则flag加1,如果flag小于9则转入步骤(13),若不等于ratio,q_max加50,转入步骤(2),若flag等于9则交织长度应等于此时最大列数z。本文档来自技高网...
一种BCH码做外码的级联码识别交织长度的盲识别方法

【技术保护点】
一种BCH码做外码的级联码识别交织长度的盲识别方法,通过计算机进行数据读入、分析及计算处理,该方法步骤如下:(1)由计算机从待识别数据读入部分待识别的数据,设置一个表示列数循环时其最大值的变量q_max,其值为100;(2)设列数q的初值为10,此值应小于可能出现的最小的交织长度,其中交织长度等于BCH码长乘以交织宽度,BCH码阶数范围为3~8,交织宽度最小为2,因此最小交织长度为(23‑1)×2=14;(3)建立一个p×q大小的矩阵,其中p是行数,q是列数,且p>q;(4)对所建立的矩阵从左到右按列化简,若对角线上元素为1,则将此行依次与其下方每一行进行模二加运算;如果对角线元素为0,则寻找该列对角线下方的非零元素所在行,将非零元素所在行与当前行互换,再执行上述化简;如果对角线下方元素全为0,则不再化简;(5)计算化简后矩阵的秩,若秩不等于列数时则记录此时矩阵的列数和秩,否则不记录;(6)将列数q加1,当q>q_max时,转入步骤(7),否则转入步骤(3);(7)比较保存的所有秩,求出最小的秩r_min;在此基础上,统计所有满足该最小秩的列数,求出该最小秩所对应的最大的列数z;(8)设循环变量i的初值为2;(9)使用待识别数据重新建立一个p×q大小的矩阵,其中p为行数,q为列数(p和q跟上面的是一样的变量,只是赋值不同),且q的值为(8)中i的值与(7)中所求出的最大列数z的值的乘积,同时使p>q;(10)对(9)中所建立的矩阵进行步骤(4)中的化简运算;(11)计算化简后矩阵的秩,若秩不等于上面所求的最小秩r_min,则记录此时矩阵的列数和秩,将列数和秩两个数作为一组,依次记为r1q1、r2q2、r3q3L;然后i加1,若i小于10则转入步骤(9),否则转入步骤(12),若秩等于上面所求出的最小秩r_min,则将最大列数z更新为此时的列数q,且给i赋值为2,转入步骤(8);(12)设另一个循环变量flag为2;设比值变量ratio,使其其中r1、q1为步骤(11)中的r1、q1;(13)计算由于flag设为2,故rflag、rflag‑1、qflag、qflag‑1分别对应为步骤(11)中的r2、r1、q2、q1;(14)若等于ratio,则flag加1,如果flag小于9则转入步骤(13),若不等于ratio,q_max加50,转入步骤(2),若flag等于9则交织长度应等于此时最大列数z。...

【技术特征摘要】
1.一种BCH码做外码的级联码识别交织长度的盲识别方法,通过计算机进行数据读入、分析及计算处理,该方法步骤如下:(1)由计算机从待识别数据读入部分待识别的数据,设置一个表示列数循环时其最大值的变量q_max,其值为100;(2)设列数q的初值为10,此值应小于可能出现的最小的交织长度,其中交织长度等于BCH码长乘以交织宽度,BCH码阶数范围为3~8,交织宽度最小为2,因此最小交织长度为(23-1)×2=14;(3)建立一个p×q大小的矩阵,其中p是行数,q是列数,且p>q;(4)对所建立的矩阵从左到右按列化简,若对角线上元素为1,则将此行依次与其下方每一行进行模二加运算;如果对角线元素为0,则寻找该列对角线下方的非零元素所在行,将非零元素所在行与当前行互换,再执行上述化简;如果对角线下方元素全为0,则不再化简;(5)计算化简后矩阵的秩,若秩不等于列数时则记录此时矩阵的列数和秩,否则不记录;(6)将列数q加1,当q>q_max时,转入步骤(7),否则转入步骤(3);(7)比较保存的所有秩,求出最小的秩r_min;在此基础上,统计所有满足该最小秩的列数,求出该最小秩所对应的最大的列...

【专利技术属性】
技术研发人员:马丕明张丽媛杨勇
申请(专利权)人:山东大学
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1