A method of tracking time varying channels in a wireless packet based communication network comprising the steps of: providing a Channel Estimate database CEDB update function and a forward error correction FEC decode function in accordance with a pipeline processing algorithm, wherein FEC decode function outcomes are provided as an input to the CEDB update function, wherein the pipeline processing algorithm comprises the following steps: providing a first decoding TxEst[i,1] of a received symbol i, Rx[i], using a channel estimate h[i] for symbol i previously predicted using a first decoding TxEst[i-1, 1] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i] for symbol i using a second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1]; providing a second decoding TxEst[i,2] of the received symbol i, Rx[i], using the channel estimate h[i] for symbol i previously predicted using the second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i+1] for symbol i+1 using the first decoding TxEst[i,1] of symbol i and Rx[i]; wherein the first and second decoding of the received symbols is provided using the FEC decode function and wherein the predicting of the channel estimate comprises updating of the Channel Estimate database CEDB using the decodings of the received symbol. providing a Channel Estimate database CEDB update function and a forward error correction FEC decode function in accordance with a pipeline processing algorithm, wherein FEC decode function outcomes are provided as an input to the CEDB update function, wherein the pipeline processing algorithm comprises the following steps: providing a first decoding TxEst[i,1] of a received symbol i, Rx[i], using a channel estimate h[i] for symbol i previously predicted using a first decoding TxEst[i-1, 1] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i] for symbol i using a second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1]; providing a second decoding TxEst[i,2] of the received symbol i, Rx[i], using the channel estimate h[i] for symbol i previously predicted using the second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i+1] for symbol i+1 using the first decoding TxEst[i,1] of symbol i and Rx[i]; wherein the first and second decoding of the received symbols is provided using the FEC decode function and wherein the predicting of the channel estimate comprises updating of the Channel Estimate database CEDB using the decodings of the received symbol. providing a first decoding TxEst[i,1] of a received symbol i, Rx[i], using a channel estimate h[i] for symbol i previously predicted using a first decoding TxEst[i-1, 1] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i] for symbol i using a second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1]; providing a second decoding TxEst[i,2] of the received symbol i, Rx[i], using the channel estimate h[i] for symbol i previously predicted using the second decoding TxEst[i-1, 2] of symbol i-1 and Rx[i-1], while predicting a channel estimate h[i+1] for symbol i+1 using the first decoding TxEst[i,1] of symbol i and Rx[i]; wherein the first and second decoding of the received symbols is provided using the FEC decode function and wherein the predicting of the channel estimate comprises updating of the Channel Estimate database CEDB using the decodings of the received symbol.