Patent ID: 7046746

Claim:
An adaptive Viterbi decoder having a coded signal input accepting a coded signal received in a wireless receiver, the receiver to receive packets of information in a wireless data network, each packet having payload data coded at one or more of a set of data rates and modulated according to one of a set of modulation schemes, the packet having a packet structure that includes one or more header symbols containing information on the data rate and modulation scheme of the payload data, the header symbols encoded at a first data rate and using a first modulation scheme, the receiver including: a buffer preceding the Viterbi decoder having an output coupled to the coded signal input of the Viterbi decoder and of a length long enough to buffer input data while the decoder decodes the one or more header symbols, the decoder comprising: a branch metric generator with an input to the coded signal and generating branch metrics: an ACS subsystem coupled to and accepting the branch metrics from the branch metric generator; and a survivor memory subsystem coupled to and accepting input from the ACS subsystem, the survivor memory subsystem having a plurality of outputs, each providing a decoded version of the coded input signal decoded to a distinct decision depth; the Viterbi decoder being programmable to decode the input signal to one of a plurality of decision depths by selecting one of the memory unit outputs, wherein the Viterbi decoder is initially set to decode at the decision depth suitable for decoding the header, and after the Viterbi decoder decodes the one or more header symbols and the data rate of the remainder of the received packet is determined from the one or more header symbols, the output of the Viterbi decoder is selected to be an output suitable for decoding the input signals at the determined data rate, wherein the survivor memory has two outputs corresponding to a full decision depth suitable for a plurality of data rates and a shortened decision depth suitable for the first data rate, at least one of the plurality of data rates greater than the first data rate, wherein the one or more header symbols are decoded at the shortened decision depth, such that the length of the buffer is less than for decoding at the full decision depth.