IP Library Granted Patent US 7,640,478
Granted Patent B2
US 7,640,478 · App. 11/408,471 · Granted Dec 29, 2009

Method for decoding tail-biting convolutional codes

Assignee: Cisco Technology, Inc.
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 7,640,478
App. No.
11/408,471
Granted
Dec 29, 2009
Kind
B2
Abstract

A method for decoding tail-biting convolutional codes is disclosed. In the method, all beginning states of a trellis diagram are initialized. Forward Viterbi metrics are calculated for the trellis diagram. A trace-back process is performed from an ending state of the trellis diagram at a first time instance to a first state where all surviving paths converge at a second time instance. Backward Viterbi metrics are calculated for a predetermined period of time from the first state at the second time instance to a second state at a third time instance. A trace-back process is performed from a designated state, which is equal to the second state, at the first time instance to determine a most likely path for the convolutional codes in the trellis diagram.

Claims (40)

1. A method executed by a decoder of a receiver device for decoding tail-biting convolutional codes, comprising:

receiving at the receiver device a signal comprising a bit sequence encoded with a tail-biting convolutional code;

initializing memory for all beginning states of a trellis used by the decoder when decoding the received bit sequence;

calculating forward Viterbi metrics for the states of the trellis based on the received bit sequence;

tracing back from an ending state of the trellis at a first time instance to a first state where the state of all forward and backward surviving paths is shared at a second time instance;

calculating backward Viterbi metrics for a predetermined period of time from the first state at the second time instance to a second state at a third time instance; and

tracing back from the second state at the third time instance to the first state at the second time instance to determine a most likely path for the convolutional codes in the trellis.

2. The method of claim 1 , wherein initializing all beginning states comprises setting all the beginning states to zero.

3. The method of claim 1 , wherein the second time instance is equal to three, five, or seven times a constraint length.

4. The method of claim 3 , wherein the third time instance is equal to zero, and the predetermined period of time is equal to three, five, or seven times the constraint length.

5. The method of claim 1 , further comprising setting the first state to zero before calculating the backward Viterbi metrics.

6. The method of claim 5 , further comprising setting other states at the second time instance to maximum values before calculating the backward Viterbi metrics.

7. The method of claim 1 , further comprising calculating accumulated Viterbi metrics for the ending and second states.

8. The method of claim 7 , further comprising determining which of either the ending state or the second state has a minimum accumulated metric prior to tracing back from the second state.

9. The method of claim 1 , further comprising tracing back from the ending state at the first time instance to the first state at the second time instance.

10. A method executed by a decoder of a receiver device for decoding tail-biting convolutional codes, comprising:

receiving at the receiver device a signal comprising a bit sequence encoded with a tail-biting convolutional code;

initializing memory for all beginning states of a trellis used by the decoder when decoding the received bit sequence;

calculating forward Viterbi metrics for the states of the trellis;

tracing back from an ending state of the trellis at a first time instance to a first state where all surviving paths converge at a second time instance;

setting the first state to zero and other states at the second time instance to maximum values;

calculating backward Viterbi metrics for a predetermined period of time from the first state at the second time instance to a second state at a third time instance; and

tracing back from the second state at the third time instance to the first state at the second time instance to determine a most likely path for the convolutional codes in the trellis.

11. The method of claim 10 , wherein initializing all beginning states comprises setting all the beginning states to zero.

12. The method of claim 10 , wherein the second time instance is equal to three, five, or seven times a constraint length.

13. The method of claim 12 , wherein the third time instance is equal to zero, and the predetermined period of time is equal to three, five, or seven times the constraint length.

14. The method of claim 10 , further comprising calculating accumulated Viterbi metrics for the ending and second states.

15. The method of claim 14 , further comprising determining which of either the ending state or the second state has a minimum accumulated metric prior to tracing back from the second state.

16. A method executed by a decoder of a receiver device for decoding tail-biting convolutional codes, comprising:

receiving at the receiver device a signal comprising a bit sequence encoded with a tail-biting convolutional code;

initializing memory for all beginning states of a trellis used by the decoder when decoding the received bit sequence;

calculating forward Viterbi metrics for the states of the trellis;

tracing back from an ending state of the trellis at a first time instance to a first state where all surviving paths converge at a second time instance;

setting the first state to zero and other states at the second time instance to maximum values;

calculating backward Viterbi metrics from the first state at the second time instance to a second state at a third time instance, wherein the second and third time instances have a time interval of a multiple of a constraint length; and

tracing back from the second state at the third time instance to the first state at the second time instance to determine a most likely path for the convolutional codes in the trellis.

17. The method of claim 16 , wherein initializing all beginning states comprises setting all the beginning states to zero.

18. The method of claim 16 , wherein the second time instance is equal to three, five, or seven times the constraint length, and the third time instance is equal to zero.

19. The method of claim 16 , further comprising calculating accumulated Viterbi metrics for the ending and second states.

20. The method of claim 19 , further comprising determining which of either the ending state or the second state has a minimum accumulated metric prior to tracing back from the second state.

Assignments (4)
MERGER Recorded Aug 19, 2008
From: NIGHT ACQUISITION CORP.
To: NAVINI NETWORKS, INC. UNDER THE NAME OF CISCO-NAVINI NETWORKS, INC.
Reel/Frame 021410/0184 →
CHANGE OF NAME Recorded Aug 19, 2008
From: CISCO-NAVINI NETWORKS, INC.
To: CISCO-NAVINI NETWORKS LLC
Reel/Frame 021410/0713 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2008
From: CISCO-NAVINI NETWORKS LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 021412/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2006
From: HEDAYAT, AHMADREZA; JIN, HANG
To: NAVINI NETWORKS, INC.
Reel/Frame 017814/0909 →
Continuity (2)
Provisional Application 6067477600 · Apr 26, 2005
Related Publication 20060242531A1 · Oct 26, 2006