# Patent

## Title
Decoding techniques for multi-antenna systems

## Abstract

In one embodiment, a wireless device for a wireless data communication system including the wireless device and a base station. The base station includes a plurality of first groups and a signal-processing unit. Each first group includes a receiver and at least one antenna connected to the receiver. The signal-processing unit includes memory and a processor adapted to process signals received by the first groups using a Maximum Likelihood Detection (MLD) method. The wireless device includes a plurality of second groups, each second group adapted to transmit a wireless signal to at least one first group via a corresponding communication channel. Each second group further includes a transmitter and at least one antenna connected to the transmitter. The signal-processing unit is adapted to store, in the memory, information corresponding to one or more transfer functions, each transfer function corresponding to transmission of a wireless signal from an antenna of the second groups to an antenna of the first groups. The transmitters and receivers are adapted to operate at essentially the same frequency or frequency band. Two or more of the communication channels are generated simultaneously. Each transmitter is adapted to modulate an information signal on a radio-frequency signal according to a Quadrature Amplitude Modulation (QAM) method to transmit QAM symbols. Each receiver is adapted to demodulate information signals from a received radio-frequency signal according to the QAM method.

## Background
CROSS-REFERENCE TO RELATED APPLICATION
The instant application is a continuation application of U.S. application Ser. No. 11/588,986, filed Oct. 27, 2006 (now issued as U.S. Pat. No. 7,515,659), which is a continuation application of U.S. application Ser. No. 11/195,184, filed Aug. 2, 2005 (now issued as U.S. Pat. No. 7,180,954), which is a continuation application of U.S. application Ser. No. 09/848,882, filed May 4, 2001 (now issued as U.S. Pat. No. 6,968,013), assigned to the assignee of the instant invention, and the disclosure therein is hereby incorporated by reference into the instant application.


BACKGROUND OF THE INVENTION
The invention relates to a wireless radiofrequency data communication system comprising: a base-station comprising N first groups and a signal processing-unit comprising memory means and processing means, wherein each first group comprises a receiver-unit provided with a receiver and at least one antenna which is connected to the receiver-unit, wherein the signal processing-unit is connected with each of the first groups for processing receive-signals generated by each of the first groups, and M second groups for transmitting radiofrequency signals to the first groups, wherein each second group comprises a transmitter-unit provided with a transmitter and at least one antenna which is connected to the transmitter-unit, wherein the memory means of the signal processing-unit are provided with information about the transfer-functions of radiofrequency signals from each of the antennas of the second groups to each of the antennas of the first groups, and wherein the transmitters and receivers operate on essentially the same radiofrequency or radiofrequency-band.
Wireless radiofrequency data communication systems of this type are known and find their applications in a variety of fields. An example of such an application can be found in the domain of digital communication for electronic-mail. In this application, each personal computer can be provided with at least one second set so that the personal computer can be incorporated in an network. The base-station may in that case be connected with a server of the network. Further examples are given, for instance, in the domain of mobile telephony. In the case of mobile telephony, the base-station is a telephony exchange. In the majority of the applications, more than one second set wants to communicate with the base-station. This means that the second group transmits signals to this base-station and also receives signals from this base-station. Since it would not be acceptable if all second groups would have to wait for each other's communication to be finished, there is a need for simultaneous communication. Simultaneous communication allows more second groups to communicate at the same time with the base-station. A straightforward and common way of realising simultaneous communication is to assign different radiofrequencies to the respective second groups. In this way, all data signals can be separated easily by the first groups in the base-station by frequency-selective filters. Furthermore, the base-station can communicate with each second group at the specific radiofrequency that has been assigned to the second group. A transmitted radiofrequency signal contains the actual information to be transmitted to the receiver. This actual information has been modulated on the radiofrequency carrier-signal. Several techniques have been developed for modulating information on the carrier-signal like frequency-modulation, phase-modulation, amplitude-modulation, et cetera.
A radiofrequency signal that is transmitted by a second group travels from the antenna of the second group along so-called travel-paths to the antennas of the first groups. During the travelling, depending of the specific travel-path, the radiofrequency signal is attenuated and also a phase-distortion is incurred on the radiofrequency signal. The phase-distortion of the radiofrequency signal can be corrected by the signal processing-unit in the base-station on the basis of the information about the transfer-functions. This can be of special interest if information is modulated on the radio-frequency signal according to a phase-modulation technique.
SUMMARY OF THE INVENTION
In an embodiment of the invention, a detection system increases the communication capacity of the wireless communication system per frequency or frequency-band used by the system. The embodiment increases the data communication capacity from the second groups to the first groups by creating multiple separate simultaneous data communication channels. This embodiment provides a detection system comprising M simultaneous separated communication signals for which the number N of first groups may be less than, equal to, or greater than the number M of second groups.
The present invention provides a wireless radiofrequency data communication system which is characterised in that the signal processing-unit is arranged to process, in use, the receive-signals on the basis of a Maximum Likelihood Detection method, such that, for each second group of the second groups, an individual communication channel is formed with the base-station, wherein these communication channels are generated simultaneously and separately from each other.
In this manner, multiple communication channels are realised on the same frequency, or within the same frequency-band, based on the principle that the signals can be separated thanks to the different characteristics of the transfer-functions. Due to the Maximum Likelihood detection technique, this holds for the cases wherein the number N of first groups is greater than, equal to, or less than the number M of second groups. Hence, the data communication capacity per frequency or frequency-band is indeed increased. The geometry of the configuration of the communication system determines the transfer functions that belong to the different travel-paths between the antennas of the first groups and the second groups in the base-station. These transfer functions are expressed by complex numbers. Each complex number expresses the transfer function between one antenna of one of the first groups and one antenna of the second group. The amplitude of the complex number is the attenuation of the signal's strength and the phase of the complex number is the phase modulation incurred during transmission along the travel-path. Since the used frequencies are relatively high, the transfer functions depend largely on the configuration.
An embodiment according to the invention is characterised in that each transmitter comprises means for modulating an information signal on a radiofrequency signal according to the Quadrature Amplitude Modulation (QAM) method, wherein so-called QAM-symbols are transmitted, and that each receiver comprises means for demodulating information signals from a received radiofrequency signal.
The Quadrature Amplitude Modulation is an amplitude- and/or phase-modulation technique in which information in binary format is modulated on a radiofrequency signal.
In a favourable embodiment of the invention, the wireless communication system is characterised in that the signal processing-unit is arranged to calculate, in use, a detection signal xDET according to

xDET=argover setmin(∥r−HxpSET∥),  (I)

where argover set min(∥ . . . ∥) is a function which, according to (I), yields that vector xDET out of a set XSET of P vectors xpSET (p=1, . . . , P) for which the length ∥r−H xpSET∥ of the complex N-dimensional vector r−H xpSET is minimal, wherein r is a complex N-dimensional vector [r1, . . . , ri, . . . , rN]T with ri being the signal received by the ith first group of the N first groups, H is a complex [N×M] matrix containing transfer-functions him (i=1, . . . , N; m=1, . . . , M), wherein him is the transfer-function for transmission from the mth second group of the M second groups to the ith first group of the N first groups, and where xpSET is the pth complex M-dimensional vector [xpSET, 1, . . . , xpSET, m, . . . , xpSET, M]T of the set XSET, wherein the vectors xpSET in the set XSET contain possible combinations of values which can be assigned by the second groups to an information signal x, where x is a M-dimensional vector [x1, . . . , xm, . . . , xM]T with xm being the information signal transmitted by the mth second group of the M second groups to the first groups and where xm is one individual communication signal. Equation (I) is based on the model

r=Hx+n,  (II)

where n is a complex N-dimensional noise vector [n1, . . . , ni, . . . nN]T containing noise terms picked up during reception. The model (II) gives the relation between the transmitted signal x=[x1, . . . , xm, . . . , xM]T and the received signal r=[r1, . . . , ri, . . . , rN]T in the base-station. The detection method according to the invention tries to match a fixed number of possible combinations of values for x in the equation (I). These possible value combinations are the vectors xpSET, (p=1, . . . , P), which all together constitute the set XSET. The detection signal xDET is that vector xpSET in the set XSET which minimizes the length of the vector r−H xpSET.

In a further embodiment the wireless radiofrequency data communication system is characterised in that the processing unit is arranged to apply, in use, the following approximation (III) in the calculation of (I)

∥r−H xpSET∥=Σi=1, . . . , N(∥Real([r−HxpSET]i)∥+∥Im([r−HxpSET]i)∥),  (III)

wherein Σi=1, . . . , N( . . . ) is a summation over the index i from 1 to N over the argument (∥Real([r−H xpSET]i)∥+ ∥Im([r−H xpSET]i)∥), where ∥(.)∥ yields the absolute value of its input argument and where Real( . . . ) is a function which, in equation (III), yields the real part of its complex argument [r−H xpSET]i, with [r−H xpSET]i being the ith component of the complex N-dimensional vector r−H xpSET, and where Im( . . . ) is a function which, in equation (III), yields the imaginary part of its complex argument [r−H xpSET]i.

The expression (III) offers a valuable approximation and simplification for the evaluation of equation (I).

An embodiment of the invention which is of special interest is a wireless radiofrequency data communication system characterised in that the set XSET comprises all possible combinations of values which can be assigned to the signal x by the second groups.
In a preferred embodiment of the invention the wireless radiofrequency data communication system is characterised in that the signal processing-unit is arranged to find, in use, the detection signal xDET according to a Reduced Search Technique wherein a search-tree is passed through according to the following steps 1 to 7:

    
    
        Step 1: calculate the lengths of the complex vectors v corresponding to all combinations of possible values which can be assigned to [x1, . . . , xL], wherein v is given by

v=(r−Σi=1, . . . , Lhi*xpSET,i),  (IV)

where Σi=1, . . . , L( . . . ) is a summation over the index i from 1 to L over the complex argument [hi*xpSET, i] and where hi is the ith column [h1,i, . . . , hN,i]T of the matrix H;

        Step 2: select the K combinations of values for [xpSET, 1, . . . , xpSET, L] corresponding to the K smallest lengths of v as well as the K vectors v itself and set m=L+1;
        Step 3: calculate the lengths of the C*K new vectors v given by

v=vold−hm*xpSET,m,  (V)

where vold is one of the K vectors v resulting from the preceding step and where hm is the mth column of H;

        Step 4: select those K combinations of values for [xpSET, 1, . . . , xpSET, m] that correspond to the K smallest lengths of v as well as the K vectors v itself and set m=mold+1, where mold is m from the preceding step;
        Step 5: if m<M then go to Step 3, else go to step 6;
        Step 6: calculate the lengths of the C*K new vectors v given by

v=vold−hM*xpSET,M,  (VI)

        Step 7: the detection signal xDET is determined as that combination of values xDET=[xpSET, 1, . . . , xpSET, M] which corresponds to the vector v with the smallest length,

wherein K and L are predetermined fixed integer values which control the size P of the set XSET and wherein the constellation size C of the system is the number of values xpSET, m which can be assigned by one of the second groups to one component xm (m=1, . . . , M) of x and where vold is one of the K vectors v resulting from Step 3, the calculated detection signal xDET is the combination of values xpSET corresponding to the smallest vector v. In this manner the requisite number of calculations for obtaining the detection signal xDET is known on beforehand, since the number P of vectors in the set XSET is pre-determined by selecting values for K and L.

    
    


An alternative embodiment according to the invention is characterised in that the signal processing-unit is arranged to find, in use, the detection signal xDET according to a Reduced Search Technique wherein a search-tree is passed through according to the following steps 1 to 7:

    
    
        Step 1: calculate the values of the lengths of the C vectors v according to the C possible values xpSET, 1 

v=(r−h1*xpSET,1),  (VII)

wherein h1 is the first column of H;

        Step 2: select those combinations of values for xpSET, 1 for which the lengths of v are smaller than T, as well as the corresponding vectors v and set m=2;
        Step 3: calculate the lengths of the new vectors v given by

v=vold−hm*xpSET, m,   (VIII)

wherein vold is one of the vectors v resulting from the preceding step and where hm is the mth column of H, and adjust the threshold T;

        Step 4: select those combinations of values for [xpSET, 1, . . . , xpSET, m] for which v is smaller than T, discard the other combinations and set m=mold+1, where mold is m from the preceding step;
        Step 5: if m<M then go to Step 3, else go to step 6,
        Step 6: calculate the lengths of the new vectors v given by

v=vold−hM*xpSET, M,   (IX)

        Step 7: the detection signal xDET is determined as that combination of values xDET=[xpSET, 1, . . . , xpSET, M] which corresponds to the vector v with the smallest length, wherein T is a predetermined fixed threshold value which controls the size P of the set XSET and wherein the constellation size C of the system is the number of values xpSET, m which can be assigned by one of the second groups to one component xm (m=1, . . . , M) of x, and wherein vold is one of the vectors v resulting from step 3, the calculated detection signal xDET is the combination of values xpSET corresponding to the smallest vector v. In this embodiment the number of requisite calculations for obtaining the detection signal xDET is not known beforehand since the number of vectors v which are selected in the respective steps 2 and 4 may vary from step-to-step, depending on the adjusted value for the threshold T and the noise n in the signal r.
    
    


A further embodiment of the wireless radiofequency data communication system according to the invention is characterised in that the signal processing-unit is arranged to find, in use, the detection signal xDET according to a Reduced Search Technique which also comprises the following steps:

    
    
        Step A1: calculate an inner product z of the vector r with the uth column hu of the matrix H, where u is an integer 1≦u≦M, according to:

z=h*ur,  (X)

where h*u is the complex conjugated and transposed of hu;

        Step A2: calculate CM−1 terms Interf corresponding to all possible value combinations which can be assigned to [x1, . . . , xu−1, xu+1, . . . , xM], wherein the terms Interf are defined according to:

Interf=Σ(i=1, . . . , M^i≠u)xi*(h*u*hj),  (XI)

wherein Σ(i=1, . . . , M^i≠u) is a summation over the index i from 1 to M with the exception of the integer u;

        Step A3: estimate, on the basis of the equations (X), (XI) and z′ according to:

z′=Interf+xu*(h*u*hu),  (XII)

where z′ is an approximation of z, the value for xu corresponding to each of the value combinations [x1, . . . , xu−1, xu+1, . . . , xM], and constitute a test

set XSET comprising CM−1 vectors xpSET, wherein each vector

xpSET represents a value combination

[x1, . . . , xu−1, xu, xu+1, . . . , xM];

        Step A4: determine the detection signal xDET according to equation (I), wherein the test set is defined with the CM−1 vectors xpSET from the preceding step.
    
    


In an embodiment of the wireless radiofrequency data communication system according to the invention the multiple N of first groups exceeds the multiple M of second groups.
In another embodiment of the wireless radiofrequency data communication system according to the invention the multiple N of first groups is less than the multiple M of second groups.
In still another embodiment of the wireless radiofrequency data communication system according to the invention the multiple N of first groups is equal to the multiple M of second groups.



BRIEF DESCRIPTION OF THE DRAWINGS
In the accompanying drawings, in which certain modes of carrying out the present invention are shown for illustrative purposes:
FIG. 1 is a diagram schematically showing a wireless data communication system according to the invention;
FIG. 2 is a diagram illustrating the use of Quadrature Amplitude Modulation (QAM) symbols by the wireless data communication system of FIG. 1.
FIG. 3 is a diagram illustrating the use of Quadrature Amplitude Modulation (QAM) symbols by a wireless data communication system which contains three first groups and two second groups.
FIG. 4 is a diagram illustrating the use of Quadrature Amplitude Modulation (QAM) symbols by a wireless data communication system which contains one first group and two second groups.
FIG. 5 is a diagram showing a search tree for illustrating the principle of Reduced Search Techniques in an embodiment of a wireless data communication system according to the invention.



DETAILED DESCRIPTION
An embodiment of a wireless radiofrequency data communication system according to the invention is shown in FIG. 1. This wireless radiofrequency data communication system comprises a base-station 2 which comprises a signal processing-unit 4 and multiple first groups 6.i (i=1, 2, . . . , N). Each first group 6.i comprises a receiver-unit 10.i provided with a receiver, and at least one antenna 12.i which is connected to the receiver-unit 10.i. In this example each first group 6.i comprises one antenna 12.i connected to the receiver-unit 10.i. The signal processing-unit 4 is at one side connected to each of the first groups 6.i, i=1, 2, . . . , N, and at another side connected to each of the coding/decoding-units 14.m, m=1, 2, . . . , M. Furthermore, the system comprises multiple second groups 16.m (m=1, 2, . . . , M), wherein each second group 16.m comprises at least a transmitter-unit 18.m and at least one antenna 20.m which is connected to said transmit-unit 18.m. Each of the second groups 16.m is connected with a coding/decoding-unit 22.m, m=1, 2, . . . , M.
In the configuration of FIG. 1 the second groups can belong to mobile communication stations. An example of this is the situation wherein notebooks are provided with at least one second group. In this situation the notebooks can communicate via the second groups to the base-station. The base-station can be an internet and/or an intranet server. In general the number M of second groups will vary during the operation of the base-station.
The second groups 16.m (m=1, 2, . . . , M) can simultaneously transmit radiofrequency signals on essentially the same radiofrequency or radiofrequency-band to the first groups 6.i. The radiofrequency signal which is transmitted from the second group 16.m travels from this second group along travel-paths Tim (i=1, 2, . . . , N) to the respective first groups 6.i (i=1, 2, . . . , M). The travel-path Tim is the travel-path from the second group 16.m to the first group 6.i. For each travel-path Tim a transfer-function can be defined which is expressed with a complex number him. The amplitude of the him is the attenuation of the signal's strength and the phase of him is the phase modulation incurred during transmission along the travel-path. The processing-unit 4 comprises memory means provided with information about the transfer-functions of radiofrequency signals along said travel-paths. Furthermore the processing-unit 4 comprises processing means for processing receive-signals generated by each of the first groups.
In FIG. 1 a radiofrequency transmission signal xRFm is generated by the second group 16.m and transmitted to the first groups 6.i (i=1, . . . , N). The generation of this radiofrequency transmission signal is as follows. The input to the coding/decoding-unit 22.m is a so-called Quadrature Amplitude Modulated symbol (short: QAM-symbol). This QAM-symbol is expressed as a complex number (an example of such a complex number is: 1+2j, where the real part of the QAM-symbol is 1 and the complex part is 2). Said QAM-symbol is modulated by the coding/decoding-unit 22.m on a low-frequency signal, which yields xm. This data-signal xm is the input of the transmit-unit 18.m, which transmit-unit modulates xm on a radiofrequency signal yielding the radiofrequency signal xRFm. The radiofrequency signal xRFm is transmitted by the antenna 20.m to the first groups.
Each first group 6.i, i=1, . . . , N receives a radiofrequency signal rRFi in the antenna 12.1. This signal rRFi is a result of the interference of all transmitted signals xRFm, m=1, . . . , M. The signal rRFi is demodulated by the receiver-unit 10.i to a low-frequency receive-signal ri which contains the modulated information of data-signal xm. The N receive-signals ri, i=1, . . . , N are fed to the input of the signal processing-unit 4. The signal processing unit 4 calculates M output signals xi,DET, i=1, . . . , M. Each output signal xi,DET is an estimation for the data-signal xi. The detection signal xi,DET is inputted to the coding/decoding-unit 14.i, i=1, . . . , M, which unit generates the QAM-symbol ci,DET. This QAM-symbol is an estimation for the QAM-symbol ci.
The operation of the signal processing unit 4 will now be elucidated on the basis of a mathematical framework. The relation between the data-signals xm, m=1, . . . , M and the receive-signals ri, i=1, . . . , N is given with the following vector equation:

r=Hx+n,  (XIII)

where r is a N-dimensional complex vector [r1, . . . , ri, . . . , rN]T, where H is a complex [N×M]-matrix containing the transfer-functions him, (i=1, . . . , N; m=1, . . . , M) and wherein x is a M-dimensional complex vector [x1, . . . , xm, . . . , xM]T. The noise vector n is a N-dimensional complex vector [n1, . . . , ni, . . . , nN]T, with ni being the noise term picked up during reception of the signal rRFi. The signal processing unit 4 calculates detection signals xDET=[x1,DET, . . . , xM,DET]T which are estimations for the data-signals x. These calculations are performed according to a Maximum Likelihood method. It has to be noted here that the detection signals are sometimes called Maximum Likelihood signals. One important aspect of the Maximum Likelihood approach is that use is made of the knowledge that the QAM-symbol cm, m=1, . . . , M can only take on a limited number of values. This number is called the constellation size C of the second group. So, the data-signal xm for a particular m can only take on C different values. This implies that the total number of possible different value combinations of the data-vector x is CM. All these CM different value combinations together constitute the test set XSET, wherein the pth element of the set is a value combination which is a complex M-dimensional vector xpSET. This implies that the signal processing unit can calculate a detection signal by trying to match all elements of the set and choosing the best fit according to (XIII). In order to save processing time, it is also possible to match only the elements of a subset of the set. For the latter approach, several reduced search techniques are developed according to different embodiments of the invention. The detection signals that are found by matching elements of the set are called Maximum Likelihood signals.

The signal processing-unit 4 can find the Maximum Likelihood detection signal in particular according to the following algorithm. This algorithm will be described in mathematical terms. The detection signals xDET are calculated by the signal-processing-unit 4 according to

xDET=argover setmin(∥r−H xpSET∥),  (XIV)

where argover set min(∥ . . . ∥) is a function which, according to (XIV), yields that vector xDET out of a set XSET of P vectors xpSET(p=1, . . . , P) for which the length ∥r−H xpSET∥ of the complex N-dimensional vector r−H xpSET is minimal and where xpSET is the pth complex M-dimensional vector [xpSET, 1, . . . , xpSET, m, . . . , xpSET, M]T of the set XSET, wherein the vectors xpSET in the set XSET contain possible combinations of values which can be assigned by the second groups to an information signal x, where xm is one individual communication signal. Since the data-signals xm, m=1, . . . , M, are transmitted simultaneously, each detection signal xm,DET results in the generation of one of M simultaneous data communication signals.

The principle of a Maximum Likelihood Detection method will now be illustrated with the schematic of FIG. 2. This figure shows QAM-symbols cm, m=1, . . . , M, which are the possible inputs to the coding/decoding units 22.m. The QAM-symbol cm is marked with a * 26.1 and equals (−1+j). Each diagram 24.m contains a QAM-symbol cm which can take on 4 different values. These possible values are marked with 0 28.m. The actual possible values for the QAM-symbols are (1+j), (−1+j), (1−j), and (−1−j). Thus here the constellation size C of the second groups is C=4. As explained previously, the QAM-symbols are the information that is modulated on the corresponding data signal xm. However, from a mathematical point of view, the QAM-symbols are identical to the signals xm. So, the value of the low-frequency signal x1 in the example of FIG. 2 is (−1+j) and the value of xM is (1−j). The transmission and the subsequent reception of the QAM-symbols to the first groups 6.i takes place via radiofrequency carrier signals. The mathematical formulation of this transmission is a transformation of the vector x with the matrix H and an addition of noise n, see equation (XIII). This is illustrated with the transformation block 30 which contains M input-signals xm, m=1, . . . , M, and N output-signals ri, i=1, . . . , N. The values of the output signals ri, i=1, . . . , N are represented with * marks 34.i in the diagrams 32.i. Each diagram 32.i contains one received component ri of r. As a consequence of the time-varying nature of H and as a consequence of noise the values of ri will generally vary, even if the QAM-symbols cm would have continuously constant values. Now the signal processing unit 4 calculates the transformation of all possible value combinations in the test set (or a subset of the test set) of the QAM-symbols, in order to try these elements in (XIV), according to:

rpSP=HxpSET, p=1, . . . , P.  (XV)

The complete test set comprises P=CM combinations (but, for a subset of the test set, P<=CM). Equation (XV) yields possible receive-signals in the situation of absence of noise. These signals are indicated with 0 marks 36.i in the diagrams 32.i. Finally, the Maximum Likelihood solution is that value combination xpSET in the test set, which corresponds to the 0 marks of its components, for which the value

∥r−rpSP∥,  (XVI)

is minimal. In the case in which the vectors r and rpSP comprise only one component, the Maximum Likelihood solution is found with the 0 in diagram 32.1 which is closest to the *.

FIG. 3 gives a more detailed example of a wireless data communication system according to the invention, where the number of first groups N=3, the number of second groups M=2, and the constellation size C=2. In total, there are 4 possible value combinations which can be assigned to the data-signals x. In this example, the data-signal [26.1, 26.2] is x=[(0+j), (0+j)]T. Since the number of first groups is greater than the number of second groups, a robust communication system, fairly insensitive to noise, is realised. The possible values for the components of the data-signals x are schematically indicated with 0 marks 28.1 in the diagrams 24.1 and 24.2 in FIG. 3. The test set comprises all these possible value combinations (P=4), so the test set XSET is given with:

XSET={x1SET; x2SET; x3SET; x4SET},

where:

x1SET=[(0+j),(0+j)]T,

x2SET=[(0−j),(0+j)]T,  (XVII)

x3SET=[(0+j),(0−j)]T,

x4SET=[(0−j),(0−j)]T,

wherein the notation XSET={..;..} means that XSET is the set of all vectors which are enumerated between the brackets {.}. In this case, the matrix H containing the transfer-functions is a complex [3×2]-matrix. The transformation of the elements of the test set XSET (see (XVII)) according to (XV) results in 4 vectors rpSP, each of which has 3 components. The values of the respective components of the vectors rpSP are depicted in the respective diagrams 32.1, 32.2, and 32.2 of FIG. 3 and marked with 0 marks 36.i, i=1, 2, 3. The transformation of the data-signal x according to (XIII) yields the receive signal r. The respective components of this signal are indicated with * marks 34.i in the respective diagrams 32.1, 32.2, and 32.2 of FIG. 3. Note that, despite the relation x=x1SET, the signal r is unequal to r1SP as a consequence of the noise n. The Maximum Likelihood solution is found according to (XIV). Note that 2 simultaneous data communication channels are generated, which channels are the components of the vector x (the first channel is x1 and the second channel is x2).

FIG. 4 gives an example of a wireless data communication system in which there are more second groups (M=2) than first groups (N=1). However, with a detection algorithm according to the invention, the signal processing-unit sometimes can recover the transmitted M-dimensional data-signal x. In this case, the data-signal [26.1, 26.2] is x=[(0+j), (0+j)]T. The constellation size C=2. So, there are 4 possible value combinations which can be assigned to the data-signals x. The possible values for the components of these data-signals are indicated with 0 marks 28.1 in the diagrams 24.1 and 24.2 of FIG. 4. The test set comprises all these possible value combinations (P=4), so the test set XSET is given with (XVII). In this example, the matrix H containing the transfer-functions is a complex [1×2]-matrix:

H=[h11h12]=[h1h2],  (XVIII)

where the column h1 is identical to the scalar h11 and the column h2 is identical to the scalar h12. The transformation of the elements of the test set XSET (see (XVII)) according to (XV) results in 4 scalars rpSP. The values of these 4 scalars rpSP are depicted in the diagram 32.1 of FIG. 4 and marked with 0 marks 36.1. The transformation of the data-signal x according to (XIII) yields the receive signal r. In this example, this signal is also a scalar which is indicated with a * mark 34.1 in the diagram 32.1 of FIG. 4. Note that, despite the relation x=x1SET, the signal r is unequal to r1SP as a consequence of the noise n. The Maximum Likelihood solution is found according to (XIV) and is given with the 0 mark which is closest to the * mark 34.1.

The calculations of the signal processing unit based on the equation (XIV) can be approximated with the following expression in order to save processing time:

∥r−HxpSET∥=Σi=1, . . . , N(∥Real([r−HxpSET]i)∥+∥Im([r−HxpSET]i)∥),  (XIX)

wherein Σi=1, . . . , N( . . . ) is a summation over the index i from 1 to N over the argument (∥Real([r−H xpSET]i)∥+ ∥Im([r−H xpSET]i)∥), where ∥(.)∥ yields the absolute value of its input argument and where Real( . . . ) is a function which, in equation (XIX), yields the real part of its complex argument [r−H xpSET]i, with [r−H xpSET]i being the ith component of the complex N-dimensional vector r−H xpSET, and where Im( . . . ) is a function which, in equation (XIX), yields the imaginary part of its complex argument [r−H xpSET]i.

The signal processing-unit 4 finds the Maximum Likelihood detection signal according to (XIV). With this equation, the detection signal is found by trying to fit elements of the test set XSET. Since the test set comprises CM elements, this can easily lead to a huge amount of processing time. To reduce the processing time, an embodiment of the invention provides an algorithm that can limit the search to a subset of XSET. A first algorithm, which provides an intelligent way of choosing a pre-determined subset of XSET, is given below and is called a Reduced Search Technique. In this Reduced Search technique, a search-tree is passed through according to the following steps 1 to 7:

    
    
        Step 1: calculate the lengths of the complex vectors v corresponding to all combinations of possible values which can be assigned to [x1, . . . , xL]. The vector v is given with

v=(r−Σi=1, . . . , Lhi*xpSET,i),  (XX)

where Σi=1, . . . , L ( . . . ) is a summation over the index i from 1 to L over the complex argument [hi*xpSET, i] and where hi is the ith column [h1,i, . . . , hN,i]T of the matrix H;

        Step 2: Select the K combinations of values for [xpSET, 1, . . . , xpSET, L] corresponding to the K smallest lengths of v as well as the K vectors v itself and set m=L+1;
        Step 3: Calculate the lengths of the C*K new vectors v given by

v=vold−hm*xpSET,m,  (XXI)

where vold is one of the K vectors v resulting from the preceding step and where hm is the mth column of H;

        Step 4: Select those K combinations of values for [xpSET, 1, . . . , xpSET, m] that correspond to the K smallest lengths of v as well as the K vectors v itself and set m=mold+1, where mold is m from the preceding step;
        Step 5: If m<M then go to Step 3, else go to step 6;
        Step 6: Calculate the lengths of the C*K new vectors v given by

v=vold−hM*xpSET,M,  (XXII)

        Step 7: the detection signal xDET is determined as that combination of values xDET=[xpSET, 1, . . . , xpSET, M] which corresponds to the vector v with the smallest length,

wherein K and L are predetermined fixed integer parameters which control the size P of the set XSET and where vold is one of the K vectors v resulting from Step 3, the calculated detection signal xDET is that element of the set XSET for which the vector v is smallest. The principle of this reduced search technique is schematically illustrated in diagram 38 of FIG. 5 (according to the example of FIG. 4). In this example, the pre-determined parameter L=1 and K=4. Furthermore, the constellation size C=2, the number of second groups M=2, the number of first groups N=1, the matrix H is given with (XVIII), and the test set is defined with (XVII). The received vector r is a scalar r. The first stage 40 of the algorithm is to evaluate (XX). This results in principle in four lengths v1, v2, v3, and v4 corresponding to four vectors v (note that in this example v and h1 and h2 are all scalars):

v1=∥r−h1*x1SET,1∥=∥r−h1*j∥

v2=∥r−h1*x2SET,1∥=∥r−h1*(−j)∥

v3=∥r−h1*x3SET,1∥=∥r−h1*j∥=v1  (XXIII)

v4=∥r−h1*x4SET,1∥=∥r−h1*(−j)∥=v2.

These values v1 and v2 are shown in FIG. 5 in Step 1 of the algorithm 42. According to Step 2 both values v1 and v2 are selected. Hereafter, in Step 3, and in Step 4, the lengths of 4 new vectors v are calculated. These 4 new lengths are:

v1=∥r−h1*j h2*j i∥

v2=∥r−h1*(−j)−h2*j∥

v3=∥r−h1*j−h2*(−j)∥  (XXIV)

v4=∥r−h1*(−j)−h2*(−j)∥.

These four lengths 44 are depicted in FIG. 5. From Step 5 of the algorithm, a jump is made to Step 6. Finally, in Step 6 the calculation of the Maximum Likelihood detection signal is finished. In this case, the detection signal equals the test vector x4SET: xDET=x4SET. In the algorithm stated above, the processing load of the signal processing-unit 4 is known beforehand and can be controlled with the parameters K and L. It is important to note that the detection signal comprises two components whereas the receive-signal r comprises only one component. So, in principle two separate simultaneous communication channels are formed. This example shows an important aspect of the nature of the detection algorithm according to certain embodiments of the invention, namely that the number of receivers may be less than the number of transmitters, and thus the number of receivers may also be less than the number of simultaneous communication channels.

    
    


In another embodiment of the wireless data communication system, the signal processing-unit 4 also finds the Maximum Likelihood detection signal according to (XIV). However, in this embodiment, the processing load of the signal processing-unit 4 is not known beforehand. The subset of the test set XSET is controlled with a real value threshold parameter T. The algorithm of this Reduced Search Technique is given below and comprises seven steps:

    
    
        Step 1: Calculate the values of the lengths of the C vectors v according to the C possible values xpSET, 1 

v=(r−h1*xpSET,1).  (XXV)

        Step 2: Select those combinations of values for xpSET, 1 for which the lengths of v are smaller than T, as well as the corresponding vectors v and set m=2;
        Step 3: Calculate the lengths of the new vectors v given by

v=vold−hm*xpSET,m,  (XXVI)

wherein vold is one of the vectors v resulting from the preceding step, and adjust the threshold T;

        Step 4: Select those combinations of values for [xpSET, . . . , xpSET, m] for which v is smaller than T, discard the other combinations and set m=mold+1, where mold is m from the preceding step;
        Step 5: If m<M then go to Step 3, else go to step 6,
    
    


Step 6: Calculate the lengths of the new vectors v given by

v=vold−hM*xpSET,M,  (XXVII)

    
    
        Step 7: the detection signal xDET is determined as that combination of values xDET=[xpSET, 1, . . . , xpSET, M] which corresponds to the vector v with the smallest length, wherein vold is one of the vectors v resulting from step 3. The principle of this algorithm can also be illustrated with FIG. 5. The relevant parameters in the example of FIG. 5 are M=2, N=1, C=2. After the first Step, the 4 vectors v result, the lengths of these vectors are given with (XXIII). Also a pre-determined threshold value T1 46, which is applied in Step 2 is presented in the FIG. 5. As a result of the threshold T1 46, the branch ∥r−h1*j∥ (corresponding to v1 and v3 in (XXIII)) is discarded in the subsequent Steps. This means that only the lengths of the vectors v2 and v4 are calculated in Step 3 of the algorithm. Hereafter the threshold T1 46 is adjusted to the new threshold value T2 48 for the next Step 4. Next, the Steps 4 and 5 are performed, which includes the selection of the smallest vectors v, after which the algorithm jumps to Step 6. Step 6 selects the Maximum Likelihood detection signal between the two remaining test signals x2SET and x4SET. The Maximum Likelihood solution appears to be xDET=x4SET.
    
    


The embodiments of the wireless data communication system comprising the Reduced Search Techniques as described hereinbefore can also be applied with a modification for providing a further reduction in processing time. According to this modification, a number of test vectors in the test set reduced by a factor of C have to be checked out in equation (I). In this modification, the signal processing-unit is arranged to find, in use, the detection signal xDET according to a Reduced Search Technique which also comprises the following steps:

    
    
        Step A1: calculate an inner product z of the vector r with the uth column hu of the matrix H, where u is an integer 1≦u≦M, according to:

z=h*ur,  (XXVIII)

where h*u is the complex conjugated and transposed of hu;

        Step A2: calculate CM−1 terms Interf corresponding to all possible value combinations which can be assigned to [x1, . . . , xu−1, xu+1, . . . , xM], wherein the terms Interf are defined according to:

Interf=Σ(i=1, . . . , M^i≠u)xi*(h*u*hi),  (XXIX)

wherein Σ(i=1, . . . , M^i≠u) is a summation over the index i from 1 to M with the exception of the integer u;

        Step A3: estimate, on the basis of the equations (XXVIII), (XXIX) and z′ according to:

z′=Interf+xu*(h*u*hu),  (XXX)

where z′ is an approximation of z, the value for xu 

corresponding to each of the value combinations

[x1, . . . , xu−1, xu+1, . . . , xM], and constitute a test

set XSET comprising CM−1 vectors xpSET, wherein each vector

xpSET represents a value combination

[x1, . . . , xu−1, xu, xu+1, . . . , xM];

        Step A4: determine the detection signal xDET according to equation (A), wherein the test set is defined with the CM−1 vectors xpSET from the preceding step.

The approximation (XXX) is based on the assumption that the noise n can be neglected.

    
    


In accordance with the provisions of the patent statutes, the present invention has been described in what is considered to represent its preferred embodiments. However, it should be noted that the invention can be practiced otherwise than as specifically illustrated and described without departing from its spirit or scope. For example, the wireless data communication system according to the invention can be used not only for simplex communication (from the second groups to the first groups) but also for duplex data communication (from the second groups to the first groups and vice versa). In the latter case the communication from the first groups to the second groups may or may not be arranged in such a way as to obtain a multiple of simultaneous data communication channels.

## Claims

1. A wireless device for a wireless data communication system comprising the wireless device and a base station, wherein:
the base station comprises:
a plurality of first groups, each first group comprising a receiver and at least one antenna connected to the receiver; and
a signal-processing unit comprising memory and a processor adapted to process signals received by the first groups using a Maximum Likelihood Detection (MLD) method; and

the wireless device comprises a plurality of second groups, wherein:
each second group is adapted to transmit a wireless signal to at least one first group via a corresponding communication channel; and
each second group comprises a transmitter and at least one antenna connected to the transmitter;
the signal-processing unit is adapted to store, in the memory, information corresponding to one or more transfer functions, each transfer function corresponding to transmission of a wireless signal from an antenna of the second groups to an antenna of the first groups;
the transmitters and receivers are adapted to operate at essentially the same frequency or frequency band;
two or more of the communication channels are generated simultaneously;
each transmitter is adapted to modulate an information signal on a radio-frequency signal according to a Quadrature Amplitude Modulation (QAM) method to transmit QAM symbols; and
each receiver is adapted to demodulate information signals from a received radio-frequency signal according to the QAM method; and
the number of transmitters and the number of receivers are unequal.

2. The device of claim 1, wherein, for the MLD method, the signal-processing unit is adapted to:
(a) calculate a first vector length for each of a plurality of complex vectors corresponding to a constellation having a plurality of combinations of possible data values;
(b) select a subset of the combinations based on the first vector lengths calculated in step (a);
(c) calculate, for the first transmitter, a second vector length for each complex vector corresponding to a combination in the subset;
(d) reduce, for each other transmitter, the subset based on the second vector lengths, if there are one or more other transmitters;
(e) calculate, for each other transmitter, a second vector length for each complex vector corresponding to a combination in the reduced subset, if there are one or more other transmitters; and
(f) generate the data based on the combination of possible data values that corresponds to the complex vector having the smallest second vector length in the subset.

3. The device of claim 2, wherein:
the subset of combinations selected in step (b) corresponds to a first specified number of complex vectors having the smallest first vector lengths; and
the reduced subset of combinations selected in step (d) corresponds to a second specified number of complex vectors having the smallest second vector lengths.

4. The device of claim 3, wherein the method is performed with knowledge, prior to the occurrence of step (a), of the number of repetitions of steps (d) and (e) needed to generate the data in step (f).

5. The device of claim 3, wherein the second specified number of complex vectors is less than the first specified number of complex vectors.

6. The device of claim 2, wherein:
the subset of combinations selected in step (b) corresponds to the complex vectors having first vector lengths smaller than a first specified threshold; and
the reduced subset of combinations selected in step (d) corresponds to the complex vectors having second vector lengths smaller than a second specified threshold.

7. The device of claim 6, wherein the method is performed with no knowledge, prior to the occurrence of step (a), of the number of repetitions of steps (d) and (e) needed to generate the data in step (f).

8. The device of claim 6, wherein the second specified threshold is less than the first specified threshold.

9. The device of claim 2, wherein the signal processing unit calculates the subset by:
(i) calculating an inner product of a complex vector representing the one or more received signals with a complex conjugated and transposed column of a matrix containing transfer functions representing transmission between the one or more transmitters and the one or more receivers;
(ii) calculating, based on a summation of the transmitted signals transmitted by all of the transmitters except for the transmitter corresponding to the complex conjugated and transposed column of the matrix, a plurality of terms corresponding to a plurality of combinations of possible data values that can be assigned to the one or more received signals;
(iii) estimating the inner product calculated in step (i) based on the calculations of steps (i) and (ii); and
(iv) deriving, based on the estimated inner product of step (iii), a subset of complex vectors, each of the complex vectors in the subset representing one of the combinations of possible data values that can be assigned to the one or more received signals.

10. A wireless data communication system comprising:
a base station comprising:
a plurality of first groups, each first group comprising a receiver and at least one antenna connected to the receiver; and
a signal-processing unit comprising memory and a processor adapted to process signals received by the first groups using a Maximum Likelihood Detection (MLD) method; and

a wireless device comprising a plurality of second groups, wherein:
each second group is adapted to transmit a wireless signal to at least one first group via a corresponding communication channel;
each second group comprises a transmitter and at least one antenna connected to the transmitter;
the signal-processing unit is adapted to store, in the memory, information corresponding to one or more transfer functions, each transfer function corresponding to transmission of a wireless signal from an antenna of the second groups to an antenna of the first groups;
the transmitters and receivers are adapted to operate at essentially the same frequency or frequency band;
two or more of the communication channels are generated simultaneously;
each transmitter is adapted to modulate an information signal on a radio-frequency signal according to a Quadrature Amplitude Modulation (QAM) method to transmit QAM symbols; and
each receiver is adapted to demodulate information signals from a received radio-frequency signal according to the QAM method; and
the number of transmitters and the number of receivers are unequal.

11. The system of claim 10, wherein, for the MLD method, the signal-processing unit is adapted to:
(a) calculate a first vector length for each of a plurality of complex vectors corresponding to a constellation having a plurality of combinations of possible data values;
(b) select a subset of the combinations based on the first vector lengths calculated in step (a);
(c) calculate, for the first transmitter, a second vector length for each complex vector corresponding to a combination in the subset;
(d) reduce, for each other transmitter, the subset based on the second vector lengths, if there are one or more other transmitters;
(e) calculate, for each other transmitter, a second vector length for each complex vector corresponding to a combination in the reduced subset, if there are one or more other transmitters; and
(f) generate the data based on the combination of possible data values that corresponds to the complex vector having the smallest second vector length in the subset.

12. The system of claim 11, wherein:
the subset of combinations selected in step (b) corresponds to a first specified number of complex vectors having the smallest first vector lengths; and
the reduced subset of combinations selected in step (d) corresponds to a second specified number of complex vectors having the smallest second vector lengths.

13. The system of claim 12, wherein the method is performed with knowledge, prior to the occurrence of step (a), of the number of repetitions of steps (d) and (e) needed to generate the data in step (f).

14. The system of claim 12, wherein the second specified number of complex vectors is less than the first specified number of complex vectors.

15. The system of claim 11, wherein:
the subset of combinations selected in step (b) corresponds to the complex vectors having first vector lengths smaller than a first specified threshold; and
the reduced subset of combinations selected in step (d) corresponds to the complex vectors having second vector lengths smaller than a second specified threshold.

16. The system of claim 15, wherein the method is performed with no knowledge, prior to the occurrence of step (a), of the number of repetitions of steps (d) and (e) needed to generate the data in step (f).

17. The system of claim 15, wherein the second specified threshold is less than the first specified threshold.

18. The system of claim 11, wherein the signal processing unit calculates the subset by:
(i) calculating an inner product of a complex vector representing the one or more received signals with a complex conjugated and transposed column of a matrix containing transfer functions representing transmission between the one or more transmitters and the one or more receivers;
(ii) calculating, based on a summation of the transmitted signals transmitted by all of the transmitters except for the transmitter corresponding to the complex conjugated and transposed column of the matrix, a plurality of terms corresponding to a plurality of combinations of possible data values that can be assigned to the one or more received signals;
(iii) estimating the inner product calculated in step (i) based on the calculations of steps (i) and (ii); and
(iv) deriving, based on the estimated inner product of step (iii), a subset of complex vectors, each of the complex vectors in the subset representing one of the combinations of possible data values that can be assigned to the one or more received signals.