一种基于极化码的参数捷变编码方法及系统与流程

文档序号:16380208发布日期:2018-12-22 09:24阅读:169来源:国知局
一种基于极化码的参数捷变编码方法及系统与流程
本发明涉及信息传输
技术领域
,特别是涉及一种基于极化码的参数捷变编码方法及系统。
背景技术
极化码(polarcodes)是一种基于信道极化现象(channelpolarization)构造的码,且是目前唯一可理论证明能够达到二元输入离散无记忆信道(binary-inputdiscretememorylesschannel,b-dmc)容量的信道编码方案。随着通信系统的迅猛发展以及互联网在国民生活中的普及,人们对通信的需求正在发生变化,从最初的语音通信逐渐向综合业务方向发展,如视频点播、互动直播等多媒体业务,同时参与者的通信需求、通信时间、通信位置均变得越来越随机。在这种随机的情况下为了实现可靠通信,发送方需要根据其与接收方之间的实际通信环境与业务需求实时改变数据传输速率。因此在设计通信系统时就需要在物理层中采用不同码率的纠错编码。一般地,k比特信息经编码器得到码长为n的码字,其码率r为k/n。在通信系统的发送端与接收端均需要有多种码率类型的基码编译码器。在编译码领域将能够快速灵活的改变编译码参数(码率/码长)的策略称为参数捷变编译码技术。改变编译码参数一般的做法是制定几种常用码率,当需要其他码率时可通过一些方法(如打孔、添加已知序列等)在常用码率的基础上进行变化得到,但是这种方法仅能够获得较窄的码率范围且译码性能也会有所损失,若要获得范围较宽的码率仍需要由低、中、高码率的基码经变化得到。码率类型越多通信系统的有效性也就越高。然而,众多的码率类型在提高通信系统有效性的同时也无疑增加了系统的复杂度,进而降低整体的可靠性。技术实现要素:本发明的目的是提供一种利用一套编译码器快速灵活的改变编码参数的基于极化码的码长不变的参数捷变编码方法及系统。为实现上述目的,本发明提供了如下方案:一种基于极化码的码长不变的参数捷变编码方法,包括:获取待生成的极化码码长n;根据所述极化码码长选取预设的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息;获取用户信息比特个数k;对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号;根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0;对所述第一集合中的元素进行重排列,得到第二集合;将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’;获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特;将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特;由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码。可选的,所述对所述第一集合中的元素进行重排列得到第二集合,具体包括:根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;将所述二进制序号倒序后,生成倒序二进制序号;将所述倒序二进制序号转换为十进制,得到倒序十进制序号;将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵;根据所述第二矩阵生成所述第二集合;所述第二集合包括n个与所述第二矩阵元素相同的元素,所述第二集合中元素的位置与所述第二矩阵中元素的位置相同。可选的,所述极化码码长n=2m,其中,m为正整数。本发明还提供一种基于极化码的码长不变的参数捷变编码系统,包括:极化码码长获取模块,用于获取待生成的极化码码长n;配置文件选取模块,用于根据所述极化码码长选取预设的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息;用户信息比特个数获取模块,用于获取用户信息比特个数k;第一序号集合生成模块,用于对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号;第一集合生成模块,用于根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0;第二集合生成模块,用于对所述第一集合中的元素进行重排列,得到第二集合;第二序号集合生成模块,用于将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’;用户信息比特序列获取模块,用于获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特;异或运算处理模块,用于将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特;极化码生成模块,用于由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码。可选的,所述第二集合生成模块,具体包括:第一矩阵生成单元,用于根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;二进制序号生成单元,用于将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;倒序二进制序号生成单元,用于将所述二进制序号倒序后,生成倒序二进制序号;倒序十进制序号生成单元,用于将所述倒序二进制序号转换为十进制,得到倒序十进制序号;第二矩阵生成单元,用于将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵;第二集合生成单元,用于根据所述第二矩阵生成所述第二集合;所述第二集合包括n个与所述第二矩阵元素相同的元素,所述第二集合中元素的位置与所述第二矩阵中元素的位置相同。本发明的另一目的是提供一种利用一套编译码器快速灵活的改变编码参数的基于基于极化码的码长可变的参数捷变编码方法及系统。为实现上述目的,本发明提供了如下方案:一种基于极化码的码长可变的参数捷变编码方法,包括:获取待生成的极化码码长l;根据所述极化码码长l选取码长为n的极化码的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特,所述固定比特取值为0;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息;获取用户信息比特个数k;对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号;根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0;对所述第一集合中的元素进行重排列,得到第二集合;将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素所述第二集合中的在序号生成系统校验比特序号集合c’;获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特;将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特;由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码;在所述系统校验比特序号集合c’中随机选取n-l个系统校验比特序号,并将所述选取的n-l个系统校验比特序号对应的系统校验比特进行打孔处理,得到码长为l的待生成的极化码。可选的,所述对所述第一集合中的元素进行重排列得到第二集合,具体包括:根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;将所述二进制序号倒序后,生成倒序二进制序号;将所述倒序二进制序号转换为十进制,得到倒序十进制序号;将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵;根据所述第二矩阵生成所述第二集合;所述第二集合包括n个与所述第二矩阵元素相同的元素,所述第二集合中元素的位置与所述第二矩阵中元素的位置相同。可选的,所述待生成的极化码码长l小于或等于n,其中,n=2m,m为正整数。本发明还提供一种基于极化码的码长可变的参数捷变编码系统,包括:极化码码长获取模块,用于获取待生成的极化码码长l;配置文件选取模块,用于根据所述极化码码长l选取码长为n的极化码的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特,所述固定比特取值为0;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息;用户信息比特个数获取模块,用于获取用户信息比特个数k;第一序号集合生成模块,用于对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号;第一集合生成模块,用于根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0;第二集合生成模块,用于对所述第一集合中的元素进行重排列,得到第二集合;第二序号集合生成模块,用于将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’;用户信息比特序列获取模块,用于获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特;异或运算处理模块,用于将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特;极化码第一生成模块,用于由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码;极化码第二生成模块,用于在所述系统校验比特序号集合c’中随机选取n-l个系统校验比特序号,并将所述选取的n-l个系统校验比特序号对应的系统校验比特进行打孔处理,得到码长为l的待生成的极化码。可选的,所述第二集合生成模块,具体包括:第一矩阵生成单元,用于根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;二进制序号生成单元,用于将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;倒序二进制序号生成单元,用于将所述二进制序号倒序后,生成倒序二进制序号;倒序十进制序号生成单元,用于将所述倒序二进制序号转换为十进制,得到倒序十进制序号;第二矩阵生成单元,用于将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵;第二集合生成单元,用于根据所述第二矩阵生成所述第二集合;所述第二集合包括n个与所述第二矩阵元素相同的元素,所述第二集合中元素的位置与所述第二矩阵中元素的位置相同。与现有技术相比,本发明的有益效果是:本发明提出了一种基于极化码的码长不变或可变的参数捷变编码方法,利用一套编译码器,在不改动硬件整体构架和程序的前提下,仅通过读取配置文件就能够实现编译码参数在线捷变,解决了传统编码方法在获得范围较宽的码率时需要多种码率类型的基码编译码器从而增加系统复杂度的难题,使得编译码器能够随通信环境的变化而快速、灵活的改变自身的编码(码长、码率)参数,在最大化利用信道资源的情况下尽可能的提高有效性与可靠性。由于在接收端必须获知编码参数才能正确译码,因此在保密通信领域使用此项技术有规律的或随机的改变编码参数可以实现抗干扰、隐蔽通信,使得第三方难以获知有用信息。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一中基于极化码的码长不变的参数捷变编码方法流程图;图2为本发明实施例一中码长为8的极化码配置文件;图3为本发明实施例一中蝶形单元结构图;图4为本发明实施例二中基于极化码的码长不变的参数捷变编码系统结构图;图5为本发明实施例三中基于极化码的码长可变的参数捷变编码方法流程图;图6为本发明实施例四中基于极化码的码长可变的参数捷变编码系统结构图;图7为本发明实施例五中编码参数近似相同情况下由码长不变的参数捷变编码方法产生的极化码与低密度奇偶校验码性能比较图;图8为本发明实施例六中由码长可变的参数捷变编码方法产生的极化码与低密度奇偶校验码性能比较图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明的目的是提供一种利用一套编译码器快速灵活的改变编码参数的基于极化码的码长不变的参数捷变编码方法及系统。为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。实施例一图1为本发明实施例中基于极化码的码长不变的参数捷变编码方法流程图,如图1所示,本发明提供的基于极化码的码长不变的参数捷变编码方法,包括:步骤101:获取待生成的极化码码长n,n=8。步骤102:根据极化码码长选取预设的配置文件。图2为码长为8的极化码配置文件,如图2所示,配置文件包括8个输入信道接口(x0,x1,…,x7)、8个输出信道接口(c0,c1,…,c7)和异或运算模块;输入信道接口与异或运算模块的输入端连接,异或运算模块的输出端与输出信道接口连接;输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特frozen,所述信息比特信道接口用于加载信息比特informatiaon;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特b,所述系统信息接口用于承载用户信息比特a;所述用户信息比特为待传输的用户信息。系统polar码的编码目的就是在已知用户信息比特a和固定比特frozen的情况下,导出信息比特information和系统校验b。编码时将固定比特frozen设置为收发端事先约定好的比特,简单起见均设置为0比特。用户信息比特a为待传输的用户信息。码长为8的极化码配置文件的异或运算模块共有3级,每级均有4个蝶形单元。一般的,一个码长为n=2m的极化码,共有m级,每级中有n/2个蝶形单元,一个异或运算模块中共有个蝶形单元。图3为蝶形单元结构图,如图3所示,符号表示异或操作,c1=u1,由u0、u1计算出c0、c1的过程称作由左至右的硬判决过程;u1=c1,由c0、c1计算出u0、u1的过程称作由右至左的硬判决过程。步骤103:获取用户信息比特个数k,获取的用户信息比特个数可变,例如选取k=4。步骤104:生成信息比特信道接口序号集合l和固定比特信道接口序号集合l’。对所述输入信道接口按照输入信道容量的大小生成k=4个信息比特信道接口序号集合l和n-k=8-4=4个固定比特信道接口序号集合l’;即选取前4个信道容量较大的信道分别为3、5、6、7号信道,由第3、5、6、7号信道得到信息比特信道接口序号集合l={3、5、6、7},则固定比特信道接口序号集合l’={0、1、2、4}。步骤105:生成第一集合。第一集合中元素个数与码长n相等,即生成第一集合m1={m0,m1,…,m7},第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0。即第一集合m1中,m3、m5、m6、m7元素为1,m0、m1、m2、m4元素为0,得到第一集合m1={0,0,0,1,0,1,1,1}。步骤106:对所述第一集合中的元素进行重排列,得到第二集合。根据所述第一集合m1生成第一矩阵c1;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;即c1=[00010111]。表1为倒序十进制序号生成表,如表1所示,将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;将所述二进制序号倒序后,生成倒序二进制序号;将所述倒序二进制序号转换为十进制,得到倒序十进制序号;表1.倒序十进制序号生成表原序号01234567二进制序号000001010011100101110111倒序二进制000100010110001101011111倒序十进制04261537其中,(0,1,2,3,4,5,6,7)×π8=(0,4,2,6,1,5,3,7)将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵;第二矩阵c2=[00010111],即c2=c1×π8。根据所述第二矩阵c2生成所述第二集合m2;即m2={0,0,0,1,0,1,1,1}。步骤107:生成用户信息比特序号集合和系统校验比特序号集合。将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,即c={3,5,6,7}。将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’,即c’={0,1,2,4}。步骤108:获取用户信息比特序列。用户信息比特序列包括k个所述用户信息比特,即获取4个用户信息比特,用户信息比特序列为(1,1,0,1),其中,(1,1,0,1)即是待传输的消息。步骤109:生成所述信息比特和所述系统校验比特。将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;即将(1,1,0,1)按照集合c={3,5,6,7}加载至输出信道接口序号对应的接口c3、c5、c6、c7中,用户信息比特c3=1、c5=1、c6=0、c7=1,c0、c1、c2、c4未知。将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中;固定比特frozen为收发端事先约定好的比特,简单起见均设置为0比特,即将(0,0,0,0)按照集合l’={0、1、2、4}加载至输入信道接口序号对应的接口x0、x1、x2、x4中,x0=0、x1=0、x2=0、x4=0,x3、x5、x6、x7未知。由所述异或运算模块生成所述信息比特和所述系统校验比特;如图2所示,先从右至左进行异或逻辑运算,得到未知量x3、x5、x6、x7中的一个或多个,再从左至右进行异或逻辑运算,得到未知量c0、c1、c2、c4中的一个或多个,重复进行从右至左进行异或逻辑运算和从左至右进行异或逻辑运算,直至求解出所有的信息比特x3=1、x5=0、x6=0、x7=1和所有的系统校验比特c0=0、c1=1、c2=0、c4=0。步骤110:生成编码后的极化码。由系统校验比特c0=0、c1=1、c2=0、c4=0,用户信息比特c3=1、c5=1、c6=0、c7=1,所述用户信息比特序号集合c={3,5,6,7}以及所述系统校验比特序号集合c’={0,1,2,4}生成编码后的极化码c0=0、c1=1、c2=0、c4=0、c3=1、c5=1、c6=0、c7=1。实施例二图4为本发明实施例中基于极化码的码长不变的参数捷变编码系统结构图,如图4所示,本发明提供的基于极化码的码长不变的参数捷变编码系统,包括:极化码码长获取模块201,用于获取待生成的极化码码长n。配置文件选取模块202,用于根据所述极化码码长选取预设的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息。用户信息比特个数获取模块203,用于获取用户信息比特个数k,获取的用户信息比特个数可变。第一序号集合生成模块204,用于对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号。第一集合生成模块205,用于根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0。第二集合生成模块206,用于对所述第一集合中的元素进行重排列,得到第二集合;具体包括:第一矩阵生成单元,用于根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;二进制序号生成单元,用于将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;倒序二进制序号生成单元,用于将所述二进制序号倒序后,生成倒序二进制序号;倒序十进制序号生成单元,用于将所述倒序二进制序号转换为十进制,得到倒序十进制序号;第二矩阵生成单元,用于将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵。第二序号集合生成模块207,用于将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’。用户信息比特序列获取模块208,用于获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特。异或运算处理模块209,用于将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特。极化码生成模块210,用于由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码。对于实施例公开的系统而言,由于其与实施例一公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。实施例三图5为本发明实施例中基于极化码的码长可变的参数捷变编码方法流程图,如图5所示,本发明提供的基于极化码的码长可变的参数捷变编码方法,具体包括:步骤301:获取待生成的极化码码长l,码长l可变,例如选取l=7;步骤302:根据极化码码长l选取码长为n的极化码的配置文件。待生成的极化码码长l≤n=2m,一般的,一个码长为n=2m的极化码,共有m级。l=7,则需生成码长为8的极化码的配置文件。步骤303:获取用户信息比特个数k,获取的用户信息比特个数可变,例如选取k=4。该步骤303的具体过程与实施例一中的步骤103的具体过程相同。步骤304:生成信息比特信道接口序号集合l和固定比特信道接口序号集合l’。该步骤304的具体过程与实施例一中的步骤104的具体过程相同。步骤305:生成第一集合。该步骤305的具体过程与实施例一中的步骤105的具体过程相同。步骤306:对所述第一集合中的元素进行重排列,得到第二集合。该步骤306的具体过程与实施例一中的步骤106的具体过程相同。步骤307:生成用户信息比特序号集合和系统校验比特序号集合。该步骤307的具体过程与实施例一中的步骤107的具体过程相同。步骤308:获取用户信息比特序列。该步骤308的具体过程与实施例一中的步骤108的具体过程相同。步骤309:生成所述信息比特和所述系统校验比特。该步骤309的具体过程与实施例一中的步骤109的具体过程相同。步骤310:生成编码后的极化码。该步骤310的具体过程与实施例一中的步骤110的具体过程相同。步骤311:选取的n-l个系统校验比特序号对应的系统校验比特进行打孔处理,得到码长为l的待生成的极化码。在所述系统校验比特序号集合c’={0,1,2,4}中随机选取n-l=8-7=1个系统校验比特序号,并将所述选取的1个系统校验比特序号对应的系统校验比特进行打孔处理,得到码长为7的待生成的极化码,例如选取系统校验比特序号为0对应的系统校验比特进行打孔处理,得到的待生成的极化码为c1=1、c2=0、c4=0、c3=1、c5=1、c6=0、c7=1。实施例四图6为本发明实施例中基于极化码的码长可变的参数捷变编码系统结构图,如图6所示,本发明提供的基于极化码的码长可变的参数捷变编码系统,包括:极化码码长获取模块401,用于获取待生成的极化码码长l,码长l可变;配置文件选取模块402,用于根据所述极化码码长l选取码长为n的极化码的配置文件;所述配置文件包括n个输入信道接口、n个输出信道接口和异或运算模块;所述输入信道接口与所述异或运算模块的输入端连接,所述异或运算模块的输出端与所述输出信道接口连接;所述输入信道接口包括固定比特信道接口和信息比特信道接口,所述固定比特信道接口用于加载固定比特,所述信息比特信道接口用于加载信息比特,所述固定比特取值为0;所述输出信道接口包括系统校验接口和系统信息接口,所述系统校验接口用于承载系统校验比特,所述系统信息接口用于承载用户信息比特;所述用户信息比特为待传输的用户信息;用户信息比特个数获取模块403,用于获取用户信息比特个数k,获取的用户信息比特个数可变;第一序号集合生成模块404,用于对所述输入信道接口按照输入信道容量的大小生成包含k个信息比特信道接口序号的集合l和包含n-k个固定比特信道接口序号的集合l’;所述集合l中信息比特信道容量大于或等于所述集合l’中固定比特信道容量;所述集合l中元素为信息比特信道接口在所述输入信道接口中的序号;所述集合l’中元素为固定比特信道接口在所述输入信道接口中的序号;第一集合生成模块405,用于根据所述信息比特信道接口序号和所述固定比特信道接口序号生成第一集合;所述第一集合元素个数为n,所述第一集合元素取值为1或0;若第一集合中元素序号与所述信息比特信道接口序号一致,元素取值为1;若第一集合中元素序号与所述固定比特信道接口序号一致,元素取值为0;第二集合生成模块406,用于对所述第一集合中的元素进行重排列,得到第二集合;具体包括:第一矩阵生成单元,用于根据所述第一集合生成第一矩阵;所述第一矩阵为1行n列矩阵,所述第一矩阵的元素与所述第一集合的元素相同,所述第一矩阵中元素的位置与该元素在所述第一集合中的位置相同;二进制序号生成单元,用于将所述第一矩阵中元素的序号转换为二进制,得到二进制序号;倒序二进制序号生成单元,用于将所述二进制序号倒序后,生成倒序二进制序号;倒序十进制序号生成单元,用于将所述倒序二进制序号转换为十进制,得到倒序十进制序号;第二矩阵生成单元,用于将所述第一矩阵中元素按照所述倒序十进制序号重排列,得到第二矩阵。第二序号集合生成模块407,用于将所述第二集合取值为1的元素在所述第二集合中的序号生成用户信息比特序号集合c,将所述第二集合取值为0的元素在所述第二集合中的序号生成系统校验比特序号集合c’;用户信息比特序列获取模块408,用于获取用户信息比特序列;所述用户信息比特序列包括k个所述用户信息比特;异或运算处理模块409,用于将所述用户信息比特按照所述用户信息比特序号集合c加载至与所述输出信道接口序号对应的接口中;将所述固定比特按照所述固定比特信道接口集合l’加载至与所述输入信道接口序号对应的接口中,由所述异或运算模块生成所述信息比特和所述系统校验比特;极化码第一生成模块410,用于由所述系统校验比特、所述用户信息比特、所述用户信息比特序号集合c以及所述系统校验比特序号集合c’生成编码后的极化码;极化码第二生成模块411,用于在所述系统校验比特序号集合c’中随机选取n-l个系统校验比特序号,并将所述选取的n-l个系统校验比特序号对应的系统校验比特进行打孔处理,得到码长为l的待生成的极化码。实施例五图7为编码参数近似相同情况下由码长不变的参数捷变编码方法产生的极化码(polar码)与低密度奇偶校验码(ldpc码)性能比较图;polar译码算法采用循环冗余辅助的继承消除列表(crcaidedscl,ca-scl)译码算法,幸存码字个数为16;ldpc码译码算法采用和积译码算法,迭代次数为50次。如图7所示,使用基码长度为512的极化码进行参数捷变,分别实现码率为0.75的(384+12crc,512)和码率为0.50的(256+12crc,512)polar码。其中(k+rcrc,n)表示用户信息比特有k位,而后添加r位循环冗余校验crc(cyclicredundancycheck),一共k+r比特作为待传输比特进行系统极化编码得到码字长度为n的码字。在计算误码率时仅对k个用户信息比特进行统计,因为只有用户信息是需要告知对方的消息。使用码率0.749的大数逻辑可译ldpc码(721,961),用户信息比特为721,码长为961比特,以及ieee802.16e标准所采用的码率0.50的(264,528)ldpc码,用户信息比特为264,码长为528比特。从图7中可以看出,当编码参数近似相同时由码长不变的参数捷变编码方法产生的极化码的性能明显好于ldpc码。例如在误比特率ber=10-5时,码率为0.75和0.50的polar码分别优于ldpc码0.3db、0.6db。实施例六图8为由码长可变的参数捷变编码方法产生的极化码与低密度奇偶校验码性能比较图;polar译码算法采用循环冗余辅助的继承消除列表(crcaidedscl,ca-scl)译码算法,幸存码字个数为16;ldpc码译码算法采用和积译码算法,迭代次数为50次。如图8所示,使用基码长度为512的极化码进行参数捷变,实现码率为0.33的(150+12crc,450)参数捷变polar码。其中(k+rcrc,n)表示用户信息比特有k位,而后添加r位循环冗余校验crc(cyclicredundancycheck),一共k+r比特作为待传输比特进行系统极化编码得到码字长度为n的码字。在计算误码率时仅对k个用户信息比特进行统计,因为只有用户信息是需要告知对方的消息。使用ieee802.16e标准所采用的码率0.33的(150,450)ldpc码,用户信息比特为150,码长为450比特。从图8中可以看到,当编码参数近似相同时由码长可变的参数捷变编码方法产生的极化码的性能同样要好于ldpc码。例如在误比特率ber=10-5时,构造的polar码优于ldpc码1.3db。这里需要指出的是,实施例五和实施例六总共三个不同参数的ldpc码对应三个不同的校验矩阵,若一个通信系统要使用不同码率的码字,则需要由硬件分别编写三个ldpc的编译码程序。然而对于polar码来说,三个不同参数的码字均由一个基码通过参数捷变得到,收/发两端分别使用一套编/译码器即可完成三个不同参数码字的编译码,大大降低了系统的复杂度,这为polar码在实际的应用带来了便捷。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1