Patent ID: 7065701

Claim:
A method for iteratively decoding a block turbo code, comprising: (a) receiving a signal frame formed of a product code, said product code being obtained by serially concatenating block codes transmitted from a transmission port; (b) forming a reliability array for use as an input for signal demodulation and initializing extrinsic reliability information of the reliability array; (c) performing a complexity-reduced soft decision output Viterbi decoding algorithm on all codewords existing on a current axis of the signal frame, and calculating extrinsic reliability information to be used in a next axis using soft decision output information output as a result of performing the complexity-reduced soft decision output Viterbi decoding; (d) checking whether an iterative decoding completion condition is satisfied when the step (c) is completed, and outputting a decoded value to terminate the iterative decoding process when the iterative decoding completion condition is satisfied; and (e) normalizing the extrinsic reliability information calculated in the step (c) when the iterative decoding completion condition is not satisfied, performing reliability equalization work, and repeating the complexity-reduced soft decision output Viterbi decoding process for a next axis, wherein the step (c) comprises: (c1) calculating a ratio of a number of paths extended at a current point of time to a maximum number of paths and estimating a reference path metric using statistics of a path metric, when a total number of existing paths S of a trellis at the current point of time is larger than a maximum number of paths to be sustained, A; (c2) assigning the reference path metric as a minimum path metric value at a current point of time, when the total number of existing paths of the trellis at the current point of time for the block code is smaller than the maximum number of paths to be sustained (S<A); (c3) selecting a path having a better path metric than the reference path metric calculated in the step (c1); (c4) assigning a reliability at a node at the current point of time as a difference value between the reference path metric calculated in step (c1) and the path metric of an automatically generated surviving path if reliability cannot be defined at the node; and (c5) comparing reliability at previous points of time with reliability assigned at the current point of time for the path assigned in the step (c4), and assigning the reliability at the previous points of time as a minimum value amongst them.