Method and apparatus for error-correction encoding using a polar code
AssigneeHuawei Technologies Co., Ltd.
InventorsYiqun Ge, Hamid Saber
Life of this patent
Estimating the term…
Abstract
An improved method of computer communication and networking with error-correction encoding and transmission using a punctured polar code construction that is based on polar code decomposition is provided. Advantageously, this allows sorting of a reliability sequence to be performed for a reduced-length vector to identify the information bit positions in the reduced-length polar code vector. Polar code decomposition is used to determine a number of information bits allocated to given reduced-length vector (e.g., K0 and K1). The polar code construction is a function of a puncturing pattern. In some embodiments, the puncturing pattern is a shortening pattern.
Claims18
A method comprising:
- for use in transmitting on a channel with a channel capacity C, constructing a polar code defined by K, M, N, P, C, where K is an input information vector bit length, N is a mother polar code length, M is an output codeword bit length after puncturing using a puncturing pattern P, and C is a channel capacity, the method comprising:
- performing at least one iteration of polar code decomposition, performing the first iteration comprising performing code decomposition based on K, M, N, P, C defining the polar code, and performing subsequent iterations comprising two code decompositions based on
- (
- K
- =
- K
- 0
- ,
- M
- =
- M
- 0
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 0
- ,
- C
- =
- C
- 0
- )
- ,
-
- (
- K
- =
- K
- 1
- ,
- M
- =
- M
- 1
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 1
- ,
- C
- =
- C
- 1
- )
- of the previous iteration;
- wherein performing polar code decomposition comprises:
- determining respective puncturing patterns P0, P1 for two partial polar codes of length N/2 based on the puncturing pattern P;
- determining respective punctured codeword lengths M0, M1 for the two partial polar codes based on the puncturing patterns;
- and
- determining respective capacities C0, C1 for the two partial polar codes based on the respective determined punctured codeword lengths and the channel capacity C;
- determining respective input information vector bit lengths K0 and K1 for the two partial polar codes of length N/2 based on the puncturing pattern P, at least one of the determined punctured codeword lengths M0, M1 and at least one of the determined capacities C0,C1;
- and
- the method further comprising determining information bit positions for the polar code based on at least one reliability sequence and on the information bit lengths determined in a last of the at least one iteration of polar code decomposition;
- polar code encoding a set of information bits to generate a codeword using a polar code encoder configured with the information bit positions of the polar code;
- and
- transmitting at a transmitter, at least the codeword over the channel.
A method of communication using a polar code defined by K, N, P, M, C, where M is an output codeword bit length after puncturing using the puncturing pattern P, C is a channel capacity, K is an input information vector bit length, and N is a mother polar code length, the method comprising:
- polar code encoding a set of information bits to generate a codeword using a polar code encoder configured with the information bit positions of the polar code;
- the polar code being defined based on at least one iteration of polar code decomposition based on K, M, N, P, C, subsequent iterations comprising two code decompositions based on
- (
- K
- =
- K
- 0
- ,
- M
- =
- M
- 0
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 0
- ,
- C
- =
- C
- 0
- )
- ,
-
- (
- K
- =
- K
- 1
- ,
- M
- =
- M
- 1
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 1
- ,
- C
- =
- C
- 1
- )
- of the previous iteration;
- wherein polar code decomposition comprises:
- determining respective puncturing patterns P0, P1 for two partial polar codes of length N/2 based on the puncturing pattern P;
- determining respective punctured codeword lengths M0, M1 for the two partial polar codes based on the puncturing patterns;
- and
- determining respective capacities C0, C1 for the two partial polar codes based on the respective determined punctured codeword lengths and the channel capacity C;
- determining respective input information vector bit lengths K0 and K1 for the two partial polar codes of length N/2 based on the puncturing pattern P, at least one of the determined punctured codeword lengths M0, M1 and at least one of the determined capacities C0,C1;
- and
- information bit positions for the polar code being defined based on at least one reliability sequence and on the information bit lengths determined in a last of the at least one iteration of the polar code decomposition;
- and
- transmitting at a transmitter the codeword over the channel.
An apparatus comprising:
- a polar code constructor configured to construct, for use in transmitting on a channel with a channel capacity C, a polar code defined by K, M, N, P, C, where K is an input information vector bit length, N is a mother polar code length, M is an output codeword bit length after puncturing using a puncturing pattern P, and C is a channel capacity, by:
- performing at least one iteration of polar code decomposition, performing the first iteration comprising performing code decomposition based on K, M, N, P, C defining the polar code, and performing subsequent iterations comprising two code decompositions based on
- (
- K
- =
- K
- 0
- ,
- M
- =
- M
- 0
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 0
- ,
- C
- =
- C
- 0
- )
- ,
-
- (
- K
- =
- K
- 1
- ,
- M
- =
- M
- 1
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 1
- ,
- C
- =
- C
- 1
- )
- of the previous iteration,
- wherein performing polar code decomposition comprises:
- determining respective puncturing patterns P0, P1 for two partial polar codes of length N/2 based on the puncturing pattern P;
- determining respective punctured codeword lengths M0, M1 for the two partial polar codes based on the puncturing patterns;
- determining respective capacities C0, C1 for the two partial polar codes based on the respective determined punctured codeword lengths and the channel capacity C;
- and
- determining respective input information vector bit lengths K0 and K1 for the two partial polar codes of length N/2 based on the puncturing pattern P, at least one of the determined punctured codeword lengths M0, M1 and at least one of the determined capacities C0,C1;
- and
- determining information bit positions for the polar code based on at least one reliability sequence and on the information bit lengths determined in a last of the at least one iteration of polar code decomposition;
- a polar code encoder configured with the information bit positions determined in the last of the at least one iteration of polar code decomposition to perform polar code encoding of a set of information bits to generate a codeword using the constructed polar code;
- a transmitter, coupled to the polar code encoder, configured to transmit at least the codeword over the channel using the constructed polar code.
An apparatus comprising:
- a polar code encoder configured to perform polar code encoding of a set of information bits to generate a codeword using a polar code;
- the polar code being defined based on at least one iteration of polar code decomposition based on K, N, P, M, C, where M is an output codeword bit length after puncturing using the puncturing pattern P, C is a channel capacity K is an input information vector bit length, and N is a mother polar code length,
- wherein polar code decomposition comprises at least one iteration of polar code decomposition;
- a first iteration comprising code decomposition based on K, M, N, P, C defining the polar code, and
- subsequent iterations comprising two code decompositions based on
- (
- K
- =
- K
- 0
- ,
- M
- =
- M
- 0
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 0
- ,
- C
- =
- C
- 0
- )
- ,
-
- (
- K
- =
- K
- 1
- ,
- M
- =
- M
- 1
- ,
- N
- =
- N
- 2
- ,
- P
- =
- P
- 1
- ,
- C
- =
- C
- 1
- )
- of the previous iteration;
- respective puncturing patterns P0, P1 for two partial polar codes of length N/2 being determined based on the puncturing pattern P;
- respective punctured codeword lengths M0, M1 for the two partial polar codes being determined based on the puncturing patterns;
- respective capacities C0, C1 for the two partial polar codes being determined based on the respective determined punctured codeword lengths and the channel capacity C;
- and
- respective input information vector bit lengths K0 and K1 for the two partial polar codes of length N/2 being determined based on the puncturing pattern P, at least one of the determined punctured codeword lengths M0, M1 and at least one of the determined capacities C0,C1;
- and
- information bit positions for the polar code being defined based on at least one reliability sequence and on the information bit lengths determined in a last of the at least one iteration of polar code decomposition;
- and
- a transmitter, coupled to the polar code encoder, configured to transmit at least the codeword over the channel.
Dependencies are inferred from the claim text.