# US 12,015,486 B2 · Data retransmission decoding method, apparatus and system, and communication device

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

- Number: US 12,015,486 B2
- Document ID: US12015486B2
- Status: Granted
- Kind: B2
- Application number: 17/418,773
- Filed: 2019-09-27
- Published: 2022-03-03
- Granted: 2024-06-18
- Earliest claimed: 2018-12-27
- Assignees: Zte Corporation
- Applicants: Zte Corporation
- Inventors: Yang Li; Lilin Wang; Xueqiang Wu; Degang Zhang; Jianan Wang
- Web page: https://patentgrep.com/patent/US12015486B2

## CPC

- H04L 1/1607: Details of the supervisory signal
- H04L 1/1819: {with retransmission of additional or different redundancy}
- H04L 1/0045: {Arrangements at the receiver end}
- H04L 1/005: {Iterative decoding, including iteration between signal detection and decoding operation}
- H04L 1/0057: {Block codes (H04L1/0061, H04L1/0064 take precedence)}
- H04L 1/0061: {Error detection codes}
- H04L 1/0075: {Transmission of coding parameters to receiver (H04L1/0023 takes precedence)}
- H03M 13/6306: {Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy (H03M13/3761, H03M13/3769 and H03M13/635 take precedence)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- 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)

## Abstract

Disclosed are a data retransmission decoding method, apparatus and system, and a communication device. The method includes: obtaining retransmitted data to be decoded, the retransmitted data to be decoded including a code block to be decoded (S102); according to stored check state information of a previously decoded code block, judging whether the code block to be decoded includes a target code block required to be decoded again (S104); and if the code block to be decoded includes the target code block required to be decoded again, merging and decoding a currently stored first code block and the target code block based on a predetermined decoding parameter (S106), wherein the first code block is a code block corresponding to the target code block.

## Claims

### Claim 1

A data retransmission decoding method, wherein the method is applied to a decoding unit, and the method comprises:
obtaining retransmitted data to be decoded, the retransmitted data to be decoded comprising a code block to be decoded;
judging whether the code block to be decoded comprises a target code block required to be decoded again according to stored check state information of a previously decoded code block; and
merging and decoding a currently stored first code block and the target code block based on a predetermined decoding parameter when the code block to be decoded comprises the target code block required to be decoded again, wherein the first code block is a code block corresponding to the target code block.

### Claim 2 (depends on 1)

The method according to claim 1, wherein after merging and decoding the currently stored first code block and the target code block, the method further comprises:
combining a result of the merging and decoding with a stored first decoding result to obtain a retransmission decoding result, wherein the first decoding result is a decoding result of a code block decoded correctly in a previous decoding process;
the method further comprises:
updating the check state information of the code block according to the retransmission decoding result.

### Claim 3 (depends on 1)

The method according to claim 1, further comprising:
sending the check state information of the code block to a data sending unit, for the data sending unit to determine the predetermined decoding parameter according to the check state information of the code block; and
receiving the predetermined decoding parameter sent by the data sending unit.

### Claim 4 (depends on 3)

The method according to claim 3, wherein the predetermined decoding parameter comprises the number of iterations, and receiving the predetermined decoding parameter sent by the data sending unit comprises:
receiving the number of iterations determined by the data sending unit based on the check state information of the code block, a predetermined total delay, a decoding delay of a single code block and the number of hard cores;
wherein the number of iterations is:
ite
=
s_cyle
*
⁢
core_num
err_cb
⁢
_num
*
⁢
dec_cycle
wherein, ite is the number of iterations, s_cycle is the predetermined total delay, core_num is the number of hard cores, err_cb_num is the number of error code blocks in the check state information of the code block, and dec_cycle is the decoding delay of the single code block.

### Claim 5 (depends on 4)

The method according to claim 4, wherein the predetermined decoding parameter further comprises a redundancy version number, and merging and decoding the currently stored first code block and the target code block based on the predetermined decoding parameter comprises:
determining redundant data corresponding to the target code block in the first code block based on the redundancy version number; and
merging and decoding the redundant data and the target code block.

### Claim 6 (depends on 1)

The method according to claim 1, wherein before obtaining the retransmitted data to be decoded, the method further comprises:
obtaining new transmission decoding data, decoding and checking a code block to be decoded contained in the new transmission decoding data to obtain a new transmission decoding result and the check state information of the code block; and
storing the new transmission decoding result and the check state information of the code block.

### Claim 7 (depends on 6)

The method according to claim 6, wherein check modes for checking the code block comprise at least one of: a cyclic redundancy check (CRC) mode, a Hartenberg matrix check mode, and a combination of the CRC mode and the Hartenberg matrix check mode.

### Claim 8

A data retransmission decoding method, wherein the method is applied to a data sending unit, and the method comprises:
receiving check state information of a code block based on new transmission decoding data sent by a decoding unit;
determining a decoding parameter according to the check state information of the code block; and
sending the decoding parameter to the decoding unit, for the decoding unit to decode and check retransmitted data to be decoded according to the decoding parameter.

### Claim 9 (depends on 8)

The method according to claim 8, further comprising:
receiving updated code block check information sent by the decoding unit, wherein the updated code block check information is obtained after the decoding unit decodes the retransmitted data to be decoded and updates the code block check information through an obtained decoding result; and
updating the decoding parameter according to the updated code block check information.

### Claim 10 (depends on 8)

The method according to claim 8, wherein the decoding parameter comprises a redundancy version number and the number of iterations, and the determining the decoding parameter according to the check state information of the code block comprises:
determining the redundancy version number based on the check state information of the code block;
determining a predetermined total delay, a decoding delay of a single code block and the number of hard cores based on the check state information of the code block; and
determining the number of iterations according to the predetermined total delay, the decoding delay of the single code block and the number of hard cores, wherein the number of iterations is:
ite
=
s_cyle
*
⁢
core_num
err_cb
⁢
_num
*
⁢
dec_cycle
wherein, ite is the number of iterations, s_cycle is the predetermined total delay, core_num is the number of hard cores, err_cb_num is the number of error code blocks in the check state information of the code block, and dec_cycle is the decoding delay of the single code block.

### Claim 11

A communication device, comprising a processor, a memory and a computer program stored on the memory and capable of running on the processor to implement a data retransmission decoding method applied to a decoding unit, and the method comprises:
obtaining retransmitted data to be decoded, the retransmitted data to be decoded comprising a code block to be decoded;
judging whether the code block to be decoded comprises a target code block required to be decoded again according to stored check state information of a code block decoded last time; and
merging and decoding a currently stored first code block and the target code block based on a predetermined decoding parameter when the code block to be decoded comprises the target code block required to be decoded again, wherein the first code block is a code block corresponding to the target code block.

### Claim 12 (depends on 11)

A communication device according to claim 11, wherein after merging and decoding the currently stored first code block and the target code block, the method further comprises:
combining a result of the merging and decoding with a stored first decoding result to obtain a retransmission decoding result, wherein the first decoding result is a decoding result of a code block decoded correctly in a last decoding process;
the method further comprises:
updating the check state information of the code block according to the retransmission decoding result.

### Claim 13 (depends on 11)

The communication device according to claim 11, further comprising:
sending the check state information of the code block to a data sending unit, for the data sending unit to determine the predetermined decoding parameter according to the check state information of the code block; and
receiving the predetermined decoding parameter sent by the data sending unit.

### Claim 14 (depends on 13)

The communication device according to claim 13, wherein the predetermined decoding parameter comprises the number of iterations, and receiving the predetermined decoding parameter sent by the data sending unit comprises:
receiving the number of iterations determined by the data sending unit based on the check state information of the code block, a predetermined total delay, a decoding delay of a single code block and the number of hard cores;
wherein the number of iterations is:
ite
=
s_cyle
*
⁢
core_num
err_cb
⁢
_num
*
⁢
dec_cycle
wherein, ite is the number of iterations, s_cycle is the predetermined total delay, core_num is the number of hard cores, err_cb_num is the number of error code blocks in the check state information of the code block, and dec_cycle is the decoding delay of the single code block.

### Claim 15 (depends on 14)

The communication device according to claim 14, wherein the predetermined decoding parameter further comprises a redundancy version number, and merging and decoding the currently stored first code block and the target code block based on the predetermined decoding parameter comprises:
determining redundant data corresponding to the target code block in the first code block based on the redundancy version number; and
merging and decoding the redundant data and the target code block.

### Claim 16 (depends on 11)

The communication device according to claim 11, wherein before obtaining the retransmitted data to be decoded, the method further comprises:
obtaining new transmission decoding data, decoding and checking a code block to be decoded contained in the new transmission decoding data to obtain a new transmission decoding result and the check state information of the code block; and
storing the new transmission decoding result and the check state information of the code block.

### Claim 17 (depends on 16)

The communication device according to claim 16, wherein check modes for checking the code block comprise: a cyclic redundancy check (CRC) mode, a Hartenberg matrix check mode, and a combination of the CRC mode and the Hartenberg matrix check mode.

### Claim 18 (depends on 11)

The communication device according to claim 11, wherein the method is further applied to a data sending unit and comprises:
receiving check state information of a code block based on new transmission decoding data sent by a decoding unit;
determining a decoding parameter according to the check state information of the code block; and
sending the decoding parameter to the decoding unit, for the decoding unit to decode and check retransmitted data to be decoded according to the decoding parameter.

### Claim 19 (depends on 18)

The communication device according to claim 18, further comprising:
receiving updated code block check information sent by the decoding unit, wherein the updated code block check information is obtained after the decoding unit decodes the retransmitted data to be decoded and updates the code block check information through an obtained decoding result; and
updating the decoding parameter according to the updated code block check information.

### Claim 20 (depends on 19)

The communication device according to claim 19, wherein the decoding parameter comprises a redundancy version number and the number of iterations, and the determining the decoding parameter according to the check state information of the code block comprises:
determining the redundancy version number based on the check state information of the code block;
determining a predetermined total delay, a decoding delay of a single code block and the number of hard cores based on the check state information of the code block; and
determining the number of iterations according to the predetermined total delay, the decoding delay of the single code block and the number of hard cores, wherein the number of iterations is:
ite
=
s_cyle
*
⁢
core_num
err_cb
⁢
_num
*
⁢
dec_cycle
wherein, ite is the number of iterations, s_cycle is the predetermined total delay, core_num is the number of hard cores, err_cb_num is the number of error code blocks in the check state information of the code block, and dec_cycle is the decoding delay of the single code block.
