If we dont know the channel coefficients but assume that we are sending a bunch of training symbols how does the receiver estimate the channel coefficients and how often should we estimate these channel coefficients?


2 Answers 2


The RAKE is essentially another form of diversity combining, since the spreading code induces a path diversity on the transmitted signal so that independent multipath components separated by more than a chip time can be resolved. In order to study the behavior of RAKE receivers, assume a channel model with impulse response h(t) = J j=0 αj δ(t − jTc), where αj is the gain associated with the j th multipath component. This model can approximate a wide range of multipath environments by matching the statistics of the complex gains to those of the desired environment. The statistics of the αj have been characterized empirically in for outdoor wireless channels. With this model, each branch of the RAKE receiver synchronizes to a different multipath component and coherently demodulates its associated signal. A larger J implies a higher receiver complexity but also increased diversity. The diversity combiner coherently combines the demodulator outputs. In particular, with selection combining the branch output ˆs i l with the largest path gain ai is output from the combiner, with equal gain combining all demodulator outputs are combined with equal weighting, and with maximal ratio combining the demodulator outputs are combined with a weight equal to the branch SNR – or to the SINR (signal-to-interference-plus-noise power ratio) if ISI interference is taken into account.


Simplifying somewhat (a lot, really) think of the training symbols as if we were sending a single pulse of a square wave. At the receiver, we receive a version of that that's been affected by multipath, so instead of a single pulse of the square wave, we receive several different versions of it, delayed by different amounts, and some of them (probably) inverted so they partially cancel each other, and so on.

In the rake fingers, we look for the single strongest version of the signal. Then we look for the next strongest, the next strongest, and so on, until we have the N strongest versions of the signal (N = number of rake fingers in the receiver).

Then we find the phase difference between each of the others and the last one of those to arrive. In each of the other rake fingers, we apply coefficients to get that finger's signal aligned/in phase with the last one. Then, of course, we combine them all together so they all reinforce each other instead of destructively canceling each other.

Of course, in real life we don't use a single pulse--but we still use a signal that makes it easy to recognize the starting point, stopping point, phase changes, etc.

As to how often to re-train: basically, you want to balance between two goals:

One one hand, you'd like to train as rarely as possible, so you devote as much time as possible to transmitting real data, and as little as possible doing training.

On the other hand, you'd like to to train as often as possible, to be sure you're making optimal use of the channel when you're transmitting actual data.

In most real-world systems, the time scale for re-training is on the order of tens of milliseconds or so.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.