CN109150383A - 一种Polar码的编码方法及装置 - Google Patents

一种Polar码的编码方法及装置 Download PDF

Info

Publication number
CN109150383A
CN109150383A CN201710502949.5A CN201710502949A CN109150383A CN 109150383 A CN109150383 A CN 109150383A CN 201710502949 A CN201710502949 A CN 201710502949A CN 109150383 A CN109150383 A CN 109150383A
Authority
CN
China
Prior art keywords
sequence
check
bit
bit sequence
interleaved
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710502949.5A
Other languages
English (en)
Other versions
CN109150383B (zh
Inventor
黄凌晨
李榕
张华滋
徐晨
戴胜辰
张公正
乔云飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710502949.5A priority Critical patent/CN109150383B/zh
Priority to PCT/CN2018/092943 priority patent/WO2019001436A1/zh
Priority to EP18823331.6A priority patent/EP3637731A4/en
Publication of CN109150383A publication Critical patent/CN109150383A/zh
Priority to US16/728,594 priority patent/US11088708B2/en
Application granted granted Critical
Publication of CN109150383B publication Critical patent/CN109150383B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1174Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized LDPC codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本申请涉及通信技术领域,公开了一种Polar码的编码方法及装置,用以提供一种新的校验编码方式。该方法为:对所述至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列,所述至少两个待校验的第一比特序列的并集为所述K个信息比特,K为正整数;对所述K个信息比特和所述至少两个校验比特序列进行交织操作,或者,将所述第一部分信息比特序列和所述第一校验比特序列进行交织操作以获得交织后的第三比特序列,所述全部信息比特序列中除所述第一部分信息比特序列之外的第二部分信息比特序列、所述第二校验比特序列、和所述第三校验比特序列组成第二比特序列;对所述第二比特序列进行极化Polar编码。

Description

一种Polar码的编码方法及装置
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种Polar码的编码方法及装置。
背景技术
循环冗余校验(cyclic redundancy check,CRC)编码是数据通信领域中最常用的一种查错校验码,CRC编码的特征是信息字段和校验字段的长度可以任意选定。在通信系统中,CRC编码用于检测数据的传输是否正确,以及控制虚警(英文:false alarm)的发生概率。
CRC编码的一种实现方式为移位寄存器形式。图1为一种常用的移位寄存器(简称寄存器)形式实现CRC编码的方式,寄存器的反馈抽头由CRC多项式[1 0 1 0 1]决定,寄存器内容初始化为预设值。编码时,K个信息比特逐比特从一侧移入寄存器,反馈抽头与寄存器对应状态进行比特异或运算,从而寄存器状态发生变化。当所有待编码比特移入寄存器后,再移入与CRC校验长度相等位数的比特0,然后读取寄存器状态,将寄存器状态作为CRC校验比特,附在K个信息比特之后,作为CRC编码码字。发送端对CRC编码编码进行信道编码,接收端进行对应的信道译码,在信道译码结束后,通过CRC校验判断译码结果是否译码成功。
但是,对于顺序译码(即串行译码)的译码方式,如果采用上述传统的CRC编码方式,在信道译码结束后才能进行CRC校验,使得译码过程复杂,占用时间较长,且浪费译码资源。
发明内容
本申请实施例提供一种Polar码的编码方法及装置,用以解决解决采用现有CRC编码方式译码过程复杂从而浪费译码资源的问题。
本申请实施例提供的具体技术方案如下:
第一方面,提供一种Polar码的编码方法,从K个信息比特中取出Ki个信息比特,i=1~n,n为正整数以获得K个信息比特的n个子集,该n个子集的并集为K个信息比特的全部信息比特,分别对n个子集进行校验编码以获得n个校验比特序列,其中,对一个子集进行校验编码,可以获得一个校验比特序列,将K个信息比特和获得的各个校验比特序列进行合并,将合并后的序列输入交织器进行交织操作,通过交织操作能够将校验比特穿插在K个信息比特之间,其中,通过交织操作校验比特的位置不一定位于被校验的信息比特之后,例如,第i个子集获得的校验比特序列中的校验比特的位置不一定位于第i个子集中的信息比特位置之后。通过上述操作,当接收端采用顺序译码时,通过分段校验,每译码出校验比特,即可进行校验,若校验不通过,可以提前结束译码,在虚警概率可控的基础上,实现了译码早停的功能,有助于避免在信道译码结束后再进行校验造成的译码资源浪费,缩短了译码所用时长,提高了译码的效率。
在一个可能的设计中,Ki可以满足如下关系:Ki=Int[K*Ri]+Ci,Int[]为取整操作,可以为四舍五入、向上取整或向下取整;Ri为比例常数,如1/16,1/8,1/4,1/2等;Ci为常数,如Ci=-2,-1,0,1,2,30,40,50,或与i相关的整数,如Ci=i,2i,4i等。
在一个可能的设计中,对至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列,所述至少两个待校验的第一比特序列的并集为K个信息比特,K为正整数;对所述K个信息比特和所述至少两个校验比特序列进行交织操作以获得第二比特序列,或者,将所述第一部分信息比特序列和所述第一校验比特序列进行交织操作以获得交织后的第三比特序列;以及,将所述全部信息比特序列中除所述第一部分信息比特序列之外的第二部分信息比特序列、所述第二校验比特序列、和所述第三校验比特序列进行排列以获得所述第二比特序列。对第二比特序列进行Polar码编码。
在一个可能的设计中,获取K个信息比特中的两个待校验的第一比特序列,分别为长度为K1的第一部分信息比特序列,和长度为K的全部信息比特序列,K1<K,且K1、K均为正整数。即全部信息比特序列中包括K个信息比特。
在一个可能的设计中,对所述第一部分信息比特序列进行校验编码以获得第一校验比特序列;以及,对所述全部信息比特序列进行校验编码以获得第二校验比特序列。
在一个可能的设计中,所述交织操作所采用的交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
在一个可能的设计中,在进行交织操作之前,计算所述交织序列S。
在一个可能的设计中,对所述K个信息比特中的部分信息比特、和所述至少两个校验比特序列中的部分校验比特序列进行交织操作,通过以下方式实现:根据所述K个信息比特中的部分信息比特的长度以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
第二方面,提供一种Polar码的编码方法,对长度为0的空集比特序列进行校验编码以获得第一校验比特序列,以及对K个信息比特进行校验编码以获得第二校验比特序列;对所述K个信息比特、所述第一校验比特序列和所述第二校验比特序列进行交织操作;对交织操作后的序列进行极化Polar编码。当接收端采用顺序译码时,通过分段校验,每译码出校验比特,即可进行校验,若校验不通过,可以提前结束译码,在虚警概率可控的基础上,实现了译码早停的功能,有助于避免在信道译码结束后再进行校验造成的译码资源浪费,缩短了译码所用时长,提高了译码的效率。
在一个可能的设计中,所述第一校验比特序列为全零向量。
在一个可能的设计中,所述交织操作所采用的交织序列S通过以下方式实现J个子序列,第i个所述子序列通过以下方式实现中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
在一个可能的设计中,在进行交织操作之前,计算所述交织序列S。
在一个可能的设计中,对所述K个信息比特、所述第一校验比特序列和所述第二校验比特序列进行交织操作,通过以下方式实现:根据所述K的值以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
第三方面,提供一种Polar码的编码方法,对K个信息比特中的第一部分信息比特序列进行校验编码,并对校验编码后的码字进行交织操作以获得第一校验编码码字,K为正整数,所述第一校验编码码字通过以下方式实现所述第一部分信息比特序列和第一校验比特序列;将由所述第一校验编码序列、所述K个信息比特中除所述第一部分信息比特序列之外的第二部分信息比特序列合并后的序列进行校验编码以获得第二校验编码码字,所述第二校验编码码字通过以下方式实现所述第一部分信息比特序列、所述第一校验比特序列、所述第二部分信息比特序列和第二校验比特序列;将所述第二校验编码码字进行极化Polar编码。当接收端采用顺序译码时,通过分段校验,每译码出校验比特,即可进行校验,若校验不通过,可以提前结束译码,在虚警概率可控的基础上,实现了译码早停的功能,有助于避免在信道译码结束后再进行校验造成的译码资源浪费,缩短了译码所用时长,提高了译码的效率
在一个可能的设计中,所述交织操作所采用的交织序列S通过以下方式实现J个子序列,第i个所述子序列通过以下方式实现中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
在一个可能的设计中,在进行交织操作之前,计算所述交织序列S。
在一个可能的设计中,对K个信息比特中的第一部分信息比特序列进行校验编码,并对校验编码后的码字进行交织操作,通过以下方式实现:对K个信息比特中的第一部分信息比特序列进行校验编码,并根据第一部分信息比特序列的长度以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
第四方面,提供一种Polar码的编码方法,基于设定校验比特长度对K个信息比特进行校验编码以获得第一校验比特序列;按照设定编码参数,从所述第一校验比特序列中选取第二校验比特序列;将由第二校验比特序列与所述K个信息比特合并后的序列进行极化Polar编码。这样,进行校验编码所需的CRC比特的数量可以灵活获取,只需要一种校验编码设置获得长度最长的Jmax的CRC比特,然后选取合适数量的CRC比特。
在一个可能的设计中,所述设定编码参数以下至少一种参数或所述至少一种参数的衍生参数:所述K个信息比特的长度、母码长度、编码长度、码率、路径宽度。
在一个可能的设计中,可以选取可靠度靠前的第二校验比特序列;或者,选择可靠度靠后的第二校验比特序列;或者,选择指定的第二校验比特序列。
在一个可能的设计中,将所述第二校验比特序列连续地置于所述K个信息比特位置之前或之后或指定位置;或者,按照设定的循环移位值,将所述第二校验比特序列连续地置于所述K个信息比特的指定位置;或者,将所述第二校验比特序列与所述K个信息比特进行交织操作。
第五方面,提供一种Polar码的编码装置,该装置具有实现上述第一方面和第一方面的任一种可能的设计中方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,当所述功能的部分或全部通过硬件实现时,所述编码装置包括:输入接口电路,用于获取长度为K的信息比特;逻辑电路,用于执行上述第一方面和第一方面的任一种可能的设计中发送端的行为;输出接口电路,用于输出Polar编码后的比特序列。
可选的,所述编码装置可以是芯片或者集成电路。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述编码装置可以实现如上述第一方面和第一方面的任一种可能的设计中所述的方法。
可选的,上述存储器可以是物理上独立的单元,也可以与处理器集成在一起。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括处理器。用于存储程序的存储器位于所述编码装置之外,处理器通过电路/电线与存储器连接,用于读取并执行所述存储器中存储的程序。
第六方面,提供一种编码装置,该装置具有实现上述第二方面和第二方面的任一种可能的设计中方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,当所述功能的部分或全部通过硬件实现时,所述编码装置包括:输入接口电路,用于获取长度为K的信息比特;逻辑电路,用于执行上述第二方面和第二方面的任一种可能的设计中发送端的行为;输出接口电路,用于输出Polar编码后的比特序列。
可选的,所述编码装置可以是芯片或者集成电路。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述编码装置可以实现如上述第二方面和第二方面的任一种可能的设计中所述的方法。
可选的,上述存储器可以是物理上独立的单元,也可以与处理器集成在一起。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括处理器。用于存储程序的存储器位于所述编码装置之外,处理器通过电路/电线与存储器连接,用于读取并执行所述存储器中存储的程序。
第七方面,提供一种编码装置,该装置具有实现上述第三方面和第三方面的任一种可能的设计中方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,当所述功能的部分或全部通过硬件实现时,所述编码装置包括:输入接口电路,用于获取长度为K的信息比特;逻辑电路,用于执行上述第三方面和第三方面的任一种可能的设计中发送端的行为;输出接口电路,用于输出Polar编码后的比特序列。
可选的,所述编码装置可以是芯片或者集成电路。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述编码装置可以实现如上述第三方面和第三方面的任一种可能的设计中所述的方法。
可选的,上述存储器可以是物理上独立的单元,也可以与处理器集成在一起。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括处理器。用于存储程序的存储器位于所述编码装置之外,处理器通过电路/电线与存储器连接,用于读取并执行所述存储器中存储的程序。
第八方面,提供一种编码装置,该装置具有实现上述第四方面和第四方面的任一种可能的设计中方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,当所述功能的部分或全部通过硬件实现时,所述编码装置包括:输入接口电路,用于获取长度为K的信息比特;逻辑电路,用于执行上述第四方面和第四方面的任一种可能的设计中发送端的行为;输出接口电路,用于输出Polar编码后的比特序列。
可选的,所述编码装置可以是芯片或者集成电路。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括:存储器,用于存储程序;处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述编码装置可以实现如上述第四方面和第四方面的任一种可能的设计中所述的方法。
可选的,上述存储器可以是物理上独立的单元,也可以与处理器集成在一起。
在一个可能的设计中,当所述功能的部分或全部通过软件实现时,所述编码装置包括处理器。用于存储程序的存储器位于所述编码装置之外,处理器通过电路/电线与存储器连接,用于读取并执行所述存储器中存储的程序。
第九方面,提供了一种通信系统,该系统包括发送端和接收端,所述发送端可以执行如上述第一方面至第四方面任一方面所述的方法。
第十方面,提供了一种计算机存储介质,存储有计算机程序,该计算机程序包括用于执行第一方面至第四方面、第一方面至第四方面的任一可能的实施方式中的方法的指令。
第十一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
附图说明
图1为现有技术中CRC编码方式示意图;
图2为本申请实施例中通信系统架构示意图;
图3为本申请实施例中编码方法流程示意图;
图4为本申请实施例中Polar码的编码方法示意图之一;
图5为本申请实施例中Polar码的编码方法示意图之二;
图6为本申请实施例中Polar码的编码方法示意图之三;
图7为本申请实施例中Polar码的编码方法示意图之四;
图8为本申请实施例中Polar码的编码方法示意图之五;
图9为本申请实施例中Polar码的编码方法示意图之六;
图10a为本申请实施例中Polar码的编码方法示意图之七;
图10b为本申请实施例中Polar码的编码方法示意图之八;
图11为本申请实施例中Polar码的编码装置结构示意图之一;
图12为本申请实施例中Polar码的编码装置结构示意图之二;
图13为本申请实施例中Polar码的编码装置结构示意图之三;
图14为本申请实施例中Polar码的编码装置结构示意图之四;
图15为本申请实施例中Polar码的编码装置结构示意图之五;
图16为本申请实施例中Polar码的编码装置结构示意图之六;
图17为本申请实施例中Polar码的编码装置结构示意图之七。
具体实施方式
下面将结合附图,对本申请实施例进行详细描述。
本申请实施例提供一种Polar码的编码方法及装置,发送端从K个信息比特中取出Ki个信息比特,i=1~n,n为正整数,获得K个信息比特的n个子集,该n个子集的并集为K个信息比特的全部信息比特,发送端分别对n个子集进行校验编码以获得n个校验比特序列,其中,对一个子集进行校验编码,可以获得一个校验比特序列,发送端将K个信息比特和获得的各个校验比特序列进行合并,将合并后的序列输入交织器进行交织操作,通过交织操作能够将校验比特穿插在K个信息比特之间,其中,通过交织操作校验比特的位置不一定位于被校验的信息比特之后,例如,第i个子集获得的校验比特序列中的校验比特的位置不一定位于第i个子集中的信息比特位置之后。通过上述操作,当接收端采用顺序译码时,通过分段校验,每译码出校验比特以及被其检验的信息比特,即可进行校验,若校验不通过,可以提前结束译码,在虚警概率可控的基础上,实现了译码早停的功能,有助于避免在信道译码结束后再进行校验造成的译码资源浪费,缩短了译码所用时长,提高了译码的效率。
为方便对本申请实施例的理解,下面对Polar码作简单介绍。
Polar码的编码策略利用无噪信道传输用户有用的信息,全噪信道传输约定的信息或者不传信息。Polar码也是一种线性块码,其编码矩阵为GN,编码过程为其中是一个二进制的行矢量,长度为N(即码长);GN是一个N×N的矩阵,且定义为log2N个矩阵F2的克罗内克(Kronecker)乘积。上述矩阵
Polar码的编码过程中,中的一部分比特用来携带信息,称为信息比特集合,这些比特的索引的集合记作另外的一部分比特设置为接收端和发送端预先约定的固定值,称之为固定比特集合或冻结比特集合(frozen bits),其索引的集合用的补集表示。Polar码的编码过程相当于:这里,GN(A)是GN中由集合中的索引对应的那些行得到的子矩阵,GN(AC)是GN中由集合中的索引对应的那些行得到的子矩阵。中的信息比特集合,数量为K;中的固定比特集合,其数量为(N-K),是已知比特。这些固定比特通常被设置为0,但是只要接收端和发送端预先约定,固定比特可以被任意设置。从而,Polar码的编码输出可简化为:这里中的信息比特集合,为长度K的行矢量,即·|表示集合中元素的个数,K为信息块大小,是矩阵GN中由集合中的索引对应的那些行得到的子矩阵,是一个K×N的矩阵。
Polar码的构造过程即集合的选取过程,决定了Polar码的性能。Polar码的构造过程通常是,根据母码码长N确定共存在N个极化信道,分别对应编码矩阵的N个行,计算极化信道可靠度,将可靠度较高的前K个极化信道的索引作为集合的元素,剩余(N-K)个极化信道对应的索引作为固定比特的索引集合的元素。集合决定了信息比特的位置,集合决定了固定比特的位置。
如图2所示,本申请实施例应用的通信系统200中包括发送端201和接收端202。发送端201也可以称为编码端,接收端202也可以称为译码端。其中,发送端201可以为基站,接收端202为终端;或者,发送端201为终端,接收端202为基站。基站是一种部署在无线接入网中用以为终端提供无线通信功能的装置。基站可以包括各种形式的宏基站,微基站,中继站,接入点等等。可以应用在不同的无线接入技术的系统中,例如长期演进(long termevolution,LTE)系统中,或者,第五代(5th generation,5G)通信系统等更多可能的通信系统中。基站还可以是其他具有基站功能的网络设备,特别地,还可以是D2D通信中担任基站功能的终端。终端可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(userequipment,UE),移动台(mobile station,MS)等。
基于图2所示的通信系统架构,本申请实施例中,发送端201对K个信息比特进行校验编码和Polar编码,其中,发送端201对K个信息比特进行分段校验编码,以及将获得的校验编码码字进行交织,校验编码码字包括K个信息比特和分段校验编码获得的校验比特序列,发送端201将编码后的Polar码发送给接收端202,接收端202进行译码和解交织。
具体地,发送端201进行检验编码的方法可以采用现有技术中的任意一种校验Polar码的编码方法,例如采用现有的CRC编码方式、哈希hash校验编码方式等。
基于图2所示的通信系统架构,下面将结合图3详细介绍一下本申请实施例提供的编码方法。本申请实施例中,以编码方法的执行主体为发送端为例进行介绍。
如图3所示,本申请实施例提供的Polar码的编码方法的具体流程如下所述。
步骤301、对至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列。
该至少两个待校验的第一比特序列的并集为全部信息比特序列。该全部信息比特序列为K个信息比特的全部信息比特组成的序列。
其中,对一个第一比特序列进行校验编码,可以获得一个对应的校验比特序列。
步骤302、对全部信息比特序列和该至少两个校验比特序列进行交织操作以获得第二比特序列,或者,将第一部分信息比特序列和第一校验比特序列进行交织操作以获得交织后的第三比特序列,全部信息比特序列中除第一部分信息比特序列之外的第二部分信息比特序列、第二校验比特序列、和第三校验比特序列组成第二比特序列。
步骤303、对第二比特序列进行极化Polar编码。
根据第二比特序列长度,选择Polar编码的信息比特集合,并将与信息比特集合对应信道设置为第二比特序列的比特值,然后根据Polar码编码矩阵计算得到码字序列。
在接收端或者译码端,获取待译码的序列,对待译码的序列进行Polar码译码。,并对译码后的序列进行解交织操作。
或者,也可以,对顺序译码方式,接收端可以在译码过程中,采用分段译码,根据译码得到的一部分校验比特对译码得到的一部分信息比特进行校验,若已有的译码结果无法通过校验,则立刻停止译码,并反馈译码失败,否则继续译码。
例如,如图4所示为本申请实施例的Polar码的编码方法示意图。
具体地,从K个信息比特中选取出n个子集,n为正整数,第i个子集中包括的信息比特长度为Ki,i=1、2、……n,获得n个比特序列,记为第一比特序列。其中,Ki可以满足如下关系:Ki=Int[K*Ri]+Ci,Int[]为取整操作,可以为四舍五入、向上取整或向下取整;Ri为比例常数,如1/16,1/8,1/4,1/2等;Ci为常数,如Ci=-2,-1,0,1,2,30,40,50,或与i相关的整数,如Ci=i,2i,4i等。在Polar码编码前,发送端将n个第一比特序列用n个校验码分别进行校验编码,对应获得n个校验比特序列。如,长度为K1的第一比特序列用校验码1进行校验编码,长度为K2的第一比特序列用校验码2进行校验编码以获得的n个校验比特序列分别用P1、P2、…、Pn表示,n个校验比特序列的长度分别为J1、J2、…、Jn,校验比特序列的长度Ji为正整数,i=1~n。校验码可以为CRC码、Hash码等校验码;通过比特收集,对全部信息比特序列和n个校验比特序列进行排列,可选的排列方式如:按照K个信息比特、P1、P2、…、Pn的顺序进行排列。对排列后的比特序列进行交织操作以获得第二比特序列。交织操作可使得部分校验比特位于信息比特之间,本申请实施例中不限制每个校验比特位于被其校验的信息比特之后,校验比特的位置可以任意放置。最后将交织后的第二比特序列送入Polar编码器进行编码。
本申请实施例涉及的交织操作可由交织序列定义。一种交织序列的计算方式为,根据部分或全部的校验码的校验矩阵的组合矩阵,按一定顺序逐列对组合矩阵进行行交换,该顺序可以是自然顺序或根据列重排序的顺序;对于某一列,行交换的目标为交换后该列中的所有的元素1位于组合矩阵的最靠上的位置;操作的列数小于等于总列数;最后根据行交换的结果获得交织序列。交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。本申请实施例中可以通过其他方式计算交织序列S,也可以通过查表的方式获得交织序列S。需要注意的是,交织序列中校验比特对应的位置没有限定,不需要在其校验的信息比特之后。
在一种可能的实现方式中,从K个信息比特中提取长度为K1的第一部分信息比特序列,可选的,选取前K1个信息比特。基于长度为K1的第一部分信息比特序列和长度为K的全部信息比特序列,获得上述步骤301中所述的两个待校验的第一比特序列。其中,K1<K,且K1、K均为正整数。
步骤302中,发送端对第一部分信息比特序列进行校验编码以获得第一校验比特序列;以及,发送端对全部信息比特序列进行校验编码以获得第二校验比特序列。
步骤303中,可以有两种交织方式,全部交织和部分交织。其中,全部交织的方式为:发送端将全部信息比特序列、第一校验比特序列和第二校验比特序列进行交织操作,获得第二比特序列;
部分交织的方式为:发送端将第一部分信息比特序列和第一校验比特序列进行交织操作,获得交织后的第三比特序列,以及,发送端将全部信息比特序列中除第一部分信息比特序列之外的第二部分信息比特序列、第二校验比特序列、和第三校验比特序列进行排列,获得第二比特序列。
例如,如图5所示,为上述全部交织的方式的编码示意图。又例如,如图6所示,为上述部分交织的方式的编码示意图。
在图5和图6中,假设校验编码以CRC编码为例,具体步骤为:
一、校验
发送端采用两个CRC码(CRC1和CRC2)分别对长度为K1的第一部分信息比特序列和长度为K的全部信息比特序列进行校验编码,获得的校验比特序列分别为P1和P2,P1和P2的长度分别为J1和J2。K1=Int[K*R]+C,其中,Int[]为取整操作,K为所有信息比特的数量,R和C的可选组合包括{R,C}={0.5,0},{0,40}等。其中,J1和J2可以满足一定关系,如J1+J2=C,J1=3,4,5,6,7,8等,C为常数,由系统虚警概率要求决定,如C=19、20等。CRC1和CRC2的生成多项式如表1所示。
二、交织
如图5所示的全部交织:将长度为K的全部信息比特、CRC1获得的校验比特序列P1、CRC2获得的校验比特序列P2全部输入交织器进行交织。
如图6所示的部分交织:对被CRC1校验的K1个信息比特和CRC1获得的校验比特P1进行排列,得到码字序列CW1。例如,一种排列方式为CW1的前K1个比特是K1个信息比特,后J1个比特是校验比特P1。对序列CW1进行交织,交织操作由如表2所示的交织序列定义,交织序列长度为(K1+J1),交织后得到CW1’。对剩余的(K-K1)个信息比特、校验比特P2和CW1’进行排列,一种排列方式对应的排列先后为CW1’、(K-K1)个信息比特、J2个校验比特P2,得到码字CW2。
三、Polar编码
将图5交织后的码字进行Polar编码。
或者,将图6获得的码字CW2进行Polar编码。
表1
在表1中,CRC多项式为反序,如CRC长度为4的CRC多项式0x19对应x^4+x+1。
表2
表2中列出了CRC长度3,4,5,6,7,8,K1=32,48,64,30,40,50,60时的交织序列。交织序列中序号小于等于K1的值,对应的为K1信息比特的反向编号,如序号1对应第K1信息比特,序号2对应第(K1-1)信息比特;对交织序列中序号大于K1的值,对应J1个校验比特,如序号(K1+1)对应第1校验比特,序号(K1+J1)对应第J1校验比特。
可选的,如图7所示,在图6所示的部分交织的Polar码的编码方法的基础上,发送端还可以在第一部分信息比特序列进行校验编码后进行交织,获得第一校验编码码字,将第一校验编码码字与K个信息比特中除第一部分信息比特之外的第二部分信息比特进行比特收集,比特收集的过程可以理解为将第一校验编码码字与第二部分信息比特按照一定排序顺序进行合并,将收集后的序列进行校验编码,获得第二校验编码码字,将第二校验编码码字进行Polar编码。具体地,发送端采用两个CRC码(CRC1和CRC2)分别对长度为K1的第一部分信息比特序列和长度为K的全部信息比特序列进行校验编码,获得的校验比特序列分别为P1和P2,P1和P2的长度分别为J1和J2。K1=Int[K*R]+C,其中,Int[]为取整操作,K为所有信息比特的数量,R和C的可选组合包括{R,C}={0.5,0},{0,40}等。其中,J1和J2可以满足一定关系,如J1+J2=C,J1=3,4,5,6,7,8等,C为常数,由系统虚警概率要求决定,如C=19、20等。CRC1和CRC2的生成多项式如表1所示。对被CRC1校验的K1个信息比特和CRC1产生的J1个校验比特进行交织,得到CW1,交织操作由交织序列定义,典型交织序列如表2所示。收集未被CRC1校验的(K-K1)个信息比特和CW1,得到CW2。对CW2进行CRC2校验,产生的校验比特与CW2进行排列得到CW3。将码字CW3送入Polar编码器进行编码。
上述一种可能的实现方式只是本申请实施例的一种举例,可以理解的是,发送端还可以从K个信息比特提取长度为K1的第一部分信息比特序列,以及提取长度为K2的第二部分信息比特序列,K=K1+K2,第一部分信息比特序列和第二部分信息比特序列互补,且并集为K个信息比特的全部信息比特序列。校验、交织和编码的方式与上述一种可能的实现方式描述方式类似,可选的,第一部分信息比特序列还可以与第二部分信息比特序列存在交集。总之,上述一种可能的实现方式所描述的Polar码的编码方法适用于任意情形下的两个待编码的第一比特序列。
在另一种可能的实现方式中,发送端对长度为0的空集比特序列进行校验编码以获得第一校验比特序列(或者为与上述描述区分,此处记为第三校验比特序列),对K个信息比特进行校验编码以获得第二校验比特序列,K为正整数。第三校验比特序列为全零向量,长度与校验码相关。发送端将全部信息比特序列、第二校验比特序列和第三校验比特序列进行交织操作,对交织操作后的序列进行Polar编码。
例如,如图8所示,为上述另一种可能的实现方式中的编码示意图。
(一)、校验
在Polar码编码前,发送端采用两个CRC码(CRC1和CRC2)分别对长度为0的空集比特序列和长度为K的全部信息比特序列进行校验编码,获得的校验比特序列分别为P1和P2,P1和P2的长度分别为J1和J2。P1为全零向量。J1和J2满足一定关系,如J1+J2=C,J2=16,17,18,19等,其中C为常数,由系统虚警概率要求决定,如C=19、20、21、22等,CRC1和CRC2的生成多项式如表1所示;
(二)、交织
对K个信息比特、CRC1获得的校验比特序列P1、CRC2获得的校验比特序列P2进行排序和交织。
对K个信息比特和校验比特序列P2进行排列,得到码字序列CW1,一种排列方式为CW1的前K个比特是K个信息比特,后J2个比特是校验比特P2;
对码字CW1进行交织,交织操作由交织序列定义,交织序列如表3所示,长度为(K+J2),交织后得到CW1’;
将CRC1获得的校验比特序列P1插入CW1’,得到码字CW2,即将P1的校验比特穿插在CW1’中,插入位置可以是CW1’之前、之后或中间,若插入到CW1’中间,一种方法是插入位置对应后续Polar编码时(K+J1+J2)个位置中可靠度最低的位置。
(三)、编码
将码字CW2输入Polar编码器进行编码。
表3
表3中列出了CRC长度19,18,17,16,K=80,100,120时的交织序列。交织序列中序号小于等于K的值,对应的为K信息比特的反向编号,如序号1对应第K信息比特,序号2对应第(K-1)信息比特;对交织序列中序号大于K的值,对应J2个校验比特,如序号(K+1)对应第1校验比特,序号(K+J2)对应第J2校验比特。
基于同一发明构思,如图9所示,本申请实施例还提供了另一种Polar码的编码方法。根据Polar码参数确定校验比特数量,并从所有校验比特中选取全集或子集,与信息比特一起组成预编码比特,对预编码比特进行Polar编码。具体过程如下所述。
步骤901、基于设定校验比特长度对K个信息比特进行校验编码以获得第一校验比特序列;
步骤902、按照设定编码参数,从第一校验比特序列中选取部分或全部校验比特,获得第二校验比特序列。
其中,设定编码参数以下至少一种参数或至少一种参数的衍生参数:K个信息比特的长度、母码长度、编码长度、码率、路径宽度。
具体地,选取可靠度靠前的部分校验比特,获得第二校验比特序列;或者,发送端选择可靠度靠后的部分校验比特,获得第二校验比特序列;或者,发送端选择指定的部分校验比特,获得第二校验比特序列。
步骤903、将第二校验比特序列与K个信息比特进行合并。
其中,将第二校验比特序列连续地置于K个信息比特位置之前或之后或指定位置;或者,按照设定的循环移位值,将第二校验比特序列连续地置于K个信息比特的指定位置;或者,发将第二校验比特序列与K个信息比特进行交织操作。
步骤904、对合并后的序列进行极化Polar编码。
下面以编码方式为CRC编码为例,对图9所示的Polar码的编码方法进一步详细说明。
在固定CRC多项式长度Jmax时,针对不同的码参数,从Jmax中选取不同的CRC比特数量J作为预编码比特参与Polar编码。
其中码参数可以包含以下至少一种:信息比特长度K,编码长度M,码率R=K/M,母码长度N,与译码侧约定的路径宽度(即List大小)L。或者,码参数为由上述参数确定的衍生参数。
如图10a所示,为图9所示的Polar码的编码方法的简要示意图。发送端对长度为K的K个信息比特比特进行CRC编码以获得长度为Jmax的第一校验比特序列,从长度为Jmax的第一校验比特序列中根据编码参数选取长度为J的第二校验比特序列,J<Jmax,将长度为J的第二校验比特序列插入信息比特中以获得长度为(K+J)的预编码比特序列,对预编码比特序列进行Polar码编码。可选的,对长度为(K+J)的预编码比特序列进行交织,对交织后的序列进行Polar码编码。
具体地,发送端校验编码过程所需校验比特数量J可以为J=Jref+J’,其中Jref为满足虚警概率要求的CRC比特数量,可选的,其中,integer为各种取整函数,比如上取整、下取整、四舍五入;scale(Jref)为Jref的函数,可为4*Jref+β。
或者,发送端校验编码过程所需CRC比特数量J根据(M-K)的大小,由分段函数确定。例如,具体确定方式如表4所示。
表4
M-K 0~256 256~512 512~1024
J<sub>ref</sub>+J’ J<sub>ref</sub>+0 J<sub>ref</sub>+1 J<sub>ref</sub>+2
可见,随着(M-K)的值越大,所需CRC比特的数量越大。
这样,发送端进行校验编码所需的CRC比特的数量可以灵活获取,只需要一种校验编码设置获得长度最长的Jmax的CRC比特,然后选取合适数量的CRC比特。
所需J个CRC比特从Jmax个CRC比特中选取,有如下选取方法:
选取Jmax个CRC比特中的J个最低位比特,或者,选取Jmax个CRC比特中的J个最高位比特,或者,选取Jmax个CRC比特中指定的J个位置的比特,J个位置由向量(i1,i2,…,ij)指定。
具体地,插入信息比特的位置有如下确定方式:
(1)连续放置
以信息比特序列中某个位置为起始位置,连续放置J个CRC比特。特殊情况为将J个CRC比特连续放置在长度为K的信息比特之前,或者,放在长度为K的信息比特之后。
(2)循环连续放置
在连续放置的基础上,再进行给定偏移的循环移位。例如,以信息比特序列中某个位置为起始位置,结合循环移位确定信息比特序列中某个位置为终止位置,放置J个CRC比特。
(3)分散放置
若对长度为(K+J)的预编码比特序列进行交织,交织操作采用交织序列,对信息比特和CRC比特一起做交织,交织后的CRC比特散布在信息比特之间。
其中,可以只将部分CRC比特和信息比特一起做交织操作。也可以按一定比例,直接将CRC比特散布在信息比特之间,信息比特不参与交织。
基于图9或图10a所示的Polar码的编码方法,一种可能的设计中,发送端根据编码参数确定校验比特的数量,并相应地选取校验多项式对K个信息比特进行校验编码以获得的校验比特和K个信息比特共同组成预编码比特,对预编码比特进行Polar编码。其中,设定编码参数以下至少一种参数或所述至少一种参数的衍生参数:所述K个信息比特的长度、母码长度、编码长度、码率、路径宽度。具体地,以校验编码为CRC编码为例,如图10b所示,发送端根据编码参数确定CRC校验比特数量,或者称为CRC校验比特序列的长度,例如CRC校验比特数量包括J1、J2、……、Jn,发送端选择CRC校验比特数量为J,发送端根据选择的CRC校验比特数量,对K个信息比特进行校验编码,获得校验比特,发送端将J个校验比特插入K个信息比特以获得长度为(K+J)的预编码比特,发送端对预编码比特进行Polar编码。可选的,发送端将长度为(K+J)的预编码比特进行交织,对交织后的序列进行Polar编码。其中,发送端校验编码过程所需校验比特数量J的确定方法、插入信息比特的位置的确定方法等与图10a所示的Polar码的编码方法中描述方法相同,重复之处不再赘述。
基于图3所示Polar码的编码方法的同一发明构思,如图11所示,本申请实施例中还提供一种Polar码的编码装置1100,Polar码的编码装置1100用于执行图3所示Polar码的编码方法,Polar码的编码装置1100包括:
校验单元1101,用于对至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列;至少两个待校验的第一比特序列的并集为K个信息比特,K为正整数;
交织单元1102,用于对K个信息比特和至少两个校验比特序列进行交织操作以获得第二比特序列,或者,将第一部分信息比特序列和第一校验比特序列进行交织操作以获得交织后的第三比特序列;以及,将全部信息比特序列中除第一部分信息比特序列之外的第二部分信息比特序列、第二校验比特序列、和第三校验比特序列进行排列以获得第二比特序列;
编码单元1103,用于对第二比特序列进行极化Polar编码。
可选的,至少两个待校验的第一比特序列包括:长度为K1的第一部分信息比特序列,和长度为K的全部信息比特序列,K1<K,且K1、K均为正整数。
可选的,校验单元1101具体用于:对第一部分信息比特序列进行校验编码以获得第一校验比特序列;以及对全部信息比特序列进行校验编码以获得第二校验比特序列。
可选的,交织单元1102采用的交织序列S进行交织操作,交织序列S包括J个子序列,第i个子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
可选的,交织单元1102在进行交织操作之前,计算交织序列S;或者,交织单元1102离线计算并存储交织序列S;根据K个信息比特中的部分信息比特的长度以及确定的校验多项式,读取存储的交织序列S,并按照读取的交织序列S进行交织操作。
基于上述图3所示Polar码的编码方法的同一发明构思,如图12所示,本申请实施例中还提供一种Polar码的编码装置1200,Polar码的编码装置1200用于执行图3所示的编译码方法中发送端执行的步骤,Polar码的编码装置1200包括:
校验单元1201,用于对长度为0的空集比特序列进行校验编码以获得第一校验比特序列,以及对K个信息比特进行校验编码以获得第二校验比特序列;
交织单元1202,用于对K个信息比特、第一校验比特序列和第二校验比特序列进行交织操作;
编码单元1203,用于对交织操作后的序列进行极化Polar编码。
可选的,第一校验比特序列为全零向量。
可选的,交织单元1202进行交织操作所采用的交织序列S包括J个子序列,第i个子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
可选的,交织单元1202在进行交织操作之前,计算交织序列S;或者,交织单元1202离线计算并存储交织序列S,根据K的值以及确定的校验多项式,读取存储的交织序列S,并按照读取的交织序列S进行交织操作。
基于上述图3所示Polar码的编码方法的同一发明构思,如图13所示,本申请实施例中还提供一种Polar码的编码装置1300,Polar码的编码装置1300用于执行图3所示的Polar码的编码方法,Polar码的编码装置1300包括:
校验单元1301,用于对K个信息比特中的第一部分信息比特序列进行校验编码;
交织单元1302,用于对校验编码后的码字进行交织操作以获得第一校验编码码字,K为正整数,第一校验编码码字包括第一部分信息比特序列和第一校验比特序列;
校验单元1301,还用于将由第一校验编码序列、K个信息比特中除第一部分信息比特序列之外的第二部分信息比特序列合并后的序列进行校验编码以获得第二校验编码码字,第二校验编码码字包括第一部分信息比特序列、第一校验比特序列、第二部分信息比特序列和第二校验比特序列;
编码单元1303,用于将第二校验编码码字进行极化Polar编码。
可选的,交织单元1302进行交织操作所采用的交织序列S包括J个子序列,第i个子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
交织单元1302在进行交织操作之前,计算交织序列S;或者,离线计算并存储交织序列S,对K个信息比特中的第一部分信息比特序列进行校验编码,并根据第一部分信息比特序列的长度以及确定的校验多项式,读取存储的交织序列S,并按照读取的交织序列S进行交织操作。
基于图9的Polar码的编码方法的同一发明构思,如图14所示,本申请实施例还提供一种Polar码的编码装置1400,包括:
校验单元1401,用于基于设定校验比特长度对K个信息比特进行校验编码以获得第一校验比特序列;
选取单元1402,用于按照设定编码参数,从第一校验比特序列中选取第二校验比特序列;
编码单元1403,用于将由第二校验比特序列与K个信息比特合并后的序列进行极化Polar编码。
可选的,设定编码参数以下至少一种参数或至少一种参数的衍生参数:K个信息比特的长度、母码长度、编码长度、码率、路径宽度。
可选的,选取单元1402具体用于:选取可靠度靠前的第二校验比特序列;或者,选择可靠度靠后的第二校验比特序列;或者,选择指定的第二校验比特序列。
可选的,还包括合并单元1404,用于将第二校验比特序列连续地置于K个信息比特位置之前或之后或指定位置;或者,按照设定的循环移位值,将第二校验比特序列连续地置于K个信息比特的指定位置;或者,将第二校验比特序列与K个信息比特进行交织操作。
基于图3或图9所示的Polar码的编码方法的同一发明构思,如图15所示,本申请实施例中还提供一种Polar码的编码装置1500,该Polar码的编码装置1500用于执行图3或图9所示的Polar码的编码方法。上述实施例的Polar码的编码方法中的部分或全部可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,Polar码的编码装置1500包括:输入接口电路1501,用于获取K个信息比特;逻辑电路802,用于执行上述图3或图9所示的Polar码的编码方法,具体请见前面方法实施例中的描述,此处不再赘述;输出接口电路1503,用于输出Polar编码后的比特序列。
可选的,Polar码的编码装置1500在具体实现时可以是芯片或者集成电路。
可选的,当上述实施例的Polar码的编码方法中的部分或全部通过软件来实现时,如图16所示,Polar码的编码装置1500包括:存储器1601,用于存储程序;处理器1602,用于执行存储器1601存储的程序,当程序被执行时,使得Polar码的编码装置1500可以实现上述实施例提供的Polar码的编码方法。
可选的,上述存储器1601可以是物理上独立的单元,也可以如图17所示,存储器1601与处理器1602集成在一起。
可选的,当上述实施例的Polar码的编码方法中的部分或全部通过软件实现时,Polar码的编码装置1500也可以只包括处理器1602。用于存储程序的存储器1601位于Polar码的编码装置1500之外,处理器1602通过电路/电线与存储器1601连接,用于读取并执行存储器1601中存储的程序。
本申请实施例提供了一种计算机存储介质,用于存储计算机程序,该计算机程序包括用于执行图3或图9所示的Polar码的编码方法。
本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行图3或图9所示的Polar码的编码方法。
本申请实施例图11~图15所示的Polar码的编码装置还可以是一种系统芯片。
处理器1602可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。
处理器1602还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(appJication-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器1603可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1603也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(soJid-state drive,SSD);存储器1603还可以包括上述种类的存储器的组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (23)

1.一种极化Polar码的编码方法,其特征在于,包括:
对至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列,所述至少两个待校验的第一比特序列的并集为K个信息比特,K为正整数;
对所述K个信息比特和所述至少两个校验比特序列进行交织操作以获得第二比特序列,或者,将所述第一部分信息比特序列和所述第一校验比特序列进行交织操作以获得交织后的第三比特序列,所述全部信息比特序列中除所述第一部分信息比特序列之外的第二部分信息比特序列、所述第二校验比特序列、和所述第三校验比特序列组成第二比特序列;
对所述第二比特序列进行极化Polar编码。
2.如权利要求1所述的方法,其特征在于,所述至少两个待校验的第一比特序列包括:
长度为K1的第一部分信息比特序列,和长度为K的全部信息比特序列,K1<K,且K1、K均为正整数。
3.如权利要求2所述的方法,其特征在于,所述对所述至少两个待校验的第一比特序列分别进行校验以获得至少两个校验比特序列,包括:
对所述第一部分信息比特序列进行校验编码以获得第一校验比特序列;以及
对所述全部信息比特序列进行校验编码以获得第二校验比特序列。
4.如权利要求1~3任一项所述的方法,其特征在于,所述交织操作所采用的交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
5.如权利要求4所述的方法,其特征在于,在进行交织操作之前,计算所述交织序列S。
6.如权利要求4或5所述的方法,其特征在于,所述对所述K个信息比特中的部分信息比特、和所述至少两个校验比特序列中的部分校验比特序列进行交织操作,包括:
根据所述K个信息比特中的部分信息比特的长度以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
7.一种极化Polar码的编码方法,其特征在于,包括:
对长度为0的空集比特序列进行校验编码以获得第一校验比特序列,以及对K个信息比特进行校验编码以获得第二校验比特序列;
对所述K个信息比特、所述第一校验比特序列和所述第二校验比特序列进行交织操作;
对交织操作后的序列进行极化Polar编码。
8.如权利要求7所述的方法,其特征在于,所述第一校验比特序列为全零向量。
9.如权利要求7或8所述的方法,其特征在于,所述交织操作所采用的交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
10.如权利要求9所述的方法,其特征在于,在进行交织操作之前,计算所述交织序列S。
11.如权利要求9或10所述的方法,其特征在于,所述对所述K个信息比特、所述第一校验比特序列和所述第二校验比特序列进行交织操作,包括:
根据所述K的值以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
12.一种极化Polar码的编码装置,其特征在于,包括:
校验单元,用于对至少两个待校验的第一比特序列分别进行校验编码以获得至少两个校验比特序列,所述至少两个待校验的第一比特序列的并集为K个信息比特,K为正整数;
交织单元,用于对所述K个信息比特和所述至少两个校验比特序列进行交织操作以获得第二比特序列,或者,将所述第一部分信息比特序列和所述第一校验比特序列进行交织操作以获得交织后的第三比特序列;以及,所述全部信息比特序列中除所述第一部分信息比特序列之外的第二部分信息比特序列、所述第二校验比特序列、和所述第三校验比特序列组成所述第二比特序列;
编码单元,用于对所述第二比特序列进行极化Polar编码。
13.如权利要求12所述的装置,其特征在于,所述至少两个待校验的第一比特序列包括:
长度为K1的第一部分信息比特序列,和长度为K的全部信息比特序列,K1<K,且K1、K均为正整数。
14.如权利要求13所述的装置,其特征在于,所述校验单元具体用于:
对所述第一部分信息比特序列进行校验编码以获得第一校验比特序列;以及
对所述全部信息比特序列进行校验编码以获得第二校验比特序列。
15.如权利要求12~14任一项所述的装置,其特征在于,所述交织单元进行交织操作所采用的交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
16.如权利要求15所述的装置,其特征在于,所述交织单元还用于:
在进行交织操作之前,计算所述交织序列S。
17.如权利要求15或16所述的装置,其特征在于,所述交织单元具体用于:根据所述K个信息比特中的部分信息比特的长度以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
18.一种极化Polar码的编码装置,其特征在于,包括:
校验单元,用于对长度为0的空集比特序列进行校验编码以获得第一校验比特序列,以及对K个信息比特进行校验编码以获得第二校验比特序列;
交织单元,用于对所述K个信息比特、所述第一校验比特序列和所述第二校验比特序列进行交织操作;
编码单元,用于对交织操作后的序列进行极化Polar编码。
19.如权利要求18所述的装置,其特征在于,所述第一校验比特序列为全零向量。
20.如权利要求18或19所述的装置,其特征在于,所述交织单元进行交织操作所采用的交织序列S包括J个子序列,第i个所述子序列包括中间结果向量Ti中元素为1的位置索引值和(K+i)的值,1≤i≤J,i为整数,Ti=(~M)&(Vi),M=M︱(Vi),M为掩码向量,Vi为校验部分矩阵P的列向量,P为校验编码的系统形式生成矩阵G的子矩阵,~表示逐比特取非运算,&表示逐比特与运算,︱表示逐比特或运算。
21.如权利要求20所述的装置,其特征在于,所述交织单元还用于:
发送端在进行交织操作之前,计算所述交织序列S。
22.如权利要求20或21所述的装置,其特征在于,所述交织单元具体用于:
根据所述K的值以及确定的校验多项式,读取存储的所述交织序列S,并按照读取的所述交织序列S进行交织操作。
23.一种极化Polar码的编码装置,其特征在于,包括处理器和存储器;其中,所述存储器中存储一组程序,所述处理器用于调用所述存储器中存储的程序,当所述程序被执行时,使得所述处理器执行如权利要求1~6或7-11中任一项所述的方法。
CN201710502949.5A 2017-06-27 2017-06-27 一种Polar码的编码方法及装置 Active CN109150383B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201710502949.5A CN109150383B (zh) 2017-06-27 2017-06-27 一种Polar码的编码方法及装置
PCT/CN2018/092943 WO2019001436A1 (zh) 2017-06-27 2018-06-26 一种Polar码的编码方法及装置
EP18823331.6A EP3637731A4 (en) 2017-06-27 2018-06-26 POLAR CODE ENCODING METHOD AND DEVICE
US16/728,594 US11088708B2 (en) 2017-06-27 2019-12-27 Polar code encoding method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710502949.5A CN109150383B (zh) 2017-06-27 2017-06-27 一种Polar码的编码方法及装置

Publications (2)

Publication Number Publication Date
CN109150383A true CN109150383A (zh) 2019-01-04
CN109150383B CN109150383B (zh) 2021-08-27

Family

ID=64741096

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710502949.5A Active CN109150383B (zh) 2017-06-27 2017-06-27 一种Polar码的编码方法及装置

Country Status (4)

Country Link
US (1) US11088708B2 (zh)
EP (1) EP3637731A4 (zh)
CN (1) CN109150383B (zh)
WO (1) WO2019001436A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020147526A1 (zh) * 2019-01-17 2020-07-23 华为技术有限公司 一种级联crc码的极化码编码方法及装置
CN113708887A (zh) * 2020-05-20 2021-11-26 中国电信股份有限公司 极化码编码及译码方法和装置、信息传输系统
CN114978416A (zh) * 2022-03-22 2022-08-30 安徽大学 一种抗间断性反射通信方法和系统
WO2023216850A1 (zh) * 2022-05-11 2023-11-16 华为技术有限公司 编码方法及装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114598424A (zh) * 2017-02-15 2022-06-07 中兴通讯股份有限公司 一种数据处理方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0588307A2 (en) * 1992-09-14 1994-03-23 Ntt Mobile Communications Network Inc. System for transmitting information bit sequences
US20050108458A1 (en) * 2003-11-14 2005-05-19 Intel Corporation Lane testing with variable mapping
CN104219019A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 编码方法及编码设备
CN105337696A (zh) * 2015-10-08 2016-02-17 东南大学 基于分段crc校验的极化解码方法
CN106230555A (zh) * 2016-07-29 2016-12-14 西安电子科技大学 极化码的分段循环冗余校验方法
WO2017054164A1 (zh) * 2015-09-30 2017-04-06 华为技术有限公司 极化码的编译码方法及其装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108809512B (zh) * 2012-10-17 2019-05-07 华为技术有限公司 一种编译码的方法、装置及系统
CN105656604B (zh) * 2016-01-21 2019-03-26 北京邮电大学 一种比特交织极化编码调制方法及装置
WO2018174672A2 (ko) * 2017-03-24 2018-09-27 엘지전자 주식회사 하향링크 신호 수신 방법 및 사용자기기, 그리고 하향링크 신호 전송 방법 및 기지국
CN110785952B (zh) * 2017-06-14 2022-10-25 Idac控股公司 用于极化编码的pdcch传输的两阶段加扰

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0588307A2 (en) * 1992-09-14 1994-03-23 Ntt Mobile Communications Network Inc. System for transmitting information bit sequences
US20050108458A1 (en) * 2003-11-14 2005-05-19 Intel Corporation Lane testing with variable mapping
CN104219019A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 编码方法及编码设备
WO2017054164A1 (zh) * 2015-09-30 2017-04-06 华为技术有限公司 极化码的编译码方法及其装置
CN105337696A (zh) * 2015-10-08 2016-02-17 东南大学 基于分段crc校验的极化解码方法
CN106230555A (zh) * 2016-07-29 2016-12-14 西安电子科技大学 极化码的分段循环冗余校验方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ERICSSON: "CRC-based Polar Code Construction", 《3GPP TSG RAN WG1 NR AD-HOC#2》 *
MAO-CHING CHIU、WEI-DE WU: "Reduced-Complexity SCL Decoding of multi-CRC-Aided Polar Codes", 《ARIXIV.ORG》 *
NOKIA: "Distributed CRC Polar code construction", 《3GPP TSG RAN WG1 NR AD-HOC#2》 *
PETER TRIFONOV等: "Polar Subcodes", 《IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS》 *
唐嘉麒: "信道极化与Polar码构造", 《重庆电力高等专科学校学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020147526A1 (zh) * 2019-01-17 2020-07-23 华为技术有限公司 一种级联crc码的极化码编码方法及装置
US11558068B2 (en) 2019-01-17 2023-01-17 Huawei Technologies Co., Ltd. Method and apparatus for encoding polar code concatenated with CRC code
CN113708887A (zh) * 2020-05-20 2021-11-26 中国电信股份有限公司 极化码编码及译码方法和装置、信息传输系统
CN114978416A (zh) * 2022-03-22 2022-08-30 安徽大学 一种抗间断性反射通信方法和系统
WO2023216850A1 (zh) * 2022-05-11 2023-11-16 华为技术有限公司 编码方法及装置

Also Published As

Publication number Publication date
US20200136650A1 (en) 2020-04-30
EP3637731A1 (en) 2020-04-15
EP3637731A4 (en) 2020-06-17
US11088708B2 (en) 2021-08-10
WO2019001436A1 (zh) 2019-01-03
CN109150383B (zh) 2021-08-27

Similar Documents

Publication Publication Date Title
CN109150383A (zh) 一种Polar码的编码方法及装置
CN108809506A (zh) 一种编码方法及装置
CN106452460B (zh) 一种极化码与重复码级联的纠错编码方法
CN108809512B (zh) 一种编译码的方法、装置及系统
CN110113132A (zh) 一种编译码方法和终端
CN107017892B (zh) 一种校验级联极化码编码方法及系统
CN108540141A (zh) Polar码编译码方法及装置
CN108667568B (zh) 一种Polar码编码方法及装置
BR112015006374B1 (pt) Método de codificação, método de decodificação, aparelho, aparelho de decodificação e receptor para gerar código polar
CN109286404A (zh) 一种Polar码编码方法及装置
CN108365914A (zh) Polar码编译码方法及装置
CN108809513B (zh) 极性码的速率匹配方法及设备
CN109257140B (zh) 一种极化信道可靠度排序的方法、极化码编码方法及装置
CN107659381A (zh) 编码方法及装置
CN109347488B (zh) 极化码编码和译码的方法、发送设备和接收设备
CN108809332A (zh) 一种Polar码传输方法及装置
CN108712232A (zh) 一种用于连续变量量子密钥分发系统中的多码字并行译码方法
CN108574494A (zh) 编译码方法及装置
CN108574560A (zh) 一种编码方法、译码方法、装置和设备
CN109391363B (zh) 一种交织方法及装置
CN106506010B (zh) 一种基于dvb-s2标准多码率兼容的ldpc编码器
CN108737020A (zh) 一种信息承载方法及装置
CN104199635B (zh) 集成crc校验电路的伪随机数发生器
CN109391365B (zh) 一种交织方法及装置
WO2019137231A1 (zh) 一种译码方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant