An implementation of the generalized stack algorithm using a partially sorting algorithm

Kai Achtmann, S. Drosdek, W. Rupprecht · 2002

The generalized stack algorithm GSA (L, K), where L denotes the number of branches per state and K the number of extended paths, is a tree or trellis search algorithm combining a metric-first and a breadth-first strategy. The GSA is applied in the equalization of signals disturbed by noise and intersymbol interference (ISI) and in the decoding of convolutional codes. For wide trellises it is not useful to implement a Viterbi algorithm (VA), as the complexity of the VA raises exponentially to the width of the trellis. The GSA follows only C paths (with normally C/spl Gt/K), where C is the capacity of the path memory and the complexity of the GSA increases much less than that of the VA. Instead of it, the GSA requires a sorting device, which is rather expensive. Additionally the number of paths varies during the detection process and the paths have different time indices. Extracting and inserting few paths from a more or less sorted path memory disturbs the order only slightly. So we need only little rearranging effort for the path memory. This paper presents a suitable sorting structure for the GSA for a large path number. The structure exploits the inherent parallelism by a new sorting scheme called extended systolic priority queue (ESPQ). It provides a faster sorting than previous designs.>

Read the paper · More papers on PaperTik