Abstract:
Embodiments of the invention provide a method of decoding of hexagonal constellations. The decoding methods exploit the inherent structure of the hexagonal grid to eliminate/minimize the requirements for distance computations. A constellation which has unused constellation points is received. A plurality of lookup tables is used for indicating whether a particular constellation point is used. The lookup tables are indexed using the two integers u and v. An initial estimate of u and v is found. The euclidean distance to an immediate four neighbors resulting in the immediate upper and lower integers for ū and v. The upper or lower integer that corresponds to the smalling distance is selected and all other immediate neighbors are computed. Assignment of constellation points on the hexagonal grid for a given constellation size is provided which exploits the inherent redundancy provided by the hexagonal grid. Assignment of codewords to the available constellation points to minimize the Hamming distance between adjacent codewords is also provided.
Abstract:
Embodiments of the invention provide a methods for the assignment of codewords to the available constellation points to minimize the Hamming distance between adjacent codewords. An hexagonal constellation is modeled as a two-dimensional trellis with an horizontal axis varying across a plurality of constellation points and a vertical axis varying across a plurality of codewords [0, 1, . . . , N−1]. A best path through the trellis is found to select a single constellation point per each codeword where a codeword is to be assigned. A each state in the transition across the trellis diagram, a current score and the best path that leads to the state is stored in a memory. Each codeword is assigned to the selected constellation point. The hexagonal constellation is used for transmitting data in a communication system.