DEVICES FOR TRANSMIITER PATH WEIGHI S AND METHODS THEREFORField of the InventionThe present invention pertains to antenna arrays.
Background of the InventionAntenna arrays have a plurality of antennas used to communicate radio frequency (RF) signals through wireless communication links. Antenna arrays provide improved performance relative to a single antenna by providing a better antenna pattern for a coverage area.
Even with an antenna array to provide an improved antenna pattern,signals communicated between communication devices are subject tointerference. Buildings, hills and other objects produce multipath wavepropagation, and communication devices and energy sources introduce noise,resulting in errors in the signals communicated between communicationdevices.
To reduce these errors, techniques have been developed to optimise thereceive path of a communication device employing an antenna array. Byvarying the weight of the signals detected by each of the individual antennasin the array, it is possible to vary the antenna pattern to better detectsignals from a particular direction or to arrange for non-destructive combination of multipath signals. These techniques adjust the weights of theantenna array signals to maximise the receive path gain by measuring theoutput of a receiver. However, the weights derived for the receive path does not provide optimum weights for the transmit path.Accordingly, it is desirable to provide improved antenna array weights for a transmitter.
Summary of the InventionA communication device includes weight circuits connected between antennas of an antenna array and a transmitter. A controller is coupled to the weight circuits and controls the transmitter to transmit a reference signal through at least one of the antennas and adjusts the weight associated with the at least one of the antennas according to weight information received from another communication device whereby the transmit path can be varied according to reference signal transmitted through the at least one antenna.
Another embodiment of the invention includes a receiving communication device receiving a signal transmitted through each of a plurality of antennas in a transmitting communication device. Circuitry calculates at least one weight for the transmitter path of the other communication device from the reference signal received from each antenna. The at least one weight is communicated to the other communication device.
A method of operating the transmitting communication device is also disclosed. A method of operating the receiving communication device is also disclosed.
Brief Description of the Drawmgs FIG. 1 is a circuit schematic in block diagram form illustrating a communication system including a communication device having an antenna array.
FIG. 2 is a circuit schematic in block diagram form similar to FIG. I but illustrating in greater detail the transmit path weight circuits for the transmission path of FIG. 1.
FIG. 3 is a flow chart illustrating a method of setting the transmit path gains in a communication device having an antenna array.
FIG. 4 is a flow chart illustrating a method of setting the transmit pathgains in a communication device having an antenna array.
FIG. 5 is a flow chart illustrating a method of operating a communicationdevice in communication with a communication device operating according to FIG. 4.
FIG. 6 is a signal diagram for signals transmitted between communication devices.
FIG. 7 is a circuit schematic in block diagram form illustrating a communication system including two communication devices havingantenna arrays.
FIG. 8 is a circuit diagram illustrating a controller for use in acommunication device having an equaliser in the receive path.
FIG. 9 is a circuit diagram illustrating an alternate controller for use in acommunication device having an equaliser in the receive path FIG. 10 illustrates the performance of the system of FIG. 8 with 4 transmitantennas compared to the case with no array for a GSM type system.
FIG. 11 illustrates the performance of the controller method of FIG. 9 compared to that of FIG. 8.
FIG. 12 is a signal diagram illustrating the reference signal when an equaliser is used in the receive path.
Description of the Preferred EmbodimentA communication system 100 (FIG. 1) includes a communication device 101 and a communication device 102 that communicate over communication link 104. Communication device 101 can be a wireless modem (modulatorldemodulator), a cellular radiotelephone, a cordless radiotelephone, a two-way radio, a pager, a base, or any other communication device. The communication device 102 is a complementarycommunication device to communication device 101, and can be a wirelessmodem (modulator/demodulator), a cellular radiotelephone, a cordlessradiotelephone, a two-way radio, a pager, a base, or any othercommunication device. As used herein, "communication device" refers toeach of these and their equivalents.
The communication link 104 is a radio frequency wireless link which may besubject to multipath propagation. Thus, paths P1 and P2 represent twosignal paths between a first antenna 106 of communication device 102 andan antenna 108 of communication device 101. Communication paths P3 and P4 extend between an antenna 110 and antenna 108. Communication paths P5 and P6 extend between an antenna 112 and antenna 108. It will berecognised that the actual number of communication paths between any oneof the antennas 106, 110, and 112 and antenna 108 can be fewer or greaterthan two.
Communication device 101 includes a transmitter 116 and a receiver 118connected to antenna 108. The transmitter 116 and receiver 118 arecontrolled by a controller 120. The transmitter 116 is implemented using anysuitable commercially available transmitter for wireless communications.
The receiver 118 is implemented using any suitable commercially availablereceiver for wireless communications. The controller 120 is implementedusing a microprocessor, a digital signal processor (DSP), a programmablelogic unit (PLU), or the like. The transmitter 116 and the receiver 118 areconnected to antenna 108 to transmit and receive signals via the antenna.
The communication device 102 includes a transmitter 122, a receiver 124and a controller 126. The controller 126 can be implemented using a microprocessor, a digital signal processor, a programmable logic unit, a computeror the like. The controller 126 controls the operation of transmitter 122 andreceiver 124. Transmitter 122 is implemented using any suitablecommercially available transmitter for wireless communications. Thereceiver 124 is implemented using any suitable commercially availablereceiver for wireless communications.
An output of the transmitter 122 is connected to transmit path weight circuits 131, 133 and 135. Each of the transmit path weight circuits is in turn connected to a respective one of antennas 106,110 and 112 via a duplex circuit 113. The transmit path weight circuits weight the signals output by the transmitter according to a control signal received from controller 126.
The signal output by the transmitter can be connected to the transmit path weight circuits 131, 133 and 135 by respective conductors, such that each receives a respective signal, or by a common conductor, such that the transmit path weight circuits all receive the same signal.
The input of the receiver 124 is connected to the output of the receive path weight cuuuits 150, 152 and 154. Each of the receive path weight circuits receives a respective signal from a respective one of the antennas 106,110 and 112 input through duplex circuit 113.
The duplex circuit 113 can be implemented using any suitable duplex device, a switch circuit, a filter, or the like. The duplex circuit 113 connects the antennas to the transmit and receive paths to provide full duplex or half duplex operation.
The transmit path weight circuits 131,133 and 135 are shown in greater detail in FIG. 2. The transmit path weight circuit 131 includes a phase shift circuit 230 and a variable gain amplifier 236. The transmit path weight circuit 133 includes a phase shift circuit 232 and a variable gain amplifier 238. The transmit path weight circuit 135 includes a phase shift circuit 234 and a variable gain amplifier 240. A fixed gain amplifier can be substituted for the variable gain amplifier if the weights only require changes in the phase of the signal. Each of the phase shift circuits 230, 232 and 234 is independently controlled, such that the antennas have independent phase signals input thereto. Each of the amplifiers is controlled independently by controller 126. Other means of adjusting the gain and phase of the signals will be recognised by those skilled in the art. For example, the signal level can be adjusted in a digital signal processor under software control and output through a constant gain amplifier.
The variable gain amplifiers 236, 238 and 240 are each selectively connected through a respective switch 250, 252, and 254 to a respective antenna 106,110, and 112. The switches are connected to controller 126 to receive a transmitlreceive indication signal therefrom. In the transmit mode, the switches are connected as shown in FIG. 2. In the receive mode, the antennas 106,110 and 112 are connected to the receive path weight circuits150, 152 and 154.
The receive path weight circuits 150, 152 and 154 each receive a control signal from controller 126. Each of the receive path weight circuits is individually controlled. The output of the receive path weight circuits 150, 152 and 154 are input to receiver 124. Controller 126 adjusts weighting factors W4, W5 and W6 according to known algorithms. Generally, the controller 126 is responsive to the output of receiver 124 to adjust each of the coefficients W4, W5 and W6 to optimise the receive signal quality. The receive signal path is typically optimised by maximising the received magnitude or power or by masimising an estimate of the ratio of wanted signal to noise plus interference.
Controller 126 generates phase signals for the phase shift circuits 230, 232 and 234, and controls the gain of variable gain amplifiers 236,238 and 240 according to predetermined values stored in a memory 160. The following tables, or "codebook" as used herein, are weights for the transmit paths including three antennas 106, 110 and 112. The gain and phase together with the equivalent complex notation are given. In these examples, a=1/w6 and 1J3. With 16 vectors, the memory 160 stores the following values for the three antennas, with the index, or vector number, on the left column and the weights W1, W2 and W3 for the three transmit path weight circuits 131,133, and 135 in the other columns: TABLE 1
Vector Number w1 (gain,phase) w2 (gain,phase) w3 (gain,phase) 0 α+jα(γ,45 ) -α-jα(γ,-135 ) -α-jα(γ,-135 ) 2 α+jα(γ,45 ) -α-jα(γ,-135 ) α-jα(γ,-45 ) 3 α+jα(γ,45 ) -α-jα(γ,-135 ) α+jα(γ,45 ) 4 α+jα(γ,45 ) -α+jα(γ,135 ) -α-jα(γ,-135 ) 5 α+jα(γ,45 ) -α+jα(γ,135 ) -α+jα(γ,135 ) 6 α+jα(γ,45 ) -α+jα(γ,135 ) α-jα(γ-45 ) 7 α+jα(γ,45 ) -α+jα(γ,135 ) α+jα(γ45 ) 8 α+jα(γ,45 ) α-jα(γ,-45 ) -α-jα(γ,-135 ) 9 α+jα(γ,45 ) α-jα(γ,-45 ) -α+jα(γ,135 ) 10 α+jα(γ,45 ) α-jα(γ,-45 ) α-jα(γ,-45 ) 11 α+jα(γ,45 ) α-jα(γ,-45 ) α+jα(γ,45 ) 12 α+jα(γ,45 ) α+jα(γ,45 ) -α-jα(γ,-135 ) 13 α+jα(γ,45 ) α+jα(γ,45 ) -α+jα(γ,135 ) 14 α+jα(γ,45 ) α+jα(γ,45 ) α-jα(γ,-45 ) 15 α+jα(γ,45 ) α+jα(γ,45 ) α+jα(γ,45 ) This table represents phase shifts only. This means that the phase of the transmit signal will be adjusted and the gain of the variable gain amplifiers 236,238 and 240 will not be adjusted. For digital phase adjustment implementation, the complex baseband digital signal is multiplied by the above complex numbers. Since there are 24 vectors, four bits are required to specify the index to a vector.
A larger table of values can be employed. The following Table 2 provides 31 weight combinations.
TABLE 2
Vector Number w1 (gain,phase) w2 (gain,phase) w3 (gain,phase) 0 α+jα(γ,45 ) -α-jα(γ,-135 ) -α-jα(γ,-135 ) 1 α+jα(γ,45 ) -α-jα(γ,-135 ) -α+jα(γ,135 ) 2 α+jα(γ,45 ) -α-jα(γ,-135 ) α-jα(γ,-45 ) 3 α+jα(γ,45 ) -α-jα(γ,-135 ) α+jα(γ,45 ) 4 α+jα(γ,45 ) -α+jα(γ,135 ) -α-jα(γ,-135 ) 5 α+jα(γ,45 ) -α+jα(γ,135 ) -α+jα(γ,135 ) 6 α+jα(γ,45 ) -α+jα(γ,135 ) α-jα(γ,-45 ) 8 α+jα(γ,45 ) α-jα(γ,-45 ) -α-jα(γ,-135 ) 9 α+jα(γ,45 ) α-jα(γ,-45 ) -α+jα(γ,135 ) 10 α+jα(γ,45 ) α-jα(γ,-45 ) α-jα(γ,-45 ) 11 α+jα(γ,45 ) α-jα(γ,-45 ) α+jα(γ,45 ) 12 α+jα(γ,45 ) α+jα(γ,45 ) -α-jα(γ,-135 ) 13 α+jα(γ,45 ) α+jα(γ,45 ) -α+jα(γ,135 ) 14 α+jα(γ,45 ) α+jα(γ,45 ) α-jα(γ-45 ) 15 α+jα(γ,45 ) α+jα(γ,45 ) α+jα(γ45 ) 16 +j0( ,0 ) +j0( ,0 ) 0+j0(0,0 ) 17 +j0( ,0 ) 0+j ( ,90 ) 0+j0(0,0 ) 18 +j0( ,0 ) - +j0( ,180 ) 0+j0(0,0 ) 19 +j0( ,0 ) 0+j ( ,-90 ) 0+j0(0,0 ) 20 +j0( ,0 ) 0+j0(0,0 ) +j0( ,0 ) 21 +j0( ,0 ) 0+j0(0,0 ) 0+j ( ,90 ) 22 +j0( ,0 ) 0+j0(0,0 ) - +j0( ,180 ) 23 +j0( ,0 ) 0+j0(0,0 ) 0-j ( ,-90 ) 24 0+j0(0,0 ) +j0( ,0 ) +j0( ,0 ) 25 0+j0(0,0 ) +j0( ,0 ) - +j0( ,180 ) 26 0+j0(0,0 ) +j0( ,0 ) 0+j ( ,90 ) 27 0+j0(0,0 ) +j0( ,0 ) 0-j ( ,-90 ) 28 1+j0(γ,0 ) 0+j0(0,0 ) 0+j0(0,0 ) 29 0+j0(0,0 ) 1+j0(γ,0 ) 0+j0(0,0 ) 30 0+j0(0,0 ) 0+j0(0,0 ) 1+j0(γ,0 ) In this table, =1/w2, and the gains and phases are both adjusted with the transmit path to some of the antennas sometimes being completely disabled where the gain values are 0. Five bits (25 different vectors) are required to specify an index to a vector. The tables are provided by way of example, and are not exhaustive. Tables having other sizes can be defined, and different tables with the same number of entries can be used.
Each of the gain and phase values produces a different antenna pattern. By changing the gains of the variable gain amplifier, and the phases, the antenna pattern can be changed. By changing the antenna pattern, the antenna array can provide better performance to remote communication devices located in different geographic locations within the coverage area of a base, or better position a remote communication device to communicate with a base station.
In operation, the controller 126 sets the weights of the transmit path W1,W2, and W3 according to predetermined values upon initially establishing acommunication link with communication device 101, as indicated in block300 (FIG. 3). For example, the initial weights can be the last weights Wi, W2 and W3 from the pervious connection, the initial weights can be the weights corresponding to the antenna pattern having the widest coveragearea, or the weights W4, W5 and W6 calculated for the receive path can beused as the initial weights WI, W2, and W3 for the transmit path. Theantenna weights can set the gains of variable gain amplifiers 236, 238, and240 and the phases of phase shift circuits 230, 232 and 234, or only thephases of the phase shift circuits can be set.
During communication, information packets are transmitted by transmitter122 to communication device 101, as indicated in block 302. The other communication device 101 receives the signals transmitted from transmitter 12ffland transmits back an acknowledgement signal (ACK) or a nonacknowledgement signal (NACK), depending upon whether the signal was received accurately, as is known in the art. Typically a checksum or cyclical redundancy check (CRC) data is transmitted with each information packet.
If the CRC or checksum is not produced from the information packet actually received, the NACK signal is transmitted to receiver 124.
If the controller 126 receives an acknowledgement signal, as detected in block 304, the next information packet is transmitted. If an error signal, such as a NACK, is received from communication device 101, as detected at block 306, the controller 126 selects new antenna weights W1, W2, and W3, in block 308. This changes weights W1-W3 such that the antenna pattern isaltered. The new weights can be the weights associated with the next VectorNumber in the codebook stored in memory 160, as represented in Tables 1 or2.
The controller 126 determines whether the next antenna pattern is one that .was recently subject to an error signal from the other communication device101 (e.g., a NACKwas received from the other communication device when the new antenna weights was last employed), in decision block 310. A predetermined time period can be set in the controller 126. The controller126 will not permit weights to be selected if it was subject to an error signal within this predetermined time period. This prevents the controller 126 from rapidly cycling through patterns when the connection quality is such that none of the weights provides an error free connection.
If an error message was received, the controller 126 controls transmitter 122 to retransmit the information, in decision block 312. The controller 126 then returns to the block 304 to await an acknowledgement signal or an error signal from the other communication device.
It will be recognised that the decision blocks 304 and 306 could be executed by an interrupt initiated by an error signal that occurs during ordinary transmission processes. Thus, buffering of packets, with coding and interleaving between them, as well as modulation and transmission, can be an ongoing process of the communication device 102. Upon detection of an error signal, such as a NACK, the controller 126 interrupts the transmission briefly to change the weights W1, W2 and W3. The transmission process will then resume.
It will also be recognised that the weights W4, W5 and W6 will be adjusted by controller 126 based upon the signals output by receiver 124. Such methods of weighting are well known in the art.
The present invention is particularly advantageous in communication systems where the transmit and receive paths have different frequencies, such as the GSM communication system. In such environments, the weights of the receive path by receive path weight circuits 150, 152 and 154, is not necessarily indicative of the optimum weights for the transmit path by transmit path weight circuits 131, 133 and 135. This is due to propagation delays, interference, and other frequency sensitive phenomena.
Another important consideration is the rate at which the communication devices 101 and 102 are moving relative to one another. If a communication device 101 is travelling rapidly, and the communication device 102 is stationary, the propagation paths P1 - P6 will change quickly. At other times, communication devices 101 and 102 may not be moving relative to one another. This is true in pedestrian situations, which is where a cellular phone user is standing still or walking during a phone call. The paths P1 P6 will change at a slow rate, or not at all, in such pedestrian situations.
One or both of the communication devices 101 and 102 can advantageously determine the rate at which communication devices 101 and 102 are moving relative to one another. For example, Doppler measurements can be used to determine the rate of change. The controller 126 uses the rate of change information to determine whether to change the phase and amplitude settings. More particularly, the present invention is particularly advantageous where the communication devices 101 and 102 are slowly moving or are not moving relative to one another because in these situations the delay in receiving a NACK will cause least detriment to the performance. In these situations, selection of the antenna pattern can have a substantial impact on the performance of the telephone during the call. This is due to the fact that the antenna pattern that will best service the user will not change. Additionally, a bad antenna pattern will likely remain undesirable throughout the call.
In the situation where the communication device 101 is in a vehicle travelling at a high velocity, the weights creating an antenna pattern that best services the communication device 101 may change rapidly.
Accordingly, altering the antenna pattern each time an error signal is received may not result in a substantial improvement in the performance of the communication system 100. Additionally, weights that do not work well one instant may be the best choice seconds later, which could result in rapid switching of weights WI, W2, and W3. The influence of velocity of course depends on the design of the system, in particular the delay between transmission of a packet and receiving a NACKThe memory 160 storing the gain and phase values can store a table of most recently used antenna patterns. Those patterns which resulted in an error indication are preferably not used for a predetermined time period. The predetermined time period is preferably adjustable according to the rate at which the communication devices 101 and 102 are moving relative to one another. Thus, where communication devices 101 and 102 are not moving apart, the time period can be equal to the entire connection time of communication devices 101 and 102. Alternatively, where communication devices 101 and 102 are moving rapidly relative to one another, the time period can be very short, or zero. In any case, the predetermined time periodshould be greater than the correlation time of the channel to prevent reselection of a weight vector which previously resulted in an error and which could still provide poor performance if the channel has not changed much.- An advantage of the above embodiment is that the communication device101 changes the weights without the assistance of other communication devices. Accordingly, the weight adjusting circuit can be implemented in existing systems without having to update existing equipment.
According to anther embodiment, a signal is transmitted by communication device 102 to determine the weights for transmit path weight circuits 131, 133 and 135 where the determining takes place at a communication device 101. This embodiment will now be described with reference to FIGs. 4 and 5. The controller 126 controls the transmitter 122 to generate a reference signal applied to antenna 106, as indicatedin block 400. The reference signal can be a tone or any other suitablesignal.
The reference signal is applied to antenna 106 by controlling the gain ofvariable gain amplifiers 238 and 240 to have a gain of zero andcontrolling variable gain amplifier 236 to have a non zero gain. Thecontroller 126 controls transmitter 122 to output a tone signal toantenna 110, as indicated in block 402. To supply the tone only toantenna 110, only the gain of variable gain amplifier 238 has a non zero value. The controller 126 controls transmitter 122 to output a tone .signal to antenna 112, as indicated in block 404. To supply the tone only to antenna 112, only the gain of variable gain amplifier 240 has a nonzero value.
Thus a predetermined tone is input to each ofthe antennas at differenttimes. Alternately, a different frequency signal can be simultaneouslyinput to each ante received from communication device 101, then the controller 126 selectsthe weights associated with the index from the codebook in memory 160and controls the transmit path weight circuits 131, 133, and 135accordingly.
The operation of the communication device 101 will now be describedwith reference to FIG. 5. The controller 120 receives the referencesignals transmitted via each of antennas 106, 110 and 112 in blocks 500,502 and 504. Although the signals associated with the respectiveantennas 106, 110 and 112 are separated in time, as described abovewith reference to FIG. 4, they could alternately be identified by their .frequency if they have different frequencies, or by their code if they havedifferent codes. The controller 120 thus identifies the reference signaltransmitted by each antenna.
The controller 120 calculates the optimum weights for the transmit path weight circuits 131, 133, and 135 based upon the received signal levelsfor each of the antennas 108, 110 and 112, as indicated in block 506. Theoptimum weight vector can be calculated from the received signal gainand phase. The complex conjugate of the complex representation of theestimated gain and phase from each antenna can be used as the weightfor each antenna. The estimated gain and phase for each antenna isobtained in the controller 120 by correlation of the reference signalreceived with a local copy of the predetermined reference signal storedin controller 120. The result of the correlation between these signalindicates the estimated gain and phase of the transmission path fromeach of antennas 106, 110 and 112.
Alternately, the codebook can be used to choose a preferred weightvector from the candidate list. This can be done by selecting the vectorfrom the codebook that is closest to the optimum weight vector ascalculated from the complex conjugate of the estimated received phaseand gain. Alternatively, the preferred weight vector is chosen tomaximise the received signal power at the receiving communicationdevice.
The weights from the codebook maximising the power can be calculated. As already mentioned, the gain and phase of the reference signal sent from each antenna is estimated in the receiver by correlation with a known local copy of the reference signal originally transmitted. The weight vector is then selected as follows:t = |woTc| index=0 do k=1 to K-1if |wkTc| > t then indext= |wlrTc | end ifend do where the estimated gain and phase of the signal received from the i'th antenna (antenna 1, antenna 2 and antenna 3) is represented in complex notation by ci and the set for all antennas by the vector ; and the k'th weight vector in the predetermined list is fl where there are K vectors in the list stored in memory 160 of communication device 102 and in controller 120 of communication device 101. | I * I represents the magnitude of the complex number *. Also *T represents the transpose of vector or matrix * where the rows and columns are interchanged.
This method multiplies the weights wk of each vector in the index codebook and the weight and gain estimate for each antenna ci, and adds the result to generate a temporary amplitude measurement t for the particular weights.
This is an estimate of the amplitude of the signal which would be received if the particular weights were applied at the transmitter. The index associated with the largest t (the highest estimated amplitude at the receiver) is selected as the optimum weight for the transmit path of communication device 102. The index associated with the optimum weights are then sent back to communication device 102, as indicated in block 508.
Simulations show that the codebook approach requires less capacityoverhead on the downlink than a quantisation approach of the complex conjugated received gain and phase when appropriate normalisation andcandidate vector distributions are used. In addition, the codebookentries can be selected to provides the following benefits. By selectingweights such that sighals are emitted through more than one of theantennas, a single antenna transmit path is not required to pass all ofthe power. This provides a restriction on individual amplifier peakpower requirements for the transmit circuitry in each path providingboth a cost and size benefit relative to a system where it is possible that one of the transmit paths may have to pass all the power.
Additionally, the lookup table, or codebook, can be used to facilitateerror protection coding, such a checksums or CRC information. The errorprotection coding can be saved with the index information, andtransmitted without requiring calculation of the error protection coding.
This reduces the complexity of the transmitter error protection encoding Another advantage of the lookup table is that candidate weight vectorsevaluated at each frame time can be those closest to the weight vectorfor the most recent frame. This reduces the search complexity forpedestrian environments where slow speeds cause the optimum weightvector to change slowly, as the previous weights are likely to remain agood choice. However, the controller can also consider all the weights inthe codebook if the weights closest to the weights of the previousselection are unsatisfactory.
Where the codebook is used, the communication devices 101 and 102must have the same values. This can be accomplished by downloadingthe codebook from one of the communication devices to the othercommunication device. Alternately, another method could be provided toverify that the vector number values are the same in bothcommunication devices.
With reference to FIG. 6, it can be seen that both an information packetand the reference signals are transmitted from communication device102 to communication device 101. The reference signals are sentseparately from each antenna, one after the other. There is a delay fromthe time that the information is processed in communication device 101to calculate the coefficients and the time that the weight vector specifiedin communication device 101 is used by communication device 102. Thecommunication device 102 then transmits an information packet usingthe weights received from the communication device 101.
Each time an information packet is transmitted, the reference signals are communicated from the antennas 106,110 and 112, and newweights calculated for the next packet in communication device 101. Inorder to minimise effects of delay in the feedback system, the referencesignals can be positioned non contiguous with the information packetssuch that the reference signals are closer to the information packet sentby communication device 102 using the coefficients. Alternatively, thereference signals can be positioned in the information packet. Usingeither method to minimise or eliminate the delay helps avoidproblematic communications resulting from changes in the channeloccurring after the reference signals are communicated.
It is also envisioned that the controller 120 can interpolate weights forthe antenna from the weights generated from reference signalstransmitted with two packets of information. By generating thecoefficients from two consecutive, spaced reference signals, changes inthe characteristics of the transmission paths can be taken into accountin determining the best signal pattern.
A transmit mode of a digital cellular telephone system 700 (FIG. 7)includes a first communication device 702 and a second communicationdevice 704. Communication device 702 includes an antenna array 706and communication device 704 includes an antenna array 708. Theantenna arrays are interconnected by a plurality of signal pathsrepresented by P. The communication devices 702 and 704 can be twb way radios, a radiotelephone and a base, or the like.
The communication device 702 includes a controller 714 which outputs speech and data signals as well as control signals to select the weightsW1, W2 and W3 in the transmit path. The speech and data signals are input to a coding and modulation circuit 716. The weight control signals are input to a gain and phase shift circuit 718, which couples the amplitude and phase control signals from controller 714 to variable gain amplifiers 720-722 and phase shift circuits 724-726. The transmission signals are input to phase shift circuits 724-726 via a framing and reference generating circuit 723. The framing and reference generating circuit 723 frames data and speech for transmission and couples reference signals to the phase shift circuits 724-726, one for each of antennas 728-730. Respective base band signals are formed by framing and reference generating circuit 723, one for each antenna, and the appropriate phase shift is applied to each by phase shift circuit 724-726.
The phase shift circuits 724-726 are provided digitally by a multiplier, such that the complex values from the codebook can be multiplied by the output of the framing and reference generating circuit to produce the phase shift. The phase shifted signals are converted to analogue signals in a digital-to-analogue converter circuit 732. The frequency of the analogue signals is increased in an up converter 734-736, and the higher frequency signals are amplified in the variable gain amplifiers 720-722.
The gain of the variable gain amplifiers 720-722 is selected according to the weights for each antenna. Thus, the transmit path weight circuit in the transmit path comprises phase shift circuits 724-726 and variable gain amplifiers 720-722. Although 3 phase shift circuits are shown in this example, in practice it would only be necessary to implement two since the absolute phase does not matter, only the relative phases of the three transmit path weight circuits.
The receive path of communication device 702 includes down converters 740-742 for reducing the frequency of the signals received from antennas 728-730, respectively. The down converted signals are input to an analogueto-digital converter circuit 744, which outputs respective digital signals from each of the signals output by the down converters.
The digital signals are demodulated in a receiver processor 750.
The communication device 704 includes a controller 752 which outputs speech and data signals as well as control signals to select the weightsW1, W2 and W3 in the transmit path. The speech and data signals areinput to a coding and modulation circuit 754. The weight control signalsare input to a gain and phase shift circuit 756, which couples theamplitude and phase control signals from controller 752 to variable gainamplifiers 75 & 760 and phase shift circuits 762-764. The transmissionsignals are input to phase shift circuits 762-764 via a framing and reference generating circuit 766. The framing and reference generatingcircuit 766 frames data and speech for transmission and couples reference signals to the phase shift circuits 762-764, one for each ofantennas 768-770. Respective base band signals are formed, one for eachantenna, and the appropriate phase shift is applied to each by phaseshift circuits 762-764. The phase shifted signals are converted toanalogue in a digital-to-analogue converter circuit 772. The frequency ofthe analogue signals is increased in up converters 774-776 and higherfrequency signals are amplified in the variable gain amplifiers 75S760.
The gain of the variable gain amplifiers is selected according to the weights for each antenna.
The receive path of communication device 704 includes down converters780-782 for the signal from antennas 768-770, respectively. The downconverted signals are input to an analogue-to-digital converter circuit784, which outputs respective digital signals from each of the signalsoutput by the down converters. The digital signals are demodulated in areceiver processor 790.
The communication devices 702 and 704 are illustrated as beingidentical as the transmit path can be from communication device 702 tocommunication device 704 or from communication device 704 tocommunication device 702. However, the communication devices 702and 704 can be different, such that communication device 702 is a base station and communication device 704 a radiotelephone, for example. It will be recognised that in the case of a base, the transmit path will also include a multiplexer to combine signals for multiple simultaneous users. The receive path of a base will also include a demultiplexer, to separate the signals from different simultaneous users.
Calculation of the optimum weights for the transmit path will now be described for transmission from communication device 702 to communication device 704, although the description applies equally for communications from communication device 704 to communication device 702. Although the communication devices 702 and 704 have three antennas, the descriptionapplies equally to systems having other numbers of antennas, and thus .a'pplies generally to a system having I antennas in the transmit path of the transmitting communication device and N antennas in the receive path of the receiving communication device. For communications from communication device 702 to communication device 704, I equals 3 and N equals 3.
The estimated gain and phase of the signal received at the n'th receiver antenna from the i'th transmitter antenna is represented (in complexnotation) by ci,n and the set for all combinations by the matrix C (with Nrows and I columns). The estimated gain and phase at the antennas 768-780 which would be produced by a transmitter weight vector w is then given byCw The weight vector is selected from the codebook as follows: v=CwO t = vHv index = 0 do k=1 to K-1v=Cwkp = vHv ifp > tthenindex = k t=pend if end doThe controller 752 of communication device 704 uses this method to calculate the vectors v by multiplying the matrix C by a weight vector , which is the first weight vector in the codebook. An initial value t is calculated from the vector y derived from o. This value oft represents an estimate of the amplitude of the signal which would be obtained at the receiver with weight vector w at the transmitter and maximum ratio combining of the signals at the receiver. Maximum ratio combining is a well known technique of combining signals from multiple antennas. Vectors y are derived from C and each vector wlC of weights. The estimated magnitude p for each weight from the codebook is calculated by multiplying y and theHermitian transform ofp for that weight vector. The index k associated with the highest value pso measured in controller 752 is sent back to the transmitting communication device 702. The controller 714 controls the variable gain amplifiers 720-722 and phase shift circuits 724-726 to have the weights corresponding to the index number transmitted.
The controller 752 thus estimates the performance at the output of receiver processor 790. The output of the receiver processor 790 is derived from the combined output of antennas 768 770 of antenna array 708. This estimate isalso based upon weights of the receive path determined by the controller752.
As mentioned, a maximum ratio combiner is employed for the receiver.
Other optimisation techniques such as optimum combining could besubstituted particularly when it is desirable to reduce the effects of interference. Optimum combining is a known technique. Instead of maximizing received amplitude or power, the controller 752 ratio could maximise the ratio of wanted signal to interference plus noise.
Embodiments will now be described wherein the receiving communication device includes an equaliser 820. In these embodiments, the description is for a receiving communication device including a single antenna and a transmitting communication device having multiple antennas, as illustrated in FIGs. 1 and 2.
In these embodiments, a reference signal is employed to determine the weights and to calculate settings for an equaliser 820 in the receive path. It is known to transmit a reference signal to a receiving communication device to be used by the receiving communication device in setting an equaliser 820. In existing systems, the reference signal is selected to simplify the setting of the coefficients.
However, the inventors have discovered that where the transmitting .device includes an antenna array and the receiving device includes an equaliser, the reference signal transmitted can be selected to reduce transmission overhead for reference signals while maintaining largegains with an antenna array.
The present invention requires transmission of multiple referencesignals, one for each antenna in the array. Where communication device101 is a base and communication device 102 is a radiotelephone, it isadvantageous to use a signal which minimises transmitting overhead forselecting the weights in the transmit path of communication device 102without concern for the resource requirements in the communicationdevice 101 that is a base. The communication device 101 that is a base will have sufficient capability to execute difficult computations inselecting the equaliser 820 values, whereas it is advantageous tominimise the energy requirements in the communication device 102 toprolong battery life.
If on the other hand the communication device 101 is mobile and thecommunication device 102 is a base, it is desirable to minimise therequirements of communication device 101. The transmissionrequirements are not as critical to the base as it can broadcast a signalwithout concern for battery life. The greater concern is the drain on theresources of the portable communication device while calculating valuesfor the equaliser 820 in its receive path. Accordingly, if thecommunication device 101 is a portable communication device, it is desirable that the reference signal simplifY calculation of the equaliser settings. Therefor, it is envisioned that different signals can be employed for the reference signal depending upon which of the communication devices 101 or 102 is portable in communication systems such as a radiotelephone networks.
If the communication device 101 is a radiotelephone, the reference signal which simplifies calculation of the equaliser settings is a portion of modulated data such as is used in systems like GSM, for example. The reference signals are shown in FIG. 12. As shown in FIG. 12, the reference signals are separated in time with sufficient separation to allow for multipath delay. The beginning and end of the reference signals is characterised by a period of ramping so that the power does not change instantaneously.
To minimise overhead, the reference signals are used both for synchronisation, equaliser setting, and for weight vector selection. In addition, to further reduce overhead, the reference signals are designed and employed differently to those usually employed in LLAMA systems(e.g. in TETRA and GSM). For weight vector selection with an equalisersetting, a codebook approach is employed.
A controller circuit 800 including an equaliser setting circuit 802 is illustrated in FIG. 8. This controller can be used in communication device 702 or 704, or both, and is employed when one or both of the communication devices has an equaliser. The controller circuit 800 includes a reference signal processor circuit 804 which processes received signals to calculate the antenna weight at another communication device having an antenna array. A weight vector selection circuit 806 uses weight index stored in a codebook 808, which is the index of weights such as Table 1 or Table 2. The weight vector selection is input to the equaliser setting circuit 802 and a binary format and coding circuit 812. The binary format and coding circuit outputs information for transmission to the other communication device.
The transmitting communication device sends both information signalsand reference signals as illustrated in FIG. 6. The reference signals aresent separately from each antenna. In order to minimise effects of delayin the feedback system, the reference signals are preferablynoncontiguous with the information packets. Additionally, where thereceiving communication device has an equaliser, and the equaliser andtransmit path weights for an antenna array are set using the samereference signal, the signal for each antenna is preferably separated bytime as opposed to being distinguished by frequency or code.
A method by which the weight vector is found independently of the equaliser 'setting, and then the receiver equaliser settings are determined from the weightvector, is first described. This method applies when the reference signals arechosen to minimise overhead, as is likely when communication device 101 is abase. The method uses values preset in the communication device. The matrix Xis stored in the communication device at the time the communication device ismanufactured, activated, or when it is being used in a new system. The matrixis calculated as follows: X = (yHy)-lyH where
and r is a column vector of the known reference signal waveform, and yH is the Hermitian transform of Y.
The reference signal processor circuit 804 (FIG. 8) calculates and stores the correlation matrix R of the reference signals: R = #i Si.SiH where Si is the reference signal received from the i'th antenna and SiH is theHermitian transform of the reference signal received from the i'th antenna.
The weight vector selection circuit 806 then performs calculations for each ofthe indexes in the codebook 808 to maximise the power signal p, wherep=w represents a candidate weight vector and wH represents a Hermitiantransform of the candidate weight vector. The index of weightsproducing the largest value of p is thus selected. The index of theselected weight vector is then transmitted to the handset via the binaryformat and coding circuit 812.
'The coefficients are then calculated from the selected weight vector. Forexample, in for a Maximum Iikelibood Sequence Estimator (MLSE)equaliser, the equaliser coefficients are generated from settings derivedin the equaliser setting circuit 802 as follows. First the vector e which isan estimate of the signal that would be received if the reference signal issent simultaneously from all antennas with the selected weights, iscalculated as follows: Y=iffiiwi where wi is the i'th element of the selected weight vector. A channel estimate h,from which is extracted the equaliser settings, is calculated as follows: h=-(Xy) @ m where m is the modulation impulse response of a filter (not shown) in thetransmitting communication device, and where @ denotes convolution.
This vector h is used for symbol timing synchronisation after which the equaliser settings are extracted in a suitable manner as is known tothose skilled in the art. Complexity is minimised by precomputing asmany quantities as possible.
The equaliser settings for an information packet are found at the sametime as the weight vector selection for the information packet. In some circumstances there may be significant delay in the feedback path. This affects both the accuracy of the weight vector selection and the equaliser setting. In an alternative method, the equaliser settings for one packet are found from reference signals which are used to derive weight vectors for the next information packet. This reduces delay in the establishment of the equaliser settings, and is possible where the weight selection and equaliser settings are independent.
The reference signals that minimise overhead are a portion of modulated data with properties such that the inverse (YHyyl shown above is well conditioned. As shown in FIG. 12 the reference signals will be separated m time with sufficient separation to allow for multipath delay. The beginning and end of the reference signals is characterised by a period of ramping so that the power does not change instantaneously, in the same way as in bursts ofTDMA systems today.
According to another embodiment, the weight vector is found jointly with the equaliser settings. This method also applies when the reference signals are chosen to minimise overhead, that is likely when communication device 101 is a base. This approach is desirable when the equaliser length is such that the equaliser can not capture all multipath propagation. This approach employs a controller circuit 900 architecture depicted in FIG. 9. The controller circuit 900 can also be used with anMLSE equaliser. A weight vector selection and equaliser setting circuit 902 uses the quantities: x = (yHy)-lyH where
and r is a column vector of the known reference signal waveform.
These values are pre-computed and stored in the controller 752 as described briefly above. Another known impulse sequence is y which is defined such that when z is filtered by a modulation filter (a filter, not shown, in the transmit path of communication device 702) having an impulse response m (such as a raised cosine filter), the resulting waveform is r. Before the codebook 808 values are used, the following quantities are computed and stored: Ci = (X Si) # m, R = l:i Si.SiH where ffi is the reference signal received from the i'thantenna.
index = 1, min~error=1,000,000.0p~threshold = a number between 0.0 and 1.0 such as 0.7.
where i is a vector of coefficients representing components of the combined filter and channel responses from the i'th transmit antenna, rn is the modulation impulse response of the transmit path filter (not shown), and @ denotes convolution. The initial value for the minimum error is selected to be large. The p~threshold value is selected to limit the number of calculations that must be performed. Thus, only those weights having the highest power measurements are consider. The value 0.7 corresponds to having only the top 30% considered. The inventors have found that the fewest errors occur when the signal is strong, though not necessarily when it is the strongest. A larger, or smaller percentage, of the weight candidates can be considered.
The codebook calculations for J candidate weight vectors are then performed as follows: doj=1toJ p=wH.Rw where w is the candidate weight vector if > threshold calculate "error" if error < min~error then min~error = error index=jend ifend ifend do loopThe equaliser setting circuit 902 first measures the power and determines if thepower is above the threshold. For those power measurements above thethreshold, the error is calculated using equaliser settings calculated for the weight vector. For an MLSE equaliser, the "error" is calculated at each iteration as follows:candidate impulse response h = #i ci wi*"error" = |h'# z - x | / |x| where x is a vector with components xi = wHSi, |.| represents vectornorm., h' represents the candidate equaliser settings which are extracted from h during the symbol timing synchronisation process,which synchronisation process as alread noise power density (Eb/No) in decibels (dB). Curve 1000 is theperformance with no error protection coding with no array, and should be compared to curve 1002 which is the corresponding uncodedperformance with an array. Gains of the order of 7 dB are achieved which allows a very considerable increase in talk time or capacity withina mobile radio system. Curve 1001 is the performance with errorprotection coding with no array, and should be compared to curve 1003which is the corresponding coded performance with an array. Gains of the order of 7 dB are again achieved. The overhead savings on bothreference signals and weight specifiers are more than 20 % over moreconventional reference signal design and over weight vector quantisation, as opposed to codebook, schemes.
FIG. 11 shows the performance of the controller method of FIG. 9compared to that of FIG. 8 in a particular case where it is notappropriate to estimate array settings and equaliser settingsindependently. Curve 1005 represents the performance with no errorprotection coding for the method of FIG. 8, which should be compared tothe curve 1006 representing the uncoded performance for the method ofFIG. 9. Curve 1007 represents the performance with error protectioncoding for the method of FIG. 8 which should be compared to the curve1008 representing the coded performance for the method of FIG. 9. Inthis case, the circuit of FIG. 9 offers performance benefits in good signalconditions.
Thus it can be seen that the transmit path weights for an antenna arraycan be adjusted to improve the gain of the transmit path. The transmit path weights can be set independently of the receiving communication device. Alternatively, the receiving communication device can select the weights based upon a reference signal received from the transmitting communication device. A codebook can be employed to facilitate theprocess of selecting weights. Where the receiving communication deviceincludes an equaliser, equaliser settings and weights can be calculated from the same reference signal thereby minimising transmission overhead.