Patent Publication Number: US-2005128966-A1

Title: Communications apparatus and methods

Description:
FIELD OF THE INVENTION  
      This invention relates to apparatus, methods and computer program code for transmission and reception in communication systems in which a receiver receives signals from a plurality of transmit antennas associated with a single transmitter. In particular this is related to MIMO (multiple input multiple output) and MISO (multiple input single output) channel based wireless systems.  
     BACKGROUND OF THE INVENTION  
      Wireless communications systems such as cellular and local area networks suffer from interference and limited bandwidth as a result of the utilisation of radio frequency (RF) signals as is well known. These problems are exacerbated in cluttered or scattering environments where multi-path propagation of signals exists in which multiple copies of a transmitted signal are received. These copies are displaced in time and typically suffer from different amounts of interference due to their different paths. They also interfere with each other making the task of recovering the wanted or transmitted signal difficult. Various techniques have been utilised to mitigate these problems, for example error correction coding, channel estimation and equalisation, as well as various data estimation algorithms such as maximum likelihood (ML) or maximum a priori (MAP) based decoders to correctly recover transmitted data.  
      Error correction coding helps enables a communication system to recover original data from a signal that has been corrupted. The Bit Error Rate (BER) is generally defined as the ratio of incorrectly received information bits to the total number of received information bits. Typically, the greater the expected BER of a particular communication link, for example due to a high scattering environment or low SNR at the receiver, a more powerful error correction coding is necessary to recover the original data.  
      In cases where the expected BER of a particular communication link is substantially higher than the acceptable BER, a concatenated set of error correcting codes may be applied to the data in order to lower the BER to acceptable levels. Concatenated error correction coding refers to sequences of coding in which at least two encoding steps are performed on a data stream. Concatenated coding may be performed in series, where encoded data is subjected to further encoding, or in parallel where the original data is subjected to different encoding schemes to perform intermediate codes which are then further processed and combined into a serial stream.  
      Parallel and serial concatenated codes are sometimes decoded using iterative decoding algorithms. One commonly employed method of iterative decoding utilizes a single decoder processor where the decoder output metrics are fed back to the input of the decoder processor. Decoding is performed in an iterative fashion until the desired number of iterations have been performed.  
      “Turbo codes” are an example of parallel concatenated coding and are used as a technique of error correction in practical digital communications. The essence of the decoding technique of turbo codes is to produce soft decision outputs, i.e. different numerical values which describe the different reliability levels of the decoded symbols, which can be fed back to the start of the decoding process to improve the reliabilities of the symbols. This is known as the iterative decoding technique. Turbo decoding has been shown to perform close to the theoretical limit (Shannon limit) of error correction performance after 18 iterations—see C. Beerou, A. Glavieux, and P. Thitimajshima, “Near Shannon Limit Error-Correcting Coding: Turbo Codes.” In Proc. IEEE Int. Conf. Commun., Geneva, Switzerland, 1993, pp. 1064-1070.  
      A turbo encoder comprises a pair of parallel-concatenated convolutional encoders separated by an interleaver, where the interleaver plays a role to shuffle (interleave) its input sequence in a pre-determined order. It accepts an input binary {0,1} sequence and produces three types of encoded output for each symbol when the coding rate is ⅓.  
      A turbo decoder receives the encoded signals and uses all three types of signals when the coding rate is ⅓ to reproduce the original bit sequence of the turbo encoder input. Two MAP decoders, associated with the convolutional encoders respectively, perform the decoding calculations. In addition to an interleaver to mirror the interleaver of the encoding side, the turbo decoder also consists of a deinterleaver to reconstruct the correct arrangement of the bit sequence to be fed back from one MAP decoder to another. A MAP decoder uses the BCJR algorithm as is well known.  
      In practical data communication systems multipath within a channel results in intersymbol interference (ISI), which is often corrected with a combination of equalisation and forward error coding. For example a zero-forcing based linear equaliser effectively convolves the received data with an inverse of the channel impulse response to produce data estimates with ISI substantially removed. An optimal equaliser may employ maximum likelihood (ML) sequence estimation or maximum a priori estimation (MAP), for example using a Viterbi algorithm. Where data has been protected with a convolutional code a soft input Viterbi decoder may be employed, usually together with data interleaving to reduce the effects of burst errors. Such approaches provide optimal equalisation but become impractical as the symbol alphabet size and sequence length (or equivalent channel impulse response length) increases.  
      Turbo equalisation achieves results which are close to optimal, if there is sufficient diversity, but with substantially reduced complexity compared to non-iterative joint channel equalisation and decoding. Broadly speaking turbo equalisation refers to an iterative process in which soft (likelihood) information is exchanged between an equaliser and a decoder until a consensus is reached. The effect of the channel response on the data symbols is treated similarly to an error correction code and typically a soft output Viterbi algorithm (SOVA) is used for both.  
      Until recently considerable effort was put into designing systems so as to mitigate for the perceived detrimental effects of multipath propagation, especially prevalent in wireless LAN (local area network) and other mobile communications environments. The described work G. J. Foschini and M. J. Gans, “On limits of wireless communications in a fading environment when using multiple antennas”  Wireless Personal Communications  vol. 6, no. 3, pp. 311-335, 1998 has shown that by utilising multiple antenna architectures at both the transmitter and receiver (a so-called multiple-input multiple-output (MIMO) architecture) vastly increased channel capacities are possible. MIMO systems can be configured or spatially multiplexed transmission where the original data stream is divided into substreams and are simultaneously transmitted on the individual antennas, additional diversity is achieved using multiple receiving antennas.  
      Attention has also turned to the adoption of space-time coding techniques (in OFDM, space-frequency coding) for wideband channels. The basic idea here is that the data to be transmitted is transmitted from two or more antennas using different processing at each antenna. This provides diversity or redundancy of the transmitted data received at the receiver. For example the well known Alamouti algorithm processes incoming symbol sequence s0 s1 as s0-s1* from one antenna and at the same respective times s1 s0* from another antenna. Thus the symbols are transmitted twice but using different encoding and from a different position in space (antenna) thus providing independent channels and thereby providing a receiver with the opportunity to combine the signals for increased diversity or recover one signal and not the other to provide redundancy.  
      The Alamouti algorithm is limited to two transmit antennas, however it does allow for a reasonably simple receiver structure. More complex space-time coding (STC) algorithms are available such as Trellis coding which allow use of a greater number of transmit antennas and hence increased diversity/redundancy, however this is at the expense of increased receiver structure complexity.  
      A particular problem arises in a communications link where a transmitter with more than one transmit antenna is employed since signals received from different transmit antennas interfere with one another. This results in so-called multi-stream interference (MSI) and causes decoding difficulties.  
      So far, STC are mainly designed for frequency-flat fading channels. For multi-carrier OFDM schemes, STC is employed across OFDM subcarriers where frequency-flat fading is assumed for each subcarrier. However, for single-carrier modulation schemes, where the symbol duration is smaller than the channel delay spread, it is important to design STC for the presence of frequency-selective multipath channels. Unlike flat fading channels, optimal design of STC for dispersive multipath channels is complex because signals from different antennas are mixed not only in space but also in time. In order to maintain decoding simplicity and take advantage of existing STC designs for flat fading channels, most existing works have pursued (suboptimal) two-step approaches. First, the intersymbol interference is mitigated by converting frequency-selective fading channels to flat fading ones, using multiple-input-single-output (for single receive antenna) or multiple-input-multiple-output (for multiple receive antenna) equalizer for example, and then design space-time coders and decoders for the resulting flat fading channels.  
      Thus, a problem with using transmit spatial diversity such as the Alamouti based STC for frequency selective multipath channels is that the intersymbol interference destroys the orthogonality applied to the transmitted symbols. The orthogonal STC allows maximum likelihood space-time decoding which requires only simple linear processing. With the orthogonality of the STC destroyed, a more complex decoding technique is required such as the two-step approaches mentioned above.  
      Time-reversal space-time block coding proposed by E. Lindskog and A. Paulraj, “A transmit diversity scheme for channels with intersymbol interference”, Proceedings of IEEE International Conference on Communications, 18-22 Jun. 2000, vol. 1, pp. 307-311, is an extension of the Alamouti STC scheme to frequency-selective channels, and provides a block-based Alamouti encoding to preserve the orthogonality of the space-time block code. The orthogonal structure of the time-reversal STC is at block level and not symbol level as in the Alamouti STC scheme for flat-fading. At the receiver, time-reversal and complex conjugation is performed for the space-time decoding. The orthogonality of the space-time block code enables decoupling of the spatially multiplexed transmitted symbols using low complexity match filtering. Therefore, instead of the more complex MISO or MIMO equaliser that provides joint detection of the signals transmitted from different antennas, single-input-single-output (for single receive antenna) or single-input-multiple-output (for multiple receive antenna) equalization is sufficient to handle the intersymbol interference after the block-based decoupling. The block-based time-reversal STC requires an insertion of known symbols, i.e. guard symbols, in the beginning and end of each space-time block transmission to handle the ‘edge effects’ due to intersymbol interference. The ‘known symbols’ are normally the training sequence that is required for channel estimation. Another requirement of the time-reversal STC is that the channel is required to be approximately stationary over a block of space-time coded symbols. Therefore the size of this block is a design parameter.  
      Naofal Al-Dhahir, “Single-Carrier Frequency-Domain Equalization for Space-Time-Coded Transmissions over Broadband Wireless Channels” IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, vol. 1, 30 Sep.-3 Oct., 2001, pp. B-143-B-146, proposed a frequency-domain equalization (FDE) assisted block-level STC where the Alamouti orthogonal structure is imposed in the frequency domain and over two consecutive transmission blocks. Here, instead of ‘known symbols’, cyclic prefix is inserted at the end of each space-time block transmission.  
      S. Zhou and G. B. Giannakis, “Single-Carrier Space-Time Block-Coded Transmission Over Frequency-Selective Fading Channels”, IEEE Transactions on Information Theory, vol. 49, no. 1, January 2003, pp. 164-179, generalized the design of STBC for single-carrier block transmission in the presence of frequency selective fading channels that subsume the time-reversal STBC (by E. Lindkog and A. Paulraj) and the FDE assisted STBC (by N. Al-Dhahir).  
      However, the time-reversal and FDE based space-time block code impose an overhead from the use of the guard interval or cyclic prefix. Also, while the design of the orthogonal space-time block codes extended to more than two transmit antenna (described in V. Tarokh, H. Jafarkhani and A. R. Calderbank, “Space-Time Block Codes from Orthogonal Designs”, IEEE Transactions on Information Theory, vol. 45, no. 5, July 1999, pp. 1456-1467) achieves the full spatial diversity but does not provide the maximum transmission rate using complex constellation.  
      Other non-spatial diversity/redundancy techniques involve resending the data at a different time, especially where the channel is changing over time, and/or resending the data with different processing, such as different encoding or even interleaving a sequence of data such that its re-transmitted sequence is different. Examples of these techniques are described in ] “Linear Iterative Turbo-Equalization (LITE) for Dual Channels”, Andrew Singer, Jill Nelson, Ralf Koetter,  Conference Record of the Thirty-Third Asilomar Conference on Signals, Systems and Computers,  Vol. 2, 1999, pp 1670-1674; and “Mismatched Decoding of Intersymbol Interference Using a Parallel Concatenated Scheme”, Krishna Balachandran and John B. Anderson,  IEEE Journal on Selected Areas in Communications,  Vol. 16, No. 2, pp. 255-259, February 1998.  
      These temporal diversity schemes may be implemented to be used only when required, for example in automatic repeat request (ARQ) error control systems. Examples of such techniques are described in “Iterative Packet Combining Schemes for Intersymbol Interference Channels”, Dung N. Doan and Krishna R. Narayanan,  IEEE Transactions on Communications,  vol. 50, no. 4, April 2002.  
     SUMMARY OF THE INVENTION  
      The present invention provides a wireless communications system comprising a transmitter having two or more antennas and one or more respective interleavers. The transmitter receives a number of sequences of symbols to be transmitted in respective time slots, and is arranged to simultaneously transmit a said sequence and one or more interleaved said sequence from respective antennas. The system also comprises a receiver having one or more antennas and arranged to recover the transmitted sequence from the signals received from the plurality of transmit antennas.  
      For conventional space-time block codes (STBC) such as the Alamouti code, dispersive wideband channels destroy the orthogonality of the code. Therefore typical space-time code (STC) are susceptible to ISI introduced by multipath environments, as the channels used by the different transmitters become mixed. Whilst this can be overcome with more complex coding such as space-time trellis coding (STTC), this requires a complex decoder at the receiver.  
      Thus embodiments of the invention can exploit ISI and consider the ISI as the component encoder of the space time encoder. The interleaving provides another ‘independent’ version of the transmitted symbols and thus introduces diversity which benefits iterative receivers and provides iterative gain. By comparison the design of other STCs especially orthogonal STBC requires mitigation of ISI before space-time decoding.  
      Embodiments of the invention provides a simple robust space time coding scheme which can be implemented in a multipath channel, and which maintains only low complexity decoding. They also provide more robust spatial diversity (and/or redundancy) in a multipath or mixed channel matrix. If time-domain equalization is employed, it does not need the overhead of a guard symbol or a cyclic prefix for dispersive ISI channels, and so allows for an increased transmission rate.  
      The approach provides spatial diversity or redundancy whilst at the same time reduces the decoding complexity when compared with other more complex STC techniques such as trellis or block encoding. A relatively simple SISO equalizer can be used to substantially remove the ISI and MSI and at the same time combine the spatial and multipath diversity.  
      In a preferred embodiment Turbo coding scheme is effectively implemented by concatenating a channel encoder with the multipath space time coding approach. A turbo decoding approach can then be used as the data is interleaved and then effectively encoded in parallel across the MIMO channel by the different ISI in the channel between each transmit and receive antenna pair. This allows the use of relatively simple turbo decoding architectures to be implemented in the receiver, thus reducing its complexity compared with the receiver structures of comparably multipath robust STC based schemes such as STTC. For example a soft-in-soft-out (SISO) MMSE turbo-equaliser can be used. The equaliser largely mitigates the MSI and ISI. The complexity of the decoder is then linearly related to the number of antennas, and not exponentially as in the case of trellis decoders. Furthermore, more than two transmit antennas can be used whilst still maintaining low receiver complexity, unlike the Alamouti algorithm for example which has a limit of two transmit antennas.  
      In particular in one aspect there is provided a method of transmitting a data sequence in a wireless communication system according to claim  1 .  
      In particular in one aspect there is provided a method of receiving a data sequence in a wireless communications system according to claim  10 .  
      There are also provided corresponding apparatus.  
      The channel can be made to appear recursive to the receiver by employing a precoder to increase the gain of the iterative receiver, for example as disclosed in A. G. Lillie, A. R. Nix, J. McGeehan, “Performance and Design of a Reduced Complexity Iterative Equalizer for Precoded ISI Channel”, IEEE VTC-Fall, Orlando, Fla., USA, 6-9 Oct. 2003.  
      The transmitter and channel matrix may be thought of as concatenated encoders, the channel providing parallel ISI encoding. Additional encoding may be concatenated at the transmitter to increase BER as required, with a corresponding decoder concatenated at the receiver. An iterative equaliser and decoder architecture is preferred to reduce complexity.  
      There is also provided a preferred soft equaliser for use with the embodiments and which comprises a soft-in-soft-out (SISO) equaliser for use in a receiver of a communications system employing a plurality of transmit antennas, the equaliser comprising: at least one received signal input for inputting a received signal; a plurality of likelihood value inputs, one for each transmit antenna, for inputting a plurality of decoded signal likelihood values from a SISO decoder; a processor configured to determine from said plurality of signal likelihood values an estimated mean and covariance value for a signal from each of said transmit antennas; and expected signal determiner coupled to said processor to determine an expected received signal value using said means values; a subtractor coupled to said received signal input to subtract said expected received signal value from said received signal to provide a compensated signal; a filter coupled to said subtractor to filter said compensated signal to provide a plurality of estimated transmitted signal values, one for each said transmit antenna; a filter coefficient determiner coupled to said processor to determine coefficients of said filter using said covariance values; and an output stage coupled to said filter to output a plurality of transmitted signal likelihood values, one for each said transmit antenna, for input to said SISO decoder.  
      Preferably further comprising an adjuster to adjust said expected received signal value by an amount dependent upon said estimated mean values.  
      Preferably further comprising a filter gain controller configured to control the gain of said filter dependent upon said estimated covariance values.  
      Preferably said filter comprises a linear or transversal filter.  
      Preferably said filter coefficient determiner is configured to determine said filter coefficients according to a mean square error cost function.  
      Preferably said filter coefficient determiner is configured to determine said filter coefficients responsive to covariance values of estimated transmitted signal values derived from said signal likelihood values from said SISO decoder.  
      Preferably the equaliser is configured to utilise substantially constant filter coefficients for equalising a block or packet of received data symbols.  
      Preferably said filter coefficient determiner is configured to operate in the frequency domain, said equaliser further comprising Fourier transform means prior to said filter and inverse Fourier transform means following said filter.  
      In another aspect the SISO MIMO turbo-equaliser is configured for use with a SISO decoder to equalise data from a multiple antenna transmitter, the equaliser comprising a multi-dimensional transversal filter having a plurality of soft inputs and providing a plurality of soft outputs, the equaliser being configured to receive a soft information from said SISO decoder and to use said soft information to adjust coefficients of said transversal filter to mitigate MSI and ISI.  
      Preferably this is further configured to adjust said transversal filter coefficients in accordance with a minimum mean square (MMSE) criterion.  
      Preferably said filter operates in the frequency domain, and said coefficients comprise frequency domain coefficients, the equaliser further comprising Fourier transform means preceding said filter and inverse Fourier transform means following said filter.  
      Alternatively said filter operates in the time domain and wherein said coefficients comprise coefficients which are substantially time invariant over a symbol packet comprising a plurality of received symbols.  
      There are also provided corresponding methods and computer programs.  
      There is also provided a method of equalising data in a receiver of a communications system with a plurality n 1  of transmit antennas the method comprising: inputting a received signal vector Z n  comprising a block of received signal data at an index n;  
      inputting from a SISO decoder a set of bit likelihood values L(c n,j   i ), i=1 to n I , j=1 to m where c n,j   i , denotes a portion of am m-bit codeword symbol at an index n; determining expectation E(x n   i ) and covariance cov(x n   i ,x n   i ) values for estimated transmitted signal values x n   i  using the values L(c n,j   i ) where x n   i  denotes an estimated value of a signal transmitted from a transmit antenna i at an index n; determining an updated estimated transmitted signal value {circumflex over (x)} n   i  at index n for each transmit antenna i using {circumflex over (x)} n   i =K n   i f n   i     H   [Z n −(E(Z n )−e i E(x n   i ))] where E(Z n )=HE(X n ) and H is a channel impulse response matrix and E(X n ) is an expectation value of an estimated transmitted signal vector X n  at index n derived from values E(x n   i ), where e i  is the ith column of a matrix S and S=H[0 n     t     ×(N2+L−1)n     t   I n     t     ×n     t   0 n     t     ×N1n     t   ] H  where matrix I i×i  is an i×i identity matrix and 0 i×j  is a matrix in which each element is substantially zero, f n   i  is the ith column of a filter matrix F n  and F n  is derived from cov(x n ,x n ), and where K n   i  is a scalar filter gain; and outputting equalised likelihood values L e (c n,j   i ) derived from values {circumflex over (x)} n   i .  
      Preferably further comprising decoding said values L e (c n,j   i ) to provide said values L(c n,j   i ).  
      Preferably comprising iteratively equalising and decoding to determine values for L e (c n,j   i ) and L(c n,j   i ) until a determination criterion is reached.  
      Preferably F n  is derived from [HR xx H H ] −1 S where R xx =cov(x n ,x n ). 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
      Embodiments will now be described in detail with reference to the following drawings, by way of example only and without intending to be limiting, in which:  
       FIG. 1  shows a MIMO based wireless communications system;  
       FIG. 2  shows a block diagram of a MIMO channel model;  
       FIG. 3  shows a MIMO based wireless communications system in more detail;  
       FIG. 4  shows a wireless communications system according to an embodiment;  
       FIG. 5  shows a receiver architecture according to an embodiment;  
       FIG. 6  shows a wireless communications system according to another embodiment;  
       FIG. 7  shows a transmitter architecture incorporating puncturing according to a further embodiment;  
       FIG. 8  shows a further transmitter architecture incorporating puncturing according to an embodiment;  
       FIG. 8   a  shows further transmitter architecture according to another embodiment;  
       FIGS. 9   a  and  9   b  show respectively a transmitter and a receiver architecture according to another embodiment;  
       FIG. 10  shows the comparative BER performances of embodiments together with known arrangements;  
       FIG. 11  shows a flow diagram of a MMSE MIMO turbo equalisation procedure according to an embodiment;  
       FIG. 12  shows a block diagram of a soft-in-soft-out filter-based MIMO equalizer according to an embodiment;  
       FIG. 13  shows a MIMO communications system including a receiver employing the MIMO equaliser of  FIG. 12 ; and  
       FIG. 14  shows a block diagram of a frequency domain soft-in-soft-out filter-based MIMO equalizer according to a further embodiment of the present invention. 
    
    
     DESCRIPTION OF THE EMBODIMENTS  
       FIG. 1  shows a MIMO communication system  100 . An information source  101  provides an information symbol d n  at time n to a space-time encoder  102  which encodes the symbol as n I  coded symbols x n   1 , x n   2 , . . . , x n   n     I    each of which is transmitted simultaneously from one of transmit antennas  104 . A plurality of n O  receive antennas  106  receives respectively signals z n   1 , z n   2 , . . . , z n   n     O    which are input to receiver  108 . The receiver  108  provides on output  110  an estimate {circumflex over (d)} n  of the encoded transmitted symbol d n . There is a plurality of channels between the transmit and receive antennas, for example all channels with two transmit antennas and two receive antennas. Periodic pilot sequences in the transmitted signal can be used to estimate the time varying responses of these channels.  
      The coded symbols x n   1 , x n   2 , . . . , x n   n     I    transmitted by the transmitter antennas  104  are typically encoded versions of the incoming data or information sequence. The encoding will be according to a predetermined algorithm such as the well known Alamouti, BLAST or a trellis codes for example. The receiver comprises an equaliser which attempts to correct for ISI in the time varying MIMO component channels, and a space-time decoder which receives the “equalised” signals in order to recover the original data sequence. A turbo based soft-in-soft-out equalisation scheme utilising an iterative approach between the equaliser and decoder is effective in reducing computational complexity whilst maintaining an acceptable BER link. However receiver complexity is still high for STC&#39;s such as the trellis approach used to provide robustness in a multipath MIMO channel. This complexity increases exponentially with the number of transmit antennas and so presents a practical limit to the number of transmitter antennas that can be used.  
       FIG. 2  shows a block diagram  200  of a MIMO channel model. A multi-stream transmitter has first plurality n I  of transmit antennas  202  and transmits respective symbols x n   1 , x n   2 , . . . , x n   n     I    at time n which comprise “inputs” to a matrix channel  206 . A plurality n O  of receive antennas  204  provides “outputs” from the n I ×n O  MIMO matrix channel in the form of received signals z n   1 , z n   2 , . . . , z n   n     O   . There is a channel with an associated channel response h n   ij  between the ith transmit antenna and jth receive antenna. The received signal at each receive antenna also includes a noise component w n   j .  
       FIG. 3  shows a MIMO communication system  300  in more detail, and including a MIMO transmitter  302  and a MIMO receiver  304  communicating via a MIMO channel  306 . The receiver  304  incorporates a MIMO soft-in/soft-out (SISO) equaliser  400 . The transmitter  302  has a data input  308  providing an input to a space-time and/or channel encoder  310 . The encoder  310  provides a plurality of outputs  312  to an interleaver  314  which, in turn, provides signals to a plurality of rf output stages and thence to a corresponding plurality of transmit antennas.  
      The plurality of transmitted signals is output via MIMO channel  306 , and provides a (different) plurality of inputs to receiver  304 . The communication system employs a single transmitter to provide a plurality of transmit output streams, either for redundancy or increased bit rate. The transmissions from the plurality of transmit antennas may, for example, share the frequency or overlap in frequency and/or overlap in time. This is different to a communication system employing a plurality of users with frequency and/or time domain controlled access in which, generally speaking, it is preferred to assign different frequencies and/or time slots to different users.  
      A plurality of receive antennas coupled to a corresponding plurality of rf receiver front ends (not shown for clarity) provides a plurality of inputs to MIMO SISO MMSE equaliser  400 . The soft output  326  from the equaliser  400  are deinterleaved by a deinterleaver  318  and then provided to a space-time/channel decoder  320 . The decoder accepts a plurality of inputs, one for each signal stream from a transmit antenna, and provides a corresponding plurality of outputs  322   a, b  which are either provided to a bit interleaver  324  and returned to equaliser  400  for a further equalisation-decoding iteration or, if a termination criterion has been reached, output as estimated data. It will be appreciated that equaliser needs complete transmitted symbols from decoder  320 , that is where, for example, error check bit such as parity bits have been included transmit symbols including these parity bits should be provided to the equaliser. A MIMO channel estimator (not shown) may receives a plurality of inputs from the rf receiver front end and a set of inputs from bit interleaver  324 , and output an estimate of H to equaliser  400 .  
      In an n I ×n O  MIMO system the MIMO equalizer aims to provide an estimate of n I  transmitted data symbols at every signalling instant. Data from the plurality of transmit antennas are transmitted at the same or overlapping times and using at the same or overlapping frequencies and thus MSI is introduced, as well as ISI from the dispersive wideband channel. In some systems the same or related data is transmitted from different transmit antennas in order to provide redundancy or diversity. In other systems different data streams are transmitted from each transmit antenna, for example to provide higher overall data rates.  
       FIG. 4  shows a block schematic of a wireless communications system  500  according to an embodiment, and comprises including a multiple antenna transmitter  502  and a single antenna receiver  506  communicating via a MISO channel  504 . The transmitter  502  comprises two transmit antennas spaced apart, and an interleaver  510 . The transmitter receives a symbol sequence {x n } comprising symbols {s0, s1, s2, s3} which is applied to the interleaver  510  to get an interleaved symbol sequence {{umlaut over (x)} n } comprising symbols {s2, s3, s0, s1} for example. The symbol sequence {x n } and the interleaved symbol sequence {{umlaut over (x)} n } are then simultaneously transmitted from the different transmit antennas.  
      Simultaneously here means that the sequence and the interleaved sequence are transmitted over the same time frame, and that symbols from each sequence are transmitted together in the same respective symbol time slots.  
      Any interleaving scheme can be applied, for example block or pseudo-random interleaving. Interleaving can be performed bit-based or symbol-based.  FIG. 4  shows the case where symbol-based interleaving is performed. The interleaver randomises the data sequence such that the information sequence and the interleaved sequence are uncorrelated and seem ‘independent’ especially if the interleaver length is sufficiently large. However, the scheme can still be deployed where not too many “same” symbols are transmitted at the same time.  
      There is no requirement for the antennas to be spaced apart to provide orthogonal or non-correlated channels, and therefore a relatively small spacing is acceptable which is advantageous in small portable devices such as mobile phones and laptop computers. This is because the information sequence and the interleaved sequence would be encoded by the same ‘encoder’ (the same channel response) and so have similar ISIS. There will still be diversity from the interleaver providing the interleaved sequence.  
      The symbol sequences {x n } are received from a modulator which is not shown for clarity. The sequences themselves can be encoded, for example by a channel encoder applying a convolutional code to a data stream prior to modulation.  
      The receiver  506  has a single receive antenna which receives a combined signal z n   1  from the two transmit antennas through the MISO channel  504 . Two equalisers  521  and  522  are coupled to the receive antenna, and are arranged to recover the signals transmitted from each of the transmit antennas ({x n } and {{umlaut over (x)} n } respectively). These recovered or estimated signals can then be used to provide diversity by combining them in combiner/selector  523 , firstly de-interleaving the interleaved signal {{umlaut over (x)} n } using de-interleaver  524 . Alternatively, redundancy is provided by selecting one of the signals over the other, again using the combiner/selector block  523 . The recovered sequence {x n } can then be demodulated and if appropriate decoded.  
      Training sequences can be provided to give the channel impulse response from each transmit antenna for each respective equaliser.  
      Preferably the transmitter  502  is coupled to a multiple (n O ) antenna receiver through a MIMO channel as shown in  FIG. 2 . A preferred receiver architecture  550  is shown in  FIG. 5 , and comprises two SISO equalisers  560  and  570 , one for each transmitter antenna to provide estimates for the sequence {x n } and the interleaved sequence {{umlaut over (x)} n } respectively. The soft output from each equaliser  560  and  570  provides an input for the next iteration of the other equaliser  560  and  570  respectively. These outputs are appropriately interleaved or de-interleaved by interleaver  561  and de-interleaver  571  respectively. A number of iterations are performed until a criterion is met at which point the output from the {x n } equaliser  560  is taken as the final estimate for the original sequence {x n }. The criterion may be a predetermined level of likelihood for example, or a predetermined number of iterations.  
      The soft information of the interleaved data {{umlaut over (x)} n } from the second antenna provides independent statistical information (in terms of LLR) of the directly transmitted data {x n }, and this provides a better estimate of the transmitted data (either interleaved or not interleaved) on subsequent iterations.  
      A preferred MMSE SISO equaliser for use in the above described receiver  550  is described in more detail below. Other options include a SOVA equalizer, such as described in J. Hagenaur and P. Hoher, “A Viterbi algorithm with soft-decision outputs and its applications”, Global Telecommunications Conference, 1989, and Exhibition. ‘Communications Technology for the 1990s and Beyond’. GLOBECOM &#39;89, IEEE, 27-30 Nov. 1989 Page(s): 1680-1686 vol. 3, for the description of SOVA equalizer and C. Douillard, A. Picart, M. Jezequel, P. Didier, C. Berrou and A. Glavieux, “Iterative correction of intersymbol interference: Turbo-equalization,” European Transactions on Communications, vol. 6, pp. 507-511, 1995, where the SOVA equalizer is employed for turbo equalization  
      Spatial diversity can be increased by increasing the number of interleaved version of the data symbol sequence transmitted. This however comes at the cost of the need to use more transmit antennas and increased MSI.  FIG. 6  shows a 1/p rate multi-path space time code system comprising a transmitter  600  according to a further embodiment, and having more than two transmit antennas  601 - 1  to  602 - p,  and corresponding interleavers  602 - 1  to  602 -( p− 1).  
      For the term ‘rate’, eg. 1/p rate, the convention from channel coding is used where the rate is code rate and is defined as the ratio of the number of information bits before encoding and the number of coded bits after encoding. However, for multiple transmit antenna system convention, the rate is the effective information symbols transmitted by the transmit antennas at one signalling instant. For example, for two transmit antenna, two receive antenna system, the spatially multiplexed scheme has the rate of two, whereas if Alamouti STC is employed, the rate is one. Using the multiple transmit antenna system convention, the STC shown in  FIG. 6  has a rate of one.  
      The transmitter  600  receives a symbol sequence {x n }, and this is interleaved by a first interleaver  602 - 1  to provide a first interleaved symbol sequence {{umlaut over (x)} n   1 } for transmission by the second antenna  602 - 2  simultaneously with transmission of the original sequence {x n } by the first antenna  602 - 1 .  
      In addition, one or more further interleavers  602 - 2  to  602 -( p− 1) are used to further interleave sequences {x n } in a cascaded manner as shown. Thus for example a second interleaver  602 - 2  (not shown for clarity) interleaves the sequence {x n } to be transmitted by the third antenna  602 - 3  as interleaved sequence {{umlaut over (x)} n   2 }. This is repeated up to transmit antennas  602 - p  and symbols are transmitted simultaneously from the plurality of antennas into the MIMO channel  610 . Thus a (p−1)-th interleaver  602 -( p− 1) provides the interleaved sequence {{umlaut over (x)} n   p−1 } to be transmitted by the p-th antenna  602 - p.  The interleavers  602 - 1  to  602 -( p− 1) each provide a different re-ordering pattern.  
      Preferably the number of receive antennas is equal to or more than the number of transmit antenna.  
      This embodiment provides for further diversity and/or redundancy compared with the arrangement of  FIG. 4 .  
      In order to improve the spectral efficiency and to increase the data throughput of the STC arrangement, the number of spatial transmissions of the interleaved versions of the data sequence can be reduced through puncturing or by increasing the number of bits per symbol transmission for the interleaved data sequence. Note that puncturing can be performed symbol-based or bit-based.  
       FIG. 7  shows a transmitter  650  according to a further embodiment, and which employs puncturing or “bit selection” for an interleaved version of the bit sequence in order to increase the data throughput. Specifically, a ⅔-rate multi-path based space time code using puncturing is used, the transmitter  650  having three transmit antennas  651 - 1 ,  651 - 2 , and  651 - 3 , and one interleaver  652 . The first antenna  651 - 1  is arranged to directly transmit a first symbol sequence {x1 n } corresponding to a first bit stream {d1 n }.  
      The third antenna  651 - 3  receives a second symbol sequence {x2 n } corresponding to a second bit stream {d2 n } which it is arranged to directly transmit. The interleaver  652  interleaves the bit sequence {d n }, chosen from bit sequence {d1 n } and {d2 n } according to a puncturing pattern, to provide the bit sequence {{umlaut over (d)} n }. The second antenna  651 - 2  transmits the interleaved symbol sequence {{umlaut over (x)} n } corresponding to the bit sequence {{umlaut over (d)} n }, such that these are transmitted simultaneously with their respective direct symbol sequences {x1 n } or {x2 n }, which are transmitted by the first and third antennas  651 - 1  and  651 - 3  respectively. Thus the selected interleaved symbol sequence {{umlaut over (x)} n } is transmitted as the redundant spatial transmission.  
      This principle can be extended to a higher throughput spatially multiplexed system as shown in  FIG. 8  to improve the bandwidth efficiency. In general, p information blocks are transmitted simultaneously and redundancy is introduced by transmitting the interleaved version of the information blocks or sequences. To reduce the interference through spatial multiplexed transmission, the p data blocks are punctured before interleaving. In other words selected bits are chosen according to a particular pattern as the additional interleaved data block.  
      This principle could also be extended the other way to having a single sequence transmission and a punctured interleaved transmission. Since the number of bits is reduced because of puncturing, the interleaved sequence can be transmitted with lower bits per symbol compare to the transmission of the direct sequence so that direct and redundant symbols can be transmitted at the same time.  
      Puncturing will be known to those skilled in the art. Puncturing increases the code rate at the expense of weakening the error correcting power of the channel coding or the diversity from the interleaving in this case. Various known puncturing patterns can be applied to balance the need for error correction with the bandwidth required to forward the redundant information. In turbo code design, the puncturing pattern is chosen to provide the largest minimum codeword weight for the punctured code for a given constituent codes and channel interleavers. The design method often involves a systematic computer search for the optimal choice of constituent codes, puncture patterns and interleavers. For example to achieve a turbo code rate of k/(k+1), one parity bit is transmitted for every k information bits presented to the encoder input. Assuming that two constituent encoders are used, the rates of the two constituents after puncturing are the same and the parity bits to be transmitted must alternate between the two encoders. Therefore, the puncturers partition the parity sequence from each of the constituent encoder into 2k-bit blocks, and save only one bit in each such block. Further, the puncturers are periodic in the sense that the same bit in each 2k-bit blocks is saved for both encoders. Using the notation P(u,v) to indicate a puncturer which saves the uth bit in every 2k-bit block for the first encoder and the vth bit in every 2k-bit block for the second encoder, where 1≦u,v≦2k. Note however that in this embodiment the puncturing is performed before the encoder which is the channel whereas for the turbo code, the puncturing is performed after the encoding.  
       FIG. 8   a  shows a further embodiment having a transmitter where the interleaved bit sequence of p (≧2) spatially multiplexed information blocks are combined and transmitted at a modulation mode with a higher number of bits per symbol in order to improve the data throughput of the STC and to decrease the MSI which will degrade the decoder performance. Here, p information blocks might be transmitted at different bits per symbol or modulation mode.  FIG. 8   a  shows the case where the same modulation mode is used for all p information block. Examples of modulation mode include for a 1 st  antenna 64QAM, and for a second antenna QPSK.  
      The interleaved sequences can be combined in a variety of ways, for example given two spatially multiplexed information blocks, i.e. p=2, and the information modulation mode is QPSK with two bits per symbol, the interleaved bits from the information blocks are {a1, a2} from the first block and {b1, b2} from the second block for each QPSK symbols. The interleaved bits are combined in an alternate fashion with the sequence {a1, b1, a2, b2} to provide one 16QAM symbol for the transmission of the interleaved block.  
       FIGS. 9   a  and  9   b  show a system according to a further embodiment in which channel coding is concatenated with the multi-path space-time coding. The system comprises a transmitter  710  having a plurality of transmit antennas  711  coupled to a MIMO channel  720 , and a receiver  730  having a plurality of receive antennas  731  which are also coupled to the MIMO channel  720 .  
      Referring to  FIG. 9   a,  the transmitter  710  comprises an interleaver  712  which receives a symbol sequence {x n } and provides an interleaved symbol sequence {{umlaut over (x)} n } as described previously. The symbol sequence {x n } is transmitted from a first antenna  711 - 0 , and the interleaved symbol sequence {{umlaut over (x)} n } is simultaneously transmitted from the second antenna  711 - 1 . The symbol sequence {x n } is received from a modulator  713 - 0  which modulates an incoming data stream {d n } for transmission, including mapping the bits to symbols. Various well known modulation schemes can be used, for example BPSK, QPSK, 64QAM. The modulator required will depend on the transmission rate in terms of bits transmitted per second expected from the system.  
      The bit stream {d n } is provided by a channel encoder  714  which provides additional error coding concatenated with the interleaved space time coding provided by the last stages ( 711 ,  712  and  713 ) of the transmitter  710 . Again any known coding scheme can be utilised, for example convolutional encoding, low-density parity check encoding or turbo-based encoding. The choice of channel coding scheme will depend on the block error rate requirement, the complexity of the decoder, etc, and other parameters known to those skilled in the art.  
       FIG. 9   b  shows a schematic of a receiver  730  for use with the transmitter  710  of  FIG. 9   a.  The receiver  730  comprises of two antennas  731 - 1  and  731 - 2 , which provide a corresponding plurality of input signals z n   1  to z n   2 . More generally a larger number n O  of receive antennas can be employed with a corresponding increase in the number of input signals z n   1  to z n   n     O   . The receiver  730  comprises two SISO equalisers  732 - 1  and  732 - 2  which receive input signals z n   1  and z n   2  from each of the antennas  731 - 1  and  731 - 2 . As described above with respect to  FIG. 5 , the equalisers and are arranged to recover the signals transmitted from each of the transmit antennas ({x n } and {{umlaut over (x)} n } respectively).  
      A turbo decoding approach can be used as the data is interleaved and then effectively encoded in parallel across the MIMO channel by the different ISI in the different channels between each transmit and receive antenna pair. The additional channel encoding provided by the encoder  714  in the transmitter  710  is concatenated with this “turbo coding”. Thus the equalisers  732 - 1  and  732 - 2  provide extrinsic probabilities for each transmitted data symbol, which is then followed by evaluating the extrinsic log-likelihood ratio of the transmitted bits that corresponds to that symbol. This second function is provided by the demapper blocks  733 - 1  and  733 - 2  coupled to the equalisers  732 - 1  and  732 - 2  respectively. A demapper maps the symbols to bits. In this context it functions to translate the symbol probabilities to bit probabilities as will be known to those skilled in the art.  
      The soft information L e   Eq  and the de-interleaved soft information {umlaut over (L)} e   Eq  from the respective MAP blocks  733 - 1  and  733 - 2  are added and passed to a decoder  736 . A de-interleaver  734  corresponding to the interleaver  712  of the transmitter  710  is used to de-interleave the soft information {umlaut over (L)} e   Eq  corresponding to the interleaved sequence {{umlaut over (x)} n } transmitted from the second transmitter antenna  711 - 2 . A combiner  735  sums the LLR values of the soft information before passing to the decoder  736 . This arrangement provides two independent soft information L e   Eq  and {umlaut over (L)} e   Eq  or a priori knowledge of the transmitted data passed on to the decoder.  
      The channel decoder  736  which corresponds to the channel encoder  714  of the transmitter  710 , then provides a posteriori information L p   Dec  of the transmitted data and this is passed back to the equalizers  732 - 1  and  732 - 2  as inputs for the next iteration. The equalizers require extrinsic information as its soft input and therefore the soft information that the equalizer provides to the decoder previously is subtracted before it is used by the equalizer (This ensures that an independent statistic is being fed back).  
      For the case of punctured STC shown in  FIGS. 7 and 8 , the soft information of the punctured bits d n,punctured  will not be available from the SISO equalizer that provides the estimate of the interleaved symbol sequence {{umlaut over (x)} n }. Here, a default soft value is given for the punctured bits where the bit d n,punctured  being +1 or −1 is equiprobable, i.e. {umlaut over (L)} e   Eq (d n,punctured )=0.  
       FIG. 10  shows the BER performance for the average signal to noise power ratio per information bit, E b /N O , by each receive antenna of a number of embodiments, compared with a number of a known channel-coded system. The embodiments shown utilise 8PSK half-rate (5,7) oct  convolutional-coded 4-by-2 and 2-by-2 multipath based space time coded system where MMSE based turbo-equalisation is used. The channel is assumed to be quasi-static, uncorrelated Rayleigh faded with five tap equal-weighted delay profile.  
      A preferred equaliser arrangement is now described for use with the embodiment described with respect to  FIG. 9   b.  Broadly speaking, this is a turbo equalizer in the form of a multi-dimensional transversal filter. Coefficients of the filter are adjusted according to a Minimum Mean Square Error (MMSE) criterion to mitigate the effects of both Inter-Symbol Interference (ISI) and Multi-Stream Interference (MSI) and provide a soft output, with the aid of soft information relating to multiple transmitted data signals received from a decoder. The equalizer processes signals from all the transmit antennas in parallel (although potentially in a time-multiplexed manner in processor-based embodiments) and is thus able to “detect” and equalise a multistream signal. The soft or likelihood information from the decoder is used to determine the covariance and mean of the multistream transmitted signal for evaluating the coefficients of the equalizer and also to determine a mean or expected value of the received signal for MMSE based detection.  
      In embodiments the SISO equalization may be performed in either or both of the time and frequency domains. Initially a time-domain implementation will be described; details of an alternative frequency-domain implementation will be given later.  
      The elements of the equaliser will generally be implemented by a digital signal processor and the structure and operation of a first, time-domain embodiment of the equaliser will therefore first be described in mathematical terms.  
      Consider first a signal transmission model for a linear, dispersive and noisy communication system with n I  inputs and n O  outputs (that is a n I ×n O  MIMO system). The complex-valued baseband equivalent signal model can be represented as by equation (1) below:  
               z   n     =         ∑     k   =   0       L   -   1       ⁢       h   k     ⁢     x     n   -   k           +     w   n               (   1   )             
 
 where L is the channel length in symbol periods, where z n =[z n   1  z n   2  . . . z n   n     O   ] T  is the signal received by the n O  receive antennas, where w n =[w n   1  w n   2  . . . w n   n     O   ] T  is the noise component, where x n =[x n   1  x n   2  . . . x n   n     I   ] T  is signal transmitted by the n I  transmit antennas, and where n labels a symbol (ie. in this case corresponds to time in symbol periods). The dispersive channel matrix is denoted by:  
         h   k     =       [           h   k     1   ,   1             h   k     2   ,   1           ⋯         h   k       n   I     ,   1                 h   k     1   ,   2             h   k     2   ,   2           ⋯         h   k       n   I     ,   2               ⋮       ⋮       ⋰       ⋮             h   k     1   ,     n   O               h   k     2   ,     n   O             ⋯         h   k       n   I     ,     n   O               ]     .         
 
      Here, h k   i,j  represents the kth channel tap for a channel link between an ith transmit antenna and a jth receive antenna as shown in  FIG. 2 .  
      Consider an embodiment of a transversal filter based equaliser with (integer) N coefficients or taps where N=N1+N2+1 (N1 and N2 in effect specifying the length of the causal and non-causal portions of the filter). The filter employs an observation of a block of received signal of length N in symbol periods, which is denoted as: 
 
 Z   n   =HX   n   +W   n    (2) 
 
where 
 
 Z   n   =[z   n−N2   T    . . . z   n   T    . . . z   n+N1   T ] T    (3) 
 
 is the Nn O ×1 received signal vector, 
 
 W   n   =[w   n−N2   T    . . . w   n   T    . . . w   n+N1   T ] T    (4) 
 
 is the Nn O ×1 received noise vector, 
 
 X   n   =[x   n−N2−L+1   T    . . . x   n   T    . . . x   n+N1   T ] T    (5) 
 
 is the (N+L−1)n I ×1 transmit signal vector which convolves with the Nn O ×(N+L−1)n i  channel impulse response (CIR) matrix H given by:  
             H   =     [           h     L   -   1             h     L   -   2           ⋯         h   0           0       n   O     ×     n   I             ⋯             0       n   O     ×     n   I               h     L   -   1             h     L   -   2           ⋯         h   0         ⋯           ⋰       ⋮       ⋮       ⋰       ⋰       ⋰           ⋯         0       n   O     ×     n   I               h     L   -   1             h     L   -   2           ⋯         h   0           ]             (   6   )             
 
      Determination of the filter coefficients and of a soft transmitted symbol estimate by the equaliser will next be considered.  
      An optimum linear estimate of the transmitted symbols {circumflex over (x)} n =[{circumflex over (x)} n   1  {circumflex over (x)} n   2  . . . {circumflex over (x)} n   n     I   ] T  upon receiving Z n , based on the second-order statistics (that is, means and covariances) has the form given in equation (7) below (see, for example, “An Introduction to Signal Detection and Estimation”, H. Vincent Poor, Second Edition, Springer, ISBN0-387-94173-8 at pages 221 to 233): 
 
{circumflex over ( x )} n   =E ( x   n )+ A   n   H   [Z   n   −E ( Z   n )]  (7) 
 
 where, as before, E(•) denotes a mean or expectation value and A n  is the set of N linear filter/equalizer coefficients at symbol (time) n. It can be seen from equation (7) that the estimate of the transmitted symbol {circumflex over (x)} n  is the mean offset of the filtered difference between the received signal vector Z n  and the ISI and MSI component E(Z n ) at time n. 
 
      Minimizing the mean square error cost function E(|x n −{circumflex over (x)} n | 2 ), an optimum set of filter coefficients A n  is given by: 
 
 A   n =cov( Z   n   ,Z   n ) −1 cov( Z   n   ,x   n )   (8) 
 
 where the covariance operator cov(x,y)=E(xy H )−E(x)E(y H ). Equation (7) can be expressed in the form: 
 
{circumflex over ( x )} n   =E ( x   n )+cov( x   n   ,x   n ) F   n   H   [Z   n   −E ( Z   n )]  (9) 
 
 where the expectation value of the received signal observed at the equalizer taps, in terms of the transmitted signal or an estimate of this signal, is given by: 
 
 E ( Z   n )= HE ( X   n )   (9a) 
 
      As will be seen later, E(Z n ) may be determined from the soft decoder output. In equation (9) the Nn O ×n i  filter matrix F n  is defined as  
                     F   n     =       R   ZZ     -   1       ⁢   S                 =         [       R   WW     +       HR   XX     ⁢     H   H         ]       -   1       ⁢   S                   (   10   )             
 
 where the covariances are defined as 
      R ZZ =cov(Z n ,Z n ),     R XX =cov(X n ,X n ),     R WW =cov(W n ,W n )    

      The Nn O ×n i  CIR matrix S introducing the symbol interference from the n-th transmitted symbols is given by: 
 
 S=H[ 0 n     t     ×(N2+L−1)n     t     I   n     t     ×n     t   0 n     t     ×N1n     t   ] H    (11) 
 
      In equation (11) matrix I i×i  is an i×i identity matrix and matrix 0 i×j  contains all zeros.  
      It can be understood from the form of the equalizer (filter) coefficient matrix F n  expressed in equation (10), which includes the channel matrix H as defined in equation (6), that the equalizer not only performs equalization on the ISI but also mitigates MSI.  
      The mean and covariance of the transmitted signal, E(x n ) and cov(x n ,x n ), which are used to compute the filter coefficients and the estimated transmitted signal, may be obtained using equations (16) and (17) below. The block-diagonal covariance matrix R XX  coomprises (N+L−1) block-diagonal blocks of cov(x n ,x n ) as follows:  
         R   XX     =     [           cov   ⁡     (       x     n   -   N2   -   L   +   1       ,     x     n   -   N2   -   L   +   1         )                                                   ⋰                                                 cov   ⁡     (       x     n   +   N1       ,     x     n   +   N1         )             ]         
 
      The CIR matrix H may be obtained from a MIMO channel estimation block in the receiver in a conventional manner. Thus in one embodiment known pilot or training sequences are periodically inserted into the signal from each transmit antenna and at the receiver these known sequences are encoded and provided to a channel estimator together with one (or more) input signal streams from the one (or more) receive antennas. Providing the training sequences in the signal streams have a low cross-correlation coefficient the channel estimator is then able to determine the CIR matrix H by, in effect, correlating the encoded known data sequence for each stream with the actual received data. An example of such a channel estimator is described in Ye Geoffrey Li, “Simplified channel estimation for OFDM systems with multiple transmit antennas”, IEEE Transactions on Wireless Communications, Vol. 1, No. 1, pg. 67, January 2002, which is hereby incorporated by reference.  
      Advantageously the channel estimation may also be performed iteratively by using the estimated transmitted symbols {circumflex over (x)} n   i  as additional training symbols. For background information relating to this reference may be made to Tetsushi Abe and Tad Matsumoto, “Space-Time Turbo Equalization and Symbol Detection in Frequency Selective MIMO Channels” in: Proc. Veh. Techn. Conference, IEEE VTS 5 th . Vol. 2. pg 1230-1234, 2001, also hereby incorporated by reference. Thus, for example, multiple, deinterleaved outputs from the decoder (one for each transmit antenna) may be re-encoded and provided to the channel estimator similarly to a known training sequence. In this way, an updated estimated value of H may be obtained on every turbo equalization iteration and this may in turn be used to compute the equalizer coefficients.  
      For good convergence behaviour the soft transmitted symbol information {circumflex over (x)} n   i  provided by the equalizer should be independent from the soft transmitted symbol information from the decoder in the iterative structure. At the transmitter a sequence of m bits, where m is the number of bits per symbol, is encoded as a codeword c n,j   i ∈{+1,−1},j=1, . . . , m for transmit antenna i. The decoder provides soft log likelihood ratio information L(c n,j   i ),j=1, . . . , m where L(c n,j   i )=ln{P(c n,j   i =+1)/P(c n,j   i =−1)} which, from the point of view of the equaliser, may be considered as a priori information. To provide good convergence behaviour the likelihood information for bits c n,j   i ,j=1, . . . , m (corresponding to symbol x n   i ) which are available to the equalizer is set to L(c n,j   i ) Equalizer =0,j=1, . . . , m to derive an equation for {circumflex over (x)} n   i . (During the turbo equalisation these values may also be initialised to zero). Then, eliminating the dependence of the equalisation on L(c n,j   i ),j=1, . . . , m provided by the decoder, and setting the expectation E(x n   i ) Equalizer =0 and the covariance cov(x n   i ,x n   i ) Equalizer =δ x,i   2 , where δ x,i   2  is an initial value, for example unity (depending upon the relative gain of the transmit antennas), for the signal variance of transmitted symbols from transmit antenna i, the ith component of the estimated transmitted symbol {circumflex over (x)} n  in equation (9) can be expressed as scaled version of F n  (using the matrix inversion lemma), as shown in equation (12) below: 
 
{circumflex over ( x )} n   i   =K   n   i   f   n   i     H     [Z   n −( E ( Z   n )− e   i   E ( x   n   i ))]  (12) 
 
 where the filter gain K n   i  is given by: 
 
 K   n   i =( 1+(δ   x,i   2 −cov( x   n   i   ,x   n   i )) f   n   i     H     e   i ) −1 ·δ x,i   2    (13) 
 
      In equations (12) and (13) f n   i  is the ith column of the filter matrix F n  defined in equation (10) and e i  is the ith column of the symbol interference matrix S given in equation (11).  
      Next a reduced complexity method of determining R ZZ   −1  is described, for computing the filter matrix F n  via equation (10). In order to avoid performing a direct matrix inversion of the Nn O ×Nn O  covariance matrix R ZZ  to compute the filter matrix F n  for every estimate of symbols {circumflex over (x)} n , a time-recursive update algorithm may be employed. The algorithm is similar to one described in the Tuchler et al. paper (ibid) and exploits the existence of common submatrices within a partitioned covariance matrix. The matrix R ZZ   −1  at a time n+1 may be determined by the manipulation of submatrices as set out in equation (14):  
                 R   ZZ     -   1       ⁡     (     n   +   1     )       =     [           U   N             u   _     N                 u   _     N   H           u   N           ]             (   14   )             
 
      These submatrices may in turn be determined based upon a previous R ZZ   −1  at a time n, as shown by equations (15) below:  
                       R   ZZ     -   1       ⁡     (   n   )       =     [           u   P             u   _     P   H                 u   _     P           U   P           ]                   U   N     =       ∑   p     -   1       ⁢           ⁢       +     ϖ   N       ⁢     u   N   H     ⁢     ϖ   N   H                         u   _     N     =       -     ϖ   N       ⁢     u   N                     u   N     =       [       σ   N     -       ω   N   H     ⁢     ϖ   N         ]       -   1                     ϖ   N     =       ∑   p     -   1       ⁢     ω   N                     [           ω   N               σ   N           ]     =       [       R   WW     +         HR   XX     ⁡     (     n   +   1     )       ⁢     H   H         ]     ·     [           0       (     N   -   1     )     ⁢     n   O     ×     n   O                   I       n   O     ×     n   O               ]                     ∑   p     -   1       ⁢     =       U   P     -         u   _     P     ⁢     u   P     -   1       ⁢       u   _     P   H                         (   15   )             
 
      The sizes of the matrices ω N , σ N , u P , {overscore (u)} P , U P  are (N−1)n O ×n O , n O ×n O , n O ×n O , (N−1)n O ×n O  and (N−1)n O ×(N−1)n O , respectively. It can therefore be seen that only the matrix inversion of n O ×n O  matrices u P  and (σ N −ω N   H {overscore (ω)} N ) is required to update the matrix R ZZ   −1 . The term R WW  is the noise covariance and a value for this may be determined, for example, theoretically from the receiver bandwidth (particularly where the front end filter has a relatively sharp cut-off; see also 3GPP TS25.215 v5.2.1 for background on received power), or by a measurement of the level of noise (and/or interference) at the receiver, or by a combination of both these techniques. Where the noise levels at the receive antennas are similar R WW  may approximate to a fraction of I.  
      The soft (likelihood) value inputs to the equaliser from the decoder will now be discussed.  
      The soft information provided by the decoder in terms of the likelihood values are utilized to provide the mean E(x n   i ) and covariance cov(x n   i ,x n   i ) of the transmitted symbols, which are required to compute x n   i  in Equation (9). The mean and covariance values are obtained as shown below:  
               E   ⁡     (     x   n   i     )       =       ∑       α   k     ∈   S       ⁢       α   k     ⁢     P   ⁡     (       x   n   i     =     α   k       )                   (   16   )             and                           cov   ⁡     (       x   n   i     ,     x   n   i       )       =       (       ∑       α   k     ∈   S       ⁢              α   k          2     ⁢     P   ⁡     (       x   n   i     =     α   k       )           )     -            E   ⁡     (     x   n   i     )            2               (   17   )             
 
      At the transmitter a sequence of m bits c is mapped to a symbol x selected from a Q=2 m -ary symbol alphabet S={a 1 , a 2 , . . . , a Q } in which each symbol a k  corresponds to an m bit pattern s k =[s k,1  s k,2  . . . s k,m ], s k,j ∈{+1,−1}. The probabilities of the transmitted symbols are given by:  
                     P   ⁡     (       x   n   i     =     α   k       )       =       ∏     j   =   1     m     ⁢     P   ⁡     (       c     n   ,   j     i     =     s     k   ,   j         )                             ⁢     =       ∏     j   =   1     n     ⁢       1   /   2     ·     {     1   +       s     k   ,   j       ⁢           ⁢     tanh   ⁡     (       L   ⁡     (     c     n   ,   j     i     )       /   2     )           }                         i   =   1     ,   ⋯   ⁢           ,     n   I     ,     k   =   1     ,   ⋯   ⁢           ,   Q                 (   18   )             
 
      The soft (likelihood) value outputs from the equaliser to the decoder will next be considered.  
      At the output of the equalizer, it is assumed the probability density functions of the estimated symbols p(x n   i |c n   i =s k ) are Gaussian with mean μ n,k   i  and variance σ n,k   2     i   . The log-likelihood ratios of the bits contained in the transmitted symbols are then given by:  
                       L   e     ⁡     (     c     n   ,   j     i     )       =       ln   ⁡     (       ∑       ∀       s   k     :     s     k   ,   j           =     +   1         ⁢     exp   ⁡     (         -            E   ⁡     (         x   ^     n   i     -     μ     n   ,   k     i       )            2           σ     n   ,   k     2     i       +     ϕ     n   ,   j     i       )         )       -                         ⁢     ln   ⁡     (       ∑       ∀       s   k     :     s     k   ,   j           =     -   1         ⁢     exp   ⁡     (         -            E   ⁡     (         x   ^     n   i     -     μ     n   ,   k     i       )            2           σ     n   ,   k     2     i       +     ϕ     n   ,   j     i       )         )                     ϕ     n   ,   j     i     =       ∑     ∀       j   ′     :       j   ′     ≠   j           ⁢       s     k   ,     j   ′         ⁢       L   ⁡     (     c     n   ,     j   ′       i     )       /   2                       (   19   )             
 
      Based on the derivation obtained for the estimate of the transmitted symbol x n   i  in equation (12) the mean and variance of the equalizer output may then be written:  
               μ     n   ,   k     i     =         K   n   i     ⁢       f   n     i   H       ⁡     [       E   ⁡     (         Z   n     |     x   n   i       =     α   k       )       -     (       E   ⁡     (     Z   n     )       -       ⅇ   i     ⁢     E   ⁡     (     x   n   i     )           )       ]         =             (   20   )                 K   n   i     ⁢     α   k     ⁢     f   n     i   H       ⁢     ⅇ   i                           and                           σ     n   ,   k       2   ⁢           ⁢   i       =         K   n   i2     ⁢     f   n   iH     ⁢     cov   ⁡     (       Z   n     ,         Z   n     |     x   n   i       =     α   k         )       ⁢     f   n   i       =             (   21   )                 K   n   i2     ⁡     (         f   n   iH     ⁢     R   zz     ⁢     f   n   i       -       cov   ⁡     (       x   n   i     ,     x   n   i       )       ⁢     f   n   iH     ⁢     ⅇ   n   i     ⁢     ⅇ   n   iH     ⁢     f   n   i         )                           
 
      The logarithmic summation of exponentials used in equation (19) to compute the equalizer&#39;s soft output,  
         ln   ⁡     (       ∑     k   =   1     n     ⁢           ⁢     exp   ⁡     (     λ   k     )         )       ,       
 
 may advantageously be computed using the Jacobian logarithmic relationship:  
               ln   ⁡     (       ∑     k   =   1     n     ⁢           ⁢     exp   ⁡     (     λ   k     )         )       =     J   ⁡     (       λ   n     ,     J   ⁡     (       λ     n   -   1       ,     ⋯   ⁢           ⁢     J   ⁡     (       λ   3     ,     J   ⁡     (       λ   2     ,     λ   1       )         )       ⁢   ⋯       )         )                     J   ⁡     (       λ   1     ,     λ   2       )       ≈       max   ⁡     (       λ   1     ,     λ   2       )       +       f   c     ⁡     (            λ   1     -     λ   2            )                   
 
      Here ƒ c (x) is a logarithmic correction function that can be tabulated in a look-up table such as that given in Table 1 below.  
                           TABLE 1                                   x   f c (x)                                                    x &gt; 3.7   0.0           3.7 ≧ x &gt; 2.25   0.05           2.25 ≧ x &gt; 1.5   0.15           1.5 ≧ x &gt; 1.05   0.25           1.05 ≧ x &gt; 0.7   0.35           0.7 ≧ x &gt; 0.43   0.45           0.43 ≧ x &gt; 0.2   0.55           0.2 ≧ x   0.65                      
 
      In this way the computational complexity of technique may be reduced by replacing the use of logarithmic and exponential functions in the likelihood calculation with a simple look-up table and “max( )” function.  
      To further reduce the computation complexity, the equalizer coefficients, that is terms F n  and K n   i  defined in equations (10) and (13) respectively, may be set to be non-varying with time n. An average of the covariance matrix  
           R   _     XX     =         1   P     ⁢       ∑     n   =   1     P     ⁢           ⁢       cov   ⁡     (       X   n     ,     X   n       )       ⁢           ⁢   and   ⁢           ⁢       cov   ⁡     (       x   n   i     ,     x   n   i       )       _           =       1   P     ⁢       ∑     n   =   1     P     ⁢     cov   ⁡     (       x   n   i     ,     x   n   i       )                 
 
 over a received symbol packet of P symbols, may instead be used to compute the coefficients in Equation (10) and (13). These time invariant equalizer coefficients F and K i  may then be used to facilitate a reduced complexity computation of the transmitted symbol {circumflex over (x)} n   i  in Equation (12). In order to avoid evaluating a new value of equalizer output variance for every symbol estimate, the variance σ n,k   i     2    can be approximated based on equation (21) with the time average  
                       σ     n   ,   k         2   i     ⁢               _     =       ⁢       1   P     ⁢       ∑     n   =   1     P     ⁢           ⁢     σ     n   ,   k       2   i                       =       ⁢       K   n     i   2       (           f   n     i   H       ⁡     (       H   ⁢           ⁢       R   _     XX     ⁢     H   H       +     R   WW       )       ⁢     f   n   i       -                       ⁢         cov   ⁡     (       x   n   i     ,     x   n   i       )       _     ⁢     f   n     i   H       ⁢     ⅇ   n   i     ⁢     ⅇ   n     i   H       ⁢     f   n     i   H         )                 (   22   )             
 
       FIG. 11  shows a flow diagram of an implementation the above-described turbo equalisation procedure. System parameters are determined or chosen at step S 800  including, for example, the symbol alphabet S and the number of filter coefficients N=N1+N2 (N1 and N2 are typically chosen such that N1=N2=L). Strictly speaking, however, this is not part of the actual equalisation procedure.  
      At step S 802  equaliser parameters are initialised, for example by setting E(x n   i )=0, cov(x n   i ,x n   i )=σ x,i   2 , and L(c n,j   i )=0 (a log likelihood ratio L(.) of 0 implying c=+1 and c=−1 are equiprobable), then at step S 804  a block of received signal Z n  is input from one or more receive antenna(s) and, at step S 806 , a estimated CIR matrix H is input from a channel estimator.  
      At step S 808  the mean E(x n   i ) and covariance cov(x n   i ,x n   i ) of the transmitted symbols are obtained, according (after the first iteration) to the a priori information of the transmitted bits from the SISO decoder L(c n,j   i ),i=1, . . . , n I ,j=1, . . . , m (where m is the number of bits per symbol) using equations (16), (17) and (18). Then, at step S 812 , using the mean E(x n   i ) and covariance cov(x n   i ,x n   i ) values of the transmitted symbols the equalizer coefficients F n  and K n   i  are obtained (using equations (10) and (13) respectively) and the mean of the received signal E(Z n ) is determined using equation (9a). The estimated transmitted signal {circumflex over (x)} n  is then given by equation (12), and the “extrinsic” information on the transmitted symbols, L e (c n,j   i ), which will provide a soft input to the SISO decoder from the equaliser, is obtained using equation (19) given the estimated transmitted symbols and the a priori information relating to the transmitted bits.  
      Deinterleaving is performed at step S 814 , corresponding to the interleaving performed after encoding and before transmission of the data at the transmitter. Thus the extrinsic information from the equalizer is deinterleaved before passing to the decoder. Then at step S 816  the extrinsic information relating to the transmitted bits is used as the a priori knowledge at the decoding stage to provide the decoder&#39;s extrinsic information. The deinterleaved signals are decoded in accordance with the encoding used at the transmitter. A check is then made, at step S 818 , to determine whether a termination criterion has been reached and, if it has not, the procedure loops back to reinterleave the extrinsic information from the decoder and to pass this back to the equalizer via step S 808 . The termination criterion may comprise, for example, a predetermined number of iterations or a determination of whether the decoder soft output, that indicates the reliability of the decoded data, is more than a threshold value. If the termination criterion has been met the equalized and decoded bits at the final iteration are provided as an output estimate of the transmitted data bits.  
       FIG. 12  shows a block diagram of a soft-in-soft-out filter-based MIMO equalizer  400 . The equaliser comprises an input  402  to receive a plurality of received signal blocks from a corresponding plurality of receive antennas, these received signal inputs providing a first set of inputs to a subtractor  404 . A second set of inputs to the equaliser  400  comprises a set of soft or likelihood values  406  from a soft-in-soft-out decoder, to provide a priori transmitted bit information to the equaliser. This information is processed by block  405  to determine E(x n   i ) and cov(x n   i ,x n   i ) and these (estimated) mean (or expectation) and covariance values are used by block  408  to perform a calculation (E(Z n )−e i E(x n   i )) to determine an expected set of received signal values. This provides a second set of inputs  410  to subtractor  404  for subtraction from the first set of inputs  402  to provide a “compensated” signal  412  to a linear (affine) or transversal filter  414 . The soft likelihood values  406  from SISO decoder are used by a filter coefficient calculation block  416  to determine a set of coefficients for filter  414 . A MIMO channel estimator  418  provides a channel estimate input  420  to this filter coefficient calculation block  416 . The output of filter  414  comprises a set of estimated transmitted signal values  422 , one for each transmit antenna, which are in turn provided to a soft decision block  424  which provides a corresponding plurality of outputs  426  comprising soft (or likelihood) transmitted bit values which are suitable for providing a soft input to the SISO decoder.  
      Referring now to  FIG. 14  this shows a block diagram of a soft-in-soft-out filter-based MIMO equalizer  900  configured to operate in the frequency domain. The main elements of equaliser  900  are similar to those of  FIG. 12  and are indicated by like reference numerals. The main differences are that calculation blocks  408  and  416  perform frequency domain calculations and that subtractor  404  and filter  414  operate in the frequency rather than the time domain (though, for simplicity of comparison, the same reference numerals have been employed and the channel estimator has been omitted). Thus the main additions are a serial-to-parallel conversion block  902  and fast Fourier transform (FFT) block  904  prior to subtractor  404  and filter  414 , and an inverse fast Fourier transform (FFT −1 )  906  and a parallel-to-serial conversion block  908  following filter  414 . These blocks convert the received signals from the time to frequency domain for processing and back to the time domain after processing.  
      Background information relating to SISO equalisation in the frequency domain can be found in Tüchler, M., Hagenauer, J., “Turbo equalization&#39; using frequency domain equalizers” in:  Proc. Allerton Conference,  Monticello, Ill., USA, October 2000, to which reference may be made. It will be appreciated, however, that this reference only discloses frequency domain turbo equalisation for a single-transmit-antenna-single-receive-antenna system. Other background information can be found in M. V. Clark, “Adaptive Frequency-Domain Equalization and Diversity Combining for Broadband Wireless Communications”, IEEE JSAC, vol. 16, no. 8, pp. 1385-1395, October 1998, and D. Falconer, S. L. Ariyavistakul, A. Benyamin-Seeyar, B. Eidson, “Frequency Domain Equalization for Single-Carrier Broadband Wireless Systems”, IEEE Communications Magazine, pp. 58-66, April 2002.  
      Continuing to refer to the example of a frequency domain implementation of the equaliser shown in  FIG. 14 , the signals from the receive antenna(s) are transformed into the frequency domain by Fast Fourier Transform (FFT) on a per FTT block/packet basis and the spectra of the received signals are equalized by multiplying the spectrum of each branch with the frequency domain coefficients of the equalizer. Frequency domain equalization again reduces the computational complexity of the equalization task by processing an entire FFT block/packet of received symbols at once in the frequency domain instead of symbol-by-symbol in the time domain although it will be appreciated that because of this the equalizer coefficients are time-invariant per FFT block. Furthermore a cyclic extension (for example, prefix) should be added to the transmitted symbol block/packet before transmission (to provide an integral number of cycles within the FFT interval) although this is discarded at the receiver. The frequency domain implementation of the turbo equaliser is suitable for both time and/or frequency domain coded data, and may be used, for example, with MIMO OFDM transmissions.  
      Referring now to  FIG. 13 , this shows an embodiment of a receiver  1000  incorporating a equaliser configured to operate as described above, in particular to operate as described with reference to  FIGS. 11 and 12 . The receiver itself is configured to operate according to  FIG. 5  is this example implementation.  
      Receiver  1000  comprises one or more receive antennas  1002   a, b  (of which two are shown in the illustrated embodiment) each coupled to a respective rf front end  1004   a, b,  for example similar to the rf front end of  FIG. 2   a,  and thence to a respective analogue-to-digital converter  1006   a,b  and to a digital signal processor (DSP)  1008 . DSP  1008  will typically include one or more processors  1008   a  (for example, for a parallel implementation of filter  414 ) and some working memory  1008   b.  The DSP  1008  has a data output  1010  and an address, data and control bus  1012  to couple the DSP to permanent program memory  1014  such as flash RAM or ROM. Permanent program memory  1014  stores code and optionally data structures or data structure definitions for DSP  1008 .  
      As illustrated program memory  1014  includes SISO equalisation code  1014   a  comprising (E(Z n )−e i E(x n   i )) calculation code, subtraction code, filter coefficient calculation code, linear (transversal) filter code and soft decision output code to, when running on DSP  1008 , implement the corresponding functions as described in detail above. Program memory  1014  also includes MIMO channel estimation code  1014   b  to provide a MIMO CIR estimate H, de-interleaver code  1014   c,  and interleaver code  1014   d.  Optionally the code in permanent program memory  1014  may be provided on a carrier such as an optical or electrical signal carrier or, as illustrated in  FIG. 7 , a floppy disk  1016 . The data output  1010  from DSP  1008  is provided to further data processing elements of receiver  1000  (not shown in  FIG. 7 ) as desired. These may include a block error decoder such as a Reed-Solomon decoder (although this could be part of the turbo decoder), and a baseband data processor for implementing higher level protocols.  
      The receiver front-end will generally be implemented in hardware whilst the receiver processing will usually be implemented at least partially in software although one or more ASICs and/or FPGAs may also be employed. The skilled person will recognise that all the functions of the receiver could be performed in hardware and that the exact point at which the signal is digitised in a software radio will generally depend upon a cost/complexity/power consumption trade-off.  
      Applications of the invention have been mainly described in the context of a MIMO system with time domain coding but embodiments of the invention are also useful in frequency domain coded systems such as MIMO-OFDM (Orthogonal Frequency Division Multiplexed) systems. For example the invention may be employed with the European Hiperlan/2 or US IEEE 802.11a standards for 54 Mbps wireless networks. Embodiments of the invention may also be employed in non-wireless applications such as magnetic or optical disk drive read head circuitry where, for example, multiple layers of a disk in effect act as multiple transmitters, one or more heads receiving read data influenced by “transmitted” signals from more than one layer.  
      The skilled person will recognise that the above-described apparatus and methods may be embodied as processor control code, for example on a carrier medium such as a disk, CD- or DVD-ROM, programmed memory such as read only memory (Firmware), or on a data carrier such as an optical or electrical signal carrier. For many applications embodiments of the invention will be implemented on a DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array). Thus the code may comprise conventional programme code or microcode or, for example code for setting up or controlling an ASIC or FPGA. The code may also comprise code for dynamically configuring re-configurable apparatus such as re-programmable logic gate arrays. Similarly the code may comprise code for a hardware description language such as Verilog™ or VHDL (Very high speed integrated circuit Hardware Description Language). As the skilled person will appreciate, the code may be distributed between a plurality of coupled components in communication with one another. Where appropriate, the embodiments may also be implemented using code running on a field-(re)programmable analog array or similar device in order to configure analog hardware.  
      The skilled person will also appreciate that the various embodiments and specific features described with respect to them could be freely combined with the other embodiments or their specifically described features in general accordance with the above teaching. The skilled person will also recognise that various alterations and modifications can be made to specific examples described without departing from the scope of the appended claims.