一种编码器生成矩阵的产生方法和装置与流程
未命名
08-14
阅读:103
评论:0
1.本发明涉及编码技术领域:
:,尤其涉及一种编码器生成矩阵的产生方法和装置。
背景技术:
::2.polar码产生的核心是信道极化。通过信道极化,将一组独立的二元输入信道变换成容量接近于1和0的两类极端信道:无噪信道或无用信道。信道容量接近于1的无噪信道用来传输信息,而信道容量接近于0的无用信道可以传输双方约定的已知比特(即冻结比特)。3.polar编码的过程可以由下式描述:[0004][0005]其中,n=2n为母码长度,为编码输出的码字,为待编码比特序列,gn为生成矩阵。[0006]gn是一个维度为n×n的方阵,可由一个二维核矩阵g2g2经过n次kronecker积递归计算得到。根据kronecker积的性质:[0007][0008]从而有[0009][0010]其中,表示kronecker积。[0011]二维核矩阵为[0012][0013]这里有必要解释下kronecker积。[0014]kronecker积是张量积的一种,在数学上表示两个任意大小的矩阵运算。一般而言,给定任意矩阵x∈rm×n和y∈rp×q,则矩阵x和矩阵y的kronecker积为:[0015][0016]最终得到一个mp×nq的矩阵。[0017]举例:假设矩阵则[0018][0019]nr中,poalr母码长度n∈[32,1024],并且为2的n次幂。对于较大码长的编码,采用kronecker积的计算方法需要多次递归运算,对于硬件实现来说不太友好,所需执行时间比较长。技术实现要素:[0020]基于
背景技术:
:中的问题,本发明提供一种编码器生成矩阵的产生方法和装置,旨在提高编码效率。[0021]本发明提供一种编码器生成矩阵的产生方法,包括:[0022]步骤a1,获取母码长度,根据母码长度确定要生成的目标生成矩阵的维数;[0023]步骤a2,根据目标生成矩阵的维数与一基础矩阵的维数获取扩展系数;[0024]步骤a3,根据扩展系数和预存的参考矩阵形成扩展标记矩阵;[0025]步骤a4,在扩展标记矩阵中的第一矩阵元素对应的位置填充基础矩阵,在扩展标记矩阵中的第二矩阵元素对应的位置填充全零矩阵,形成目标生成矩阵;[0026]其中,全零矩阵的行数和列数均与基础矩阵相同;[0027]其中,第一矩阵元素为1,第二矩阵元素为0;[0028]其中,全零矩阵的矩阵元素均为0。[0029]进一步的,步骤a1中,母码长度如下表示:[0030]n=2n;[0031]其中,[0032]n为母码长度;[0033]n为母码长度对应的幂指数;[0034]目标生成矩阵的维数如下所示:[0035]n2=2n2;[0036]其中,[0037]n2为目标生成矩阵的维数;[0038]n2为目标生成矩阵对应的幂指数;[0039]其中,n=n2。[0040]进一步的,基础矩阵的维数如下表示:[0041]n0=2n0;[0042]其中,[0043]n0为基础矩阵的维数;[0044]n2为基础矩阵对应的幂指数;[0045]在步骤a2中,扩展系数对应的幂指数如下表示:[0046]δn=n2-n0;[0047]其中,δn为扩展系数对应的幂指数;[0048]扩展系数如下表示:[0049]nk=2δn;[0050]其中,nk为扩展系数。[0051]进一步的,选取参考矩阵中前nk行和前nk列的矩阵元素组成扩展标记矩阵。[0052]进一步的,目标生成矩阵、基础矩阵和参考矩阵均为方阵。[0053]进一步的,基础矩阵的维数和参考矩阵的维数均为32。[0054]进一步的,预先设置多个不同维数的基础矩阵以及多个不同维数的参考矩阵;[0055]在步骤a2中,根据目标生成矩阵的维数调用相应的基础矩阵;[0056]在步骤a3中,根据目标生成矩阵的维数调用相应的参考矩阵。[0057]本发明还提供一种编码器生成矩阵的产生装置,使用前述的一种编码器生成矩阵的产生方法,包括:[0058]确定模块,获取母码长度,根据母码长度确定要生成的目标生成矩阵的维数;[0059]计算模块,连接确定模块,根据目标生成矩阵的维数与一基础矩阵的维数获取扩展系数;[0060]形成模块,连接计算模块,根据扩展系数和预存的参考矩阵形成扩展标记矩阵;[0061]填充模块,连接形成模块,在扩展标记矩阵中的第一矩阵元素对应的位置填充基础矩阵,在第二矩阵元素对应的位置填充全零矩阵,形成目标生成矩阵;[0062]其中,全零矩阵的行数和列数均与基础矩阵相同;[0063]其中,第一矩阵元素为1,第二矩阵元素为0;[0064]其中,全零矩阵的矩阵元素均为0。[0065][0066]进一步的,母码长度如下表示:[0067]n=2n;[0068]其中,[0069]n为母码长度;[0070]n为母码长度对应的幂指数;[0071]目标生成矩阵的维数如下所示:[0072]n2=2n2;[0073]其中,[0074]n2为目标生成矩阵的维数;[0075]n2为目标生成矩阵对应的幂指数;[0076]其中,n=n2。[0077]进一步的,基础矩阵的维数如下表示:[0078]n0=2n0;[0079]其中,[0080]n0为基础矩阵的维数;[0081]n2为基础矩阵对应的幂指数;[0082]扩展系数对应的幂指数如下表示:[0083]δn=n2-n0;[0084]其中,δn为扩展系数对应的幂指数;[0085]扩展系数如下表示:[0086]nk=2δn;[0087]其中,nk为扩展系数。[0088]本发明的有益技术效果在于:本发明提出了一种矩阵扩展的方法,能够以极小的存储代价,快速产生polar编码生成矩阵,从而提高polar编码器的编码速度,为加速器提供更好的时序。附图说明[0089]图1为本发明一种编码器生成矩阵的产生方法的步骤流程图;[0090]图2为本发明一种编码器生成矩阵的产生系统的模块示意图;[0091]图3为本发明一种编码器生成矩阵的产生八阶参考矩阵示意图。具体实施方式[0092]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。[0093]需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。[0094]下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。[0095]polar码的生成矩阵是一个下三角矩阵且高度结构化。仔细观察polar编码器的生成矩阵,可以发现元素分布的一个规律:当给定一个维度为n1的矩阵作为参考矩阵以及维度为n0的基础矩阵(为最小可用极化核矩阵)后,维度为n2(必须为2的幂次)的目标生成矩阵可以直接根据需要扩展的次数以及中对应维度所构成的扩展标记矩阵中的元素1或者0,以基础矩阵对扩展标记矩阵进行扩展形成目标生成矩阵。具体实现方法如下。[0096]参见图1,本发明提供一种编码器生成矩阵的产生方法,包括:[0097]步骤a1,获取母码长度n,根据母码长度确定要生成的目标生成矩阵的维数;维数是指矩阵的行数或者列数;[0098]步骤a2,根据目标生成矩阵的维数与一基础矩阵的维数获取扩展系数;[0099]步骤a3,根据扩展系数和预存的参考矩阵形成扩展标记矩阵;[0100]步骤a4,在扩展标记矩阵中的第一矩阵元素对应的位置填充基础矩阵,在扩展标记矩阵中的第二矩阵元素对应的位置填充全零矩阵,形成目标生成矩阵;[0101]其中,全零矩阵的行数和列数均与基础矩阵相同;其中,第一矩阵元素为1,第二矩阵元素为0;[0102]其中,全零矩阵的矩阵元素均为0。[0103]进一步的,步骤a1中,母码长度如下表示:[0104]n=2n;[0105]其中,[0106]n为母码长度;[0107]n为母码长度对应的幂指数;[0108]目标生成矩阵的维数如下所示:[0109]n2=2n2;[0110]其中,[0111]n2为目标生成矩阵的维数;[0112]n2为目标生成矩阵对应的幂指数;[0113]其中,n=n2。[0114]进一步的,基础矩阵的维数如下表示:[0115]n0=2n0;[0116]其中,[0117]n0为基础矩阵的维数;[0118]n2为基础矩阵对应的幂指数;[0119]在步骤a2中,扩展系数对应的幂指数如下表示:[0120]δn=n2-n0;[0121]其中,δn为扩展系数对应的幂指数;[0122]扩展系数如下表示:[0123]nk=2δn;[0124]其中,nk为扩展系数。[0125]进一步的,选取参考矩阵中前nk行和前nk列的矩阵元素组成扩展标记矩阵。[0126]进一步的,目标生成矩阵、基础矩阵和参考矩阵均为方阵。[0127]进一步的,基础矩阵的维数和参考矩阵的维数为32。[0128]进一步的,第一矩阵元素为1,第二矩阵元素为0。[0129]进一步的,预先设置多个不同维数的基础矩阵以及多个不同维数的参考矩阵;[0130]在步骤a2中,根据目标生成矩阵的维数调用相应的基础矩阵;[0131]在步骤a3中,根据目标生成矩阵的维数调用相应的参考矩阵。[0132]参见图2,本发明还提供一种编码器生成矩阵的产生装置,,使用前述的一种编码器生成矩阵的产生方法,包括:[0133]确定模块(1),获取母码长度,根据母码长度确定要生成的目标生成矩阵的维数;维数是指矩阵的行数或者列数;[0134]计算模块(2),连接确定模块(1),根据目标生成矩阵的维数与一基础矩阵的维数获取扩展系数;[0135]形成模块(3),连接计算模块(2),根据扩展系数和预存的参考矩阵形成扩展标记矩阵;[0136]填充模块(4),连接形成模块(3),在扩展标记矩阵中的第一矩阵元素对应的位置填充基础矩阵,在第二矩阵元素对应的位置填充全零矩阵,形成目标生成矩阵;[0137]其中,全零矩阵的行数和列数均与基础矩阵相同;[0138]其中,第一矩阵元素为1,第二矩阵元素为0;[0139]其中,全零矩阵的矩阵元素均为0。[0140]进一步的,母码长度如下表示:[0141]n=2n;[0142]其中,[0143]n为母码长度;[0144]n为母码长度对应的幂指数;[0145]目标生成矩阵的维数如下所示:[0146]n2=2n2;[0147]其中,[0148]n2为目标生成矩阵的维数;[0149]n2为目标生成矩阵对应的幂指数;[0150]其中,n=n2。[0151]具体的,参考矩阵、目标生成矩阵以及基础矩阵均为方阵,维数是指方阵的阶数。[0152]进一步的,基础矩阵的维数如下表示:[0153]n0=2n0;[0154]其中,[0155]n0为基础矩阵的维数;[0156]n2为基础矩阵对应的幂指数;[0157]扩展系数对应的幂指数如下表示:[0158]δn=n2-n0;[0159]其中,δn为扩展系数对应的幂指数;[0160]扩展系数如下表示:[0161]nk=2δn;[0162]其中,nk为扩展系数。[0163]应用实施例1[0164]假设将图3中的8阶生成矩阵g8作为参考矩阵,以2阶矩阵g2为基础矩阵,根据本发明,通过矩阵扩展得到4阶目标生成矩阵g4的过程如下:[0165]首先,根据目标生成矩阵g4和基础矩阵g2计算扩展次数,g4的阶数为4,对应的幂指数n2为2,基础矩阵g2的阶数为2,对应的幂指数n0为1,则扩展次数也即扩展系数的幂指数δn=n2-n0=2-1=1;[0166]根据扩展系数的幂指数得到扩展系数nk=2δn=2;[0167]以扩展系数作为阶数,选取参考矩阵g8前2行和前2列形成扩展标记矩阵gk;[0168][0169]在扩展标记矩阵元素为1的位置填充基础矩阵g2,在标记矩阵元素0的位置填充阶数为2的全零矩阵,得到目标生成矩阵g4;[0170][0171]应用实施例2,[0172]通过矩阵扩展计算16阶生成矩阵g16;[0173]扩展系数的幂指数δn=n2-n0=4-1=3;[0174]扩展系数即阶数8;[0175]以扩展系数作为阶数,选取参考矩阵g8前8行即0~7行和前8列即0~7列形成扩展标记矩阵gk;[0176][0177]在扩展标记矩阵元素1的位置填充单元阵g2,在标记矩阵元素0的位置填充维度为2的全零矩阵,得到目标生成矩阵;[0178][0179]nr中的polar编码,码字长度n∈[32,1024],本发明中将n=32作为参考生成矩阵以及基础矩阵。因此,硬件实现中只需要存储一个32×32的矩阵,就可以通过矩阵扩展得到维度32~1024的生成矩阵,维度为32的生成矩阵可见[0180]table1。[0181]table1poalr编码器32阶生成矩阵[0182]1000000000000000000000000000000011000000000000000000000000000000101000000000000000000000000000001111000000000000000000000000000010001000000000000000000000000000110011000000000000000000000000001010101000000000000000000000000011111111000000000000000000000000100000001000000000000000000000001100000011000000000000000000000010100000101000000000000000000000111100001111000000000000000000001000100010001000000000000000000011001100110011000000000000000000101010101010101000000000000000001111111111111111000000000000000010000000000000001000000000000000110000000000000011000000000000001010000000000000101000000000000011110000000000001111000000000000100010000000000010001000000000001100110000000000110011000000000010101010000000001010101000000000111111110000000011111111000000001000000010000000100000001000000011000000110000001100000011000000101000001010000010100000101000001111000011110000111100001111000010001000100010001000100010001000110011001100110011001100110011001010101010101010101010101010101011111111111111111111111111111111[0183]以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。当前第1页12当前第1页12
技术特征:
1.一种编码器生成矩阵的产生方法,其特征在于,包括:步骤a1,获取母码长度,根据所述母码长度确定要生成的目标生成矩阵的维数;步骤a2,根据所述目标生成矩阵的维数与基础矩阵的维数获取扩展系数;步骤a3,根据所述扩展系数和所述预存的参考矩阵形成扩展标记矩阵;步骤a4,在所述扩展标记矩阵中的第一矩阵元素对应的位置填充所述基础矩阵,在所述扩展标记矩阵中的第二矩阵元素对应的位置填充全零矩阵,形成所述目标生成矩阵;其中,所述全零矩阵的行数和列数均与所述基础矩阵相同;其中,所述第一矩阵元素为1,所述第二矩阵元素为0;其中,所述全零矩阵的矩阵元素均为0。2.如权利要求1所述的一种编码器生成矩阵的产生方法,其特征在于,所述步骤a1中,所述母码长度如下表示:n=2
n
;其中,n为所述母码长度;n为所述母码长度对应的幂指数;所述目标生成矩阵的维数如下所示:n2=2
n2
;其中,n2为所述目标生成矩阵的维数;n2为所述目标生成矩阵对应的幂指数;其中,n=n2。3.如权利要求2所述的一种编码器生成矩阵的产生方法,其特征在于,所述基础矩阵的维数如下表示:n0=2
n0
;其中,n0为所述基础矩阵的维数;n2为所述基础矩阵对应的幂指数;在所述步骤a2中,所述扩展系数对应的幂指数如下表示:δn=n2-n0;其中,δn为所述扩展系数对应的幂指数;所述扩展系数如下表示:nk=2δn;其中,n
k
为所述扩展系数。4.如权利要求3所述的一种编码器生成矩阵的产生方法,其特征在于,选取所述参考矩阵中前n
k
行和前n
k
列的矩阵元素组成所述扩展标记矩阵。5.如权利要求4所述的一种编码器生成矩阵的产生方法,其特征在于,所述目标生成矩阵、所述基础矩阵和所述参考矩阵均为方阵。6.如权利要求5所述的一种编码器生成矩阵的产生方法,其特征在于,所述基础矩阵的维数和所述参考矩阵的维数均为32。
7.如权利要求1所述的一种编码器生成矩阵的产生方法,其特征在于,预先设置多个不同维数的所述基础矩阵以及多个不同维数的所述参考矩阵;在所述步骤a2中,根据所述目标生成矩阵的维数调用相应的所述基础矩阵;在所述步骤a3中,根据所述目标生成矩阵的维数调用相应的所述参考矩阵。8.一种编码器生成矩阵的产生装置,其特征在于,使用如权利要求1-7任意一项所述的一种编码器生成矩阵的产生方法,包括:确定模块,获取母码长度,根据所述母码长度确定要生成的目标生成矩阵的维数;计算模块,连接所述确定模块,根据所述目标生成矩阵的维数与一基础矩阵的维数获取扩展系数;形成模块,连接所述计算模块,根据所述扩展系数和预存的所述参考矩阵形成扩展标记矩阵;填充模块,连接所述形成模块,在所述扩展标记矩阵中的第一矩阵元素对应的位置填充所述基础矩阵,在第二矩阵元素对应的位置填充全零矩阵,形成所述目标生成矩阵;其中,所述全零矩阵的行数和列数均与所述基础矩阵相同;其中,所述第一矩阵元素为1,所述第二矩阵元素为0;其中,所述全零矩阵的矩阵元素均为0。9.如权利要求8所述的一种编码器生成矩阵的产生装置,其特征在于,所述母码长度如下表示:n=2
n
;其中,n为所述母码长度;n为所述母码长度对应的幂指数;所述目标生成矩阵的维数如下所示:n2=2
n2
;其中,n2为所述目标生成矩阵的维数;n2为所述目标生成矩阵对应的幂指数;其中,n=n2。10.如权利要求9所述的一种编码器生成矩阵的产生方法,其特征在于,所述基础矩阵的维数如下表示:n0=2
n0
;其中,n0为所述基础矩阵的维数;n2为所述基础矩阵对应的幂指数;所述扩展系数对应的幂指数如下表示:δn=n2-n0;其中,δn为所述扩展系数对应的幂指数;所述扩展系数如下表示:nk=2δn;
其中,n
k
为所述扩展系数。
技术总结
本发明提供一种编码器生成矩阵的产生方法和系统,包括:步骤A1,获取母码长度,根据母码长度确定要生成的目标生成矩阵的维数;步骤A2,根据目标生成矩阵的维数与基础矩阵的维数获取扩展系数;步骤A3,根据扩展系数和预存的参考矩阵形成扩展标记矩阵;步骤A4,在扩展标记矩阵中的第一矩阵元素对应的位置填充基础矩阵,在扩展标记矩阵中的第二矩阵元素对应的位置填充全零矩阵,形成目标生成矩阵。能够以极小的存储代价,快速产生Polar编码生成矩阵,从而提高Polar编码器的编码速度,为加速器提供更好的时序。供更好的时序。供更好的时序。
技术研发人员:周彬 程健 徐鑫昌
受保护的技术使用者:南京新基讯通信技术有限公司
技术研发日:2023.06.02
技术公布日:2023/8/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
