System and Method for Designing and Using Multidimensional Constellations
AssigneeFuturewei Technologies, Inc.
InventorsMahmoud Taherzadehboroujeni, Hosein Nikopour, Alireza Bayesteh, Mohammadhadi Baligh
Life of this patent
Estimating the term…
Abstract
A method for generating a codebook includes applying a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation, wherein the unitary rotation is selected to optimize a distance function of the multidimensional mother constellation, and applying a set of operations to the multidimensional mother constellation to produce a set of constellation points. The method also includes storing the set of constellation points as the codebook of the plurality of codebooks.
Claims26
A method for generating a codebook of a plurality of codebooks, the method comprising:
- applying, by a designing device, a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation, wherein the unitary rotation is selected to optimize a distance function of the multidimensional mother constellation;
- applying, by the designing device, a set of operations to the multidimensional mother constellation to produce a set of constellation points;
- and
- storing, by the designing device, the set of constellation points as the codebook of the plurality of codebooks.
A method for transmitting data, the method comprising:
- determining, by a transmitting device, a plurality of codebooks, wherein each codebook is generated by applying a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation and applying a set of operations to the multidimensional mother constellation to produce the codebook, wherein the unitary rotation is selected to optimize a distance function of the multidimensional mother constellation;
- encoding, by the transmitting device, a first data associated with a first data layer by selecting a first codeword from a first codebook, where the first codebook is assigned exclusively to the first data layer;
- encoding, by the transmitting device, a second data associated with a second data layer by selecting a second codeword from a second codebook and assigning the second codebook exclusively to the second data layer;
- and
- transmitting, by the transmitting device, the first codeword and the second codeword.
A method for receiving data, the method comprising:
- determining, by a receiving device, a plurality of codebooks, wherein each codebook is generated by applying a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation and applying a set of operations to the multidimensional mother constellation to produce the codebook, wherein the unitary rotation is selected to optimize a distance function of the multidimensional mother constellation;
- receiving, by the receiving device, an output codeword including a plurality of codewords, wherein each codeword belonging to a different one of the plurality of codebooks, wherein each of the plurality of codebooks is associated with a different one of a plurality of data layers;
- identifying, by the receiving device, a first one of a plurality of codewords within the output codeword, the first codeword belonging to a first one of the plurality of codebooks assigned exclusively to a first one of the plurality of data layers;
- and
- decoding, by the receiving device, the first codeword to produce a first data.
A designing device comprising:
- a processor configured to apply a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation, wherein the unitary rotation is selected to optimize a distance function of the multidimensional mother constellation, to apply a set of operations to the multidimensional mother constellation to produce a set of constellation points, and to store the set of constellation points as a codebook of a plurality of codebooks.
A transmitting device comprising:
- a processor configured to determine a plurality of codebooks, wherein each codebook is generated by applying a unitary rotation to a baseline multidimensional constellation to produce a multidimensional mother constellation, the unitary rotation selected to optimize a distance function of the multidimensional mother constellation, and applying a set of operations to the multidimensional mother constellation to produce the codebook, to encode a first data associated with a first data layer by selecting a first codeword from a first codebook, where the first codebook is assigned exclusively to the first data layer, and to encode a second data associated with a second data layer by selecting a second codeword from a second codebook and assigning the second codebook exclusively to the second data layer;
- and
- a transmitter operatively coupled to the processor, the transmitter configured to transmit the first codeword and the second codeword.
A receiving device comprising:
- a processor configured to determine a plurality of codebooks, wherein each codebook is generated by applying a unitary rotation to a baseline multidimensional constellation while maintaining a minimum Euclidean distance of the baseline multidimensional constellation to produce a multidimensional mother constellation and applying a set of operations to the multidimensional mother constellation to produce the codebook, to identify a first one of a plurality of codewords within an output codeword, the first codeword belonging to a first one of the plurality of codebooks assigned exclusively to a first one of a plurality of data layers, and to decode the first codeword to produce a first data, wherein the output codeword includes a plurality of codewords, wherein each codeword belongs to a different one of the plurality of codebooks, and wherein each of the plurality of codebooks is associated with a different one of the plurality of data layers;
- and
- a receiver operatively coupled to the processor, the receiver configured to receive the output codeword.
Dependencies are inferred from the claim text.