IP Library Granted Patent US 8,589,758
Granted Patent B2
US 8,589,758 · App. 13/746,561 · Granted Nov 19, 2013

Method and system for cyclic redundancy check

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,589,758
App. No.
13/746,561
Granted
Nov 19, 2013
Kind
B2
Abstract

The present disclosure describes a method, performed by a data processor comprising a cyclic redundancy check (CRC) module configured for calculating CRC remainders for encoded data and a comparator comprising a shift register, for making a cyclic redundancy check of an encoded data record of bit length L, in which at least A bits of the record represent content data and at least B bits represent check data. A system for performing a cyclic redundancy check is also described.

Claims (20)

1. A system for processing electromagnetic signals representing convolutionally encoded data streams, the system comprising:

at least one processor configured to execute a trellis search of a convolutionally encoded data stream of bit length L, where L is an integer;

a survivor memory unit comprising:

at least one (D×N)-bit data register configured to store decision bit data representing results of the trellis search provided by the at least one processor for a first D bits of the convolutionally encoded data stream, where D is an integer greater than zero and less than L, and N is an integer equal to a number of states used by the at least one processor to execute the trellis search, the decision bit data stored in the (D×N)-bit data register being re-orderable by the at least one processor according to the results of the trellis search for the first D bits of the convolutionally encoded data stream; and

a memory store configured to store decision bits representing results of the trellis search provided by the at least one processor for a subsequent L−D bits of the convolutionally encoded data stream; and

a cyclic redundancy check (CRC) module configured to perform a cyclic redundancy check on a decoded data record outputted from the survivor memory unit, the CRC module comprising:

a CRC remainder calculator configured to calculate a CRC remainder based on a first A bits of the decoded data record received from the survivor memory unit, the first A bits of the decoded data record comprising the decision bit data outputted from the (D×N)-bit data register and a first portion of the decision bits outputted from the memory store; and

a comparator to compare the CRC remainder calculated by the CRC remainder calculator with a final B bits of the decoded data record.

2. The system of claim 1 , wherein the survivor memory unit further comprises at least one LIFO register for output of the stored decision bit data.

3. The system of claim 1 , wherein the final B bits of the decoded data record comprise a second portion of the decision bits outputted from the memory store.

4. The system of claim 1 , further comprising a shift register coupled between the survivor memory unit and the CRC module, the shift register configured to delay provision of the final B bits of the decoded data record to the comparator.

5. The system of claim 1 , wherein: A≧B.

6. The system of claim 1 , wherein:

25 ≦L≦ 70; and

B= 16.

7. The system of claim 1 , further comprising a descrambler module configured to descramble the last B bits of the decoded data record in parallel with the cyclic redundancy check performed by the CRC module.

8. The system of claim 1 , wherein the at least one processor comprises an add-compare-select unit configured to perform the trellis search and to provide the results of the trellis search to the survivor memory unit.

9. The system of claim 1 , further comprising a plurality of (N×M)-bit registers configured for storage of trace-forward data provided by the at least one processor, where M is an integer equal to a number of delay elements in a convolutional encoder used to encode the data stream of bit length L.

10. The system of claim 9 , wherein the survivor memory unit comprises a trace-back logic unit configured to perform trace-back operations on the decision bits stored in the memory store based on the trace-forward data stored in at least one of the plurality of trace-forward registers.

11. The system of claim 9 , further comprising a tail-biting check unit configured to perform tail-biting analyses using the trace-forward data stored in at least one of the plurality of trace-forward registers.

Assignments (5)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Sep 13, 2013
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 031217/0233 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2013
From: KOSAKOWSKI, MARTIN
To: RESEARCH IN MOTION DEUTSCHLAND GMBH
Reel/Frame 029668/0847 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2013
From: RESEARCH IN MOTION DEUTSCHLAND GMBH
To: RESEARCH IN MOTION LIMITED
Reel/Frame 029669/0021 →