The interference cancellation (IC)
system (500) includes a plurality of IC units, for which IC is applied. Each IC unit has its
spread spectrum code generator,
delay devices, correlators or matched filters (MF), spreading circuits and subtracting and adding devices. The IC process in accordance with the invention includes using a
bank of MF to despread the received
signal at every time instant corresponding to every identified multipath of every user's transmitted
signal. Based on the despread signals, an initial decision for the present information symbol of every user can be made using a single-user
receiver such as, for example, the conventional
Rake receiver or an
equalizer. Based on the initial decisions, IC regenerates the multipath signals for each user using timed versions of the
spread spectrum code, the delays of the multipaths, and the corresponding channel medium estimates. By adding the regenerated
signal estimates for the multipaths of all users, an estimate of the received signal at the input of the
receiver prior to despreading can be reconstructed. Each IC unit despreads the regenerated received signal using timed versions of the corresponding
spread spectrum code for each
multipath delay. The result is subsequently subtracted from the initial despread signal and, to avoid removing the desired user path component, the reconstructed, interference-free, desired despread signal path is also added. The above IC process may be repeated several times (e.g., using several IC stages). Performing interference cancellation after despreading the regenerated estimate of the received signal leads to substantially smaller complexity than the prior art approach where the interference cancellation occurs prior to dispreading.