# US 12,184,364 B2 · Communication system and methods using very large multiple-in multiple-out (MIMO) antenna systems with extremely large class of fast unitary transformations

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

- Number: US 12,184,364 B2
- Document ID: US12184364B2
- Status: Granted
- Kind: B2
- Application number: 18/495,671
- Filed: 2023-10-26
- Published: 2024-02-29
- Granted: 2024-12-31
- Earliest claimed: 2019-09-24
- Assignees: Rampart Communications, Inc.
- Applicants: Rampart Communications, Inc.
- Inventors: Matthew Brandon Robinson
- Web page: https://patentgrep.com/patent/US12184364B2

## CPC

- H04B 7/0456: Selection of precoding matrices or codebooks, e.g. using matrices antenna weighting
- H04B 7/0473: {taking constraints in layer or codeword to antenna mapping into account}
- H04B 7/0491: using two or more sectors, i.e. sector diversity
- H04L 25/0246: {with factorisation}
- H04L 25/0248: {Eigen-space methods}
- H04B: TRANSMISSION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

An apparatus includes a first communication device with multiple antennas, operably coupled to a processor and configured to access a codebook of transformation matrices. The processor generates a set of symbols based on an incoming data, and applies a permutation to each of the symbols to produce a set of permuted symbols. The processor transforms each of the permuted symbols based on at least one primitive transformation matrix, to produce a set of transformed symbols. The processor applies, to each of the transformed symbols, a precode matrix selected from the codebook of transformation matrices to produce a set of precoded symbols. The codebook of transformation matrices is accessible to a second communication device. The processor sends a signal to cause transmission, to the second communication device, of multiple signals, each representing a precoded symbol from the set of precoded symbols, each of the signals transmitted using a unique antenna from the plurality of antennas.

## Claims

### Claim 1

An apparatus, comprising:
a first communication device including a plurality of antennas, and configured to access a codebook of transformation matrices; and
a processor operatively coupled to the first communication device, the processor configured to:
generate a plurality of symbols based on an incoming data;
apply a permutation to each symbol from the plurality of symbols, to produce a plurality of permuted symbols;
transform each permuted symbol from the plurality of permuted symbols based on at least one primitive transformation matrix, to produce a plurality of transformed symbols;
apply, to each transformed symbol from the plurality of transformed symbols, a precode matrix selected from the codebook of transformation matrices, the codebook of transformation matrices accessible to a second communication device, to produce a plurality of precoded symbols; and
send a signal to cause transmission, to the second communication device, of a plurality of signals, each signal from the plurality of signals representing a precoded symbol from the plurality of precoded symbols, each signal from the plurality of signals transmitted using a unique antenna from the plurality of antennas.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the processor is further configured to:
generate the codebook of transformation matrices by decomposing a unitary transformation matrix into a plurality of layers, each layer from the plurality of layers including a permutation and a primitive transformation matrix.

### Claim 3 (depends on 1)

The apparatus of claim 1, wherein the precode matrix from the codebook of transformation matrices is selected pseudo-randomly.

### Claim 4 (depends on 1)

The apparatus of claim 1, wherein the plurality of antennas is a first plurality of antennas separate from a second plurality of antennas of the second communication device, the first communication device configured to perform Multiple Input Multiple Output (MIMO) operations.

### Claim 5 (depends on 1)

The apparatus of claim 1, wherein:
the plurality of antennas is a first plurality of antennas, and
the second communication device includes a second plurality of antennas, the first communication device and the second communication device configured to perform MIMO operations,
the first plurality of antennas including T antennas and the second plurality of antennas including R antennas, the MIMO operations having an associated computational cost of O(T log2 T) arithmetic operations for the first communication device, and the MIMO operations having an associated cost of O(R log2 R) arithmetic operations for the second communication device.

### Claim 6 (depends on 1)

The apparatus of claim 1, wherein the codebook of transformation matrices does not include a frequency-domain transformation or a time-domain transformation.

### Claim 7 (depends on 1)

The apparatus of claim 1, wherein the codebook of transformation matrices is configured for use in at least one of: time division multiplexing, frequency division multiplexing, code division multiplexing, or spatial multiplexing.

### Claim 8 (depends on 1)

The apparatus of claim 1, wherein the processor is configured to transmit the plurality of signals via a communication channel that applies a channel transformation to the plurality of signals such that the precode matrix is removed.

### Claim 9 (depends on 1)

The apparatus of claim 1, wherein the signal to cause transmission of the plurality of signals does not cause transmission of any of the precode matrices.

### Claim 10 (depends on 1)

The apparatus of claim 1, wherein the signal to cause transmission of the plurality of signals does not cause transmission of the codebook of transformation matrices.

### Claim 11

A method, comprising:
generating, via a processor associated with a first communication device, a plurality of symbols based on an incoming data;
applying, via the processor, a permutation to each symbol from the plurality of symbols, to produce a plurality of permuted symbols;
transforming, via the processor, each permuted symbol from the plurality of permuted symbols based on at least one primitive transformation matrix, to produce a plurality of transformed symbols;
applying, to each transformed symbol from the plurality of transformed symbols and via the processor, a precode matrix selected from a codebook of transformation matrices, the codebook of transformation matrices accessible to the first communication device and to a second communication device different from the first communication device, to produce a plurality of precoded symbols; and
sending, via the processor and to the second communication device, a signal representing a plurality of signals, each signal from the plurality of signals representing a precoded symbol from the plurality of precoded symbols, each signal from the plurality of signals transmitted using a unique antenna from a plurality of antennas of the first communication device.

### Claim 12 (depends on 11)

The method of claim 11, wherein the signal to cause transmission of the plurality of signals at least one of:
does not cause transmission of any of the precode matrices; or
does not cause transmission of the codebook of transformation matrices.

### Claim 13 (depends on 11)

The method of claim 11, wherein the codebook of transformation matrices does not include a frequency-domain transformation or a time-domain transformation.

### Claim 14 (depends on 11)

The method of claim 11, wherein the codebook of transformation matrices is configured for use in at least one of: time division multiplexing, frequency division multiplexing, code division multiplexing, or spatial multiplexing.

### Claim 15 (depends on 11)

The method of claim 11, wherein the precode matrix from the codebook of transformation matrices is selected pseudo-randomly.

### Claim 16

A non-transitory, processor-readable medium storing instructions that, when executed by a processor that is associated with a first communication device, cause the processor to:
generate a plurality of symbols based on an incoming data;
apply a permutation to each symbol from the plurality of symbols, to produce a plurality of permuted symbols;
transform each permuted symbol from the plurality of permuted symbols based on at least one primitive transformation matrix, to produce a plurality of transformed symbols;
apply, to each transformed symbol from the plurality of transformed symbols, a precode matrix selected from a codebook of transformation matrices, the codebook of transformation matrices accessible to the first communication device and to a second communication device different from the first communication device, to produce a plurality of precoded symbols; and
send a signal to cause transmission, to the second communication device, of a plurality of signals, each signal from the plurality of signals representing a precoded symbol from the plurality of precoded symbols, each signal from the plurality of signals transmitted using a unique antenna from a plurality of antennas of the first communication device.

### Claim 17 (depends on 16)

The non-transitory, processor-readable medium of claim 16, further storing instructions to cause the processor to:
generate the codebook of transformation matrices by decomposing a unitary transformation matrix into a plurality of layers, each layer from the plurality of layers including a permutation and a primitive transformation matrix.

### Claim 18 (depends on 16)

The non-transitory, processor-readable medium of claim 16, wherein the signal to cause transmission of the plurality of signals at least one of:
does not cause transmission of any of the precode matrices; or
does not cause transmission of the codebook of transformation matrices.

### Claim 19 (depends on 16)

The non-transitory, processor-readable medium of claim 16, wherein the codebook of transformation matrices at least one of:
does not include a frequency-domain transformation or a time-domain transformation, or
is configured for use in at least one of: time division multiplexing, frequency division multiplexing, code division multiplexing, or spatial multiplexing.

### Claim 20 (depends on 16)

The non-transitory, processor-readable medium of claim 16, wherein the precode matrix from the codebook of transformation matrices is selected pseudo-randomly.
