WO2000010257A1 - Turbo code interleaver with near optimal performance - Google Patents
Turbo code interleaver with near optimal performance Download PDFInfo
- Publication number
- WO2000010257A1 WO2000010257A1 PCT/US1999/018607 US9918607W WO0010257A1 WO 2000010257 A1 WO2000010257 A1 WO 2000010257A1 US 9918607 W US9918607 W US 9918607W WO 0010257 A1 WO0010257 A1 WO 0010257A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- interleaver
- length
- permutations
- interleavers
- basic
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2703—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
- H03M13/271—Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2735—Interleaver using powers of a primitive element, e.g. Galois field [GF] interleaver
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2742—Irregular interleaver wherein the permutation pattern is not obtained by a computation rule, e.g. interleaver based on random generators
- H03M13/2746—S-random interleaver
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/276—Interleaving address generation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2767—Interleaver wherein the permutation pattern or a portion thereof is stored
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2789—Interleaver providing variable interleaving, e.g. variable block sizes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
Definitions
- the present invention relates to error correction in coding schemes for digital communication systems, and more particularly to design optimization for Interleavers of any size within a specified wide range used in such error correction. Even more particularly, the present invention relates to optimization of Turbo Interleavers such that smaller optimal Interleavers can be built from larger optimal Interleavers.
- Interleaving is a process of reordering a sequence of symbols or bits in a predetermined manner.
- Interleaver size is equal to the size of the sequence.
- the apparatus performing the interleaving is referred to herein as an Interleaver.
- Turbo Interleavers are interleavers used in the construction of turbo codes.
- a Turbo Interleaver serves to reorder an input data sequence in a pseudo-random fashion prior to an encoding by a second of the constituent codes.
- S-random Interleavers are one of the most widespread forms of turbo Interleavers.
- the principle behind S-random Interleavers is to avoid mapping neighbor positions of an original input sequence to another neighbor position of the interleaved sequence within a window of size S.
- the design goal in S-random Interleavers is to maximize S while preserving the above principle.
- S-random Interleavers have to be re-designed every time the Interleaver size is changed and there is typically no requirement of any resemblance between the Interleavers with similar sizes.
- the present invention advantageously addresses the needs above as well as other needs by providing a method and apparatus for a turbo Interleaver which employs Interleavers of variable length employing one or more permutations.
- the invention is characterized as a method of interleaving blocks of indexed data of varying length.
- 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 ; and adapting the selected basic
- Interleaver to produce an Interleaver having the desired Interleaver length L .
- a method of interleaving blocks of indexed data of variable length includes the steps of: providing a family of basic Interleavers comprising "two-dimensional permutations" including computing the "two-dimensional permutations", further comprising: writing the indexed data into an Interleaver matrix having one or more rows in each of two dimensions; permuting the indexed data in one or more rows in at least one of the two dimensions to produce "constituent permutations", possibly being different from one row to another row, wherein the constituent permutations are pseudo-random permutations described by a limited number of parameters, wherein an amount of storage required for storing the limited number of parameters is less than that for storing a vector representation of the constituent permutations; reading out the data from the Interleaver matrix; selecting one of the basic Interleavers for use in encoding based upon a desired Interleaver length L ; adapting the selected basic Interleaver to produce an Interleaver having the desired Interleaver length L; wherein the selecting includes:
- a system for interleaving and turbo encoding blocks of indexed data comprises: a parallel concatenation of two or more constituent encoders for recursive convolutional codes of recursion period p; and an Interleaver device coupled to the parallel concatenation 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 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; and adapting the selected one of the basic Interleavers to produce an Interleaver having the desired Interleaver length L.
- FIG. 1 is a block diagram of hardware of a mobile communication system of a type that could be used to implement the teachings of the present invention
- FIG. 2 is a functional block diagram of a Turbo encoder which could be implemented in the system of FIG. 1 ;
- FIG. 3 is a flow chart of steps traversed by the mobile communication system of FIG. 1 and encoding system of FIG. 2 in accordance with an embodiment of the present invention
- FIG. 4 is a diagram of performance curves of Turbo Interleavers such as shown in FIG. 2 of Size 1024 bits at Code Rate , using four (4) decoder iterations comparing Galois Field Interleavers to S-Random Interleavers and to Random Interleavers for Bit Error rate (BER) and Frame Error Rate (FER) performances;
- BER Bit Error rate
- FER Frame Error Rate
- FIG. 5 is a diagram of performance curves of a Turbo Interleaver such as shown in FIG. 2 of Size 1024 at Code Rate , using eight (8) decoder iterations comparing Galois Field Interleavers to S-Random Interleavers and to Random Interleavers for Bit Error Rate (BER) and for Frame Error Rate (FER) ; and
- FIG. 6 is a diagram of performance curves of a Turbo Interleaver such as shown in FIG. 2 of size 1152 bits at Code Rate 1/3, using four (4) decoder iterations comparing Galois Field Interleavers to S-Random Interleavers, Random Interleavers for Bit Error Rate (BER) and for Frame Error Rate (FER) .
- BER Bit Error Rate
- FER Frame Error Rate
- FIG. 1 a block diagram is shown of a digital communication system using Turbo Codes of a type that could be used to implement the teachings of the present invention. It comprises transmitter hardware including: a Transmitter Interface 102, an A/D Converter 104; a Segmentation Processor 106; a Turbo Coder 108; a Burst Formatter 110; a Modulator 112; a Transmitter (RF/IF) 114.
- transmitter hardware including: a Transmitter Interface 102, an A/D Converter 104; a Segmentation Processor 106; a Turbo Coder 108; a Burst Formatter 110; a Modulator 112; a Transmitter (RF/IF) 114.
- RF/IF Transmitter
- It also comprises a Power Supply 124; a Timing and Control Processor 116; a Synthesizer and Oscillator 118; and a Switch 120. It comprises receiver hardware including: a Receiver Interface 134; a Turbo Decoder 132; an Equalizer 130; a Receiver/Demodulator 128; and a Receiver (RF/IF) Preamp Mixer 126.
- receiver hardware including: a Receiver Interface 134; a Turbo Decoder 132; an Equalizer 130; a Receiver/Demodulator 128; and a Receiver (RF/IF) Preamp Mixer 126.
- the transmitter receives an analog signal through a Transmitter Interface 102 and performs an A/D conversion at A/D Connector 104.
- the discrete samples generated from the A/D Converter 104 are fed to Segmentation Processor 106 where fixed-length data units of 44 octets are formed by fragmenting an initial MAC protocol data unit (IMPDU) , and then the fixed length data units passed to the Turbo Coder 108 which uses an Interleaver to pseudo-randomize the input between 2 concatenated encoders and encodes the fixed length data units (data streams) and sends encoded data units (data streams) to the Burst Formatter 110.
- IMPDU initial MAC protocol data unit
- a burst a series of repetitive waveforms at a prescribed time and amplitude lasting a short duration, is formed at Burst Formatter 110 and is passed to Modulator 112 where the burst is modulated by mixing with a carrier waveform of known frequency.
- Transmitter 114 transmits the modulated burst when the switch 120 connects antenna 122 to the Transmitter 114.
- the Synthesizer and Oscillator 118 keeps track of timing for the transmitter (RF/IF) 114 and for the Timing and Control Processor 116 which controls when bursts are formatted.
- the Antenna 122 When the Antenna 122 receives a burst and the receiver (RF/IF) Preamp Mixer 126 is connected to the antenna through the switch 120, the received burst is amplified by the receiver (RF/IF) Preamp Mixer 126, and then demodulated to remove the carrier waveform frequency.
- the Equalizer 130 filters the demodulated burst with filters adjusted so as to produce an enhanced digital signal which is next Turbo decoded by Turbo Decoder 132 through a concatenation of decoders and an Interleaver using feedback from each other decoder to decode information from the received burst.
- Decoded data is converted from digital to analog by D/A Converter 134 and passed through receiver interface 136 to another system for further processing as needed. Since the digital communication system of FIG. 1 would typically communicate using a variety of different information block sizes depending on the service requirements such as for voice or packet data, the embedded turbo code interleaver must be flexible enough to accommodate multiple block sizes without undue sacrifice in turbo code performance.
- FIG. 2 a functional block diagram is shown of a representative turbo code encoder consisting of a parallel, concatenation of two simple constituent encoders (encoders) 10, 10', coupled to an Interleaver with memory (Interleaver).16 and a puncturer 36.
- the first encoder 10 comprises: modular adders (or binary adders) 17, 20, 26, 28, 24, 25, and 30; shift register delay elements (or "shift registers") 18, 21, 22; a switch 12; output connections for an information bit X(t) and for parity bits Y 0 (t), Y ⁇ t).
- the second encoder 10' comprises analogous hardware 17', 20', 26', 28', 24', 25', 30', 18', 21', 22', 12'.
- Output X(t) is coupled to the switch 12 coupled to input X(t) .
- Output Y 0 (t) is coupled to modular adder 24 coupled to modular adder 20 at its output, which is coupled to register 18 and modular adder 17 at its input, which is coupled to switch 12.
- Output Y ⁇ (t) is coupled to modular adder 25 coupled to modular adder 28 at its output and to register 22 at its output.
- Modular adder 28 is coupled to modular adder 26 at its output and register 21 at its output; modular adder 26 is coupled to modular adder 17 at its output and to register 18 at its output.
- Modular adder 30 is coupled to modular adder 17 at its input.
- the two constituent encoders 10, 10' produce parity bits Y 0 (t), Y, (t) and Y 0 '(t), respectively, selected ones of which are removed from an output stream (output) of the two simple constituent encoders 10, 10' according to a prescribed puncturing pattern by the puncturer 36 in order to achieve a desired overall Turbo code rate.
- Both the first encoder (encoder #1) 10 and the second encoder (encoder #2) 10* process the same information bit stream and X(t) (or "information bits"), but the encoder #2 10' processes information bits X(t) in a different order than the order in which encoder #1 10 does since the
- Interleaver 16 processes the information bits X(t) before they reach encoder #2 10 ' .
- the Interleaver 16 serves to decorrelate the outputs of the two simple constituent encoders 10, 10' so that the information bits X(t) causing encoder #1 10 to produce a low-Hamming weight output are unlikely to cause encoder #2 10' to also produce a low-Hamming weight output.
- the Interleaver 16 avoids mapping a "neighbor position" to a corresponding "neighbor position" of the interleaved bit sequence.
- the Interleaver 16 does this in a pseudo-random fashion by re-ordering bit locations in a random-looking predetermined fashion.
- Both encoders 10, 10' produce, in addition to the information bits X(t) (or systematic bits) , parity bits Y 0 (t) and Y (t) which are punctured by puncturer 36 to achieve a desired overall Turbo Code rate.
- Information bit stream X(t) is received at switch 12, and is processed in accordance with several modular adders of above and shift registers above which are hard-wired to represent two (2) numerator polynomials and one denominator polynomial.
- a denominator polynomial d(D), representing Turbo Code "1010” is hardwired by the return feedback connection to modular adder 17 and its respective connections to modular adder 30. Before computing, three shift registers 18, 21, and 22 are first zeroed.
- a first numerator polynomial over a denominator polynomial, representing Turbo Code "1101" is hardwired to return output Y 0 (t) by combining: X(t) with a result of modulator adder 17 to create a first bit W(t) ; the modular sum (second bit) of shift register 18 and W(t)- from the modular adder 20; another zero bit (third bit) indicated by the lack of connection to the register 21; and the modular sum (fourth bit) of another register 22 and a result of modular adder 20 from modular adder 24.
- Information bit stream X(t) is presented in its original, uninterleaved order at a switch 12 and processed by the first encoder 10.
- the first encoder 10 is implemented as a linear feedback shift register whose transfer function is:
- a shift register contents of the shift register 18, 21, 22, are S 0 (t) , S ! (t),S 2 (t) and the information bit X(t) is present at the input to binary adder 17.
- the encoder 10 then produces its two coded output bits (coded bits) Y 0 (t),Y 1 (t) according to the following two summations:
- an interleaver design proposed herein consists of a collection of basic interleavers of various block lengths, an algorithm for selecting one of the basic interleavers to use as a "mother" interleaver, and a method of adapting the mother interleaver to produce a turbo interleaver of a particular desired length.
- the basic interleavers are stored in a memory, which may be located within the Interleaver 16 as in FIG. 2, either as an explicit table of read or write indices or as a smaller set of parameters from which the table of read or write indices can be regenerated according to a predetermined algorithm.
- both interleaving and its inverse (de-interleaving) are used. If the interleaver is implemented to use the permutation ⁇ as write addresses, the de-interleaver can be implemented to use the permutation ⁇ as read addresses. This means that the interleaving and de-interleaving operations can share the same permutation generation hardware of software. It is not necessary to store descriptions of both the interleaver and its de- interleaver separately.
- the permutation ⁇ (04261537) arises from bit- reversal indexing.
- input position 1 has a 3-bit binary representation 001 and is mapped to output position 4, which has 100 as its 3-bit binary representation.
- output position 4 has 100 as its 3-bit binary representation.
- input position 3 (binary 011) is mapped to output position 6 (binary 110) .
- VLSI hardware or on some digital signal processing, which, optionally may be employed within the Interleaver 16 bit- reversed indexing is easily accomplished without special memory storage.
- a family of basic interleavers based on simple recursive formulas could be represented by a small table of parameters stored in the memory.
- the ability to store a small table of parameters rather than the explicit permutations results in a large reduction in memory requirements.
- it is advantageous to design turbo interleavers in this way provided a parameterized family of interleavers results in good turbo code performance.
- a turbo device (either the turbo encoder 108 or the turbo decoder selects one of them for use in implementing an interleaver of specific length L.
- the lengths of the basic interleavers are all different, and the turbo device selects the basic interleaver having a smallest length N among ail basic interleavers whose lengths are at least as big as the desired length L.
- the turbo device (turbo encoder 108, turbo decoder 132) first identifies a set of basic interleavers having a smallest length N among all the basic interleavers whose lengths are at least as big as the desired length L and then selects one of the basic interleavers in the set according to other selection criteria depending on L.
- the process of pruning in accordance herewith, is further explained by an algorithm shown in FIG. 3. For simplicity, the algorithm assumes that the basic interleavers all have lengths that are integral multiples of two.
- Interleaver matrix, 7 2 m, of size 2 where is chosen such that it is the smallest integer for which 2 m ⁇ N s , i.e., the smallest power of two that is larger than or equal to the size N number of elements, N an integer, in the Interleaver I N .
- a Smaller Interleaver, I N is then generated
- This program accepts, consecutively, from a first to a last bit position, any original bit position of an original Interleaver which has a value less than the smaller Interleaver size.
- Pruning is a key aspect of the invention described herein. It is the advantage that the method is easily implemented in either a VLSI or a DSP and so provides an efficient mechanism for providing interleavers of arbitrary lengths without storing separate descriptions for every possible length.
- the set of basic interleavers are designed to be robust with respect to pruning in accordance with principles to be described in conjunction with a detailed, explicit design illustrative of the invention.
- the design of a turbo interleaver should take into account the structure of the constituent recursive convolutional codes in order to ensure that an overall Turbo code has a favorable Hamming weight spectrum ("weight spectrum") leading to good error correction performance.
- the weight spectrum of a linear binary code of length N is a tabulation giving a number of code words of each Hamming weight from 0 to N.
- a Hamming weight is a number of non-zero entries in the code word. Since the constituent code of a Turbo Code is recursive, it takes an input sequence of a Hamming weight of at least two (2) to cause a systematic encoder to leave an all zero state and later to return to the all zero state and therefore to generate a less desirable, low parity Hamming weight sequence.
- a systematic, recursive encoder would generate a parity sequence of high Hamming weight for input sequences having a Hamming weight of one (1) , since the encoded sequence upon leaving the all zero- state can never return to it.
- the probability that both encoders generate encoded sequences that leave the all zero-state and later return to the all zero-state is the highest when the input sequence is of Hamming weight two (2) .
- an input sequence of Hamming weight two (2) can cause the first constituent encoder to generate a finite error event only if the two "l's" in the input sequence are separated by 6+7n (n is an integer) zeros. It is therefore important that any input sequence consisting of exactly two l's separated by 6+7n (neN) zeros should not be mapped by the interleaver to a new sequence with two 1 ' s now separated by 6+7m (meN) zeros. In that way the second encoder 10' will generate high parity Hamming weight when the first encoder generates low parity Hamming weight, and vice versa, corresponding to an input sequence of Hamming weight two (2) .
- I[x] denotes the position that x is mapped to by the Interleaver matrix I.
- each of the basic interleavers implemented by the Interleaver 16 is a two- dimensional block interleaver (or interleaver matrix) of dimension R x C, where R - 2 r is a number rows and C - 2° is a number of columns.
- R x C dimension of dimension
- R - 2 r is a number rows
- C - 2° is a number of columns.
- the p premutation(s) should perform pseudo-random interlacing of top and bottom halves of the interleaver matrix in order to facilitate on-the-fly implementation of pruning. Such interlacing ensures that, if 1(d) is an invalid index for a pruned interleaver, then 1(5+1) will be a valid index, assuming that no basic interleaver is pruned to half its length or beyond.
- the proposed two-dimensional structure is advantageous for use in turbo interleaving for several reasons. Since the turbo interleaver is built in a structured way from simple constituent permutations that can be described by a small set of parameters, implementation complexity is small. When different constituent permutations are used from row to row, a composite interleaver permutation exhibits sufficient randomness to achieve good turbo code performance despite its low complexity. Furthermore, by choosing R and C appropriately, one can balance the "spreading capability" of the interleaver (how well is separates neighboring positions) and its "randomness” properties. The spreading capability of the interleaver is also important for the turbo interleaver in that it helps to enhance the overall "weight spectrum" of the turbo code. In general, spreading capability increases with increasing R, and randomness increases with increasing C.
- the set of basic interleavers have the property that, in general, those of larger length use a larger number of rows R. This is an important aspect of the two-dimensional design.
- the constituent permutations applied to rows of the interleaver matrix are based on a novel class of permutations derived from Galois field arithmetic.
- a Galois Field (GF) with p m elements is denoted as GF(p m ) , wherein p is a prime number and m is any integer greater than one (1) . It can be formed from
- the roots of primitive polynomial p(x) of degree m over GF(2)[x] form a subset of the primitive elements in GF(2 ra ) .
- every element of the field GF(2 m ) can be expressed in terms of l, ⁇ , 2 ,..., c "1 ;
- Equation (5) An exemplary addition is Equation (5) .
- An Interleaver of size 2", I 2 m is formed by the following four (4) steps:
- Equation (9) « is a root of the primitive polynomial p(n) used to construct GF(c) , ⁇ * is primitive in GF(c) and i 0 is a designed integer between 0 and c-2 inclusive, and i b is a predetermined integer, i 0 and i b selected based upon certain design rules to be described.
- log ⁇ 'j(o) is set to (c-1) as a result of the second part of Equation (9) .
- Table 1 is constructed with constants i b and i 0 to permute a Turbo Interleaver matrix of size N s , within the set N, where 16 ⁇ N ⁇ 32.
- the values of Table 1 are fabricated herein for the sake of the following example for the construction of I 32 .
- each of the rows of Interleaver matrix I 32 are shuffled or re-ordered according to any method that interlaces an upper half of the matrix resulting from the above permutations, with a lower half of the matrix.
- One method of doing this is to re-order the rows according to a bit reversal on row index (e.g. as represented by the pattern (00,01,10,11) for a four-row matrix) . From the above example matrix, this results in matrix:
- the preferred basic interleaver structure allows the formulation of simple design criteria that help ensure robustness to pruning.
- W an integer
- An Interleaver of 17 elements is obtained by pruning the interleaver of equation (18) .
- Rule 3 If the Modified Rule 1 and Modified Rule 2 are satisfied with zero occurrence, maximize the variable S such that, neighbor positions within a window size S are not mapped to neighbor positions within a window of size S.
- 1024, 2048 and 4096 are constructed in accordance with the modified rules to yield near optimal Interleaver matrices of any size N where 64 ⁇ N ⁇ 4096.
- Table 2 shows best values of i b and i 0 as defined and determined above, for each row index i for each Interleaver matrix size specified.
- Modified Rule 1 and Modified Rule 2 is completely satisfied except for a small number of
- a computer search determines the constants such that the Modified Rules are satisfied.
- simulation results are shown for a random, S-random and the new Galois Field Interleaver in accordance with the present invention of size 1024 over AWGN channel with overall Turbo code rate 1/2, wherein the encoder consists of eight-state constituent encoders with the transfer function:
- curve 420 shows that a (GF) Interleaver is also the best performing Interleaver.
- FIG. 5 illustrates the corresponding performance for eight (8) decoder iterations.
- Curve 510 illustrates the Bit Error Rate performance compared to the others.
- Curve 520 illustrates the Frame Error Rate performance compared to the others. Results are consistent with FIG. 4.
- FIG. 6 illustrates the performance of Turbo
- the GF Interleaver of size 1152 is formed from a (GF) Interleaver of size 2048 in accordance with this present invention.
- Table 2 can be simplified by further restricting the choice of parameters. For example, the hardware implementation as well as storage requirements are reduced if the parameter i b is made constant and equal to 1. In this case, the parameters describing the constituent permutations to be applied within each row R should be re-optimized with respect to Modified Rules 1 and 2.
- Table 4 shows the near optimal values of integer constant i 0 for each row index i and each Interleaver matrix size, if i b is 1.
- the finite field (s) need not be binary-that is C need not be a power of 2.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU56754/99A AU5675499A (en) | 1998-08-17 | 1999-08-16 | Turbo code interleaver with near optimal performance |
JP2000565610A JP3453122B2 (en) | 1998-08-17 | 1999-08-16 | Turbo code interleaver close to optimum performance |
EP99943715.5A EP1046236B1 (en) | 1998-08-17 | 1999-08-16 | Turbo code interleaver with near optimal performance |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US9680798P | 1998-08-17 | 1998-08-17 | |
US60/096,807 | 1998-08-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2000010257A1 true WO2000010257A1 (en) | 2000-02-24 |
Family
ID=22259164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1999/018607 WO2000010257A1 (en) | 1998-08-17 | 1999-08-16 | Turbo code interleaver with near optimal performance |
Country Status (6)
Country | Link |
---|---|
US (7) | US6334197B1 (en) |
EP (2) | EP1046236B1 (en) |
JP (1) | JP3453122B2 (en) |
KR (1) | KR100373965B1 (en) |
AU (1) | AU5675499A (en) |
WO (1) | WO2000010257A1 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000038333A1 (en) * | 1998-12-21 | 2000-06-29 | Samsung Electronics Co., Ltd. | Interleaving/deinterleaving device and method for communication system |
WO2000062426A1 (en) * | 1999-04-14 | 2000-10-19 | Nortel Networks Limited | Intra-row permutation for turbocode |
JP2001326603A (en) * | 2000-03-29 | 2001-11-22 | Lg Electronics Inc | Hands-off processing unit for communication system and its method |
KR100330238B1 (en) * | 1999-04-02 | 2002-03-25 | 윤종용 | Interleaving and deinterleaving apparatus and method for a communication system |
JP2002319868A (en) * | 2001-04-19 | 2002-10-31 | Nec Corp | Interleaving method and interleaver |
EP1257064A1 (en) * | 2001-05-10 | 2002-11-13 | STMicroelectronics S.r.l. | Prunable S-random block interleaver method and corresponding interleaver |
EP1587217A1 (en) * | 2004-04-15 | 2005-10-19 | Istituto superiore Mario Boella per le Tecnologie dell'Informazione e delle Telecomunicazioni | Pruning methods for the generation of S-random interleavers |
EP2089974A2 (en) * | 2006-11-01 | 2009-08-19 | QUALCOMM Incorporated | Turbo interleaver for high data rates |
US8156390B2 (en) | 2004-12-22 | 2012-04-10 | Qualcomm Incorporated | Pruned bit-reversal interleaver |
WO2016203039A1 (en) | 2015-06-19 | 2016-12-22 | Orange | Design of the interleaver for turbo codes as a function of the puncturing pattern |
WO2018172694A1 (en) | 2017-03-20 | 2018-09-27 | Orange | Construction of turbocodes with compatible rates |
Families Citing this family (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7536624B2 (en) | 2002-01-03 | 2009-05-19 | The Directv Group, Inc. | Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes |
US6370669B1 (en) * | 1998-01-23 | 2002-04-09 | Hughes Electronics Corporation | Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes |
US6430722B1 (en) * | 1998-01-23 | 2002-08-06 | Hughes Electronics Corporation | Forward error correction scheme for data channels using universal turbo codes |
AU5675499A (en) * | 1998-08-17 | 2000-03-06 | Hughes Electronics Corporation | Turbo code interleaver with near optimal performance |
EP2068451B1 (en) | 1998-08-27 | 2013-10-02 | Dtvg Licensing, Inc | Method for a general turbo code trellis termination |
US6772391B1 (en) * | 1998-10-13 | 2004-08-03 | Interdigital Technology Corporation | Hybrid interleaver for turbo codes |
KR100306282B1 (en) * | 1998-12-10 | 2001-11-02 | 윤종용 | Apparatus and for interleaving and deinterleaving frame date in communication system |
JP4031136B2 (en) * | 1999-01-14 | 2008-01-09 | 株式会社東芝 | Encoding / decoding device and disk storage device |
FR2789824B1 (en) * | 1999-02-12 | 2001-05-11 | Canon Kk | METHOD FOR CORRECTING RESIDUAL ERRORS AT THE OUTPUT OF A TURBO-DECODER |
FR2790621B1 (en) * | 1999-03-05 | 2001-12-21 | Canon Kk | INTERLEAVING DEVICE AND METHOD FOR TURBOCODING AND TURBODECODING |
CA2266283C (en) * | 1999-03-19 | 2006-07-11 | Wen Tong | Data interleaver and method of interleaving data |
US6721908B1 (en) * | 1999-04-02 | 2004-04-13 | Samsung Electronics Co., Ltd. | Interleaving/deinterleaving apparatus and method for a communication system |
WO2000062425A1 (en) * | 1999-04-07 | 2000-10-19 | Siemens Aktiengesellschaft | Method for coding channels |
FI106758B (en) * | 1999-04-16 | 2001-03-30 | Nokia Networks Oy | Segmentation mechanism for block encoder |
CA2337918C (en) * | 1999-05-19 | 2006-02-21 | Samsung Electronics Co., Ltd. | Turbo interleaving apparatus and method |
US6643332B1 (en) * | 1999-07-09 | 2003-11-04 | Lsi Logic Corporation | Method and apparatus for multi-level coding of digital signals |
AU4710501A (en) * | 1999-12-03 | 2001-06-18 | Broadcom Corporation | Interspersed training for turbo coded modulation |
US6549998B1 (en) * | 2000-01-14 | 2003-04-15 | Agere Systems Inc. | Address generator for interleaving data |
JP4364405B2 (en) * | 2000-06-12 | 2009-11-18 | 三菱電機株式会社 | Communication apparatus and communication method |
CN1193537C (en) * | 2000-07-04 | 2005-03-16 | 皇家菲利浦电子有限公司 | Substitution-box for symmetric-key ciphers |
US7251285B2 (en) * | 2000-07-11 | 2007-07-31 | Lg Electronics Inc. | Method and apparatus for transmitting and receiving using turbo code |
US6854077B2 (en) * | 2000-08-05 | 2005-02-08 | Motorola, Inc. | Apparatus and method for providing turbo code interleaving in a communications system |
WO2002025887A1 (en) * | 2000-09-21 | 2002-03-28 | Matsushita Electric Industrial Co., Ltd. | Wireless transmission device and transmission signal mapping method |
US6725287B1 (en) * | 2000-11-09 | 2004-04-20 | Elity Systems, Inc. | Method and system for capturing streaming data by an actionable information engine |
US7068701B2 (en) * | 2001-04-16 | 2006-06-27 | Motorola, Inc. | Data transmission and reception within a spread-spectrum communication system |
CA2390096C (en) * | 2001-06-11 | 2007-12-18 | Stewart N. Crozier | High-performance low-memory interleaver banks for turbo-codes |
JP3880964B2 (en) * | 2002-02-06 | 2007-02-14 | サムスン エレクトロニクス カンパニー リミテッド | Interleaver and interleaving method in communication system |
JP3735579B2 (en) * | 2002-02-26 | 2006-01-18 | 株式会社東芝 | Disk storage device and data recording / reproducing method |
JP3607683B2 (en) * | 2002-03-13 | 2005-01-05 | 株式会社東芝 | Disk storage device and data recording / reproducing method |
US7082168B2 (en) * | 2002-05-21 | 2006-07-25 | Coffey John T | Methods and apparatus for self-inverting turbo code interleaving with high separation and dispersion |
US7003703B2 (en) * | 2002-06-21 | 2006-02-21 | Sandbridge Technologies, Inc. | Method of interleaving/deinterleaving in a communication system |
JP4040943B2 (en) * | 2002-10-01 | 2008-01-30 | 株式会社東芝 | Disk storage device and data reproduction method |
JP3749889B2 (en) * | 2002-10-17 | 2006-03-01 | 株式会社東芝 | Signal processing device to which PRML detection is applied, disk storage device having the device, and signal processing method for feedback control in the device |
US8650470B2 (en) | 2003-03-20 | 2014-02-11 | Arm Limited | Error recovery within integrated circuit |
FR2853976B1 (en) * | 2003-04-16 | 2005-06-03 | Canon Kk | CODING OF INFORMATION BY CODE OF ALGEBRA GEOMETRY PROVIDING TWO DECODING OPTIONS |
US20040267968A1 (en) * | 2003-06-25 | 2004-12-30 | Agilent Technologies Belgium S.A./N.V | Implementation of a column interleaving function with a limited amount of columns |
US8077743B2 (en) * | 2003-11-18 | 2011-12-13 | Qualcomm Incorporated | Method and apparatus for offset interleaving of vocoder frames |
US7509556B2 (en) * | 2003-11-20 | 2009-03-24 | Seagate Technology Llc | Method and apparatus for combining output of different type interleavers based on an input data sequence to obtain a combined output |
US7570695B2 (en) * | 2003-12-18 | 2009-08-04 | Intel Corporation | Method and adaptive bit interleaver for wideband systems using adaptive bit loading |
US7394412B2 (en) * | 2004-01-15 | 2008-07-01 | Texas Instruments Incorporated | Unified interleaver/de-interleaver |
US7568145B2 (en) * | 2004-04-15 | 2009-07-28 | Libero Dinoi | Prunable S-random interleavers |
US7392464B1 (en) * | 2004-04-30 | 2008-06-24 | Marvell International Ltd. | Universal parity encoder |
KR100744367B1 (en) * | 2004-05-24 | 2007-07-30 | 삼성전자주식회사 | The Apparatus And Method for Turbo Decording With Variable sliding window size |
DE102004044221A1 (en) * | 2004-09-14 | 2006-03-16 | Boehringer Ingelheim Pharma Gmbh & Co. Kg | New 3-methyl-7-butynyl xanthines, their preparation and their use as pharmaceuticals |
CN101040499A (en) * | 2004-10-13 | 2007-09-19 | 科胜讯系统公司 | Method and system for a turbo trellis coded modulation scheme for communication systems |
KR101131323B1 (en) * | 2004-11-30 | 2012-04-04 | 삼성전자주식회사 | Apparatus and method for channel interleaving in a wireless communication system |
US7768988B2 (en) * | 2005-02-22 | 2010-08-03 | Intel Corporation | Method and apparatus to perform network medium reservation in a wireless network |
US7437650B2 (en) * | 2005-04-12 | 2008-10-14 | Agere Systems Inc. | Pre-emptive interleaver address generator for turbo decoders |
US7376882B2 (en) * | 2005-04-14 | 2008-05-20 | The Boeing Company | Adaptable channel compensation for reliable communication over fading communication links |
US20060282713A1 (en) * | 2005-05-31 | 2006-12-14 | Yi Weng | Efficient interleaver/de-interleaver desigh for the turbo decoder in a 3g wcdma system |
US7793169B2 (en) * | 2005-10-19 | 2010-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Intelligent table-driven interleaving |
CN100517983C (en) * | 2005-10-27 | 2009-07-22 | 中国科学院研究生院 | Coding-decoding method for integrated source and channel variable-length symbol Turbo |
KR100764011B1 (en) * | 2005-12-10 | 2007-10-08 | 한국전자통신연구원 | Apparatus and method for operating an interleaving and deinterleaving memory |
JP4436315B2 (en) * | 2005-12-26 | 2010-03-24 | 京セラ株式会社 | Convolutional encoder, communication apparatus, and convolutional encoding method |
FR2897742A1 (en) * | 2006-02-17 | 2007-08-24 | France Telecom | PERFECT ENCODING / DECODING OF DIGITAL SIGNALS, IN PARTICULAR VECTOR QUANTIFICATION WITH PERMUTATION CODES |
EP2001134A4 (en) * | 2006-03-24 | 2009-06-24 | Mitsubishi Electric Corp | Interleaving method and communication apparatus |
KR101165638B1 (en) | 2006-10-24 | 2012-07-17 | 엘지전자 주식회사 | Method For Providing Interleaver, Method For Interleaving, Both With Continuous Length, And Turbo Encoder Using The Same |
KR101276829B1 (en) * | 2006-10-30 | 2013-06-18 | 엘지전자 주식회사 | Method For Providing Interleaver, Method For Interleaving, Both With Continuous Length, And Method For Decoding Using The Same |
WO2008057041A2 (en) * | 2006-11-10 | 2008-05-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Quadratic permutation polynomial interleaver/de-interleaver for turbo codes |
US8959403B2 (en) | 2006-11-10 | 2015-02-17 | Optis Wireless Technology, Llc | QPP interleaver/de-interleaver for turbo codes |
US8065588B2 (en) * | 2007-01-17 | 2011-11-22 | Broadcom Corporation | Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave |
US7804893B2 (en) * | 2007-04-26 | 2010-09-28 | Broadcom Corporation | Feedback of reinterleaved correctly decoded data block to decoder for use in additional channel decoding operations of channel coded word containing data block |
US7848400B2 (en) * | 2007-04-26 | 2010-12-07 | Broadcom Corporation | Retransmission of reordered/coded data in response to presumed receiver decoding failure |
KR101133907B1 (en) * | 2007-07-06 | 2012-04-12 | 주식회사 코아로직 | Apparatus and method for de-interleave and interleaving index procucing and computer readable medium stored thereon computer executable instruction for performing the method |
WO2009014298A1 (en) * | 2007-07-20 | 2009-01-29 | Electronics And Telecommunications Research Institute | Address generation apparatus and method of data interleaver/deinterleaver |
US8249513B2 (en) | 2007-08-13 | 2012-08-21 | Samsung Electronics Co., Ltd. | System and method for training different types of directional antennas that adapts the training sequence length to the number of antennas |
JP2009077371A (en) * | 2007-08-30 | 2009-04-09 | Hitachi Communication Technologies Ltd | Interleaving method, transmitter, radio device, and radio communication system |
US8077693B2 (en) | 2007-09-19 | 2011-12-13 | Samsung Electronics Co., Ltd. | Resource remapping and regrouping in a wireless communication system |
WO2009038408A2 (en) * | 2007-09-21 | 2009-03-26 | Lg Electronics Inc. | Digital broadcasting system and data processing method |
US8549376B1 (en) * | 2007-12-13 | 2013-10-01 | Rockwell Collins, Inc. | Vector turbo codes |
EP2383920B1 (en) | 2007-12-20 | 2014-07-30 | Optis Wireless Technology, LLC | Control channel signaling using a common signaling field for transport format and redundancy version |
US8165595B2 (en) | 2008-01-25 | 2012-04-24 | Samsung Electronics Co., Ltd. | System and method for multi-stage antenna training of beamforming vectors |
US8051037B2 (en) * | 2008-01-25 | 2011-11-01 | Samsung Electronics Co., Ltd. | System and method for pseudorandom permutation for interleaving in wireless communications |
US8280445B2 (en) | 2008-02-13 | 2012-10-02 | Samsung Electronics Co., Ltd. | System and method for antenna training of beamforming vectors by selective use of beam level training |
CN101610089B (en) * | 2008-06-17 | 2013-06-05 | 中兴通讯股份有限公司 | Methods and devices for secondly interlacing and deinterlacing |
US8478204B2 (en) | 2008-07-14 | 2013-07-02 | Samsung Electronics Co., Ltd. | System and method for antenna training of beamforming vectors having reuse of directional information |
US8219782B2 (en) * | 2008-09-18 | 2012-07-10 | Xilinx, Inc. | Address generation |
JP5356073B2 (en) * | 2009-03-06 | 2013-12-04 | シャープ株式会社 | Encoding device, receiving device, wireless communication system, puncture pattern selection method and program thereof |
US9130728B2 (en) * | 2009-06-16 | 2015-09-08 | Intel Mobile Communications GmbH | Reduced contention storage for channel coding |
US8495476B2 (en) * | 2009-12-17 | 2013-07-23 | Samsung Electronics Co., Ltd | System and method for coding and interleaving for short frame support in visible light communication |
CN102792597A (en) * | 2010-03-08 | 2012-11-21 | 日本电气株式会社 | Error correcting code decoding device, error correcting code decoding method and error correcting code decoding program |
US8583993B2 (en) * | 2011-06-17 | 2013-11-12 | Lsi Corporation | Turbo parallel concatenated convolutional code implementation on multiple-issue processor cores |
US20150058704A1 (en) * | 2013-08-23 | 2015-02-26 | Sirius Xm Radio Inc. | Parameterized interleaver for a multi-rate system |
KR102278366B1 (en) * | 2014-11-04 | 2021-07-19 | 삼성전자주식회사 | Method and apparatus for interleaving in a communication system |
US10084483B2 (en) | 2015-08-05 | 2018-09-25 | Microsoft Technology Licensing, Llc | Interleaving information for media data |
FR3091093A1 (en) * | 2018-12-20 | 2020-06-26 | Orange | A method of generating a signal using a turbo-encoder, corresponding device and computer program. |
CN112165337B (en) * | 2020-09-30 | 2024-01-26 | 电子科技大学 | Convolutional code random interleaving sequence interleaving relation estimation method based on linear constraint |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0300139A2 (en) * | 1987-07-20 | 1989-01-25 | International Business Machines Corporation | Error correcting code for B-bit-per-chip memory with reduced redundancy |
WO1996037050A1 (en) * | 1995-05-15 | 1996-11-21 | Advanced Hardware Architectures, Inc. | Reconfigurable interleaver/deinterleaver and address generator for data streams interleaved according to one of a plurality of interleaving schemes |
US5742612A (en) * | 1993-06-02 | 1998-04-21 | Alcatel Radiotelephone | Method and device for interleaving a sequence of data elements |
EP0952673A1 (en) * | 1997-11-10 | 1999-10-27 | Ntt Mobile Communications Network Inc. | Interleaving method, interleaving apparatus, and recording medium in which interleave pattern generating program is recorded |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62190932A (en) | 1986-02-18 | 1987-08-21 | Nippon Telegr & Teleph Corp <Ntt> | Interleaving system |
US5237320A (en) * | 1986-09-30 | 1993-08-17 | Nec Corporation | Radio paging system with different transmission speeds and receiver therefor |
US5063533A (en) | 1989-04-10 | 1991-11-05 | Motorola, Inc. | Reconfigurable deinterleaver/interleaver for block oriented data |
US5056112A (en) * | 1989-07-28 | 1991-10-08 | At&T Bell Laboratories | Interleaving in coded modulation for mobile radio |
US5159608A (en) * | 1991-08-28 | 1992-10-27 | Falconer David D | Method and apparatus for using orthogonal coding in a communication system |
JP2999110B2 (en) | 1993-12-28 | 2000-01-17 | 株式会社ピーエフユー | Wireless communication method and wireless communication device |
US5519734A (en) * | 1994-08-15 | 1996-05-21 | Lsi Logic Corporation | Synchronization arrangement for decoder-de-interleaver |
US5822359A (en) | 1994-10-17 | 1998-10-13 | Motorola, Inc. | Coherent random access channel in a spread-spectrum communication system and method |
US5687095A (en) | 1994-11-01 | 1997-11-11 | Lucent Technologies Inc. | Video transmission rate matching for multimedia communication systems |
GB9508885D0 (en) | 1995-05-02 | 1995-06-21 | Plessey Semiconductors Ltd | Wireless local area networks |
DE19520987A1 (en) | 1995-06-08 | 1996-12-12 | Siemens Ag | Terminating trellis in recursive systematic convolutional code for data security applications |
ES2176280T3 (en) * | 1995-08-21 | 2002-12-01 | Cit Alcatel | METHOD FOR INTERCALING DATA TABLES, ERROR CHRONOLOGICAL CORRECTION DEVICE AND MODULATOR THAT INCLUDES SUCH DEVICE. |
US5895398A (en) | 1996-02-02 | 1999-04-20 | The Regents Of The University Of California | Method of using a clot capture coil |
US5699365A (en) * | 1996-03-27 | 1997-12-16 | Motorola, Inc. | Apparatus and method for adaptive forward error correction in data communications |
US5721745A (en) | 1996-04-19 | 1998-02-24 | General Electric Company | Parallel concatenated tail-biting convolutional code and decoder therefor |
US5910182A (en) | 1996-05-03 | 1999-06-08 | Ericsson Inc. | Data communications systems and methods using interspersed error detection bits |
US6023783A (en) | 1996-05-15 | 2000-02-08 | California Institute Of Technology | Hybrid concatenated codes and iterative decoding |
US5859840A (en) | 1996-05-31 | 1999-01-12 | Qualcomm Incorporated | Spread spectrum communication system which defines channel groups comprising selected channels that are additional to a primary channel and transmits group messages during call set up |
KR100223762B1 (en) * | 1996-06-25 | 1999-10-15 | 김영환 | Bariable code rate puncturer |
US5978414A (en) | 1996-07-03 | 1999-11-02 | Matsushita Electric Industrial Co., Ltd. | Transmission rate judging unit |
US5996104A (en) * | 1996-09-13 | 1999-11-30 | Herzberg; Hanan | System for coding system |
US5751725A (en) | 1996-10-18 | 1998-05-12 | Qualcomm Incorporated | Method and apparatus for determining the rate of received data in a variable rate communication system |
EP0848524A1 (en) | 1996-12-10 | 1998-06-17 | Koninklijke Philips Electronics N.V. | Punctured, trellis coded QAM, with interative decoding |
US5881093A (en) * | 1997-02-10 | 1999-03-09 | Motorola, Inc. | Method of interleaving a convolutionally coded signal in a spread spectrum communication system |
US5983384A (en) | 1997-04-21 | 1999-11-09 | General Electric Company | Turbo-coding with staged data transmission and processing |
WO1999007076A2 (en) | 1997-07-30 | 1999-02-11 | Samsung Electronics Co., Ltd. | Adaptive channel encoding method and device |
KR19990012821A (en) * | 1997-07-31 | 1999-02-25 | 홍성용 | Electromagnetic wave absorber composition and its manufacturing method, electromagnetic wave absorbing coating composition, its manufacturing method and its coating method |
US5907582A (en) | 1997-08-11 | 1999-05-25 | Orbital Sciences Corporation | System for turbo-coded satellite digital audio broadcasting |
DE19736653C1 (en) | 1997-08-22 | 1998-12-10 | Siemens Ag | Service quality estimation method for channels of digital transmission system |
JPH1168734A (en) | 1997-08-25 | 1999-03-09 | Oki Electric Ind Co Ltd | Interleave device and de-interleave device |
US6198748B1 (en) * | 1997-09-02 | 2001-03-06 | Motorola, Inc. | Data transmission system and method |
US6330672B1 (en) * | 1997-12-03 | 2001-12-11 | At&T Corp. | Method and apparatus for watermarking digital bitstreams |
US6088387A (en) | 1997-12-31 | 2000-07-11 | At&T Corp. | Multi-channel parallel/serial concatenated convolutional codes and trellis coded modulation encoder/decoder |
US6430722B1 (en) | 1998-01-23 | 2002-08-06 | Hughes Electronics Corporation | Forward error correction scheme for data channels using universal turbo codes |
US6370669B1 (en) | 1998-01-23 | 2002-04-09 | Hughes Electronics Corporation | Sets of rate-compatible universal turbo codes nearly optimized over various rates and interleaver sizes |
JP3986150B2 (en) * | 1998-01-27 | 2007-10-03 | 興和株式会社 | Digital watermarking to one-dimensional data |
US6339834B1 (en) * | 1998-05-28 | 2002-01-15 | Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communication Research Centre | Interleaving with golden section increments |
US6460161B1 (en) | 1998-06-01 | 2002-10-01 | Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre | Processing of state histories in Viterbi decoding |
US5978365A (en) | 1998-07-07 | 1999-11-02 | Orbital Sciences Corporation | Communications system handoff operation combining turbo coding and soft handoff techniques |
US6347385B1 (en) * | 1998-08-03 | 2002-02-12 | Nortel Networks Limited | Interleavers for turbo code |
AU5675499A (en) * | 1998-08-17 | 2000-03-06 | Hughes Electronics Corporation | Turbo code interleaver with near optimal performance |
JP2000068862A (en) | 1998-08-19 | 2000-03-03 | Fujitsu Ltd | Error correction coder |
EP2068451B1 (en) | 1998-08-27 | 2013-10-02 | Dtvg Licensing, Inc | Method for a general turbo code trellis termination |
KR100315708B1 (en) | 1998-12-31 | 2002-02-28 | 윤종용 | Apparatus and method for puncturing a turbo encoder in a mobile communication system |
KR100347501B1 (en) | 1999-02-11 | 2002-08-03 | 휴우즈 일렉트로닉스 코오포레이션 | Optimized rate-compatible turbo encoding |
-
1999
- 1999-08-16 AU AU56754/99A patent/AU5675499A/en not_active Abandoned
- 1999-08-16 WO PCT/US1999/018607 patent/WO2000010257A1/en active IP Right Grant
- 1999-08-16 KR KR10-2000-7004074A patent/KR100373965B1/en not_active IP Right Cessation
- 1999-08-16 EP EP99943715.5A patent/EP1046236B1/en not_active Expired - Lifetime
- 1999-08-16 US US09/375,067 patent/US6334197B1/en not_active Expired - Lifetime
- 1999-08-16 EP EP09015143.2A patent/EP2173036B1/en not_active Expired - Lifetime
- 1999-08-16 JP JP2000565610A patent/JP3453122B2/en not_active Expired - Lifetime
-
2001
- 2001-12-19 US US10/024,834 patent/US6925587B2/en not_active Expired - Lifetime
-
2005
- 2005-03-30 US US11/051,585 patent/US7526687B2/en not_active Expired - Lifetime
-
2007
- 2007-10-31 US US11/980,915 patent/US7657797B2/en not_active Expired - Fee Related
- 2007-10-31 US US11/980,916 patent/US7761750B2/en not_active Expired - Fee Related
- 2007-10-31 US US11/980,917 patent/US8321725B2/en not_active Expired - Fee Related
-
2012
- 2012-11-05 US US13/668,665 patent/US8671324B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0300139A2 (en) * | 1987-07-20 | 1989-01-25 | International Business Machines Corporation | Error correcting code for B-bit-per-chip memory with reduced redundancy |
US5742612A (en) * | 1993-06-02 | 1998-04-21 | Alcatel Radiotelephone | Method and device for interleaving a sequence of data elements |
WO1996037050A1 (en) * | 1995-05-15 | 1996-11-21 | Advanced Hardware Architectures, Inc. | Reconfigurable interleaver/deinterleaver and address generator for data streams interleaved according to one of a plurality of interleaving schemes |
EP0952673A1 (en) * | 1997-11-10 | 1999-10-27 | Ntt Mobile Communications Network Inc. | Interleaving method, interleaving apparatus, and recording medium in which interleave pattern generating program is recorded |
Non-Patent Citations (2)
Title |
---|
BERROU C ET AL: "NEAR SHANNON LIMIT ERROR - CORRECTING CODING AND DECODING: TURBO-CODES (1)", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC),US,NEW YORK, IEEE, vol. -, pages 1064-1070, XP000371240, ISBN: 0-7803-0950-2 * |
MARIC S V: "CLASS OF ALGEBRAICALLY CONSTRUCTED PERMUTATIONS FOR USE IN PSEUDORANDOM INTERLEAVERS", ELECTRONICS LETTERS,GB,IEE STEVENAGE, vol. 30, no. 17, pages 1378-1379, XP000472069, ISSN: 0013-5194 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000038333A1 (en) * | 1998-12-21 | 2000-06-29 | Samsung Electronics Co., Ltd. | Interleaving/deinterleaving device and method for communication system |
KR100330238B1 (en) * | 1999-04-02 | 2002-03-25 | 윤종용 | Interleaving and deinterleaving apparatus and method for a communication system |
WO2000062426A1 (en) * | 1999-04-14 | 2000-10-19 | Nortel Networks Limited | Intra-row permutation for turbocode |
US6543013B1 (en) | 1999-04-14 | 2003-04-01 | Nortel Networks Limited | Intra-row permutation for turbo code |
JP2001326603A (en) * | 2000-03-29 | 2001-11-22 | Lg Electronics Inc | Hands-off processing unit for communication system and its method |
JP4673991B2 (en) * | 2000-03-29 | 2011-04-20 | エルジー エレクトロニクス インコーポレイティド | Communication system handoff processing apparatus and method |
JP2002319868A (en) * | 2001-04-19 | 2002-10-31 | Nec Corp | Interleaving method and interleaver |
JP4507443B2 (en) * | 2001-04-19 | 2010-07-21 | 日本電気株式会社 | Interleaving method and interleaving apparatus |
US7210075B2 (en) | 2001-05-10 | 2007-04-24 | Stmicroelectronics S.R.L. | Prunable S-random block interleaver method and corresponding interleaver |
EP1257064A1 (en) * | 2001-05-10 | 2002-11-13 | STMicroelectronics S.r.l. | Prunable S-random block interleaver method and corresponding interleaver |
EP1587217A1 (en) * | 2004-04-15 | 2005-10-19 | Istituto superiore Mario Boella per le Tecnologie dell'Informazione e delle Telecomunicazioni | Pruning methods for the generation of S-random interleavers |
US8156390B2 (en) | 2004-12-22 | 2012-04-10 | Qualcomm Incorporated | Pruned bit-reversal interleaver |
US8156389B2 (en) | 2004-12-22 | 2012-04-10 | Qualcomm Incorporated | Pruned bit-reversal interleaver |
EP2089974A2 (en) * | 2006-11-01 | 2009-08-19 | QUALCOMM Incorporated | Turbo interleaver for high data rates |
US8583983B2 (en) | 2006-11-01 | 2013-11-12 | Qualcomm Incorporated | Turbo interleaver for high data rates |
WO2016203039A1 (en) | 2015-06-19 | 2016-12-22 | Orange | Design of the interleaver for turbo codes as a function of the puncturing pattern |
US10560124B2 (en) | 2015-06-19 | 2020-02-11 | Orange | Interleaver for turbo codes as a function of the puncturing pattern |
WO2018172694A1 (en) | 2017-03-20 | 2018-09-27 | Orange | Construction of turbocodes with compatible rates |
Also Published As
Publication number | Publication date |
---|---|
US20130061109A1 (en) | 2013-03-07 |
KR20010015765A (en) | 2001-02-26 |
US7761750B2 (en) | 2010-07-20 |
US20080059727A1 (en) | 2008-03-06 |
EP2173036B1 (en) | 2014-05-14 |
US20080065948A1 (en) | 2008-03-13 |
US20050166125A1 (en) | 2005-07-28 |
EP1046236A1 (en) | 2000-10-25 |
US7657797B2 (en) | 2010-02-02 |
US8321725B2 (en) | 2012-11-27 |
AU5675499A (en) | 2000-03-06 |
US6334197B1 (en) | 2001-12-25 |
US7526687B2 (en) | 2009-04-28 |
EP2173036A3 (en) | 2013-03-06 |
JP2002523915A (en) | 2002-07-30 |
JP3453122B2 (en) | 2003-10-06 |
US8671324B2 (en) | 2014-03-11 |
US6925587B2 (en) | 2005-08-02 |
EP1046236B1 (en) | 2016-02-24 |
EP2173036A2 (en) | 2010-04-07 |
US20020087923A1 (en) | 2002-07-04 |
KR100373965B1 (en) | 2003-02-26 |
US20080059847A1 (en) | 2008-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6334197B1 (en) | Turbo code interleaver with near optimal performance | |
AU763873B2 (en) | Turbo code interleaver using linear congruential sequences | |
CA2337161C (en) | Interleaving apparatus and method for use in serial concatenated convolutional code encoder in a mobile communication system | |
EP1030455B1 (en) | Interleaving method, interleaving apparatus, turbo encoding method, and turbo encoder | |
US20150180509A9 (en) | Methods, apparatus, and systems for coding with constrained interleaving | |
EP1103102B1 (en) | Improved interleavers for turbo code | |
EP1926215B1 (en) | Parallel concatenated zigzag codes with UMTS turbo interleavers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1999943715 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020007004074 Country of ref document: KR |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2000 565610 Kind code of ref document: A Format of ref document f/p: F |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWP | Wipo information: published in national office |
Ref document number: 1999943715 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 1020007004074 Country of ref document: KR |
|
WWG | Wipo information: grant in national office |
Ref document number: 1020007004074 Country of ref document: KR |