Patent Document ID: 9083385
Application ID: 13809932
Patent Flag: 1

Claim One:
1. A channel decoding method, comprising: S101: during the first iteration, i.e. i=1, initializing, via a mobile or a wireless communications system, the metric M path,0 i (s) of the surviving path that enters state s at position 0 to 0, where sεS 0 , S 0 indicates the state space at position 0, and i indicates the number of iterations; setting the metric of the optimal maximum likelihood tail-biting path (MLTBP) P MLTBP O to 0, that is, letting P MLTBP O =0; performing a Modified Viterbi Algorithm (MVA), and searching for MLTBP in current iteration; for all sεS 0 , setting the state metric of state s to be equal to M path,L 1 (s), that is, letting M state (s)=M path,L 1 (s); S102: if the net path metric M MLTBP i of P MLTBP i (s′,s′) found in current iteration is greater than the metric M MLTBP O , that is, M MLTBP i >M MLTBP O , updating (P MLTBP , M MLTBP O ) with (P MLTBP i (s′,s′), M MLTBP ); S103: for sεS L , where L is the length of information sequence, and S L indicates the state space at position L, comparing the state metric M state (s) of state s with the metric M MLTBP O of the MLTBP in the latest update; if M state (s)≦M MLTBP O , updating M state (s)=0; otherwise, letting M path,0 i+1 (s)=M path,L i (s); if M state (s)>M path,L i (s)−M path,0 i (s), updating M state (s)=M path,L i (s)−M path,0 i (s); making statistics on the number of states with state metric greater than M MLTBP O , and saving the number of states in sum(i); S104: if sum(i)=0, stopping the iteration, and outputting the optimal MLTBP P MLTBP O ; if sum(i)=sum(i−1), performing Viterbi decoding once with state β(s) as fixed initial state and termination state, where β(s) is the starting state of the maximum likelihood path (MLP) found in the ith iteration, i.e. P MLP i (β(s),s); obtaining a tail-biting path P TBP (β(s),β(s)) with metric M TBP (β(s),β(s)) thereof; if M TBP (β(s),β(s))>M MLTBP O , updating (P MLTBP O , M MLTBP O ,) with (P TBP (β(s),β(s)), M TBP (β(s),β(s))), and letting M state (β(s))=0 and M path,0 i+1 (β(s))=0; S105: i++ and letting sum(i)=0, and performing a next iteration, that is, repeating S102 to S104.