Turbo code interleaver with near optimal performance
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
H03M-013/27
H03M-013/29
출원번호
UP-0980916
(2007-10-31)
등록번호
US-7761750
(2010-08-09)
발명자
/ 주소
Eroz, Mustafa
Hammons, Jr., A. Roger
Sun, Feng-Wen
출원인 / 주소
The DIRECTV Group, Inc.
인용정보
피인용 횟수 :
8인용 특허 :
31
초록▼
A method of interleaving blocks of indexed data of varying length is disclosed. The method includes the steps of: providing a set of basic Interleavers comprising a family of one or more permutations of the indexed data and having a variable length; selecting one of the basic Interleavers based upon
A method of interleaving blocks of indexed data of varying length is disclosed. The method includes the steps of: providing a set of basic Interleavers comprising a family of one or more permutations of the indexed data and having a variable length; selecting one of the basic Interleavers based upon a desired Interleaver length L; and adapting the selected basic Interleaver to produce an Interleaver having the desired Interleaver length L.
대표청구항▼
What is claimed is: 1. A method for constructing an interleaver for interleaving blocks of indexed data having indices, the blocks having a varying length, the method comprising: determining at least one value based on a desired interleaver size; and utilizing the determined at least one value to c
What is claimed is: 1. A method for constructing an interleaver for interleaving blocks of indexed data having indices, the blocks having a varying length, the method comprising: determining at least one value based on a desired interleaver size; and utilizing the determined at least one value to construct an interleaver comprising one or more permutations of the indexed data, wherein constructing the interleaver comprises: determining a first index according to the at least one value; comparing the first index to a desired range of the interleaver size, and constructing the interleaver using the first index if the first index is within the desired range and constructing the interleaver using a second index selected according to the at least one value if the first index is outside the desired range. 2. The method of claim 1, wherein the desired interleaver size is selected among a plurality of interleaver sizes. 3. The method of claim 1, wherein the at least one value is associated with determining an interleaving pattern of the desired interleaver. 4. A method for constructing an interleaver for interleaving blocks of indexed data having indices, the method comprising: determining at least one value based on a desired interleaver size; utilizing the determined at least one value to construct an interleaver comprising one or more permutations of the indexed data; providing a turbo encoder comprising at least two connected constituent encoders; and interleaving the blocks of indexed data with the turbo encoder. 5. A method of interleaving blocks of indexed data having indices, the blocks having a varying length, the method including the steps of: providing a set of basic interleavers comprising a family of one or more permutations of the indexed data X(t) and having a variable length; selecting one of the basic interleavers based upon a desired interleaver length L; and adapting the selected basic interleaver to produce an interleaver having the desired interleaver length L, wherein the step of adapting the selected basic interleaver includes deleting indexed data having indices higher than the desired interleaver length L. 6. The method of claim 5, wherein the step of selecting includes: identifying a group of the basic interleavers having a length greater than or equal to the desired interleaver length L; and selecting one of the basic interleavers having a selected length which is smallest among the identified group of basic interleavers. 7. The method of claim 6, wherein the family of basic interleavers consists of “two-dimensional permutations” and further comprising the steps of: computing the “two-dimensional permutations”, including the steps of: writing the indexed data into an interleaver matrix having one or more rows R in each of two dimensions; permuting the indexed data in the one or more rows in at least one of the two dimensions, to produce constituent permutations, said constituent permutations possibly being different from one row to another row in each of the two dimensions; and reading out the indexed data from the interleaver matrix. 8. The method of claim 7, further including the steps of: providing an interleaver device for the interleaving blocks of indexed data, the interleaver device further comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 9. The method of claim 8, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations. 10. The method of claim 9, further including the step of: providing a turbo code encoder comprising two or more constituent code encoders connected together and to the interleaver device; and turbo encoding the indexed data after the interleaving by the interleaver device of the turbo code encoder. 11. A system for interleaving and turbo encoding blocks of indexed data, having indices, the blocks having a varying length, the system comprising: a parallel concatenation of two or more constituent encoders for recursive convolutional codes; and an interleaver device coupled to the parallel concatenation of the two or more constituent encoders, wherein the interleaver device defines a set of basic interleavers comprising a family of one or more permutations of the indexed data X(t) and having a variable length, and wherein the interleaver device is configured to: select one of the basic interleavers based upon a desired interleaver length L; and adapt the selected basic interleaver to produce an interleaver having the desired interleaver length L by deleting indexed data having indices higher than the desired interleaver length L. 12. A method of interleaving blocks of indexed data having indices, the blocks having a varying length, the method including the steps of: providing a set of basic interleavers comprising a family of one or more permutations of the indexed data X(t) and having a variable length; selecting one of the basic interleavers based upon a desired interleaver length L; and adapting the selected basic interleaver to produce an interleaver having the desired interleaver length L, wherein the step of adapting the selected basic interleaver includes deleting indexed data having indices higher than the desired interleaver length L, wherein the family of basic interleavers consists of “two-dimensional permutations” and the method further comprises the steps of: computing the “two-dimensional permutations”, including the steps of: writing the indexed data into an interleaver matrix having one or more rows R in each of two dimensions; permuting the indexed data in the one or more rows in at least one of the two dimensions, to produce constituent permutations, said constituent permutations possibly being different from one row to another row in each of the two dimensions; and reading out the indexed data from the interleaver matrix. 13. The method of claim 12, wherein the step of selecting includes: identifying a group of the basic interleavers having a length greater than or equal to the desired interleaver length L; and selecting one of the basic interleavers having a selected length which is smallest among the identified group of basic interleavers. 14. The method of claim 13, further including the steps of: providing an interleaver device for the interleaving blocks of indexed data, the interleaver device further comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 15. The method of claim 14, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations. 16. The method of claim 15, further including the step of: providing a turbo code encoder comprising two or more constituent code encoders connected together and to the interleaver device; and turbo encoding the indexed data after the interleaving by the interleaver device of the turbo code encoder. 17. A system for interleaving and turbo encoding blocks of indexed data, having indices, the blocks having a varying length, the system comprising: a parallel concatenation of two or more constituent encoders for recursive convolutional codes; and an interleaver device coupled to the parallel concatenation of the two or more constituent encoders, wherein the interleaver device defines a set of basic interleavers comprising a family of one or more permutations of the indexed data X(t) and having a variable length, and wherein the interleaver device is configured to: select one of the basic interleavers based upon a desired interleaver length L; and adapt the selected basic interleaver to produce an interleaver having the desired interleaver length L by deleting indexed data having indices higher than the desired interleaver length L, wherein the family of basic interleavers consists of “two-dimensional permutations”, and wherein the interleaver device is further configured to: compute the “two-dimensional permutations”, including: writing the indexed data into an interleaver matrix having one or more rows R in each of two dimensions; permuting the indexed data in the one or more rows in at least one of the two dimensions, to produce constituent permutations, said constituent permutations possibly being different from one row to another row in each of the two dimensions; and reading out the indexed data from the interleaver matrix. 18. A method of interleaving blocks of indexed data having indices, the blocks having a varying length, the method including the steps of: providing a set of basic interleavers comprising one or more permutations of the indexed data, each having a variable length; selecting one of the basic interleavers based upon a desired interleaver length L, wherein the selected interleaver has the shortest length which is greater than or equal to the desired interleaver length; and adapting the selected basic interleaver to produce a new interleaver having the desired interleaver length L, wherein the selected basic interleaver defines mappings, each of which is of a position of indexed data to a new mapped position, and wherein a mapping of the selected basic interleaver is retained if the position of indexed data in the selected basic interleaver is less than L and the mapping is rejected if the position of indexed data in the selected basic interleaver is not less than L. 19. The method of claim 18, wherein the position of indexed data starts from 0. 20. The method of claim 18, wherein the set of basic interleavers comprises two-dimensional permutations and further comprising computing the two-dimensional permutations by: writing the indexed data into an interleaver matrix having one or more rows in each of two dimensions; permuting the indexed data in the one or more rows in at least one of the two dimensions to produce constituent permutations; and reading out the indexed data from the interleaver matrix. 21. The method of claim 20, further comprising: providing an interleaver device for interleaving blocks of indexed data, the interleaver device comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 22. The method of claim 21, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations. 23. The method of claim 20, wherein said constituent permutations are different from one row to another row in each of the two dimensions. 24. The method of claim 23, further comprising: providing an interleaver device for interleaving the blocks of indexed data, the interleaver device comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 25. The method of claim 24, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations. 26. A system for interleaving and turbo encoding blocks of indexed data, having indices, the blocks having a varying length, the system comprising: a parallel concatenation of two or more constituent encoders for recursive convolutional codes; and an interleaver device coupled to the parallel concatenation of the two or more constituent encoders, for performing the steps of: accessing stored descriptions of basic interleavers, the basic interleavers comprising a family of one or more permutations of the indexed data and each having a variable length; identifying a group of the basic interleavers having a length greater than or equal to a desired interleaver length L; selecting one of the basic interleavers having a length which is smallest among the group of the basic interleaves, the selected interleaver having the shortest length which is greater than or equal to the desired interleaver length; and adapting the selected one of the basic interleavers to produce a new interleaver having the desired interleaver length L, wherein the selected basic interleaver defines mappings of a position of indexed data to a new position, wherein for each mapping, the mapping of the selected basic interleaver is retained if the indexed position in the selected basic interleaver is less than L, otherwise the mapping is rejected. 27. A method of interleaving blocks of indexed data having indices, the blocks having a varying length, the method comprising: providing a set of basic interleavers comprising a family of one or more permutations of the indexed data, each of the basic interleavers having a variable length; selecting one of the basic interleavers, I2m, having a size 2m based upon a desired interleaver length L, such that 2m−1<L<2m; and adapting the selected one of the basic interleavers to produce an interleaver, IL, having the desired interleaver length L, wherein adapting the selected one of the basic interleavers comprises for j=0 to 2L−1 and i=0 to 2L−1: setting IL−1(i) if I2m−1(j); and rejecting IL−1(i) if I2m−1(j)≧L. 28. The method of claim 27, wherein the set of basic interleavers comprises two-dimensional permutations and further comprising computing the two-dimensional permutations by: writing the indexed data into an interleaver matrix having one or more rows in each of two dimensions; permuting the indexed data in the one or more rows in at least one of the two dimensions to produce constituent permutations; and reading out the indexed data from the interleaver matrix. 29. The method of claim 28, further comprising: providing an interleaver device for interleaving the blocks of indexed data, the interleaver device comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 30. The method of claim 29, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations. 31. The method of claim 28, wherein said constituent permutations are different from one row to another row in each of the two dimensions. 32. The method of claim 31, further comprising: providing an interleaver device for interleaving the blocks of indexed data, the interleaver device comprising a memory device for storing descriptions of the basic interleavers; and storing the descriptions of the basic interleavers in the memory device. 33. The method of claim 32, wherein the constituent permutations are pseudo-random permutations described by mathematical operations involving a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than another amount of storage required for storing a vector representation of a totality of permuted indices of the constituent permutations.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (31)
Lee Pil Joong,KRX ; Kim Young,KRX ; Park Chang Soo,KRX ; Lee Hyeon Woo,KRX ; Kong Jun Jin,KRX, Adaptive channel encoding method and device.
Chouly Antoine,FRX ; Brajal Americo,FRX ; Gianella David,FRX, Digital transmission system and method comprising a punctured product code combined with a quadrature amplitude modulat.
Falconer David D. (33 Abingdon Dr. Nepean ; Ontario MA CAX K2H 7M5) Ling Fuyun (202 Chestnut Ave. Jamaica Plain MA 02130), Method and apparatus for using orthogonal coding in a communication system.
Erhart Richard A. (Boynton Beach FL) Herold Barry W. (Boca Raton FL) DeLuca Joan S. (Boca Raton FL), Reconfigurable deinterleaver/interleaver for block oriented data.
Tiedemann ; Jr. Edward G. ; Jou Yu-Cheun ; Odenwalder Joseph P., Spread spectrum communication system which defines channel groups comprising selected channels that are additional to a.
Zhang, Jianzhong; Cho, Joonyoung; Pi, Zhouyue; Lee, Juho; Papasakellariou, Aris; Khan, Farooq, Resource remapping and regrouping in a wireless communication system.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.