A 2-dimensional interleaving method is disclosed. The method comprises dividing a frame of input information bits into a plurality of groups and sequentially storing the divided groups in a memory; permuting the information bits of the groups according to a given rule and shifting an information bit existing at the last position of the last group to a position preceding the last position; and selecting the groups according to a predetermined order, and selecting one of the information bits in the selected group.
|
0. 24. A method for interleaving a frame of input information bits, the frame having row (R) groups, each of the R groups having column (C) information bits, the method for use in an internal interleaver of a turbo encoder, the method comprising the steps of:
a) permuting information bit positions of the groups according to predetermined interleaving rule; and
b) exchanging an information bit existing at a last position of a last group with an information bit existing at a first position of the last group.
0. 27. A two-dimensional interleaving method comprising the steps of:
sequentially storing a frame of K input information bits, the frame having row (R) groups, each of the R groups having column (C) information bits;
permuting the information bits addresses of each of the R groups according to a given interleaving rule; and
exchanging an address of an information bit existing at a last position of a last group with an information bit existing at a first position of the last group, subsequent to the permuting.
0. 28. A method for interleaving a frame of input information bits, the frame having row (R) groups, each of the R groups having column (C) information bits, the method for use in an internal interleaver of a turbo encoder, the method comprising the steps of:
a) permuting the information bit positions of the groups according to predetermined interleaving rule; and
b) exchanging an information bit position existing at a last position of a last group with an information bit existing at a first position of the last group.
0. 21. A two-dimensional interleaving method comprising the steps of:
sequentially storing a frame of K input information bits, the frame having row (R) groups, each of the R groups having column (C) information bits;
permuting information bit addresses of the each of the R groups according to a given interleaving rule; and
exchanging an address of an information bit existing at a last position of a last group with an address of an information bit existing at a first position of the last group, subsequent to the permuting.
0. 23. A two-dimensional interleaving method comprising the steps of:
writing input sequences of a frame of input information bits in a memory, the frame having row (R) groups, each of the R groups having column (C) information bits;
permuting addresses of the information bits written in the memory according to a given interleaving rule; and
exchanging an address of an information bit written in a last position of a last group with an information bit written in a first position of the last group, subsequent to the permuting.
8. A 2-dimensional interleaving method comprising the steps of:
storing a frame of K input information bits into a memory sequentially and dividing an the information bits into R row (R) groups, each of the R groups having C column (C) information bits;
permuting the information bits addresses of the each group according to a given rule; and
changing exchanging an information bit address existing at the a last position of the a last group to a address preceding the last position with an information bit address existing at a first position of the last group, subsequent to the permuting.
11. A 2-dimensional interleaving method comprising the steps of:
writing input sequences of a frame of input information bits which have R row (R) groups, each of the R groups having C column (C) information bits, in a memory;
permuting the address addresses of the information bits written in the memory according to a given rule; and
shifting exchanging an address of an information bit written in the a last position of the a last group to a position preceding with an address of an information written in a first position of the last group, subsequent to the permuting.
13. A method for interleaving a frame of input information bits which have R row (R) groups, each of the R groups having C column (C) information bits, in a PIL interleaver prime interleaver (PIL) used as an internal interleaver for a turbo encoder, the method comprising the steps of:
a) permuting the information bits position positions of the groups according to a predetermined PIL interleaving rule; and
b) changing exchanging an information bit existing at the a last position of the frame to a position preceding the last position a last group with an information bit existing at a first position of the last group, subsequent to the permuting.
5. A device for permuting information bit addresses of an input frame which have R row (R) groups, each of the R groups having C column (C) information bits, in a prime interleaver (PIL) used as an internal interleaver for a turbo encoder, the device comprising:
a memory for storing the information bit frame sequentially; and
a randomizer for permuting the addresses of the information bit frame according to a given interleaving rule, and changing the exchanging an address of an a last information bit to a position preceding the position in the position with an address of an information bit existing at a first position of a last group, after the permuting.
0. 18. A device for permuting information bit addresses of an input frame, the input frame having row (R) groups, each of the R groups having column (C) information bits, the device being configured in an internal interleaver for a turbo encoder, the device comprising:
a memory configured for storing the information bits frame sequentially; and
a randomizer configured for
intra-row permuting an address of the stored information bits in each row according to a given interleaving rule,
exchanging an address of an information bit existing at a last position of a last group with an address of an information bit existing at a first position of the last group, after the intra-row permuting,
performing inter-row permutations, and
reading out the information bits, column by column, starting in the first row of the first column.
7. A device for interleaving a frame of K information bits which have R row (R) groups, each of the R groups having C column (C) information bits, in a PIL interleaver prime interleaver (PIL) used as an internal interleaver for a turbo encoder, the device comprising:
a controller for writing input information bits of a frame in a memory sequentially and permuting the position positions of the information bits written in a jth row (where, j can be 0,1,2, . . . , or R−1) to position Cj(i) in the row in accordance with an algorithm given by
i) permute a base sequence C(i)=[g0×C(i−1)] mod p, i=1,2, . . . , (p−2) and C(0)=1
ii) perform row permutation Cj(i)=C([i×pj] mod (p−1)),
j=0,1,2, . . . , (R−1), i=0,1,2, . . . , (p−1 2), Cj(p−1)=0, and Cj(p)=p
iii) exchange CR-1(p) with CR-1(0)
where p (prime number) indicates a minimum prime number which is closest to K/R satisfying 0≦(p+1)−K/R, g0 (primitive root) indicates a predetermined number corresponding to an associated primitive root for p, and pj indicates a primitive number set.
0. 19. A device for interleaving a frame of K information bits, the frame having row (R) groups, each the R groups having column (C) information bits, the device comprising:
an interleaver for two-dimensional interleaving for a turbo encoder configured for sequentially writing input information bits of a frame in a memory and permuting positions of the information bits written in a jth row to a position Cj(i) in the row, where, j can be 0,1,2 . . . , or R−1, in accordance with an algorithm given by
iv) permute a base sequence C(i)=[g0×C(i−1)] mod p, i=1,2, . . . ,(p−2) and C(0)=1,
v) perform row permutation Cj(i)=C([i×pj] mod (p−1)), j=0,1.2, . . ,(R−1), i=0,1,2, . . . , (p−2), Cj(p−1)=0, and Cj(p)=p,
vi) exchange CR-1(p) with CR-1(0);
where K specifies a number of input information bits in a frame, p indicates a minimum prime number satisfying 0≦(p+1)−K/R, g0 indicates an associated primitive root for p, and pj indicates a prime number set.
0. 30. A turbo encoder comprising:
a first encoder configured for encoding a frame of K input information bits to generate first coded symbols;
an interleaver configured for
sequentially writing the K input information bits into a row (R)×Column (C) rectangular matrix, row by row, starting in a first column of a first row,
intra row permuting positions of the information bits in the R×C rectangular matrix in each row according to a given interleaving rule,
exchanging a position of an information bit in a last column of a last row with a position within the last row which precedes the last column, after the intra row permuting,
performing inter-row permutations of the R×C rectangular matrix, and
reading out the information bits from the permuted R×C rectangular matrix, column by column, starting in the first row of the first column; and
a second encoder configured for encoding the read out information bits to generate second coded symbols,
wherein the R×C rectangular matrix includes R rows and C columns, K=R×C, and K indicates a number of the input information bits included in the frame.
1. A turbo encoder comprising:
a first encoder configured for encoding a frame of K input information bits to generate first coded symbols;
an interleaver configured for
receiving sequentially writing the K information bits into a row (R)×Column (C) rectangular matrix, row by row, starting in a first column of a first row,
intra row permuting positions of the K information bits in the R×C rectangular matrix in each row according to a given interleaving rule,
exchanging a position of an information bit in a last column of a last row with a position of an information bit in the first column of the last row, after the intra row permuting,
performing inter-row permutations of the R×C rectangular matrix, and
and interleaving the information bits position such that an information bit existing at the last position of the frame is shifted to a position preceding the last position for not generating Critical information sequence Pattern (CISP) reading out the information bits from the permuted R×C rectangular matrix, column by column, starting in the first row of the first column; and
a second encoder configured for encoding the interleaved read out information bits to generate second coded symbols,
wherein the R×C rectangular matrix includes R rows and C columns, K=R×C, and K indicates a number of the information bits included in the frame.
0. 26. A two-dimensional interleaving method comprising the steps of:
sequentially writing input sequences of information bits of a frame in a row (R)×Column (C) rectangular matrix, the frame having R groups, each of the R groups having C information bits;
selecting a primitive root g0 corresponding to a minimum prime number p satisfying 0≦(p+1)−K/R;
generating a base sequence C(i) for intra-row permuting the input sequences written in the rows in accordance with
C(i)=[g0×C(i−1)] mod p, i=1,2, . . . ,(p−2), and C(0)=1;
calculating a minimum prime integer set {qi}(j=0,1,2, . . . ,R−1) by determining
g.c.d{qj,p−1}=1
qj>6, qj>q(j-1)
where g.c.d is a greatest common divider and q0=1;
intra-row permuting {qj} using
pP(j)=qj, j=0,1, . . . ,R−1
where P(j) indicates a predetermined selecting order for selecting the R rows;
when C=p+1, permuting sequences in a jth row in accordance with
Cj(i)=C([i×pj] mod (p−1)),
where j=0,1,2, . . . ,(R−1), i=0,1,2, . . . ,(p−2), Cj(p−1)=0, and Cj(p)=p,
and if (K=C×R), then CR-1(p) is exchanged with CR-1(0),
selecting R rows according to a predetermined order P(j);
selecting an input sequence from the selected rows; and
providing the selected input sequence as read addresses for interleaving the information bits of the input frame.
16. A 2-dimensional interleaving method comprising the steps of:
sequentially writing input sequences of information bits of the a frame in an R a row (R)×C column rectangular matrix;
selecting a primitive root g0 corresponding to the a minimum prime number p, and generating a base sequence c(i) for intra-row permuting the input sequences written in the rows of the R×C rectangular matrix in accordance with
C(i)=[g0×C(i−1)] mod p, i=1,2, . . . , (p−2), and C(0)=1; calculating a minimum prime integer set {qj}(j=0,1,2, . . . , R−1) by determining
g.c.d{qj,p−1}=1 qj>6, qj>q(j-1) where g.c.d is a greatest common divider and q0=1;
intra-row permuting {qj} using
pP(j)=qj, j=0,1, . . . , R−1 where P(j) indicates a predetermined selecting order for selecting the R rows;
when C=p+1, permuting sequences in a jth row in accordance with
Cj(i)=C([i×pj] mod(p−1)), where j=0,1,2, . . . , (R−1), i=0,1,2, . . . , (p−1 2), Cj(p−1)=0, and Cj(p)=p,
and if (K=C×R), then CR-1(p) is exchanged with CR-1(0),
selecting R rows according to a predetermined order P(j), and selecting one input sequence from the selected row; and
providing the selected input sequence as a read address for interleaving the information bits of the input frame.
2. The turbo encoder as claimed in
a controller for writing the information bits sequentially in memory and dividing the information bits into R groups each having the C information bits; permuting the an address of the an information bit written in a jth row (where, j=0,1,2, . . . , R−1) to positions Cj(i) in the row in accordance with an algorithm given by
i) C(i)=[g0×C(i−1)] mod p, i=1,2, . . . , (p−2) and C(0)=1
ii) Cj(i)=C([i×pj] mod (p−1)),
j=0,1,2, . . . , (R−1), i=0,1,2, . . . , (p−1 2), Cj(p−1)=0, and Cj(p)=p
iii) exchange CR-1(p) with CR-1(0)
where p (prime number) indicates a minimum prime number which is closest to K/R satisfying 0≦(p+1)−K/R, g0 (primitive root) indicates a predetermined number corresponding to an associated primitive root for p, and pj indicates a primitive number set.
0. 3. The turbo encoder as claimed in
a memory for storing the information bit frame sequentially;
a randomizer for permuting the address of the stored informnation bits according as shifting the address of an informnation bit existing at the last position to a position preceding the last position in the last group.
0. 4. The turbo encoder as claimed in
0. 6. The device as claimed in
9. A The 2-dimensional interleaving method as claimed in
determining a minimum prime number p which is closest to K/R satisfying 0≦(p+1)−K/R, sequentially writing input sequences of information bits of a frame in a memory;
selecting a primitive root g0 corresponding to the minimum prime number p, and generating a base sequence C(i) for intra-row permuting the input sequences written in the rows in accordance with
C(i)=[g0×C(i−1)] mod p, i=1,2, . . . , (p−2), and C(0)=1; calculating a minimum prime integer set {qj}(j=0,1,2, . . . , R−1) by determining
g.c.d{qj,p−1}=1 qj>6, qj>q(j-1) where g.c.d is a greatest common divider and q0=1;
intra-row permuting {qj} using
pP(j)=qj, j=0,1, . . . , R−1 where P(j) indicates a predetermined selecting order for selecting the R rows;
when C=p+1, permuting sequences in a jth row in accordance with
Cj(i)=C([i×pj] mod(p−1)), where j=0,1,2, . . . , (R−1), i=0,1,2, . . . , (p−1 2), Cj(p−1)=0, and Cj(p)=p,
and if (K=C×R), then CR-1(p) is exchanged with CR-1(0).
0. 10. The 2-dimensional interleaving method as claimed in
0. 12. The 2-dimensional interleaving method as claimed in
0. 14. The method as claimed in
15. The method as claimed in
i) calculating C(i)=[g0×c(i−1)] mod p, i=1,2, . . . , (p−2) and C(0)=1
ii) calculating Cj(i)=C([i×pj] mod(p−1)), where
j=0,1,2, . . . , (R−1), i=0,1,2, . . . , (p−1 2), Cj(p−1)=0, and Cj(p)=p
iii) exchanging CR-1(p) with CR-1(0)
where p (prime number) indicates a minimum prime number which is closest to K/R satisfying 0≦(p+1)−K/R, K indicates a number of the input information bits in the frame, g0 (primitive root) indicates a predetermined number corresponding to an associated primitive root for p, pj indicates a primitive number set, and cj(i) is the an input bit position of an ith output after the permutation of a jth row.
0. 17. The turbo encoder as claimed in claim 1, wherein the interleaver is further configured for permuting addresses of the information bits written in a jth row, where, j=0, 1, 2, . . . , R−1, to positions Cj(i) in the row in accordance with an algorithm given by
i) C(i)=[g0×C(i−1)] mod p, i=1,2, . . . ,(p−2) and C(0)=1
ii) Cj(i)=C([i×pj] mod (p−1)), j=0,1,2, . . . ,(R−1), i=0,1,2, . . . ,(p−2), Cj(p−1)=0, and Cj(p)=p
iii) exchange CR-1(p) with CR-1(0)
where p indicates a minimum prime number satisfying 0≦(p+1)−K/R, g0 indicates an associated primitive root for p, and pj indicates a prime number set.
0. 20. The device according to claim 19, further comprising a randomizer configured for permuting the addresses of the stored information bits in accordance with exchanged positions of the stored information bits.
0. 22. The two-dimensional interleaving method as claimed in claim 21, wherein the step of permuting comprises:
determining a minimum prime number p satisfying 0≦(p+1)−K/R;
selecting a primitive root g0 associated with the minimum prime number p, and
generating a base sequence C(i) for intra-row permuting of the input sequences written in the rows in accordance with
C(i)=[g0×C(i−1)] mod p, i=1,2, . . . ,(p−2), and C(0)=1;
calculating a minimum prime integer set {qj}(j=0,1,2, . . . ,R−1) by determining
g.c.d{qj,p−1}=1
qj>6, qj>q(j-1)
where g.c.d is a greatest common divider and q0=1;
intra-row permuting {qj} using
pP(j)=qj, j=0,1, . . . ,R−1
where P(j) indicates a predetermined selecting order for selecting the R rows; and
when C=p+1, permuting sequences in a jth row in accordance with
Cj(i)=C([i×pj] mod (p−1)),
where j=0,1,2, . . . ,(R−1), i=0,1,2, . . . ,(p−2), Cj(p−1)=0, and Cj(p)=p,
and if (K=C×R), then CR-1(p) is exchanged with CR-1(0).
0. 25. The method as claimed in claim 24, wherein in the step a) and b), the R groups are rows and the information bits positions of the frame written in a jth row, where j=0,1,2, . . . ,R−1, are permuted with positions Cj(i) in the row in accordance with an algorithm given by
i) calculating C(i)=[g0×C(i−1)] mod p, i=1,2, . . . ,(p−2) and C(0)=1
ii) calculating Cj(i)=C([i×pj] mod (p−1)), where
j=0,1,2, . . . ,(R−1), i=0,1,2, . . . ,(p−2), Cj(p−1)=0, and Cj(p)=p
iii) exchanging CR-1(p) with CR-1(0)
where k specifies a number of input information bits in a frame, p indicates a minimum prime number satisfying 0≦(p+1)−K/R, g0 indicates an associated primitive root for p, pj indicates a prime number set, and Cj(i) is the input bit position of an ith output after the permutation of a jth row.
0. 29. The method as claimed in claim 28, wherein in the step a) and b), the R groups are rows and the information bit positions of the frame written in a jth row, where j=0, 1, 2, . . . , R−1, are permuted with positions Cj(i) in the row in accordance with the steps of an algorithm given by
i) calculating C(i)=[g0×C(i−1)] mod p, i=1, 2, . . . , (p−2) and C(0)=1
ii) calculating Cj(i)=C([i×pj] mod (p−1)), j=0, 1, 2, . . . , (R−1), i=0, 1, 2, . . . , (p−21), Cj(p−1)=0, and Cj(p−1)=p
iii) exchanging CR-1(p) with CR-1(0)
where K specifies a number of input information bits in a frame, p indicates a minimum prime number, which is closest to K/R while satisfying 0≦(p+1)−K/R, g0 indicates an associated primitive root for predetermined number corresponding to p, pj indicates a primitive prime number set and Cj(i) is the information bit position of an ith output after the permutation of a jth row.
0. 31. The turbo encoder as claimed in claim 30, wherein the turbo encoder is further configured to store the input information bits in a memory, to perform the interleaving of the information bits in the R×C rectangular matrix based on generated read addresses corresponding to the permuted R×C rectangular matrix, and to output the information bits from the memory using the generated read addresses.
0. 32. The turbo encoder as claimed in claim 30, wherein the turbo encoder is further configured to exchange the position of the information bit in the last column of the last row with a position of an information bit in the first column of the last row.
|
This application claims priority to an application entitled “Turbo Interleaving Apparatus and Method” filed in the Korean Industrial Property Office on May 19, 1999 and assigned Serial No. 99-18928 and an application filed in the Korean Industrial Property Office on May 21, 1999 and assigned Serial No. 99-18560, the contents of which are hereby incorporated by reference.
1. Field of the Invention
The present invention relates generally to a turbo encoder used for radio communication systems (including satellite, ISDN, digital cellular, W-CDMA, and IMT-2000 systems), and in particular, to an internal interleaver of a turbo encoder.
2. Description of the Related Art
In general, an interleaver used for a turbo encoder randomizes an address of input information word and improves a distance property of a codeword. In particular, it has been decided that a turbo code will be used in a supplemental channel (or data transmission channel) of IMT-2000 (or CDMA-2000) and IS-95C air interfaces and in a data channel of UMTS (Universal Mobile Telecommunication System) proposed by ETSI (European Telecommunication Standards Institute). Thus, a method for embodying an interleaver for this purpose is required. In addition, the invention relates to an error correction code which greatly affects performance improvement of the existing and future digital communication systems.
For an existing internal interleaver for a turbo encoder (hereinafter, referred to as a turbo interleaver), there have been proposed various interleavers such as PN (Pseudo Noise) random interleaver, random interleaver, block interleaver, non-linear interleaver, and S-random interleaver. However, so far, such interleavers are mere algorithms designed to improve their performances in terms of scientific researches rather than implementation. Therefore, when implementing an actual system, the hardware implementation complexity must be taken into consideration. A description will now be made of properties and problems associated with the conventional interleaver for the turbo encoder.
Performance of the turbo encoder is dependent upon its internal interleaver. In general, an increase in the input frame size (i.e., the number of information bits included in one frame) enhances the effectiveness of the turbo encoder. However, an increase in interleaver size causes a geometric increase in calculations. Therefore, in general, it is not possible to implement the interleaver for the large frame size.
Therefore, in general, the interleavers are implemented by determining conditions satisfying several given criteria. The criteria are as follows:
Although the above criteria are applicable to a general turbo interleaver, it is difficult to clearly analyze the properties when the interleaver increases in size.
In addition, another problem occurring when designing the turbo interleaver is that the minimum free distance of the turbo code varies according to the type of the input codeword. That is, when the input information word has a specific sequence pattern defined as a critical information sequence pattern (CISP), the free distance of the output code symbols generated from the turbo encoder has a very small value. If the input information word has a Hamming weight 2, the CISP occurs when the input information word has two information bits of ‘1’ and can also occur when the input information word has 3 or more information bits of ‘1’. However, in most cases, when the input information word has 2 information bits of ‘1’, the minimum free distance is formed and most error events occur in this condition. Therefore, when designing the turbo interleaver, an analysis is generally made on the case where the input information word has the Hamming weight 2. A reason that the CISP exists is because the turbo encoder generally uses RSC (Recursive Systematic Convolutional Codes) encoders for the component encoders shown in
In this case (in the prior art of turbo interleaver), to increase the free distance, the turbo interleaver randomly disperses the CISP input information word so as to prevent a decrease in the free distance at the output symbol of the other component RSC encoder.
The above-stated properties are fundamental features of the known turbo interleaver. However, for the CISP, it is conventional that the information word has the minimum Hamming weight, when the input information word has the Hamming weight 2. In other words, the fact that the CISP can be generated even when the input information word has the Hamming weight 1 (i.e., when the input information word has one information bit of ‘1’) was overlooked, when the information word input to the turbo encoder had the type of a block comprised of frames.
For example, a prime interleaver (PIL) designated as the working model of the turbo code interleaver specified by the present UMTS standard exhibits such problems, thus having a degraded free distance property. That is, the implementation algorithm of the model PIL turbo interleaver include 3 stages, of which the second stage, which plays the most important role, performs random permutation on the information bits of the respective groups. The second stage is divided into three cases of Case A, Case B and Case C, and the Case B always involves the case where the free distance is decreased due to the event where the input information word has the Hamming weight 1. In addition, even the Case C involves a possibility that such an event will occur. The detailed problems will be described later with reference to the PIL.
In conclusion, when various interleaver sizes are required and the hardware implementation complexity is limited in the IMT-2000 or UMTS system, the turbo interleaver should be designed to guarantee the optimal interleaver performance by taking the limitations into consideration. That is, the required interleaver should be able to guarantee uniform performance for the various interleaver sizes, while satisfying the above-stated properties. More recently, there have been proposed several types of the interleavers for a PCCC (Parallel Concatenated Convolutional Codes) turbo interleaver, and a LCS (Linear Congruential Sequence) turbo interleaver has been provisionally decided as the turbo interleaver in the IMT-2000 (or CDMA-2000) and IS-95C specifications. However, most of these turbo interleavers have the problems of the CSIP with Hamming weight 1, and the details of implementing these turbo interleavers are still not defined. Therefore, the present invention proposes a solution of the turbo interleaver's problems, and a new method for implementing the turbo interleaver. In addition, the invention shows the PIL interleaver which is a working assumption of the UMTS turbo interleaver, and proposes a solution of this interleaver's problem.
To sum up, the prior art has the following disadvantages.
It is, therefore, an object of the present invention to provide an interleaving device and method for analyzing properties of a turbo interleaver and a property of a critical information sequence pattern (CISP) to improve performance of the turbo interleaver.
It is another object of the present invention to provide an interleaving device and method for improving free distance performance of a turbo code for the case where an input information word has a Hamming weight 1 when the information word input to a turbo interleaver has a block type comprised of frames.
It is a further object of the present invention to provide an interleaving device and method for solving the problem that the free distance is decreased when an input information word has a Hamming weight 1 in a prime interleaver (PIL) that is the turbo interleaver specified in the UMTS specification.
To achieve the above objects, there is provided a 2-dimensional interleaving method comprising dividing a frame of input information bits into a plurality of groups and sequentially storing the divided groups in a memory; permuting the information bits of the groups according to a given rule and shifting an information bit existing at the last position of the last group to a position preceding the last position; and selecting the groups according to a predetermined order, and selecting one of the information bits in the selected group.
The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings in which:
A preferred embodiment of the present invention will be described herein below with reference to the accompanying drawings. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail.
Prior to describing the invention, the specification will present the problems occurring when an input information word, which is one of the design criteria used in the existing turbo interleaver/deinterleaver, is processed on a frame unit basis, and then analyze an affect that the CISP with a Hamming weight 1 has on the Hamming weight of the output code symbols. Next, the specification will propose a method for solving the problems and verify the performance difference through analysis of the minimum free distance.
where HW is the Hamming weight.
From Equation 1, it is noted that a Hamming weight balance between RSC1 and RSC2 is very important. In particular, it is noted that the minimum free distance of the turbo code is generated for the minimum Hamming weight of the input information word, when the IIR (Infinite Impulse Response) characteristic of the RSC encoder is taken into consideration. In general, the minimum free distance is provided when the input information word has the Hamming weight 2, as mentioned above.
However, as described above, the minimum free distance occurs when the input information word has the Hamming weight 3, 4, 5 . . . , as well as when the input information word has the Hamming weight 2. This occurs when the input information word is received on a frame unit basis, as follows.
For example, when only the information bit located at the last position of the input information word, i.e., the last position of the frame, is ‘1’ and all the other information bits are 0's, the Hamming weight of the input information word becomes 1. In this case, the number of the symbols ‘1’ output from the RSC1 becomes very small, because there is no more input information word. Of course, when zero-tail bits are used, there exist two symbols but those are independently used rather than undergoing turbo interleaving. Therefore, it is assumed herein that the weight is slightly increased. Since the constant weight is added, this will be so excluded from an analysis of the interleaver. In this case, it is noted from Equation 1 that the RSC2 should generate a great number of the output symbols ‘1’ to increase the total free distance.
Now, with reference to
In
If, as shown in
In addition to the decreased free distance occurring when the internal interleaver shifts the input information bit ‘1’ located at the last position of the frame to the last position of the frame as show in
For example, if the internal interleaver operations in the frame mode shown in
This principle can be expanded to the case where the turbo interleaver operates in the frame mode shown in
In conclusion, when designing the turbo interleaver, the following conditions as well as the random property and the distance property should be satisfied to guarantee performance of the turbo decoder and the free distance of the turbo encoder.
These conditions are applicable to a 2-dimensional turbo interleaver as well as the above-described 1-dimensional interleaver. The 1-dimensional interleaver performs interleaving, regarding the input information frame as a group, as shown in
As illustrated, the input information bits are sequentially written in the respective groups (or rows). That is, the input information bits are sequentially written in the groups (or rows) r0, r1, . . . , r(R−1). In each group, the input information bits are sequentially written from the left to the right. Thereafter, a turbo interleaving algorithm randomly changes the positions of R×C elements (i.e., input information bits), where R is the number of rows, C is the number of columns or, equivalently, the number of information bits in a group. In this case, it is preferable to design the turbo interleaving algorithm such that the information bit located at the last position (or the rightmost position) of the last group should be located at the foremost position, if possible, during output. Of course, depending on the order of selecting the groups, the input information bit located at the last position may be shifted to the foremost position (or close thereto) of the corresponding group. Further, Condition 1 and Condition 2 can be normalized in a k-dimensional turbo interleaver (where k>2) as well as the 2-dimensional interleaver.
Next, a description will be made of the PIL interleaver having the problems of the prior art at the case of
A third stage, Perform the row-permutation based on the following p(j) (j=0,1,2 . . . , R−1) patterns, where p(j) is the original row position of the j-th permuted row. The usage of these patterns is as follows; when the number of input information bit K is 320 to 480 bit perform group selection pattern pA, when the number of input information bit K is 481 to 530 bit perform group selection pattern pc, when the number of input information bit K is 531 to 2280 bit perform group selection pattern pA, when the number of input information bit K is 2281 to 2480 bit perform group selection pattern pB, when the number of input information bit K is 2481 to 3160 bit perform group selection pattern pA, when the number of input information bit K is 3161 to 3210 bit perform group selection pattern pB, and when the number of input information bit K is 3211 to 5114 bit perform group selection pattern pA. The group selection pattern is as follow;
It should be noted herein that the last operation of B-5) is defined as Cj(p)=p. That is, this means that when the position of the input information bit before interleaving is p, the position of the input information bit is maintained at the position p even after PIL interleaving. Therefore, for the last group (j=19), the information bits CR-1(P)=C19(p) existing at the last position maintain the same position i=P which is the last position of the 19th group. Therefore, Condition 2 for designing the turbo interleaver is not satisfied.
That is, to solve the problem that the PIL interleaver has, algorithm step B-5) may be modified by performing an additional step after step B-5 as follows. The invention presents six methods of B-5-1) to B-5-6), by way of example. Among these, an optimal performance can be determined through simulations in the light of the properties of the turbo interleaver.
One of the following 6 methods are selected.
Referring to
C(i)=[g0×C(i−1)]mod p, i=1,2,3, . . . ,p−2, C(0)=1
Thereafter, in step 1015, a minimum prime number set {qj, j=0,1,2, . . . , R−1} given for the algorithm is calculated. Then, in step 1017, a prime number set {pj=0,1,2, . . . , R−1} is calculated from the calculated minimum prime number set. Next, in step 1019, the elements of an jth group are randomized in the following method.
Cj(i)=c([i×pj]mod(p−1), i=0,1,2,3, . . . , p−2,
Cj(p−1)=0
Here, in order to increase the minimum free distance of the turbo encoder while randomizing the elements of the group, one of B-5-1) to B-5-6) is selected to permute (or shift) the information bits existing at the last position of the frame to other positions after interleaving.
B-5-1) means that the positions of the first information bit and the last information bit in the last group are exchanged with each other. B-5-2) means that the last two information bits in the last group are exchanged with each other. B-5-3) means that for every group, the information bit existing at the last position and the information bit existing at the foremost position are exchanged with each other. B-5-4) means that for every group, the positions of the last two information bits are exchanged. B-5-5) means that for every group, an optimal position k for a given interleaving rule is searched to exchange a position of the information bit existing at the last position of each row with a position of the information bit existing at the position k. Finally, B-5-6) means that for the last group, an optimal position k for a given interleaving rule is searched to exchange a position of the information bit existing at the last position with a position of the information bit existing at the position k.
By applying the modified algorithm to the PIL interleaver, it is possible to prevent a decrease in the free distance of the turbo encoder. Table 2 below shows a weight spectrum of the PIL interleaver before modification, and Table 3 below shows a weight spectrum of the PIL interleaver after modification.
In Tables 2 and 3, K indicates the size of the input information frame, Dfree(1) indicates a free distance calculated with the CISP for which the input information word has the Hamming weight 1, and Dfree(2) indicates a free distance calculated with the CISP for which the input information word has the Hamming weigh 2. For example, for K=600, Dfree(1) of the original PIL interleaver is indicated by 25/39/49/53/57/ . . . in Table 2, and this means that the minimum free distance is 25 and the next minimum free distance is 39. Similarly, Dfree(2)=38/38/42/ . . . means that the minimum free distance is 38. Therefore, it is noted that the minimum free distance is determined according to the free distance by the CISP with the Hamming weight 1. To prevent a decrease in the free distance by the CISP with the Hamming weight 1, the invention uses the B-5-1) method in this example. That is, Dfree(1) is improved by removing the CISP with the Hamming 1.
Table 2 below shows a weight spectrum of the PIL interleaver before modification.
TABLE 2
K
Dfree(1)
Dfree(2)
600
Pos. = 599, Min. Weight = 25
Pos. = 29, min_pl = 36, Min. Weight = 38
25/39/49/53/57/61/65/67/67/77/
38/38/42/42/42/42/42/42/42/42/
640
Pos. = 630, Min. Weight = 25
Pos. = 440, min_pl = 447, Min. Weight = 40
25/37/53/53/53/69/71/73/75/77/
40/40/42/42/44/44/46/46/46/48/
760
Pos. = 759, Min. Weight = 25
Pos. = 33, min pl = 40, Min. Weight = 38
25/41/57/57/59/69/75/77/81/83/
38/38/38/42/42/42/42/44/44/50/
840
Pos. = 839, Min. Weight = 25
Pos. = 461, min pl = 468, Min. Weight = 36
25/45/57/65/65/79/79/83/85/87/
36/38/40/42/42/42/44/46/46/46/
880
Pos. = 879, Min. Weight = 25
Pos. = 294, min pl = 308, Min. Weight = 40
25/47/57/61/65/71/83/89/93/93/
40/44/46/46/46/48/54/56/56/58/
960
Pos. = 959, Min. Weight = 25
Pos. = 568, min pl = 575, Min. Weight = 36
25/45/61/65/69/71/73/87/87/89/
36/38/38/42/42/42/42/44/44/46/
1080
Pos. = 1079, Min. Weight = 25
Pos. = 1016, min pl = 1030, Min. Weight = 42
25/49/61/65/67/77/85/89/93/97/
42/42/46/48/48/50/52/52/54/54/
1200
Pos. = 1199, Min. Weight = 25
Pos. = 953, min pl = 967, Min. Weight = 38
25/53/65/69/85/85/89/89/95/103/
38/38/42/42/42/42/46/48/50/50/
1240
Pos. = 1239, Min. Weight = 25
Pos. = 1053, min pl = 1060, Min. Weight = 38
25/53/67/69/71/85/93/93/103/105/
38/38/40/40/42/42/46/46/46/48/
1360
Pos. = 1359, Min. Weight = 25
Pos. = 64, min pl = 71, Min. Weight = 38
25/57/65/73/85/91/93/105/107/107/
38/42/42/42/42/44/46/46/46/50/
1440
Pos. = 1439, Min. Weight = 25
Pos. = 497, min pl = 504, Min. Weight = 36
25/53/63173/77/87/89/97/105/109/
36/42/42/46/46/50/50/52/54/58/
1480
Pos. = 1479, Min. Weight = 25
Pos. = 1103, min pl = 1110, Min. Weight = 42
25/61/65/77/77/83/95/101/109/117/
42/42/44/48/50/50/50/50/54/54/
1600
Pos. = 1599, Min. Weight = 25
Pos. = 315, min pl = 322, Min. Weight = 38
25/61/65/83/83/93/97/105/105/113/
38/38/38/40/42/44/50/50/50/54/
1680
Pos. = 1679, Min. Weight = 25
Pos. = 504, min pl = 518, Min. Weight = 44
25/69/69/81/89/95/103/113/117/125/
44/46/50/50/52/52/54/62/62/62/
1800
Pos. = 1799, Min. Weight = 25
Pos. = 1439, min pl = 1446, Min. Weight = 34
25/69/81/85/105/105/109/109/117/
34/42/42/42/46/48/50/58/60/62/
1960
Pos. = 1959, Min. Weight = 25
Pos. = 1161, min pl = 1175, Min. Weight = 40
25/77/79/83/89/91/97/109/113/125/
40/44/44/46/48/50/50/52/54/64/
2040
Pos. = 2039, Min. Weight = 25
Pos. = 1932, min pl = 1939, Min. Weight = 38
25/75/77/77/93/109/109/113/129/133/
38/40/54/54/56/64/64/74/74/74/
2080
Pos. = 2079, Min. Weight = 25
Pos. = 928, min pl = 935, Min. Weight = 40
25/69/77/81/93/103/109/111/119/121/
40/42/46/54/54/56/58/72/76/88/
2160
Pos. = 2159, Min. Weight = 25
Pos. = 644, min pl = 651, Min. Weight = 38
25/77/81/93/93/97/99/105/107/129/
38/42/46/50/52/54/54/54/54/60/
2200
Pos. = 2199, Min. Weight = 25
Pos. = 1973, min pl = 1980, Min. Weight = 42
25/57/63/81/97/101/117/121/133/141/
42/42/44/52/52/54/54/54/60/62/
2280
Pos. = 2279, Min. Weight = 25
Pos. = 1136, min pl = 1150, Min. Weight = 42
25/75/87/89/97/101/113/121/133/139/
42/42/42/44/50/54/54/54/62/62/
2560
Pos. = 2559, Min. Weight = 25
Pos. = 1663, min pl = 1670, Min. Weight = 42
25/71/73/95/97/109/119/149/149/153/
42/42/46/48/54/56/56/56/62/62/
2640
Pos. = 2639, Min. Weight = 25
Pos. = 1582, min pl = 1589, Min. Weight = 38
25/87/93/101/109/117/119/133/141/143/
38/42/42/42/44/46/50/56/62/66/
2760
Pos. = 2759, Min. Weight = 25
Pos. = 820, min pl = 834, Min. Weight = 42
25/97/101/103/113/113/121/141/143/
42/48/52/54/58/62/62/66/66/66/
2800
Pos. = 2799, Min. Weight = 25
Pos. = 412, min pl = 419, Min. Weight = 44
25/85/97/97/101/101/113/119/137/137/
44/58/62/62/70/72/72/76/80/82/
3000
Pos. = 2999, Min. Weight = 25
Pos. = 2396, min pl = 2403, Min. Weight = 34
25/85/89/105/123/127/155/157/165/171/
34/38/40/50/54/54/54/58/74/76/
3040
Pos. = 3039, Min. Weight = 25
Pos. = 604, min pl = 611, Min. Weight = 38
25/61/89/95/105/115/121/133/135/141/
38/38/42/46/46/52/52/64/66/76/
3160
Pos. = 3159, Min. Weight = 25
Pos. = 2524, min pl = 2538, Min. Weight = 38
25/101/101/105/109/125/127/141/145/149/
38/42/46/56/68/76/76/78/90/90/
3280
Pos. = 3279, Min. Weight = 25
Pos. = 3109, min pl = 3123, Min. Weight = 42
25/93/105/113/121/125/125/131/131/133/
42/50/52/62/62/76/90/90/90/90/
3360
Pos. = 3359, Min. Weight = 25
Pos. = 3019, min pl = 3026, Min. Weight = 42
25/71/73/107/117/129/141/141/153/169/
42/52/54/66/76/80/88/90/90/90/
3480
Pos. = 3479, Min. Weight = 25
Pos. = 1042, min pl = 1049, Min. Weight = 38
25/87/99/105/113/117/133/133/141/145/
38/38/54/54/56/58/58/58/60/62/
3600
Pos. = 3599, Min. Weight = 25
Pos. = 1438, min pl = 1445, Min. Weight = 42
25/97/109/121/137/139/153/167/167/177/
42/46/48/54/54/62/74/76/90,90/
3640
Pos. = 3639, Min. Weight = 25
Pos. = 3262, min pl = 3276, Min. Weight = 54
25/87/97/125/137/137/137/149/163/169/
54/58/58/62/66/68/72/74/82/88/
3840
Pos. = 3839, Min. Weight = 25
Pos. = 759, min pl = 773, Min. Weight = 42
25/53/97/115/117/129/145/147/151/153/
42/56/58/62/62/62/62/66/70/72/
3880
Pos. = 3879, Min. Weight = 25
Pos. = 383 min pl = 397, Min. Weight = 54
25/91/93/121/129/133/145/173/173/177/
54/56/60/62/66/74/86/90/90/90/
3960
Pos. = 3959, Min. Weight = 25
Pos. = 1372 min pl = 1386, Min. Weight = 40
25/91/105/125/125/133/135/137/141/143/
40/62/68/78/88/90/90/90/90/90/
4000
Pos. = 3999, Min. Weight = 25
Pos. = 797 min pl = 804, Min. Weight = 38
25/75/85/133/149/149/149/153/161/175/
38/42/42/50/54/54/54/54/54/56/
4240
Pos. = 4239, Min. Weight = 25
Pos. = 3392, min pl = 3399, Min. Weight = 40
25/109/119/143/151/153/157/165/169/193/
40/42/42/46/50/66/80/90/90/90/
4480
Pos. = 4479, Min. Weight = 25
Pos. = 892, min pl = 899, Min. Weight = 38
25/89/89/89/117/119/137/149/159/161/
38/38/42/42/42/46/54/64/90/90/
4560
Pos. = 4559, Min. Weight = 25
Pos. = 1368, min pl = 1382, Min. Weight = 44
25/113/121/125/137/149/161/165/175/177/
44/58/66/68/70/70/82/84/86/88/
4600
Pos. = 4599, Min. Weight = 25
Pos. = 3676, min pl = 3683, Min. Weight = 34
25/69/107/121/129/149/151/153/159/161/
34/48/50/58/62/66/66/76/86/90/
4680
Pos. = 4679, Min. Weight = 25
Pos. = 928, min pl = 942, Min. Weight = 42
25/99/109/137/143/153/171/177/179/187/
42/44/50/58/62/62/64/68/84/86/
4800
Pos. = 4799, Min. Weight = 25
Pos. = 949, min pl = 963, Min. Weight = 42
25/65/83/129/133/141/157/159/165/169/
42/42/50/56/58/66/66/66/70/70/
4840
Pos. = 4839, Min. Weight = 25
Pos. = 3858, min pl = 3872, Min. Weight = 42
25/95/129/141/145/151/157/161/173/177/
42/72/80/82/84/90/90/90/90/90/
5040
Pos. = 5039, Min. Weight = 25
Pos. = 4534, min pl = 4548, Min. Weight = 46
25/157/165/165/175/177/189/189/193/197/
46/54/54/58/60/60/62/76/82/90/
5160
Pos. = 5159, Min. Weight = 25
Pos. = 2314, min pl = 2321, Min. Weight = 40
25/81/95/137/137/145/147/165/181/185/
40/40/46/50/58/58/58/62/66/84/
5280
Pos. = 5279, Min. Weight = 25
Pos. = 1579, min pl = 1593, Min. Weight = 42
25/75/101/109/133/137/165/169/181/185/
42/50/62/66/70/72/82/82/90/90/
5400
Pos. = 5399, Min. Weight = 25
Pos. = 5124, min pl = 5131, Min. Weight = 38
25/99/117/117/125/133/169/173/189/197/
38/50/52/54/58/72/90/90/90/90/
5440
Pos. = 5439, Min. Weight = 25
Pos. = 4617, min pl = 4624, Min. Weight = 50
25/73/109/143/169/169/169/173/175/181/
50/58/60/62/76/90/90/90/90/90/
5560
Pos. = 5559, Min. Weight = 25
Pos. = 4441, min pl = 4448, Min. Weight = 38
25/105/141/143/177/181/189/193/193/201/
38/42/46/54/66/78/84/88/88/90/
5640
Pos. = 5639, Min. Weight = 25
Pos. = 1120, min pl = 1134, Min. Weight = 42
25/101/115/145/153/153/153/165/169/173/
42/62/76/86/86/90/90/90/90/90/
5680
Pos. = 5679, Min. Weight = 25
Pos. = 851, min pl = 858, Min. Weight = 50
25/101/145/165/173/181/187/187/193/197/
50/54/62/74/78/80/82/84/88/88/
5880
Pos. = 5879, Min. Weight = 25
Pos. = 4410, min pl = 4417, Min. Weight = 42
25/103/129/161/173/177/189/199/201/201/
42/52/72/80/90/90/90/90/90/90/
6160
Pos. = 6159, Min. Weight = 25
Pos. = 5849, min pl = 5863, Min. Weight = 42
25/129/155/157/165/187/197/205/209/217/
42/44/46/58/90/90/90/90/90/90/
6240
Pos. = 6239, Min. Weight = 25
Pos. = 305, min pl = 319, Min. Weight = 42
25/119/119/123/169/185/197/199/213/213/
42/42/62/80/90/90/90/90/90/90/
6280
Pos. = 6279, Min. Weight = 25
Pos. = 5323, min pl = 5337, Min. Weight = 44
25/117/133/137/161/175/177/195/197/197/
44/68/72/72/80/88/90/90,90/90/
6360
Pos. = 6359, Min. Weight = 25
Pos. = 5081, min pl = 5095, Min. Weight = 38
25/109/137/141/141/145/147/161/187/201/
38/42/46/62/78/86/90/90/90/90/
6640
Pos. = 6639, Min. Weight = 25
Pos. = 3645, min pl = 3652, Min. Weight = 44
25/101/109/139/147/175/177/185/209/217/
44/54/58/60/64/90/90/90/90/90/
6760
Pos. = 6759, Min. Weight = 25
Pos. = 6409, min pl = 6423, Min. Weight = 42
25/105/125/165/203/215/217/229/249/249/
42/50/70/84/90/90/90/90,90/90/
6960
Pos. = 6959, Min. Weight = 25
Pos. = 5565, min pl = 5572, Min. Weight = 34
25/123/145/145/161/209/211/217/219/223/
34/50/54/62/66/80/82/88/90/90/
7000
Pos. = 6999, Min. Weight = 25
Pos. = 3846, min pl = 3853, Min. Weight = 38
25/111/145/145/197/221/221/233/235/237/
38/52/54/60/62/72/84/90/90/90/
7080
Pos. = 7079, Min. Weight = 25
Pos. = 2122, min pl = 2129, Min. Weight = 38
25/117/129/161/165/169/171/175/175/177/
38/42/50/54/54/58/72/84/88/90/
7200
Pos. = 7199, Min. Weight = 25
Pos. = 6833, min pl = 6840, Min. Weight = 44
25/167/169/173/185/185/215/217/225/225/
44/50/66/84/90/90/90/90/90/90/
7360
Pos. = 7359, Min. Weight = 25
Pos. = 1836, min pl = 1843, Min. Weight = 46
25/81/157/169/173/173/183/221/221/221/
46/60/72/82/82/90/90/90/90/90/
7480
Pos. = 7479, Min. Weight = 25
Pos. = 1865, min pl = 1872, Min. Weight = 46
25/117/153/201/207/217/217/227/229/233/
46/66/66/72/82/82/90/90/90/90/
7600
Pos. = 7599, Min. Weight = 25
Pos. = 1893, min pl = 1900, Min. Weight = 46
25/125/155/157/201/221/223/239/245/251/
46/56/58/72/84/90/90/90/90/90/
7680
Pos. = 7679, Min. Weight = 25
Pos. = 2865, min pl = 2872, Min. Weight = 78
25/133/153/157/189/207/237/241/243/253/
78/90/90/90/90/90/90/90/90/90/
7800
Pos. = 7799, Min. Weight = 25
Pos. = 1170, min pl = 1184, Min. Weight = 44
25/115/151/157/181/193/209/241/249/251/
44/50/64/72/76/80/86/90/90/90/
7960
Pos. = 7959, Min. Weight = 25
Pos. = 398, min pl = 405, Min. Weight = 40
25/135/145/153/169/169/185/217/223/223/
40/80/86/88/90/90/90/90/90/90/
8040
Pos. = 8039, Min. Weight = 25
Pos. = 7054, min pl = 7068, Min. Weight = 56
25/109/109/111/141/185/201/219/241/249/
56/68/90/90/90/90/90/90/90/90/
Table 3 below shows a weight spectrum of the PIL interleaver after modification, where one modification step is selected and used for all frames.
TABLE 3
K
Dfree(1)/PILSS
Dfree(2)/PILSS
600
pos. = 569, Min. Weight = 39
pos. = 29, min pl = 36, Min. Weight = 38
39/41/49/53/57/61/65/67/67/77/
38/38/42/42/42/42/42/42/42/42/
640
Pos. = 607, Min. Weight = 37
pos. = 440, min pl = 447, Min. Weight = 40
37/43/53/53/53/69/71/73/75/77/
40/40/42/42/44/44/46/46/46/48/
760
Pos. = 721, Min. Weight = 41
pos. = 33, min pl = 40, Min. Weight = 38
41/45/57/57/59/69/75/77/81/83/
38/38/38/42/42/42/42/44/44/50/
840
pos. = 797, Min. Weight = 45
pos. = 461, min pl = 468, Min. Weight = 36
45/45/57/65/65/79/79/83/85/87/
36/38/40/42/42/42/44/46/46/46/
880
pos. = 835, Min. Weight = 47
pos. = 294, min pl = 308, Min. Weight = 40
47/49/57/61/65/71/83/89/93/93/
40/44/46/46/46/48/54/56/56/58/62/
960
pos. = 911, Min. Weight = 45
pos. = 568, min pl = 575, Min. Weight = 36
45/49/61/65/69/71/73/87/87/89/
36/38/38/42/42/42/42/44/44/46/
1080
pos. = 1025, Min. Weight = 49
pos. = 1016, min pl = 1030, Min. Weight = 42
49/53/61/65/67/77/85/89/93/97/
42/42/46/48/48/50/52/52/54/54/
1200
pos. = 1139, Min. Weight = 25
pos. = 953, min pl = 967, Min. Weight = 38
53/59/65/69/85/85/89/89/95/103/
38/38/42/42/42/42/46/48/50/50/
1240
pos. = 1177, Min. Weight = 53
pos. = 1053, min pl = 1060, Min. Weight = 38
53/57/67/69/71/85/93/93/103/105/
38/38/40/40/42/42/46/46/46/48/
1360
pos. = 1291, Min. Weight = 53
pos. = 64, min pl = 71, Min. Weight = 38
57/61/65/73/85/91/93/105/107/107/
38/42/42/42/42144/46/46/46/50/
1440
pos. = 1429, Min. Weight = 53
pos. = 497, min pl = 504, Min. Weight = 36
53/63/65/73/77/87/89/97/105/109/
36/42/42/46/46/50/50/52/54/58/
1480
pos. = 1405, Min. Weight = 61
pos. = 1103, min pl = 1110, Min. Weight = 42
61/65/67/77/77/83/95/101/109/117/
42/42/44/48/50/50/50/50/54/54/
1600
pos. = 1573, Min. Weight = 61
pos. = 315, min pl = 322, Min. Weight = 38
61/65/69/83/83/93/97/105/105/113/
38/38/38/40/42/44/50/50/50/54/
1680
pos. = 1595, Min. Weight = 69
pos. = 504, min pl = 518, Min. Weight = 44
69/69/69/81/89/95/103/113/117/125/
44/46/50/50/52/52/54/62/62/62/
1800
pos. = 1709, Min. Weight = 69
pos. = 1439, min pl = 1446, Min. Weight = 34
69/73/81/85/105/105/109/109/117/
34/42/42/42/46/48/50/58/60/62/
1960
pos. = 1861, Min. Weight = 77
pos. = 1161, min pl = 1175, Min. Weight = 40
77/77/79/83/89/91/97/109/113/125/
40/44/44/46/48/50/50/52/54/64/
2040
pos. = 2014, Min. Weight = 75
pos. = 1114, min pl = 1121, Min. Weight = 40
75/77/77/83/93/109/109/113/129/133/
40/54/54/56/64/64/74/74/74/80/
2080
pos. = 2038, Min. Weight = 69
pos. = 928, min pl = 935, Min. Weight = 40
69/77/81/81/93/103/109/111/119/121/
40/42/46/54/54/56/58/72/76/88/
2160
pos. = 2106, Min. Weight = 77
pos. = 644, min pl = 651, Min. Weight = 38
77/81/85/93/93/97/99/105/107/129/
38/42/46/50/52/54/54/54/54/60/
2200
pos. = 2181, Min. Weight = 57
pos. = 1973, min pl = 1980, Min. Weight = 42
57/63/81/95/97/101/117/121/133/141/
42/42/44/52/52/54/54/54/60/62/
2280
pos. = 2254, Min. Weight = 75
pos. = 1136, min pl = 1150, Min. Weight = 42
75/87/89/89/97/101/113/121/133/139/
42/42/42/44/50/54/54/54/62/62/
2560
pos. = 2545, Min. Weight = 71
pos. = 1663, min pl = 1670, Min. Weight = 42
71/73/95/97/97/109/119/149/149/153/
42/46/48/54/56/56/56/62/64/72/
2640
pos. = 2574, Min. Weight = 87
pos. = 1582, min pl = 1589, Min. Weight = 38
87/93/97/101/109/117/119/133/141/143/
38/42/42/42/44/46/50/56/62/66/
2760
pos. = 2621, Min. Weight = 97
pos. = 820, min pl = 834, Min. Weight = 42
97/101/101/103/113/113/121/141/143/
42/48/52/54/58/62/62/66/66/66/
2800
pos. = 2730, Min. Weight = 85
pos. = 412, min pl = 419, Min. Weight = 44
85/97/97/101/101/101/113/119/137/137/
44/58/62/62/66/70/72/72/76/80/
3000
pos. = 2962, Min. Weight = 85
pos. = 2396, min pl = 2403, Min. Weight = 34
85/89/105/109/123/127/155/157/165/171/
34/38/40/50/54/54/54/58/74/76/
3040
pos. = 3014, Min. Weight = 61
pos. = 604, min pl = 611, Min. Weight = 38
61/89/95/105/109/115/121/133/135/141/
38/38/42/46/46/52/52/64/66/76/
3160
pos. = 3065, Min. Weight = 101
pos. = 2524, min pl = 2538, Min. Weight = 38
101/101/105/109/115/125/127/141/145/149/
38/42/46/56/68/76/76/78/90/90/
3280
pos. = 3198, Min. Weight = 93
pos. = 3109, min pl = 3123, Min. Weight = 42
93/105/113/117/121/125/125/131/131/133/
42/50/52/62/62/76/90/90/90/90/
3360
pos. = 3339, Min. Weight = 71
pos. = 3019, min pl = 3026, Min. Weight = 42
71/73/107/117/117/129/141/141/153/169/
42/52/54/66/76/80/88/90/90/90/
3480
pos. = 3436, Min. Weight = 87
pos. = 1042, min pl = 1049, Min. Weight = 38
87/99/105/113/117/121/133/133/141/145/
38/38/54/54/56/58/58/58/60/62/
3600
pos. = 3510, Min. Weight = 97
pos. = 1438, min pl = 1445, Min. Weight = 42
97/109/121/125/137/139/153/167/167/177/
42/46/48/54/54/62/74/76/90/90/
3640
pos. = 3594, Min. Weight = 87
pos. = 3262, min pl = 3276, Min. Weight = 54
87/97/125/125/137/137/137/149/163/169/
54/58/58/62/66/68/72/74/82/88/
3840
pos. = 3829, Min. Weight = 53
pos. = 759, min pl = 773, Min. Weight = 42
53/97/115/117/129/133/145/147/151/153/
42/56/58/62/62/62/62/66/70/72/
3880
pos. = 3825, Min. Weight = 91
pos. = 383 min pl = 397, Min. Weight = 54
91/93/121/129/133/133/145/173/173/177/
54/56/60/62/66174/86/90/90/90/
3960
pos. = 3910, Min. Weight = 91
pos. = 1372 min pl = 1386, Min. Weight = 40
91/105/125/125/133/135/137/137/141/143/
40/62/68/78/88/90/90/90/90/90/
4000
pos. = 3977, Min. Weight = 75
pos. = 797 min pl = 804, .Min. Weight = 38
75/85/133/139/149/149/149/153/161/175/
38/42/42/50/5454/54/54/54/56/
4240
pos. = 4134, Min. Weight = 109
pos. = 3392, min pl = 3399, Min. Weight = 40
109/119/143/145/151/153/157/165/169/193/
40/42/42/46/50/66/80/90/90/90/
4480
pos. = 4405, Min. Weight = 89
pos. = 892, min pl = 899, Min. Weight = 38
89/89/89/117/119/137/149/149/159/161/
38/38/42/42/42/46/54/64/90/90/
4560
pos. = 4446, Min. Weight = 113
pos. = 1368, min pl = 1382, Min. Weight = 44
113/121/125/137/149/155/161/165/175/177/
44/58/66/68/70/70/82/84/86/88/
4600
pos. = 4561, Min. Weight = 69
pos. = 3676, min pl = 3683, Min. Weight = 34
69/107/121/129/149/151/153/153/159/161/
34/48/50/58/62/66/66/76/86/90/
4680
pos. = 4656, Min. Weight = 99
pos. = 928, min pl = 942, Min. Weight = 42
99/109/137/143/153/171/171/177/179/187/
42/44/50/58/62/62/64/68/84/86/
4800
pos. = 4765, Min. Weight = 65
pos. = 949, min pl = 963, Min. Weight = 42
65/83/129/133/141/157/159/161/165/169/
42/42/50/56/58/66/66/66/70/70/
4840
pos. = 4780, Min. Weight = 95
pos. = 3858, min pl = 3872, Min. Weight = 42
95/129/141/145/151/157/161/163/173/177/
42/72/80/82/84/90/90/90/90/90/
5040
pos. = 5029, Min. Weight = 157
pos. = 4534, min pl = 4548, Min. Weight = 46
157/165/165/165/175/177/189/189/193/197/
46/54/54/58/60/60/62/76/82/90/
5160
pos. = 5140, Min. Weight = 81
pos. = 2314, min pl = 2321, Min. Weight = 40
81/95/137/137/145/147/165/169/181/185/
40/40/46/50/58/58/58/62/66/84/
5280
pos. = 5285, Min. Weight = 75
pos. = 1579, min pl = 1593, Min. Weight = 42
75/101/109/133/137/165/169/173/181/185/
42/50/62/66/70/72/82/82/90/90/
5400
pos. = 5332, Min. Weight = 99
pos. = 1883, min pl = 1890, Min. Weight = 50
99/117/117/125/133/169/173/179/189/197/
50/52/54/58/72/90/90/90/90/90/
5440
pos. = 5394, Min. Weight = 73
pos. = 4617, min pl = 4624, Min. Weight = 50
73/109/143/169/169/169/173/175/177/181/
50/58/60/62/76/90/90/90/90/90/
5560
pos. = 5520, Min. Weight = 105
pos. = 4441, min pl = 4448, Min. Weight = 38
105/141/143/177/181/181/189/193/193/201/
38/42/46/54/6628/84/88/88/90/
5640
pos. = 5587, Min. Weight = 101
pos. = 1120, min pl = 1134, Min. Weight = 42
101/115/145/153/153/153/165/169/173/173/
42/62/76/86/86/90/90/90/90/90/
5680
pos. = 5585, Min. Weight = 101
pos. = 851, min pl = 858, Min. Weight = 50
101/145/165/173/181/187/187/187/193/197/
50/54/62/14/78/80/82/84/88/88/
5880
pos. = 5806, Min. Weight = 103
pos. = 4410, min pl = 4417, Min. Weight = 42
103/129/161/173/177/189/189/199/201/201/
42/52/72/80/90/90/90/90/90/90/
6160
pos. = 6111, Min. Weight = 129
pos. = 5849, min pl = 5863, Min. Weight = 42
129/155/157/165/187/197/197/205/209/217/
42/44/46/58/90/90/90/90/90/90/
6240
pos. = 6140, Min. Weight = 119
pos. = 305, min pl = 319, Min. Weight = 42
119/119/123/169/185/197/199/203/213/213/
42/42/62/80/90/90/90/90/90/90/
6280
pos. = 6234, Min. Weight = 117
pos. = 5323, min pl = 5337, Min. Weight = 44
117/133/137/161/175/177/195/197/197/199/
44/68/72/72/80/88/90/90/90/90/
6360
pos. = 6280, Min. Weight = 109
pos. = 5081, min pl = 5095, Min. Weight = 38
109/137/141/141/145/147/161/187/201/205/
38/42/46/62/78/86/90/90/90/90/
6640
pos. = 6590, Min. Weight = 101
pos. = 3645, min pl = 3652, Min. Weight = 44
101/109/139/147/175/177/185/209/213/217/
44/54/58/60/64/90/90/90/90/90/
6760
pos. = 6658, Min. Weight = 105
pos. = 670, min pl = 677, Min. Weight = 50
105/125/165/203/215/217/217/229/249/249/
50/70/84/90/90/90/90/90/90/90/
6960
pos. = 6894, Min. Weight = 123
pos. = 5565, min pl = 5572, Min. Weight = 34
123/145/145/161/209/211/217/219/221/223/
34/50/54/62/66/80/82/88/90/90/
7000
pos. = 6912, Min. Weight = 111
pos. = 3846, min pl = 3853, Min. Weight = 38
111/145/145/197/221/221/221/233/235/237/
38/52/54/60/62/72/84/90/90/90/
7080
pos. = 7018, Min. Weight = 117
pos. = 2122, min pl = 2129, Min. Weight = 38
117/129/161/165/169/171/175/175/177/181/
38/42/50/54/54/58/72/84/88/90/
7200
pos. = 6994, Min. Weight = 167
pos. = 6833, min pl = 6840, Min. Weight = 44
167/169/173/185/185/215/217/225/225/229/
44/50/66184/90/90/90/90/90/90/
7360
pos. = 7298, Min. Weight = 81
pos. = 1836, min pl = 1843, Min. Weight = 46
81/157/169/173/173/183/221/221/221/229/
46/60/72/82/82/90/90/90/90/90/
7480
pos. = 7386, Min. Weight = 117
pos. = 1865, min pl = 1872, Min. Weight = 46
117/153/201/207/217/217/227/229/233/233/
46/66/66/72/82/82/90/90/90/90/
7600
pos. = 7528, Min. Weight = 125
pos. = 1893, min pl = 1900, Min. Weight = 46
125/155/157/201/221/223/239/241/245/251/
46/56/58/72/84/90/90/90/90/90/
7680
pos. = 7526, Min. Weight = 133
pos. = 2865, min pl = 2872, Min. Weight = 78
133/153/157/189/207/237/241/241/243/253/
78/90/90/90/90/90/90/90/90/90/
7800
pos. = 7702, Min. Weight = 115
pos. = 1170, min pl = 1184, Min. Weight = 44
115/151/157/181/193/209/241/245/249/251/
44/50/64/72176/80/86/90/90/90/
7960
pos. = 7832, Min. Weight = 135
Pos. = 398, min pl = 405, Min. Weight = 40
135/145/153/169/169/185/217/223/223/237
40/80/86188/90/90/90190/90/90/
8040
pos. = 8006, Min. Weight = 109
pos. = 7054, min pl = 7068, Min. Weight = 56
109/109/111/141/185/201/219/241/249/253
56/68/90/90/90/90/90/90/90/90/
As described above, the novel turbo encoder suppresses a decreases in the free distance dfree caused by one or more information bits of ‘1’ located at the last period of a data frame input to the component encoder, using the internal interleaver, thereby contributing to implementation of a turbo encoder with high performance.
While the invention has been shown and described with reference to a certain preferred embodiment thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.
Kim, Min-goo, Lee, Young-hwan, Kim, Beong-Jo, Choi, Soon-Jae
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
4802170, | Apr 29 1987 | MATROX ELECTRONICS SYSTEMS LIMITED, 1055 ST REGIS BLVD , DORVAL, QUEBEC, H9P 2T4, CANADA | Error disbursing format for digital information and method for organizing same |
5446474, | Jan 19 1994 | Lockheed Corporation; Lockheed Martin Corporation | Redeployable furlable rib reflector |
5446747, | Apr 23 1991 | FRANCE TELECOM S A | Error-correction coding method with at least two systematic convolutional codings in parallel, corresponding iterative decoding method, decoding module and decoder |
5483541, | Sep 13 1993 | TRW Inc.; TRW INC, | Permuted interleaver |
5537420, | May 04 1994 | Vizio, Inc | Convolutional interleaver with reduced memory requirements and address generator therefor |
5548775, | Dec 30 1993 | CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA | System and method for adaptive active monitoring of high speed data streams using finite state machines |
6035434, | Jun 12 1997 | HANGER SOLUTIONS, LLC | System and method for bit interleaving of half-rate speech data |
6101465, | Jun 12 1997 | MICROSEMI SEMICONDUCTOR U S INC | System and method for bit interleaving of full-rate speech data |
6289486, | Jul 30 1997 | Samsung Electronics Co., Ltd. | Adaptive channel encoding method and device |
6304991, | Dec 04 1998 | Qualcomm Incorporated | Turbo code interleaver using linear congruential sequence |
6334197, | Aug 17 1998 | DTVG LICENSING, INC | Turbo code interleaver with near optimal performance |
6374386, | Aug 20 1998 | Nokia Technologies Oy | Device and method for inserting previously known bits in input stage of channel encoder |
6487693, | Aug 06 1998 | SAMSUNG ELECTRONICS, CO , LTD | Channel encoding/decoding in communication system |
6530059, | Jun 01 1998 | HANGER SOLUTIONS, LLC | Tail-biting turbo-code encoder and associated decoder |
6704370, | Oct 09 1998 | Apple Inc | Interleaving methodology and apparatus for CDMA |
KR199736265, | |||
KR199760101, | |||
KRPA18560, | |||
RU2089045, | |||
WO70771, | |||
WO504, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Oct 25 2004 | Samsung Electronics Co., Ltd | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Date | Maintenance Schedule |
Nov 22 2014 | 4 years fee payment window open |
May 22 2015 | 6 months grace period start (w surcharge) |
Nov 22 2015 | patent expiry (for year 4) |
Nov 22 2017 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 22 2018 | 8 years fee payment window open |
May 22 2019 | 6 months grace period start (w surcharge) |
Nov 22 2019 | patent expiry (for year 8) |
Nov 22 2021 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 22 2022 | 12 years fee payment window open |
May 22 2023 | 6 months grace period start (w surcharge) |
Nov 22 2023 | patent expiry (for year 12) |
Nov 22 2025 | 2 years to revive unintentionally abandoned end. (for year 12) |