# US 10,771,122 B1 · Methods and apparatus for discovering codeword decoding order in a serial interference cancellation (SIC) receiver using reinforcement learning

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

- Number: US 10,771,122 B1
- Document ID: US10771122B1
- Status: Granted
- Kind: B1
- Application number: 16/681,622
- Filed: 2019-11-12
- Granted: 2020-09-08
- Earliest claimed: 2019-05-04
- Assignees: Marvell World Trade Ltd.
- Applicants: Marvell World Trade Ltd.
- Inventors: Kalpendu Ratanshi Pasad
- Web page: https://patentgrep.com/patent/US10771122B1

## CPC

- H04B 7/0413: MIMO systems
- G06N 3/006: based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
- G06N 3/092: Reinforcement learning
- G06N 20/00: Machine learning
- H03M 13/09: Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
- H04B 1/12: Neutralising, balancing, or compensation arrangements
- H04L 25/03019: {adaptive, i.e. capable of adjustment during data reception}
- G06N 3/08: Learning methods
- H04L 2025/03426: {transmission using multiple-input and multiple-output channels}
- H04B: TRANSMISSION
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- 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

Methods and apparatus for discovering codeword decoding order in a serial interference cancellation receiver using reinforcement learning. In an embodiment, a method is provided for decoding codewords in a multiple-input-multiple-output (MIMO) communication network. The method includes determining a decoding order based on a state space and a decoding policy, decoding selected codewords based on the decoding order, updating the decoding policy based on the decoding results and the state space, updating the state space based on decoding results, and updating the decoding order based on the state space and the decoding policy.

## Claims

### Claim 1

A method for decoding codewords in a multiple-input-multiple-output (MIMO) communication network, the method comprising:
determining a decoding order based on a state space and a decoding policy;
decoding selected codewords based on the decoding order;
updating the decoding policy based on decoding results and the state space;
updating the state space based on the decoding results; and
updating the decoding order based on the state space and the decoding policy.

### Claim 2 (depends on 1)

The method of claim 1, further comprising repeating the operations of claim 1 until a decoding completion criteria is met.

### Claim 3 (depends on 1)

The method of claim 1, wherein the operation of decoding comprises activating one or more decoders based on the decoding order to decode one or more codewords.

### Claim 4 (depends on 1)

The method of claim 1, wherein the operation of updating the decoding policy further comprises:
calculating a reward based on the decoding results and internal metrics; and
updating the decoding policy based on the reward.

### Claim 5 (depends on 4)

The method of claim 4, wherein the operation of calculating the reward comprises:
assigning the reward a positive value for successfully decoded codewords; and
assigning the reward a negative value for unsuccessfully decoded codewords.

### Claim 6 (depends on 5)

The method of claim 5, further comprising checking a decoded codeword cyclic redundancy check (CRC) value to determine decoding success.

### Claim 7 (depends on 5)

The method of claim 5, wherein the operation of calculating the reward comprises determining the reward from a combination one or more of a number of successfully decoded codewords or code blocks within a codeword, a number of codewords or code blocks within a codeword that are not successfully decoded, and internal decoding metrics including extrinsic information related to the codewords.

### Claim 8 (depends on 1)

The method of claim 1, further comprising receiving the codewords over a plurality of channels at a plurality of antennas.

### Claim 9 (depends on 8)

The method of claim 8, further comprising equalizing the plurality of channels based on the decoding results.

### Claim 10 (depends on 1)

The method of claim 1, wherein the operation of updating the state space comprises updating the state space based on one or more of successfully decoded codewords, unsuccessfully decoded codewords, post-processing signal-to-interference-plus-noise ratio (“SINR”), coding rate, channel estimate, and antenna signal-to-noise ratio (SNR).

### Claim 11 (depends on 1)

The method of claim 1, further comprising updating the decoding policy based on policy objectives.

### Claim 12 (depends on 1)

The method of claim 1, wherein the operation of updating comprises utilizing a neural network to update the decoding policy based on a reward.

### Claim 13

An apparatus for decoding codewords in a multiple-input-multiple-output (MIMO) communication network, the apparatus comprising:
a decoding order determination circuit that determines a decoding order to decode codewords based on a state space and a decoding policy;
a reward determination circuit that receives decoded codewords and determines a reward based on decoding results;
a policy update circuit that updates the decoding policy based on the decoding results and the state space;
a state interface that updates the state space based on the decoding results; and
wherein the decoding order determination circuit generates an updated decoding order based on the state space and the decoding policy.

### Claim 14 (depends on 13)

The apparatus of claim 13, further comprising one or more decoders that are activated by the decoding order to decode one or more codewords.

### Claim 15 (depends on 13)

The apparatus of claim 13, wherein the policy update circuit updates the decoding policy by calculating a reward based on the decoding results and internal metrics, and updating the decoding policy based on the reward.

### Claim 16 (depends on 15)

The apparatus of claim 15, wherein the policy update circuit calculates the reward by assigning the reward a positive value for successfully decoded codewords, and assigning the reward a negative value for unsuccessfully decoded codewords.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the policy update circuit calculates the reward by determining the reward from a combination one or more of a number of successfully decoded codewords or code blocks within a codeword, a number of codewords or code blocks within a codeword that are not successfully decoded, and internal decoding metrics including extrinsic information related to the codewords.

### Claim 18 (depends on 13)

The apparatus of claim 13, further comprising an equalizer interface that equalizes a plurality of channels that convey the codewords based on the decoding results.

### Claim 19 (depends on 13)

The apparatus of claim 13, wherein the state interface updates the state space based on one or more of successfully decoded codewords, unsuccessfully decoded codewords, post-processing signal-to-interference-plus-noise ratio (“SINR”), coding rate, channel estimate, and antenna signal-to-noise ratio (SNR).

### Claim 20

An apparatus for decoding information in a multiple-input-multiple-output (MIMO) communication network, the apparatus comprising:
means for determining a decoding order based on a state space and a decoding policy;
means for decoding selected codewords based on the decoding order;
means for updating the decoding policy based on the decoding results and the state space;
means for updating the state space based on decoding results; and
means for updating the decoding order based on the state space and the decoding policy.
