The present invention involves padding the bit sequence in the first interleaver. The present method adds to an end of the bit sequence a sufficient number of padding bits l to permit modulus 16 operation of the bit sequence. After performing the interleaving, l bits are removed from an end of the interleaved sequence. This allows the interleaving to be performed in 16-bit segments simultaneously.
|
1. A method of interleaving of a first interleaver of a two interleaver forward error correction transmitter, the method comprising:
prior to the first interleaving of a sequence of bits, adding to an end of the bit sequence a sufficient number l of padding bits to permit modulus sixteen operation of the bit sequence;
performing the first interleaving of the bit sequence;
removing l bits from an end of the interleaved bit sequence; and
providing the interleaved bit sequence to a second interleaver of the transmitter.
4. A method of interleaving of a first interleaver of a two interleaver forward error correction transmitter, the method comprising:
prior to interleaving a sequence of bits, adding to an end of the bit sequence a sufficient number l of padding bits to permit modulus sixteen operation of the bit sequence;
performing interleaving of the bit sequence; and
removing l bits from an end of the interleaved bit sequence, wherein the number l, as determined by:
L=16−Mod16(Xi) where, Mod16 represent modulus sixteen operation, and Xi is the input bit sequence.
3. The method of
7. The method of
8. The method of
10. The apparatus of
11. The apparatus of
|
The present invention relates generally to communication systems of coded data and, more specifically, to an improvement in the first interleaver of a two interleaver transmitter.
Although the present invention will be described with respect to code division multiple access (CDMA) system, the same method can be used on other interleavers in other systems. General and specific references will also be made to the CDMA standard 3GPP TS 25.212: “Multiplexing and channel coding (FDD)”.
Interleaving is an important function specific to the most digital communication protocols. It provides the means to undermine the burst noise that frequently affects the quality of reception in the digital communication systems as discussed by K. S. Andrews, C. Heegard, and D. Kozen in A Theory of Interleavers, Technical Report TR97-1634, Department of Computer Science, June 1997; and Chris Heegard and Stephen B. Wicker in Turbo Coding, Kluwer Academic Publishers, 2000.
Bit wise block interleavers represent a tremendous challenge for programmable micro-computing machines. An efficient software implementation for the interleavers offers multiple advantages, such as re-programmability, power and computation efficiency, fast development time, and eliminating the need for dedicated hardware block.
Specific to CDMA communication protocol, the first block interleaver function deals with block sizes containing a variable number of bits depending on the propagation conditions. Although padding bits in the second interleaver followed by pruning is common, there is no discussion of padding bits in the first interleaver.
The present invention involves padding the bit sequence in the first interleaver. The present method adds to an end of the bit sequence a sufficient number of padded bits L to permit modulus 16 operation of the bit sequence. After performing the interleaving, L bits are removed from an end of the interleaved sequence. This allows the interleaving to be performed in 16-bit segments simultaneously.
The adding can include adding randomly alternating zero and one bits. The number of L bits is determined by:
L=16−Mod16(Xi)
where, Mod16 represent modulus sixteen operation, and Xi is the input bit sequence.
The method applies to any block size and executes 16 bits or multiples of 16 bits interleaving at once. The interleaving is performed in software and without forming a matrix of the bit sequence. The toll paid is a small number of errors introduced by this method. The errors are corrected at the receiver by the forward error correcting (FEC) function.
These and other aspects of the present invention will become apparent from the following detailed description of the invention, when considered in conjunction with accompanying drawings.
A typical receiver is shown in
A method for the first interleaver suitable for efficient software implementation is presented. The method takes advantage of the integer unit of the micro-computing machine by performing 16-bit interleaving at once. The interleaving is performed in software and without forming a matrix of the bit sequence. By employing this method, a small error, inverse proportional with the number of interleaved bits will be introduced. At the receiver end, the errors will be corrected by the FEC (Forward Error Correction) unit.
The method, as illustrated in
Next, L padding bits are added to an end of the bit sequence at 14 to produce a bit sequence Xi+L. Next, interleaving is performed on the padded sequence at 16 and produces sequence Yi. Next, L bits are removed from an end of the sequence Yi at 18. The resulting output bit sequence is Yi−L at 20. The sequence is farther processed through the flow chart of
It should be noted that the L bits may be added at the beginning or the end of the sequence to Xi, and L number bits may be removed from either end. The removed bits may be at the same or at a different end of the sequence, as was added to Xi. This makes no difference in that the results are the same. There is no attempt to prune the added bits from the interleave sequence Yi at the exact location of the padded bits. Pruning would remove the bits in the interleave sequence Yi where they occurred after interleaving. This takes time and requires shuffling of the data bit sequence to make it continuous and, therefore, is wasteful in time and calculations.
The maximum number of padding bits L is 15. Thus, in the worst case, there will be 15 erroneous bits in the output bit sequence Yi−L. Because of the interleaving process moving the padded bits from one end of the bit sequence to different positions throughout the bit sequence, it is very unlikely that all padding bits will be left in the interleave sequence after L bits are removed. The padded bits are preferably random alternating zero and one bits, which reduces the possible number of incorrect bits. All zero or all one bits may also be used as the padded bits. Statistically, 8 of the 15 would probably be incorrect.
The number of padding bits L may be expressed or determined by the following formula:
L=16−Mod16(Xi)
where, Mod16 represent modulus sixteen operation, and Xi is the input bit, sequence.
By employing this method, a small error, inverse proportional with the number of interleaved bits will be introduced. At the receiver end, the errors will be corrected by the FEC (Forward Error Correction) unit.
Interleaver operation of step 16 may be that as described in the CDMA standard 3GPP TS 25.212: “Multiplexing and channel coding (FDD)” as follows:
The input bit sequence to the block interleaver is denoted by x
The rows of the matrix are numbered 0, 1, . . . , R1-1 from top to bottom.
TABLE 1
Inter-column permutation patterns for 1st interleaving
Inter-column permutation patterns
Number of
<P1C1(0), P1C1(1), . . . ,
TTI
columns C1
P1C1(C1 − 1)>
10 ms
1
<0>
20 ms
2
<0, 1>
40 ms
4
<0, 2, 1, 3>
80 ms
8
<0, 4, 2, 6, 1, 5, 3, 7>
In summary, the present method for the first interleaver is suitable for efficient software implementation. The method takes advantage of the integer unit of the micro-computing machine by performing 16-bit interleaving at once. By employing this method, a small error, inverse proportional with the number of interleaved bits will be introduced. At the receiver end, the errors will be corrected by the FEC unit.
Although the present invention has been described and illustrated in detail, it is to be clearly understood that this is done by way of illustration and example only and is not to be taken by way of limitation. The spirit and scope of the present invention are to be limited only by the terms of the appended claims.
Patent | Priority | Assignee | Title |
7468967, | Apr 29 2005 | GENERAL DYNAMICS ADVANCED INFORMATION SYSTEMS, INC; GENERAL DYNAMICS MISSION SYSTEMS, INC | System and method for transmission of low rate data |
7925956, | Oct 03 2006 | Google Technology Holdings LLC | Method and apparatus for encoding and decoding data |
8356232, | Oct 06 2006 | Google Technology Holdings LLC | Method and apparatus for encoding and decoding data |
8850286, | Nov 30 2006 | Google Technology Holdings LLC | Method and apparatus for encoding and decoding data |
Patent | Priority | Assignee | Title |
5754783, | Feb 01 1996 | Hewlett Packard Enterprise Development LP | Apparatus and method for interleaving timed program data with secondary data |
5889791, | Aug 13 1996 | Google Technology Holdings LLC | System, device and method of FEC coding and interleaving for variable length burst transmission |
6041393, | Aug 23 1996 | SAMSUNG ELECTRONICS CO , LTD | Array padding for higher memory throughput in the presence of dirty misses |
6205190, | Apr 29 1996 | Qualcomm Incorporated | System and method for reducing interference generated by a CDMA communications device |
6351456, | May 26 1998 | QUARTERHILL INC ; WI-LAN INC | Method and system for an air interface for providing voice, data, and multimedia services in a wireless local loop system |
6732316, | Mar 19 1999 | Apple Inc | Data interleaver and method of interleaving data |
6744744, | Apr 13 1999 | Ericsson AB | Rate matching and channel interleaving for a communications system |
6842871, | Dec 20 1999 | Canon Kabushiki Kaisha | Encoding method and device, decoding method and device, and systems using them |
6859497, | Feb 16 2001 | Pendragon Wireless LLC | Command frames and a method of concatenating command frames |
6868514, | Dec 07 1999 | Mitsubishi Denki Kabushiki Kaisha; KDD SUBMARINE CABLE SYSTEMS INC | FEC frame structuring method and FEC multiplexer |
6876623, | Dec 02 1998 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Tuning scheme for code division multiplex broadcasting system |
7003703, | Jun 21 2002 | Qualcomm Incorporated | Method of interleaving/deinterleaving in a communication system |
20030079170, | |||
20030120995, | |||
20030133446, | |||
20030177430, | |||
20040057401, | |||
20040125765, | |||
20040146029, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jun 06 2002 | IANCU, DANIEL | SANDBRIDGE TECHNOLOGIES INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012981 | /0407 | |
Jun 07 2002 | Sandbridge Technologies, Inc. | (assignment on the face of the patent) | / | |||
Sep 10 2010 | SANDBRIDGE TECHNOLOGIES, INC | Aspen Acquisition Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 025084 | /0963 | |
Sep 10 2010 | SANDBRIDGE TECHNOLOGIES, INC | Aspen Acquisition Corporation | CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNMENT BY SUPPLEMENTING TWO PAGES MISSING FROM THE ASSIGNMENT PREVIOUSLY RECORDED ON REEL 025084 FRAME 0963 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNOR S INTEREST | 025178 | /0760 | |
Sep 27 2012 | Aspen Acquisition Corporation | Qualcomm Incorporated | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 029377 | /0700 |
Date | Maintenance Fee Events |
Dec 22 2010 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Dec 23 2010 | STOL: Pat Hldr no Longer Claims Small Ent Stat |
Oct 27 2014 | ASPN: Payor Number Assigned. |
Oct 27 2014 | RMPN: Payer Number De-assigned. |
Nov 24 2014 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Nov 15 2018 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Jun 26 2010 | 4 years fee payment window open |
Dec 26 2010 | 6 months grace period start (w surcharge) |
Jun 26 2011 | patent expiry (for year 4) |
Jun 26 2013 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 26 2014 | 8 years fee payment window open |
Dec 26 2014 | 6 months grace period start (w surcharge) |
Jun 26 2015 | patent expiry (for year 8) |
Jun 26 2017 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 26 2018 | 12 years fee payment window open |
Dec 26 2018 | 6 months grace period start (w surcharge) |
Jun 26 2019 | patent expiry (for year 12) |
Jun 26 2021 | 2 years to revive unintentionally abandoned end. (for year 12) |