← Back to Patent Explorer
US5666370A Expired / Lapsed US ⏱️ 0.0 years remaining

High performance error control coding in channel encoders and decoders

Assignee: JPMorgan Chase Bank NA
•
Filing: 1996-01-25
•
Granted: 1997-09-09
•
Expires: 2016-01-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An improved error control coding scheme is implemented in low bit rate coders in order to improve their performance in the presence of transmission errors typical of the digital cellular channel. The error control coding scheme exploits the nonlinear block codes (NBCs) for purposes of tailoring those codes to a fading channel in order to provide superior error protection to the compressed half rate speech data. For a half rate speech codec assumed to have a frame size of 40 ms, the speech encoder puts out a fixed number of bits per 40 ms. These bits are divided into three distinct classes, referred to as Class 1, Class 2 and Class 3 bits. A subset of the Class 1 bits are further protected by a CRC for error detection purposes. The Class 1 bits and the CRC bits are encoded by a rate +E,fra 1/2+EE Nordstrom Robinson code with codeword length of 16. The Class 2 bits are encoded by a punctured version of the Nordstrom Robinson code. It has an effective rate of +E,fra 8/14+EE with a codeword length 14. The Class 3 bits are left unprotected. The coded Class 1 plus CRC bits, coded Class 2 bits, and the Class 3 bits are mixed in an interleaving array of size 16x17 and interleaved over two slots in a manner that optimally divides each codeword between the two slots. At the receiver the coded Class 1 plus CRC bits, coded Class 2 bits, and Class 3 bits are extracted after de-interleaving.

Inventors

  • 👤 Kalyan Ganesan
  • 👤 Kumar Swaminathan
  • 👤 Prabhat Gupta
  • 👤 P. Vijay Kumar

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 20:48
CPC Classifications
H; H04; H04L; H04L1/00; H04L1/004; H04L1/0056; H04L1/0064; H04L1/0065; H03; H03M; H03M13/00; H03M13/03; H03M13/05; H03M13/09; H03M13/21; H03M13/27; H03M13/29; H03M13/2903; H03M13/2906; H03M13/2927; H03M13/35; H04L1/0045; H04L1/0054; H04L1/007; H04L1/20; H04L1/201; H04L1/208

Claims Analysis

Total Claims: 16
Claim 1
Independent Claim 164 words
A method of encoding a bitstream for transmission over a time division multiplexed radio channel, the radio channel being divided into a series of time slots and subject to fading, the method comprising the steps of: classifying incoming bits from the bitstream into at least three classes, which include a Class 1, a Class 2 and a Class 3; generating check bits using a nonlinear convolutional code for a subset of the incoming bits classified as Class 1 bits, the nonlinear convolutional code being a cyclic redundancy code; encoding the Class 1 bits and the generated check bits using a first block encoder using a nonlinear block code (NBC); encoding the Class 2 bits using a second block encoder using an NBC; and interleaving the encoded and the nonencoded bits in an interleaving matrix over a plurality of time slots, wherein the subset of incoming bits classified as Class 1 bits constitute 24 bits and the cyclic redundancy code is an 8 bit code.
Claim 2
Independent Claim 164 words
A method of encoding a bitstream for transmission over a time division multiplexed radio channel, the radio channel being divided into a series of time slots and subject to fading, the method comprising the steps of: classifying incoming bits from the bitstream into at least three classes, which include a Class 1, a Class 2 and a Class 3; generating check bits using a nonlinear convolutional code for a subset of the incoming bits classified as Class 1 bits, the nonlinear convolutional code being a cyclic redundancy code; encoding the Class 1 bits and the generated check bits using a first block encoder using a nonlinear block code (NBC); encoding the Class 2 bits using a second block encoder using an NBC; and interleaving the encoded and the nonencoded bits in an interleaving matrix over a plurality of time slots, wherein the subset of incoming bits classified as Class 1 bits constitute 24 bits and the cyclic redundancy code is an 8 bit code.
Claim 3
Independent Claim 153 words
A method of encoding a bitstream for transmission over a time division multiplexed radio channel, the radio channel being divided into a series of time slots and subject to fading, the method comprising the steps of: classifying incoming bits from the bitstream into at least three classes, which include a Class 1, a Class 2 and a Class 3; generating check bits using a nonlinear convolutional code for a subset of the incoming bits classified as Class 1 bits; encoding the Class 1 bits and the generated check bits using a first block encoder using a nonlinear block code (NBC); encoding the Class 2 bits using a second block encoder using an NBC; and interleaving the encoded and the nonencoded bits in an interleaving matrix over a plurality of time slots, wherein the first block encoder is a rate 8/16 NBC encoder and the second block encoder is a rate 8/14 NBC encoder.
Claim 4
Independent Claim 153 words
A method of encoding a bitstream for transmission over a time division multiplexed radio channel, the radio channel being divided into a series of time slots and subject to fading, the method comprising the steps of: classifying incoming bits from the bitstream into at least three classes, which include a Class 1, a Class 2 and a Class 3; generating check bits using a nonlinear convolutional code for a subset of the incoming bits classified as Class 1 bits; encoding the Class 1 bits and the generated check bits using a first block encoder using a nonlinear block code (NBC); encoding the Class 2 bits using a second block encoder using an NBC; and interleaving the encoded and the nonencoded bits in an interleaving matrix over a plurality of time slots, wherein the first block encoder is a rate 8/16 NBC encoder and the second block encoder is a rate 8/14 NBC encoder.
Claim 5
Independent Claim 186 words
A method of decoding a bitstream received from a time division multiplexed radio channel, the channel being divided into a series of time slots, the method comprising the steps of: receiving interleaved encoded and nonencoded bits; deinterleaving the received bits and placing them in a matrix array; extracting and classifying the deinterleaved bits into at least three classes, which include a Class 1, a Class 2 and a Class 3; classifying each decoded Class 1 bit into one of a plurality of subclasses, wherein a first subclass is designated as perceptually most significant bits (PMSBs) and a second subclass is designated as nonlinear convolutional code bits; using the PMSBs, generating check bits for the Class 1 bits classified in the PMSB subclass using a nonlinear convolutional code; comparing the generated check bits with the transmitted check bits; generating an error signal if the generated check bits are not equal to the transmitted check bits; decoding the Class 1 bits in a first nonlinear block decoder; decoding the Class 2 bits in a second nonlinear block decoder; and multiplexing the decoded and nonencoded bits into a frame.
Claim 6
Independent Claim 186 words
A method of decoding a bitstream received from a time division multiplexed radio channel, the channel being divided into a series of time slots, the method comprising the steps of: receiving interleaved encoded and nonencoded bits; deinterleaving the received bits and placing them in a matrix array; extracting and classifying the deinterleaved bits into at least three classes, which include a Class 1, a Class 2 and a Class 3; classifying each decoded Class 1 bit into one of a plurality of subclasses, wherein a first subclass is designated as perceptually most significant bits (PMSBs) and a second subclass is designated as nonlinear convolutional code bits; using the PMSBs, generating check bits for the Class 1 bits classified in the PMSB subclass using a nonlinear convolutional code; comparing the generated check bits with the transmitted check bits; generating an error signal if the generated check bits are not equal to the transmitted check bits; decoding the Class 1 bits in a first nonlinear block decoder; decoding the Class 2 bits in a second nonlinear block decoder; and multiplexing the decoded and nonencoded bits into a frame.
Claim 7
Dependent Claim 82 words
The method of claim 3, wherein the step of generating check bits further comprises the steps of: producing multiple candidates for a PMSB code word, each candidate comprising a series of PMSB bits; generating check bits for each of the produced multiple candidates; and comparing each of the generated check bits with the received check bits, wherein the error signal generation step generates the error signal only if the received check bits are not equal to any of the generated check bits.
Claim 8
Dependent Claim 51 words
The channel decoding method recited in claim 4 further comprising the steps of: providing a table of entries representing a subset of possible PMSB candidates, wherein the table entries are the candidates produced to represent the PMSB code word; and extracting check bits from message bits corresponding to each table entry.
Claim 9
Dependent Claim 30 words
The channel decoding method recited in claim 3 wherein the first block decoder is a rate 8/16 NBC decoder and the second block decoder is a rate 8/14 NBC decoder.
Claim 10
Dependent Claim 15 words
The method of claim 3 wherein the nonlinear block code is a quarternary Nordstrom-Robinson code.
Claim 11
Dependent Claim 16 words
The method of claim 3 wherein the nonlinear convolutional code is a cyclic redundancy check code.
Claim 12
Dependent Claim 50 words
The method of claim 3 wherein the step of decoding the Class 2 bits in a second nonlinear block decoder comprises decoding the PMSBs as a first subset of the Class 1 bits and decoding the nonlinear convolutional code bits separately as a second subset of the Class 1 bits.
Claim 13
Dependent Claim 171 words
A radio channel decoder for a time division multiplexed radio channel divided into a series of time slots and subject to fading comprising: a receiver receiving interleaved encoded and nonencoded bits and placing the received bits from at least two different time slots in a deinterleaving matrix array, the encoded and nonencoded bits corresponding to multiple distinct classes, bits of a most important one of said classes being referred to as Class 1 bits; a two slot deinterleaver extracting the encoded and nonencoded bits from the deinterleaving matrix array; a first block decoder decoding the Class 1 bits and any check bits applied to a subset of the Class 1 bits, the subset consisting of perceptually most significant bits (PMSBs) all of which were encoded using a nonlinear block code (NBC); a second block decoder decoding other encoded bits which were also encoded using an NBC; and a multiplexer combining the decoded Class 1 bits, other decoded bits, and nonencoded bits in a frame comprising a fixed number of data bits.
Claim 14
Dependent Claim 171 words
A radio channel decoder for a time division multiplexed radio channel divided into a series of time slots and subject to fading comprising: a receiver receiving interleaved encoded and nonencoded bits and placing the received bits from at least two different time slots in a deinterleaving matrix array, the encoded and nonencoded bits corresponding to multiple distinct classes, bits of a most important one of said classes being referred to as Class 1 bits; a two slot deinterleaver extracting the encoded and nonencoded bits from the deinterleaving matrix array; a first block decoder decoding the Class 1 bits and any check bits applied to a subset of the Class 1 bits, the subset consisting of perceptually most significant bits (PMSBs) all of which were encoded using a nonlinear block code (NBC); a second block decoder decoding other encoded bits which were also encoded using an NBC; and a multiplexer combining the decoded Class 1 bits, other decoded bits, and nonencoded bits in a frame comprising a fixed number of data bits.
Claim 15
Dependent Claim 72 words
The channel decoder of claim 10 wherein the block decoder for coded Class 1 PMSBs is a generalized decoder which produces multiple candidates for each decoded PMSB code word and compares locally generated check bits for all combinations of candidates with received check bits and sets a bad frame flag only when no coincidence is found between the received check bits and the locally generated check bits of all combinations of candidates.
Claim 16
Dependent Claim 43 words
The channel decoder of claim 10 wherein the block decoder for coded Class 1 PMSBs includes a table of a subset of possible combinations of candidates for PMSBs, check bits being extracted from message bits corresponding to candidates for PMSBs in said table.

References Cited (Backward Citations)

US4896353A Cited
US5148431A Cited
US5182753A Cited
US5113400A Cited
US5321705A Cited
US5265127A Cited
US5289501A Cited
US5255343A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-09-08 2001-03-10 2001-09-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-09-08 2005-03-10 2005-09-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-09-08 2009-03-10 2009-09-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag