# US 11,121,726 B2 · Encoding and decoding methods, apparatuses, and devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,121,726 B2
- Document ID: US11121726B2
- Status: Granted
- Kind: B2
- Application number: 16/993,266
- Filed: 2020-08-14
- Published: 2020-11-26
- Granted: 2021-09-14
- Earliest claimed: 2018-02-14
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Xinyuan Wang; Wenbin Yang; Zhongfeng Wang; Jun Lin
- Web page: https://patentgrep.com/patent/US11121726B2

## CPC

- H03M 13/2909: {Product codes}
- H04L 1/0057: {Block codes (H04L1/0061, H04L1/0064 take precedence)}
- H03M 13/152: {Bose-Chaudhuri-Hocquenghem [BCH] codes}
- H03M 13/616: {Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations}
- H04L 1/0042: {Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape (H04L1/0067 takes precedence)}
- H04L 1/0047: {Decoding adapted to other signal detection operation (in conjunction with sequence estimation or equalization H04L25/03286)}
- H04L 1/0065: {Serial concatenated codes}
- H04L 27/04: Modulator circuits; Transmitter circuits
- H04L 27/06: Demodulator circuits; Receiver circuits
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

This application provides an encoding method, comprising: encoding first data to generate a first encoded sequence; encoding second data to generate a second encoded sequence, where a quantity of bits comprised in the first data is greater than a quantity of bits comprised in the second data, and a quantity of bits comprised in the first encoded sequence is equal to a quantity of bits comprised in the second encoded sequence; generating a symbol sequence by performing a PAM-4 modulation on an input signal, the first encoded sequence corresponds to a high bit of the input signal, and the second encoded sequence corresponds to a low bit of the input signal; and sending the symbol sequence. The method helps reduce a quantity of redundant bits, helps improve a code rate, and can reduce redundant information carried in a modulated symbol sequence.

## Claims

### Claim 1

An encoding method, wherein the method is performed by an encoding device, and comprises:
encoding first data in a first encoding manner to generate a first encoded sequence;
encoding second data in a second encoding manner to generate a second encoded sequence, wherein a quantity of bits comprised in the first data is greater than a quantity of bits comprised in the second data, and a quantity of bits comprised in the first encoded sequence is equal to a quantity of bits comprised in the second encoded sequence;
performing Four-level Pulse Amplitude Modulation (PAM-4) modulation on an input signal to generate a symbol sequence, wherein the input signal comprises the first encoded sequence and the second encoded sequence, the first encoded sequence corresponds to a high bit of the input signal, and the second encoded sequence corresponds to a low bit of the input signal; and
sending the symbol sequence;
wherein the first data comprises 6448 bits, and the second data comprises 5668 bits; or
the first data comprises 5324 bits, and the second data comprises 4700 bits; or
the first data comprises 27436 bits, and the second data comprises 19600 bits.

### Claim 2 (depends on 1)

The method according to claim 1, wherein when the first data comprises 6448 bits, and the second data comprises 5668 bits, the quantity of the bits comprised in the first encoded sequence is 6500, and the quantity of the bits comprised in the second encoded sequence is 6500; or
when the first data comprises 5324 bits, and the second data comprises 4700 bits, the quantity of the bits comprised in the first encoded sequence is 5376, and the quantity of the bits comprised in the second encoded sequence is 5376; or
when the first data comprises 27436 bits, and the second data comprises 19600 bits, the quantity of the bits comprised in the first encoded sequence is 27556, and the quantity of the bits comprised in the second encoded sequence is 27556.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the first encoding manner is a Bose-Chaudhuri-Hocquenghem (BCH) encoding manner, and the second encoding manner is a product code encoding manner.

### Claim 4 (depends on 3)

The method according to claim 3, wherein
the second encoded sequence is obtained by encoding a to-be-encoded matrix in the product code encoding manner, wherein the to-be-encoded matrix is an (n+m)×(n+m) matrix, n≥2, m≥1, both m and n are integers, n2 elements in rows 1 to n and columns 1 to n in the to-be-encoded matrix are respectively n2 bits in the second data, m elements in columns n+1 to n+m of row i in the to-be-encoded matrix are m bits comprised in check values that are generated based on n elements in columns 1 to n of row i in the to-be-encoded matrix, and elements in rows n+1 to n+m of column j in the to-be-encoded matrix are m bits comprised in check values that are generated based on n elements in rows 1 to n of column j in the to-be-encoded matrix, wherein 1≤i≤n, and 1≤j≤n; and
m elements in rows n+1 to n+m of column k in the to-be-encoded matrix are m bits comprised in check values that are generated based on n elements in rows 1 to n of column p in the to-be-encoded matrix, wherein n+1≤k≤n+m, and n+1≤p≤n+m; or m elements in columns n+1 to n+m of row k in the to-be-encoded matrix are m bits comprised in check values that are generated based on n elements in columns 1 to n of row p in the to-be-encoded matrix, wherein n+1≤k≤n+m, and n+1≤p≤n+m.

### Claim 5 (depends on 4)

The method according to claim 4, wherein the m bits comprise a first check bit and a second check bit, the first check bit is a parity bit generated based on the n elements in columns 1 to n of row i in the to-be-encoded matrix or n elements in rows 1 to n of column i in the to-be-encoded matrix, and the second check bit is a parity bit generated based on elements in even-numbered columns in columns 1 to n of row i in the to-be-encoded matrix or elements in even-numbered rows in rows 1 to n of column i in the to-be-encoded matrix.

### Claim 6 (depends on 4)

The encoding device according to claim 4, wherein a value of n is 140, and a value of m is 2.

### Claim 7

An encoding device, comprising:
at least one processor; and
a computer-readable storage medium comprising instructions that, when executed by the at least one processor, configure the encoding device to:
encode first data in a first encoding manner to generate a first encoded sequence;
encode second data in a second encoding manner to generate a second encoded sequence, wherein a quantity of bits comprised in the first data is greater than a quantity of bits comprised in the second data, and a quantity of bits comprised in the first encoded sequence is equal to a quantity of bits comprised in the second encoded sequence;
perform Four-level Pulse Amplitude Modulation (PAM-4) modulation on an input signal to generate a symbol sequence, wherein the input signal comprises the first encoded sequence and the second encoded sequence, the first encoded sequence corresponds to a high bit of the input signal, and the second encoded sequence corresponds to a low bit of the input signal; and
the symbol sequence;
wherein the first data comprises 6448 bits, and the second data comprises 5668 bits; or
the first data comprises 5324 bits, and the second data comprises 4700 bits; or
the first data comprises 27436 bits, and the second data comprises 19600 bits.

### Claim 8 (depends on 7)

The encoding device according to claim 7, wherein when the first data comprises 6448 bits, and the second data comprises 5668 bits, the quantity of the bits comprised in the first encoded sequence is 6500, and the quantity of the bits comprised in the second encoded sequence is 6500; or
when the first data comprises 5324 bits, and the second data comprises 4700 bits, the quantity of the bits comprised in the first encoded sequence is 5376, and the quantity of the bits comprised in the second encoded sequence is 5376; or
when the first data comprises 27436 bits, and the second data comprises 19600 bits, the quantity of the bits comprised in the first encoded sequence is 27556, and the quantity of the bits comprised in the second encoded sequence is 27556.

### Claim 9 (depends on 7)

The encoding device according to claim 7, wherein the first encoding manner is a Bose-Chaudhuri-Hocquenghem (BCH) encoding manner, and the second encoding manner is a product code encoding manner.

### Claim 10 (depends on 9)

The encoding device according to claim 9, wherein
the second encoded sequence is obtained by encoding a to-be-encoded matrix in the product code encoding manner, wherein the to-be-encoded matrix is an (n+m)×(n+m) matrix, n≥2, m≥1, both m and n are integers, elements in columns 1 to n of each row in rows 1 to n in the to-be-encoded matrix are bits in the second data, elements in columns n+1 to n+m of row i in the to-be-encoded matrix are m bits comprised in check values that are generated based on bits in row i in the to-be-encoded matrix, elements in rows n+1 to n+m of column j in the to-be-encoded matrix are m bits comprised in check values that are generated based on bits in column j in the to-be-encoded matrix, 1≤i≤n, and 1≤j≤n; and
elements in rows n+1 to n+m of column k in the to-be-encoded matrix are m bits comprised in check values that are generated based on elements in rows 1 to n of column p in the to-be-encoded matrix, wherein n+1≤k≤n+m, and n+1≤p≤n+m; or elements in columns n+1 to n+m of row k in the to-be-encoded matrix are m bits comprised in check values that are generated based on elements in columns 1 to n of row p in the to-be-encoded matrix, wherein n+1≤k≤n+m, and n+1≤p≤n+m.

### Claim 11 (depends on 10)

The encoding device according to claim 10, wherein the m bits comprise a first check bit and a second check bit, the first check bit is a parity bit generated based on all elements in columns 1 to n of row i in the to-be-encoded matrix or all elements in rows 1 to n of column i in the to-be-encoded matrix, and the second check bit is a parity bit generated based on elements in even-numbered columns in columns 1 to n of row i in the to-be-encoded matrix or elements in even-numbered rows in rows 1 to n of column i in the to-be-encoded matrix.

### Claim 12 (depends on 10)

The encoding device according to claim 10, wherein a value of n is 140, and a value of m is 2.

### Claim 13

A decoding device, comprising:
at least one processor; and
a computer-readable storage medium comprising instructions that, when executed by the at least one processor, configure the decoding device to:
receive a first symbol sequence, wherein the first symbol sequence is generated after a second symbol sequence is transmitted to the decoding device by using a transmission medium, the second symbol sequence is obtained by performing Four-level Pulse Amplitude Modulation (PAM-4) modulation on an input signal, the input signal comprises a first encoded sequence and a second encoded sequence, the first encoded sequence corresponds to a high bit of the input signal, and the second encoded sequence corresponds to a low bit of the input signal;
demodulate the first symbol sequence to obtain a first to-be-decoded sequence;
decode the first to-be-decoded sequence in a first decoding manner to obtain first data;
demodulate the first symbol sequence to obtain a second to-be-decoded sequence, wherein a quantity of bits comprised in the first to-be-decoded sequence is equal to a quantity of bits comprised in the second to-be-decoded sequence; and
decode the second to-be-decoded sequence in a second decoding manner to obtain second data, wherein a quantity of bits comprised in the first data is greater than a quantity of bits comprised in the second data;
wherein the quantity of the bits comprised in the first to-be-decoded sequence is 6500, and the quantity of the bits comprised in the second to-be-decoded sequence is 6500; or
the quantity of the bits comprised in the first to-be-decoded sequence is 5376, and the quantity of the bits comprised in the second to-be-decoded sequence is 5376; or
the quantity of the bits comprised in the first to-be-decoded sequence is 27556, and the quantity of the bits comprised in the second to-be-decoded sequence is 27556.

### Claim 14 (depends on 13)

The decoding device according to claim 13, wherein execution of the instructions further configures the decoding device to:
demodulate the first symbol sequence based on the second data to obtain the first to-be-decoded sequence.

### Claim 15 (depends on 14)

The decoding device according to claim 14, wherein execution of the instructions further configures the decoding device to:
determine a first amplitude and a second amplitude based on a first bit in the second data, wherein the first amplitude is equal to an amplitude of a symbol that is obtained by modulating the input signal through PAM-4 when the low bit and the high bit of the input signal are respectively equal to the first bit and 1, and the second amplitude is equal to an amplitude of a symbol that is obtained by modulating the input signal through PAM-4 when the low bit and the high bit of the input signal are respectively equal to the first bit and 0;
determine a first absolute value and a second absolute value, wherein the first absolute value is equal to an absolute value of a difference between an amplitude of a first symbol and the first amplitude, the second absolute value is equal to an absolute value of a difference between the amplitude of the first symbol and the second amplitude, and the first symbol is a symbol that is in the first symbol sequence and that corresponds to the first bit;
when the first absolute value is less than the second absolute value, determine that a value of a second bit in the first data is equal to 1, wherein the second bit is a bit corresponding to the first bit; and
when the first absolute value is greater than the second absolute value, determine that a value of a second bit in the first data is equal to 0, wherein the second bit is the bit corresponding to the first bit.

### Claim 16 (depends on 13)

The decoding device according to claim 13, wherein the quantity of the bits comprised in the first to-be-decoded sequence is 6500, and the quantity of the bits comprised in the second to-be-decoded sequence is 6500; or
the quantity of the bits comprised in the first to-be-decoded sequence is 5376, and the quantity of the bits comprised in the second to-be-decoded sequence is 5376; or
the quantity of the bits comprised in the first to-be-decoded sequence is 27556, and the quantity of the bits comprised in the second to-be-decoded sequence is 27556.

### Claim 17 (depends on 16)

The decoding device according to claim 16, wherein when the quantity of the bits comprised in the first to-be-decoded sequence is 6500, and the quantity of the bits comprised in the second to-be-decoded sequence is 6500, the first data comprises 6448 bits, and the second data comprises 5668 bits; or
when the quantity of the bits comprised in the first to-be-decoded sequence is 5376, and the quantity of the bits comprised in the second to-be-decoded sequence is 5376, the first data comprises 5324 bits, and the second data comprises 4700 bits; or
when the quantity of the bits comprised in the first to-be-decoded sequence is 27556, and the quantity of the bits comprised in the second to-be-decoded sequence is 27556, the first data comprises 27436 bits, and the second data comprises 19600 bits.

### Claim 18 (depends on 13)

The decoding device according to any one of claim 13, wherein the first decoding manner is a Bose-Chaudhuri-Hocquenghem (BCH) decoding manner, and the second decoding manner is a product code decoding manner.
