DESCRIPTION

[0001]
1. Technical Field

[0002]
The invention relates to CodeDivision Multiple Access (CDMA) communications systems, which may be terrestrial or satellite systems, and in particular to interference suppression in CDMA communications systems.

[0003]
2. Background Art

[0004]
CodeDivision Multiple Access communications systems are well known. For a general discussion of such systems, the reader is directed to a paper entitled “Multiuser Detection for CDMA Systems” by DuelHallen, Holtzman and Zvonar, IEEE Personal Communications, pp. 4658, April 1995.

[0005]
In CDMA systems, the signals from different users all use the same bandwidth, so each user's signal constitutes noise or interference for the other users. On the uplink (transmissions from the mobiles) the interference is mainly that from other transmitting mobiles. Power control attempts to maintain the received powers at values that balance the interference observed by the various mobiles, but, in many cases, cannot deal satisfactorily with excessive interference. Where mobiles with different transmission rates are supported within the same cells, the highrate mobiles manifest strong interference to the lowrate mobiles. On the downlink (transmission towards the mobiles) transmissions from basestations of other cells as well as strong interference from the same basestation to other mobiles may result in strong interference to the intended signal. Downlink power control may be imprecise or absent altogether. In all these so called nearfar problem cases, the transmission quality can be improved, or the transmitted power reduced, by reducing the interference. In turn, for the same transmission quality, the number of calls supported within the cell may be increased, resulting in improved spectrum utilization.

[0006]
Power control is presently used to minimize the nearfar problem, but with limited success. It requires a large number of power control updates, typically 800 times per second, to reduce the power mismatch between the lowerrate and higherrate users. It is desirable to reduce the number of communications involved in such power control systems, since they constitute overhead and reduce overall transmission efficiencies. Nevertheless, it is expected that future CDMA applications will require even tighter power control with twice the number of updates, yet the nearfar problem will not be completely eliminated. It is preferable to improve the interference suppression without increasing the number of transmissions by the power control system.

[0007]
Multiuser detectors achieve interference suppression to provide potential benefits to CDMA systems such as improvement in capacity and reduced precision requirements for power control. However, none of these detectors is costeffective to build with significant enough performance advantage over present day systems. For example, the complexity of the optimal maximum likelihood sequence detector (MLSD) is exponential in the number of interfering signals to be cancelled, which makes its implementation excessively complex. Alternative suboptimal detectors fall into two groups: linear and subtractive. The linear detectors include decorrelators, as disclosed by K. S. Schneider, “Optimum detection of code division multiplexed signals”, IEEE Trans. on Aerospace and Electronic Systems, vol. 15, pp. 181185, January 1979 and R. Kohno, M. Hatori, and H. Imai, “Cancellation techniques of cochannel interference in asynchronous spread spectrum multiple access systems”, Electronics and Communications in Japan, vol. 66A, no. 5, pp. 2029, 1983. A disadvantage of such decorrelators is that they cause noise enhancement.

[0008]
Z. Xie, R. T. Short, and C. K. Rushforth, “A family of suboptimum detectors for coherent multiuser communications”, IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 683690, May 1990, disclosed the minimum mean square error linear (MMSE) detector, but such detectors are sensitive to channel and power estimation errors. In both cases, the processing burden still appears to present implementation difficulties.

[0009]
Subtractive interference cancellation detectors take the form of successive interference cancellers (SIC), as disclosed by R. Kohno et al., “Combination of an adaptive array antenna and a canceller of interference for directsequence spreadspectrum multipleaccess system”, IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 675682, May 1990, and parallel interference cancellers (PIC) as disclosed by M. K. Varanasi and B. Aazhang, “Multistage detection in asynchronous codedivision multipleaccess communications”, IEEE Trans. on Communications, vol. 38, no. 4, pp. 509519, April 1990, and R. Kohno et al., “Combination of an adaptive array antenna and a canceller of interference for directsequence spreadspectrum multipleaccess system”, IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 675682, May 1990. Both SIC detectors and PIC detectors require multistage processing and the interference cancellation achieved is limited by the amount of delay or complexity tolerated. These detectors are also very sensitive to channel, power and data estimation errors.

[0010]
One particular subtractive technique was disclosed by Shimon Moshavi in a paper entitled “MultiUser Detection for DSCDMA Communications”, IEEE Communications Magazine, pp. 124136, October 1996. FIG. 5 of Moshavi's paper shows a subtractive interference cancellation (SIC) scheme in which the signal for a particular user is extracted in the usual way using a matched filter and then spread again using the same spreading code for that particular user, i.e., the spreading code used to encode the signal at the remote transmitter. The spreadgain signal then is subtracted from the signal received from the antenna and the resulting signal is applied to the next user's despreader. This process is repeated for each successive despreader. Moshavi discloses a parallel version that uses similar principles.

[0011]
A disadvantage of this approach is its sensitivity to the data and power estimates, i.e., their accuracy and the sign of the data. A wrong decision will result in the interference component being added rather than subtracted, which will have totally the wrong effect.

[0012]
For more information about these techniques, the reader is directed to a paper by P. Patel and J. Holtzman entitled “Analysis of a Simple Successive Interference Cancellation Scheme in a DS/CDMA System”, IEEE Journal on Selected Areas in Communications, Vol. 12, No. 5, pp. 796807, June 1994.

[0013]
In a paper entitled “A New Receiver Structure for Asynchronous CDMA: STAR—The SpatioTemporal ArrayReceiver”, IEEE Transaction on Selected Areas in Communications, Vol. 16, No. 8, October 1998, S. Affes and P. Mermelstein (two of the present inventors), disclosed a technique for improving reception despite near/far effects and multiuser interference. In contrast to known systems in which the spreadagain signal is supplied to the input of the despreader of the channel to be corrected, Affes' and Mermelstein's proposed system treated all of the users signals together and processed them as a combined noise signal. If the components of the received signal from the different users were uncorrelated and all had equal power, or substantially equal power, this process would be optimal. In practice, however, there will be significant differences between the power levels at which the different users signals are received at the base station antenna. The same applies to the downlink. For example, a data user may generate much more power than a voice user simply because of the more dense information content of the data signal. Also, imperfect power control will result in power differences, i.e., channel variations may result in received powers different from their intended values, despite the best effort of the powercontrol process to equalize them.
DISCLOSURE OF INVENTION

[0014]
The present invention addresses the need for improved interference suppression without the number of transmissions by the power control system being increased, and, to this end, provides a receiver for a CDMA communications system which employs interference subspace rejection to obtain a substantially null response to interference components from selected user stations. Preferably, the receiver also provides a substantially unity response for a propagation channel via which a corresponding user's “desired” signal was received.

[0015]
According to one aspect of the invention, there is provided a receiver suitable for a base station of a CDMA communications system comprising at least one base station (11) having a transmitter and a said receiver and a multiplicity (U) of user stations (10 ^{1}, . . . , 10 ^{U}) including a plurality (U′) of user stations served by said at least one base station, each user station having a transmitter and a receiver for communicating with said at least one base station via a corresponding one of a plurality of channels (14 ^{1}, . . . , 14 ^{U}), the base station receiver for receiving a signal (X(t)) comprising components corresponding to spread signals transmitted by the transmitters of the plurality of user stations, each of said spread signals comprising a series of symbols spread using a spreading code unique to the corresponding user station, said base station receiver comprising:

[0016]
a plurality (U′) of receiver modules (20 ^{1}, . . . , 20 ^{NI}, 20 ^{d}) each for deriving from successive frames of the received signal (X(t)) estimates of said series of symbols of a corresponding one of the user stations,

[0017]
preprocessing means (18) for deriving from the received signal (X(t)) a series of observation matrices (Y_{n}) each for use by each of the receiver modules (20) in a said frame to derive an estimate of a symbol of a respective one of said series of symbols, and

[0018]
means (19,44;44/1,44/2) for deriving from each observation matrix a plurality of observation vectors (Y _{n}; Y _{n−1}; Z _{n} ^{1 }. . . Z _{n} ^{NI}; Z _{n} ^{d}) and applying each of the observation vectors to a respective one of the plurality of receiver modules (20 ^{1}, . . . , 20 ^{NI}, 20 ^{d}); each receiver module comprising;

[0019]
channel identification means (28) for deriving from one of the observation vectors a channel vector estimate (Ĥ _{n} ^{1}, . . . , Ĥ _{n} ^{NI}; Ŷ _{0,n} ^{d}; Ŷ _{0,n−1} ^{i}) based upon parameter estimates of the channel between the base station receiver and the corresponding user station transmitter;

[0020]
beamformer means (27 ^{1}, . . . , 27 ^{NI}, 27 ^{d}; 47 ^{d}) having coefficient tuning means (50) for producing a set of weighting coefficients in dependence upon the channel vector estimate, and combining means (51,52) for using the weighting coefficients to weight respective ones of the elements of a respective one of the observation vectors and combining the weighted elements to provide a signal component estimate (ŝ_{n} ^{1}, . . . , ŝ_{n} ^{U}); and

[0021]
symbol estimating means (29 ^{1}, . . . , 29 ^{U}, 30 ^{1}, . . . , 30 ^{U}) for deriving from the signal component estimate an estimate ({circumflex over (b)}_{n} ^{1}, . . . , {circumflex over (b)}_{n} ^{U}) of a symbol (b_{n} ^{1}, . . . , b_{n} ^{U}) transmitted by a corresponding one of the user stations (10 ^{1}, . . . , 10 ^{U}),

[0022]
wherein said receiver further comprises means (
42,
43) responsive to symbol estimates
$\left({\hat{b}}_{n}^{1},\dots \ue89e\text{\hspace{1em}},{\hat{b}}_{n}^{\mathrm{NI}};{g}^{1},{g}^{2},{g}^{3};{g}^{l+1\ue89en}\right)$

[0023]
and to channel estimates (
_{n} ^{1 }. . .
_{n} ^{NI};
_{n−1} ^{i}) comprising at least said channel vector estimates (
Ĥ _{n} ^{1}, . . . ,
Ĥ _{n} ^{NI}) for channels (
14 ^{1}, . . . ,
14 ^{NI}) of a first group (I) of said plurality of user stations (
10 ^{1}, . . . ,
10 ^{NI}) to provide at least one constraint matrix (Ĉ
_{n}) representing interference subspace of components of the received signal corresponding to said predetermined group, and in each of one or more receiver modules (
20A
^{d}) of a second group (D) of said plurality of receiver modules, the coefficient tuning means (
50A
^{d}) produces said set of weighting coefficients in dependence upon both the constraint matrix (Ĉ
_{n}) and the channel vector estimates (
Ĥ _{n} ^{d}) so as to tune said one or more receiver modules (
20A
^{d}) each towards a substantially null response to that portion of the received signal (X(t)) corresponding to said interference subspace.

[0024]
Embodiments of the invention may employ one of several alternative modes of implementing interference subspace rejection (ISR), i.e. characterizing the interference and building the constraint matrix. In a first embodiment, using a first mode conveniently designated ISRTR, each receiver module in the first group generates its respread signal taking into account the amplitude and sign of the symbol and the channel characteristics. The respread signals from all of the receiver modules of the first group are summed to produce a total realization which is supplied to all of the receiver modules in the second group.

[0025]
Where each receiver module of the second set uses decision feedback, it further comprises delay means for delaying each frame/block of the observation vector before its application to the beamformer.

[0026]
Whereas, in ISRTR embodiments, just one null constraint is dedicated to the sum, in a second embodiment, which uses a second mode conveniently designated ISRR, estimated realisations of all the interferers are used, and a null constraint is dedicated to each interference vector. In this second embodiment, in each receiver module of the first set, the symbols spread by the spreader comprise estimated realisations of the symbols of the output signal. Also, the constraint waveforms are not summed before forming the constraint matrix. Thus, the receiver module estimates separately the contribution to the interference from each unwanted (interfering) user and cancels it by a dedicated nullconstraint in the multisource spatiotemporal beamformer. In most cases, estimation of the interference requires estimates of the past, present and future data symbols transmitted from the interferers, in which case the receiver requires a maximum delay of one symbol and one processing cycle for the lowerrate or lowpower users and, at most a single null constraint per interferer.

[0027]
In a third embodiment of the invention which uses a third mode conveniently designated ISRD, i.e. the observation vector/matrix is decomposed over subchannels/fingers of propagation path and the beamformer nulls interference in each of the subchannels, one at a time. In most cases, the maximum number of constraints per interferer is equal to the number of subchannels, i.e. the number of antenna elements M multiplied by the number of paths P.

[0028]
In a fourth embodiment using a fourth mode conveniently designated ISRH because it implements nullresponses in beamforming using hypothetical realisations of the interference, without any delay, each receiver module of the first group further comprises means for supplying to the spreader possible values of the instant symbols of the output signal and the spreader supplies a corresponding plurality of respread signals to each of the receiver modules of the second group. In each receiver module of the second group, the despreader despreads the plurality of respread signals and supplies corresponding despread vectors to the beamformer. This embodiment suppresses any sensitivity to data estimation errors and, in most cases, requires a maximum of 3 null constraints per interferer.

[0029]
In a fifth embodiment using a fifth mode conveniently designated ISRRH because it uses the past and present interference symbol estimates, in each receiver module of the first group, the spreader spreads the symbols of the output signal itself and, in each receiver module of the second group, the beamformer then implements nullresponses over reduced possibilities/hypotheses of the interference realization. Conveniently, application of the output of the first despreader to the beamformer will take into account the time required for estimation of the interferer's symbol. In most cases, the beamformer will provide a maximum of 2 null constraints per interferer.

[0030]
In any of the foregoing embodiments of the invention, the channel identification unit may generate the set of channel vector estimates in dependence upon the extracted despread data vectors and the user signal component estimate.

[0031]
For each of the aboveidentified modes, the receiver modules may employ either of two procedures. On the one hand, the receiver module may apply the postcorrelation observation vector to the channel identification unit but supply the observation matrix itself directly to the beamformer, i.e. without despreading it. The constraint matrix then would be supplied to the beamformer without despreading.

[0032]
Alternatively, each receiver module could supply the postcorrelation observation vector to both the channel identification unit and the beamformer. In this case, the receiver module would also despread the constraint matrix before applying it to the beamformer.

[0033]
Where the reception antenna comprises a plurality of antenna elements, the beamformer unit may comprise a spatiotemporal processor, such as a filter which has coefficients tuned by the estimated interference signals.

[0034]
The receiver modules may comprise a first set that are capable of contributing a constraint waveform to the constraint matrix and a second set that have a beamformer capable of using the constraint matrix to tune the specified null response and unity response. In preferred embodiments, at least some of the plurality of receiver modules are members of both the first set and the second set, i.e. they each have means for contributing a constraint waveform and a beamformer capable of using the constraint matrix.

[0035]
In practice, the receiver modules assigned to the stronger user signals will usually contribute a constraint waveform and the beamformer units of the receiver modules assigned to other user signals will be capable of using it.

[0036]
The receiver module may comprise an MRC beamformer and an ISR beamformer and be adapted to operate in multistage, i.e., for each symbol period of frame, it will carry out a plurality of iterations. In the first iteration, the constraints set generator will receive the “past” and “future” estimates from the MRC beamformer and the “past” symbol estimate, i.e., from the previous frame, and process them to produce a new symbol estimate for the first iteration. In subsequent iterations of the current symbol period or frame, the constraintsset generator will use the “future” estimate from the MRC beamformer, the previous estimate from the ISR beamformer and the symbol estimate generated in the previous iteration. The cycle will repeat until the total number of iterations have been performed, whereupon the output from the receiver module is the desired estimated symbol for the current frame which then is used in the similar iterations of the next frame.

[0037]
The ISR receiver module comprising both an MRC beamformer and an ISR beamformer may comprise means {101Q^{d}} for extracting from the ISR beamformer (47Q^{d}) an interferencereduced observation vector and reshaping the latter to produce an interferencereduced observation matrix for despreading by the despreader. The channel identification unit then uses the despread interferencereduced observation vector to form interferencereduced channel vector estimates and supplies them to the residual MRC beamformer for use in adapting the coefficients thereof.

[0038]
The ISR beamformer may process blocks or frames of the observation vector that are extended by concatenating a current set of data with one or more previous frames or blocks of data.

[0039]
The different receiver modules may use different sizes of frame.

[0040]
In order to receive signals from a user transmitting multicode signals, the ISR receiver module may comprise a plurality of ISR beamformers and despreaders, each for operating upon a corresponding one of the multiple codes. The channel identification unit then will produce a channel vector estimate common to all of the multicodes, spread that channel vector estimate with each of the different multicodes and supply the resulting plurality of spread channel vector estimates to respective ones of the plurality of ISR beamformers.

[0041]
The channel identification unit of the multicode ISR receiver module may receive its postcorrelation observation vector from a despreader (19 ^{d,δ}) which uses a compound code comprising each of the multicodes weighted by the corresponding symbol estimate from a respective one of a corresponding plurality of decisionrule units. The despreader will use the compound code to despread the observation matrix and supply the corresponding compound postcorrelation observation vector to the channel identification unit. The channel identification unit will use that vector to produce the channel vector estimate and spread it using the different ones of the multicodes to produce the spread channel vector estimates.

[0042]
The ISR receiver module may comprise a despreader 19S^{d,1}, . . . , 19S^{d,F }using a plurality of codes which comprise segments of a main code specified for that user. Each segment corresponds to a symbol, and to a symbol duration in a large block of data, the number of segments being determined by the data rate, i.e., number of symbols within a block, of that user. Each receiver module may have a different number of segments assigned thereto according to the data rate of the corresponding user.

[0043]
Embodiments of the invention may be adapted for use in a user/mobile station capable of receiving userbound signals transmitted by a plurality of base stations each to a corresponding plurality of users, the receiver then comprising a selection of receiver modules each corresponding to a different base station and configured to extract a preselected number of said userbound signals. Where the particular user/mobile station is included in the preselected number, the receiver module may comprise a similar structure to the abovementioned multicode receiver, the plurality of despreaders being adapted to despread the observation matrix using respective ones of a set of codes determined as follows: (1) a preselected number NB of base stations from which the mobile receives signals and which have been selected for cancellation—represented by index ν′ which ranges from 1 to NB; (2) a preselected number (1 to NI) of interferers per base station preselected for cancellation; (3) the data rates of the selected interferers.

[0044]
Thus, according to a second aspect of the invention, there is provided a user station receiver for a CDMA communications system comprising a plurality (NB) of base stations (11) and a multiplicity (U) of user stations (10 ^{1}, . . . , 10 ^{U}), at least a plurality (U′) of the user stations being in a cell associated with one of said base stations and served thereby, said one base station having a plurality of transmitter modules for spreading user signals for transmission to the plurality (U′) of user stations, respectively, and a receiver for receiving spread user signals transmitted by the plurality (U′) of user stations, the user stations each having a receiver for receiving the corresponding spread user signal transmitted by the base station, said plurality (U′) of user stations each having a unique spreading code assigned thereto for use by the user station and the corresponding one of the base station transmitter modules to spread the user signals of that user for transmission,

[0045]
the spread user signals transmitted from the base station transmitter modules to a particular one of the plurality (U′) of user stations propagating via a plurality of channels (14 ^{1}, . . . , 14 ^{U′}), respectively,

[0046]
the receiver of a particular one of said plurality (U′) of user stations receiving a signal (X(t)) comprising components corresponding to spread user signals for said particular user station and spread user signals transmitted by other transmitter modules of said plurality (NB) of base stations for other users, each of said spread user signals comprising a series of symbols spread using the spreading code associated with the corresponding one of the user stations,

[0047]
said user station receiver comprising:

[0048]
a plurality (NB) of receiver modules (20 ^{ν′}) each for deriving from successive frames of the received signal (X(t)) estimates of sets of said series of symbols from a corresponding one of the base stations,

[0049]
preprocessing means (18) for deriving from the received signal (X(t)) a series of observation matrices (Y_{n}) each for use by each of the receiver modules (20 ^{ν′}) in a said frame to derive estimates of sets of said symbols, and

[0050]
means (19,44) for deriving from each observation matrix a plurality of sets of observation vectors (Y _{n} ^{ν′,1,1}, . . . , Y _{n} ^{ν′,NI, F} ^{ NI }; Z _{n} ^{ν′,1,1}, . . . , Z _{n} ^{ν′,NI,F} ^{ NI }) and applying each of the sets of observation vectors to a respective one of the plurality of receiver modules (20 ^{ν′});

[0051]
each receiver modules comprising;

[0052]
channel identification means (28T^{ν′}) for deriving from the respective one of the sets of observation vectors a set of spread channel vector estimates (Ŷ _{0,n} ^{ν′,1,1}, . . . , Ŷ _{0,n} ^{ν′,NI,F} ^{ NI }) based upon parameter estimates of the channel between the corresponding one of the base stations and said user station;

[0053]
beamformer means (47T^{ν′1,1}, . . . , 47T^{ν′,NI,F} ^{ NI }) having coefficient tuning means for producing sets of weighting coefficients in dependence upon the sets of channel vector estimates, respectively, and combining means for using each of the sets of weighting coefficients to weight respective ones of the elements of a respective one of the observation vectors and combining the weighted elements to provide a corresponding set of signal component estimates (ŝ_{n} ^{ν′,1,1}, . . . , ŝ_{n} ^{ν′,NI,F} ^{ NI }) and

[0054]
symbol estimating means (29T^{ν′,1,1}, . . . , 29T^{ν′,NI,F} ^{ NI }) for deriving from the set of signal component estimates a set of estimates ({circumflex over (b)}_{n} ^{ν′,1,1}, . . . , {circumflex over (b)}_{n} ^{ν′,NI,F} ^{ NI }) of symbols spread by the corresponding one of the transmitter modules and transmitted by the base station;

[0055]
said user station receiver further comprising means (
42,
43) responsive to said symbol estimates ({circumflex over (b)}
_{n} ^{ν′,1,1}, . . . , {circumflex over (b)}
_{n} ^{ν′,NI,F} ^{ NI }; g
_{n} ^{1}, g
_{n} ^{2}, g
_{n} ^{3}) and channel estimates (
_{n} ^{ν′}) from each of said plurality (NB) of receiver modules, said channel estimates comprising at least channel vector estimates (
Ĥ _{n} ^{ν′}) for channels (
14 ^{ν′}) between the user station receiver and said base stations, for providing at least one constraint matrix (Ĉ
_{n}) representing interference subspace of components of the received signal corresponding to said spread signals, and in each of said receiver modules (
20 ^{ν′}), the coefficient tuning means produces said sets of weighting coefficients in dependence upon both the constraint matrix (Ĉ
_{n}) and the channel vector estimates so as to tune said receiver module (
20 ^{ν′}) towards a substantially null response to that portion of the received signal (X(t)) corresponding to said interference subspace.

[0056]
Where the signal destined for the particular user/mobile station is not one of the preselected number of signals from the corresponding base station, the receiver may further comprise an ISR receiver module which has means for updating the ISR beamformer coefficients using the channel vector estimates from at least some of the receiver modules that have generated such channel vector estimates for the preselected signals for the same base station.

[0057]
Where the rates of the different users are not known to the instant mobile station, the codes may comprise a fixed number of segments N_{m }which is predetermined as a maximum data rate to be received. Any slower rates will effectively be oversampled for processing at the higher rate.

[0058]
The complexity of the multicode embodiments may be reduced by reducing the number of codes that are used by the despreaders. In particular, the bank of despreaders may use a set of codes that represent summation of the codes of the different NI interferers, to form a compound code which reduces the total number of codes being used in the despreaders.

[0059]
According to another aspect of the invention, there is provided a STAR receiver comprising an MRC beamformer which operates upon an observation vector which has not been despread.

[0060]
Of course, that does not preclude having all channels feed their interference components to all other channels.

[0061]
Receivers embodying the present invention can operate in a multipleinput, multipleoutput (MIMO) system, i.e. with multiple transmit antennas and multiple receive antennas.

[0062]
The foregoing and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description, in conjunction with the accompanying drawings, of preferred embodiments of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS

[0063]
[0063]FIG. 1 is a schematic diagram illustrating a portion of a CDMA communications system comprising a plurality of user stations, typically mobile, and a base station having a reception antenna comprising an array of antenna elements, and illustrating multipath communication between one of the user stations and the array of antennas;

[0064]
[0064]FIG. 2 is a simplified schematic diagram representing a model of the part of the system illustrated in FIG. 1;

[0065]
[0065]FIG. 3 is a detail block diagram of a spreader portion of one of the user stations;

[0066]
FIGS. 4(a) and 4(b) illustrate the relationship between channel characteristics, power control and signal power;

[0067]
[0067]FIG. 5 is a simplified block schematic diagram of a base station receiver according to the prior art;

[0068]
[0068]FIG. 6 is a detail block diagram of a preprocessing unit of the receiver;

[0069]
[0069]FIG. 7 is a detail block diagram of a despreader of the receiver;

[0070]
[0070]FIG. 8 illustrates several sets of users in a CDMA system ranked according to data rate;

[0071]
[0071]FIG. 9 is a detail block diagram showing several modules of a receiver embodying the present invention, including one having a beamformer operating on data that has not been despread;

[0072]
[0072]FIG. 10 is a detail schematic diagram showing a common matrix generator and one of a plurality of beamformers coupled in common thereto;

[0073]
[0073]FIG. 11 is a block diagram corresponding to FIG. 9 but including a module having a beamformer operating upon data which has first been despread;

[0074]
[0074]FIG. 12 is a schematic diagram of a userspecific matrix generator and an associated beamformer of one of the receiver modules of FIG. 11;

[0075]
[0075]FIG. 13 is a detail block schematic diagram of a receiver using total realisation of the interference to be cancelled (ISRTR) and without despreading of the data processed by the beamformer;

[0076]
[0076]FIG. 14 illustrates a respreader of one of the receiver modules of FIG. 13;

[0077]
[0077]FIG. 15 is a detail block schematic diagram of a receiver using individual realisations of the interference (ISRR) and without despreading of the data processed by the beamformer;

[0078]
[0078]FIG. 16 is a simplified block diagram of a receiver which decomposes each realisation of the interference over diversity paths (ISRD) and without despreading of the data processed by the beamformer;

[0079]
[0079]FIG. 17 is a simplified schematic block diagram of a receiver employing interference subspace rejection based upon hypothetical values of the symbols (ISRH) and without despreading of the data processed by the beamformer;

[0080]
[0080]FIG. 18 illustrates all possible triplets for the hypothetical values;

[0081]
[0081]FIG. 19 illustrates bit sequences for generating the hypothetical values;

[0082]
[0082]FIG. 20 is a simplified schematic block diagram of a receiver employing interference subspace rejection based upon both hypothetical values of the symbols and realisations (ISRRH) and without despreading of the data processed by the beamformer;

[0083]
[0083]FIG. 21 is a simplified schematic block diagram of a receiver similar to the ISRTR receiver shown in FIG. 13 but in which the beamformer operates upon the data that has first been despread;

[0084]
[0084]FIG. 22 is a simplified schematic block diagram of a receiver similar to the ISRR receiver shown in FIG. 15 but in which the beamformer operates upon data that has first been despread;

[0085]
[0085]FIG. 23 is a simplified schematic block diagram of a receiver similar to the ISRD receiver shown in FIG. 16 but in which the beamformer operates upon data that has first been despread;

[0086]
[0086]FIG. 24 is a simplified schematic block diagram of a receiver similar to the ISRH receiver shown in FIG. 18 but in which the beamformer operates upon data that has first been despread;

[0087]
[0087]FIG. 25 illustrates bit sequences generated in the receiver of FIG. 24;

[0088]
[0088]FIG. 26 is a simplified schematic block diagram of a receiver similar to the ISRRH receiver shown in FIG. 20 but in which the beamformer operates upon data that has first been despread;

[0089]
[0089]FIG. 27 illustrates an alternative STAR module which may be used in the receiver of FIG. 5 or in place of some of the receiver modules in the receivers of FIGS. 1317, 2024 and 26;

[0090]
[0090]FIG. 28 illustrates a receiver module which both contributes to the constraint matrix and uses the constraint matrix to cancel interference (JOINTISR);

[0091]
[0091]FIG. 29 illustrates a multistage ISR receiver module;

[0092]
[0092]FIG. 30 illustrates successive implementation of ISR;

[0093]
[0093]FIG. 31 illustrates a receiver module which uses ISR to enhance channel identification;

[0094]
[0094]FIG. 32 illustrates extension of the frame size to reduce noise enhancement and facilitate asynchronous operation and processing of high data rates;

[0095]
[0095]FIG. 33 illustrates implementation of ISR with mixed spreading factors;

[0096]
[0096]FIG. 34 illustrates an uplink ISR receiver module for a user employing multicode signals;

[0097]
[0097]FIG. 35 illustrates a modification of the receiver module of FIG. 34;

[0098]
[0098]FIG. 36 illustrates how multirate can be modelled as multicode;

[0099]
[0099]FIG. 37 illustrates frame size determination for multirate signals;

[0100]
[0100]FIG. 38 illustrates grouping of multirate signals to correspond to a specific user's symbol rate;

[0101]
[0101]FIG. 39 illustrates an “uplink” multirate ISR receiver module for a base station;

[0102]
[0102]FIG. 40 illustrates one of a plurality of “downlink” multirate receiver modules for a user station operating as a “virtual base station”;

[0103]
[0103]FIG. 41 illustrates a “downlink” multirate receiver module of the user station of FIG. 41 for extracting signals for that user station;

[0104]
[0104]FIG. 42 illustrates a multicode alternative to the receiver module of FIG. 40;

[0105]
[0105]FIG. 43 illustrates a second alternative to the receiver module of FIG. 40;

[0106]
[0106]FIG. 44 illustrates an ISR receiver module using pilot symbols;

[0107]
[0107]FIG. 45 illustrates in more detail an ambiguity estimator of the receiver module of FIG. 44;

[0108]
[0108]FIG. 46 illustrates an alternative ISR receiver module using pilot channels;

[0109]
[0109]FIG. 47 illustrates an alternative ISR receiver module employing symbol decoding at an intermediate stage;

[0110]
[0110]FIG. 48 illustrates modelling of the downlink as an uplink; and

[0111]
[0111]FIG. 49 illustrates a transmitter having multiple antennas with which receivers embodying the invention can operate.
BEST MODE(S) FOR CARRYING OUT THE INVENTION

[0112]
In the following description, identical or similar items in the different Figures have the same reference numerals, in some cases with a suffix.

[0113]
The description refers to several published articles. For convenience, the articles are cited in full in a numbered list at the end of the description and cited by that number in the description itself. The contents of these articles are incorporated herein by reference and the reader is directed to them for reference.

[0114]
[0114]FIGS. 1 and 2 illustrate the uplink of a typical asynchronous cellular CDMA system wherein a plurality of mobile stations 10 ^{1 }. . . 10 ^{U }communicate with a basestation 11 equipped with a receiving antenna comprising an array of several antenna elements 12 ^{1 }. . . 12 ^{M}. For clarity of depiction, and to facilitate the following detailed description, FIGS. 1 and 2 illustrate only five of a large number (U) of mobile stations and corresponding propagation channels of the typical CDMA system, one for each of a corresponding plurality of users. It will be appreciated that the mobile stations 10 ^{1 }. . . 10 ^{U }will each comprise other circuitry for processing the user input signals, but, for clarity of depiction, only the spreaders are shown in FIG. 2. The other circuitry will be known to those skilled in the art and need not be described here. Referring to FIG. 2, the mobile stations 10 ^{1 }. . . 10 ^{U }comprise spreaders 13 ^{1 }. . . 13 ^{U}, respectively, which spread a plurality of digital signals b_{n} ^{1 }. . . b_{n} ^{U }of a corresponding plurality of users, respectively, all to the same bandwidth, using spreading codes c^{1}(t) . . . c^{U}(t), respectively. The mobile stations 10 ^{1 }. . . 10 ^{U }transmit the resulting user signals to the base station 11 via channels 14 ^{1 }. . . 14 ^{U}, respectively, using a suitable modulation scheme, such as differential binary phase shift keying (DBPSK). Each of the mobile stations 10 ^{1 }. . . 10 ^{U }receives commands from the base station 11 which monitors the total received power, i.e. the product of transmitted power and that users code and attenuation for the associated channel and uses the information to apply power control to the corresponding signals to compensate for the attenuation of the channel. This is represented in FIG. 2 by multipliers 15 ^{1 }. . . 15 ^{U }which multiply the spread signals by adjustment factors ψ^{1}(t) . . . ψ^{U}(t), respectively. The array of M omnidirectional antenna elements 12 ^{1 }. . . 12 ^{M }at the base station 11 each receive all of the spread signals in common. The channels 14 ^{1 }. . . 14 ^{U }have different response characteristics H^{I}(t) . . . H^{U}(t), respectively, as illustrated in more detail in FIG. 1, for only one of the channels, designated channel 14 ^{u}. Hence, channel 14 ^{u }represents communication via as many as P paths between the single antenna of the associated mobile station 10 ^{U }and each of the base station antenna elements 12 ^{1 }. . . 12 ^{M}. The other channels are similarly multipath.

[0115]
As before, it is presumed that the base station knows the spreading codes of all of the mobile stations with which it communicates. The mobile stations will have similar configurations so only one will be described. Thus, the mobile station
10 ^{u }first differentially encodes its user's binary phase shift keyed (BPSK) bit sequence at the rate 1/T, where T is the bit duration, using circuitry (not shown) that is wellknown to persons skilled in this art. As illustrated in FIG. 3, its spreader
13 ^{u }then spreads the resulting differential binary phase shift keyed (DBPSK) sequence b
_{n} ^{u }(or b
^{u}(t) in the continuous time domain as represented in FIG. 3) by a periodic personal code sequence c
_{l} ^{u }(or c
^{u}(t) in the continuous time domain) at a rate 1/T
_{c}, where T
_{c }is the chip pulse duration. The processing gain is given by L=T/T
_{c}. For convenience, it is assumed that short codes are used, with the period of c
^{u}(t) equal to the bit duration T, though the system could employ long codes, as will be discussed later, with other applications and assumptions. Over one period T, the spreading code can be written as:
${c}^{\mu}\ue8a0\left(t\right)=\sum _{l=0}^{L1}\ue89e{c}_{l}^{u}\ue89e\phi \ue8a0\left(tl\ue89e\text{\hspace{1em}}\ue89e{T}_{c}\right),$

[0116]
where c
_{l} ^{u}=±1 for l=0, . . . , L−1, is a random sequence of length L and φ(t) is the chip pulse as illustrated in FIG. 3. Also, with a multipath fading environment with P resolvable paths, the delay spread Δτ is small compared to the bit duration (i.e. Δτ
T). P As illustrated in FIGS.
4(
a) and
4(
b), following signal weighting by the power control factor ψ
_{pc} ^{u}(t)
^{2}, the spread signal is transmitted to the base station
11 via channel
14 ^{u}. FIG. 4(
a) shows the “real” situation where the channel characteristics comprise a normalized value H
^{u}(T) and a normalization factor ψ
_{ch} ^{u}(T) which relates to the “amplitude” or attenuation of the channel, i.e. its square would be proportional to the power divided by the transmitted power. In FIG. 4(
a), power control is represented by a multiplier
17 ^{u}, and the subscript “pc”. FIG. 4(
b) shows that, for convenience, the channel characteristics can be represented (theoretically) by the normalized value H
^{u}(t) and the normalization factor ψ
_{ch} ^{u}(t) included in a single power factor ψ
^{u}(t) which is equal to ψ
_{pc} ^{u}(t)ψ
_{ch} ^{u}(t). ψ
_{pc} ^{u}(t) is the factor by which the transmitted signal is amplified or attenuated to compensate for channel power gain in ψ
_{ch} ^{u}(t) and to maintain the received power (ψ
^{u}(t))
^{2 }at the required level.

[0117]
In such a CDMA system, the signal of each of the mobile stations 10 ^{1 }. . . 10 ^{U }constitutes interference for the signals of the other mobile stations. For various reasons, some of the mobile stations will generate more interference than others. The components of one of these “strongly interfering” user stations and its associated channel are identified in FIGS. 1 and 2 by the index “i”. The components of one of the other “lowpower” user stations and its associated channel also are illustrated, and identified by the index “d”. The significance of this grouping of “interfering” and “lowpower” user stations will be explained later.

[0118]
At the base station 11, the spread data vector signals X^{1}(t) . . . X^{U}(t) from the base station antenna elements 12 ^{1 }. . . 12 ^{M}, respectively, are received simultaneously, as indicated by the adder 16 (FIG. 2), and the resulting observation vector X(t) is supplied to the receiver (see FIG. 5). The sum of the spread data vectors (signals) X^{I}(t) . . . X^{U}(t) will be subject to thermal noise. This is illustrated by the addition of a noise signal component N_{th}(t) by adder 16. The noise signal N_{th}(t) comprises a vector, elements of which correspond to the noise received by the different antenna elements.

[0119]
[0119]FIG. 5 illustrates a spatiotemporal array receiver (STAR) for receiving the signal X(t) at the base station 11. Such a receiver was described generally by two of the present inventors in reference [13]. The receiver comprises means, namely a preprocessing unit 18 and a plurality of despreaders 19 ^{1 }. . . 19 ^{U}, for deriving observation vectors from the observation matrix, and a plurality of spatiotemporal receiver (STAR) modules 20 ^{1 }. . . 20 ^{U}, each having its input connected to the output of a respective one of the despreaders 19 ^{1 }. . . 19 ^{U}. As shown in FIG. 6, the preprocessing unit 18 comprises a matched filter 22, a sampler 23 and a buffer 24. Matched filter 22 convolves the antenna array signal vector X(t), which is an M×1 vector, with a matched pulse φ(T_{c}−t) to produce the matched filtered signal vector Y(t) which then is sampled by sampler 23 at the chip rate 1/T_{c}, element by element. The sampler 23 supplies the resulting M×1 vectors Y_{n,l}, at the chip rate, to buffer 24 which buffers them to produce an observation matrix Y_{n }of dimension M×(2L−1). It should be noted that, although the present inventors' Canadian patent application No. 2,293,097 and U.S. Provisional application No. 60/171,604 had a duplicate of this preprocessing unit 18 in each of the despreaders 19 ^{1 }. . . 19 ^{U}, it is preferable to avoid such duplication and use a single preprocessor 18 to preprocess the received antenna array signal vector X(t).

[0120]
The despreaders 19 ^{1 }. . . 19 ^{U }each have the same structure, so only one will be described in detail with reference to FIG. 7 which illustrates despreader 19 ^{u}. Thus, despreader 19 ^{u }comprises a filter 25 ^{u }and a vector reshaper 26 ^{u}. The observation matrix Y_{n }is filtered by filter 21 ^{u }using the pseudorandom number sequence c_{L−1} ^{u }corresponding to that used in the spreader 13 ^{u }of the transmitter, i.e. c_{l} ^{u}, to produce the postcorrelation observation matrix Z_{n} ^{u }for user u. Vector reshaper 26 ^{u }concatenates the columns of the M×L matrix Z_{n} ^{u }to form a postcorrelation observation vector Z _{n} ^{u }of dimension ML×1. It should be noted that the vector reshaper 26 ^{u }need not be a distinct physical element but is depicted as such to represent a mathematical function. In practice, the function will likely be determined merely by allocation of resources, such as memory.

[0121]
Referring again to FIG. 5, the postcorrelation observation vectors
Z _{n} ^{1 }. . .
Z _{n} ^{U }from despreaders
19 ^{1 }. . .
19 ^{U }are processed by the STAR modules
20 ^{1 }. . .
20 ^{U}, respectively, to produce symbol estimates {circumflex over (b)}
_{n} ^{1 }. . . {circumflex over (b)}
_{n} ^{U }corresponding to the transmitted symbols b
_{n} ^{1 }. . . b
_{n} ^{U }(see FIG. 2) and power estimates
${\left({\hat{\psi}}_{n}^{I}\right)}^{2}\ue89e\text{\hspace{1em}}\ue89e\dots \ue89e\text{\hspace{1em}}\ue89e{\left({\hat{\psi}}_{n}^{U}\right)}^{2}$

[0122]
which are supplied to subsequent stages (not shown) of the receiver for processing in known manner.

[0123]
The STAR modules 20 ^{1 }. . . 20 ^{U }each comprise the same elements, so the construction and operation of only one of them, STAR module 20 ^{u}, will now be described.

[0124]
The STAR module 20 ^{u }comprises a beamformer 27 ^{u}, a channel identification unit 28 ^{u}, a decision rule unit 29 ^{u }and a power estimation unit 30 ^{u}. The channel identification unit 28 ^{u }is connected to the input and output, respectively, of the beamformer 27 ^{u }to receive the postcorrelation observation vector Z _{n} ^{u }and the signal component estimate ŝ_{n} ^{u}, respectively. The channel identification unit 28 ^{u }replicates, for each frame M×L the characteristics H^{u}(t), in space and time, of the associated user's transmission channel 14 ^{u}. More specifically, it uses the postcorrelation observation vector Z _{n} ^{u }and signal component estimate ŝ_{n} ^{u }to derive a set of parameter estimates Ĥ _{n} ^{u}, which it uses to update the weighting coefficients W _{n} ^{u }of the beamformer 27 ^{u }in succeeding symbol periods. The symbol period corresponds to the data frame of M×L elements.

[0125]
The beamformer 27 ^{u }comprises a spatiotemporal maximum ratio combining (MRC) filter which filters the spacetime vector Z _{n} ^{u }to produce the despread signal component estimate ŝ_{n} ^{u}, which it supplies to both the decision rule unit 29 ^{u }and the power estimation unit 30 ^{u}. The decisionrule unit 29 ^{u }outputs a binary symbol {circumflex over (b)}_{n} ^{u }according to the sign of the signal component estimate ŝ_{n} ^{u}. The binary output signal constitutes the output of the decision rule unit 30 ^{u }and is an estimate of the corresponding user signal b_{n} ^{u }spread by spreader 13 ^{u }of the corresponding user station 10 ^{u }(FIGS. 1 and 2).

[0126]
The signal component estimate ŝ_{n} ^{u }is processed in subsequent parts of the receiver. For example, it may be differentially decoded and, possibly, deinterleaved and then data decoded—if the corresponding inverse operations were done before transmission.

[0127]
The power estimation unit
30 ^{u }uses the raw signal component estimate ŝ
_{n} ^{u }to derive an estimate
${\left({\hat{\psi}}_{n}^{u}\right)}^{2}$

[0128]
of the power in that user's signal component ŝ
_{n} ^{u }of the antenna array signal vector X(t) and supplies the power estimate
${\left({\hat{\psi}}_{n}^{u}\right)}^{2}$

[0129]
to the subsequent stages (not shown) of the receiver for derivation of power level adjustment signals in known manner.

[0130]
The receiver shown in FIG. 5 will perform satisfactorily if there are no strong interferers, i.e., if it can be assumed that all users transmit with the same modulation and at the same rate, and that the basestation knows all the spreading codes of the terminals with which it is communicating. On that basis, operation of the receiver will be described with reference to the user channel identified by index u.

[0131]
At time t, the antenna array signal vector X(t) received by the elements
12 ^{1 }. . .
12 ^{M }of the antenna array of the one particular cell shown in FIGS. 1 and 2 can be written as follows:
$\begin{array}{cc}X\ue8a0\left(t\right)=\sum _{u=1}^{U}\ue89e{X}^{u}\ue8a0\left(t\right)+{N}^{\mathrm{th}}\ue8a0\left(t\right)& \left(2\right)\end{array}$

[0132]
where U is the total number of mobile stations whose signals are received at the basestation
11 from inside or outside the cell, X
^{u}(t) is the received signal vector from the mobile station
10 ^{u}, i.e., of index u, and N
^{th}(t) is the thermal noise received at the M antenna elements. The contribution X
^{u}(t) of the uth mobile station
10 ^{u }to the antennaarray signal vector X(t) is given by:
$\begin{array}{cc}\begin{array}{c}{X}^{u}\ue8a0\left(t\right)={\psi}^{u}\ue8a0\left(t\right)\ue89e{H}^{u}\ue8a0\left(t\right)\otimes {c}^{u}\ue8a0\left(t\right)\ue89e{b}^{u}\ue8a0\left(t\right)\\ ={\psi}^{u}\ue8a0\left(t\right)\ue89e\sum _{p=1}^{P}\ue89e{G}_{p}^{u}\ue8a0\left(t\right)\ue89e{\varepsilon}_{p}^{u}\ue8a0\left(t\right)\ue89e{c}^{u}\ue8a0\left(t{\tau}_{p}^{u}\ue8a0\left(t\right)\right)\ue89e{b}^{u}\ue8a0\left(t{\tau}_{p}^{u}\ue8a0\left(t\right)\right)\end{array}& \text{(2a)}\end{array}$

[0133]
where H
^{u}(t) is the channel response vector of the channel
14 ^{u }between the uth mobile station
10 ^{u }and the array of antenna elements and {circle over (×)} denotes timeconvolution. In the righthand term of the above equation, the propagation timedelays τ
_{p} ^{u}(t) ∈[0, T] along the P paths, p=1, . . . , P, (see FIG. 1), are chipasynchronous, G
_{p} ^{u}(t) are the propagation vectors and ε
_{p} ^{u}(t)
^{2 }are the power fractions along each path
$\left(i.e.,\sum _{p=1}^{p}\ue89e{{\varepsilon}_{p}^{u}\ue8a0\left(t\right)}^{2}=1\right)$

[0134]
of the total power ψ^{u}(t)^{2 }received from the uth mobile station 10 ^{u}. The received power is affected by pathloss, Rayleigh fading and shadowing. It is assumed that G_{p} ^{u}(t), ε_{p} ^{u}(t)^{2 }and ψ^{u}(t)^{2 }vary slowly and are constant over the bit duration T.

[0135]
In the preprocessing unit
18 (see FIG. 6), the antenna array signal vector X(t) is filtered with the matched pulse to provide the matchedfiltering signal vector Y
_{n}(t) for frame n as follows:
$\begin{array}{cc}{Y}_{n}\ue8a0\left(t\right)=\frac{1}{{T}_{c}}\ue89e{\int}_{{D}_{\phi}}\ue89eX\ue8a0\left(\mathrm{aT}/2+\mathrm{nT}+t+{t}^{\prime}\right)\ue89e\phi \ue8a0\left({t}^{\prime}\right)\ue89e\uf74c{t}^{\prime}& \left(3\right)\end{array}$

[0136]
where D_{φ} denotes the temporal support of φ(t) and a ∈{0,1} stands for a possible timeshift by T/2 to avoid, if necessary, the frame edges lying in the middle of the delay spread (see reference [13]). For the sake of simplicity, it is assumed in the following that a=0. Note that for a rectangular pulse D_{φ} is [0, T_{c}]. In practice, it is the temporal support of a truncated squareroot raised cosine.

[0137]
It should be noted that the above description is baseband, without loss of generality. Both the carrier frequency modulation and demodulation steps can be embedded in the chip pulseshaping and matchedfiltering operations of Equations (1) and (3), respectively.

[0138]
Thus, after sampling at the chip rate 1/T_{c }and framing over 2L−1 chip samples at the bit rate to form a frame, the preprocessing unit 18 derives the M×(2L −1) matchedfiltering observation matrix:

Y _{n} =[Y _{n,0} , Y _{n,1} , . . . , Y _{n,2L−2}], (4)

[0139]
where Y _{n,l} =Y _{n}(lT _{c}).

[0140]
In the despreader
19 ^{u }(see FIG. 7), the postcorrelation vector for frame number n for user number u is obtained as:
$\begin{array}{cc}{Z}_{n,l}^{u}=\frac{1}{L}\ue89e\sum _{k=0}^{L1}\ue89e{Y}_{n,lk}\ue89e{c}_{k}^{u}.& \left(5\right)\end{array}$

[0141]
Framing this vector over L chip samples at the bit rate forms the postcorrelation observation matrix:

Z _{n} ^{u} =[Z _{n,0,} ^{u} , Z _{n,1} ^{u} , . . . , Z _{n,L−1} ^{u}]. (6)

[0142]
The postcorrelation data model (PCM) (see reference [13]) details the structure of this matrix as follows:

Z _{n} ^{u} =H _{n} ^{u} s _{n} ^{u} +N _{PCM,n} ^{u}, (7)

[0143]
where Z_{n} ^{u }is the spatiotemporal observation matrix, H_{n} ^{u }is the spatiotemporal propagation matrix, s_{n} ^{u}=b_{n} ^{u}ψ_{n} ^{u }is the signal component and N_{PCM,n} ^{u }is the spatiotemporal noise matrix. Equation 7 provides an instantaneous mixture model at the bit rate where the signal subspace is onedimensional in the M×L matrix space. For convenience, the vector reshaper 26 ^{u }of despreader 19 ^{u }transforms the matrices Z_{n} ^{u}, H_{n} ^{u }and N_{PCM,n} ^{u }into (M×L)dimensional vectors Z _{n} ^{u}, H _{n} ^{u }and Z _{PCM,n} ^{u }respectively, by concatenating their columns into one spatiotemporal column vector to yield the following narrowband form of the PCM model (see reference [13]):

Z _{n} ^{u} =H _{n} ^{u} s _{n} ^{u} +N _{PCM,n} ^{u} (8)

[0144]
To avoid the ambiguity due to a multiplicative factor between
H _{n} ^{u }and s
_{n} ^{u}, the norm of
H _{n} ^{u }is fixed to
$\sqrt{M}.$

[0145]
The PCM model significantly reduces intersymbol interference. It represents an instantaneous mixture model of a narrowband source in a onedimensional signal subspace and enables exploitation of low complexity narrowband processing methods after despreading. Processing after despreading exploits the processing gain to reduce the interference and to ease its cancellation in subsequent steps by facilitating estimation of channel parameters.

[0146]
As discussed in reference [13], the spatiotemporal arrayreceiver (STAR) can be used to detect each user separately at the basestation 11. In addition to exploiting the processing gain to reduce interference, the STAR allows accurate synchronization and tracking of the multipath delays and components and shows inherent robustness to interference. The STAR also allows coherent combining of the data. This receiver is found to provide fast and accurate timevarying multipath acquisition and tracking. Moreover, it significantly improves call capacity by spatiotemporal maximum ratio combining (MRC) in a coherent detection scheme implemented without a pilot signal. For the sake of clarity, the steps of STAR that are relevant to the implementation of the present invention will be reviewed briefly below, with reference to receiver module 20 ^{u }of FIG. 5.

[0147]
As shown in FIG. 5, the despreader
19 ^{u }supplies the postcorrelation observation vector
Z _{n} ^{u}, to both the channel identification unit
28 ^{u }and the MRC beamformer
27 ^{u }of STAR module
20 ^{u}. Using spatiotemporal matched filtering (
W _{n} ^{u} =Ĥ _{n} ^{u} /M) (i.e. spatiotemporal maximum ratio combining,
W _{n} ^{u} ″Ĥ _{n} ^{u}=1), the STAR module
20 ^{u }provides estimates of signal component s
_{n} ^{u}, its DBPSK bit sequence b
_{n} ^{u }and its total received power
${\left({\psi}_{n}^{u}\right)}^{2}$

[0148]
as follows:
$\begin{array}{cc}{\hat{s}}_{n}^{u}=\mathrm{Real}\ue89e\text{\hspace{1em}}\ue89e\left\{{\underset{\_}{W}}_{n}^{{u}^{H}}\ue89e{\underset{\_}{Z}}_{n}^{u}\right\}=\mathrm{Real}\ue89e\left\{\frac{{\hat{\underset{\_}{H}}}_{n}^{{u}^{H}}\ue89e{\underset{\_}{Z}}_{n}^{u}}{M}\right\},& \left(9\right)\\ {\hat{b}}_{n}^{u}=\mathrm{Sign}\ue89e\text{\hspace{1em}}\ue89e\left\{{\hat{s}}_{n}^{u}\right\},& \left(10\right)\\ {\left({\hat{\psi}}_{n}^{u}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\psi}}_{n1}^{u}\right)}^{2}+\alpha \ue89e{\uf603{\hat{s}}_{n}^{u}\uf604}^{2},& \left(11\right)\end{array}$

[0149]
where α is a smoothing factor. It should be noted that with ad hoc modifications, differential modulation and quasicoherent differential decoding still apply with DMPSK. Orthogonal modulation can even be detected coherently by STAR without a pilot (references [17] and [18]). Using the postcorrelation observation vector Z _{n} ^{u }and the new signal component estimate ŝ_{n} ^{u }from the beamformer 27 ^{u}, the channel identification unit 28 ^{u }provides an estimate {circumflex over (H)}_{n} ^{u }of the channel 14 ^{u }for user station 10 ^{u}. The channel identification unit 28 ^{u }updates the channel vector estimate {circumflex over (H)}_{n} ^{u }by means of a decision feedback identification (DFI) scheme whereby the signal component estimate ŝ_{n} ^{u }is fed back as a reference signal in the following eigensubspace tracking procedure:

Ĥ _{n+1} ^{M} =Ĥ _{n} ^{u}+μ( Z _{n} ^{u} −Ĥ _{n} ^{u} ŝ _{n} ^{u})ŝ _{n} ^{u}, (12)

[0150]
where μ is an adaptation stepsize. Alternatively, the product {circumflex over (ψ)}_{n} ^{u}{circumflex over (b)}_{n} ^{u }could be fed back instead of the signal component estimate ŝ_{n} ^{u}. It should be noted that, if the modulation is complex, the second occurrence of signal component estimate Ŝ_{n} ^{u }should be replaced by its conjugate (Ŝ_{n} ^{u}). This DFI scheme allows a 3 dB coherent detection gain in noise reduction by recovering the channel phase offsets within a sign ambiguity without a pilot. Note that a reducedpower pilot can be used to avoid differential coding and decoding (reference [21]). The procedure that further enhances the channel vector estimate Ĥ _{n+1} ^{u }to obtain Ĥ _{n+1} ^{u }from the knowledge of its spatiotemporal structure (i.e. manifold) allows a fast and accurate estimation of the multipath timedelays {circumflex over (τ)}_{1,n} ^{u}, . . . , {circumflex over (τ)}_{P,n} ^{u }in both the acquisition and the tracking modes (both versions of this procedure can be found in reference [13]). This improved estimation accuracy achieves robustness to channel estimation errors, and reduces sensitivity to timing errors, when STAR is used in multiuser operation.

[0151]
For further information about STAR, the reader is directed to the articles by Affes and Mermelstein identified as references [13] and [17] to [21].

[0152]
If, as was assumed in reference [13], the spatiotemporal noise vector N _{PCM,n} ^{u }is partially uncorrelated, power control on the uplink is generally able to equalize the received signal powers. However, the assumption that noise is uncorrelated becomes untenable on the downlink due to pathloss and shadowing and when the power of particular users (e.g., “priority links”, acquisition, higherorder modulations or higher datarates in mixedrate traffic) is increased intentionally. Within a particular cell, there may be users having many different strengths, perhaps because of different data rates. FIG. 8 illustrates, as an example, a cell in which there are four different sets of users arranged hierarchically according to data rate. The first set I comprises users which have relatively high data rates, the second set M1 and third set M2 both comprise users which have intermediate data rates, and the fourth set D comprises users which have relatively low data rates. In practice, the receivers of the high data rate users of set I will not need to cancel any outset interference from the users in sets M1, M2 and D, but their transmissions will contribute to interference for the receiver modules in those sets. Intermediate data rate users in sets M1 and M2 will need to cancel “outset” interference from the high data rate users of the set I but not from the users in set D. They will themselves be contributors of “outset” interference to the users in set D. The receivers of users in set D must cancel “outset” interference from sets I, M1 and M2.

[0153]
It is also possible for a receiver of a user within a particular set to cancel “inset” interference from one or more users within the same set; and itself be a contributor to such “inset” interference. Embodiments of the invention applicable to these “outset” and “inset” situations will be described hereinafter. In the description, where a particular user's signal is treated as interference and cancelled, it will be deemed to be a “contributor” and, where a particular user's receiver module receives information to enable it to cancel another user's interference, it will be deemed to be a “recipient”. To simplify the description of the preferred embodiments described herein, it will be assumed that all users employ the same modulation at the same rate. For the purpose of developing the theory of operation, initially it will be assumed that, among the mobile stations in the cell, there will be a first set I of “strong” contributor users, one of which is identified in FIGS. 1 and 2 by index “i”, whose received signal powers are relatively high and hence likely to cause more interference, and a second set D of “lowpower” recipient users, one of which is identified in FIGS. 1 and 2 by index “d”, whose received signal powers are relatively low and whose reception may be degraded by interference from the signals from the strong users. In order to receive the lowpower users adequately, it usually is desirable to substantially eliminate the interference produced by the highpower users. For simplicity, most of the preferred embodiments of the invention will be described on the basis that the highpower users can be received adequately without interference suppression. It should be appreciated, however, that the “strong” user stations could interfere with each other, in which case one could also apply to any interfering mobile the coloured noise model below and the nearfar resistant solution proposed for the lowpower user, as will be described later.

[0154]
Assuming the presence of NI interfering users assigned the indices i=1 to NI, then the spatiotemporal observation vector of any interfering user (u=i∈{1, . . . , NI}) is given from Equation 8 by:

Z _{n} ^{i} =H _{n} ^{i} s _{n} ^{i} +N _{PCM,n} ^{i}, (13)

[0155]
where
N _{PCM,n} ^{i }can still be assumed to be an uncorrelated white noise vector if the processing gain of this user is not very low. On the other hand, from the point of view of any lowpower user (u=d∉{1, . . . , NI}), the spatiotemporal observation vector is:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{Z}}_{n}^{d}={\underset{\_}{H}}_{n}^{d}\ue89e{s}_{n}^{d}+{\underset{\_}{I}}_{\mathrm{PCM},n}^{d}+{\underset{\_}{N}}_{\mathrm{PCM},n}^{d}\\ ={\underset{\_}{H}}_{n}^{d}\ue89e{s}_{n}^{d}+\sum _{i=1}^{\mathrm{NI}}\ue89e{\underset{\_}{I}}_{\mathrm{PCM},n}^{d,i}+{\underset{\_}{N}}_{\mathrm{PCM},n}^{d},\end{array}& \left(14\right)\end{array}$

[0156]
where, in addition to the uncorrelated white noise vector N _{PCM,n} ^{d}, there is included a total interference vector I _{PCM,n} ^{d }which sums a random coloured spatiotemporal interference vector from each interfering mobile denoted by I _{PCM,n} ^{d,i }for i=1, . . . , NI. At frame number n, the realization of the vector I _{PCM,n} ^{d,i }results from matchedpulse filtering, chiprate sampling, despreading with c_{i} ^{d}, bitrate framing, and matrix/vector reshaping of the received signal vector X^{i}(t) from the ith interfering mobile using Equations (3) to (6).

[0157]
The receiver shown in FIG. 5 would receive the signals from all of the user stations independently of each other. It should be noted that there is no crossconnection between the receiver modules 20 ^{1}, . . . , 20 ^{U}, specifically between their STAR modules 20 ^{1 }. . . 20 ^{u }. . . 20 ^{U}, for suppression of interference from the signals of mobile stations which constitute strong interferers. While the matched beamformer of Equation (9) is optimal in uncorrelated white noise, it is suboptimal when receiving the lowpower users due to spatialtemporal correlation of the interference terms. To allow the accommodation of additional users in the presence of much stronger interfering mobiles in the target cell, in embodiments of the present invention the receiver of FIG. 5 is upgraded to obtain much stronger nearfar resistance, specifically by adapting the beamformer of Equation (9) to reject the interference contributions from the interfering strong users.

[0158]
In the general case, the total interference
I _{PCM,n} ^{d }experienced by a user d in set D is an unknown random vector which lies at any moment in an interference subspace spanned by a matrix, say C
_{PCM,n} ^{d }(i.e.,
I _{PCM,n} ^{d}∈Vec{C
_{PCM,n} ^{d}}) with dimension depending on the number of interference parameters (i.e., power, data, multipath components and delays) assumed unknown or estimated a priori. As will become apparent from the following descriptions of preferred embodiments, in practice, the matrix C
_{PCM,n} ^{d}, which will be referred to as the constraint matrix, can be derived and estimated in different ways. To achieve nearfar resistance, the beamformer must conform to the following theoretical constraints:
$\begin{array}{cc}\{\begin{array}{c}{\underset{\_}{W}}_{n}^{d}\ue89e{\underset{\_}{H}}_{n}^{d}=1,\\ {\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{C}_{\mathrm{PCM},n}^{d}=0,\end{array}\Rightarrow \{\begin{array}{c}{\underset{\_}{W}}_{n}^{{d}^{n}}\ue89e{\underset{\_}{H}}_{n}^{d}=1,\\ {\underset{\_}{W}}_{n}^{{d}^{n}}\ue89e{I}_{\mathrm{PCM},n}^{d}=0.\end{array}& \left(15\right)\end{array}$

[0159]
The first constraint provides a substantially distortionless response to the lowpower user while the second instantaneously rejects the interference subspace and thereby substantially cancels the total interference. This modification of the beamforming step of STAR will be referred to as interference subspace rejection (ISR).

[0160]
With an estimate of the constraint matrix Ĉ
_{PCM,n} ^{d }available (as described later), the ISR combiner (i.e., the constrained spatiotemporal beamformer)
W _{n} ^{d }after despreading is obtained by:
$\begin{array}{cc}{Q}_{\mathrm{PCM},n}^{d}={\left({\hat{C}}_{\mathrm{PCM},n}^{{d}^{H}}\ue89e{\hat{C}}_{\mathrm{PCM},n}^{d}\right)}^{1},& \left(16\right)\\ {\Pi}_{\mathrm{PCM},n}={I}_{M=L}{\hat{C}}_{\mathrm{PCM},n}^{d}\ue89e{Q}_{\mathrm{PCM},n}^{d}\ue89e{\hat{C}}_{\mathrm{PCM},n}^{{d}^{H}},& \left(17\right)\\ {\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{\mathrm{PCM},n}^{d}\ue89e{\underset{\_}{\hat{H}}}_{n}^{d}}{{\underset{\_}{\hat{H}}}_{n}^{{d}^{H}}\ue89e{\Pi}_{\mathrm{PCM},n}^{d}\ue89e{\underset{\_}{\hat{H}}}_{n}^{d}},& \left(18\right)\end{array}$

[0161]
where I_{M*L }denotes a M*L×M*L identity matrix. First, the projector π_{PCM,n }orthogonal to the constraint matrix Ĉ_{PCM,n }is formed. It should be noted from Equations (16) and (17) that the inverse matrix Q_{PCM,n} ^{d }is not the direct inverse of constraint matrix C_{PCM,n} ^{d }but part of the pseudoinverse of C_{PCM,n} ^{d}. For convenience, however, it will be referred to as the inverse matrix hereafter. Second, the estimate of the lowpower response vector {circumflex over (Y)}_{n} ^{d }is projected and normalized.

[0162]
Whereas, using the above constraints, the ISR beamformer may process the lowpower user's data vector after it has been despread, it is possible, and preferable, to process the data vector without first despreading it. In either case, however, the data vector will still be despread for use by the channel identification unit. Although it is computationally more advantageous to do so without despreading, embodiments of both alternatives will be described. First, however, the spread data model of Equation (2) will be reformulated and developed and then used to derive various modes that implement ISR combining of the data, without despreading, suitable for different complementary situations.

[0163]
Data Model Without Despreading

[0164]
The observation matrix Y
_{n }of Equation (4) which provides the postcorrelation matrix Z
_{n }of Equation (7) by despreading and framing at the bit rate, can be expressed as:
$\begin{array}{cc}{Y}_{n}=\sum _{u=1}^{U}\ue89e{Y}_{n}^{u}+{N}_{n}^{\mathrm{pth}},& \left(19\right)\end{array}$

[0165]
where each user u contributes its userobservation matrix Y_{n} ^{u}, obtained by Equations (3) and (4) with X(t) replaced by X^{u}(t) in Equation (3), and where the preprocessed thermal noise contributes:

N _{n} ^{pth} =[N ^{pth}(nT), N ^{pth}(nT+T _{c}), . . . , N ^{pth}(nT+(2L−2)T _{c})]. (20)

[0166]
Using the fact that any bittriplet [b_{n−1} ^{u}, b_{n} ^{u}, b_{n+1} ^{u}] contributing to channel convolution (see Equation (2a) in Y_{n} ^{u }can be composed as:

[b _{n−1} ^{u} , b _{n} ^{u} , b _{n+1} ^{u} ]=b _{n−1} ^{u}[1,0,0]+b _{n} ^{u}[0,1,0]+b _{n+1} ^{u}[0,0,1], (21)

[0167]
the sequence b^{u}(t) can be locally approximated over the nth block by means of the canonic generating sequences g^{1}(t), g^{2}(t) and g^{3}(i) in FIG. 25 as:

b ^{u}(t)=b _{n} ^{u} g ^{l} ^{ 0,n }(t)+b _{n−1} ^{u} g ^{l} ^{ −1,n }(t)+b _{n+1} ^{u} g ^{l} ^{ +1,n }(t), (22)

[0168]
where the indices l_{0,n}, l_{−1,n}, l_{+1,n}∈{1, 2, 3} are permuted at each block so that the corresponding canonic generating sequences locally coincide with [0, 1, 0], [1, 0, 0] and [0, 0, 1], respectively. Assuming slow timevariations of ψ(t) and H(t) compared to the symbol duration:

Y _{n} ^{u} =s _{n} ^{u} Y _{0,n} ^{H} +s _{n−1} ^{u} Y _{−1,n} ^{u} +s _{n+1} ^{u} Y _{+1,n} ^{u}, (23)

[0169]
where the canonic userobservation matrices Y_{k,n} ^{u }are obtained by Equations (3) and (4) with X(t) in Equation (3) replaced, respectively for k=−1, 0, +1, by:

X _{k} ^{u}(t)=H ^{u}(t){circle over (×)} g ^{l} ^{ cm }(t)c ^{u}(t). (24)

[0170]
Good approximations of Y_{−1,n} _{ u }and Y_{+1,n} _{ u }can be actually obtained at each iteration by L simple backward/forward shifts of the columns of Y_{0,n} ^{u }with zero column inputs.

[0171]
It should be noted that the canonic generating sequences allow more accurate reconstruction (e.g., overlapadd) of timevarying channels. Also, the resulting decomposition in Equation (23) holds for long PN codes.

[0172]
It should be noted that this decomposition also holds for any complexvalued symboltriplet [b_{n−1} ^{u}, b_{n} ^{u}, b_{n+1} ^{u}]. With ad hoc modifications, therefore, the ISR approach according to this invention applies to any complex modulation (e.g., MPSK, MQAM, even analog). This new signal decomposition is used to derive the different implementations of ISR which will be described later.

[0173]
With respect to the lowpower user assigned the index d and the NI strong interfering mobiles assigned the indices i=1, . . . , NI, the observation vector obtained by reshaping the observation matrix, before despreading, can now be rewritten as:

Y _{n} =Y _{0,n} ^{d} s _{n} ^{d} +I _{ISI,n} ^{d} +I _{n} +N _{n}, (25)

[0174]
where the first canonic observation vector
Y _{0,n} ^{d }appears as the “channel” vector of the lowpower user d. The total interference vector before despreading:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{I}}_{n}=\sum _{i=1}^{\mathrm{N1}}\ue89e{\underset{\_}{Y}}_{n}^{i}=\sum _{i=1}^{\mathrm{N1}}\ue89e\left\{{s}_{n}^{i}\ue89e{\underset{\_}{Y}}_{0,n}^{i}+{s}_{n1}^{i}\ue89e{\underset{\_}{Y}}_{1,n}^{i}+{s}_{n+1}^{i}\ue89e{\underset{\_}{Y}}_{1,n}^{i}\right\}\\ =\sum _{i=1}^{\mathrm{NI}}\ue89e\left\{{s}_{n}^{i}\ue89e{\underset{\_}{Y}}_{0,n}^{i}+{\underset{\_}{I}}_{\mathrm{ISI},n}^{i}\right\},\end{array}& \left(26\right)\end{array}$

[0175]
is the sum of the interfering signal vectors Y _{n} ^{i }and:

I _{ISI,n} ^{u} =s _{n−1} ^{u} Y _{−1,n} ^{u} +s _{n+1} ^{u} Y _{+1,n} ^{u}, (27)

[0176]
is the intersymbol interference (ISI) vector of user u. In large processing gain situations, the self ISI vector I _{ISI,n} ^{d }can be combined with the uncorrelated spatiotemporal noise vector N _{n}, leading to the following data vector model before despreading:

Y _{n} =Y _{0,n} ^{d} s _{n} ^{d} +I _{n} +N _{n}, (28)

[0177]
Despreading the observation vector in the above equation with the spreading sequence of the lowpower user d provides the data vector model after despreading in Equation (14). It is possible to derive a finer decomposition of the data model to allow implementation of one or more of the ISR modes over diversities.

[0178]
Finer Decomposition of the Data Model Over Diversities

[0179]
Thus, Equation (2a) can be further decomposed over the
N _{f} =MP diversity branches or fingers in such a way that the observation signal contribution X
^{u,f}(t) received by the mth antenna along the pth path for
f=(
p−1)
M+m=1
, . . . , N _{f }can be separated as follows:
$\begin{array}{cc}{X}^{u}\ue8a0\left(t\right)=\sum _{f=1}^{{N}_{f}}\ue89e{X}^{u,f}\ue8a0\left(t\right).& \left(29\right)\end{array}$

[0180]
The observation signal contribution from the fth finger is defined as:
$\begin{array}{cc}\begin{array}{c}{X}^{u,f}\ue8a0\left(t\right)={\psi}^{u}\ue8a0\left(t\right)\ue89e{H}^{u,f}\ue8a0\left(t\right)\otimes {c}^{u}\ue8a0\left(t\right)\ue89e{b}^{u}\ue8a0\left(t\right)\\ ={\psi}^{u}\ue8a0\left(t\right)\ue89e{G}_{p}^{u,f}\ue8a0\left(t\right)\ue89e{\varepsilon}_{p}^{u}\ue8a0\left(t\right)\ue89e{b}^{u}\ue8a0\left(t{\tau}_{p}^{u}\ue8a0\left(t\right)\right)\ue89e{c}^{u}\ue8a0\left(t{\tau}_{p}^{u}\ue8a0\left(l\right)\right),\end{array}& \left(30\right)\end{array}$

[0181]
where the propagation vector from the fth finger is:
$\begin{array}{cc}{G}_{p}^{u,f}\ue8a0\left(t\right)={\gamma}_{f}^{u}\ue8a0\left(t\right)\ue89e{\underset{\_}{R}}_{m}.& \left(31\right)\end{array}$

[0182]
In the above equation, the scalar γ
_{f} ^{u}(t) is the channel coefficient over the fth finger and
R _{m}=[0, . . . , 0, 1, 0, . . . , 0]
^{f }is a M×1 vector with null components except for the mth one. With the above definitions, one can easily check the following decompositions of the channel and the propagation vectors:
$\begin{array}{cc}{H}^{u}\ue8a0\left(t\right)=\sum _{f=1}^{{N}_{f}}\ue89e{H}^{u,f}\ue8a0\left(t\right),& \left(32\right)\\ {G}_{p}^{u}\ue8a0\left(t\right)=\sum _{m=1}^{M}\ue89e{G}_{p}^{u,\left(p1\right)\ue89eM+m}\ue8a0\left(t\right).& \left(33\right)\end{array}$

[0183]
Accordingly, after preprocessing, the matchedfiltering observation matrix can be decomposed as follows:
$\begin{array}{cc}{Y}_{n}=\sum _{u=1}^{U}\ue89e{Y}_{n}^{u}+{N}_{n}^{\mathrm{pth}}=\sum _{u=1}^{U}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e{\psi}_{n}^{H}\ue89e{\zeta}_{f,n}^{u}\ue89e{Y}_{n}^{u,f}+{N}_{n}^{\mathrm{pth}},& \left(34\right)\end{array}$

[0184]
where each user u contributes its userobservation matrices Y_{n} ^{u,f }from fingers f=1, . . . , N_{f}, obtained by Equations (3) and (4) with X(t) replaced by X^{u,f}(t) in Equation (3). Note that the complex channel coefficient ζ_{f} ^{u}(nT)=γ_{f} ^{u}(nT)ε_{p} ^{u}(nT) is separated from the matrix^{1 }Y_{n} ^{u,f }which contains a purelydelayed replica of the spreaddata without attenuation or phase offset from finger f. This matrix, which is obtained by Equations (3) and (4) with X(t) in Equation (3) replaced by:

X ^{u,f}(t)= R _{m}δ(t−τ _{p}(t)){circle over (×)}b ^{u}(t)c ^{u}(t), (35)

[0185]
can be further decomposed over the canonic generating sequences as follows:

Y _{n} ^{u,f} =b _{n} ^{u} Y _{0,n} ^{u,f} +b _{n−1} ^{u} Y _{−1,n} ^{u,f} +b _{n+1} ^{u} Y _{+1,n} ^{u,f}, (36)

[0186]
where the canonic userobservation matrices Y_{k,n} ^{u,f }from finger f are obtained by Equations (3) and (4) with X(t) in Equation (3) replaced, respectively for k=−1, 0, +1, by:

X _{k} ^{u,f}(t)= R _{ni}δ(t−τ _{P}(t)){circle over (×)} g ^{l} ^{ 1,n }(t)c ^{u}(t), (37)

[0187]
where δ(t) denotes the Dirac impulse. Therefore one obtains:
$\begin{array}{cc}{Y}_{n}=\sum _{n=1}^{U}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{1}\ue89e{s}_{n=k}^{u}\ue89e{\int}_{f,n}^{u}\ue89e{Y}_{k,n}^{u,f}+{N}_{n}^{\mathrm{pth}}.& \left(38\right)\end{array}$

[0188]
A coarser decomposition over fingers of the total interference vector before despreading defined in Equation (26) gives:
$\begin{array}{cc}{\underset{\_}{I}}_{n}=\sum _{i=1}^{\mathrm{NI}}\ue89e{\underset{\_}{Y}}_{n}^{i}=\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e{\psi}_{n}^{i}\ue89e{\int}_{f,n}^{i}\ue89e{\underset{\_}{Y}}_{n}^{i,j}.& \left(39\right)\end{array}$

[0189]
After despreading with the spreading sequence of the lowpower user d, it gives:
$\begin{array}{cc}{\underset{\_}{I}}_{\mathrm{PCM},n}^{d}=\sum _{i=1}^{\mathrm{NI}}\ue89e{\underset{\_}{I}}_{\mathrm{PCM},n}^{d,i}\uf431\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e{\psi}_{n}^{i}\ue89e{\int}_{f,n}^{i}\ue89e{\underset{\_}{I}}_{\mathrm{PCM},n}^{d,i,f}.& \left(40\right)\end{array}$

[0190]
Embodiments of the invention which use the above decompositions of interference, denoted as ISRD implementations before and after despreading, will be described later with reference to FIGS. 16 and 23.

[0191]
ISR Combining Before Despreading

[0192]
As described hereinbefore, the combining step of STAR is implemented without despreading by replacing Equation (9) for the lowpower user with:
$\begin{array}{cc}{\hat{s}}_{n}^{d}=\mathrm{Real}\ue89e\text{\hspace{1em}}\ue89e\left\{{\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\underset{\_}{Y}}_{n}\right\},& \left(41\right)\end{array}$

[0193]
where the spatiotemporal beamformer
W _{n} ^{d }now implements ISR without despreading to reject
I _{n }by complying with the following constraints (see Equation (15)):
$\begin{array}{cc}\{\begin{array}{c}{\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\underset{\_}{Y}}_{0,n}^{d}=1,\\ {\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{C}_{n}=0,\end{array}\Rightarrow \{\begin{array}{c}{\underset{\_}{W}}_{n}^{{d}^{n}}\ue89e{\underset{\_}{Y}}_{0,n}^{d}=1,\\ {\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\underset{\_}{l}}_{n}=0,\end{array}& \left(42\right)\end{array}$

[0194]
and C_{n }is the constraint matrix without despreading that spans the interference subspace of the total interference vector I _{n }(i.e., I _{n}∈Vec{C_{n}}).

[0195]
The constraint matrix without despreading, C_{n}, is common to all lowpower users. Thus, it characterizes the interference subspace regardless of the lowpower user. In contrast, each constraint matrix after despreading C_{PCM,n} ^{d }in Equation (15) is obtained by despreading C_{n }with the spreading sequence of the corresponding lowpower user. Therefore ISR combining before despreading, although equivalent to beamforming after despreading, is computationally much more advantageous.

[0196]
In contrast to the “after despreading” case described earlier, when the data vector is not despread before processing by the ISR combiner (i.e., the constrained spatiotemporal beamformer)
W _{n} ^{d }the estimate of the constraint matrix Ĉ
_{n }is obtained by:
$\begin{array}{cc}{Q}_{n}={\left({\hat{C}}_{n}^{H}\ue89e{\hat{C}}_{n}\right)}^{1},& \left(43\right)\\ {\Pi}_{n}={I}_{M=\left(2\ue89eL1\right)}{\hat{C}}_{n}\ue89e{Q}_{n}\ue89e{\hat{C}}_{n}^{H},& \left(44\right)\\ {\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}},& \left(45\right)\end{array}$

[0197]
where I_{M*(2L−1) }denotes a M*(2L−1)×M*(2L−1) identity matrix. As before, it can be seen from Equations (43) and (44) that the inverse matrix Q_{n }is not the direct inverse of constraint matrix Ĉ_{n }but part of the pseudoinverse of Ĉ_{n}. It should also be noted that the above operations are actually implemented in a much simpler way that exploits redundant or straightforward computations in the data projection and the normalization. As before, the projector π_{n }orthogonal to the constraint matrix Ĉ_{n }is formed once for all lowpower users. This would have not been possible with ISR after despreading. Second, the estimate of the lowpower response vector {circumflex over (Y)}_{0,n} ^{d }is projected and normalized. The estimate {circumflex over (Y)}_{0,n} ^{d }is reconstructed by reshaping the following matrix:

Ŷ _{0,n} ^{d} =Ĥ _{n} ^{d} {circle over (×)}g _{n} ^{l} ^{ 0,n } c _{l} ^{d}, (46)

[0198]
the fast convolution with the channel matrix estimate being implemented rowwise with the spread sequence. The symbol {circle over (×)} denotes overlap—add over the past, current and future blocks of the spread sequence to be convolved with a finitesize channelmatrix; hence g _{n} ^{l} ^{ 0,n }is introduced in Equation 46 to isolate the net contribution from the current sequence block. The channel vector estimate {circumflex over (H)}_{n} ^{d}, i.e. Ĥ_{n} ^{d}, is provided by STAR as explained earlier and includes the total contribution of the shaping pulse φ(t) matched with itself [13]. If the channel timevariations are slow, the channel coefficients can be assumed constant over several symbol durations [20], thereby reducing the number of computationally expensive despreading operations required (see FIG. 9).

[0199]
It should be noted that, although these ISR modes have formulations that are analogous whether ISR is implemented with or without first despreading the data vector, ISR combining of the data without it first being despread reduces complexity significantly.

[0200]
Receivers which implement these different ISR modes will now be described, using the same reference numerals for components which are identical or closely similar to those of the receiver of FIG. 5, with a suffix indicating a difference. A generic ISR receiver which does so without despreading of the data will be described first, followed by one which does so after despreading of the data. Thereafter, specific implementations of different ISR modes will be described.

[0201]
Thus, FIG. 9 illustrates a receiver according to a first embodiment of the invention which comprises a first set I of “strong user” receiver modules
20 ^{1 }. . .
20 ^{NI }which are similar to those in the receiver of FIG. 5, and, separated by a broken line
34, a second set D of “lowpower” user receiver modules which differ from the receiver modules of set I but are identical to each other so, for convenience, only one, STAR module
20A
^{d }having a modified beamformer
47A
^{d}, is shown. The outputs of the decision rule units
29 ^{1}, . . . ,
29 ^{NI }and of the channel identification units
28 ^{1}, . . . ,
28 ^{NI }from the set I modules are shown coupled to a constraintsset generator
42A which processes the corresponding symbol estimates and channel vector estimates to produce a set of N
_{c }constraints
_{n}={
_{n} ^{1}, . . . ,
_{n} ^{N} ^{ c }}. The constraintsset generator
42A may, however, use hypothetical symbol values instead, or a combination of symbol estimates and hypothetical values, as will be described later. Each individual constraint lies in the same observation space as the observation matrix Y
_{n }from preprocessor
18. The constraintsset generator
42A supplies the set of constraints
_{n }to a constraint matrix generator
43A which uses them to form a constraint matrix Ĉ
_{n }and an inverse matrix Q
_{n }which supplies it to the beamformer
47 ^{d }and each of the corresponding beamformers in the other receiver modules of set D. The actual content of the set of constraints
_{n }and the constraint matrix Ĉ
_{n }will depend upon the particular ISR mode being implemented, as will be described later.

[0202]
The observation vector deriving means in the receiver of FIG. 9 also comprises a vector reshaper 44 which reshapes the observation matrix Y_{n }from the preprocessing unit 18 to form an observation vector Y _{n}, having dimension M(2L−1) and supplies it to the beamformer 47A^{d }and to each of the other beamformers in the other receiver modules in set D.

[0203]
The STAR module
40A
^{d }comprises a channel identification unit
28A
^{d}, a decision rule unit
27A
^{d }and a power estimation unit
30A
^{d }which are similar to those of the STAR modules
20 ^{1 }. . .
20 ^{U }described hereinbefore. The STAR module
20A
^{d }is associated with a despreader
19 ^{d }which also is part of the observation vector deriving means. The despreader
19 ^{d }despreads the observation matrix Y
_{n }using the spreading code for user d and supplies the resulting postcorrelation observation vector
Z _{n }to the channel identification unit
28A
^{d }only. The decision rule unit
27A
^{d }and power estimation unit
30A
^{d }produce output symbol estimates {circumflex over (b)}
_{n} ^{d }and power estimates
${\left({\hat{\psi}}_{n}^{d}\right)}^{2},$

[0204]
respectively. The ISR beamformer 47A^{d }of STAR module 20A^{d }produces corresponding signal component estimates ŝ_{n} ^{d }but differs from the MRC beamformers 27 ^{l }. . . 27 ^{NI }because it operates upon the observation vector Y _{n}, which has not been despread. In a manner similar to that described with respect to FIG. 5, the channel identification unit 28A^{d }receives the postcorrelation observation vector Z _{n} ^{d }and the signal component estimate ŝ_{n} ^{d }and uses them to derive the spread channel vector estimates Ŷ _{0,n} ^{d}, which it uses to update the weighting coefficients W_{n} ^{d }of the beamformer 47A^{d }in succeeding symbol periods. The symbol period corresponds to the spread data frame of M(2L−1) elements. The coefficients of the ISR beamformer 47A^{d }also are updated in response to the constraint matrix Ĉ_{n }and its inverse Q_{n}, as will be described later. As shown in FIG. 9, the same matrices Ĉ_{n }and Q_{n }are supplied to all of the receiver modules in set D, specifically to their beamformers.

[0205]
As shown in FIG. 10, the constraint matrix generator means
43A comprises a bank of vector reshapers
48A
^{1}, . . . ,
48A
^{N} ^{ c }and a matrix inverter
49A. Each of the vector reshapers
48A
^{1}, . . . ,
48A
^{N} ^{ c }reshapes the corresponding one of the set of constraintsset matrices
_{n} ^{1}, . . . ,
_{n} ^{N} ^{ c }to form one column of the constraint matrix Ĉ
_{n}, which is processed by matrix inverter
49A to form inverse matrix Q
_{n}. For simplicity of description, it is implicitly assumed that each of the columns of Ĉ
_{n }is normalized to unity when collecting it from the set of constraints
_{n}.

[0206]
As also illustrated in FIG. 10, beamformer 47A^{d }can be considered to comprise a coefficient tuning unit 50A^{d }and a set of M(2L−1) multipliers 51 _{1} ^{d }. . . 51 _{M(2L−1)} ^{d}. The coefficient tuning unit 50A^{d }uses the constraint matrix Ĉ_{n}, the inverse matrix Q_{n }and the channel vector estimates {circumflex over (Y)}_{0,n} ^{d }to adjust weighting coefficients W _{1,n} ^{d* }. . . W _{M(2L−1),n} ^{d* }according to Equation (45) supra. The multipliers 51 _{1} ^{d }. . . 51 _{M(2L−1)} ^{d }use the coefficients to weight the individual elements Y _{1,n }. . . Y _{M(2L−1),n}, respectively, of the observation vector Y _{n}. The weighted elements are summed by an adder 52 ^{d }to form the raw filtered symbol estimate ŝ_{n} ^{d }for output from the beamformer 47A^{d}.

[0207]
An alternative configuration of receiver in which the lowpower STAR modules of set D implement ISR beamforming after despreading of the observation matrix Y_{n }from preprocessor 18 will now be described with reference to FIGS. 11 and 12, which correspond to FIGS. 9 and 10. The receiver shown in FIG. 11 is similar to that shown in FIG. 9 in that it comprises a preprocessing unit 18 which supplies the observation matrix Y_{n }to the set I receiver modules 20 ^{1}, . . . , 20 ^{NI}, a constraintsset generator 42B and a constraint matrix generator means 43B. It does not, however, include the vector reshaper 44 of FIG. 9 and each of the lowpower user STAR modules in set D has a modified beamformer. Thus, modified beamformer 47B^{d }operates upon the postcorrelation observation vector Z _{n} ^{d }from the output of the despreader 19 ^{d }which is supplied to both the channel identification unit 28B^{d }and the beamformer 47B^{d}. The channel identification unit 28B^{d }generates channel vector estimates Ĥ _{n} ^{d }and supplies them to the beamformer 47B^{d }which updates its coefficients in dependence upon both them and a userspecific constraint matrix Ĉ_{PCM,n} ^{d }and userspecific inverse matrix Q_{PCM,n} ^{d}. It should be noted that the constraint matrix generator means 43B supplies userspecific constraint and inverse matrices to the other receiver modules in set D.

[0208]
Referring now to FIG. 12, the common constraint matrix generator means
43B comprises a bank of userspecific constraint matrix generators, one for each of the receiver modules of set D, and each using a respective one of the spreading codes of the users of set D. Since the only difference between the userspecific constraint matrix generators is that they use different spreading codes, only userspecific constraint matrix
43B
^{d }is shown in FIG. 12, with the associated beamformer
47A
^{d}. Thus, userspecific constraint matrix generator
43B
^{d }comprises a bank of despreaders
55B
^{d,1}, . . . ,
55B
^{d,N} ^{ c }and a matrix inverter
46B
^{d}. The despreaders
55B
^{d,1}, . . . ,
55B
^{d,N} ^{ c }despread respective ones of the N
_{c }matrices in the set of constraints
_{n }to form one column of the individual constraint matrix Ĉ
_{PCM,n} ^{d }implicitly normalized to unity. The matrix inverter
46B
^{d }processes individual constraint matrix Ĉ
_{PCM,n} ^{d }to form inverse matrix Q
_{PCM,n} ^{d}. The userspecific constraint matrix generator
43B
^{d }supplies the constraint matrix Ĉ
_{PCM,n} ^{d }and inverse matrix Q
_{PCM,n} ^{d }to the coefficient tuning unit
50B
^{d }of beamformer
47B
^{d}. As shown in FIG. 12, the beamformer
47B
^{d }has ML multipliers
51 _{1} ^{d }. . .
51 _{ML} ^{d }which multiply weighting coefficients
W _{1,n} ^{d* }. . .
W _{ML,n} ^{d* }by elements
Z _{1,n} ^{d }. . .
Z _{ML,n} ^{d }of the postcorrelation observation vector
Z _{n} ^{d}. As before, adder
52 ^{d }sums the weighted elements to form the signal component estimate ŝ
_{n} ^{d}. The beamformer coefficients are timed according to Equation (18).

[0209]
Either of these alternative approaches, i.e. with and without despreading of the data vector supplied to the beamformer, may be used with each of several different ways of implementing the ISR beamforming, i.e. ISR modes. It should be noted that all cases use a constraint matrix which tunes the ISR beamformer to unity response to the desired channel and null response to the interference subspace. In each case, however, the actual composition of the constraint matrix will differ.

[0210]
Specific embodiments of the invention implementing the different ISR modes without despreading of the data will now be described with reference to FIGS. 13 to 20, following which embodiments implementing the same ISR modes after despreading will be described with reference to FIGS. 21 to 26.

[0211]
Interference Subspace Rejection Over Total Realisation (ISRTR)

[0212]
The receiver unit shown in FIG. 13 is similar to that shown in FIG. 9 in that it comprises a set I of receiver modules
20 ^{1, }. . . ,
20 ^{NI }for processing signals of NI strongly interfering mobile stations and a set D of receiver modules for signals of other, “lowpower”, users. The receiver modules of set D are identical so only receiver module
21C
^{d}, for channel d, is shown in FIG. 13. As in the receiver of FIG. 9, the observation matrix Y
_{n }from preprocessor
18 is supplied directly to each of the despreaders
19 ^{1 }. . .
19 ^{NI }of the set I receiver modules. Before application to each of the receiver modules of set D, however, it is delayed by one symbol period by a delay element
45 and reshaped by vector reshaper
44. The resulting observation vector
Y _{n−1 }is supplied to the beamformer
47C
^{d }and to each of the other beamformers in the set D receiver modules (not shown). STAR receiver module
20C
^{d }is associated with despreader
19 d and, in addition to beamformer
47C
^{d}, comprises channel identification unit
28C
^{d}, decision rule unit
29C
^{d }and power estimation unit
30C
^{d }which are similar to those shown in FIG. 9. The set of channel estimates
_{n} ^{1}, . . . ,
_{n} ^{NI}, which are supplied to the constraintsset generator
42C comprise the channel vector estimates
Ĥ _{n} ^{1}, . . . ,
Ĥ _{n} ^{NI }and the power estimates {circumflex over (ψ)}
_{n} ^{1}, . . . , {circumflex over (ψ)}
_{n} ^{NI}, respectively.

[0213]
The constraintsset generator 42C comprises a bank of respreaders 57C^{1 }. . . 57C^{NI }each having its output connected to the input of a respective one of a corresponding bank of channel replication units 59C^{1 }. . . 59C^{NI }by a corresponding one of a bank of multipliers 58C^{1 }. . . 58C^{NI}. The respreaders 57C^{1 }. . . 57C^{NI }are similar so only one, respreader 57C^{u}, is illustrated in FIG. 14. Respreader 57C^{u }is similar to the corresponding spreader 13 ^{u }(FIG. 3) in that it spreads the symbol {circumflex over (b)}_{n} ^{u }from the corresponding decision rule unit 29C^{u }using a periodic personal code sequence c_{l} ^{u }at a rate I/T_{c}, where T_{c }is the chip pulse duration. It differs, however, in that it does not include a shapingpulse filter. The effects of filtering both at transmission with the shapingpulse (see FIGS. 2 and 3) and at reception with the matched shapingpulse (see FIGS. 5 and 6) are included baseband in the channel vector estimate Ĥ _{n} ^{u }or Ĥ_{n} ^{u}, as disclosed in reference [13].

[0214]
Referring again to FIG. 13 and, as an example, receiver module 20C^{1}, replication of the propagation characteristics of channel 14 ^{1 }is accomplished by digital filtering in the discrete time domain, i.e. by convolution at the chip rate of the channel vector estimate Ĥ _{n} ^{1 }with the respread data {circumflex over (b)}_{n} ^{1}c_{l} ^{1}. This filtering operation immediately provides decomposed estimates of the signal contribution of user station 10 ^{1 }to the observation matrix Y_{n}. Thus, respreader 57C^{1 }respreads the symbol {circumflex over (b)}_{n} ^{1 }from decision rule unit 29C^{1}, multiplier 58C^{1 }scales it by the total amplitude estimate {circumflex over (ψ)}_{n} ^{1 }and channel replication filter 59C^{1 }filters the resulting respread symbol using the channel vector estimate Ĥ _{n} ^{1 }from channel identification unit 28C^{1}. The symbol estimates from the other STAR modules in set I are processed in a similar manner.

[0215]
It should be noted that the respreaders 57C^{1 }. . . 57C^{NI}, multipliers 58C^{1 }. . . 58C^{NI }and channel replication filters 59C^{1 }. . . 59C^{NI }correspond to the elements 13 ^{1}, 15 ^{1 }and 14 ^{1 }in the interfering user channel of FIG. 2. The coefficients of the channel replication filter units 59C^{1 }. . . 59C^{NI }are updated in successive symbol periods by the channel identification units 28C^{1 }. . . 28C^{NI }using the same coefficients Ĥ_{n} ^{1 }. . . Ĥ_{n} ^{NI}, corresponding to the transmission channels 14 ^{1 }. . . 14 ^{NI}, respectively, used to update their respective MRC beamformers 27C^{1 }. . . 27C^{NI}. It will be appreciated that the respread signals Ŷ_{n−1} ^{1 }. . . Ŷ_{n−1} ^{NI }from the channel replication filter units 59C^{1 }. . . 59C^{NI}, respectively, include information derived from both the sign and the amplitude of each symbol, and channel characteristics information, and so are the equivalents of the set I strong interferer's spread signals as received by the base station antenna elements 12 ^{1 }. . . 12 ^{M}.

[0216]
The constraintset generator 42C also comprises an adder 60 coupled to the outputs of the channel replication units 59C^{1 }. . . 59C^{NI}. The adder 60 sums the estimates Ŷ_{n−1} ^{1 }. . . Ŷ_{n−1} ^{NI }of the individual contributions from the different interferers to form the estimate Î_{n−1 }of the total interference from the NI interferers in the received observation matrix Y_{n}. The sum can be called total realization (TR) of the interference. In this embodiment, the constraint matrix generator simply comprises a single vector reshaper 43C which reshapes the total realization matrix Î_{n−1 }to form the vector {circumflex over (I)}_{n−1 }which, in this embodiment, constitutes the constraint matrix C_{n}. It should be noted that, because the constraint matrix really is a vector, the inverse matrix Q_{n }reduces to a scalar and, assuming implicit normalization, is equal to 1. Hence, no matrix inverter is needed.

[0217]
The reshaped vector Î _{n−1 }is supplied to the ISR beamformer 47C^{d }of receiver module 20C^{d }and to the beamformers of the other receiver modules in set D. The beamformer 47C^{d }uses the reshaped vector Î _{n−1 }and the channel vector estimates Ŷ _{0,n−1} ^{d }to update its coefficients, according to Equation (45), for weighting of the elements of observation vector Y _{n−1}.

[0218]
The beamformer 47C^{d }adjusts its coefficients so that, over a period of time, it will nullify the corresponding interference components in the observation vector Y _{n−1 }from the vector reshaper 44 and, at the same time, tune for a unity response to the spread channel vector estimate so as to extract the raw signal component estimate ŝ_{n−1} ^{d }substantially without distortion.

[0219]
ISRTR constitutes the simplest way to characterize the interference subspace, yet the most difficult to achieve accurately; namely by a complete estimation of the instantaneous realization of the total interference vector
Î _{n }in a deterministiclike approach. The constraint matrix is therefore defined by a single nullconstraint (i.e., N
_{c}=1) as:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\hat{\underset{\_}{I}}}_{n}}{\uf605{\hat{\underset{\_}{I}}}_{n}\uf606}\right]=\left[\frac{\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{\underset{\_}{Y}}}_{n}^{i}}{\uf605\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{\underset{\_}{Y}}}_{n}^{i}\uf606}\right]& \left(47\right)\end{array}$

[0220]
where each estimate Ŷ _{n} ^{i }is reconstructed by reshaping the following matrix:

Ŷ _{n} ^{i}={circumflex over (ψ)}_{n} ^{i} Ĥ _{n} ^{i} {circle over (×)}{circumflex over (b)} _{n} ^{i} c _{l} ^{i}. (48)

[0221]
For each interfering user assigned the index i=1, . . . , NI, this mode uses estimates of its received power ({circumflex over (ψ)}_{n} ^{i})^{2 }and its channel Ĥ _{n} ^{i}, both assumed constant over the adjacent symbols and made available by STAR. This mode also requires a bittriplet estimate [{circumflex over (b)}_{n−1} ^{i}, {circumflex over (b)}_{n} ^{i}, {circumflex over (b)}_{n+1} ^{i}] of each interfering user (see Equation (23)). To obtain estimates of the signs of the interferer bits for both the current and next iterations (i.e., {circumflex over (b)}_{n} ^{i }and {circumflex over (b)}_{n+1} ^{i}) the ISRTR mode requires that the processing of all the lowpower users be further delayed by one bit duration and one processing cycle (pc), respectively. The onebit delay is provided by the delay 45 in FIG. 13.

[0222]
In the ISRTR mode and in the alternative ISR modes to be described hereafter, the interference (due to the strongest users) is first estimated, then eliminated. It should be noted that, although this scheme bears some similarity to prior interference cancellation methods which estimate then subtract the interference, the subtraction makes these prior techniques sensitive to estimation errors. ISR on the other hand rejects interference by beamforming which is robust to estimation errors over the power of the interferers. As one example, ISRTR would still implement a perfect nullconstraint if the power estimates were all biased by an identical multiplicative factor while interference cancellers would subtract the wrong amount of interference. The next mode renders ISR even more robust to power estimation errors.

[0223]
The receiver illustrated in FIG. 13 may be modified to reduce the information used to generate the interfering signal estimates Ŷ_{n−1} ^{1 }. . . Ŷ_{n−1} ^{NI}, specifically by omitting the amplitude of the user signal estimates, and adapting the ISR beamformer 47C^{d }to provide more (NI) null constraints. Such a modified receiver will now be described with reference to FIG. 15.

[0224]
Interference Subspace Rejection Over Realisations (ISRR)

[0225]
In the receiver of FIG. 15, the receiver modules in set I are identical to those of FIG. 13. Receiver module
20D
^{d }has the same set of components as that shown in FIG. 13 but its beamformer
47D
^{d }differs because the constraint matrix differs. The constraintsset generator
42D differs from that shown in FIG. 13 in that it omits the multipliers
58C
^{1 }. . .
58C
^{NI }and the adder
60. The outputs from the power estimation units
30 ^{1 }. . .
30 ^{NI }are not used to scale the respread signals from the respreaders
57C
^{1 }. . .
57C
^{NI}, respectively. Hence, in the receiver of FIG. 15, the signals {circumflex over (b)}
_{n} ^{1 }. . . {circumflex over (b)}
_{n} ^{NI }from the STAR modules
20 ^{1 }. . .
20 ^{NI}, respectively, are respread and then filtered by channel replication filter units
59C
^{1 }. . .
59C
^{NI}, respectively, to produce user specific observation matrices Ŷ
_{n−1} ^{1 }. . . Ŷ
_{n−1} ^{NI}, respectively, as the constraintsset
_{n}. In contrast to the receiver of FIG. 13, however, these respread matrices are not summed but rather are processed individually by the constraint matrix generator
43D, which comprises a bank of vector reshapers
48D
^{1 }. . .
48D
^{NI }and a matrix inverter
49D (not shown but similar to those in FIG. 10). The resulting constraint matrix Ĉ
_{n}, comprising the column vectors {circumflex over (
Y)}
_{n−1} ^{1}, . . . , {circumflex over (
Y)}
_{n−1} ^{NI }is supplied, together with the corresponding inverse matrix Q
_{n}, to each of the receiver modules in set D. Again, only receiver module
20D
^{d }is shown, and corresponds to that in the embodiment of FIG. 13. Each of the vectors
Ŷ _{n−1} ^{1 }. . .
Ŷ _{n−1} ^{NI}, represents an estimate of the interference caused by the corresponding one of the strong interference signals from set I and has the same dimension as the reshaped observation vector
Y _{n−1}.

[0226]
In this ISRR mode, the interference subspace is characterized by normalized estimates of the interference vectors
Ŷ _{n} ^{1}. Consequently, it spans their individual realizations with all possible values of the total received powers (ψ
_{n} ^{i})
^{2}. The constraint matrix is defined by NI nullconstraints (i.e., N
_{c}=NI) as:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\underset{\_}{\hat{Y}}}_{n}^{1}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{\mathrm{NI}}\uf606}\right],& \left(49\right)\end{array}$

[0227]
where each estimate Ŷ _{n} ^{i }is reconstructed by reshaping the following matrix:

Ŷ _{n} ^{i} =Ĥ _{n} ^{i} {circle over (×)}{circumflex over (b)} _{n} ^{i} c _{i} ^{l}. (50)

[0228]
It should be noted that, in the reconstruction of Ŷ_{n} ^{i}, the total amplitude of the ith interferer {circumflex over (ψ)}_{n} ^{i }(see FIG. 15) has been omitted intentionally; hence the higher robustness expected to nearfar situations as well as the enlarged margin for power control relaxation.

[0229]
Interference Subspace Rejection Over Diversity (ISRD)

[0230]
The ISRD receiver shown in FIG. 16 is predicated upon the fact that the signal from a particular user will be received by each antenna element via a plurality of subpaths. Applying the concepts and terminology of socalled RAKE receivers, each subpath is termed a “finger”. In the embodiments of FIGS. 9, 11,
13 and
15, the channel identification units estimate the parameters for each finger as an intermediate step to estimating the parameters of the whole channel. In the ISRD receiver shown in FIG. 16, the channel identification units
28E
^{1 }. . .
28E
^{NI }supply the whole channel vector estimates
Ĥ _{n} ^{1 }. . .
Ĥ _{n} ^{NI }respectively, to the beamformers
27 ^{1 }. . .
27 ^{NI}, respectively, as before. In addition, they supply the sets of channel estimates
_{n} ^{1 }. . .
_{n} ^{NI }comprising a subchannel vector estimate for each individual subchannel or finger, to the constraintsset generator
42E. The set of channel estimates
_{n} ^{i }comprises the subchannel vector estimates Ĥ
_{n} ^{i,1}, . . . , Ĥ
_{n} ^{i,N} ^{ f }. The constraintsset generator
42E is similar to that shown in FIG. 15 in that it comprises a bank of respreaders
57 ^{1 }. . .
57 ^{NI }but differs in that the channel replication units
59D
^{1 }. . .
59D
^{NI }are replaced by subchannel replication units
59E
^{1 }. . .
59E
^{NI}, respectively. The subchannel replication units
59E
^{1 }. . .
59E
^{NI }convolve the respread symbols with the subchannel vector estimates Ĥ
_{n} ^{1,1 }. . . Ĥ
_{n} ^{1,N} ^{ f }; . . . ; Ĥ
_{n} ^{NI,1}, . . . , Ĥ
_{n} ^{NI,N} ^{ f }respectively, to produce normalized estimates Ŷ
_{n−1} ^{1,1 }. . . Ŷ
_{n−1} ^{1,N} ^{ f }; . . . ; Ŷ
_{n−1} ^{NI,1}, . . . , Ŷ
_{n−1} ^{NI,N} ^{ f }of the subchannelspecific observation matrices decomposed over fingers. Hence, the matrices span the space of their realizations with all possible values of the total received powers (ψ
_{n} ^{i})
^{2 }and complex channel coefficients ζ
_{f,n} ^{i}. The estimates are supplied to a constraint matrix generator
43E which generally is as shown in FIG. 10 and produces the constraint matrix accordingly.

[0231]
The constraint matrix Ĉ
_{n }is simply defined by N
_{f}NI nullconstraints (i.e.,
N _{c} =N _{f} ×NI=M×P×NI) as:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\underset{\_}{\hat{Y}}}_{n}^{1,1}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{1,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{n}^{1,{N}_{j}}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{1,{N}_{j}}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{n}^{\mathrm{NI},1}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{\mathrm{NI},1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{n}^{\mathrm{NI},{N}_{f}}}{\uf605{\hat{\underset{\_}{Y}}}_{n}^{\mathrm{NI},{N}_{f}}\uf606}\right],& \left(51\right)\end{array}$

[0232]
Each estimate Ŷ _{n} ^{i,f }is reconstructed by reshaping the following matrix:

Ŷ _{n} ^{i,f} =Ĥ _{n} ^{i,f} {circle over (×)}{circumflex over (b)} _{n} ^{i} c _{l} ^{i}. (52)

[0233]
It should be noted that, in the reconstruction of Ŷ_{n} ^{i,f}, the total amplitude of the ith interferer {circumflex over (ψ)}_{n} ^{i }as well as the channel coefficients ζ_{f,n} ^{i }(see FIG. 1) are intentionally omitted; hence the relative robustness of ISRD to power mismatch, like ISRR. Unlike other modes, it additionally gains robustness to channel identification errors and remains sensitive only to the estimated channel parameters remaining, namely the multipath timedelays, and to symbol estimation errors.

[0234]
It should be noted that, in the receivers of FIGS. 13, 15 and 16, estimation errors of the interference bit signs may introduce differences between the estimated constraints and the theoretical ones. Hence, although ISRD, ISRR and ISRTR modes are satisfactory in most situations, it is possible that the realisation could be erroneous, which would affect the validity of the interference cancellation. Additionally, estimation of the signs of the interference bits for reconstruction in the ISRD mode, as in the ISRR and ISRTR modes, requires that the processing of all of the lowpower users be further delayed by one bit duration, i.e., by delay 45, and one processing cycle (pc). To avoid these drawbacks, alternative ISR approaches to implementation of the constraints of Equation (42) are envisaged and will now be described, beginning with ISRH which avoids processing delays and is completely robust to data estimation errors.

[0235]
Interference Subspace Rejection Over Hypotheses (ISRH)

[0236]
It is possible to use a set of signals which represent all possible or hypothetical values for the data of the interfering signal. Each of the interfering signals constitutes a vector in a particular domain. It is possible to predict all possible occurrences for the vectors and process all of them in the ISR beamformer and, therefore, virtually guarantee that the real or actual vector will have been nullified. As mentioned, the strong interferers are relatively few, so it is possible, in a practical system, to determine all of the likely positions of the interference vector and compensate or nullify all of them. Such an alternative embodiment, termed Interference Subspace Rejection over Hypotheses (ISRH) because it uses all possibilities for the realisations, is illustrated in FIG. 17.

[0237]
The components of the interferer receiver modules of set I, namely the despreaders 19 ^{1 }. . . 19 ^{NI }and STAR modules 20 ^{1 }. . . 20 ^{NI}, are basically the same as those in the receiver of FIG. 15 and so have the same reference numbers. In the embodiment of FIG. 17, however, the constraintsset generator 42F differs because the symbol estimates {circumflex over (b)}_{n} ^{1 }. . . {circumflex over (b)}_{n} ^{NI }from the outputs of the decision rule units 29 ^{1 }. . . 29 ^{NI }are not supplied to the respreaders 57F^{1 }. . . 57F^{NI}, respectively, but are merely outputted to other circuitry in the receiver (not shown).

[0238]
Instead, bit sequence generators 63F^{1 }. . . 63F^{NI }each generate the three possibilities g_{n} ^{1}, g_{n} ^{2}, g_{n} ^{3}, which cover all possible estimated values of the previous, current and next bits of the estimated data sequences {circumflex over (b)}_{n} ^{1 }. . . {circumflex over (b)}_{n} ^{NI}, including the realisation itself (as explained later), and supply them to the respreaders 57F^{1 }. . . 57F^{NI}, respectively, which each spread each set of three values again by the corresponding one of the spreading codes. The resulting respread estimates are filtered by the channel replication filters 59F^{1 }. . . 59F^{NI}, respectively, to produce, as the constraint set, the matrix estimates Ŷ_{0,n} ^{1}, Ŷ_{−1,n}, Ŷ_{+1,n} ^{1}; . . . ; Ŷ_{0,n} ^{NI}, Ŷ_{−1,n} ^{NI}, Ŷ_{+1,n} ^{NI}. The bit sequence generators could, of course, be replaced by storage units.

[0239]
The constraint matrix generator 43F is generally as shown in FIG. 10 and processes the set of estimate matrices to form the column vectors {circumflex over (Y)}_{0,n} ^{1}, {circumflex over (Y)}_{−1,n}, {circumflex over (Y)}_{+1,n} ^{1}; . . . ; {circumflex over (Y)}_{0,n} ^{NI}, {circumflex over (Y)}_{−1,n} ^{NI}, {circumflex over (Y)}_{+1,n} ^{NI }of constraint matrix Ĉ_{n}, which it supplies with corresponding inverse matrix Q_{n}, in common to the beamformer 47F^{d }and the beamformers of the other set D receiver modules.

[0240]
Receiver module 20F^{d }comprises similar components to those of the receiver module 20E^{d }shown in FIG. 16. It should be noted, however, that, because the “next” bit is being hypothesized, it need not be known, so the delay 45 is omitted.

[0241]
As mentioned above, the two bits adjacent to the processed bit of the ith interferer contribute in each bit frame to the corresponding interference vector (symbol) to be rejected. As shown in FIG. 18, enumeration of all possible sequences of the processed and adjacent bits gives 2^{3}=8 triplets, each of three bits. Only one of these triplets could occur at any one time at each bit iteration as one possible realization that generates the userspecific observation matrix Ŷ_{n} ^{i}. These eight triplets can be identified within a sign ambiguity with one of the four triplets identified as (a) . . . (d) in the lefthand part of FIG. 18, since the four triplets (e) . . . (h) are their opposites.

[0242]
It should be appreciated that the bit sequence generators 63 ^{1 }. . . 63 ^{NI }(FIG. 17) each supply only three values, g_{n} ^{1}, g_{n} ^{2}, g_{n} ^{3 }because the dimension of the generated signal subspace is 3. It should be noted that frames of duration 3T, taken from these sequences at any bit rate instant, reproduce the eight possible realisations of the bit triplets of FIG. 18. Therefore, at any bit iteration, the bit sequence b_{n} ^{i }of the interfering mobile station can be locally identified as the summation of the generating sequences g_{n} ^{k}, k=1, . . . , 3 weighted by the bit signs b_{n−1} ^{i}, b_{n} ^{i }and b_{n+1} ^{i}. Replacing the estimate {circumflex over (b)}_{n} ^{i }in Equation (50) by g _{n} ^{k}, k=1, . . . , 3, , yields canonic observation matrices that span all possible realisations of the received signal vector from the ith interfering mobile within a sign ambiguity.

[0243]
In the ISRH embodiment of FIG. 17, the interference subspace is characterized by normalized estimates of the canonic interference vectors {circumflex over (
Y)}
_{k,n} ^{i}. Accordingly, it spans their individual realizations with all possible values of the total received powers (ψ
_{n} ^{1})
^{2 }and bit triplets [b
_{n−1} ^{1}, b
_{n} ^{i}, b
_{n+1} ^{i}]. The constraint matrix is defined by 3NI nullconstraints (i.e., N
_{c}=3NI) as:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\underset{\_}{\hat{Y}}}_{0,n}^{1,1}}{\uf605{\hat{\underset{\_}{Y}}}_{0,n}^{1}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{1,n}^{1}}{\uf605{\hat{\underset{\_}{Y}}}_{1,n}^{1}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{+1,n}^{1}}{\uf605{\hat{\underset{\_}{Y}}}_{+1,n}^{1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{0,n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{0,n}^{\mathrm{NI}}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{1,n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{1,n}^{\mathrm{NI}}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{+1,n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{+1,n}^{1}\uf606},\right],& \left(53\right)\end{array}$

[0244]
where each estimate {circumflex over (Y)}_{k,n} ^{i }is reconstructed, respectively, for k=−1, 0, +1 by reshaping the following matrix:

Ŷ _{k,n} ^{i} =Ĥ _{n} ^{i} {circle over (×)}g _{n} ^{l} ^{ cm } c _{l} ^{i}. (54)

[0245]
It should also be noted that, in the reconstruction above, only the channel vector estimates (assumed stationary over the adjacent symbols) are needed for complete interference rejection regardless of any 2D modulation employed (see FIG. 19); hence the extreme robustness expected to power control and bit/symbol errors of interferers. The ISRH combiner coefficients are symbolindependent and can be computed less frequently when the channel timevariations are slow.

[0246]
Merging of the D mode with the H mode along the decomposition of Equation (38) yields ISRHD (hypothesized diversities) with a very close form to the decorrelator. This ISRHD mode requires a relatively huge number of constraints (i.e., 3N_{f}NI). Consequently, the ISRHD mode is not considered to be practical at this time.

[0247]
In fact, it would be desirable to reduce the number of constraints required by the ISRH receiver described above. This can be done using an intermediate mode which is illustrated in FIG. 20 and in which the receiver modules of both sets I and D are similar to those of FIG. 15; most of their components are identical and have the same reference numbers. In essence, the constraintset generator 42G of the receiver in FIG. 20 combines the constraintset generators of FIGS. 15 and 17 in that it uses estimated symbols and hypothetical values. Thus, it comprises a bank of respreaders 57G^{1 }. . . 57G^{NI}, a corresponding bank of channel replication units 59G^{1 }. . . 59G^{NI }and a bank of symbol generators 63G^{1 }. . . 63G^{NI}. In this case, however, each of the symbol generators 63G^{1 }. . . 63G^{NI }supplies only one symbol to the corresponding one of the respreaders 57G^{1 }. . . 57G^{NI}, which receive actual symbol estimates {circumflex over (b)}_{n} ^{1 }. . . {circumflex over (b)}_{n} ^{NI}, respectively, from the decision rule units 29 ^{1}, . . . , 29 ^{NI}, respectively. It should be appreciated that, although the symbol generators 63G^{1}, . . . , 63G^{NI }each supply only one symbol for every actual symbol or realization from the corresponding one of the decision rule units 29 ^{1}, . . . , 29 ^{NI}, that is sufficient to generate two hypothetical values of “future” symbols b_{n+1} ^{1}, . . . , b_{n+1} ^{NI }for every one of the symbol estimates {circumflex over (b)}_{n+1} ^{1 }. . . {circumflex over (b)}_{n+1} ^{NI }since only two hypothetical values of the symbols, namely 1 and −1, are required. The respreaders 57G^{1}, . . . , 57G^{NI }supply the spread triplets to the channel replication units 59G^{1 }. . . 59G^{NI }which filter them, using the channel vector estimates Ĥ _{n} ^{1 }. . . Ĥ _{n} ^{NI}, respectively, to produce pairs of matrices Ŷ_{r,n} ^{1}, Ŷ_{−1,n} ^{1}; . . . Ŷ_{r,n} ^{NI}, Ŷ_{+1,n} ^{NI }and supply them to the constraint matrix generator 43G which is configured generally as shown in FIG. 9. The constraint matrix generator 43G reshapes the matrices Ŷ_{r,n} ^{1}, Ŷ_{+1,n} ^{1}; . . . Ŷ_{r,n} ^{NI}, Ŷ_{+1,n} ^{NI }to form vectors {circumflex over (Y)}_{r,n} ^{1}, Ŷ _{+1,n} ^{1}; . . . Ŷ _{r,n} ^{NI}, Ŷ _{+1,n} ^{NI }which then are used as the column vectors of the constraint matrix Ĉ_{n}. The constraint matrix generator 43G supplies the constraint matrix Ĉ_{n }and the corresponding inverse matrix Q_{n }in common to the beamformer 47G^{d }and the beamformers of other receiver modules in set D.

[0248]
Hence, the beamformer 47G^{d }uses the past symbol estimate {circumflex over (b)}_{n−1} ^{i }of the interference data as well as the present one {circumflex over (b)}_{n} ^{i }(delayed by one processing cycle, i.e. the time taken to derive the interference estimates), and the unknown sign of b_{n+1} ^{i }reduces the number of possible bit triplets and the corresponding realisations for each interference vector to 2.

[0249]
The receiver of FIG. 20, using what is conveniently referred to as ISRRH mode for reduced hypotheses over the next interference bits, rejects reduced possibilities of the interference vector realisations. Compared to the receiver of FIG. 17 which uses the ISRH mode, it is more sensitive to data estimation errors over {circumflex over (b)}_{n−1} ^{i }and {circumflex over (b)}_{n} ^{i }and requires only 2 constraints per interferer instead of 3.

[0250]
Using the previous and current bit estimates of interferers, uncertainty over the interference subspace can be reduced and it can be characterized by the following matrix of 2NI nullconstraints (i.e., N_{c}=2NI):

[0251]
where:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\underset{\_}{\hat{Y}}}_{r,n}^{1}}{\uf605{\hat{\underset{\_}{Y}}}_{r,n}^{1}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{+1,n}^{1}}{\uf605{\hat{\underset{\_}{Y}}}_{+1,n}^{1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{Y}}}_{r,n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{r,n}^{\mathrm{NI}}\uf606},\frac{{\underset{\_}{\hat{Y}}}_{1,n}^{\mathrm{NI}}}{\uf605{\hat{\underset{\_}{Y}}}_{1,n}^{\mathrm{NI}}\uf606}\right],& \left(55\right)\\ {\underset{\_}{\hat{Y}}}_{r,n}^{1}={\hat{b}}_{n}^{i}\ue89e{\underset{\_}{\hat{Y}}}_{0,n}^{i}+{\hat{b}}_{n1}^{l}\ue89e{\underset{\_}{\hat{Y}}}_{1,n}^{i},& \left(56\right)\end{array}$

[0252]
and where each estimate Ŷ _{k,n} ^{i }is reconstructed by reshaping the matrices in Equation (38), respectively for k=−1,0,+1. It should be noted that this mode requires a delay of one processing cycle for the estimation of the current interference bits.

[0253]
The ISRRH mode has the advantage of reducing the number of nullconstraints as compared to the ISRH mode. A larger number of nullconstraints indeed increases complexity, particularly when performing the matrix inversion in Equation (43), and may also result in severe noise enhancement, especially when the processing gain L is low. As the number of strong interferes NI increases in a heavily loaded system, the number of nullconstraints (2NI and 3NI) approaches the observation dimension M×(2L−1) and the constraintmatrix may become degenerate. To reduce complexity, guarantee stability in the matrix inversion of Equation (43), and minimize noise enhancement, the constraint matrix Ĉ
_{n }in Equations. (43) and (44) is replaced by the orthonormal interference subspace of rank K that spans its column vectors as follows:
$\begin{array}{cc}{\hat{V}}_{n}=\mathrm{Vec}\ue89e\text{\hspace{1em}}\ue89e\left\{{\hat{C}}_{n}\right\}=\left\{{\underset{\_}{\hat{V}}}_{n,1},\dots \ue89e\text{\hspace{1em}},{\underset{\_}{\hat{V}}}_{n,k},\dots \ue89e\text{\hspace{1em}},{\underset{\_}{\hat{V}}}_{n,K}\right\},& \left(57\right)\end{array}$

[0254]
to yield the projector Π_{n} =I _{M=(2L−1)} −{circumflex over (V)} _{n} {circumflex over (V)} _{n} ^{H }used in Equation (31), which replaces matrix inversion operation by matrix orthonormalization. The GramSchmidt orthonormalization procedure is used, which implements a cumulative increasingrank cascade of “corank” −1 projections, like in linear SIC [28], except that projections there are formed differently for direct cancellation. Ultimately, after orthonormalization, ISR exploits a “corank”N_{c }projection to implement N_{c }nullconstraints in the combining step. This projection could be implemented as a cascade of N_{c }corank1 projections. It should be noted that orthonormalization becomes unnecessary if we check that Ĉ_{n }is close to orthonormal (i.e., Ĉ_{n}≅{circumflex over (V)}_{n}).

[0255]
In practice, {circumflex over (V)}_{n }can hardly reflect the real rank of Ĉ_{n}. It corresponds to the subspace of reduced rank {circumflex over (K)}≦N_{c }with the highest interference energy to cancel. To further minimize noise enhancement, one can also increase the observation dimension M×(2L−1), as will be described later as “X option”, and so on.

[0256]
Another alternative that reduces noise enhancement constrains the beamformer to implement a closetonull response towards each nullconstraint instead of an exact nullresponse. This “relaxation” of the nullresponse leaves more degrees of freedom for ambient noise reduction (i.e., less amplification). It usually amounts to upperbounding the amplitude of the beamformer response towards each nullconstraint to be less than a maximum threshold. This technique is wellknown and classified in the literature as a “robust beamforming” method. We can combine it with ISR to reduce noise enhancement.

[0257]
Constraint relaxation in robust beamforming is usually solved as an optimization problem under constraints using the Lagrange multipliers technique. Without going into the mathematical details of such derivations, we directly provide intuitionbased solutions that extend ISR beamforming in a seamless manner. We extend Equations (43) to (45) as follows:
$\begin{array}{cc}{\stackrel{\_}{C}}_{n}={\hat{C}}_{n}\ue89e{\Lambda}_{n},& \left(\mathrm{I1}\right)\\ {\stackrel{\_}{Q}}_{n}={\left({\stackrel{\_}{C}}_{n}^{H}\ue89e{\stackrel{\_}{C}}_{n}+\lambda \ue89e\text{\hspace{1em}}\ue89e{I}_{{N}_{c}}\right)}^{1},& \left(\mathrm{I2}\right)\\ {\Pi}_{n}={I}_{M*\left(2\ue89eL1\right)}{\stackrel{\_}{C}}_{n}\ue89e{\stackrel{\_}{Q}}_{n}\ue89e{\stackrel{\_}{C}}_{n}^{H},& \left(\mathrm{I3}\right)\\ {\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{n}\ue89e{\underset{\_}{Y}}_{0,n}^{d}}{{\underset{\_}{Y}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}\ue89e{\underset{\_}{Y}}_{0,n}^{d}},& \left(\mathrm{I4}\right)\end{array}$

[0258]
where Λ_{n }is a N_{c}×N_{c }diagonal matrix of positive weights and λ an additional weighting factor.

[0259]
The above extended ISR solution reduces to that of Equations (43) to (45) by setting Λ
_{n}=I
_{N} _{ c }and λ=0. It also covers the particular case of MMSE (minimum mean square error) combining also known in the beamforming literature as MVDR (minimum variance distortionless response) beamforming. Along the model equation (28), the MMSE or MVDR beamforming solution is given by:
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{d}=\frac{{R}_{\underset{\_}{I}+\underset{\_}{N}}^{1}\ue89e{Y}_{0,n}^{d}}{{\underset{\_}{Y}}_{0,n}^{{d}^{N}}\ue89e{R}_{\underset{\_}{I}+\underset{\_}{N}}^{1}\ue89e{\underset{\_}{Y}}_{0,n}^{d}},& \left(\mathrm{I5}\right)\end{array}$

[0260]
where R_{ 1+N }is the correlation matrix of the interferenceplusnoise vector I _{n}+N _{n}. Assuming that the additive noise vector is spatially and temporally uncorrelated with variance σ_{N} ^{2}, R_{ 1+N } is given by:

R _{ 1+N } =C _{n}Φ_{n} C _{n} ^{H}+σ_{N} ^{2} I _{M=(2L−1)}, (I6)

[0261]
where C_{n }is the constraint matrix defined along one of the ISR modes described previously, but without normalization columnwise. Depending on the signal parameters assumed unknown a priori (cf., discussion above Equation (15)), the conditional statistical mean in R_{ 1+N } gives rise to a particular interference decomposition in C_{n }along the corresponding ISR mode. The N_{c}×N_{c }diagonal matrix Φ_{n }holds the power of the unknown signal parameters along which interference is decomposed.

[0262]
In the TR mode, interference characterization is quasideterministic with:

Φ_{n}=[1].

[0263]
In the R mode, we have:
${\Phi}_{n}=\mathrm{diag}\ue8a0\left[{\left({\stackrel{\_}{\psi}}_{n}^{1}\right)}^{2},\dots \ue89e\text{\hspace{1em}},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2}\right],$

[0264]
while in the D mode, we have:
${\Phi}_{n}=\mathrm{diag}\ue8a0\left[\left({\stackrel{\_}{\psi}}_{n}^{1}\right)\ue89e{\uf603{\stackrel{\_}{\zeta}}_{1,n}^{1}\uf604}^{2},\dots ,{\left({\stackrel{\_}{\psi}}_{n}^{1}\right)}^{2}\ue89e{\uf603{\stackrel{\_}{\zeta}}_{{N}_{f},n}^{1}\uf604}^{2},\dots \ue89e\text{\hspace{1em}},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2}\ue89e{\uf603{\stackrel{\_}{\zeta}}_{1,n}^{\mathrm{NI}}\uf604}^{2},\dots \ue89e\text{\hspace{1em}},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2}\ue89e{\uf603{\stackrel{\_}{\zeta}}_{{N}_{f},n}^{\mathrm{NI}}\uf604}^{2}\right],$

[0265]
where ({overscore (ψ)}
_{n} ^{i})
^{2 }and {overscore (ζ)}
_{N} _{ f } _{n} ^{i}
^{2 }both denote local averages in time of (ψ
_{n} ^{i})
^{2 }and ζ
_{N} _{ f } _{n} ^{i}
^{2}, respectively. The H mode gives:
${\Phi}_{n}=\mathrm{diag}\ue8a0\left[{\left({\stackrel{\_}{\psi}}_{n}^{1}\right)}^{2},{\left({\stackrel{\_}{\psi}}_{n}^{1}\right)}^{2},{\left({\stackrel{\_}{\psi}}_{n}^{1}\right)}^{2},\dots \ue89e\text{\hspace{1em}},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2},{\left({\stackrel{\_}{\psi}}_{n}^{\mathrm{NI}}\right)}^{2}\right].$

[0266]
Using the inversion lemma, the inverse of R
_{ 1+N } can be written as:
$\begin{array}{cc}{R}_{\underset{\_}{I}+\underset{\_}{N}}^{1}=\frac{1}{{\sigma}_{n}^{2}}\ue8a0\left[{I}_{M*\left(2\ue89eL1\right)}{C}_{n}\ue89e{\Phi}_{n}^{1/2}\ue8a0\left({\Phi}_{n}^{1/2}\ue89e{C}_{n}^{H}\ue89e{C}_{n}\ue89e{\Phi}_{n}^{1/2}+{\sigma}_{n}^{2}\ue89e{I}_{{N}_{\sigma}}\right)\ue89e{\Phi}_{n}^{1/2}\ue89e{C}_{n}^{H}\right],& \left(\mathrm{I7}\right)\end{array}$

[0267]
The MMSE or MVDR beamforming can therefore be identified with the extended ISR solution using:

λ={circumflex over (σ)}_{N} ^{2}, (I8)

[0268]
and:
${\Lambda}_{n}=\{\begin{array}{c}\left[1\right]\ue89e\text{\hspace{1em}}\ue89e\mathrm{in}\ue89e\text{\hspace{1em}}\ue89e\mathrm{the}\ue89e\text{\hspace{1em}}\ue89e\mathrm{TR}\ue89e\text{\hspace{1em}}\ue89e\mathrm{mode},\\ \left[{\hat{\psi}}_{n}^{1},\dots \ue89e\text{\hspace{1em}},{\hat{\psi}}_{n}^{\mathrm{NI}}\right]\ue89e\text{\hspace{1em}}\ue89e\mathrm{in}\ue89e\text{\hspace{1em}}\ue89e\mathrm{the}\ue89e\text{\hspace{1em}}\ue89eR\ue89e\text{\hspace{1em}}\ue89e\mathrm{mode},\\ \left[{\hat{\psi}}_{n}^{1}\ue89e\uf603{\hat{\zeta}}_{1,n}^{1}\uf604,\dots \ue89e\text{\hspace{1em}},{\hat{\psi}}_{n}^{1}\ue89e\uf603{\zeta}_{{N}_{f}\ue89en}^{1}\uf604,\dots \ue89e\text{\hspace{1em}},{\hat{\psi}}_{n}^{\mathrm{NI}}\ue89e\uf603{\zeta}_{1,n}^{\mathrm{NI}}\uf604,\dots \ue89e\text{\hspace{1em}},{\hat{\psi}}_{n}^{\mathrm{NI}}\ue89e\uf603{\hat{\zeta}}_{{N}_{f}\ue89en}^{\mathrm{NI}}\uf604\right]\ue89e\text{\hspace{1em}}\ue89e\mathrm{in}\ue89e\text{\hspace{1em}}\ue89e\mathrm{the}\ue89e\text{\hspace{1em}}\ue89eD\ue89e\text{\hspace{1em}}\ue89e\mathrm{mode},\\ \left[{\hat{\psi}}_{n}^{1},{\hat{\psi}}_{n}^{1},{\psi}_{n}^{1},\dots \ue89e\text{\hspace{1em}},{\hat{\psi}}_{n}^{\mathrm{NI}},{\hat{\psi}}_{n}^{\mathrm{NI}},{\psi}_{n}^{\mathrm{NI}}\right]\ue89e\text{\hspace{1em}}\ue89e\mathrm{in}\ue89e\text{\hspace{1em}}\ue89e\mathrm{the}\ue89e\text{\hspace{1em}}\ue89eH\ue89e\text{\hspace{1em}}\ue89e\mathrm{mode}.\end{array}$

[0269]
The instantaneous estimates in the equation above can be further averaged or smoothed in time. The columns of the constraint matrix estimate Ĉ_{n }are reconstructed without normalization.

[0270]
Although the MMSE version of ISR serves as a method to reduce noise enhancement, it is still sensitive to harddecision errors for modes using decision feedback. Using weights in a different way is a method to reduce sensitivity to harddecision errors. We notice that the ISR combined signal estimate can be formulated as:
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{d}\ue89e{\underset{\_}{Y}}_{n}={\left({\underset{\_}{Y}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}\right)}^{1}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue8a0\left({\underset{\_}{Y}}_{n}{\hat{C}}_{n}\ue89e{Q}_{n}\ue89e{\hat{C}}_{n}^{H}\ue89e{\underset{\_}{Y}}_{n}\right),& \left(\mathrm{I9}\right)\\ \text{\hspace{1em}}\ue89e={\left({\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}\right)}^{1}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue8a0\left({\underset{\_}{Y}}_{n}{\hat{C}}_{n}\ue89e{\underset{\_}{\upsilon}}_{n}\right),& \left(\mathrm{I10}\right)\\ \text{\hspace{1em}}\ue89e={\left({\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}\right)}^{1}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue8a0\left({\underset{\_}{Y}}_{n}{\hat{\underset{\_}{I}}}_{n}^{1}\dots \ue89e\text{\hspace{1em}}{\hat{\underset{\_}{I}}}_{n}^{{N}_{c}}\right).& \left(\mathrm{I11}\right)\end{array}$

[0271]
The last reformulation stresses that Ĉ_{n} υ _{n }can be understood as a sum of estimated interference vectors corresponding to the ISR mode applied. For instance each of these estimates corresponds to an interfering user in ISRR. It can be shown that if tentative decisions, used to form the ith constraint, are wrong, the corresponding constraint will sometimes be amplified rather than rejected^{2}. This amplification is mitigated by considering the alternative projector:

Π_{Λ,n} =I−C _{n} Q _{n}Λ_{n} C _{n} ^{H}, (I12)

[0272]
where Λ
_{n }is a diagonal matrix of weights. Using this projection, Equation (I11) is modified as:
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\underset{\_}{Y}}_{n}={\left({\underset{\_}{\hat{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{\Lambda ,n}\ue89e{\underset{\_}{Y}}_{0,n}^{d}\right)}^{1}\ue89e{\underset{\_}{\hat{Y}}}_{0,n}^{{d}^{H}}\ue8a0\left({\underset{\_}{Y}}_{n}{\left\{{\Lambda}_{n}\right\}}_{1,1}\ue89e{\underset{\_}{\hat{I}}}_{n}^{1}\dots \ue89e\text{\hspace{1em}}{\left\{{\Lambda}_{n}\right\}}_{{N}_{c},{N}_{c}}\ue89e{\hat{\underset{\_}{I}}}_{n}^{{N}_{c}}\right).& \text{(I13)}\end{array}$

[0273]
This modification means that the interferer is never completely rejected although tentative decisions are all correct; however, the penalty arising from wrong decisions is reduced as well. For ISRR and ISRD it can be shown that the optimal weight to be applied to columns representing interferer i is {Λ_{n}}_{i,i}(1−2SER(i)) where SER(i) is the Symbol Error Rate of the tentative decisions associated with interferer i.

[0274]
It should be noted that each of the receivers of FIGS. 13, 15, 16, 17 and 20 could be modified to perform ISR “after despreading” of the observation matrix Y_{n}, in effect in much the same way that the generic “after despreading” receiver of FIG. 11 differs from the generic “without despreading” receiver of FIG. 9. Such modified receivers will now be described with reference to FIGS. 21 to 26.

[0275]
Thus, in the ISRTR receiver shown in FIG. 21, which corresponds to that shown in FIG. 13, the delay 45 delays the observation matrix Y_{n }from the preprocessing unit 18 by 1 bit period and supplies the resulting delayed observation matrix Y_{n−1}, in common, to each of the lowpower user receiver modules in set D. Only one of these receiver modules, 20H^{d}, is shown in FIG. 21, since all are identical. The observation matrix Y_{n−1 }is despread by despreader 19 ^{d }and the resulting postcorrelation observation vector Z _{n−1} ^{d }is supplied to both the channel identification unit 28H^{d }and the beamformer 47H^{d}. The receiver modules of set I and the constraintsset generator 42C are identical to those in the receiver shown in FIG. 13, and supply the matrices Ŷ_{n−1} ^{1 }. . . Ŷ_{n−1} ^{NI }to an adder 60 which adds them to form the total interference matrix Î_{n−1 }which it supplies to each of the receiver modules in set D.

[0276]
Receiver module 20H^{d }is similar to that shown in FIG. 13 but has a second despreader 43H^{d }which uses the spreading code for user d to despread the total interference matrix Î_{n−1 }to form the userspecific constraint matrix as a single column vector Î _{PCM,n−1} ^{d}. This despreader 43H^{d}, in effect, constitutes a userspecific constraint matrix generator because the constraint matrix is a vector and an inverse matrix is not needed. Also, in this case, the channel identification unit 28H^{d }supplies the channel vector estimate Ĥ _{n−1} ^{d }to the beamformer 47H^{d}.

[0277]
It should be noted that the despread data vector Z _{n−1} ^{d }is equal to H _{n} ^{d}s_{n} ^{d}+I _{PCM,n} ^{d}, +N _{n} ^{d}, where H _{n} ^{d }is the channel response for user station 10 ^{d}, s_{n} ^{d }is the signal transmitted by the mobile station 10 ^{d }of user d, and I _{PCM,n} ^{d }is the interference component present in the signal Z _{n} ^{d }as a result of interference from the signals from the other user stations 10 ^{i }in set I, where I _{PCM,n} ^{d }is as defined in Equation (14). The value N _{PCM,n} ^{d }is additional noise which might comprise, for example, the summation of the interference from all of the other users on the system at that time, as well as thermal noise. “Other users” means other than those covered by the channels in set I.

[0278]
As before, the coefficients of the beamformer
47H
^{d }are tuned according to Equations (16) to (18) and the constraint matrix is defined by a single nullconstraint (i.e., N
_{c}=1) as:
$\begin{array}{cc}{\hat{C}}_{\mathrm{PCM},n}^{d}=\left[\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d}\uf606}\right]=\left[\frac{\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,i}}{\uf605\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,i}\uf606}\right]& \left(58\right)\end{array}$

[0279]
where the estimate Î _{PCM,n} ^{d }is obtained by despreading the matrix Î_{n }(see Equations (47) and (48)) with the spreading sequence of the desired lowpower user.

[0280]
[0280]FIG. 22 shows a similar modification to the lowpower (set D) receiver modules of the “without despreading” ISRR receiver of FIG. 15. In this case, the output of the constraintset generator
42D, as before, comprises the matrices Ŷ
_{n−1} ^{1 }. . . Ŷ
_{n−1} ^{NI}. As before, only receiver module
20J
^{d }is shown in FIG. 22 and is identical to that shown in FIG. 21 except that the second despreader
43H
^{d }is replaced by a userspecific constraint matrix generator
43J
^{d }of the kind shown in FIG. 12. The channel identification unit
28J
^{d }again supplies the vector
Ĥ _{n−1} ^{d }to the beamformer
47J
^{d}. The bank of despreaders in the userspecific constraint matrix generator
43J
^{d }despread the respective ones of the matrices Ŷ
_{n−1} ^{1 }. . . Ŷ
_{n−1} ^{NI }to form the vectors
Î _{PCM,n−1} ^{d,1}, . . . ,
Î _{PCM,n−1} ^{d,NI }which constitute the columns of the userspecific constraint matrix Ĉ
_{PCM,n−1} ^{d }and the matrix inverter
46B
^{d }produces the corresponding inverse matrix Q
_{PCM,n−1} ^{d}. Both of these matrices are supplied to the associated beamformer
47J
^{d }which uses them and the channel vector estimate
Ĥ _{n−1} ^{d }to adjust its coefficients that are used to weight the elements of the postcorrelation observation vector
Z _{n−1} ^{d}. As before, the coefficients are adjusted according to Equations (16) to (18) and the constraint matrix is defined by NI nullconstraints (i.e., N
_{c}=NI) as:
$\begin{array}{cc}{\hat{C}}_{\mathrm{PCM},n}^{d}=\left[\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI}}\uf606}\right],& \left(59\right)\end{array}$

[0281]
where each estimate Î _{PCM,n} ^{d,i }is obtained by despreading the matrix Ŷ_{n} ^{i }of Equation (50) with the spreading sequence of the desired lowpower user.

[0282]
[0282]FIG. 23 illustrates the modification applied to the lowpower user receiver module of the ISRD receiver of FIG. 16. Hence, there is no common matrix inverter. Instead, in the receiver of FIG. 23, each of the receiver modules of set D has a userspecific constraint matrix generator
43K which receives the constraints from the constraintsset generator
42E. As illustrated, userspecific constraint matrix generator
43K
^{d }processes the sets of matrices Ŷ
_{n−1} ^{1,1 }. . . Ŷ
_{n−1} ^{1,N} ^{ f }, . . . ; Ŷ
_{n−1} ^{NI,1}, . . . , Ŷ
_{n−1} ^{NI,N} ^{ f }to form the set of vectors Î
_{PCM,n−1} ^{d,1,1 }. . . Î
_{PCM,n−1} ^{d,1,N} ^{ f }; . . . ; Î
_{PCM,n−1} ^{d,NI,1}, . . . , Î
_{PCM,n−1} ^{d,NI,N} ^{ f }, which constitute the columns of userspecific constraint matrix Ĉ
_{PCM,n−1} ^{d}, and the corresponding inverse matrix Q
_{PCM,n−1} ^{d }n which it supplies to the beamformer
47K
^{d}. As before, the beamformer
47K
^{d }tunes its coefficients according to Equations (16) and (18). The constraint matrix is defined by N
_{f}NI nullconstraints (i.e.,
N _{c} =N _{f} ×NI=M×P×NI) as:
$\begin{array}{cc}{\hat{C}}_{\mathrm{PCM},n}^{d}=\left[\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,1}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{N}_{f}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{N}_{f}}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{N1},1}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{N1},1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},{N}_{f}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},{N}_{f}}\uf606}\right],& \left(60\right)\end{array}$

[0283]
where each estimate Î _{PCM,n} ^{d,i,f }is obtained by despreading Ŷ _{n} ^{i,f }of Equation (52) with the spreading sequence of the desired lowpower user.

[0284]
[0284]FIG. 24 illustrates application of the modification to the ISRH receiver of FIG. 17. Again, the common constraint matrix generator (
43F) is replaced by a userspecific constraint matrix generator
43L
^{d }in receiver module
20L
^{d }and similarly in the other receiver modules of set D. The constraintsset generator
42L differs from constraintsset generator
42F of FIG. 17 because its bit sequence generators
63L
^{1}, . . . ,
63L
^{NI }use different generating sequences. The sets of matrices Ŷ
_{1,n} ^{1}, Ŷ
_{2,n} ^{1}, Ŷ
_{3,n} ^{1}; . . . ; Ŷ
_{1,n} ^{NI}, Ŷ
_{2,n} ^{NI}, Ŷ
_{3,n} ^{NI }from the constraintsset generator
42F are processed by the userspecific constraint matrix generator
43L
^{d }to form the vectors
Î _{1,n} ^{d,1},
Î _{2,n} ^{d,1 } Î _{3,n} ^{d,1}; . . . ;
Î _{1,n} ^{d,NI},
Î _{2,n} ^{d,NI},
Î _{3,n} ^{d,NI }which constitute the columns of the userspecific constraint matrix Ĉ
_{PCM,n} ^{d}, and the matrix inverter (not shown) produces the corresponding inverse matrix Q
_{PCM,n} ^{d}. The constraint matrix Ĉ
_{PCM,n} ^{d }and the inverse matrix Q
_{PCM,n} ^{d }are used by the beamformer
47L
^{d}, together with the channel vector estimate
Ĥ _{n} ^{d}, to adjust its coefficients that are used to weight the elements of the postcorrelation observation vector
Z _{n} ^{d }received from despreader
19 ^{d}. As before, the coefficients are adjusted according to Equations (16) and (18) and the constraint matrix is defined by 3NI nullconstraints (i.e., N
_{c}=3NI) as:
$\begin{array}{cc}{\hat{C}}_{\mathrm{PCM},n}^{d}=\left[\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,1}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,1}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,2}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,2}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,3}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,3}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},1}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},1}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},2}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},2}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},3}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},3}\uf606}\right],& \left(61\right)\end{array}$

[0285]
where each estimate Î _{PCM,n} ^{d,i,k }is obtained by despreading the matrix Ŷ_{k,n} ^{i }with the spreading sequence of the desired lowpower user.

[0286]
In this case, each of the bit sequence generators 63L^{1 }. . . , 63L^{NI }uses four generating bit sequences {overscore (g)}^{1}(t), {overscore (g)}^{2}(t), {overscore (g)}^{3}(t) and {overscore (g)}^{4}(t) as shown in FIG. 25.

[0287]
It should be noted that, in any frame of duration 3T in FIG. 25, a bit triplet of any of the four generating sequences is a linear combination of the others. Therefore, any one of the four possible realisations of each interference vector is a linear combination of the others and the corresponding nullconstraint is implicitly implemented by the three remaining nullconstraints. The four nullconstraints are restricted arbitrarily to the first three possible realisations.

[0288]
[0288]FIG. 26 illustrates application of the modification to the ISRRH receiver of FIG. 20. Again, the common constraint matrix generator 43G of FIG. 20 is replaced by a set of userspecific constraint matrix generators, 43M^{d }in receiver module 20M^{d }and similarly in the other receiver modules of set D. The constraintsset generator 42M shown in FIG. 26 differs slightly from that (42G) shown in FIG. 20 because each of the bit sequence generators 63M^{1}, . . . , 63M^{NI }in the receiver of FIG. 26 generate the bit sequence g_{n} ^{l} ^{ +1,n }.

[0289]
The userspecific constraint generator
43M
^{d }processes the pairs of constraintset matrices Ŷ
_{k} _{ 1 } _{,n} ^{1}, Ŷ
_{k} _{ 2 } _{,n} ^{1}; . . . ; Ŷ
_{k} _{ 1 } _{,n} ^{NI}, Ŷ
_{k} _{ 2 } _{,n} ^{NI }from the channel identification units
59M
^{1}, . . . ,
59M
^{NI}, respectively, by to produce the corresponding set of vectors
Î _{PCM,n} ^{d,1,k} ^{ 1 },
Î _{PCM,n} ^{d,1,k} ^{ 2 }; . . . ;
Î _{PCM,n} ^{d,NI,k} ^{ 1 },
Î _{PCM,n} ^{d,NI,k} ^{ 2 }which constitute the columns of the userspecific constraint matrix Ĉ
_{PCM,n} ^{d}, and to produce the corresponding inverse matrix Q
_{PCM,n} ^{d}. The constraint matrix Ĉ
_{PCM,n} ^{d }and the inverse matrix Q
_{PCM,n} ^{d }are used by the beamformer
47M
^{d}, together with the channel vector estimate
Ĥ _{n} ^{d}, to adjust its coefficients that are used to weight the elements of the postcorrelation observation vector
Z _{n} ^{d }received from despreader
19 ^{d}. As before, the coefficients are adjusted according to Equations (16) to (18) and the constraint matrix is defined by 2NI nullconstraints (i.e., N
_{c}=2NI) as follows:
$\begin{array}{cc}{\hat{C}}_{\mathrm{PCM},n}^{d}\uf431\left[\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{k}_{1}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{k}_{1}}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{k}_{1}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,1,{k}_{2}}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{N1},{k}_{1}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{N1},{k}_{1}}\uf606},\frac{{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},{k}_{2}}}{\uf605{\hat{\underset{\_}{I}}}_{\mathrm{PCM},n}^{d,\mathrm{NI},{k}_{1}}\uf606}\right],& \left(62\right)\end{array}$

[0290]
where each pair of estimates Î _{PCM,n} ^{d,i,k} ^{ 1 }and Î _{PCM,n} ^{d,i,k} ^{ 2 }is obtained by despreading the matrices Ŷ_{k} _{ 1 } _{,n} ^{i }and Ŷ_{k} _{ 2 } _{,n} ^{i}, respectively, with the spreading sequence of the desired lowpower user.

[0291]
InterSymbol Interference (ISI) Rejection

[0292]
In any of the abovedescribed embodiments of the invention it may be desirable to reduce intersymbol interference in the receiver modules in set D, especially when low processing gains are involved. As noted in the PCM model where despreading reduces ISI to a negligible amount, for a large processing gain,
Y _{0,n} ^{d} ^{ H } Y _{−1,n} ^{d}≈0 and
Y _{0,n} ^{d} ^{ {overscore (H)} } Y _{+1,n} ^{d}∝0. Hence, the before despreading spatiotemporal beamformer
W _{n} ^{d }approximately implements the following additional constraints:
$\begin{array}{cc}\{\begin{array}{c}{\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\hat{\underset{\_}{Y}}}_{1,n}^{d}\simeq 0,\\ {\underset{\_}{W}}_{n}^{{d}^{H}}\ue89e{\hat{\underset{\_}{Y}}}_{+1,n}^{d}\simeq 0.\end{array}& \left(63\right)\end{array}$

[0293]
Accordingly, it rejects interference and significantly reduces ISI. Complete ISI rejection can be effected by modifying the receiver to make the set of the channel parameter estimators
_{n} ^{d }available to the constraintssets generator
42 for processing in parallel with those of the set I receiver modules. The resulting additional constraint matrix and inverse matrix would also be supplied to the beamformer
47 ^{d }and taken into account when processing the data.

[0294]
In such a case, the following matrix can be formed:
$\begin{array}{cc}{\hat{C}}_{\mathrm{ISI},n}^{d}=\left[\frac{{\Pi}_{n}\ue89e{\underset{\_}{\hat{Y}}}_{1,n}^{d}}{\uf605{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{1,n}^{d}\uf606},\frac{{\Pi}_{n}\ue89e{\underset{\_}{\hat{Y}}}_{+1,n}^{d}}{\uf605{\Pi}_{n}\ue89e{\hat{\underset{\_}{Y}}}_{1,n}^{d}\uf606}\right],& \left(64\right)\end{array}$

[0295]
and the following 2×2 matrix

Q _{ISI,n} ^{d}=(Ĉ _{ISI,n} ^{d} ^{ H } Ĉ _{ISI,n} ^{d})^{−1}, (65)

[0296]
inverted to obtain the constrained spatiotemporal beamformer
W _{n} ^{d }before despreading by:
$\begin{array}{cc}{\Pi}_{\mathrm{ISI},n}^{d}={I}_{M\xb7\left(2\ue89eL1\right)}{\hat{C}}_{\mathrm{ISI},n}^{d}\ue89e{Q}_{\mathrm{ISI},n}^{d}\ue89e{\hat{C}}_{\mathrm{ISI},n}^{{d}^{H}},& \left(66\right)\\ {\Pi}_{n}^{d}={\Pi}_{\mathrm{ISI},n}^{d}\ue89e{\Pi}_{n},& \left(67\right)\\ {\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}^{d}\ue89e{\underset{\_}{\hat{Y}}}_{0,n}^{d}}.& \left(68\right)\end{array}$

[0297]
The projector Π_{n }is produced in the manner described earlier according to Equations (43) and (44). The projector Π_{n} ^{d }orthogonal to both Ĉ_{ISI,n} ^{d }and Ĉ_{n}, is formed and then the lowpower response vector Ŷ _{0,n} ^{d }is projected and normalized to form the beamformer which fully rejects ISI from the processed user d and interference from the NI users in set I.

[0298]
It should be noted that, if the suppression of strong interferers is not needed, ISI can still be rejected by the following beamformer:
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{\mathrm{ISI},n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{\mathrm{ISI},n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}},& \left(69\right)\end{array}$

[0299]
where projector Π
_{n }in Equation (67) would be set to identity and hence would have no effect. This is the same as setting the matrix Ĉ
_{n }to null matrix. If the projector Π
_{ISI,n} ^{d }in the above equation is replaced by an identity matrix, (equivalent to setting matrix Ĉ
_{ISI,n} ^{d }to null matrix) then a simple MRC beamformer is implemented before despreading. A receiver module using such an MRC beamformer is illustrated in FIG. 27 and could be used to replace any of the “contributors” only receiver modules, such as receiver modules
20 ^{1}, . . . ,
20 ^{NI }in FIG. 9 et seq. The receiver module shown in FIG. 27 is similar to receiver module
20A
^{d }of FIG. 9 except that the ISR beamformer
47A
^{d }is replaced by an MRC beamformer
27N
^{d }which implements the equation
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{d}=\frac{{\hat{\underset{\_}{Y}}}_{o,n}^{d}}{{\uf605{\hat{\underset{\_}{Y}}}_{o,n}^{d}\uf606}^{2}}.& \left(70\right)\end{array}$

[0300]
It is also envisaged that the receiver module of FIG. 27 using the MRC beamformer denoted W _{MRC,n} ^{d }in the following, could be incorporated into a STAR which did not use ISR, for example the STAR described in reference [13].

[0301]
PilotAssisted ISR

[0302]
STARISR performs blind channel identification within a sign ambiguity (or quantizedphase ambiguity for MPSK). It hence avoids differential demodulation and enables quasicoherent detection. However, differential decoding is still required at the cost of some loss in performance to resolve the sign ambiguity. To implement full coherent detection and avoid differential decoding, a pilot signal, i.e, a predetermined sequence of symbols known to the receiver (usually a constant “1” sequence), can be sent by the transmitter to enable the receiver to resolve the sign ambiguity. Two pilot types are common namely 1) A pilotsymbol will insert pilot symbols in the data sequence at predetermined symbol positions or iterations n_{π}, the other indices n_{δ} being allocated to the data symbols with some overhead loss; 2) A pilotchannel will multiplex the pilot sequence with the data sequence using a pair of distinct spreading codes c_{i} ^{π,u }and c_{i} ^{δ,u}; a fraction ζ^{2}/(1+ζ^{2}) of the power available being allocated to the pilot, the rest 1/(1+ζ^{2}) to the data with some relative power loss.

[0303]
Pilot signals are usually used to perform channel identification. STARISR achieves this task without a pilot and hence reduces the role of the pilot to a simple resolution of the phase ambiguity resulting from its blind channel identification approach. This new approach to pilot use enables significant reduction of the overhead or power fraction allocated to the pilot, as disclosed in references [21] and [31] in the singleuser context of STAR on both uplink and downlink, respectively. Insertion of a pilot in STARISR along the new approach is depicted by FIGS. 44 and 46 for a pilotsymbol and a pilotchannel, respectively.

[0304]
In FIG. 44, a pilotsymbol assisted ISR receiver is shown for user d. The ISR beamformer 47V^{d }outputs the signal component estimates ŝ_{n} ^{d }and interacts with the channel identification and power control units 28V^{d }and 30V^{d }in the regular steps described earlier. However, an additional pilot/data demultiplexer 35V^{d }at the beamformer output isolates the symbol positions n_{δ} and n_{π} allocated to the data and the pilot. It hence extracts at the corresponding index positions two distinct streams of signal component estimates ŝ_{n} _{ δ } ^{d }and ŝ_{n} _{ π } ^{d}, respectively.

[0305]
On one hand the data signal component estimates {overscore (s)}_{n} _{ 1 } ^{d}≈a^{d}ψ_{n} ^{d}b_{n} ^{d }delivered within a quantized phase ambiguity a^{d }(i.e., belongs to the constellation) are fed to the decision rule unit 29V^{d }to estimate the corresponding symbol estimates {circumflex over (b)}_{nδ} ^{d}≈a^{d}b_{n} ^{d }within the same phase ambiguity a^{d}.

[0306]
On the other hand the pilot signal component estimates ŝ_{n} _{ i } ^{d}≈a^{d}ψ_{n} ^{d}, which basically hold the constant phase ambiguity within little fluctuation of the received power (ψ_{n} ^{d})^{2}, are fed to an ambiguity estimator 31V^{d }shown in FIG. 45. This estimator buffers the pilot signal component estimates over a predetermined number of symbols. Once the buffer 33V^{d }is full, the estimator averages (or smooths) the buffered values to significantly reduce the residual noise and hence minimize estimation errors using the averaging or smoothing unit 34V^{d}. It then feeds the resulting average pilot signal component estimate to a decision rule unit 29V/2 ^{d }identical to the one used for the data (i.e., 29V^{d}) to quantize and estimate the phase ambiguity â_{n} ^{d}. Once a new estimation is made, the buffer 33V^{d }is flushed and the phase ambiguity estimate is kept constant until a new estimate is derived when the buffer is filled again.

[0307]
In the pilotsymbol assisted ISR receiver of FIG. 44, a conjugator 32V^{d }conjugates the ambiguity estimate and a multiplier 15V^{d }multiplies the resulting phase conjugate (â_{n} ^{d})^{n }with the data symbol estimate {circumflex over (b)}_{n} _{ i } ^{d}≈a^{d}b_{n} ^{d }for phase ambiguity compensation. The resulting symbol estimate b _{n} ^{d}≈b_{n }is ambiguityfree and no longer needs differential decoding.

[0308]
In FIG. 46, a pilotchannel assisted ISR receiver is shown for user d. To better understand this structure, it is necessary to develop the corresponding data model a step further beforehand. Taking into account the fact that user d uses a pair of spreading codes for pilot and data multiplexing with relative powers ζ
^{2 }and 1, respectively, the data model writes:
$\begin{array}{c}{\underset{\_}{Y}}_{n}={\underset{\_}{Y}}_{0,n}^{\delta ,d}\ue89e{s}_{n}^{\delta ,d}+{\underset{\_}{Y}}_{0,n}^{\pi ,d}\ue89e{s}_{n}^{\pi ,d}+{\underset{\_}{I}}_{n}+{\underset{\_}{N}}_{n}\\ ={\underset{\_}{Y}}_{0,n}^{\delta ,d}\ue89e{\psi}_{n}^{d}\ue89e{b}_{n}^{d}+{\underset{\_}{Y}}_{0,n}^{\pi ,d}\ue89e{\psi}_{n}^{d}\ue89e\zeta +{\underset{\_}{I}}_{n}+{\underset{\_}{N}}_{n},\end{array}$

[0309]
where s_{n} ^{δ,d }and s_{n} ^{π,d }denote the data and pilot signal components, respectively.

[0310]
The received pilot and data signals can be seen as two separate users received from the same physical channel (i.e., H _{n} ^{d }spread by a pair of codes to yield two spread channel versions Y _{0,n} ^{δ,d }and Y _{0,n} ^{π,d}).

[0311]
In FIG. 46, a data ISR beamformer 47V/1 ^{d }tuned to the corresponding data spreading code outputs the data signal component estimates ŝ_{n} ^{δ,d }and interacts with the channel identification and the power control units 28V^{d }and 30V^{d }in the regular steps described earlier. However, an additional pilot ISR beamformer 47V/2 ^{d }tuned to the corresponding pilot spreading code simultaneously provides pilot signal component estimates ŝ_{n} ^{π,d}. Since the pilot power fraction is weaker than the data power, the channel identification unit 28V^{d }uses a more reliable and stronger feedback from the data signal component estimates. The channel estimate is spread by the pair of codes and the resulting estimates Ŷ _{0,n} ^{δ,d }and Ŷ _{0,n} ^{π,d }are fed to the data and pilot ISR beamformers, 47V/1 ^{d }and 47V/2 ^{d}, respectively. The data ISR beamformer 47V/1 ^{d }may not need to steer a null towards its own weakpower pilot channel.

[0312]
On one hand, the data signal component estimates ŝ_{n} ^{δ,d}≈a^{d}ψ_{n} ^{d}b_{n} ^{d }are derived within a quantized phase ambiguity a^{d}. They are fed the decision rule unit 29V^{d }to estimate the data symbol estimates {circumflex over (b)} _{n} _{ i } ^{d} =a ^{d} b _{n} ^{d }within the same phase ambiguity. On the other hand the pilot signal component estimates ŝ_{n} ^{π,d}≈a^{d}ψ_{n} ^{d}ζ hold the constant phase ambiguity within little fluctuations of the received power fraction ζ^{2}(ψ_{n} ^{d})^{2}. Hence, in the same way described above for pilotsymbol assisted ISR, the ambiguity estimator 31V^{d }estimates the phase ambiguity â_{n} ^{d}, and forwards it to the conjugator 32V^{d }to have (â_{n} ^{d})^{n}, then to the multiplier 15V^{d }for phase compensation of the data symbol estimate {circumflex over (b)}_{n} _{ i } ^{d}≈a^{d}b_{n} ^{d}. The resulting symbol estimate b _{n} ^{d}≈b_{n }is again ambiguityfree and no longer needs differential decoding.

[0313]
Joint ISR Detection

[0314]
In the foregoing embodiments of the invention, ISR was applied to a selected set D of users, typically users with a low datarate, who would implement ISR in respect of a selected set I of highrate users. Although this approach is appropriate in most cases, particularly when the number of highrate users is very low, there may be cases where the mutual interference caused by other highrate users is significant, in which case mutual ISR among highrate users may be desired as well. Such a situation is represented by user sets M1 and M2 of FIG. 8. Hence, whereas in the foregoing embodiments of the invention, the receiver modules of set I do not perform ISR, but merely supply constraints sets for use by the receiver modules of set D, it is envisaged that some or all of the receiver modules in set M1 and M2 also could have beamformers employing ISR. Such a Joint ISR (JISR) embodiment will now be described with reference to FIG. 28, which shows only one receiver module, 20 ^{i}, as an example. In any symbol period, each such receiver module 20 ^{i}(i) receives a constraint matrix Ĉ_{n−1 }and an inverse matrix Q_{n−1 }and uses them in suppressing interference, including its own interference component, and (ii) contributes constraints to the constraint matrix Ĉ_{n }and inverse matrix Q_{n }which will be used in the next symbol period. In the case of ISRH mode receivers, which use hypothetical symbols, it is merely a matter of replacing the receiver modules in set I with receiver modules 20 ^{d }having ISR beamformers, since the constraints sets are generated by the hypothetical symbols from the bit sequence generators 63 ^{1}, . . . , 63 ^{NI}. Contrary to other ISR modes which require decisionfeedback, in the ISRH mode receiver module, no processing delay is required for one user to cancel another. Hence, ISRH can be implemented to cancel strong interferers without successive interference cancellation or multistage processing, which will be described later.

[0315]
Using Ĉ_{n }and Q_{n }already computed, the ISR combiner for each interferer can be obtained readily by:

W _{n} ^{i} =Ĉ _{n} Q _{n} R _{3*(i−1)+1}, (71)

[0316]
where R _{k}=[0, . . . , 0, 1, 0, . . . , 0]^{T }is a (3NI)dimensional vector with null components except for the kth one. This implementation has the advantage of implicitly rejecting ISI among strong interferers with a single 3NI×3NImatrix inversion.

[0317]
For the ISRTR, ISRR and ISRD modes, each receiver module, in effect, combines a receiver module of set I with a receiver module of set D, some components being omitted as redundant. Referring again to FIG. 28, which shows such a combined receiver module, the preprocessor
18 supplies the observation matrix Y
_{n }to a 1bit delay
45 and a first vector reshaper
44/
1, which reshapes the observation matrix Y
_{n }to form the observation vector
Y _{n}. A second vector reshaper
44/
2 reshapes the delayed observation matrix Y
_{n−1 }to form delayed observation vector
Y _{n−1}. These matrices and vectors are supplied to the receiver module
20P
^{i }and to others of the receiver modules, together with the constraint matrix Ĉ
_{n−1 }and the inverse matrix Q
_{n−1 }from a common constraint matrix generator
43P, which generates the constraint matrix C
_{n−1 }and the inverse matrix Q
_{n−1 }from the constraintsset
_{n−1 }produced by constraint set generator
42P.

[0318]
The receiver module 20P^{i }comprises a despreader 19 ^{i}, a channel identification unit 28P^{i}, a power estimation unit 30P^{i}, and a decision rule unit 29P^{i}, all similar to those of the abovedescribed receiver modules. In this case, however, the receiver module 20P^{i }comprises two beamformers, one an ISR beamformer 47P^{i }and the other an MRC beamformer 27P^{i}, and an additional decision rule unit 29P/2 ^{i }which is connected to the output of MRC beamformer 27P^{i}. The ISR beamformer 47P^{i }processes the delayed observation vector Y _{n−1 }to form the estimated signal component estimate ŝ_{n−1} ^{i }and supplies it to the first decision rule unit 29P^{i}, the power estimation unit 30P^{i}, and the channel identification unit 28P^{i}, in the usual way. The decision rule unit 29P^{i }and the power estimation unit 30P^{i }operate upon the signal component estimate ŝ_{n−1} ^{i }to derive the corresponding symbol estimate {circumflex over (b)}_{n−1} ^{i }and the power estimate {circumflex over (ψ)}_{n−1} ^{i }and supply them to other parts of the receiver in the usual way.

[0319]
The despreader
19 ^{i }despreads the delayed observation matrix Y
_{n−1 }to form the postcorrelation observation vector
Z _{n−1} ^{i }and supplies it to only the channel identification unit
28P
^{i}, which uses the postcorrelation observation vector
Z _{n−1} ^{i }and the signal component estimate to produce both a spread channel vector estimate
Ŷ _{0,n−1} ^{i }and a set of channel vector estimates
_{n−1} ^{i}. At the beginning of the processing cycle, the channel identification unit
28P
^{i }supplies the spread channel vector estimate
Ŷ _{0,n−1} ^{i }to both the ISR beamformer
47P
^{i }and the MRC beamformer
27P
^{i }for use in updating their coefficients, and supplies the set of channel vector estimates
_{n−1} ^{i }to the constraintsset generator
42P.

[0320]
The MRC beamformer
27P
^{i }processes the current observation vector
Y _{n }to produce a “future” signal component estimate ŝ
_{MRC,n} ^{i }for use by the second decision rule unit
29P/
2 ^{i }to produce the “future” symbol estimate {circumflex over (b)}
_{MRC,n} ^{i}, which it supplies to the constraintsset generator
42P at the beginning of the processing cycle. The constraintsset generator
42P also receives the symbol estimate {circumflex over (b)}
_{n−1} ^{i }from the decision rule unit
29 ^{i}, but at the end of the processing cycle. The constraintsset generator
42P buffers the symbol {circumflex over (b)}
_{MRC,n} ^{i }from the decision rule unit
29P/
2 ^{i }and the symbol estimate {circumflex over (b)}
_{n−1} ^{i }from the decision rule unit
29P
^{i }at the end of the processing cycle. Consequently, in a particular symbol period n−1, when the constraintsset generator
42P is computing the constraintsset
_{n−1 }it has available the set of channel vector estimates
_{n−1}, the “future” symbol estimate {circumflex over (b)}
_{MRC,n} ^{i}, the “present” symbol estimate {circumflex over (b)}
_{MRC,n−1} ^{i }and the “past” symbol estimate {circumflex over (b)}
_{n−2} ^{i}, the latter two from its buffer.

[0321]
Each of the other receiver modules in the “joint ISR” set supplies its equivalents of these signals to the constraintsset generator
42P. The constraintsset generator
42P processes them all to form the constraints set
_{n−1 }and supplies the same to the constraint matrix generator
42P, which generates the constraint matrix Ĉ
_{n }and the inverse matrix Q
_{n }and supplies them to the various receiver modules.

[0322]
The constraintsset generator 42P and the constraint matrix generator 43P will be constructed and operate generally in the same manner as the constraintsset generator 43 and constraint matrix generator 42 of the embodiments of the invention described hereinbefore with reference to FIGS. 9 to 27. Hence, they will differ according to the ISR mode being implemented.

[0323]
When the constraintsset generator 42P of the receiver of FIG. 28 is configured for the ISRD mode, i.e. like the constraintsset generator shown in FIG. 16, the constraint matrix Ĉ_{n }supplied to the ISR beamformer 47P^{1 }contains enough information for the beamformer 47P^{i }to estimate the channel parameters itself. Hence, it forwards these estimates to the channel identification unit 28P^{i }for use in improving the channel vector estimation and the set of channel vector estimates produced thereby.

[0324]
An ISRRH receiver module will use a similar structure, except that the onebit delay 45 will be omitted and the constraintsset generator 42P will use the previous symbol, estimate {circumflex over (b)}_{n−1} ^{i}, the current MRC symbol estimate {circumflex over (b)}_{MRC,n} ^{i }and the two hypothetical values for “future” symbol b_{n+1} ^{i }to produce current symbol estimate {circumflex over (b)}_{n} ^{i}. Modification of the receiver module shown in FIG. 28 to implement such a “ISRRH mode” will be straightforward for a skilled person and so will not be described hereafter.

[0325]
In order to implement JISR, a more general formulation of the constraint matrix is required. The general ISR constraint matrix counting N
_{c }constraints, is as follows:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\hat{\underset{\_}{C}}}_{n,1}}{\uf605{\hat{\underset{\_}{C}}}_{n,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{C}}}_{n,j}}{\uf605{\hat{\underset{\_}{C}}}_{n,j}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{C}}}_{n,{N}_{e}}}{\uf605{\hat{\underset{\_}{C}}}_{n,{N}_{a}}\uf606}\right]& \left(72\right)\end{array}$

[0326]
where the jth constraint
Ĉ _{nj }is given by:
$\begin{array}{cc}\hat{\underset{\_}{C}}\ue89e\stackrel{\Delta}{=}\ue89e\sum _{\left(u,f,k\right)\in {S}_{l}}\ue89e{\hat{\underset{\_}{Y}}}_{k,n}^{u,f}& \left(73\right)\end{array}$

[0327]
where S_{j }defines a subset of diversities which form the jth constraint when summed. As shown in Table 2, the sets S_{j}, j=1, . . . , N_{c }are assumed to satisfy the following restrictions:

S=S _{1} ∪S _{2} ∪ . . . ∪S _{N} _{ c }={(u,f,k)u=1, . . . , NI; f=1, . . . , N _{f} ; k=−1,0,+1},

[0328]
and

S _{1} ∩S _{2} ∩ . . . ∩S _{N} _{ c }=Ø,

[0329]
Ø being the empty set. Table 1 defines the sets S_{j}, j=1, . . . , N_{c }for all presented ISR modes of operation.

[0330]
The objective signal belongs to the total interference subspace as defined by the span of the common constraint matrix Ĉ_{n}. Therefore, to avoid signal cancellation of the desired user d by the projection:

Π_{n} ^{d} =I _{M+(2L−1)} −Ĉ _{n} Q _{n} Ĉ _{n} ^{d} ^{ H }, (74)

[0331]
the desiredsignal blocking matrix Ĉ
_{n} ^{d }is introduced, as given by:
$\begin{array}{cc}{\hat{C}}_{n}^{d}=\left[\frac{{\hat{\underset{\_}{C}}}_{n,1}^{d}}{\uf605{\hat{\underset{\_}{C}}}_{n,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{C}}}_{n,j}^{d}}{\uf605{\hat{\underset{\_}{C}}}_{n,j}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{C}}}_{n,{N}_{e}}^{d}}{\uf605{\hat{\underset{\_}{C}}}_{n,{N}_{a}}\uf606}\right],\text{}\ue89e\text{where:}& \left(75\right)\\ {\underset{\_}{\hat{C}}}_{n,j}^{d}\ue89e\stackrel{\Delta}{=}\ue89e\sum _{\left(u,f,k\right)\in {S}_{j}\ue89e\backslash \ue89e{S}^{d}}\ue89e{\hat{\underset{\_}{Y}}}_{k,n}^{u,f},& \left(76\right)\end{array}$

[0332]
with S^{d}={(u,f,k)u=d; f=1, . . . , N_{f}; k=0}. Normally S^{d }is a small subset of S and Ĉ_{n} ^{d }is very close to Ĉ_{n}.

[0333]
Joint MultiUser Data and Channel Gain Estimation in ISRD

[0334]
Neglecting the signal contributions from the weakpower lowrate users, and limiting to the signals of the NI interferers,
Y _{n}, can be formulated as:
$\begin{array}{cc}{\underset{\_}{Y}}_{n}=\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e{\psi}_{n}^{i}\ue89e{\zeta}_{f,n}^{i}\ue89e{\underset{\_}{Y}}_{n}^{i,f}+{\underset{\_}{N}}_{n}^{p\ue89e\text{\hspace{1em}}\ue89e\mathrm{th}}& \left(77\right)\\ \text{\hspace{1em}}\ue89e={{C}_{n}\ue8a0\left[{\psi}_{n}^{i}\ue89e{\zeta}_{1,n}^{1},\dots \ue89e\text{\hspace{1em}},{\psi}_{n}^{1}\ue89e{\zeta}_{{N}_{f}\ue89en}^{1},\dots \ue89e\text{\hspace{1em}}\ue89e{\psi}_{n}^{\mathrm{NI}}\ue89e{\zeta}_{1,n}^{\mathrm{NI}},\dots \ue89e\text{\hspace{1em}}\ue89e{\psi}_{n}^{\mathrm{NI}}\ue89e{\zeta}_{{N}_{f},N}^{\mathrm{NI}}\right]}^{T}+\text{}\ue89e\text{\hspace{1em}}\ue89e{\underset{\_}{N}}_{n}^{\mathrm{pth}}& \left(78\right)\\ \text{\hspace{1em}}\ue89e={C}_{n}\ue89e{\underset{\_}{\Gamma}}_{n}+{\underset{\_}{N}}_{n}^{\mathrm{pth}},& \left(79\right)\end{array}$

[0335]
where Γ _{n }is a N_{f}NI×1 vector which aligns channel coefficients from all fingers over all users. Estimation of Γ _{n}, may be regarded as a multisource problem:

{circumflex over (Γ)} _{n} =Q _{n} Ĉ _{n} ^{11} Y _{n}. (80)

[0336]
This constitutes one step of ISRD operations and allows joint multiuser channel identification.

[0337]
MultiStage ISR Detection

[0338]
Multistage processing may be used in combination with those of the abovedescribed embodiments which use the abovedescribed joint ISR, i.e. all except the receivers implementing ISRH mode. It should be appreciated that, in each of the receivers which use decisionfeedback modes of ISR (TR,R,D,RH), coarse MRC symbol estimates are used in order to reconstruct signals for the ISR operation. Because they are based upon signals which include the interference to be suppressed, the MRC estimates are less reliable than ISR estimates, causing worse reconstruction errors. Better results can be obtained by using multistage processing and, in successive stages other than the first, using improved ISR estimates to reconstruct and perform the ISR operation again.

[0339]
Operation of a multistage processing receiver module which would perform several iterations to generate a particular symbol estimate is illustrated in FIG. 29, which depicts the same components, namely constraintsets generator
42P, constraint matrix generator
43P, ISR beamformer
47P
^{i }and decision rule unit
29P/
1 ^{i}, MRC beamformer
27P
^{i }and decision rule unit
29P/
2 ^{i}, in several successive symbol periods, representing iterations
1,
2, . . . , N
_{s }of frame n which targets the symbol estimate {circumflex over (b)}
_{n−1} ^{i }for user station
10 ^{i}. Iteration
1, if alone, would represent the operation of the receiver module
20 ^{i }of FIG. 28 in which the constraintsset generator
42P uses the coarse symbol estimates {circumflex over (b)}
_{MRC,n−1} ^{i }previously received from the second decision rule unit
29P/
2 ^{i }(and others as applicable) and buffered. In each iteration within the frame, the other variables used by the constraintsset generator
42P remain the same, These variables comprise, from at least each “contributor” receiver module in the same joint processing set, the previous symbol estimate {circumflex over (b)}
_{n−2} ^{i}, the set of channel parameters
_{n−1} ^{i }and the current MRC symbol estimate {circumflex over (b)}
_{MRC,n} ^{i}. Likewise, the spread channel vector estimate
Ŷ _{0,n−1} ^{i }and the delayed observation vector
Y _{n−1 }used by the ISR beamformer
47P
^{i }will remain the same.

[0340]
In iteration 1, the constraint matrix generator 42P generates constraint matrix Ĉ_{n−1}(1) and the inverse matrix Q_{n−1}(1) and supplies them to the beamformer 47P^{i }which uses them, and the spread channel vector estimate Ŷ _{0,n−1} ^{i }to tune its coefficients for weighting each element of the delayed observation vector Y _{n−1}, as previously described, to produce a signal component estimate which the decision rule unit 29P/1 ^{i }processes to produce the symbol estimate {circumflex over (b)}_{n−1} ^{i}(1) at iteration 1, which would be the same as that generated by the receiver of FIG. 28. This symbol estimate {circumflex over (b)}_{n−1} ^{i}(1) is more accurate than the initial coarse MRC estimate {circumflex over (b)}_{MRC,n−1} ^{i }so it is used in iteration 2 as the input to the constraintsset generator 42P^{i}, i.e., instead of the coarse MRC estimate of beamformer 27P^{i}. As a result, in iteration 2, the constraint matrix generator 42P produces a more accurate constraint matrix Ĉ_{n−1}(2) and inverse matrix Q_{n−1}(2). Using these improved matrices, the ISR beamformer 47P^{i }is tuned more accurately, and so produces a more accurate symbol estimate {circumflex over (b)}_{n−1} ^{i}(2) in iteration 2. This improved symbol estimate is used in iteration 3, and this iterative process is repeated for a total of N_{s }iterations. Iteration N_{s }will use the symbol estimate {circumflex over (b)}_{n−1} ^{i}(N_{s}−1) produced by the preceding iteration and will itself produce a symbol estimate {circumflex over (b)}_{n−1} ^{i}(N_{s}) which is the target symbol estimate of frame n and hence is outputted as symbol estimate {circumflex over (b)}_{n−1} ^{i}.

[0341]
This symbol estimate {circumflex over (b)}_{n−1} ^{i }will be buffered and used by the constraintsset generator 42P in every iteration of the next frame (n+1) instead of symbol estimate {circumflex over (b)}_{n−2} ^{i}. Other variables will be incremented appropriately and, in iteration 1 of frame n+1, a new coarse MRC beamformer 27P^{i }symbol estimate {circumflex over (b)}_{MRC,n+1} ^{i }will be used by the constraintsset generator 42P. The iterative process will then be repeated, upgrading the symbol estimate in each iteration, as before.

[0342]
It should be noted that, in FIG. 29, the inputs to the channel identification unit 28P^{i }use subscripts which reflect the fact that they are produced by a previous iteration. These subscripts were not used in FIG. 28 because it was not appropriate to show the transition between two cycles. The transition was clear, however, from the theoretical discussion.

[0343]
One stage ISR operation can be generalized as follows:
$\begin{array}{cc}{\hat{s}}_{n}^{d}\ue8a0\left(1\right)={\hat{s}}_{\mathrm{MRC},n}^{d}{\underset{\_}{W}}_{\mathrm{MRC},n}^{{d}^{H}}\ue89e{\hat{C}}_{n}^{d}\ue8a0\left(1\right)\ue89e{\underset{\_}{\upsilon}}_{n}\ue8a0\left(1\right),\text{}\ue89e{\underset{\_}{\upsilon}}_{n}\ue8a0\left(1\right)={Q}_{n}\ue8a0\left(1\right)\ue89e{{\hat{C}}_{n}\ue8a0\left(1\right)}^{H}\ue89e{\underset{\_}{Y}}_{n},& \left(81\right)\end{array}$

[0344]
where ŝ
_{n} ^{d}(
1) is the ISR estimate from first ISR stage, ŝ
_{MRC,n} ^{u }is the MRC signal estimate, and the constraint matrices Ĉ
_{n}(
1), Ĉ
_{n} ^{d}(
1), and Q
_{n}(
1) are formed from MRC estimates at the first stage. Generalizing notation, the signal estimate at stage N
_{s }may be derived after the following iterations:
$\begin{array}{cc}\begin{array}{c}{\hat{s}}_{n}^{d}\ue8a0\left(2\right)={\hat{s}}_{\mathrm{MRC},n}^{d}{\underset{\_}{W}}_{\mathrm{MRC},n}^{{d}^{H}}\ue89e{\hat{C}}_{n}^{d}\ue8a0\left(2\right)\ue89e{\underset{\_}{\upsilon}}_{n}\ue8a0\left(2\right),{\underset{\_}{\upsilon}}_{n}\ue8a0\left(2\right)={Q}_{n}\ue8a0\left(2\right)\ue89e{{\hat{C}}_{n}\ue8a0\left(2\right)}^{H}\ue89e{\underset{\_}{Y}}_{n},\\ \vdots \\ {\hat{s}}_{n}^{d}\ue8a0\left({N}_{s}\right)={\hat{s}}_{\mathrm{MRC},n}^{d}{\underset{\_}{W}}_{\mathrm{MRC},n}^{{d}^{H}}\ue89e{\hat{C}}_{n}^{d}\ue8a0\left({N}_{s}\right)\ue89e{\underset{\_}{\upsilon}}_{n}\ue8a0\left({N}_{s}\right),{\underset{\_}{\upsilon}}_{n}\ue8a0\left({N}_{s}\right)={Q}_{n}\ue8a0\left({N}_{s}\right)\ue89e{{\hat{C}}_{n}\ue8a0\left({N}_{s}\right)}^{H}\ue89e{\underset{\_}{Y}}_{n},\end{array}& \left(82\right)\end{array}$

[0345]
The multistage approach has a complexity cost; however, complexity can be reduced because many computations from one stage to the next are redundant. For instance, the costly computation υ(j) could instead be tracked because via υ(j)≈υ(j−1) if the number of symbol estimation errors does not change much from stage to stage, which can be expected in most situations.

[0346]
It should be noted that, in the embodiment of FIG. 29, the channel identification unit 28P^{i }updates the channel coefficients after the last iteration N_{s}. Hence, for the next cycle, the inputs to the channel identification unit 28P^{i }will be {circumflex over (b)}_{n−1} ^{i}, Z _{n−1} ^{i}, Ŷ _{0,n }and H_{n} ^{i}. It is envisaged, however, that the channel coefficients could be updated more frequently, conveniently at each iteration. Hence, after the first iteration, the interim symbol estimate {circumflex over (b)}_{n−1} ^{i}(1) would be used; in an interim signal component feedback to the channel identification unit 28P^{i}, after the second iteration, interim symbol estimate {circumflex over (b)}_{n−1} ^{i}(2) would be used, and so on. The corresponding interim channel estimates for a given iteration would be supplied to the constraintsset generator 42P for use in the next iteration.

[0347]
ISR Using Multistage with Intermediate Channel Decoding (MICD)

[0348]
The TURBO channel encoder has recently attracted researchers interest as a new efficient coding structure to achieve Information Bit Error Rates (IBER) close to the Shannon limit. Basically, the strength of the TURBO coding scheme is the concatenation of two convolutional decoders each transmitting the same information data, however, data is temporally organized differently (different interleaving) before it is encoded. From one of the data streams, the decoder provides likelihood estimates to be used as a sort of extrinsic information for decoding of the second stream.

[0349]
The TURBO idea has recently been generalized to TURBO multiuser receivers. Like the TURBO decoder, the TURBO multiuser principle concatenates detection stages. This idea applies to ISR, and we will name this extension of ISR Multistage with Intermediate Channel Decoding, ISRMICD. Contrary to multistage ISR, ISRM, ISRMICD performs channel decoding between stages as illustrated in FIG. 47.

[0350]
First MRC beamforming 27W^{i }is as usual performed in a preliminary stage to provide coarse signal estimates (ŝ_{MRC,n} ^{i}) from which tentative estimates of the transmitted data is derived using the decision rule unit 29W/1 ^{i}. The tentative decision is fed to the constraint set generator 42W, which reconstructs the signals of the objective users as well as all other interfering users. The constraint matrix generator 43W assembles the constraint matrix (Ĉ_{n−1}(1)) to be applied to the ISR beamformer 47W^{i}. The ISR beamformer 47W^{i }outputs an improved signal estimate (ŝ_{n−1} ^{i}(1)). As usual is, the ISR symbol estimate ({overscore (b)}_{n−1} ^{i}(1)) is computed using the decision rule unit 29W/1 ^{i}, and fed back to the constraint set generator^{3 } 42W for construction of later constraints. More importantly, though, the ISR signal estimate is passed on for intermediate channel decoding (horizontal branch on figure). First the buffer 90 ^{i }collects N_{F }symbols corresponding to a code frame^{4}. The code frame is passed to the deinterleaving unit 91 ^{i }which deinterleaves data using a predefined rule^{5}. The deinterleaved data is Viterbi decoded in the channel decoding unit 92 ^{i }to provide a block of N_{F}/R information bits where R is the rate of the code. Having performed the channel decoding, the decoded information bit sequence is next reencoded in the reencoding unit 93 ^{i}, then reinterleaved in the reinterleaving unit 94 ^{i }to arrive at the improved channel decoded symbol sequence {circumflex over (b)}_{n} ^{i}. This estimate is usually much better than the ISR estimate ({circumflex over (b)}_{n−1}(1)) available before the channel decoding step because redundancy of coding and time diversity due to interleaving is exploited^{6}. ISRMICD, as opposed to ISRM, therefore gains from improved estimates in the second stage. As usual constraints are generated by the constraint set generator 42W and fed to the constraint matrix generator 43W to form the improved constraint matrix (Ĉ_{n−1}(2)). This matrix is then passed to the ISR beamformer 47W^{i }to provide the improved ISRMICD second stage signal estimate (ŝ_{n−1}(2)) which is fed to decision rule unit 29W/1 ^{i }to provide the ISRMICD second stage data symbol estimate ({overscore (b)}_{n−1} ^{i}(2)) ISRMICD can also be performed in more stages by repeating the whole process, which amounts to repeating the part of the block diagram limited by the broken lines using ŝ_{n−1}(2) for channel decoding in the third stage, ŝ_{n−1} ^{i}(3) in the fourth stage, etc.

[0351]
Group ISR Detection

[0352]
In practice, the receiver of FIG. 28 could be combined with one of the earlier embodiments to create a receiver for a “hierarchical” situation, i.e., as described hereinbefore with reference to FIG. 8, in which a first group of receiver modules, for the weakest signals, like those in set D of FIG. 8, for example, are “recipients” only, i.e., they do not contribute to the constraint matrix at all; a second group of receiver modules, for the strongest signals, like the receiver modules of set I in FIG. 8, do not need to cancel interference and so are “contributors” only, i.e., they only contribute constraintssets to the constraint matrix used by other receiver modules; and a third set of receiver modules, for intermediate strength signals, like the receiver modules of sets M
2 of FIG. 8, are both “recipients” and “contributors”, i.e. they both use the constraint matrix from the set I receiver modules to cancel interference from the strongest signals and contribute to the constraint matrix that is used by the set D receiver modules. Generally, this approach is referred to as “Group ISR” (GISR) and the equations for the constraint matrices and inverse matrices comprising the set K
_{n}={Ĉ
_{Outset,n}, Q
_{Outset,n}, Ĉ
_{Inset,n}, Q
_{Inset,n}} used by the ISR beamformers in the different receivers are as follows:
$\begin{array}{cc}{Q}_{\mathrm{Outset},n}={\left({\hat{C}}_{\mathrm{Outset},n}^{H}\ue89e{\hat{C}}_{\mathrm{Outset},n}\right)}^{1},& \left(83\right)\\ {\Pi}_{\mathrm{outset},n}={I}_{M+\left(2\ue89eL1\right)}{\hat{C}}_{\mathrm{Outset},n}\ue89e{Q}_{\mathrm{Outset},n}\ue89e{\hat{C}}_{\mathrm{Outset},n)}^{H}& \left(84\right)\\ {\hat{C}}_{\mathrm{Inset},n}={\Pi}_{\mathrm{Outset},n}\ue89e{\hat{C}}_{\mathrm{Inset},n},& \left(85\right)\\ {Q}_{\mathrm{Inset},n}={\left({\hat{C}}_{\mathrm{Inset},n}\ue89e{\hat{C}}_{\mathrm{Inset},n}\right)}^{1},& \left(86\right)\\ {\Pi}_{\mathrm{Inset},n}^{d}={I}_{M+\left(2\ue89eL1\right)}{\hat{C}}_{\mathrm{Inset},n}\ue89e{Q}_{\mathrm{Inset},n}\ue89e{\hat{C}}_{\mathrm{Inset},n}^{{d}^{H}},& \left(87\right)\\ {\Pi}_{n}^{d}={\Pi}_{\mathrm{Inset},n}^{d}\ue89e{\Pi}_{\mathrm{Outset},n},& \left(88\right)\\ {\underset{\_}{W}}_{n}^{d}=\frac{{\Pi}_{n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{H}}\ue89e{\Pi}_{n}^{d}\ue89e{\underset{\_}{Y}}_{0,n}^{d}}={\Pi}_{n}^{d}\times \frac{{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{d}\ue89e{\Pi}_{n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}.& \left(89\right)\end{array}$

[0353]
It should be noted that normalization of the columns of Ĉ_{Inset,n }and Ĉ_{Outset,n }is implicit.

[0354]
A receiver module for set D will set Π_{Inset }in Equation (88) to identity which means that only “outset” interference will be cancelled. Otherwise, the processing will be as described for other receivers of set D.

[0355]
A receiver in set M1 does not need to cancel “outset” interference, but does need to cancel “inset” interference. Consequently, it will set Π_{Outset }in Equation (88) to identity so that only inset interference will be cancelled. This corresponds to the joint ISR embodiment described with reference to FIG. 28.

[0356]
Finally, a receiver in set I does not need to cancel any interference. Consequently, it will set both Π_{Inset }and Π_{Outset }to identity, which means that nothing will be cancelled. This corresponds to the group I receiver modules 20 ^{1}, . . . , 20 ^{NI }described with reference to FIGS. 9, 11, 13, 1517, 2024 and 26.

[0357]
Successive Versus Parallel ISR Detection

[0358]
Although the embodiments of ISR receivers described hereinbefore use a parallel implementation, ISR may also be implemented in a successive manner, denoted SISR, as illustrated in FIG. 30. Assuming implementation of successive ISR among NI interferers, U users, and assuming without loss of generality that users are sorted in order of decreasing strength such that user 1 is the strongest and user NI is the weakest user, when processing user i in SISR, the ISR estimate can be computed as:

ŝ _{n} ^{i} =ŝ _{MRC,n} ^{i} −W _{MRC,n} ^{i} ^{ H } Ĉ _{i,n} ^{i} υ _{n}(i), υ _{n}(i)=Q _{n} ^{i} Ĉ _{i,n} ^{H} Y _{n}, (90)

[0359]
where Ĉ_{i,n }by spans only the subspace of users 1, . . . , i−1^{7}, Q_{n} ^{i }is the corresponding inverse and where Ĉ_{l,n} ^{i }is the user specific constraint matrix. Clearly, Ĉ_{i,n} ^{i }is no longer common for all users, which entails expensive matrix inversion for each user. However, with ISRTR this inversion is avoided, since Ĉ_{i,n} ^{i} ^{ H }Ĉ_{i,n} ^{i }is a scalar, and SISRTR is a good alternative to its parallel counterpart, ISRTR. Other ISR modes may take advantage of the common elements of Ĉ_{i,n }from one processing cycle to the next using matrix inversion by partitioning.

[0360]
Hybrid ISR Detection

[0361]
It should also be appreciated that the different ISR modes may be mixed, conveniently chosen according to the characteristics of their signals or transmission channels, or data rates, resulting hybrid ISR implementations (HISR). For example, referring to FIG. 8, the sets I, M1 and M2 might use the different modes ISRH, ISRD and ISRTR, respectively, and the receiver modules in set D would use the different modes to cancel the “outset” interference from those three sets. Of course, alternatively or additionally, different modes might be used within any one of the sets.

[0362]
ISR Projection for Enhanced Channel Identification

[0363]
In all of the abovedescribed embodiments of the invention, the channel identification units
28 ^{d }in the ISR receiver modules use the postcorrelation observation vector
Z _{n} ^{i }to generate the spread channel vector estimate
Ŷ _{0,n} ^{d }(by spreading
Ĥ _{n} ^{d}). Unfortunately, the interference present in the observation matrix Y
_{n }is still present in the postcorrelation observation vector
Z _{n} ^{i }(see Equation (14)) and, even though it is reduced in power by despreading, it detracts from the accuracy of the spread channel vector estimate
Ŷ _{0,n} ^{d}. As has been discussed hereinbefore, specifically with reference to Equations (83) to (89), the ISR beamformer
47 ^{d }effectively constitutes a projector Π
_{n} ^{d }and a tuning and combining portion
$\frac{{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{{d}^{{H}^{\prime}}}\ue89e{\Pi}_{n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}}$

[0364]
which, in effect, comprises a residual MRC beamformer
${\underset{\_}{W}}_{n}^{d}=\frac{{\hat{\underset{\_}{Y}}}_{0,n}^{\Pi ,d}}{{\uf605{\hat{\underset{\_}{Y}}}_{0,n}^{\Pi ,d}\uf606}^{2}}.$

[0365]
[0365]FIG. 31 illustrates a modification, applicable to all embodiments of the invention described herein including those described hereafter, which exploits this relationship to improve the spread channel vector estimate Ŷ _{0,n} ^{d }(or channel vector estimate Ĥ _{n} ^{d}) by using the projector Π_{n} ^{d }to suppress the interference component from the observation vector Y _{n}. In the receiver of FIG. 31, the ISR beamformer 47Q^{d }is shown as comprising a projector 100 ^{d }and a residual MRC beamformer portion 27Q^{d}. The projector 100 ^{d }multiplies the projection Π_{n} ^{d }by the observation vector Y _{n }to produce the “cleaned” observation vector Y _{n} ^{Π,d }and supplies it to the residual MRC beamformer 27Q^{d}, which effectively comprises a tuner and combiner to process the “cleaned” observation vector Y _{n} ^{Π,d }and produce the signal component estimate ŝ_{n} ^{d }from which decision rule unit 29Q^{d }derives the symbol estimate {circumflex over (b)}_{n} ^{d }in the usual way.

[0366]
The “cleaned” observation vector Y _{n} ^{Π,d }is reshaped by matrix reshaper 102Q^{d }to form “cleaned” observation matrix Y_{n} ^{Π,d }which despreader 19 ^{d }despreads to form the “cleaned” postcorrelation observation vector Z _{n} ^{Π,d }for application to the channel identification unit 28Q^{d }for use in deriving the spread channel vector estimate Ŷ _{0,n} ^{d}.

[0367]
The new “cleaned” vector resulting from the projection of the observation vector
Y _{n }by Π
_{n} ^{d }is defined as follows:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{Y}}_{n}^{\Pi ,d}={\Pi}_{n}^{d}\ue89e{\underset{\_}{Y}}_{n}\\ ={\Pi}_{n}^{d}\ue89e\left\{\sum _{\mu \in \left(1,\dots \ue89e\text{\hspace{1em}},\mathrm{NI}\right)\bigcup \left\{d\right\}}\ue89e{\underset{\_}{Y}}_{n}^{u}+{\underset{\_}{N}}_{n}\right\}\simeq \left({\Pi}_{n}^{d}\ue89e{\underset{\_}{Y}}_{0,n}^{d}\right)\ue89e{s}_{n}^{d}+\left({\Pi}_{n}^{d}\ue89e{\underset{\_}{N}}_{n}\right)\\ ={\underset{\_}{Y}}_{0,n}^{\Pi ,d}\ue89e{s}_{n}^{d}+{\underset{\_}{N}}_{n}^{\Pi ,d}.\end{array}& \left(91\right)\end{array}$

[0368]
The new observation vector is free from the interferers and ISI and contains a projected version of the channel vector Y _{0,n} ^{Π,d}. Without being a condition, it is reasonable to assume that the projector Π_{n} ^{d }is almost orthogonal to the channel vector, especially in high processing gain situations and/or in the presence of few interferers, and therefore consider that Y _{0,n} ^{Π,d}=Y _{0,n} ^{d}. Otherwise an oblique projection can be formed which guarantees Y _{0,n} ^{Π,d}=Y _{0,n} ^{d}. When despreader 19 ^{d }despreads Y _{n} ^{Π,d }with the spreading sequence of the desired user d, it produces an interferencefree projected postcorrelation observation vector Z _{n} ^{Π,n }which the channel identification unit 28Q^{d }uses to create the channel vector estimate Ŷ _{0,n} ^{d }to use in updating the coefficients of the residual MRC beamformer portion 27Q^{d}.

[0369]
With respect to the new observation vectors
Y _{n} ^{Π,d }and
Z _{n} ^{Π,n}, before and after despreading, respectively, the ISR and DFI steps in STAR are modified as follows:
$\begin{array}{cc}{\underset{\_}{W}}_{n}^{d}=\frac{{\hat{\underset{\_}{Y}}}_{0,n}^{\Pi ,d}}{{\uf605{\hat{\underset{\_}{Y}}}_{0,n}^{\Pi ,d}\uf606}^{2}}\equiv \frac{{\hat{\underset{\_}{Y}}}_{0,n}^{d}}{{\hat{\underset{\_}{Y}}}_{0,n}^{d}\ue89e{\Pi}_{n}^{d}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d}},& \left(92\right)\\ {\hat{s}}_{n}^{d}=\mathrm{Real}\ue89e\text{\hspace{1em}}\ue89e\left\{{\underset{\_}{W}}_{n}^{d}\ue89e{\underset{\_}{Y}}_{n}^{\Pi ,d}\right\},& \left(93\right)\\ {\stackrel{~}{\underset{\_}{H}}}_{n+1}^{d}={\hat{\underset{\_}{H}}}_{n}^{d}+\mu \ue8a0\left({\underset{\_}{Z}}_{n}^{\Pi ,d}{\hat{\underset{\_}{H}}}_{n}^{d}\ue89e{\hat{s}}_{n}^{d}\right)\ue89e{\hat{s}}_{n}^{d}.& \left(94\right)\end{array}$

[0370]
The equivalence between the two expressions of the beamformer coefficients in Equation (92) due to the nilpotent property of projections should be noted. In more adverse nearfar situations, the modification illustrated in FIG. 31 allows more reliable channel identification than simple DFI and hence increases nearfar resistance. If necessary, this new DFI version will be termed ΠDFI. It is expected to be suitable for situations where the interferers are moderately strong and when the null constraints cover them all. For simplicity of discussion, projection of the observation will become implicit without reference to Y _{Π,n} ^{d}, Z _{Π,n} ^{d }or to the corresponding modifications in STARISR operations.

[0371]
Expanding Dimensionality (Xoption)

[0372]
When the number of users becomes high compared to the processing gain, the dimension of the interference subspace becomes comparable to the total dimension (M(2L−1)). The penalty paid is an often devastating enhancement of the white noise. Unlike ISRTR, which always requires a single constraint, other DF modes, namely ISRR and ISRD, may suffer a large degradation because the number of constraints these modes require easily becomes comparable to the total dimension available. However, the dimension may be increased by using additional data in the observation. This option also allows for asynchronous transmission and for the application of ISR to Mixed Spreading Factor (MSF) systems.

[0373]
The matchedfiltering observation vector
Y _{n }is generated to include additional past spread data which has already been processed. If the model is expanded to include past processed N
_{x }symbols and arrive at a total temporal dimension
N _{T}=(
N _{x} +I)
L−1, the observation becomes:
$\begin{array}{cc}\begin{array}{c}\underset{\underset{\_}{\_}}{Y}=\left[\begin{array}{c}{\underset{\_}{Y}}_{n{N}_{x}+I}\\ \vdots \\ {\underset{}{Y}}_{n}\end{array}\right]=\sum _{u=1}^{U}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\left[\begin{array}{c}{\underset{\_}{Y}}_{n{N}_{x}+I}^{\mu ,f}\\ \vdots \\ {\underset{}{Y}}_{n}^{u,f}\end{array}\right]+\left[\begin{array}{c}{\underset{\_}{Y}}_{n{N}_{x}+I}^{\mathrm{pth}}\\ \vdots \\ {\underset{}{Y}}_{n}^{\mathrm{pth}}\end{array}\right]\\ =\sum _{u=1}^{U}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e{\underset{\underset{\_}{\_}}{Y}}_{n}^{u,f}+{\underset{\_}{\underset{\_}{N}}}_{n}^{\mathrm{pth}}\end{array}& \left(95\right)\end{array}$

[0374]
where double underlining stresses the extended model. It should be noted that Y _{j} ^{u,f }is overlapping temporally Y _{j±1} ^{u,f }and only the first ML samples of the past frames n−1, n−2, . . . etc. are used; however the same syntax is used for simplicity of notation.

[0375]
As an example, application of the X option to ISRD, referred to as ISRDX, requires the following constraint matrix:
$\begin{array}{cc}{\hat{C}}_{n}=\left[\frac{{\hat{\underset{\_}{\underset{\_}{Y}}}}_{n}^{1,1}}{\uf605{\hat{\underset{\underset{\_}{\_}}{Y}}}_{n}^{1,1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{\underset{\_}{Y}}}}_{n}^{1,{N}_{f}}}{\uf605{\hat{\underset{\underset{\_}{\_}}{Y}}}_{n}^{1,{N}_{f}}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{\underset{\_}{Y}}}}_{n}^{\mathrm{N1},1}}{\uf605{\hat{\underset{\underset{\_}{\_}}{Y}}}_{n}^{\mathrm{N1},1}\uf606},\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{\underset{\_}{Y}}}}_{n}^{\mathrm{NI},{N}_{f}}}{\uf605{\hat{\underset{\underset{\_}{\_}}{Y}}}_{n}^{\mathrm{NI},{N}_{f}}\uf606}\right].& \left(96\right)\end{array}$

[0376]
The extended vectors in Equation (96) have been treated in the same way as those in Equation (95), i.e., by concatenating reconstructed vectors from consecutive symbols in the extended frame and by implicitly discarding overlapping dimensions in the concatenated vectors. Clearly, extension of the observation space leaves additional degrees of freedom and results in less white noise enhancement. However, it may exact a penalty in the presence of reconstruction errors.

[0377]
Although the Xoption was illustrated in the case of ISRD, its application to the remaining DF modes is straightforward. It should also be noted that the Xoption allows for processing of more than one symbol at each frame while still requiring one matrix inversion only. The duration of the frame, however, should be small compared to the variations of the channel.

[0378]
In the abovedescribed embodiments, ISR was applied to a quasisynchronous system where ail temporal delays were limited to 0<τ<L. Although this model reflects well the large processing gain situation, where the limit (L→∞), allows for placing a frame of duration 2L−1 chips which fully cover one bit of all users, including delay spreads. With realistic processing gains, and in particular in the low processing gain situation, this model tends to approach a synchronous scenario. Using the Xoption serves as a method supporting complete asynchronous transmission.

[0379]
Referring to FIG. 32, assuming that the users of the system have processing gain L as usual, the transmitted signal of any user is cyclostationary and a possible timedelay of the primary path τ_{1 }is therefore 0<τ_{1}<L where possible time delays of remaining paths are τ_{1}<τ_{2}< . . . <L+Δτ where Δτ is the largest possible delay spread considered. To ensure that the frame covers at least one bit of all users, the frame must at least span L+Δτ in the despread domain and therefore 2L+Δτ in the spread domain. The observation should be extended slightly beyond that to ease interpolation near the edges of the frame.

[0380]
MultiModulation (MM), MultiCode (MC), and Mixed Spreading Factor (MSF) are technologies that potentially can offer mixedrate traffic in wideband CDMA. MSF, which has become very timely, was shown to outperform MC in terms of performance and complexity and is also proposed by UMTS third generation mobile system as the mixedrate scenario. Application of ISR to MSF as the mixed rate scenario considered herein will now be discussed.

[0381]
In MSF, mixed rate traffic is obtained by assigning different processing gains while using the same carrier and chiprate. In a system counting two groups of users, a lowrate (LR) and a high rate (HR) group, this means that every time a LR rate user transmits 1 symbol, a HR user transmits 2r+1 HR symbols, r=L_{l}/L_{h }being the ratio of the LR processing gain to HR processing gain. This is illustrated in FIG. 33 with r=2.

[0382]
Therefore, fitting the ISR frame subject to LR users or in general the lowestrate users ensures that also at least r HR symbols are covered when HR and LR have the same delay spread. The ISR generalizes readily to this scenario regarding every HR user as r LR users. In FIG. 33, the grey shaded HR/LR bits symbolize the current bits to be estimated; whereas, former bits have already been estimated (ISRbits) and future bits are unexplored. It should be noted that current HR bits should be chosen to lie at the end of the frame.

[0383]
MultiCode ISR

[0384]
It is envisaged that a user station could use multiple codes, N_{m }in number, each to transmit a different stream of symbols. FIG. 34 illustrates this modification as applied to a “without despreading” receiver module 20R^{d }for receiving such a multicode signal and using ISR cancellation to cancel interference from other users. The receiver module shown in FIG. 34 is similar to that shown in FIG. 9 except that, instead of a single ISR beamformer 47 ^{d}, the receiver module of FIG. 34 has a bank of ISR beamformers 47R^{d,1}, . . . , 47R^{d,N} ^{ n }for extracting signal component estimates ŝ_{n} ^{d,1}, . . . , ŝ_{n} ^{d,N} ^{ m }, respectively, and supplying them to a bank of decision rule units 29R^{d,1}, . . . , 29R^{d,N} ^{ m }, respectively which produce a corresponding plurality of symbol estimates {circumflex over (b)}_{n} ^{d,1}, . . . , {circumflex over (b)}_{n} ^{d,N} ^{ m }. Likewise, the receiver module 20R^{d }has a bank of despreaders 19 ^{d,1}, . . . , 19 ^{d,N} ^{ m }each of which uses a respective one of the multiple spreading codes of the corresponding user d to despread the observation matrix Y_{n }from the preprocessing unit 18 to produce a corresponding one of a multiplicity of postcorrelation observation vectors Z _{n} ^{d,1}, . . . , Z _{n} ^{d,N} ^{ m }which are supplied to a common channel identification unit 28R^{d}. It should be appreciated that the postcorrelation observation vectors share the same channel characteristics, i.e., of the channel 14 ^{d }between user station 10 ^{d }and the base station antenna array. Consequently, only one channel identification unit 28R^{d }is required, which essentially processes the plural signal component estimates ŝ_{n} ^{d,1}, . . . , ŝ_{n} ^{d,N} ^{ m }and the postcorrelation observation vectors and, in essence, averages the results to produce a single channel vector estimate Ĥ _{n} ^{d }representing the physical channel 14 ^{d}. The channel identification unit 28R^{d }has a bank of spreaders (not shown) which spread the channel vector estimate Ĥ _{n} ^{d }using the multiple spreading codes to create a set of spread channel vector estimates Ŷ _{0,n} ^{d,1}, . . . , Ŷ _{0,n} ^{d,N} ^{ m }, which it supplies to the ISR beamformers 47R^{d,1}, . . . , 47R^{d,N} ^{ m }, respectively. Likewise, the power estimation unit 30R^{d }is adapted to receive plural signal component estimates ŝ_{n} ^{d,1}, . . . , ŝ_{n} ^{d,N} ^{ m }and essentially average their powers to produce the power estimate {circumflex over (ψ)}_{n} ^{d}.

[0385]
While using all of the multiple codes advantageously gives a more accurate channel vector estimate, it requires many expensive despreading operations. In order to reduce the cost and complexity, the receiver module 20M^{d }may use only a subset of the spreading codes.

[0386]
It can be demonstrated that the multiple spreading codes can be replaced by a single spreading code formed by multiplying each of the multiple spreading codes by the corresponding one of the symbol estimates {circumflex over (b)}_{n} ^{d,1}, . . . , {circumflex over (b)}_{n} ^{d,N} ^{ m }and combining the results. FIG. 35 illustrates a receiver module which implements this variation. Thus, the receiver module 20R^{d }shown in FIG. 35 differs from that shown in FIG. 34 in that the bank of despreaders 19 ^{d,1}, . . . , 19 ^{d,N} ^{ m }are replaced by a single despreader 19 ^{d,δ} which receives the symbol estimates {circumflex over (b)}_{n} ^{d,1}, . . . , {circumflex over (b)}_{n} ^{d,N} ^{ m }and multiplies them by the multiple spreading codes to form a compound spreading code, which it then uses to despread the observation matrix Y_{n }and form a single postcorrelation observation vector Z _{n} ^{d,δ}. The channel identification unit 28R^{d }does not receive the signal component estimates but instead receives the total amplitude {circumflex over (ψ)}_{n} ^{d }from the power estimation unit 30R^{d}. This serves as a compound signal component estimate because the use of the compound code is equivalent to modulating a constant “1” or a constant “−1” with that code, as will be formulated by equations later. The channel identification unit 28R^{d }processes the single postcorrelation observation vector Z _{n} ^{d,δ} to produce a single channel vector estimate Ĥ_{n} ^{d }and spreads it, as before, using the multiple spreading codes to form the multiple spread channel vector estimates Ŷ _{0,n} ^{d,1}, . . . , Ŷ _{0,n} ^{d,N} ^{ m }for use by the beamformers 47R^{d,1}, . . . , 48R^{d,N} ^{ m }as before.

[0387]
The theory of such multicode operation will now be developed. Assuming for simplicity that each user assigned the index u transmits N
_{m }streams of DBPSK data b
^{u,1}(t), . . . , b
^{u,N} ^{ m }(t) using N
_{m }spreading codes c
^{u,1}(t), . . . , c
^{u,N} ^{ m }(t), each spread stream can be seen as a separate user among a total of U×N
_{m }access channels, assigned the coupleindex (u,l). The data model can then be written as follows:
$\begin{array}{cc}\begin{array}{c}{Y}_{n}=\sum _{u=1}^{U}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{+1}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n}^{u,l}\ue89e{Y}_{k,n}^{u,I}+{N}_{n}^{\mathrm{pth}}\\ =\sum _{u=1}^{U}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n+k}^{u,l}\ue89e{\zeta}_{f,n}^{u}\ue89e{Y}_{k,n}^{u,l,f}+{N}_{n}^{\mathrm{pth}},\end{array}& \left(97\right)\end{array}$

[0388]
where the canonic uth user lth code observation matrices Y_{k,n} ^{u,l,f }from finger f are obtained by Equations (3) and (4) of with X(t) in Equation (3) replaced, respectively for k=−1, 0, +1,

[0389]
by:

X _{k} ^{u,l,f}(t)= R _{m}δ(t−τ _{P}(t))){circle over (×)}g ^{l} ^{ n }(t)c ^{u,l}(t). (98)

[0390]
In the equation above,
R _{m}=[0, . . . , 0, 1, 0, . . . , 0]
^{T }is an Mdimensional vector with null components except for the mth one and δ(t) denotes the Dirac impulse. Reshaping matrices into vectors yields:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{Y}}_{n}=\sum _{u=1}^{U}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{+1}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n+k}^{u,l}\ue89e{\underset{\_}{Y}}_{k,n}^{u,l}+{\underset{\_}{N}}_{n}^{\mathrm{pth}}\\ =\sum _{u=1}^{U}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n+k}^{u,l}\ue89e{\zeta}_{f,n}^{u}\ue89e{\underset{\_}{Y}}_{k,n}^{u,l,f}+{N}_{n}^{\mathrm{pth}},\end{array}& \left(99\right)\end{array}$

[0391]
The particularity of the above multicode model, where N_{m }codes of each user share the same physical channel H _{n} ^{u }and the same total received power (ψ_{n} ^{u})^{2 }should be noted. Exploitation of these common features will be discussed hereinafter in relation to adapting of the powercontrol and the channelidentification procedures to the multicode configuration. The ISR combining step will now be explained.

[0392]
Considering first joint ISR combining among the group of N interferers, the regular ISR modes, namely TR, R, D, H and RH easily generalize to the new multicode configuration of N_{m}NI users instead of NI, as shown in Table 3. ISR combining operations are carried out as usual using the constraint and blocking matrices Ĉ_{n }and Ĉ_{n} ^{i′,l′}, respectively. It should be noted, however, that a further dimension of interference decomposition and rejection arises over the codes of each user, yielding two additional ISR modes. The new modes depicted in Table 3 and referred to as MCR and MCD (multicode R and D) characterize interference from the entire set of codes of each user by its total realization or by the decomposition of this total realization over diversities, respectively. They combine the R and D modes, respectively, with the TR mode by summing the corresponding constraints over all the multicodes of each user.

[0393]
Although these modes partly implement TR over codes, they are still robust to power estimation errors. Indeed, the fact that the received power of a given user is a common parameter shared between all codes enables its elimination from the columns of the constrain matrices (see Table 3). The MCR and MCD modes inherit the advantages of the R and D modes, respectively. They relatively increase their sensitivity to data estimation errors compared to the original modes, since they accumulate symbol errors over codes. However, they reduce the number of constraints by N_{m}.

[0394]
For a desired user assigned the index d, the constraint matrix Ĉ
_{n }is used to form the projector Π
_{n}. The receiver of the data stream from a usercode assigned the coupleindex (d,l) can simply reject the NI interfering multicode users by steering a unit response to
Ŷ _{0,n} ^{d,l }and a null response to the constraint matrix Ĉ
_{n }with the projector Π
_{n}. It can further reject ISI by steering nulls to
Ŷ _{−1,n} ^{d,l }and
Ŷ _{−1,n} ^{d,l}. However, the signals received from other multicodes contribute to selfISI. This interference, referred to here as MCISI, is implicity suppressed when receiving an interfering user. It can be suppressed too when receiving the desired lowpower user by joint ISR among the codes of each mobile with any of the ISR modes. The multicode constraint and blocking matrices Ĉ
_{MC,n} ^{d }and Ĉ
_{MC,n} ^{d,l′}, respectively, as shown in Table 4 are formed, and derive the ISR beamformer coefficients for usercode (d,l) derived, as follows:
$\begin{array}{cc}{Q}_{\mathrm{MC},n}^{d}={\left({\hat{C}}_{\mathrm{MC},n}^{{d}^{H}}\ue89e{C}_{\mathrm{MC},n}^{d}\right)}^{1},& \left(100\right)\\ {\Pi}_{\mathrm{MC},n}^{d,l}={I}_{M*\left(2\ue89eL1\right)}{\hat{C}}_{\mathrm{MC},n}^{d}\ue89e{Q}_{\mathrm{MC},n}^{d}\ue89e{\hat{C}}_{\mathrm{MC},n}^{d,{l}^{n}},& \left(101\right)\\ {\Pi}_{n}^{d,l}={\Pi}_{\mathrm{MC},n}^{d,l}\ue89e{\Pi}_{n},& \left(102\right)\\ {\underset{\_}{W}}_{n}^{d,1}=\frac{{\Pi}_{n}^{d,l}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d,l}}{{\hat{\underset{\_}{Y}}}_{0,n}^{d,{l}^{H}}\ue89e{\Pi}_{n}^{d,l}\ue89e{\hat{\underset{\_}{Y}}}_{0,n}^{d,l}}.& \left(103\right)\end{array}$

[0395]
The projector Π_{n} ^{d,l }that is orthogonal to both MCISI and to the NI interferers is formed and then its response normalized to have a unity response to Ŷ _{0,n} ^{d,l}.

[0396]
The above processing organization of ISR among the highpower or lowpower usercodes themselves or between both subsets is a particular example that illustrates GISR well. The fact that joint ISR among the highpower users and joint ISR among the codes of a particular lowpower user may each implement a different mode is another example that illustrates HISR well. In the more general case, ISR can implement a composite mode that reduces to a different mode with respect to each user. For instance, within the group of NI interferers, each usercode assigned the index (i,l) can form its own multicode constraint and blocking matrices Ĉ
_{MC,n} ^{l }and Ĉ
_{MC,n} ^{i,l }along a userspecific mode (Π
_{n }should be set to identity in Table 4). The constraint and blocking matrices then can be reconstructed for joint ISR processing by aligning the individual constraint and blocking matrices rowwise into larger matrices as follows:
$\begin{array}{cc}{\hat{C}}_{n}^{l}=\left[{\hat{C}}_{\mathrm{MC},n}^{1},\dots \ue89e\text{\hspace{1em}},{\hat{C}}_{\mathrm{MC},n}^{\mathrm{NI}}\right],& \left(104\right)\\ {\hat{C}}_{n}^{i,l}=\left[{C}_{\mathrm{MC},n}^{1},\dots \ue89e\text{\hspace{1em}},{\hat{C}}_{\mathrm{MC},n}^{i1},{\hat{C}}_{\mathrm{MC},n}^{i,l},{\hat{C}}_{\mathrm{MC},n}^{i1},\dots \ue89e\text{\hspace{1em}},{\hat{C}}_{\mathrm{MC},n}^{\mathrm{NI}}\right].& \left(105\right)\end{array}$

[0397]
This example illustrates the potential flexibility of ISR in designing an optimal interference suppression strategy that would allocate the null constraints among users in the most efficient way to achieve the best performance/complexity tradeoff. It should be noted that, in the particular case where the TR mode is implemented, the matrices in Equations (104) and (105) are in fact vectors which sum the individual multicode constraint vectors Ĉ_{MC,n} ^{i }and Ĉ_{MC,n} ^{i,l}, respectively.

[0398]
After deriving the beamformer coefficients, each MC user assigned the index u estimates its N
_{m }streams of data for l=1, . . . , N
_{m }as follows (see FIG. 34):
$\begin{array}{cc}{\hat{s}}_{n}^{u,l}=\mathrm{Real}\ue89e\left\{{\underset{\_}{W}}_{n}^{u,{l}^{\u2033}}\ue89e{\underset{\_}{Y}}_{n}\right\},& \left(106\right)\\ {\hat{b}}_{n}^{u,l}=\mathrm{Sign}\ue89e\left\{{\hat{s}}_{n}^{u,l}\right\},& \left(107\right)\end{array}$

[0399]
and exploits the fact that it N
_{m }access channels share the same power, and hence smooths the instantaneous signal power of each data stream over all its codes as follows:
$\begin{array}{cc}{\left({\hat{\psi}}_{n}^{u}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\psi}}_{n1}^{u}\right)}^{2}+\alpha \ue89e\text{\hspace{1em}}\ue89e\frac{\sum _{i=1}^{{N}_{m}}\ue89e{\uf603{\hat{s}}_{n}^{u,l}\uf604}^{2}}{{N}_{m}}.& \left(108\right)\end{array}$

[0400]
It should be noted that the multicode datastreams can be estimated using MRC, simply by setting the constraint matrices to null matrices. This option will be referred to as MCMRC.

[0401]
After despreading of the postcorrelation observation vector Y _{n }by the N_{m }spreading codes of a user assigned the index u, the following postcorrelation observation vectors for l=1, . . . , N_{m }are obtained as follows:

Z _{n} ^{u,l} =H _{n} ^{u}ψ_{n} ^{u} b _{n} ^{u,l} +N _{PCM,n} ^{u,l} =H _{n} ^{u} s _{n} ^{u,l} +N _{PCM,n} ^{u,l}. (109)

[0402]
The fact that all usercodes propagate through the same channel is exploited in the following cooperative channel identification scheme (see FIG. 34):
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{u}={\hat{\underset{\_}{H}}}_{n}^{u}+\frac{\mu}{{N}_{m}}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\left({\underset{\_}{Z}}_{n}^{u,l}{\hat{\underset{\_}{H}}}_{n}^{u}\ue89e{\hat{s}}_{n}^{u,l}\right)\ue89e{\hat{s}}_{n}^{u,l},& \left(110\right)\end{array}$

[0403]
which implements a modified DFI scheme, referred to as multicode cooperative DFI (MCCDFI). MCCDFI amounts to having the usercodes cooperate in channel identification by estimating their propagation vectors separately, then averaging them over all codes to provide a better channel vector estimate. It should be noted that implicit incorporation of the ΠDFI version in the above MCCDFI scheme further enhances channel identification.

[0404]
Since the STAR exploits a data channel as a pilot, it can take advantage of a maximum of N_{m }expensive despreading operations. To limit their number in practice, MCCDFI can be restricted to a smaller subset of 1 to N_{m }usercodes. A compromise can be found between channel estimation enhancement and complexity increase.

[0405]
Another solution that reduces the number of despreading operations reconstructs the following datamodulated cumulativecode after ISR combining and symbol estimation in Equations (106) and (107):
$\begin{array}{cc}{c}_{k}^{u,\delta}=\frac{1}{{N}_{m}}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e{\hat{b}}_{n}^{u,l}\ue89e{c}_{k}^{u,l}.& \left(111\right)\end{array}$

[0406]
A single despreading operation with this code yields:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{Z}}_{n}^{u,\delta}=\text{\hspace{1em}}\ue89e{\psi}_{n}^{u}\ue89e{\underset{\_}{H}}_{n}^{u}\left(\frac{\sum _{i=1}^{{N}_{m}}\ue89e{\hat{b}}_{n}^{u,l}\ue89e{b}_{n}^{u,l}}{{N}_{m}}\right)+\left(\frac{\sum _{i=1}^{{N}_{m}}\ue89e{\hat{b}}_{n}^{u,l}\ue89e{b}_{n}^{u,l}}{{N}_{m}}\right)\\ \simeq \text{\hspace{1em}}\ue89e{\psi}_{n}^{u}\ue89e{\underset{\_}{H}}_{n}^{u}+{\underset{\_}{N}}_{\mathrm{PCM},n}^{u,\delta}.\end{array}& \left(112\right)\end{array}$

[0407]
It has the advantage of further reducing the noise level by N
_{m }after despreading, while keeping the signal power practically at the same level
^{8}. The datamodulated cumulativecode can be used to implement channel identification as follows:
$\begin{array}{cc}a=\mathrm{sign}\ue89e\left\{\mathrm{Re}\ue89e\left\{{\hat{\underset{\_}{H}}}_{n}^{{u}^{H}}\ue89e{\underset{\_}{Z}}_{n}^{u,\delta}\right\}\right\},\text{}\ue89e{\underset{\_}{\stackrel{~}{H}}}_{n1}^{u}={\underset{\_}{\hat{H}}}_{n}^{u}+\mu \ue8a0\left({\underset{\_}{Z}}_{n}^{u,\delta}{\underset{\_}{\hat{H}}}_{n}^{u}\ue89ea\ue89e\text{\hspace{1em}}\ue89e{\hat{\psi}}_{n}^{u}\right)\ue89ea\ue89e\text{\hspace{1em}}\ue89e{\hat{\psi}}_{n}^{u}.& \left(113\right)\end{array}$

[0408]
This CDFI version is referred to as δCDFI (see FIG. 35).

[0409]
Whereas multicode operation involves user stations transmitting using multiple spreading codes, but usually at the same data rate, it is also envisaged that different users within the same system may transmit at different data rates. It can be demonstrated that the receiver modules shown in FIGS. 34 and 35 need only minor modifications in order to handle multirate transmissions since, as will now be explained, multicode and multirate are essentially interchangeable.

[0410]
MultiCode Approach to MultiRate ISR

[0411]
Reconsidering now the conventional MRCDMA, in this context, STARISR operations previously were implemented at the rate 1/T where T is the symbol duration. As described earlier, with reference to FIG. 32, the “X option” extensions, enables reduction of noise enhancement by increasing the dimension of the observation space and provides larger margin for timedelay tracking in asynchronous transmissions. A complementary approach that decomposes the observation frame into blocks rather than extends it using past reconstructed data will now be described.

[0412]
This blockprocessing version of STARISR will still operate at the rate 1/T on data frames barely larger than the processing period T. However, it will decompose each data stream within that frame into data blocks of duration T_{r }where T_{r }is a powerof2 fraction of T. The resolution rate 1/T, can be selected in the interval [1/T, 1/T_{c}]. Hence, a receiver module that processes data frames at a processing rate 1/T with a resolution rate 1/T_{r }can only extract or suppress data transmissions at rates slower than or equal to 1/T_{r}. Also, the channel parameters of the processed transmissions must be almost constant in the interval T, the processing period. This period should be chosen to be much larger than the delay spread Δτ for asynchronous transmissions, but short enough not to exceed the coherence time of the channel.

[0413]
In one processing period, STARISR can simultaneously extract or suppress a maximum N
_{m}=T/T
_{r }blocks (N
_{m }is a power of 2). In the nth processing period of duration T, a stream of data b
^{u}(i) yields N
_{m }samples b
_{n} ^{u,l}, . . . , b
_{n} ^{u,N} ^{ m }sampled at the resolution rate. Over this processing period, therefore, the spread data can be developed as follows:
$\begin{array}{cc}{c}^{u}\ue8a0\left(t\right)\ue89e{b}^{u}\ue8a0\left(t\right)=\sum _{l=1}^{{N}_{m}}\ue89e{b}_{n}^{u,l}\ue89e{\bigsqcup}_{{T}_{f}}^{l}\ue89e\left(t\mathrm{nT}\right)\ue89e{c}^{u}\ue8a0\left(t\right),& \left(114\right)\end{array}$

[0414]
where ␣
_{T} _{ r } ^{l}(t) is the indicator function of the interval [(l−1)T
_{r}, lT
_{r}). This equation can be rewritten as follows:
$\begin{array}{cc}{c}^{u}\ue8a0\left(t\right)\ue89e{b}^{u}\ue8a0\left(t\right)=\sum _{l=1}^{{N}_{m}}\ue89e{b}^{n,t}\ue8a0\left(t\right)\ue89e{c}^{u,l}\ue8a0\left(t\right),& \left(115\right)\end{array}$

[0415]
where b^{u,l}(t), . . . , b^{u,N} ^{ m }(t) represent N_{m }datastreams at rate 1/T spread by N_{m }virtual orthogonal codes c^{u,l}(t), . . . , c^{u,N} ^{ m }(t) (see FIG. 36).

[0416]
With the above virtual decomposition, one arrives at a MCCDMA model where each of the processed users can be seen as a mobile that codemultiplexes N_{m }datastreams over N_{m }access channels. This model establishes an equivalence between MCCDMA and MRCDMA and provides a unifying framework for processing both interfaces simultaneously. In this unifying context, codes can be continuous or bursty. Use of bursty codes establishes another link with hybrid timemultiplexing CDMA (TCDMA); CDMA); only the codes there are of an elementary duration T_{r }that inserts either symbols or fractions of symbols. A larger framework that incorporates MRCDMA, MCCDMA, and hybrid TCDMA can be envisaged to support HDR transmissions for third generation wireless systems.

[0417]
Exploiting this MC approach to MRCDMA, the data model of MRCDMA will be developed to reflect a MCCDMA structure, then a blockprocessing version of STARISR derived that implements estimation of a symbol fraction or sequence.

[0418]
The multicode model of Equation (97) applies immediately to MRCDMA. However, due to the fact that codes are bursty with duration T
_{r}<T, the selfISI vectors
Ŷ _{−1,n} ^{u,l }and
Ŷ _{+1,n} ^{u,l }and the spread propagation vector
Ŷ _{0,n} ^{u,l }of a given usercode do not overlap with each other. If {overscore (Δτ)} denotes an arbitrarily enlarged delayspread (reference [
20]) to leave an increased uncertainty margin for the tracking of timevarying multipathdelays (i.e., Δτ<{overscore (Δτ)}<T), and if
N _{r} =┌{overscore (Δτ)}/T _{r}┐ denotes the maximum delayspread in T
_{r }units, then only the last N
_{r }symbols b
_{n−1} ^{u,N} ^{ m } ^{−N} ^{ r } ^{+1}, . . . , b
_{n−1} ^{u,N} ^{ m }among the pastsymbols in the previous frame may contribute to selfISI in the current processed frame (see FIG. 37):
$\begin{array}{cc}\begin{array}{c}{Y}_{n}=\text{\hspace{1em}}\ue89e\sum _{u=1}^{U}\ue89e\{\sum _{t={N}_{m}{N}_{p}+1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n1}^{u,l}\ue89e{Y}_{1,n}^{u,l}+\\ \text{\hspace{1em}}\ue89e\sum _{i=1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n}^{u,l}\ue89e{Y}_{0,n}^{u,l}+\sum _{l=1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n1}^{u,l}\ue89e{Y}_{+1,n}^{u,l}\}+{N}_{n}^{\mathrm{pth}},\end{array}& \left(116\right)\end{array}$

[0419]
In this frame of duration 2T−T_{c}, the desired signals contribution from the N_{m }current symbols is contained in the first interval of duration T+{overscore (Δτ)}, whereas the remaining interval of the frame contains nonoverlapping interference from the last N_{m}−N_{r }future symbols in the next frame, namely b_{n+1} ^{u,N} ^{ r } ^{+1}, . . . , b_{n+1} ^{n,N} ^{ m }(see FIG. 37). The remaining part of the frame can be skipped without any signal contribution loss from the current bits. Hence, the duration of the processed frame can be reduced to T+{overscore (Δτ)}−T_{c }as follows:

Y _{n} =[Y _{n,0} , Y _{n,1} , . . . , Y _{n,L+L} _{ i } _{−2}], (117)

[0420]
where L
_{Δ}=┌{overscore (Δτ)}/T
_{c}┐ is the maximum length of the enlarged delayspread in chip samples. With the data blocksize reduced to M×(L+L
_{Δ}−1), the matchedfiltering observation matrix reduces to:
$\begin{array}{cc}\begin{array}{c}{Y}_{n}=\text{\hspace{1em}}\ue89e\sum _{u=1}^{U}\ue89e\{\sum _{t={N}_{m}{N}_{p}+1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n1}^{u,l}\ue89e{Y}_{1,n}^{u,l}+\\ \text{\hspace{1em}}\ue89e\sum _{i=1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n}^{u,l}\ue89e{Y}_{0,n}^{u,l}+\sum _{l=1}^{{N}_{m}}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n1}^{u,l}\ue89e{Y}_{+1,n}^{u,l}\}+{N}_{n}^{\mathrm{pth}},\end{array}& \left(118\right)\end{array}$

[0421]
where N
_{n} ^{pth }is the noise matrix reduced to the same dimension. This data model equation can be rewritten in the following compact vector form:
$\begin{array}{cc}{\underset{\_}{Y}}_{n}=\sum _{u=1}^{U}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{+1}\ue89e{\psi}_{n}^{u}\ue89e{b}_{n+k}^{u,l}\ue89e{\underset{\_}{Y}}_{k,n}^{u,l}\ue89e{\lambda}_{k}^{I}+{\underset{\_}{N}}_{n}^{\mathrm{pth}},& \left(119\right)\end{array}$

[0422]
where λ_{k} ^{i}=0 if k=−1 and l∈{1, . . . , N_{r}} or if k=+1 and l∈{N_{m}−N_{r}+1, . . . , N_{m}}, and 1 otherwise.

[0423]
The constraint matrices can be formed in an MC approach to implement joint or userspecific ISR processing in any of the modes described in Tables 3 or 4, respectively. In contrast to the conventional MCCDMA, the factor λ_{k} ^{i }discards all nonoverlapping interference vectors in the processed frame and somehow unbalances ISI contribution among the virtual multicode streams. In the DF modes, only the central streams of each user (i.e., l=N _{r}+1, . . . , N _{m} −N _{r}) sum symbol contributions from the previous, current and future symbols; whereas the remaining streams sum signal contributions from either the current and the previous or the current and the future symbols. Indeed, the 2(N_{m}−N_{r}) ISI terms discarded from summation contribute with null vectors to the processed frame. In the ISRH mode, the columns previously allocated to individually suppress these vectors are eliminated from the constraint matrices, thereby reducing the number of its columns to N _{H} =N _{m}+2N _{r }constraints per user^{9 }(see Tables 3 and 4). ISRH hence approaches ISRR in computational complexity when N_{r }is small compared to N_{m}.

[0424]
After derivation of the beamformer coefficients of each virtual usercode assigned the coupleindex (u,l), its signal component s_{n} ^{u,l }is estimated using Equation (106). In this process, each ISR combiner rejects the processed interferers regardless of their exact data rates, which only need to be higher than the resolution rate. This feature finds its best use when implementing ISR at the mobile station on the downlink where data rates of suppressed interferers are not necessarily known to the desired mobilestation. For instance, orthogonal variable spreading factor (OVSF) allocation of Walsh spreading codes is no longer necessary. On the uplink, each transmission rate is known to the base station. However, one can still gain from this feature by allowing joint and well integrated processing of mixed data traffic at a common resolution rate.

[0425]
Indeed, the estimation of the signal components provides sequences oversampled to the resolution rate 1/T
_{r}. Hence, after a given data stream is decomposed at this common rate, its signal component estimate must be restored to its original rate in an “analysis/synthesis” scheme. To do so, the data rate 1/T
_{u}≦1/T
_{r }of user u is defined and it is assumed temporarily that it is faster than the processing rate (i.e., 1/T
_{u}≧1/T). Hence, one can extract from each frame F
_{u}=T/T
_{u}≦N
_{m }signal component estimates out of N
_{m }by averaging the oversampled sequence s
_{n} ^{u,l }over consecutive blocks of size B
_{u}=N
_{m}/F
_{u}=T
_{u}/T
_{r }for n′=0, . . . , F
_{u}−1 as follows:
$\begin{array}{cc}{\hat{s}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}+{n}^{\prime}}=\frac{\sum _{l={n}^{\prime}\ue89e{B}_{u}1}^{\left({n}^{\prime}+1\right)\ue89e{B}_{u}}\ue89e{\hat{S}}_{n}^{u,I}}{{B}_{u}},& \left(120\right)\\ {\hat{b}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}+{n}^{\prime}}^{u}=\mathrm{Sign}\ue89e\text{\hspace{1em}}\ue89e\left\{{\hat{s}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}{n}^{\prime}}^{u}\right\},& \left(121\right)\\ {\left({\hat{\psi}}_{n}^{u}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\psi}}_{n1}^{u}\right)}^{2}+\alpha \ue89e\text{\hspace{1em}}\ue89e\frac{\sum _{{n}^{\prime}=0}^{{F}_{u}1}\ue89e{\uf603{\hat{s}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}+{n}^{\prime}}^{u}\uf604}^{2}}{{F}_{u}}.& \left(122\right)\end{array}$

[0426]
In the particular case where the data rate is equal to the processing rate (i.e., 1/T
_{u}=1/T), the equations above have simpler expressions with F
_{u}=1 and B
_{u}=N
_{m}:
$\begin{array}{cc}{\hat{s}}_{n}^{u}=\frac{\sum _{l=1}^{{N}_{m}}\ue89e{\hat{s}}_{n}^{u,l}}{{N}_{m}},& \left(123\right)\\ {\hat{b}}_{n}^{u}=\mathrm{Sign}\ue89e\left\{{\hat{s}}_{n}^{u}\right\},& \left(124\right)\\ {\left({\hat{\psi}}_{n}^{u}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\psi}}_{n1}^{u}\right)}^{2}+\alpha \ue89e{\uf603{\hat{s}}_{n}^{u}\uf604}^{2}.& \left(125\right)\end{array}$

[0427]
If the data rate is slower than the processing rate, the signal component estimate ŝ
_{n} ^{u }of Equation (123) is further averaged over consecutive blocks of size F′
_{u}=T
_{u}/T to yield the following subsampled sequence:
$\begin{array}{cc}{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}=\frac{\sum _{{n}^{\prime}=0}^{{P}_{u}1}\ue89e{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor \ue89e\text{\hspace{1em}}\ue89e{F}_{n}^{\prime}{n}^{\prime}}^{u}}{{F}_{u}^{\prime}}.& \left(126\right)\end{array}$

[0428]
Symbol and power estimations in Equations (124) and (125) are on the other hand modified as follows:
$\begin{array}{cc}{\hat{b}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}=\mathrm{Sign}\ue89e\left\{{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}\right\},& \left(127\right)\\ {\left({\hat{\psi}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\varphi}}_{\lfloor n/{F}_{n}^{\prime}\rfloor 1}^{u}\right)}^{2}+\alpha \ue89e{\uf603{\hat{s}}_{\lfloor n/{F}_{n}^{\prime}\rfloor}^{u}\uf604}^{2}.& \left(128\right)\end{array}$

[0429]
It should be noted that a higher value is needed for the smoothing factor α to adapt to a slower update rate of power estimation. If the channel power variations are faster than the data rate, then it is preferable to keep the power estimation update at the processing rate in Equation (125). In this case, Equation (126) is modified as follows
^{10}:
$\begin{array}{cc}{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}=\frac{\sum _{{n}^{\prime}=0}^{{F}_{u}^{\prime}1}\ue89e{\hat{\psi}}_{\lfloor n/{F}_{u}\rfloor \ue89e{F}_{u}^{\prime}+{n}^{\prime}}^{u}\ue89e{\hat{s}}_{\lfloor n/{F}_{n}\rfloor \ue89e{F}_{u}^{\prime}+{n}^{\prime}}^{u}}{\sum _{{n}^{\prime}=0}^{{F}_{u}^{\prime}1}\ue89e{\left({\hat{\psi}}_{\lfloor n/{F}_{u}^{\prime}\rfloor \ue89e{F}_{u}^{\prime}+{n}^{\prime}}^{u}\right)}^{2}},& \left(129\right)\end{array}$

[0430]
to take into account channel power variations within each symbol duration.

[0431]
It should be noted that the multirate datastreams can be estimated using MRC, simply by setting the constraint matrices to null matrices. This option may be referred to as MRMRC.

[0432]
It should be also noted that combination of Equations (106) and (120), along with Equation (128) for data rates slower than the processing rate, successively implements the processing gain of each user in fractioned ISR combining steps.

[0433]
In general, regrouping the symbolfractions back to their original rate can be exploited in the design of the constraint matrices; first by reducing reconstruction errors from enhanced decision feedback; and secondly by reducing the number of constraints of a given user u from N
_{m }to F
_{u }in the modes implementing decomposition over usercodes (i.e., R, D, and H). For these modes, the common factor N
_{m}NI appearing in the total number of constraints N
_{c }reduces to
$\sum _{i=1}^{\mathrm{NI}}\ue89e{F}_{i},$

[0434]
by regrouping the constraint vectors over the usercode indices that restore a complete symbol within the limit of the processing period^{11}.

[0435]
Regrouping the constraints of user u to match its original transmission rate amounts to regrouping the codes of this user into a smaller subset that corresponds to a subdivision of its complete code over durations covering its symbol periods instead of the resolution periods. In fact, user u can be characterized by F_{u }concatenated multicodes instead of N_{m}. Overall, MRCDMA can be modeled as a mixed MCCDMA system where each user assigned the index u has its own number F_{u }of multicodes (see FIG. 38). Therefore, the ISRcombining and channelidentification steps can be carried out in one step along the MC formulation of the previous section, using usercodes simply renumbered from 1 to F_{u }for simplicity. Hence, as shown in FIG. 39, the only change needed to the receiver module of FIG. 34 is to the bank of despreaders. In the receiver module shown in FIG. 34, the spreading codes used by the despreaders 19 ^{d,l}, . . . , 19 ^{d,F} ^{ i }comprise segments of the spreading code of user d, i.e., the segments together form the part of the code used in a particular frame. The number of code segments F_{u }corresponds to the number of symbols b_{n} ^{u,l}, . . . , b_{n} ^{u,Fu }transmitted in the frame. The estimates of these symbols, and the signal component estimates ŝ_{n} ^{u,l}, . . . , ŝ_{n} ^{u,F} ^{ u }map with those of Equations (120), (121), (123) and (124) within a parallel/serial transform.

[0436]
This illustrates again the flexibility afforded by using ISR in designing optimal interference suppression strategies that suit well with MRCDMA. It enables simultaneous processing of blocks of symbols or fractions of symbols in an integrated manner at two common resolution and processing rates.

[0437]
To carry out channel identification operations, the M×L
_{Δ} reducedsize postcorrelation observation matrix of usercode (u,l) is defined as follows:
$\begin{array}{cc}{Z}_{n}^{u,l}=\left[{Z}_{n,0}^{u,l},{Z}_{n,1}^{n,l},\dots \ue89e\text{\hspace{1em}},{Z}_{n,{L}_{a}1}^{u,l}\right],& \left(130\right)\end{array}$

[0438]
where the columns of this matrix are given for j=0, . . . , L
_{Δ}−1 by:
$\begin{array}{cc}{Z}_{n,j}^{u,I}=\frac{1}{{L}_{r}}\ue89e\sum _{{j}^{\prime}=0}^{L1}\ue89e{Y}_{n,j+{j}^{\prime}}\ue89e{C}_{{j}^{\prime}}^{u,l}=\frac{1}{{L}_{r}}\ue89e\sum _{{j}^{\prime \ue89e\text{\hspace{1em}}}=\left(i1\right)={L}_{r}}^{l={L}_{r}}\ue89e{Y}_{n,j+{j}^{\prime}}\ue89e{c}_{{j}^{\prime}}^{u}.& \left(131\right)\end{array}$

[0439]
This correlation with the virtual usercode (u,l) amounts to partial despreading by a reduced processing gain L_{r}=T_{r}/T_{c}=L/N_{m}, using the lth block of length L_{r }of the user's code c_{j′} ^{u}. It should be noted that, in contrast to conventional MCCDMA, the above partial despreading operations are less expensive in terms of complexity per usercode.

[0440]
The reducedsize postcorrelation observation vector Z _{n} ^{u,l }resulting from vectorreshaping of Z_{n} ^{u,l}. has the same model expression of Equations (109), except that vectors there all have reduced dimension (ML_{Δ})×1. It should be noted that the postcorrelation window length L_{Δ} was fixed long enough to contain the delayspread with an enlarged margin for asynchronous timedelay estimation from the reducedsize propagation vector H _{n} ^{u }(reference [20]). Identification with postcorrelation windows shorter than L, investigated in [6], reduces complexity and proves to work nearly as well as the original fullwindow version of STAR (i.e. L_{Δ}=L).

[0441]
Channel identification with the MCCDFI scheme of Equation (110) can be readily implemented using the usercode postcorrelation observation vectors
Z _{n} ^{u,l}. However, this procedure would feed back symbol fractions without taking full advantage of the complete processing gain. Instead, the vectors
Z _{n} ^{u,l }are regrouped and averaged in the same way the signal component estimates are restored to their original rate in Equations (120), (123) or (126), and
Z _{n,F} _{ i } _{+n′} ^{u},
Z _{n} ^{u }or
Z _{└n/F′} _{ i } _{┘} ^{u}, respectively
^{12 }are obtained. Hence, the CDFI channel identification procedure, renamed MRCDFI, is implemented as follows:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{n}={\stackrel{~}{\underset{\_}{H}}}_{n}^{u}+\frac{\mu}{{F}_{\mu}}\ue89e\sum _{{n}^{\prime}=0}^{{F}_{u}1}\ue89e\left({\underset{\_}{Z}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}+{n}^{\prime}}^{u}{\hat{\underset{\_}{H}}}_{n}^{u}\ue89e{\hat{S}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}{n}^{\prime}}^{u}\right)\ue89e{\hat{S}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{u}+{n}^{\prime \ue89e\text{\hspace{1em}}\ue89es}}^{u}& \left(132\right)\end{array}$

[0442]
when the datarate is faster than the processing rate
^{13}, or by:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{u}={\hat{\underset{\_}{H}}}_{n}^{u}+\mu \ue8a0\left({\underset{\_}{Z}}_{n}^{u}{\hat{\underset{\_}{H}}}_{n}^{u}\ue89e{\hat{S}}_{n}^{u}\right)\ue89e{\hat{S}}_{n}^{u},& \left(133\right)\end{array}$

[0443]
in the particular case where the data rate is equal to the processing rate, or by:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}={\hat{\underset{\_}{H}}}_{\lfloor n/{F}_{u}\rfloor}^{u}+\mu \ue8a0\left({\underset{\_}{Z}}_{\lfloor n/{F}_{s}\rfloor}^{u}{\hat{\underset{\_}{H}}}_{\lfloor n/{F}_{u}\rfloor}^{u}\ue89e{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{u}\right)\ue89e{\hat{s}}_{\lfloor n/{F}_{u}^{\prime}\rfloor}^{N},& \left(134\right)\end{array}$

[0444]
when the datarate is slower than the processing rate. It should be noted that channel identification at data rates faster than the processing gain in Equation (132) has a structure similar to MCCDFI. Averaging over F_{u }despread observations there can be reduced to a smaller subset to gain in complexity like in MCCDMA. Use of the δCDFI version described in Equations (111) to (113) instead of, or combination with, the above scheme are other alternatives that reduce the amount of complexity due to despreading operations.

[0445]
By regrouping codes to match the original data transmission rates as discussed earlier (see FIG. 38), channel identification can be easily reformulated along a mixed MCCDMA model where each user is characterized by F_{u }multicodes and F_{u }despread vectors Z _{n} ^{u,1}, . . . , Z _{n} ^{u,F} ^{ u }, as shown in FIG. 39.

[0446]
To reduce further the number of expensive despreading operations, slower channel identification (reference [20]) can update channel coefficients less frequently if the channel can still show very weak variations over larger update periods. However, high mobility can prevent the implementation of this scheme and faster channel identification update may even be required. For data rates faster than the processing rate, updating at a rate higher than the processing rate is not necessary. The processing period T is chosen to guarantee that the channel parameters are constant over that time interval. For data rates slower than the processing rate, the channel update rate could be increased above the data rate up to the processing rate using Equation (133) and partial despreading to provide Z _{n} ^{u}. In Equation (133), ŝ_{└n/F} _{ u } _{′┘} ^{u }from Equation (126) should be fed back instead of ŝ_{n} ^{u }to benefit from the entire processing gain in the decision feedback process.

[0447]
Although the foregoing embodiments of the invention have been described as receiver modules for a base station, i.e., implementing ISR for the uplink, the invention is equally applicable to the downlink, i.e., to receiver modules of user stations.

[0448]
Downlink ISR

[0449]
[0449]FIG. 48 illustrates how the downlink can be modelled like an uplink, so that the ISR techniques developed for the uplink can be employed. FIG. 48 shows a single (desired user) mobile 10 ^{d }which will be one of many, receiving signals from all base stations within range. Only the serving base station 11 ^{ν }and three main interfering base stations 11 ^{1}, . . . , 11 ^{u′}, . . . 11 ^{NI }are shown. The mobile station may communicate with two or three base stations at a given time, so two of the interferers could be such other stations. The bold arrow illustrates that only one signal, the desired user signal d from server base station 11 ^{u }is the signal which is to be received. The serving base station 11 ^{u }will also transmit to other mobiles and those signals will also be received by mobile 10 ^{d }as interfering signals. Also, each of the other three base stations will be transmitting. Even though one of the signals from each of the other base stations are intended for the mobile d, they constitute interference so far as the reception of signal 10 ^{d }from serving base station 11 ^{u }is concerned, Basically, signals #1 to #NI of BS 11 ^{u }(excepting d) are incell interferers and the interfering signals from the other base stations are outcell interferers.

[0450]
The base stations range from #1 to #NB. BS 11 ^{u }is a generic one of them. BS 11 ^{u }is a specific one of the NB stations is the serving base station.

[0451]
There will be other signals from other base stations, some of which are shown in broken lines, and other signals also shown in broken lines, from the base stations shown in full, since FIG. 48 shows only the strongest signals transmitted by each base station. I.e., there will be more than NI mobile stations in cell ν but their transmissions weaker. Those mobiles close to the base station will require weak transmissions whereas those far from the base station will require more power, and the base station power control will increase transmit power to achieve it. Also, the data rates could vary and hence affect power levels. Consequently, many signals are not represented in FIG. 48. They are ignored because they are relatively weak. Of course, they will be part of the noise signal represented in FIG. 2.

[0452]
Each base station may be transmitting multiple codes, so its signal will have a multicode structure. Because these signals are being transmitted via the same antenna, they are similar to a multicode signal. Hence, mobile station 10 ^{d }receives from base station 11 ^{u }the signals #1 . . . d . . . NI via channel ν, so those signals appear to be a multicode signal. The same applies to signals received from other base stations for processing.

[0453]
The “zoom” inset shows the signal transmitted to a mobile station i by its serving base station ν′ but received as interference by mobile 10 ^{d}. It could be a multirate and/or multicode signal, since it is a summation of different signals using different codes and possibly different rates as described with reference to FIGS. 4042, for example, though their despreaders handle all interferers whereas here we select only one. The composite signal comprises components transmitted from base station ν′ to user i using codes ranging from 1 to F_{i}, i.e., from first component #(ν′, i, 1) to a final component (ν′, i, F_{i}). Hence the multicode structure model developed for the uplink applies to the downlink as well at the mobile receiver.

[0454]
To implement ISR rejection, the user/mobile station needs to identify the group of users (i.e., interferers) to suppress. Assuming temporarily that suppression is restricted to incell users, served by basestation ν, and that the number of suppressed interferers is limited to NI to reduce the number of receivers needed at the desired basestation to detect each of the suppressed users, in order to identify the best users to suppress, the user station can probe the access channels of basestation ν, seeking the NI strongest transmissions. Another scheme would require that the strongest incell interfering mobiles cooperate by accessing the first NI channels (i.e. u=i∈{1, . . . , NI}) of basestation ν.

[0455]
Once the NI suppression channels have been identified, the desired userstation can operate as a “virtual basestation” receiving from NI “mobiles”, i.e., base station transmitter modules, on a “virtual uplink”. If the desired user is not among the NI interferers, an additional user station is considered. Similar NI channels may be identified for transmissions from the neighbouring basestations. Accordingly, consideration will be given to the NB basestations, assigned the index ν′∈{1, . . . , NB}, which include the desired basestation with index ν′=ν without loss of generality. This formulation allows the userstation to apply blockprocessing STARISR with specific adaptations of ISR combining and channel identification to the downlink.

[0456]
In essence, each “virtual base station” user station would be equipped with a set of receiver modules similar to the receiver modules 20 ^{1}, . . . , 20 ^{U}, one for extracting a symbol estimate using the spreading code of that user station and the others using spreading codes of other users to process actual or hypothesized symbol estimates for the signals of those other users. The receiver would have the usual constraintsset generator and constraint matrix generator and cancel ISR in the manner previously described according to the mode concerned.

[0457]
It should be appreciated, however, that the signals for other users emanating from a base station are similar to multicode or multirate signals. Consequently, it would be preferable for at least some of the user station receiver modules to implement the multicode or multirate embodiments of the invention with reference to FIGS. 34 and 39. Unlike the base station receiver, the user stations receiver modules usually would not know the data rates of the other users in the system. In some cases, it would be feasible to estimate the data rate from the received signal. Where that was not feasible or desired, however, the multirate or multicode receiver modules described with reference to FIGS. 34 and 39 could need to be modified to dispense with the need to know the data rate.

[0458]
Referring to FIG. 40, the user station receiver comprises a plurality of receiver modules similar to those of FIG. 39, one for each of the NB base stations whose NI strongest users' signals are to be cancelled, though only one of them, receiver module
20 ^{ν′} for base station ν′, is shown in FIG. 40. Recognizing that one or more of those NI signals could be multirate or multicode, and hence involve not only different spreading codes but also different code segmentations, the number of despreaders equals
$\sum _{i=1}^{i=\mathrm{NI}}\ue89e{F}_{i},$

[0459]
i.e. 19 ^{ν′,1,1}, . . . , 19 ^{ν′,1,F} ^{ i }, . . . , 19 ^{ν′,i,1}, . . . , 19 ^{ν′,i,F} ^{ n }, . . . , 19 ^{ν′,NI,1}, . . . , 19 ^{ν′,NI,F} ^{ NI }. In any given base station, the NI users are powercontrolled independently and so are received by the mobile/user station with different powers. Consequently, it is necessary to take into account their power separately, so the power estimates from power estimation means 30T^{ν′} are supplied to the channel identification unit 28T^{ν′}. The channel identification unit 28T^{ν′} processes the data in the same way as previously described, spreading the resulting channel vector estimate H _{0,n} ^{ν′} to form the spread channel vector estimates Ŷ _{0,n} ^{ν′,1,1}, . . . , Ŷ _{0,n} ^{ν′,NI,F} ^{ NI }and supplying them to the ISR beamformers 47T^{ν′,1,1}, . . . , 47T^{ν′,NI,F} ^{ NI }, respectively, for use in processing the observation vector Y_{n}.

[0460]
The resulting signal component estimates ŝ
_{n} ^{ν′,1,1}, . . . , ŝ
_{n} ^{ν′,NI,F} ^{ NI }are similarly fed back to the channel identification unit
28T
^{ν′} to update the channel vector estimates and to the decision rule units
30T
^{ν′,1,1}, . . . ,
30T
^{ν′,NI,F} ^{ NI }for production of the corresponding symbol estimates {circumflex over (b)}
_{n} ^{ν′,1,1}, . . . , {circumflex over (b)}
_{n} ^{ν′,NI,F} ^{ NI }. In all modes except ISRH, these symbol estimates are supplied to the constraintsset generator (not shown in FIG. 40), together with the set of channel vector estimates
_{n} ^{ν′}, from channel identification unit
28T
^{ν′} for use by the constraint matrix generator (not shown) in forming the set of constraints
_{n}. The set of channel parameter estimates includes the power estimates from the power estimation units. It should be noted that the constraintsset generator and constraint matrix generator may be described hereinbefore, the actual configuration and operation being determined by the particular ISR mode selected.

[0461]
If the desired user, i.e. of the user station receiver 20 ^{ν}, is among the NI users, its symbols will be extracted and output to the subsequent parts of the receiver in the usual way. If, however, the desired user is not among the NI strong users of the serving base station ν, the user station receiver will include not only one of the receiver modules of FIG. 40 for each base station but also a separate receiver module specifically for extracting the signal for the desired user and which could be similar to that shown in FIG. 39.

[0462]
Bearing in mind, however, that the channel vector estimate derived by the receiver module for the serving base station's strong users in FIG. 40 will be for the same channel, but more accurate than the estimate produced by the channel identification unit of FIG. 39, it would be preferable to omit the channel identification unit (29 ^{F} ^{ i }) and despreaders 19 ^{d,1}, . . . , 19 ^{d,F} ^{ n }(FIG. 39), and supply the spread channel vector estimates from the channel identification unit of the receiver module for serving base station ν. As shown in FIG. 41, in such a modified receiver module 20T^{d}, the beamformer means comprises a bank of ISR beamformers (47T^{ν,d,1}, . . . , 47T^{ν,d,F} ^{ d }), a bank of decision rule means (29T^{ν,d,1}, . . . , 29T^{ν,d,F} ^{ d }), and power estimation means 30T^{ν,d }which process elements of the observation vector Y _{n }from vector reshaper 44 in a similar manner to the receiver module of FIG. 39. The bank of beamformers (47T^{ν,d,1}, . . . , 47T^{ν,d,F} ^{ d }), are tuned, however, by a set of channel vector estimates (Ŷ _{0,n} ^{ν,d,1}, . . . , Ŷ _{0,n} ^{ν,d,F} ^{ d }), produced by the channel estimation means (28T^{ν}) (FIG. 40) corresponding to serving base station ν, which produces the channel vector estimate Ĥ _{n} ^{ν} and spreads it to produce the channel vector estimates (Ŷ _{0,n} ^{ν,d,1}, . . . , Ŷ _{0,n} ^{ν,d,F} ^{ d }),.

[0463]
The receiver module shown in FIG. 40 is predicated upon the data rates of each set of NI users being known to the instant user station receiver. When that is not the case, the receiver module shown in FIG. 40 may be modified as shown in FIG. 42, i.e., by changing the despreaders to segment the code and oversample at a fixed rate that is higher than or equal to the highest data rate that is to be suppressed.

[0464]
It is also possible to reduce the number of despreading operations performed by the receiver module of FIG. 42 by using a set of compound segment codes as previously described with reference to FIG. 35 to compound over segments. However, as shown in FIG. 43, a set of different compound codes could be used to compound over the set of NI interferers. It would also be possible to combine the embodiment of FIG. 43 with that of FIG. 35 and compound over both the set of interferers and each set of code segments.

[0465]
A desired user station receiver receiving transmissions on the downlink from its basestation and from the basestations in the neighbouring cells will now be discussed. Each basestation communicates with the group of user stations located in its cell. Indices ν and u will be used to denote a transmission from basestation ν destined for user u. For simplicity of notation, the index of the desired user station receiving those transmissions will be omitted, all of the signals being implicity observed and processed by that desired user station.

[0466]
Considering a basestation assigned the index ν, its contribution to the matchedfiltering observation vector
Y _{n }of the desired user station is given by the signal vector of the νth basestation
Y _{n} ^{ν} defined as:
$\begin{array}{cc}{\underset{\_}{Y}}_{u,n}^{u}=\sum _{u=1}^{{U}_{n}}\ue89e{\underset{\_}{Y}}_{u,n}^{v,u},& \left(135\right)\end{array}$

[0467]
where the vector
Y _{u,n} ^{ν,u }denotes the signal contribution from one of the U
_{ν} users communicating with basestation ν and assigned the index u. Using the blockprocessing approach described in the previous section, the vector
Y _{u,n} ^{ν,u }can be decomposed as follows:
$\begin{array}{cc}{\underset{\_}{Y}}_{n}^{v,u}={\psi}_{n}^{v,u}\ue89e\sum _{l=k}^{{N}_{u}}\ue89e\sum _{k=1}^{+1}\ue89e{b}_{n+k}^{v,u,l}\ue89e{\zeta}_{f,n}^{v}\ue89e{\underset{\_}{Y}}_{k,n}^{v,u,l,f}\ue89e{\lambda}_{k}^{l},& \left(136\right)\end{array}$

[0468]
It should be noted that the channel coefficients ζ_{f,n} ^{ν} just hold the index of the basestation ν. Indeed, transmissions from basestation u to all its mobiles propagate to the desired user station through a common channel. Basestation signals therefore show a multicode structure at two levels. One comes from the virtual or real decomposition of each userstream into multiple codes, and one, inherent to the downlink, comes from summation of codemultiplexed userstreams with different powers. As will be described hereinafter, this multicode structure will be exploited to enhance cooperative channel identification at both levels.

[0469]
In a first step, the desired userstation estimates the multicode constraint and blocking matrices of each of the processed incell users (i.e., u∈{1, . . . , NI}∪{d}). Table 4 shows how to build these matrices, renamed here as Ĉ_{MC,n} ^{ν,u }and Ĉ_{MC,n} ^{ν,u,1 }to show the index ν of the serving basestation. Indexing the symbol and channel vector estimates with ν in Table 4 follows from Equation (136). In a second step, the userstation estimates the basespecific constraint and blocking matrices Ĉ_{BS,n} ^{ν} and Ĉ_{BS,n} ^{ν,u,l }using Table 5. These matrices enable suppression of the incell interferers using one of the modes described in Table 5. For the downlink, a new mode BR, for baserealization, replaces the TR mode of Table 3. Suppression of interfering signals from multiple basestations adds another dimension of interference decomposition and results in TR over the downlink as shown in Table 6. Therefore, in a third step the mobilestation estimates the basespecific constraint and blocking matrices Ĉ_{BS,n} ^{ν} and Ĉ_{BS,n} ^{ν,u,l }from the interfering basestations and concatenates them rowwise to form the multibase constraint and blocking matrices denoted as Ĉ_{n }and Ĉ_{n} ^{ν,u,l}, respectively. In the TR mode, the basespecific constraint and blocking vectors in the BR mode now are summed over all interfering basestations, leaving a single constraint. For the other modes, the number of constraints N_{c }in Table 3 is multiplied by the number of interfering basestations NB. The receiver module dedicated to extracting the data destined to the desired mobilestation #d from the serving base station #ν is depicted in FIG. 41.

[0470]
It should be noted that the multirate datastreams can be estimated using MRC on the downlink, simply by setting the constraint matrices to null matrices^{14}. This option will be termed DMRC.

[0471]
If the userstation knows^{15 }the data rates of the suppressed users, it can estimate their symbols^{16 }as long as their symbol rate does not exceed the processing rate. As mentioned hereinbefore, this blockbased implementation of the symbol detection improves reconstruction of the constraint matrices from reduced decision feedback errors^{17}. Otherwise, the userstation can process all interfering channels at the common resolution rate regardless of their transmission rate. It should be noted that estimation of the interferers' powers is necessary for reconstruction in both the BR and TR modes, for channel identification as detailed below, and possibly for interferencechannel probing and selection. It is carried out at the processing rate.

[0472]
Identification of the propagation channels from each of the interfering basestations to the desired user station is required to carry out the ISR operations. Considering the incell propagation channel, its identification from the postcorrelation vectors of the desired user is possible as described hereinbefore with reference to FIG. 39. It exploits the fact that the multicodes of the desired user propagate through the same channel. However, the incell interfering users share this common channel as well. Therefore, the MCCDFI and MRCDFI approaches apply at this level as well. Indeed, the userstation has access to data channels which can be viewed as NI×N_{m }virtual pilotchannels with strong powers. It is preferable to implement cooperative channel identification over the interfering users whether the desired user is among the incell interferers or not. The same scheme applies to the neighbouring basestations and therefore enables the identification of the propagation channel from each outcell interfering basestation using its NI interfering users.

[0473]
If the data rates are known to the basestation, identification of the propagation channel from a given basestation ν′∈{1, . . . ,NB} can be carried out individually from each of its NI interfering users, as described in the previous section. To further enhance channel identification, the resulting individual channel vector estimates are averaged over the interfering users. Both steps combine into one as follows:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{{v}^{\prime}}={\stackrel{~}{\underset{\_}{H}}}_{n}^{{v}^{\prime}}+\frac{\mu}{\sum _{i=1}^{N\ue89e\text{\hspace{1em}}\ue89eI}\ue89e{\left({\hat{\psi}}_{n}^{{v}^{\prime},i}\right)}^{2}}\ue89e\sum _{l=1}^{\mathrm{NI}}\ue89e\frac{1}{{F}_{i}}\ue89e\sum _{{n}^{\prime}=0}^{{F}_{i}=1}\ue89e\left({\underset{\_}{Z}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{1}+{n}^{\prime}}^{{v}^{\prime},i}{\hat{\underset{\_}{H}}}_{n}^{u}\ue89e{\hat{S}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{1}+{n}^{\prime}}^{{v}^{\prime},i}\right)\ue89e{\hat{S}}_{n\ue89e\text{\hspace{1em}}\ue89e{F}_{i}+{n}^{\prime}}^{{v}^{\prime},i}.& \left(137\right)\end{array}$

[0474]
This downlink version of MRCDFI, referred to as DMRCDFI, is illustrated in FIG. 40. It should be noted that averaging over the interferers takes into account normalization by their total power, To reduce the number of despreading operations, averaging over interferers can be limited to a smaller set ranging between 1 and NI.

[0475]
If the data rates of the interfering users are unknown to the userstation, identification can be then carried out along the steps described with reference to FIG. 34 to process interfering signals at the common resolution rate as follows:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{{v}^{\prime}}={\hat{\underset{\_}{H}}}_{n}^{{v}^{\prime}}+\frac{\mu}{{N}_{m}\ue89e\sum _{i=1}^{\mathrm{NI}}\ue89e{\left({\hat{\psi}}_{n}^{{v}^{\prime},i}\right)}^{2}}\ue89e\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{i=1}^{{N}_{m}}\ue89e\left({\underset{\_}{Z}}_{n}^{{v}^{\prime},i,l}{\hat{\underset{\_}{H}}}_{n}^{{v}^{\prime}}\ue89e{\hat{s}}_{n}^{{v}^{\prime}\ue89ei,l}\right)\ue89e{\hat{s}}_{n}^{{v}^{\prime},i,l}.& \left(138\right)\end{array}$

[0476]
This downlink version of MCCDFI, referred to as DMCCDFI, is illustrated in FIG. 42. To reduce the number of despreading operations, averaging over interferers and usercodes can be limited to smaller subsets ranging between 1 and NI and 1 and N_{m}, respectively.

[0477]
An alternative solution that reduces the number of despreading operations utilizes the following cumulative multicodes for l=1, . . . , N
_{m}:
$\begin{array}{cc}{c}_{k}^{{v}^{\prime},\sum ,i}=\frac{1}{\sqrt{\mathrm{NI}}}\ue89e\sum _{i=1}^{\mathrm{NI}}\ue89e{c}_{k}^{{v}^{\prime},i,l}.& \left(139\right)\end{array}$

[0478]
Despreading with these cumulative codes yields:
$\begin{array}{cc}\begin{array}{c}{\underset{\_}{Z}}_{n}^{{v}^{\prime},\sum ,l}={\underset{\_}{H}}_{n}^{{v}^{\prime}}\left(\frac{\sum _{i=1}^{\mathrm{NI}}\ue89e{s}_{n}^{{v}^{\prime},l,I}}{\sqrt{\mathrm{NI}}}\right)+\left(\frac{\sum _{i=1}^{\mathrm{NI}}\ue89e{\underset{\_}{N}}_{\mathrm{PCM},n}^{{v}^{\prime},i,l}}{\sqrt{\mathrm{NI}}}\right)\\ ={\underset{\_}{H}}_{n}^{{v}^{\prime}}\ue89e{s}_{n}^{{v}^{\prime},\sum ,l}+{\underset{\_}{N}}_{\mathrm{PCM},n}^{{v}^{\prime},\sum ,l}\end{array}.& \left(140\right)\end{array}$

[0479]
Averaging the usercodes over interferers does not reduce noise further after despreading. However, the composite signal ŝ
_{n} ^{ν′,Σ,l }collects an average power from the NI interferers and therefore benefits from higher diversity, The cumulative multicodes can be used to implement channel identification as follows:
$\begin{array}{cc}{\stackrel{~}{\underset{\_}{H}}}_{n+1}^{{v}^{\prime}}={\hat{\underset{\_}{H}}}_{n}^{{v}^{\prime}}+\frac{\mu}{{{N}_{m}\ue8a0\left({\hat{\psi}}_{n}^{{v}^{\prime},\sum}\right)}^{2}}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\left({\underset{\_}{Z}}_{n}^{{v}^{\prime},\sum ,l}{\hat{\underset{\_}{H}}}_{n}^{{v}^{\prime}}\ue89e{\hat{s}}_{n}^{{v}^{\prime},\sum ,l}\right)\ue89e{\stackrel{~}{s}}_{n}^{{v}^{\prime},\sum ,l},\text{}\ue89e\text{where:}& \left(141\right)\\ {\hat{s}}_{n}^{{v}^{\prime},\sum ,l}=\frac{\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{s}}_{n}^{{v}^{\prime},i,l}}{\sqrt{\mathrm{NI}}},& \left(142\right)\\ {\left({\hat{\psi}}_{n}^{{v}^{\prime},\sum}\right)}^{2}=\left(1\alpha \right)\ue89e{\left({\hat{\psi}}_{n1}^{{v}^{\prime},\sum}\right)}^{2}+\alpha \ue89e\text{\hspace{1em}}\ue89e\frac{\sum _{l=1}^{{N}_{m}}\ue89e\sum _{i=1}^{\mathrm{NI}}\ue89e{\uf603{\hat{S}}_{n}^{{v}^{\prime},i,l}\uf604}^{2}}{{N}_{i\ue89e\text{\hspace{1em}}\ue89en}\ue89e\mathrm{NI}}.& \left(143\right)\end{array}$

[0480]
This downlink version of MCCDFI, referred to as DSMCCDFI, is illustrated in FIG. 43. Again, averaging over a smaller set of usercodes reduces the number of despreading operations. Use of the δCDFI version described in Equations (111) to (113) instead of, or combination with, the above scheme^{18}, are other alternatives that reduce the amount of complexity due to despreading operations.

[0481]
In situations where a pilot code is transmitted, it can be incorporated into the cumulative code. This version which we denote δπMCCDFI, uses a data modulated cumulative code over multicodes, interferers, and pilot(s) for despreading. We also introduce normalization by powers in order to meet situations with significant differences in powers (such as on the downlink). δπMCCDFI uses the following code for despreading:
$\begin{array}{cc}{c}_{k}^{{v}^{\prime},\mathrm{\delta \pi}}=\frac{1}{\sum _{l1}^{{N}_{m}}\ue89e\left[\sum _{i=1}^{\mathrm{NI}}\ue89e{\left({\psi}_{n}^{{v}^{\prime},i,l}\right)}^{2}+{\left({\lambda}^{\pi}\ue89e{\psi}_{n}^{{v}^{\prime},l}\right)}^{2}\right]}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\left[\sum _{i=1}^{\mathrm{NI}}\ue89e{s}_{n}^{v,i,l}\ue89e{c}_{k}^{{v}^{\prime},i,l}+{\lambda}^{\pi}\ue89e{\pi}_{k}^{{v}^{\prime},l}\right],& \left(144\right)\end{array}$

[0482]
where π, is the spread pilot signal and λ^{π} is a weight factor which may serve to signify the pilot since no decision errors are associated with it. In the special case where λ^{π}=0, the scheme amounts to δMCCDFI with normalization by powers.

[0483]
Moreover, these downlink versions could be combined with the pilot assisted ISR embodiments described with reference to FIGS. 44 and 46. It will be appreciated that the pilot channel will not be userspecific but rather specific to the serving base station or to a group of user stations served by that serving base station. In such cases, the pilot power is relatively strong so the corresponding beamformer (see FIG. 46) may implement simple MRC instead of ISR.

[0484]
The embodiments of the invention described so far use one transmit (Tx) antenna. Adding spatial dimension using multiple Tx antennas provides a means of supporting more users. In the following section we present a transmitter structure especially suited for highrate lowprocessing gain downlink transmission, which can potentially provide high capacity when ISR is employed at the receiver.

[0485]
MultipleInput, Multiple Output (MIMO) ISR with SpaceTime Coding (STC)

[0486]
On the uplink, increasing the number of receive (Rx) antennas from one to two almost doubles capacity of the system when ISR is employed at the BS. The improvement results from the additional spatial dimension which allows users to be distinguished not only by their code but also by their spatial signature. When, on the downlink, a single Tx antenna is employed, all signals originating from one specific base station (BS) antenna have the same spatial signature at the antenna array of the receiver. It is therefore a demand that the BS transmitter is equipped with multiple antennas and that a wise spacetime coding strategy for transmitting signals is employed.

[0487]
Such a MIMO transmitter using STC is shown in FIG. 49 for serving base station ν. This figure shows base station ν serving the mobiles indexed from 1 to N_{u }located within its cell coverage. It transmits to each of these mobile a corresponding stream of data (b_{n} ^{u}), each powercontrolled with the total amplitude (ψ_{n} ^{u}) using a multiplier 15X^{ν,u}. It should be noted that (ψ_{n} ^{u}) is not the real amplification factor, but a product obtained at the receiver and put at the transmitter to ease both data modelling and algorithmic description (please refer to description of FIG. 4).

[0488]
The powercontrolled data streams are then fed to a groupselector 110 ^{ν} to divide the N_{u }served mobiled in N_{G }groups (see discussion below). Each group cannot be large than L mobiles in number. Depending on the cell load N_{u}, a given number N_{IG}≦L of mobiles will be allocated within each group. For convenience of notation, N_{IG }is fixed in FIG. 49 to L, i.e., the maximum.

[0489]
For each group, identical operation will be performed; hence only operation for group #1 will be described. The N_{IG}=L data streams in group #1 will be spread by codes c^{1,l}(t), . . . , c^{1,L}(t) using multipliers 15X/2 ^{1,l}, . . . , 15X/2 ^{1,L}, respectively. The spread signals are then summed using adder 16X/1 ^{ν,1}. The resulting signal is summed to a pilot signal π_{1}(t) specific to group #1 using adder 16X/2 ^{ν,1}, then spread with code c^{ν}(t) specific to base station ν using multiplier 15X/3 ^{ν,1}. The resulting spread signal is denoted as G_{1}(t). Identical operations on other groups will result in similar signals. The N_{G }signals resulting from such operations in the N_{G }groups of mobiles are denoted as G_{1}(t), . . . , G_{N} _{ G }(t).

[0490]
These signals are fed to a spatial mapper 120 ^{ν}. This mapper operates like a N_{G}×M_{T }coupler to linearly transform the N_{G }input streams inot M_{T }output streams equal in number to the Tx antennas and denoted as A_{1}(t), . . . , A_{M} _{ G }(f). The first stream A_{1}(t) is delayed by delay 45X^{1 }and filtered by the shaping pulse 13X^{ν,1 }(which includes carrier frequency modulation), then transmitted over antenna 14X^{ν,1 }as signal S_{1}(t). Identical operations performed on the mapper output streams result in signals S_{1}(t), . . . , S_{M} _{ T }(t) being separately transmitted on antennas 14X^{ν,1}, . . . , 14X^{ν,M} ^{ T }, respectively. The structure of this transmitter is particularly interesting in high datarate, lowprocessing gain situations. First, the data sequences b^{ν,u,}(t) of the N_{u }users, are scaled with φ^{ν,u}(t), where φ^{ν,u}(t)^{2}, u=1, . . . , N_{u }is the desired transmit power. These signals are then grouped in N_{G }groups. A user belonging to group g is assigned a user specific short channelization code drawn from a fixed set of N_{IG }Lchip codes (L is the processing gain) which we conveniently organize columnwise in the matrix C_{g}=[c^{g,1}(t)^{T}, . . . , c^{g,N} ^{ IG }(t)^{T}]^{T }and denote it the codeset of group g. Codes belonging to same codeset are all chosen mutually orthogonal such that C_{g} ^{H}C_{g }is diagonal, which in its turn means that the number of fixed channelization codes per group is limited to N_{IG}≦L; at the same time codesets across groups should have low crosscorrelation, as will be explained later. It should be noted that codesets are assumed to be reused in all sectors. When user signals of the same group are coded by their respective channelization code, they are summed to provide a one streamed signal. A groupspecific pilot code is added, and the resulting signal is scrambled by a BS specific PN code to arrive at the total group signal G_{g} ^{u}(t). Using a linear mapping function M, the N_{G }group signals are mapped onto M_{T }antenna branches, to arrive at

A ^{ν}(t)=MG ^{ν}(t), (145)

[0491]
where A^{u}(t)=[A_{l} ^{u}(t)^{T}, . . . , A_{M} ^{u}(t)^{T}], and G^{u}(t)=[G_{l} ^{u}(t)^{T}, . . . , G_{N} _{ o } ^{u}(t)^{T}]. Branch signals are finally delayed to allow for transmit delay diversity, then formed by the chippulse matched filter.

[0492]
The physical channel matrix which defines transmission from M
_{T }Tx antennas of the BS indexed υ to the M receive antennas of the mobile with couple index (υ,u) is:
$\begin{array}{cc}{H}^{v,u}\ue8a0\left(t\right)=\left[\begin{array}{ccc}{h}_{1,l}^{u,u}\ue8a0\left(t\right)& \cdots & {h}_{1,{M}_{T}}^{u,u}\ue8a0\left(t\right)\\ \vdots & \text{\hspace{1em}}& \vdots \\ {h}_{M,1}^{u,u}\ue8a0\left(t\right)& \cdots & {h}_{M,{M}_{T}}^{u,u}\ue8a0\left(t\right)\end{array}\right],& \left(146\right)\end{array}$

[0493]
where the (ij)th element of the matrix is the channel between the jth Tx antenna of the basestation and the ith Rx antenna of the mobile. This definition allows the signal transmitted from the basestation υ, when received at the antenna array of the desired mobile, to be written as:
$\begin{array}{cc}{X}^{v,u}\ue8a0\left(t\right)={H}^{v,u}\ue8a0\left(t\right)\otimes {S}^{v}\ue8a0\left(t\right)& \left(147\right)\\ ={H}^{v,u}\ue8a0\left(t\right)\otimes {\mathrm{MG}}^{v}\ue8a0\left(t\right)\otimes D\ue8a0\left(t\right)& \left(148\right)\\ ={H}^{v,u}\ue8a0\left(t\right)\ue89eM\otimes \left[{G}^{v}\ue8a0\left(t\right)\otimes D\ue8a0\left(t\right)\right]& \left(149\right)\\ =D\ue8a0\left(t\right)\otimes {H}^{u,v}\ue8a0\left(t\right)\ue89eM\otimes {G}^{v}\ue8a0\left(t\right)& \left(150\right)\end{array}$

[0494]
where D(t)=[φ(t−Δ _{1}), . . . , φ(t−Δ _{M} _{ T })]^{T }represent the transmit delays and chippulse forming. From Equation (149) it is clear that the effective spatial mapping function due to the channel becomes H(t)M, which is generally not orthogonal which in its turn means that groups will interfere with each other. Therefore, unless the transmitter has knowledge of the channel, orthogonality at reception cannot be promised. Design of the mapping function will be described later. Equation (150) further shows that the delay elements can be regarded as part of the channel, and it is clear that they provide virtual multipath. This is normally referred to as “delay transmit diversity.”

[0495]
If the channel as seen by the vector of group signals G
^{ν}(t) is denoted by Γ
^{ν,u}(
t)=
D(
t){circle over (×)}
H ^{ν,u}(
t)
M, then the signal received at the antenna array may be written as:
$\begin{array}{cc}{X}^{v,u}\ue8a0\left(t\right)=\sum _{v=1}^{{N}_{\delta}}\ue89e{\Gamma}^{v,u}\ue8a0\left(t\right)\otimes {G}^{v}\ue8a0\left(t\right)& \left(151\right)\\ \text{\hspace{1em}}\ue89e=\sum _{v=1}^{{N}_{s}}\ue89e{\Gamma}_{I}^{v,u}\otimes {G}_{I}^{v}\ue8a0\left(t\right)+\dots \ue89e\text{\hspace{1em}}+{\Gamma}_{{N}_{a}}^{v,u}\otimes {G}_{{N}_{G}}^{v}\ue8a0\left(t\right)& \left(152\right)\end{array}$

[0496]
where Γ
_{j} ^{ν,u }is the j
^{th }column of Γ
^{ν,u}. From Equation (20) it is noted that each group of users' signals propagate through the same channel, and that the receiver sees N
_{R}N
_{G }sources. When the proposed MIMO downlink transmitter is employed, the model for the received matched filtered signal (Equation 3) can be written as:
$\begin{array}{cc}Y\ue8a0\left(t\right)=\sum _{v=1}^{{N}_{s}}\ue89e\sum _{u=1}^{{N}_{u}}\ue89e{Y}^{v,{u}_{s}}\ue8a0\left(t\right)+N\ue8a0\left(t\right)& \left(153\right)\\ \text{\hspace{1em}}\ue89e=\sum _{v=1}^{{N}_{s}}\ue89e\sum _{u=1}^{{N}_{u}}\ue89e{\varphi}^{v,u}\ue8a0\left(t\right)\ue89e\left({H}^{v,u}\ue8a0\left(t\right)\otimes {b}^{v,u}\ue8a0\left(t\right)\ue89e{c}^{v,u}\ue8a0\left(t\right)\right)+N\ue8a0\left(t\right)& \left(154\right)\\ \text{\hspace{1em}}\ue89e=\sum _{v=1}^{{N}_{s}}\ue89e\sum _{g=1}^{{N}_{a}}\ue89e\sum _{u\in {S}_{s}^{v}}\ue89e{\varphi}^{v,u}\ue8a0\left(t\right)\ue89e\left({H}_{\sum}^{v,g}\ue8a0\left(t\right)\otimes {b}^{v,u}\ue8a0\left(t\right)\ue89e{c}^{v,u}\ue8a0\left(t\right)\right)+N\ue8a0\left(t\right)& \left(155\right)\\ \text{\hspace{1em}}\ue89e=\sum _{v=1}^{{N}_{s}}\ue89e\sum _{g=1}^{{N}_{a}}\ue89e{H}_{\sum}^{v,g}\ue8a0\left(t\right)\otimes \left(\sum _{u\in {G}_{s}^{u}}\ue89e{\varphi}^{v,u}\ue8a0\left(t\right)\ue89e{b}^{v,u}\ue8a0\left(t\right)\ue89e{c}^{v,u}\ue8a0\left(t\right)\right)+N\ue8a0\left(t\right)& \left(156\right)\end{array}$

[0497]
from which it is clear that users belonging to the same group of same BS, have the same channel response H_{Σ} ^{ν,g}(t). This allows for improved identification of the channel at the mobile receiver. The most apparent difference from the uplink model is hence that users belonging to the same group experience the same channel, a feature well exploited on the downlink using CDFI (see previous descriptions).

[0498]
Appropriate choice of codes across groups is important since the resultant channel is not generally orthogonal. Since channelization codes are chosen from a fixed set, sets with good properties can be found by optimization. It should be noted that, since the same scrambling code is used across groups, crosscorrelation properties, once set by proper choice of channelization codesets, are preserved after scrambling and hence after transmission. Here, only the situation with two groups (N
_{G}=2) is considered since it is particularly simple. C
_{1 }is first chosen as an orthogonal matrix, for instance the Hadamard matrix (or part of it). It is noted that, if Λ is a diagonal matrix having ±1 entries, then ΛC
_{1 }will still be an orthogonal span because Λ is unitary. Therefore, the second set of codes is defined by C
_{2}=ΛC
_{1}, where Λ satisfies
$\begin{array}{cc}\Lambda =\mathrm{arg}\ue89e\text{\hspace{1em}}\ue89e\underset{\Lambda}{\mathrm{min}}\ue89e\left\{\mathrm{sup}\ue89e\text{\hspace{1em}}\ue89e\underset{\mathrm{ij}}{\mathrm{max}}\ue89e\uf603{A}_{\mathrm{ij}}\uf604\right\},\text{}\ue89e\mathrm{where}& \left(157\right)\\ A={C}_{1}^{H}\ue89e{\Lambda}^{H}\ue89e{C}_{1}& \left(158\right)\end{array}$

[0499]
which, in most cases, is easily solved by search. When sets are full (i.e., N_{IG}=L), this amounts to a 45° rotation between sets, In the more general case where N_{G}>2, the optimization becomes difficult especially when the processing gain is large. Here a blend of guessing and search must be invoked.

[0500]
Experience shows that reusing the same or opposite code in different groups is not attractive. The number of users (total number of possible channelization codes) is therefore limited by
2 ^{L−1}. This limit clearly suggests that a low processing gain also encompasses a very limited potential capacity. For instance if L=2, only two users can be supported, and it can be verified that there is no profit from multiple Tx antennas, since one Tx antenna can already provide near orthogonal transmission (using orthogonal codes). With L=4, the limit is N
_{u}≦8, and for this situation, there is benefit from going from one to two Tx antennas, but not three, In general, the number of Tx antennas for a costeffective system is limited by
${M}_{T}\le \frac{{2}^{L1}}{L}$

[0501]
because adding more antennas will not provide potential increase of capacity.

[0502]
The purpose of the spatial mapping function is to assign a unique M_{T}dimensional spatial signature to each of the N_{G }groups. In situations where the transmitter has some knowledge of the channel^{19}, the mapping function may be chosen as a function of time such that the resultant channel Γ^{ν,u}(t) becomes orthogonal. In mobile cellular CDMA, however, this is not an option because the physical channels are user specific, and therefore an orthogonality condition can only be provided for one receiving user.

[0503]
Considering therefore the design of a fixed mapping function, the rank properties of the resultant channel Γ^{ν,u}(t)=D(t){circle over (×)}H ^{ν,u}(t)M are intuitively optimized if the mapping function M is chosen to have the best rank properties. In the case where the number of groups (N_{G}) equals the number of Tx antennas (M_{T}), optimal rank properties are obtained by choosing an orthogonal mapping function. Identity mapping (M=I) is orthogonal, and simply maps group 1 to antenna 1, group 2 to antenna 2, etc. However, it causes unequal load on antennas, and delay transmit diversity is not exploited. These problems are both avoided if the Hadamard matrix is used, since it distributes signals equally on antenna branches and therefore exploits “delay transmit diversity” and avoids power imbalance.

[0504]
In the more general case, power control can be distributed among the transmit antennas. Such power control distribution techniques are well known and will not be described in detail here.

[0505]
It should be noted that embodiments of the invention are not limited to using the spacetime coding scheme described with reference to FIG. 49 but could use other known spacetime coding schemes.

[0506]
It will be appreciated that the base station transmitter described with reference to FIG. 49 does not require a modification to the receiver at the user station, i.e., any of the receivers described with reference to FIGS. 4043 may be used to receive its signals. Actually, with a MIMO system, the receiver will “see” the MIMO base station transmitter as N_{G }subbase stations corresponding to the group partitioning of FIG. 49.

[0507]
It should be noted that each user station could have a plurality of transmit antennas and use a MIMO transmitter similar to that of the base station and described with reference to FIG. 49. Of course, the corresponding receiver at the base station will not require modification for the reasons given above.
 TABLE 1 
 
 
 Robustness to estimation errors of 
 IC Method  N_{c}  Delay  Timing  Phase  Power  Symbols 
 
PIC  Subtracts reconstructed interference  —  1 + PC     
SIC  Subtracts reconstructed interference of  —  1 + NI 
 higher power users   PC 
ISRH  Nulls reconstructed bits of interfering  3NI  1PC   (some)  ✓  ✓ 
ISRD  Nulls reconstructed interfering  M × P × NI  1 + 1PC   ✓  ✓ 
 diversities 
ISRR  Nulls reconstructed interfering users  NI  1 + 1PC   (some)  ✓ 
ISRTR  Nulls total reconstructed interference  1  1 + 1PC    (some) 
ISRTRS  Nulls total reconstructed interference of  1  1 + NI    (some) 
 higher power users   PC 


[0508]
[0508]
 TABLE 2 
 
 
 S_{j}  j= 
 

ISRTR  S_{i }= {(u,f,l)u = 1, . . . , N_{u}; f = 1, . . . , N_{j}; l = −1,0,1}  1 
ISRR  S_{j }= {(u,f,l)u = j; f = 1, . . . , N_{j}; 1 = −1,0,1}  1, . . . , NI 

ISRH  ${S}_{j}=\left\{\left(u,f,l\right)u=\lfloor \frac{j1}{3}\rfloor ;f=1,\dots \ue89e\text{\hspace{1em}},{N}_{f};l=j\lfloor \frac{j1}{3}\rfloor 1\right\}$  1, . . . , 3NI 

ISRD  ${S}_{j}=\left\{\left(u,f,l\right)u=\lfloor \frac{j1}{{N}_{f}}\rfloor ;f=j\lfloor \frac{j1}{{N}_{j}}\rfloor ;l=1,0,1\right\}$  1, . . . , N_{f}NI 


[0509]
[0509]
TABLE 3 


Table 3 shows common constraint and blocking matrices Ĉ_{n }and Ĉ_{n} ^{i′,l′}, 
respectively, and the corresponding number of constraints or 
columns N_{c }for each ISR mode; Generic columns are shown before normalization and 
{overscore (δ)}_{i,l,k} ^{i′,l′,k′ }= 0 if (i,l,k) = (i′,l′,k′) and 1 otherwise. 
In the conventional MC case, λ_{k} ^{l }= 1 and N_{H }= 3N_{m}. 
In the MR case modeleled as MCCDMA, λ_{k} ^{l }= 
0 if k = −1 and 1 ε{1, . . . , N_{r}} or 
if k = +1 and 1 ε {N_{m }− N_{r }+ 1, . . . , N_{m}}, and 
1 otherwise. In the H mode, 2(N_{m }− N_{r}) columns or more in Ĉ_{n }are null. 
These columns and the corresponding ones in Ĉ_{n} ^{i′,l′ }are 
removed leaving a maximum of N_{H }= N_{m }+ 2N_{t }constraints. 
   
 $\begin{array}{c}{\hat{C}}_{n}\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\frac{{\underset{\_}{\hat{C}}}_{n,j}}{\uf605{\underset{\_}{\hat{C}}}_{n,j}\uf606},\dots \right]\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\text{\hspace{1em}}\ue89e{\stackrel{n}{\underset{\_}{C}}}_{n,j\ue89e\text{\hspace{1em}}},\dots \right]\\ \Uparrow \end{array}\hspace{1em}$  $\begin{array}{c}{\hat{C}}_{n}^{{i}^{\prime},{l}^{\prime}}\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\frac{{\hat{\underset{\_}{C}}}_{\mathrm{nj}}^{{i}^{\prime},{l}^{\prime}}}{\uf605{\underset{\_}{\hat{C}}}_{n,j}\uf606},\dots \right]\\ \uparrow \\ [\dots \ue89e\text{\hspace{1em}},\text{\hspace{1em}}\ue89e{\hat{C}}_{\mathrm{nj}}^{{i}^{\prime},{l}^{\prime}},\dots \ue89e\text{\hspace{1em}}]\\ \Uparrow \end{array}\hspace{1em}$  N_{c} 
 
   
TR  $\left[\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{l}}\ue89e\sum _{k=1}^{*1}\ue89e{\stackrel{n}{\psi}}_{n}^{i}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{i,l,f}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{l}\right]$  $\left[\sum _{i=1}^{\mathrm{NI}}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{l}}\ue89e\sum _{k=1}^{*1}\ue89e{\stackrel{n}{\psi}}_{n}^{i}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{i,l,f}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}}\right]$  1 

MCR  $[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{j}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{1},\dots \ue89e\text{\hspace{1em}}]$  $[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{j}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l},}\ue89e\dots \ue89e\text{\hspace{1em}}]$  NI 

MCD  $[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{1},\dots \ue89e\text{\hspace{1em}}]$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \right]$  N_{f}NI 

R  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{i}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{1},\dots \right]$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\hat{\zeta}}_{f,n}^{j}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \right]$  N_{m}NI 

D  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{1},\dots \right]$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{k=1}^{*1}\ue89e{\hat{b}}_{n+k}^{i,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \right]$  N_{f}N_{m}NI 

H  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e{\hat{\zeta}}_{f,n}^{i}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{1},\dots \right]$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{*1}\ue89e{\hat{\zeta}}_{f,n}^{i}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \right]$  N_{H}NI 


[0510]
[0510]
TABLE 4 


Table 4 shows multicode constraint and blocking matrices Ĉ_{HC,n} ^{u }and 
Ĉ_{MC,n} ^{u,l′ }respectively, and the corresponding number of 
constraints or columns N_{c }for each ISR mode: 
Generic columns are shown before projection and normalization and {overscore (δ)}_{l,k} ^{l′,k′ }= 
0 if (l,k) = (l′,k′) and 1 otherwise. In the conventional MC case, λ_{k} ^{l }= 
1 and N_{H }= 3N_{m}. In the MR case modeled as MCCDMA, λ_{k} ^{l }= 
0 if k = −1 and l ε {l, . . . , N_{r}} or if k = +1 and 
l ε {N_{m }− N_{r }+ 1, . . . , N_{m}}, and 1 otherwise. 
In the H mode, 2(N_{m }− N_{r}) columns in Ĉ_{MC,n} ^{u }are null. 
These columns and the corresponding ones in Ĉ_{MC,n} ^{u }are removed leaving a maximum of N_{H }= 
N_{m }+ 2N_{r }constraints. 
   
 $\begin{array}{c}{\hat{C}}_{\mathrm{MC},n}^{u}\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\frac{{\Pi}_{n}\ue89e{\underset{\_}{\hat{C}}}_{n,j}}{\uf605{\Pi}_{n}\ue89e{\underset{\_}{\hat{C}}}_{n,j}\uf606},\dots \right]\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\text{\hspace{1em}}\ue89e{\hat{\underset{\_}{C}}}_{n,j\ue89e\text{\hspace{1em}}}^{u},\dots \right]\\ \Uparrow \end{array}\hspace{1em}$  $\begin{array}{c}{\hat{C}}_{\mathrm{MC},n}^{u,{l}^{\prime}}\\ \uparrow \\ \left[\dots \ue89e\text{\hspace{1em}},\frac{{\Pi}_{n}\ue89e{\underset{\_}{\hat{C}}}_{n,j}^{u,{l}^{\prime}}}{\uf605{\Pi}_{n}\ue89e{\underset{\_}{\hat{C}}}_{n,j}^{u}\uf606},\dots \right]\\ \uparrow \\ [\dots ,\text{\hspace{1em}}\ue89e{\stackrel{n}{\underset{\_}{C}}}_{n,j}^{{i}^{\prime},{l}^{\prime}},\dots \ue89e\text{\hspace{1em}}]\\ \Uparrow \end{array}\hspace{1em}$  N_{c} 
 
   
MCR  $\left[\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l,f}\ue89e{\lambda}_{k}^{l}\right]$  $\left[\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{l}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l}\ue89e\sqrt{{\delta}_{l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}}\right]$  1 

MCD  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l,f}\ue89e{\lambda}_{k}^{l},\dots \right]$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{l=1}^{{N}_{m}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l}\ue89e\sqrt{{\delta}_{l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \right]$  N_{f} 

R  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l,f}\ue89e{\lambda}_{k}^{l},\dots \right]$  $[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l}\ue89e\sqrt{{\delta}_{l,k}^{{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}}\ue89e\text{\hspace{1em}},\dots \ue89e\text{\hspace{1em}}]$  N_{m} 

D  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\hat{Y}}_{k,n}^{u,l,f}\ue89e{\lambda}_{k}^{l},\dots \right]$  $[\dots \ue89e\text{\hspace{1em}},\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{u,1}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l}\ue89e\sqrt{{\delta}_{l,k}^{{l}^{\prime},0}}\ue89e{\lambda}_{k}^{l},\dots \ue89e\text{\hspace{1em}}]$  N_{f}N_{m} 

H  $[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l,f}\ue89e{\lambda}_{k}^{l},\dots \ue89e\text{\hspace{1em}}]$  $[\dots \ue89e\text{\hspace{1em}},\sum _{f=1}^{{N}_{f}}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{u,l}\ue89e\sqrt{{\delta}_{l,k}^{{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \ue89e\text{\hspace{1em}}]$  N_{H}NI 


[0511]
[0511]
 TABLE 5 
 
 
 BR 
 

  
 ${\hat{C}}_{\mathrm{BS},n}^{v}\ue200$  $\left[\sum _{u=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{v}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{l}\right]$ 
 
 ${\hat{C}}_{\mathrm{BS},n}^{v,{i}^{\prime},{l}^{\prime}}\ue200$  $\left[\sum _{u=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{u}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{i,l,k}^{{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}}\right]$ 
 
 N_{c}  1 
 
TABLE 5

[0512]
Table 5 shows basespecific constraint and blocking matrices Ĉ
_{BS,n} ^{ν} and Ĉ
_{BS,n} ^{ν,l′,l′} which will apply to the modes shown in Table 3 except for TR, replaced by BR. Indices of remaining modes in Table 3 should be modified to include the index of the basestation ν as shown for the TR mode. It should be noted that channel coefficients {circumflex over (ζ)}
_{f,n} ^{u }hold the index of the basestation u instead of the user i. Transmissions to all userstations from basestation u propagate to the desired user station through a common channel. It should also be noted that summation over users is weighted by the estimate of the total amplitude due to userindependent power control. Definitions of {overscore (δ)}
_{i,l,k} ^{i′,l′,0 }and λ
_{k} ^{l }are given in Table 3.
TABLE 6 


 TR 

${\hat{C}}_{n}\ue200$  $\left[\sum _{v=1}^{\mathrm{NB}}\ue89e\sum _{U=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{v}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{l}\right]$ 

${\hat{C}}_{n}^{{v}^{\prime},{i}^{\prime},{l}^{\prime}}\ue200$  $\left[\sum _{v=1}^{\mathrm{NB}}\ue89e\sum _{u=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{f}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{v}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{v,i,l,k}^{{v}^{\prime}\ue89e{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}}\right]$ 

N_{c}  1 

 BR 

${\hat{C}}_{n}\ue200$  $\left[\dots \ue89e\text{\hspace{1em}},\sum _{i=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{l}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{v}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l,f}\ue89e{\lambda}_{k}^{l}\right]$ 

${\hat{C}}_{n}^{{v}^{\prime},{i}^{\prime},{l}^{\prime}}\ue200$  $[\dots \ue89e\text{\hspace{1em}},\sum _{u=1}^{\mathrm{NI}}\ue89e{\hat{\psi}}_{n}^{v,u}\ue89e\sum _{l=1}^{{N}_{m}}\ue89e\sum _{f=1}^{{N}_{l}}\ue89e\sum _{k=1}^{+1}\ue89e{\hat{b}}_{n+k}^{v,i,l}\ue89e{\hat{\zeta}}_{f,n}^{v}\ue89e{\underset{\_}{\hat{Y}}}_{k,n}^{i,l}\ue89e\sqrt{{\delta}_{v,i,l,k}^{{v}^{\prime}\ue89e{i}^{\prime}\ue89e{l}^{\prime},0}\ue89e{\lambda}_{k}^{l}},\dots \ue89e\text{\hspace{1em}}]$ 

N_{c}  NB 

TABLE 6

[0513]
Table 6 shows multibase constraint and blocking matrices Ĉ_{n }and Ĉ_{n} ^{ν′,l′,l′} which apply to the modes of Table 5 by rowwise aligning the constraint and blocking matrices Ĉ_{BS,n }and Ĉ_{BS,n} ^{ν′,i′,l′} from basestations into larger matrices Ĉ_{n }and Ĉ_{n} ^{ν′,i′,l′} in the way suggested by Equations (104) and (105). The number of constraints in Table 5 is multiplied by NB as shown here for the BR mode. The additional TR mode sums the constraintvectors of the BR mode over all basestations. The definition of λ_{k} ^{l }is given in Table 3 and {overscore (δ)}_{ν,i,l,k} ^{ν′,i′,l′,l′}=0 if (ν,i,l,k)=(ν′, i′, l′, k′) and 1 otherwise.

[0514]
It should be appreciated that, whether ISR is used for the uplink or the downlink, it will function either as a single antenna or multiple antenna for reception or transmission.

[0515]
Embodiments of the invention are not limited to DBPSK but could provide for practical implementation of ISR in mixedrate traffic with MPSK or MQAM modulations without increased computing complexity. Even orthogonal Walsh signalling can be implemented at the cost of a computational increase corresponding to the number of Walsh sequences. Moreover, different users could use different modulations. Also, one or more users could use adaptive coding and modulation (ACM).

[0516]
It is also envisaged that embodiments of the invention could employ carrier frequency offset recovery (CFOR). It should be appreciated that the decision rule units do not have to provide a binary output; they could output the symbol and some other signal state.

[0517]
It should also be noted that, although the abovedescribed embodiments are asynchronous, a skilled person would be able to apply the invention to synchronous systems without undue experimentation.

[0518]
The invention comprehends various other modifications to the abovedescribed embodiments. For example, long PN codes could be used, as could large delayspreads and large interuser delayspreads.

[0519]
For simplicity, the foregoing description of preferred embodiments assumed the use of short spreading codes. In most practical systems, however, long spreading codes would be used. Because the portion of the long code differs from one symbol to the next, certain operations, which were unnecessary for short codes, will have to be performed, as would be appreciated by one skilled in this art. For further information, the reader is directed to references [22] and [23]. It is envisaged, however, that short codes could still be used during acquisition and the long codes used once a link has been established.

[0520]
During the acquisition step, a user station could be required to connect using one of a plurality of predetermined (short) codes. The nullconstraints used by the receiver then would be preselected to cancel signals using such predetermined codes. This would avoid problems arising when a user station begins to transmit and for which the receiver has not derived any constraints. Such a modification would be applicable to the downlink situation and use ISRH.
REFERENCES

[0521]
For further information, the reader is directed to the following documents, the contents of which are incorporated herein by reference.

[0522]
1. F. Adachi, M. Sawahashi and H. Suda, “Wideband DSCDMA for next generation mobile communications systems”, IEEE communications Magazine, vol. 36, No. 9, pp. 5569, September 1998.

[0523]
2. A. DuelHallen, J. Holtzman, and Z. Zvonar, “Multiuser detection for CDMA systems”, IEEE Personal Communications, pp. 4658, April 1995.

[0524]
3. S. Moshavi, “Multiuser detection for DSCDMA communications”, IEEE Communications Magazine, pp. 124136, October 1996.

[0525]
4. S. Verdu, “Minimum probability of error for asynchronous Gaussian multipleaccess channels”, IEEE Trans. on Information Theory, vol. 32, no. 1, pp. 8596, January 1986.

[0526]
5. K. S. Schneider, “Optimum detection of code division multiplexed signals”, IEEE Trans. on Aerospace and Electronic Systems, vol. 15, pp. 181185, January 1979.

[0527]
6. R. Kohno, M. Hatori, and H. Imai, “Cancellation techniques of cochannel interference in asynchronous spread spectrum multiple access systems”, Electronics and Communications in Japan, vol. 66A, no. 5, pp. 2029, 1983.

[0528]
7. Z. Xie, R. T. Short, and C. K. Rushforth, “A family of suboptimum detectors for coherent multiuser communications”, IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 683690, May 1990.

[0529]
8. A. J. Viterbi, “Very low rate convolutional codes for maximum theoretical performance of spreadspectrum multipleaccess channels”, IEEE Journal of Selected Areas in Communications, vol. 8, no 4, pp. 641649, May 1990.

[0530]
9. M. K. Varanasi and B. Aazhang, “Multistage detection in asynchronous codedivision multipleaccess communications”, IEEE Trans. on Communications, vol. 38, no. 4, pp. 509519, April 1990.

[0531]
10. R. Kohno et al, “Combination of an adaptive array antenna and a canceller of interference for directsequence spreadspectrum multipleaccess system”, IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 675682, May 1990.

[0532]
11. A. DuelHallen, “Decorrelating decisionfeedback multiuser detector for synchronous codedivision multipleaccess channel”, IEEE Trans. on Communications, vol. 41, no. 2, pp. 285290, February 1993.

[0533]
12. A. Klein, G. K. Kaleh, and P. W. Baier, “Zero forcing and minimum meansquareerror equalization for multiuser detection in codedivision multipleaccess channels”, IEEE Trans. on Vehicular Technology, vol. 45, no. 2, pp. 276287, May 1996.

[0534]
13. S. Affes and P. Mermelstein, “A new receiver structure for asynchronous CDMA: STAR—the spatiotemporal arrayreceiver”, IEEE Journal on Selected Areas in Communications, vol. 16, no. 8, pp. 14111422, October 1998.

[0535]
14. S. Affes, S. Gazor, and Y. Grenier, “An algorithm for multisource beamforming and multitarget tracking”, IEEE Trans. on Signal Processing, vol. 44, no. 6, pp. 15121522, June 1996.

[0536]
15. P. Patel and J. Holtzman, “Analysis of a simple successive interference cancellation scheme in a DS/CDMA system”, IEEE Journal on Selected Areas in Communications, vol. 12, no. 5, pp. 796807, June 1994.

[0537]
16. J. Choi, “Partial decorrelating detection for DSCDMA systems”, Proceedings of IEEE PIMRC '99, Osaka, Japan, vol. 1, pp. 6064, Sep. 1215, 1999.

[0538]
17. S. Affes and P. Mermelstein, “Signal Processing Improvements for Smart Antenna Signals in IS95 CDMA”, Proceedings of IEEE PIMRC '98, Boston, U.S.A., Vol. II, pp. 967972, Sep. 811, 1998.

[0539]
18. S. Affes and P. Mermelstein, “Performance of a CDMA beamforming arrayreceiver in spatiallycorrelated Rayleighfading multipath”, Proc. of IEEE VTC'99, Houston, USA, May 1620, 1999.

[0540]
19. H. Hansen, S. Affes and P. Mermelstein, “A beamformer for CDMA with enhanced nearfar resistance”, Proc. of IEEE ICC'99, Vancouver, Canada, Vol. 3, pp. 15831587, Jun. 610, 1999.

[0541]
20. K. Cheikhrouhou, S. Affes, and P. Mermelstein, “Impact of synchronization on receiver performance in wideband CDMA networks”, Proc. of 34th Asilomar Conference on Signals, and Computers, Pacific Grove, USA, to appear, Oct. 29Nov. 1, 2000.

[0542]
21. S. Affes, A. Louzi, N. Kandil, and P. Mermelstein, “A High Capacity CDMA ArrayReceiver Requiring Reduced Pilot Power”, Proc. IEEE GLOBECOM'2000, San Francisco, USA, vol. 2, pp. 910916, Nov. 27Dec. 1, 2000.

[0543]
22. S. Affes, H. Hansen, and P. Mermelstein, “Interference subspace rejection in wideband CDMA—part I: Modes for mixed power operation”, submitted to JSAC, October 2000.

[0544]
23. H. Hansen, S. Affes, and P. Mermelstein, “Interference subspace rejection in wideband CDMA—part II: Modes for high datarate operation”, submitted to JSAC, October 2000.

[0545]
24. E. H. Dinan and B. Jabbari, “Spreading codes for direct sequence CDMA and wideband CDMA cellular networks”, IEEE Communications Magazine, vol. 36, no. 9, pp. 4854, September 1998.

[0546]
25. R. Lupas and S. Verdu, “Nearfar resistance of multiuser detectors in asynchronous channels”, IEEE Trans. on Communications, vol 38, no. 4, pp.496508, April 1990.

[0547]
26. A. DuelHallen, “A family of multiuser decisionfeedback detectors for asynchronous codedivision multipleaccess channels”, IEEE Trans. on Communications, vol. 43, no. 5, pp. 796807, June 1994.

[0548]
27. C. Schlegel, P. Alexander, and S. Roy, “Coded asynchronous CDMA and its efficient detection”, IEEE Trans. on Information Theory, vol. 44, no. 7, pp. 28372847, November 1998.

[0549]
28. L. K. Rasmussen, T. J. Lim, and A. L. Johansson, “A matrixalgebraic approach to successive interference cancellation in CDMA”, IEEE Trans. on Communications, vol. 48, no. 1, pp. 145151, January 2000.

[0550]
29. M. Latvaaho and M. J. Juntti, “LMMSE detection for DSCDMA systems in fading channels”, IEEE Trans. on Communications, vol. 48, no. 2, pp. 194199, February 2000.

[0551]
30. S. Affes, H. Hansen, and P. Mermelstein, “NearFar Resistant SingleUser Channel Identification by Interference Subspace Rejection in Wideband CDMA”, Proc. of IEEE Signal Processing Workshop on Signal Processing Advances in Wireless Communications SPAWC'01, Taoyuan, Taiwan, to appear, Mar. 2023, 2001.

[0552]
31. S. Affes, A. Saadi, and P. Mermelstein, “PilotAssisted STAR for Increased Capacity and Coverage on the Downlink of Wideband CDMA Networks”, Proc. of IEEE Signal Processing Workshop on Signal Processing Advances in Wireless Communications SPAWC'01, Taoyuan, Taiwan, to appear, Mar. 2023, 2001.