Claims
- 1. Method of building systematically a multi-dimensional (n, D, L) circular trellis coded modulation (CTCM) encoder with properties of optimal energy efficiency, strong tail biting and maximum minimum distance (dmin) of trellis paths, where n is the size of the symbol alphabet, D is the depth of the trellis, and L is the length of the information symbol sequence, said method comprising the steps of:
a) identifying simplex-transition sets of originating and next states for each stage i of the circular trellis; b) determining butterfly structures associated with the identified simplex-transition sets wherein the originating and next states of said simplex-transition sets are arranged in an internal order within said butterfly structures; c) aligning said butterfly structures into a multi-dimensional state transition matrix (STM) in a predetermined order; d) constructing a simplex of channel symbols from a multi-dimensional signal constellation space for each of said identified simplex-transition sets; e) aligning each simplex into a multi-dimensional initial input simplex (IIS) matrix in an order in relation to said predetermined order of butterfly structures in said STM; and f) assigning channel symbols to state transitions of a trellis path by mapping between said simplex-transitions of the STM and said simplexes of said IIS matrix.
- 2. The method of claim 1 wherein step (a) includes the steps of:
analyzing error events of the circular trellis; and identifying sets of state transitions that should be assigned simplex to maximize coding gain, said sets of state transitions being the identified simplex-transition sets.
- 3. The method of claim 2 wherein step (c) includes the steps of:
identifying a set of butterfly structures associated with a simplex-transition set of a middle stage of the circular trellis; and aligning the butterfly structures of said set along a particular dimension of the STM so that the state transitions of the corresponding simplex-transition set are located in the same internal location of said butterfly structures.
- 4. The method of claim 1 wherein step (b) includes the steps of:
grouping the butterfly structures into a predetermined number of simplex-transitioni-butterfly-sets constituting simplex-transtioni for each stage i; and arranging the internal order of the originating and next states in the butterfly structures in the simplex-transition1-butterfly sets based on the simplex-transtioni's associated therewith.
- 5. The method of claim 4 wherein the step of arranging the internal order of states includes the steps of:
selecting any one of the butterflies in any one of the simplex-transitioni-butterfly sets; arranging the originating states and next states into internal locations of the selected butterfly; fixing the internal locations of the originating states and next states of all of the other butterflies in the selected simplex-transitioni-butterfly set based on the simplex-transitioni's associated with the originating and next states thereof and the internal locations in which the originating states and next states are arranged in the selected butterfly; repeating the above steps for each simplex-transitioni-butterfly set of the predetermined number; and repeating the above steps for each stage i.
- 6. The method of claim 4 wherein the step (c) includes the steps of:
selecting any one of the butterflies of the grouping; placing the selected butterfly into a location in STM; determining the simplex-transitionj-butterfly set containing the selected butterfly, j representing a stage; placing the other butterflies of said determined setj in an order along a first dimension of STM aligned with the selected butterfly; determining the simplex-transitionk-butterfly set containing the selected butterfly, k representing another stage, k≠j; placing the other butterflies of said determined setk in an order along a second dimension of STM aligned with the selected butterfly; and filling in the remaining locations of STM with other butterflies by dimensional cross checking based on the association thereof with the simplex-transitioni-butterfly sets.
- 7. The method of claim 1 wherein the step (d) includes the steps of:
constructing source type simplexes from channel symbols of the multi-dimensional space for the simplex-transitions of the first stage; constructing type B simplexes for the simplex-transition sets of the last stage associated with a common butterfly structure from channel symbols of the source type simplexes by arranging the internal order of the channel symbols thereof in relation to the internal order of the originating and next states of each simplex-transition set of the corresponding common butterfly structure; and constructing type B simplexes for the simplex-transition sets of the middle stages associated with butterfly structures of simplex-transition-butterfly-sets from channel symbols of the source type simplexes by arranging the internal order of the channel symbols thereof in relation to the internal order of the originating and next states of each simplex-transition set of the butterfly structures of the corresponding simplex-transition-butterfly-set
- 8. The method of claim 7 wherein the type B simplexes are constructed using copy and fill rules of the member signals thereof.
- 9. The method of claim 1 wherein step (e) includes aligning simplexes along a particular dimension of the IIS matrix so that member signals in the same internal location of each said simplex when taken together form another simplex.
- 10. The method of claim 1 including the step of constructing a look-up table from the mapping of step (f).
- 11. A communication system for use in a power limited channel application, said system comprising:
a circular trellis coded modulation (CTCM) encoder for converting a sequence of digital information bits of a predetermined length into a corresponding sequence of channel symbols based on a circular trellis path associated with the sequence of digital information bits and a set of simplexes identified for said path from a multi-dimensional signal constellation, said CTCM encoder including means for determining an initial starting state of the trellis path which renders the path circular without the addition of redundant bits to the sequence of digital information bits; a transmitter coupled to said CTCM encoder for transmitting said sequence of channel symbols over said channel; a receiver for receiving a transmission from said transmitter including said sequence of channel symbols and any noise induced therein; a CTCM decoder coupled to said receiver for decoding the received transmission without knowledge of the starting state of the circular trellis path of the CTCM encoder to recover the sequence of information bits.
- 12. The system of claim 11 wherein the CTCM encoder includes:
first means for storing a representation of a multi-dimensional matrix of simplexes of channel symbols, said simplexes being arranged in said matrix in an ordered relationship to identified state transitions of the trellis path; and means for converting the sequence of digital information bits into the corresponding sequence of channel symbols of the trellis path by operating on the sequence of digital information bits in accordance with said stored matrix representation.
- 13. The system of claim 12 wherein the first storing means stores the matrix representation in the form of a look-up table.
- 14. The system of claim 12 wherein the converting means includes:
means of converting the sequence of digital information bits into a corresponding sequence of information symbols based on the information symbol alphabet; and second means for storing a representation of a state transition table of a circular trellis with permuted state structure through which a next state of the trellis path may be accessed by an information symbol of the sequence of information symbols and a starting state of the trellis path associated therewith, said initial starting state being the starting state for a first stage of the trellis path and the next state becoming the starting state for stages of the trellis path subsequent the first stage.
- 15. The system of claim 14 wherein the second storing means stores the matrix representation in the form of a look-up table.
- 16. The system of claim 14 wherein the first storing means being accessed by the starting Hi state and next state of a transition along the trellis path to output a simplex channel symbol from the set of simplexes correspondingly associated with said transition.
- 17. The system of claim 16 wherein the first and second storing means operated sequentially to output the sequence of simplex channel symbols based on the sequence of transitions along the trellis path.
- 18. The system of claim 11 wherein the determining means of the CTCM encoder includes means for calculating an initial starting state based on the sequence of digital information bits.
- 19. The system of claim 18 wherein the determining means of the CTCM encoder includes means for calculating an initial starting state by operating on the sequence of digital information bits with Zech's logarithm.
- 20. The system of claim 11 wherein the CTCM decoder includes an iterative circular shift BCJR algorithm for decoding the received sequence of symbols.
- 21. The system of claim 11 wherein the CTCM decoder includes means for decoding the received sequence of symbols based on a statistical estimate of the starting state of the CTCM encoder.
- 22. The system of claim 21 wherein the CTCM decoder includes means for determining the reliability of the statistical estimation for each received channel symbol; and means for selecting one of the received channel symbols as being representative of the starting state based on the determined reliabilities of the received channel symbols.
- 23. The system of claim 22 wherein the selecting means includes a means for selecting one of the received channel symbols as being representative of the starting state based on the largest determined reliability of the reliabilities of the received channel symbols.
- 24. The system of claim 21 wherein the CTCM includes means for generating a circular shift version of the received sequence of channel symbols based on the estimate of the starting state; and means for decoding the circular shift version of the received sequence of channel symbols to obtain an information sequence.
- 25. A circular trellis coded modulation (CTCM) encoder for converting a sequence of digital information bits of a predetermined length into a corresponding sequence of channel symbols based on a circular trellis path associated with the sequence of digital information bits and a set of simplexes identified for said path from a multi-dimensional signal constellation, said CTCM encoder comprising:
means for determining an initial starting state of the trellis path which renders the path circular without the addition of redundant bits to the sequence of digital information bits; first means for storing a representation of a multi-dimensional matrix of simplexes of channel symbols, said simplexes being arranged in said matrix in an ordered relationship to identified state transitions of the trellis path; and means for converting the sequence of digital information bits into the corresponding sequence of channel symbols of the trellis path by operating on the sequence of digital information bits in accordance with said stored matrix representation.
- 26. The encoder of claim 25 wherein the first storing means stores the matrix representation in the form of a look-up table.
- 27. The encoder of claim 25 wherein the converting means includes:
means of converting the sequence of digital information bits into a corresponding sequence of information symbols based on the information symbol alphabet; and second means for storing a representation of a state transition table of a circular trellis with permuted state structure through which a next state of the trellis path may be accessed by an information symbol of the sequence of information symbols and a starting state of the trellis path associated therewith, said initial starting state being the starting state for a first stage of the trellis path and the next state becoming the starting state for stages of the trellis path subsequent the first stage.
- 28. The encoder of claim 27 wherein the second storing means stores the state transition table representation in the form of a look-up table.
- 29. The encoder of claim 27 wherein the first storing means being accessed by the starting state and next state of a transition along the trellis path to output a simplex channel symbol from the set of simplexes correspondingly associated with said transition.
- 30. The encoder of claim 29 wherein the first and second storing means operated sequentially to output the sequence of simplex channel symbols based on the sequence of transitions along the trellis path.
- 31. The encoder of claim 25 wherein the determining means of the CTCM encoder includes means for calculating an initial starting state based on the sequence of digital information bits.
- 32. The encoder of claim 31 wherein the determining means of the CTCM encoder includes means for calculating an initial starting state by operating on the sequence of digital information bits with Zech's logarithm.
- 33. A method of circular trellis coded modulation (CTCM) encoding comprising the step of:
converting a sequence of digital information bits of a predetermined length into a corresponding sequence of channel symbols based on a circular trellis path associated with the sequence of digital information bits and a set of simplexes identified for said path from a multi-dimensional signal constellation.
- 34. The method of claim 33 wherein the step of converting includes the steps of:
determining an initial starting state of the trellis path which renders the path circular without the addition of redundant bits to the sequence of digital information bits; storing a representation of a multi-dimensional matrix of simplexes of channel symbols arranged in an ordered relationship to identified state transitions of the trellis path; and converting the sequence of digital information bits into the corresponding sequence of channel symbols of the trellis path by operating on the sequence of digital information bits in accordance with said stored matrix representation.
- 35. The method of claim 34 wherein the matrix representation is stored in the form of a look-up table.
- 36. The method of claim 34 wherein the step of converting includes the steps of:
converting the sequence of digital information bits into a corresponding sequence of information symbols based on the information symbol alphabet; and storing a representation of a state transition table of a circular trellis with permuted state structure through which a next state of the trellis path may be accessed by an information symbol of the sequence of information symbols and a starting state of the trellis path associated therewith, said initial starting state being the starting state for a first stage of the trellis path and the next state becoming the starting state for stages of the trellis path subsequent the first stage.
- 37. The method of claim 36 wherein the state transition table representation is stored in the form of a look-up table.
- 38. The method of claim 36 including the step of accessing the stored matrix representation by the starting state and next state of a transition along the trellis path to output a simplex channel symbol from the set of simplexes correspondingly associated with said transition.
- 39. The method of claim 38 including the step of sequentially accessing the stored state transition table representation and the stored matrix representation to output the sequence of simplex channel symbols based on the sequence of transitions along the trellis path.
- 40. The method of claim 34 wherein the step of determining includes calculating an initial starting state based on the sequence of digital information bits.
- 41. The method of claim 40 wherein the step of determining includes calculating an initial starting state by operating on the sequence of digital information bits with Zech's logarithm.
- 42. Method of decoding a received sequence of channel symbols, denoted as Y1L=Y1, Y2, . . . , YL, where L is the sequence length, from a channel to obtain a sequence of symbols X1L=X1, X2, . . . , XL, belonging to the signal constellation of an encoder, said method comprising the steps of:
hard decoding Yt for each t of the sequence using the probability expression P(Yt/Xt)=max P(Yt/X), for all X, i.e. X1, X2, . . . , XL, where P(Yt/X) is a function of the Euclidean distance between Yt and X and a noise spectrum density of the channel; selecting Yt having the largest P(Yt/Xt) as Yi; circular shifting the sequence Y1L using Yi as the starting symbol; and decoding the circular shifted sequence by an iterative circular BCJR algorithm to obtain a corresponding information symbol sequence.
- 43. The method of claim 42 including the step of setting the initial values of α and β of the circular BCJR algorithm in accordance with the following expressions:
- 44. The method of claim 42 including the step of selectively normalizing the sets of αt and βt, for t=1 to L, where L is the channel block length.
- 45 The method of claim 44 wherein the step of selectively normalizing includes the step of stopping the normalizing step based on the test Δ is less than or equal to a predetermined limit, where
Δ=max(abs(αrL−α(r−1)L), r being an iterative index starting at 1.
GOVERNMENT RIGHTS CLAUSE
[0001] The U.S. Government may have certain rights in the present invention as a result of work performed under and/or for the following Air Force contracts: F30602-96-C-0176 and F30602-99-C-0064.