US6532563B2
Expired / Lapsed
US
⏱️ 0.0 years remaining
Incremental redundancy radio link protocol
Assignee: AT&T Inc
•
Filing: 2002-01-09
•
Granted: 2003-03-11
•
Expires: 2022-01-09
Abstract
Abstract A method and apparatus for sending blocks of data without any error correcting coding is described. If the block is received without an error then the next block of data is transmitted. If the block is received with an error, the receiving device sends a message requesting error correcting information. The transmitting device sends the error correcting information in specified increments until the receiving device can successfully decode the block without error. Once the block is received without errors, the next block of data is transmitted.
Inventors
- 👤 Robert van Nobelen
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-23 13:01
CPC Classifications
H; H04; H04L; H04L1/00; H04L1/12; H04L1/16; H04L1/1607; H04L1/18; H04L1/1812; H04L1/1819
Claims Analysis
Total Claims: 25
Claim 1
Independent Claim
188 words
A receiving Incremental Redundancy Radio Link Protocol module (receiving IRLP module) for a receiver, comprising: a receive transport module that receives soft decision information from a layer 1 protocol; a quantizer that converts the soft-decision information into a q level representation, where q is a design parameter that trades off receiver memory requirements against system performance and where, for a q level quantization, the memory requirements at the receiver per bit are given by log 2 q; a decoder that receives at least the q level representation of the soft decision information and decodes the at least the q level representation of the soft decision information to yield a decoded data block, wherein the decoded data block comprises error detection bits of a frame check sequence and a service data unit (SDU); a frame check sequence decoder that computes a frame check sequence of the SDU and indicates to the receiving IRLP module whether the SDU passed the frame check; and a deblocking module that constructs a deliverable data block by de-concatenating the SDU and the frame check sequence, wherein the de-concatenated SDU is the deliverable data block.
Claim 2
Dependent Claim
188 words
A receiving Incremental Redundancy Radio Link Protocol module (receiving IRLP module) for a receiver, comprising: a receive transport module that receives soft decision information from a layer 1 protocol; a quantizer that converts the soft-decision information into a q level representation, where q is a design parameter that trades off receiver memory requirements against system performance and where, for a q level quantization, the memory requirements at the receiver per bit are given by log 2 q; a decoder that receives at least the q level representation of the soft decision information and decodes the at least the q level representation of the soft decision information to yield a decoded data block, wherein the decoded data block comprises error detection bits of a frame check sequence and a service data unit (SDU); a frame check sequence decoder that computes a frame check sequence of the SDU and indicates to the receiving IRLP module whether the SDU passed the frame check; and a deblocking module that constructs a deliverable data block by de-concatenating the SDU and the frame check sequence, wherein the de-concatenated SDU is the deliverable data block.
Claim 3
Dependent Claim
21 words
The receiving Incremental Redundancy Radio Link Protocol module of claim 1 , wherein the decoder uses a soft decision Viterbi algorithm.
Claim 4
Independent Claim
210 words
A method of combining received sub-blocks and jointly decoding the received sub-blocks to recover a data block, each received sub-block identified by at least a block sequence number and a sub-block sequence number, comprising: receiving a packet data unit (PDU) having at least a header portion and sub-block information portion; decoding the header portion, wherein the header portion includes a block sequence number identifying a data block and a sub-block sequence number identifying a sub-block of the data-block; determining whether a data block identified by the block sequence number was previously successfully decoded, and if not previously successfully decoded: setting a flag in a table to indicate which one of a plurality of data sub-blocks and parity sub-blocks the sub-block information portion of the PDU represents; storing the data in the sub-block information portion of the PDU at a location identified by the block sequence number and the sub-block sequence number; passing a set of sub-blocks to a decoder, wherein the set of sub-blocks comprises all sub-blocks stored for the block sequence number; decoding the set of sub-blocks to generate a data block; computing a frame check sequence of the data block; and if the frame check sequence passes, storing the data block in place of the set of sub-blocks.
Claim 5
Independent Claim
210 words
A method of combining received sub-blocks and jointly decoding the received sub-blocks to recover a data block, each received sub-block identified by at least a block sequence number and a sub-block sequence number, comprising: receiving a packet data unit (PDU) having at least a header portion and sub-block information portion; decoding the header portion, wherein the header portion includes a block sequence number identifying a data block and a sub-block sequence number identifying a sub-block of the data-block; determining whether a data block identified by the block sequence number was previously successfully decoded, and if not previously successfully decoded: setting a flag in a table to indicate which one of a plurality of data sub-blocks and parity sub-blocks the sub-block information portion of the PDU represents; storing the data in the sub-block information portion of the PDU at a location identified by the block sequence number and the sub-block sequence number; passing a set of sub-blocks to a decoder, wherein the set of sub-blocks comprises all sub-blocks stored for the block sequence number; decoding the set of sub-blocks to generate a data block; computing a frame check sequence of the data block; and if the frame check sequence passes, storing the data block in place of the set of sub-blocks.
Claim 6
Dependent Claim
52 words
The method of claim 3 , wherein the sub-block information portion comprises data having no redundancy and representing a 1:1 mapping to a blocked service data unit (SDU), wherein a blocked SDU is comprised of a first series of bits concatenated with error detection bits generated for the first series of bits.
Claim 7
Dependent Claim
25 words
The method of claim 3 , wherein the flag in the table is identified by both the block sequence number and the sub-block sequence number.
Claim 8
Dependent Claim
25 words
A computer system comprising a processor and a memory, the memory containing instructions to be executed in accordance with the method of claim 3 .
Claim 9
Independent Claim
116 words
A method of decoding incremental redundancy radio link protocol information blocks, each information block identified by at least its block sequence number and sub-block sequence number, comprising: receiving sub-block soft-information; storing the sub-block soft-information in one of a plurality of fields in a table, each of the plurality of fields in the table identified by a block sequence number and a sub-block sequence number; passing all stored sub-blocks identified by the block sequence number to a decoder; decoding the sub-blocks passed to the decoder to yield a data block and computing a frame check sequence of the data block; and if the frame check sequence passes, storing the data block in place of the passed sub-blocks.
Claim 10
Independent Claim
116 words
A method of decoding incremental redundancy radio link protocol information blocks, each information block identified by at least its block sequence number and sub-block sequence number, comprising: receiving sub-block soft-information; storing the sub-block soft-information in one of a plurality of fields in a table, each of the plurality of fields in the table identified by a block sequence number and a sub-block sequence number; passing all stored sub-blocks identified by the block sequence number to a decoder; decoding the sub-blocks passed to the decoder to yield a data block and computing a frame check sequence of the data block; and if the frame check sequence passes, storing the data block in place of the passed sub-blocks.
Claim 11
Dependent Claim
40 words
The method of claim 7 , further comprising setting a flag in a field in the table, the field identified by the block sequence number, to indicate that the data block identified by the block sequence number is successfully decoded.
Claim 12
Dependent Claim
17 words
The method according to claim 8 , further comprising delivering the data block to a network layer.
Claim 13
Dependent Claim
26 words
The method according to claim 9 , further comprising deleting all entries in the table corresponding to the block sequence number of the delivered data block.
Claim 14
Dependent Claim
25 words
The method according to claim 7 , further comprising computing a state feedback packet, wherein the state feedback packet provides state information for the table.
Claim 15
Independent Claim
344 words
A method of decoding packet data units (PDUs) transmitted under an incremental redundancy radio link protocol using a table having a first field that stores a block sequence number, a second field having a first flag, the first flag indicating whether a block corresponding to the block sequence number was correctly decoded, a first plurality of fields, wherein each one of the first plurality of fields stores an indication of whether a data sub-block corresponding to the block sequence number was received, a second plurality of fields, wherein each one of the second plurality of fields stores an indication of whether a parity sub-block corresponding to the block sequence number was received, and a data field that stores soft-decision data bits and soft-decision parity bits according to a sub-block sequence number, the method comprising: retrieving a PDU, wherein the PDU includes a header and one of a data and a parity sub-block, wherein data in the sub-block is in a form of soft-decision bits; decoding the header, wherein the header includes the block sequence number, the sub-block sequence number, and a frame check sequence; and verifying the frame check sequence, and if the frame check sequence passes: setting a flag in one of the first plurality of fields and the second plurality of fields, wherein the flag identifies, by virtue of the sub-block sequence number, which one of the data sub-blocks and parity sub-blocks were received; quantizing the soft decision bits of the one of the data and parity sub-blocks to yield a quantized soft-information sub-block; storing the quantized soft-information sub-block at a location corresponding to the block sequence number and the sub-block sequence number; passing all quantized soft-information sub-blocks corresponding to the block sequence number to a decoder; decoding, at the decoder, all passed quantized soft-information sub-blocks corresponding to the block sequence number to yield a decoded block; computing a second frame check sequence of the decoded block, and if the second frame check sequence passes: storing the decoded block in place of all quantized soft-information sub-blocks corresponding to the block sequence number.
Claim 16
Independent Claim
344 words
A method of decoding packet data units (PDUs) transmitted under an incremental redundancy radio link protocol using a table having a first field that stores a block sequence number, a second field having a first flag, the first flag indicating whether a block corresponding to the block sequence number was correctly decoded, a first plurality of fields, wherein each one of the first plurality of fields stores an indication of whether a data sub-block corresponding to the block sequence number was received, a second plurality of fields, wherein each one of the second plurality of fields stores an indication of whether a parity sub-block corresponding to the block sequence number was received, and a data field that stores soft-decision data bits and soft-decision parity bits according to a sub-block sequence number, the method comprising: retrieving a PDU, wherein the PDU includes a header and one of a data and a parity sub-block, wherein data in the sub-block is in a form of soft-decision bits; decoding the header, wherein the header includes the block sequence number, the sub-block sequence number, and a frame check sequence; and verifying the frame check sequence, and if the frame check sequence passes: setting a flag in one of the first plurality of fields and the second plurality of fields, wherein the flag identifies, by virtue of the sub-block sequence number, which one of the data sub-blocks and parity sub-blocks were received; quantizing the soft decision bits of the one of the data and parity sub-blocks to yield a quantized soft-information sub-block; storing the quantized soft-information sub-block at a location corresponding to the block sequence number and the sub-block sequence number; passing all quantized soft-information sub-blocks corresponding to the block sequence number to a decoder; decoding, at the decoder, all passed quantized soft-information sub-blocks corresponding to the block sequence number to yield a decoded block; computing a second frame check sequence of the decoded block, and if the second frame check sequence passes: storing the decoded block in place of all quantized soft-information sub-blocks corresponding to the block sequence number.
Claim 17
Dependent Claim
29 words
The method of claim 12 , further comprising setting a flag in the second field to indicate that the block corresponding to the block sequence number was correctly decoded.
Claim 18
Dependent Claim
57 words
The method of claim 12 , wherein the one of the data and parity sub-blocks comprise a sub-block having no redundancy and representing a 1:1 mapping to a blocked service data unit (SDU), wherein a blocked SDU is comprised of a first series of bits concatenated with error detection bits generated for the first series of bits.
Claim 19
Dependent Claim
18 words
The method of claim 12 , further comprising discarding the PDU if the first frame check sequence fails.
Claim 20
Dependent Claim
42 words
The method of claim 12 , further comprising discarding the PDU if, after verifying the first frame check sequence, the second field of the table contains a value that indicates that the block corresponding to the block sequence number was correctly decoded.
Claim 21
Dependent Claim
40 words
The method of claim 12 , further comprising delivering the decoded blocks of each entry in the table having a flag set in the second field to indicate that the block corresponding to the block sequence number was correctly decoded.
Claim 22
Dependent Claim
19 words
The method of claim 17 , further comprising deleting all entries in the table corresponding to all delivered blocks.
Claim 23
Dependent Claim
23 words
The method of claim 12 , further comprising computing a feedback packet, wherein the feedback packet includes state feedback information of the table.
Claim 24
Dependent Claim
367 words
A receiver for receiving data transmitted on a physical layer under an incremental redundancy protocol, comprising: a processor; and a memory, wherein the memory comprises: a data structure that stores received sub-blocks and decoded blocks until they can be delivered in sequence to a network layer, the data structure comprising: a first field that stores a block sequence number; a second field that stores an indication as to whether a block corresponding to the block sequence number was correctly decoded; a first plurality of fields storing an indication as to whether data sub-blocks of the block corresponding to the block sequence number have been received; a second plurality storing an indication as to whether parity sub-blocks of the block corresponding to the block sequence number have been received; a data field that stores soft-decision data and parity sub-blocks corresponding to the block sequence number; and a set of instructions, the set of instructions causing the processor to: retrieve a PDU, wherein the PDU includes a header and one of a data and a parity sub-block, wherein data in the sub-block is in a form of soft-decision bits; decode the header, wherein the header includes the block sequence number, a sub-block sequence number, and a frame check sequence; verify the frame check sequence and if the frame check sequence passes: set a flag in one of the first plurality of fields and the second plurality of fields, wherein the flag identifies, by virtue of the sub-block sequence number, which one of the data sub-blocks and parity sub-blocks were received; quantize the soft decision bits of the one of the data and parity sub-blocks to yield a quantized soft-information sub-block; store the quantized soft-information sub-block at a location corresponding to the block sequence number and the sub-block sequence number; pass all quantized soft-information sub-blocks corresponding to the block sequence number to a decoder; decode, at the decoder, all passed quantized soft-information sub-blocks corresponding to the block sequence number to yield a decoded block; and compute a second frame check sequence of the decoded block, and if the second frame check sequence passes, store the decoded block in place of all quantized soft-information sub-blocks corresponding to the block sequence number.
Claim 25
Dependent Claim
367 words
A receiver for receiving data transmitted on a physical layer under an incremental redundancy protocol, comprising: a processor; and a memory, wherein the memory comprises: a data structure that stores received sub-blocks and decoded blocks until they can be delivered in sequence to a network layer, the data structure comprising: a first field that stores a block sequence number; a second field that stores an indication as to whether a block corresponding to the block sequence number was correctly decoded; a first plurality of fields storing an indication as to whether data sub-blocks of the block corresponding to the block sequence number have been received; a second plurality storing an indication as to whether parity sub-blocks of the block corresponding to the block sequence number have been received; a data field that stores soft-decision data and parity sub-blocks corresponding to the block sequence number; and a set of instructions, the set of instructions causing the processor to: retrieve a PDU, wherein the PDU includes a header and one of a data and a parity sub-block, wherein data in the sub-block is in a form of soft-decision bits; decode the header, wherein the header includes the block sequence number, a sub-block sequence number, and a frame check sequence; verify the frame check sequence and if the frame check sequence passes: set a flag in one of the first plurality of fields and the second plurality of fields, wherein the flag identifies, by virtue of the sub-block sequence number, which one of the data sub-blocks and parity sub-blocks were received; quantize the soft decision bits of the one of the data and parity sub-blocks to yield a quantized soft-information sub-block; store the quantized soft-information sub-block at a location corresponding to the block sequence number and the sub-block sequence number; pass all quantized soft-information sub-blocks corresponding to the block sequence number to a decoder; decode, at the decoder, all passed quantized soft-information sub-blocks corresponding to the block sequence number to yield a decoded block; and compute a second frame check sequence of the decoded block, and if the second frame check sequence passes, store the decoded block in place of all quantized soft-information sub-blocks corresponding to the block sequence number.
References Cited (Backward Citations)
US4584685A
Cited
JPH02194619A
Cited
EP0635952A1
Cited
US5701298A
Cited
EP0713302A2
Cited
US5600663A
Cited
US5835508A
Cited
JPH08223624A
Cited
US5677918A
Cited
US5844918A
Cited
US6021516A
Cited
US6126310A
Cited
US5983382A
Cited
US5870406A
Cited
US6189123B1
Cited
US6119167A
Cited
US6353907B1
Cited
US5881069A
Cited
US6275488B1
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2006-03-10 | 2006-09-09 | 2007-03-11 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2010-03-10 | 2010-09-09 | 2011-03-11 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2014-03-10 | 2014-09-09 | 2015-03-11 | $7700.00 | Window Closed / Lapsed |