IMPROVEMENTS TO A MULTI-USER MIMO-OFDM SYSTEM Cross-Reference to Related Applications
[001] The present application claims priority from the Australian provisional application No. 2015902782 filed on 14 July 2015, Australian provisional application No. 2015902781 filed on 14 July 2015, and Australian provisional application No. 2015902780, the contents of each are incorporated herein by reference.
Field of Invention
[002] The present invention relates generally to wireless communication and, in particular, to multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU- MIMO-OFDM) wireless communication systems.
Background
[003] The use of multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU-MIMO-OFDM) has been considered for next-generation wireless systems. Figure 1 shows an example of MU-MIMO-OFDM system where the central access point (AP), equipped with NAP antennas, communicates with NUT user terminals (UTs), each equipped with a single antenna. Wireless OFDM links between the AP and the UTs can be established at the same time using the same radio frequency, improving the spectrum efficiency of the system, ideally, by the minimum of NAP and NUT, compared to a conventional single-transmitter-single-receiver system. This mode of operation is also known as space division multiple access (SDMA). Uplink MU-MIMO-OFDM transmission (from UTs to AP) can be realised by the AP receiver having an accurate knowledge of the uplink channel. Downlink MU-MIMO-OFDM transmission (from AP to UTs) can be realised by the AP transmitter having an accurate knowledge of the downlink channel.
[004] One of the challenges to realise a successful implementation of a MU-MIMO-OFDM system achieving higher spectrum efficiency is to have an efficient and accurate channel
estimation method. Basically, channel estimation errors degrade achievable signal to noise plus interference ratio (SNIR), both for uplink and downlink, which in turn degrades achievable data transfer rates.
[005] Accurate estimation of OFDM channel is typically performed by sending symbols known by the receiver in advance. Such symbols known by the receiver in advance for the purpose of channel estimation are referred as channel training symbols. The longer the time the system spends sending known symbols for channel estimation, the shorter the time the system can spend for sending information. The time that the system spends for channel estimation is referred as channel training overheads. Typically, the channel training overheads increases with the number of transmitters, as the estimation of the channel is required for each active transmitter. A method for efficiently and accurately estimating channels in the presence of a large number of transmitters is called for.
[006] One known method for performing channel estimation is to use comb-pilot sub-carriers with phase slope estimation in the presence of OFDM frame timing offset. Generally, conventional channel estimation methods that use comb-pilot sub-carriers estimate the channel coefficients at comb-pilot sub-carriers and then compute the channel coefficients of the remaining sub-carriers by interpolating the estimated channel coefficients of the comb-pilot sub-carriers.
[007] As shown in Figure 2, the conventional comb-pilot sub-carrier arrangement places comb-pilot sub-carriers uniformly along the frequency. This example shows an interpolation factor of 4 with equal spacing between comb-pilot sub-carriers. This conventional equally spaced arrangement was previously recommended in the absence of prior knowledge about the channel. This conventional equally spaced arrangement is also known to be beneficial in utilising certain types of interpolation methods, such as transform-domain processing. Previously, the phase slope of the channel coefficients along the frequency was estimated by
the estimated channel coefficients of equally spaced comb-pilot sub-carriers, which inevitably has a larger variation due to the larger spacing of the comb-pilot sub-carriers.
[008] The spectrum efficiency of an OFDM communication link improves by using less sub- carriers for pilot and more sub-carriers for transmitting data. The ratio of the number of comb-pilot sub-carriers over the number of all sub-carriers for which the channel coefficients are calculated by the interpolation is known as the interpolation factor. There is a trade-off between achieving higher spectrum efficiency and degradation in channel estimation accuracy by using a larger interpolation factor.
[009] In practice OFDM frame timing offset causes fast phase changes in estimated channel coefficients of the comb-pilot sub-carriers, and results in significant error in estimating channel coefficients at remaining sub-carriers by interpolation. Previously proposed methods were found to work well up to the OFDM frame timing offset in terms of N I (2 F) base band samples, where N is the number of base band samples per OFDM frame and F is the interpolation factor.
[010] However, currently there is no known method that can allow the OFDM frame timing offset larger than N I (2 F) without ambiguity.
[011] Another of the challenges is to have an efficient and accurate channel state feedback method for a MU-MIMO-OFDM system. Generally, the access point is equipped with multiple transmitters communicating with multiple user terminals each having one or more receiving antennas. With the access point knowing the downlink channel coefficients, the spectrum efficiency of the multi-user MEVIO downlink can increase linearly with the number of transmitters at the access point, provided sufficient number of users are present in the system.
[012] In order to perform downlink MU-MIMO-OFDM, the access point transmitters need to know the downlink channel. The access point can identify the downlink channel by 1) estimating the downlink channel at each user terminal by sending channel training symbols in a first time period, and 2) receiving the estimated downlink channel information from each user terminal in a second time period. The longer the MU-MIMO-OFDM system spends sending estimated downlink channel information, the shorter the time the MU-MIMO-OFDM system can spend sending information. The time that system spends feeding back estimated channel information is referred as channel feedback overheads. Channel feedback overheads may be reduced if channel information is compressed with some loss of information, referred to as channel compression. Typically, the time required for the system to feedback the channel information increases with the number of transmitter, as the channel information is required for each active transmitter.
[013] A number of well-known channel state feedback schemes have been previously investigated including analog feedback and vector quantisation. It has been concluded from these investigations that the most suitable method in terms of simplicity and overhead minimisation for multi-user MEVIO-OFDM is to use time-domain quantisation. This has therefore lead to the use of discrete Fourier transform (DFT) based channel compression for the purposes of efficient channel feedback in multi-user MIMO-OFDM communication. DFT based channel compression has been shown to theoretically outperform other known channel compression methods. The use of DFT to transform frequency domain channel coefficients into time domain impulse response coefficients and the use of scalar uniform quantisation with some (unspecified) bit-allocation scheme was suggested to quantise the time domain impulse response real and imaginary coefficients. The method was shown to achieve better sum rates over previous methods analytically.
[014] Anther particular challenge to realise a successful implementation of a MU-MIMO- OFDM systems is to reduce the required computational complexity. Zero-forcing detection and zero-forcing pre-coding are known as low complexity linear receiver and pre-coder for
MU-MIMO-OFDM uplink and downlink. However, even with these linear low-complexity methods, the computational complexity required for zero-forcing based uplink and downlink MU-MIMO-OFDM can increase dramatically, as both methods involve inversion of a channel matrix, wherein the matrix size can become large with a large number of transmitters.
[015] Interpolation of channel inverse in point-to-point MEVIO-OFDM communication was proposed previously. In particular, the interpolation of channel inverse is achieved by performing interpolation separately of the adjoint and determinant of the channel matrix. This is expressed as follows: adj H^
f ; det H(ip)
where H is the channel matrix. It was concluded that interpolating the channel matrix from a smaller set of inverses will, in general, not be possible.
[016] A method for interpolation-based QR decomposition in MIMO-OFDM systems has also previously been proposed. This method is applicable to point-to-point MEVIO channels as well as point-to-multipoint multi-user MIMO channel that requires per-tone QR decomposition. In this method, the interpolation is performed separately on Q and R matrices of the channel matrix.
[017] There is therefore a need to alleviate one or more of the above mentioned challenges or provide a useful alternative.
[018] The reference in this specification to any prior publication (or information derived from it), or to any matter which is known, is not, and should not be taken as, an acknowledgement or admission or any form of suggestion that that prior publication (or information derived from it) or known matter forms part of the common general knowledge in the field of endeavour to which this specification relates.
Summary
[019] In one aspect there is provided a method including:
estimating, by a receiving device, channel coefficients of locally consecutive pilot sub- carriers for a multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU-MIMO OFDM) system;
estimating, by the receiving device, a phase slope by using the estimated channel coefficients at the locally consecutive pilot sub-carriers;
removing, by the receiving device, the phase slope from the estimated channel coefficients at the locally consecutive pilot sub-carriers to obtain phase slope removed channel coefficients;
determining, by the receiving device, phase slope removed channel coefficients of remaining sub-carriers by interpolating the phase slope removed channel coefficients; and applying, by the receiving device, the phase slope to the phase slope removed channel coefficients at the locally consecutive pilot sub-carriers and the remaining sub-carriers to obtain a plurality of channel coefficients.
[020] In certain embodiments, the receiving device is able to estimate the phase slope without ambiguity up to N / 2, where N is a number of base band samples per OFDM frame for the MU-MIMO OFDM system.
[021] In certain embodiments, the phase slope is calculated according to Equation 3.
[022] In certain embodiments, removing the phase slope from the estimated channel coefficients at the locally consecutive pilot sub-carriers is performed according to Equation 6.
[023] In certain embodiments, interpolating the phase slope removed estimated channel coefficients includes linear interpolation.
[024] In certain embodiments, the linear interpolation is performed according to Equation 7.
[025] In certain embodiments, applying the phase slope to the plurality of channel coefficients at the locally consecutive pilot sub-carriers and the remaining sub-carriers is performed according to Equation 8.
[026] In certain embodiments, the receiving device is a user terminal. [027] In certain embodiments, the receiving device is an access point.
[028] In certain embodiments, the method includes:
performing, by the user terminal, a discrete cosine transform (DCT) of the plurality of channel coefficients to obtain DCT channel coefficients;
quantising, by the user terminal, the DCT channel coefficients to obtain quantised DCT channel coefficients;
transferring, from the user terminal to an access point, the quantised DCT channel coefficients; and
performing, by the access point, an inverse discrete cosine transform (IDCT) of the quantised DCT channel coefficients to obtain the plurality of channel coefficients in the frequency domain.
[029] In certain embodiments, the DCT channel coefficients include real DCT channel coefficients determined according to Equation 9 and imaginary DCT channel coefficients determined according to Equation 10.
[030] In certain embodiments, quantising the DCT channel coefficients to obtain quantised DCT channel coefficients is performed by uniform scalar quantization on the real and imaginary parts of the DCT channel coefficients.
[031] In certain embodiments, performing the IDCT of the quantised DCT channel coefficients includes performing the IDCT upon the quantized real part of the DCT channel coefficients according to Equation 11 and performing the IDCT upon the quantized imaginary part of the DCT channel coefficients according to Equation 12 such that the plurality of channel coefficients in the frequency domain is restored according to Equation 13.
[032] In certain embodiments, the method includes:
determining, using a OFDM training symbol received from a user terminal, wherein the plurality of channel coefficients are uplink channel coefficients for the user terminal to obtain estimated uplink channel coefficients at channel inverse sub -carrier;
performing channel inversion at the channel inverse sub-carrier; and
performing interpolation of channel inverse by directly interpolating elements thereof; wherein OFDM data symbols received from the user terminal are reconstructable by the access point using the interpolated channel inverse.
[033] In certain embodiments, the method includes:
receiving, at the access point from a user terminal, the plurality of coefficients, wherein the plurality of coefficients are estimated downlink channel coefficients;
obtaining, at the access point, estimated downlink channel coefficients at channel inverse sub-carrier;
performing, at the access point, channel inversion at channel inverse sub-carrier; and performing interpolation of channel inverse by directly interpolating elements thereof; wherein OFDM data symbols transmitted to the user terminal are precoded with the channel inverse such that the user terminal can reconstruct the OFDM data symbols.
[034] In a second aspect there is provided a receiving device configured to:
estimate channel coefficients of locally consecutive pilot sub-carriers for a multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU-MIMO OFDM) system;
estimate a phase slope by using the estimated channel coefficients at the locally consecutive pilot sub-carriers;
remove the phase slope from the estimated channel coefficients at the locally consecutive pilot sub-carriers to obtain phase slope removed channel coefficients;
determine phase slope removed channel coefficients of remaining sub -carriers by interpolating the phase slope removed channel coefficients; and
apply the phase slope to the phase slope removed channel coefficients at the locally consecutive pilot sub-carriers and the remaining sub-carriers to obtain a plurality of channel coefficients.
[035] In certain embodiments, the receiving device is configured to estimate the phase slope without ambiguity up to N / 2, where N is a number of base band samples per OFDM frame for the MU-MIMO OFDM system.
[036] In certain embodiments, the receiving device is configured to calculate the phase slope according to Equation 3.
[037] In certain embodiments, the receiving device is configured to remove the phase slope from the estimated channel coefficients of the locally consecutive pilot sub -carriers according to Equation 6.
[038] In certain embodiments, the receiving device is configured to interpolate the phase slope removed channel coefficients at the locally consecutive pilot sub-carriers using linear interpolation.
[039] In certain embodiments, the receiving device is configured to perform linear interpolation according to Equation 7.
[040] In certain embodiments, the receiving device is configured to apply the phase slope to the plurality of channel coefficients at the locally consecutive pilot sub -carriers and the remaining sub-carriers is performed according to Equation 8..
[041] In certain embodiments, the receiving device is a user terminal.
[042] In certain embodiments, the receiving device is an access point.
[043] In certain embodiments, the receiving device is configured to:
perform a discrete cosine transform (DCT) of the plurality of channel coefficients to obtain DCT channel coefficients;
quantise the DCT channel coefficients to obtain quantised DCT channel coefficients; and
transfer, to an access point, the quantised DCT channel coefficients such that the access point is able to perform an inverse discrete cosine transform (IDCT) of the quantised DCT channel coefficients to obtain the plurality of channel coefficients in the frequency domain.
[044] In certain embodiments, the DCT channel coefficients include real DCT channel coefficients determined according to Equation 9 and imaginary DCT channel coefficients determined according to Equation 10.
[045] In certain embodiments, the receiving device is configured to quantize the DCT channel coefficients to obtain quantised DCT channel coefficients by performing uniform scalar quantization on the real and imaginary parts of the DCT channel coefficients.
[046] In certain embodiments, the receiving device is configured to:
determine, using a OFDM training symbol received from a user terminal, the plurality of channel coefficients, wherein the plurality of channel coefficients are uplink channel
coefficients for the user terminal to obtain estimated uplink channel coefficients at channel inverse sub-carrier;
performing channel inversion at the channel inverse sub-carrier; and
performing interpolation of channel inverse by directly interpolating elements thereof; wherein OFDM data symbols received from the user terminal are reconstructable by the receiving device using the interpolated channel inverse.
[047] In certain embodiments, the receiving device is configured to:
receive, from a user terminal, the plurality of coefficients, wherein the plurality of coefficients are estimated downlink channel coefficients;
obtain estimated downlink channel coefficients at channel inverse sub-carrier;
perform channel inversion at channel inverse sub-carrier; and
perform interpolation of channel inverse by directly interpolating elements thereof; wherein OFDM data symbols transmitted to the user terminal are precoded with the channel inverse such that the user terminal can reconstruct the OFDM data symbols.
[048] In a third aspect there is provided a system including:
the receiving device provided in the form of a user terminal as described above; and an access device configured to perform an inverse discrete cosine transform (IDCT) of the quantised DCT channel coefficients to obtain the plurality of channel coefficients in the frequency domain.
[049] In certain embodiments, the access device is configured to perform the IDCT of the quantised DCT channel coefficients by performing the IDCT upon the quantized real part of the DCT channel coefficients according to Equation 11 and performing the IDCT upon the quantized imaginary part of the DCT channel coefficients according to Equation 12 such that the plurality of channel coefficients in the frequency domain is restored according to Equation 13.
[050] In a fourth aspect there is provided a method of performing channel feedback compression in a multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU-MIMO OFDM) system, wherein the method includes:
performing, by a user terminal, a discrete cosine transform (DCT) of a plurality of channel coefficients to obtain DCT channel coefficients;
quantizing, by the user terminal, the DCT channel coefficients to obtain quantised DCT channel coefficients;
transferring, from the user terminal to an access point, the quantised DCT channel coefficients;
performing, by the access point, an inverse discrete cosine transform (IDCT) of the quantised DCT channel coefficients to obtain the plurality of channel coefficients in the frequency domain.
[051] In certain embodiments, the DCT channel coefficients include real DCT channel coefficients determined according to Equation 9 and imaginary DCT channel coefficients determined according to Equation 10.
[052] In certain embodiments, quantising the DCT channel coefficients to obtain quantised DCT channel coefficients is performed by uniform scalar quantization on the real and imaginary parts of the DCT channel coefficients.
[053] In certain embodiments, performing the IDCT of the quantised DCT channel coefficients includes performing the IDCT upon the quantized real part of the DCT channel coefficients according to Equation 11 and performing the IDCT upon the quantized imaginary part of the DCT channel coefficients according to Equation 12 such that the plurality of channel coefficients in the frequency domain is restored according to Equation 13.
[054] In a fifth aspect there is provided a multi-user multiple-input multiple-output orthogonal frequency division multiplexing (MU-MIMO OFDM) system configured to perform channel feedback compression, wherein the system includes:
a plurality of user terminals, wherein each user terminal is configured to:
perform a discrete cosine transform (DCT) of a plurality of channel coefficients to obtain DCT channel coefficients;
quantize the DCT channel coefficients to obtain quantised DCT channel coefficients;
transfer to an access point, the quantised DCT channel coefficients;
the access point configured to:
receive the quantised DCT channel coefficients from each user terminal;
perform, upon the quantised DCT channel coefficients received from each terminal, an inverse discrete cosine transform (IDCT) of the quantised DCT channel coefficients to obtain the plurality of channel coefficients in the frequency domain for the respective user terminal.
[055] In certain embodiments, the respective DCT channel coefficients obtained by each user terminal include real DCT channel coefficients determined according to Equation 9 and imaginary DCT channel coefficients determined according to Equation 10.
[056] In certain embodiments, each user terminal is configured to quantize the respective DCT channel coefficients to obtain the quantized respective DCT channel coefficients using uniform scalar quantization on the real and imaginary parts of the respective DCT channel coefficients.
[057] In certain embodiments, the access device is configured to perform the IDCT of each set of quantised DCT channel coefficients by performing the IDCT upon the respective quantized real part of each set of DCT channel coefficients according to Equation 11 and by performing the IDCT upon the respective quantized imaginary part of each set of DCT
channel coefficients according to Equation 12 such that the plurality of channel coefficients in the frequency domain for each user terminal is restored according to Equation 13.
[058] Other aspects and embodiments will be appreciated throughout the detailed description of the example embodiments.
Description of Drawings
[059] Example embodiments should become apparent from the following description, which is given by way of example only, of at least one preferred but non-limiting embodiment, described in connection with the accompanying figures.
[060] Figure 1 is an example of MU-MIMO-OFDM system;
[061] Figure 2 is an example of a conventional pilot sub-carrier arrangement;
[062] Figure 3 is an example of a pilot sub-carrier arrangement including locally consecutive pilot sub-carriers;
[063] Figure 4 is an example of a method performed by a receiving device for performing channel estimation;
[064] Figure 5 A is an example OFDM channel frequency response;
[065] Figure 5B is an example of a comparison of channel estimation error results using conventional comb-pilot sub-carrier and locally consecutive pilot sub-carrier arrangements;
[066] Figure 6 a flowchart representing an example method utilising locally consecutive sub- carriers for a MU-MIMO OFDM system;
[067] Figure 7 is a flow chart representing an example method of using DCT for channel compression for a MU-MEVIO OFDM system;
[068] Figure 8 is graph showing example channel feedback error results using DCT channel compression using uniform bit allocation;
[069] Figure 9 is a graph showing example channel feedback error results using DFT channel compression, wherein the results are based on uniform bit allocation;
[070] Figure 10 is graph showing example channel feedback error results using DCT channel compression methods, wherein bit allocation was based on maximum amplitude of coefficients;
[071] Figure 11 is graph showing example channel feedback error results using DFT channel compression methods, wherein bit allocation was based on maximum amplitude of coefficients;
[072] Figure 12 is a flowchart representing an example method performed by an access point of a MU-MIMO-OFDM system for uplink signal processing;
[073] Figure 13 is a flowchart representing an example method performed by an access point of a MU-MIMO-OFDM system for downlink signal processing;
[074] Figure 14 is an example of a uplink comb-pilot sub-carrier arrangement with locally consecutive pilot sub-carriers;
[075] Figure 15 is a flowchart representing an example method of estimating channel coefficients and calculating the channel inversion for a MU-MIMO-OFDM system based on the example uplink comb-pilot sub-carrier arrangement of Figure 14;
[076] Figure 16 is an example of a downlink comb-pilot sub-carrier arrangement with locally consecutive pilot sub-carriers;
[077] Figure 17 is a flowchart representing an example method of estimating channel coefficients, compressing the estimate channel coefficients using DCT and calculating the channel inversion for a MU-MIMO-OFDM system based on the example downlink comb- pilot sub-carrier arrangement of Figure 16;
[078] Figure 18 is a graph indicative of results of a simulation of a MU-MIMO-OFDM downlink of a MU-MIMO-OFDM system; and
[079] Figures 19A and 19B collectively form a schematic block diagram representation of an example embedded electronic device which can be used as the access point and/or the user device.
Detailed Description
[080] Where reference is made in any one or more of the accompanying drawings to steps and/or features, which have the same reference numerals, those steps and/or features have for the purposes of this description the same function(s) or operation(s), unless the contrary intention appears.
[081] It will be appreciated that the term "channel inverse" refers to the pseudo inverse matrix of a channel matrix. Coherence of the channel matrix as a function of frequency is utilised to reduce the number of directly calculating the channel inversion. The channel inversion is calculated only at selected sub-carriers and the channel inversion at remaining sub-carriers are to be calculated by some form of interpolation/extrapolation methods.
[082] Referring to Figure 3 there is shown an example pilot sub-carrier arrangement including locally consecutive pilot sub-carriers 300 together with comb-pilot sub-carriers.
[083] In this example, the location of the original comb-pilot sub-carriers P2 and 4 (relative to the conventional equally spaced arrangement depicted in Figure 2) are shifted to form locally consecutive pilot sub-carrier 300 around P3.
[084] Phase slope estimation can then be performed by using the estimated channel coefficients at the locally consecutive pilot sub-carriers 300. Advantageously, the phase slope can be estimated without ambiguity up to N I 2. Furthermore, spectrum efficiency is not compromised by allocating the same number of comb-pilot sub-carriers to that which is shown in Figure 2.
[085] The channel estimation accuracy may be degraded for the sub-carriers around the original comb-pilot sub-carriers which have been shifted ( 2 and 4 in Figure 3), however the effects are found to be negligible in the overall performance as shown below by the computer simulation which is discussed in relation to Figures 5A and 5B.
[086] While the above example uses three locally consecutive pilot sub-carriers 300, two or more locally consecutive pilot sub-carriers can be implemented. One or more groups of locally consecutive pilot sub-carriers 300 can be defined and the estimation of the phase slope can be performed by weighted average on the basis of pilot sub-carrier amplitude.
[087] Referring to Figure 4 there is shown a flow chart representing a method 400 performed by a receiver in a MU-MIMO-OFDM system. In particular, at step 410 the method 400 includes estimating channel coefficients at locally consecutive pilot sub-carriers. At step 420, the method 400 includes estimating a phase slope by using the estimated channel coefficients at the locally consecutive pilot sub-carriers. At step 430, the method includes determining the channel coefficients of remaining sub-carriers by interpolating the estimated channel coefficients at the pilot sub-carriers.
[088] It will be appreciated that the channel coefficients at the sub-carriers (including locally consecutive pilot sub-carriers and the remaining sub-carriers) can then be used to precode data to be wirelessly transmitted or decode data wirelessly received by the receiver. It will also be appreciated that the receiver may be part of an access point or a user terminal.
[089] Referring to Figure 5A there is shown an example OFDM channel frequency response simulated utilising locally consecutive pilot sub-carriers. In particular, in this simulation, an OFDM system with 3,456 sub-carriers with sub-carrier spacing of 3.90625 kHz (i.e. 8 MHz / 2048) was considered.
[090] The interpolation factor was set to 4, with the number of comb-pilot sub-carriers being 864 (i.e. 3,456 / 4). Two groups of five locally consecutive pilot sub-carriers were defined for the simulation, one at a lower frequency (817 to 821) and another at a higher frequency (2609 to 2613) in order to take advantage of frequency diversity. The total number of comb-pilot sub-carriers was the same for the locally consecutive pilot sub-carriers method and the conventional equally spaced sub-carrier method. Channel simulation was performed at IF using 10,240 FFT. Cyclic prefix of length 1/4 of the OFDM symbol length was used, which corresponds to 2,560 IF samples (i.e. 10,240 / 4). Simple real and imaginary separate linear interpolation was used for both the locally consecutive pilot sub-carriers method and the conventional equally spaced sub-carrier method.
[091] Figure 5B shows the results of channel estimation error as a function of OFDM frame timing offset when receiver signal to noise ratio was set to 25 dB. The conventional method has phase ambiguity after the OFDM frame synchronisation delay of N / (2F) equals 1,280 IF samples (i.e. 10,240 / (2 x 4)). In comparison, the locally consecutive pilot sub-carriers method enables accurate channel estimation using linear interpolation over all cyclic prefix length.
[092] Referring to Figure 6 there is shown a flowchart representing a method 600 utilising locally consecutive sub-carriers for a MU-MIMO-OFDM system.
[093] In particular, the method 600 is described in relation to OFDM frame timing offset. A single-transmitter-single-receiver OFDM link can be described in baseband frequency domain as:
R (ip) = H (ip ) x (ip) + N (ip) (1) where R(ip) is a received symbol, X(Z'F) is a transmitted symbol, and N(ip) is complex Gaussian noise, Z'F = 1, 2, NF is an OFDM sub-carrier index and NF is the total number of OFDM sub- carriers. The complex baseband frequency domain channel coefficient at z' Fth OFDM sub- carrier, H(iF), includes the effect of OFDM frame timing offset which causes linear phase shift as a function of frequency.
(2)
where Θ is referred as phase slope in this document.
[094] At step 610, the method 600 includes estimating the channel coefficients at comb-pilot sub-carriers including the locally consecutive pilot sub-carriers.
[095] In particular, step 610 can be performed by sending a known symbol at comb-pilot sub-carriers and by dividing the received symbol with the known symbol. Assuming JC(Z
'F) is known at the receiver, we have:
where z
'p = 1, 2, Np, Np is the total number of comb-pilot sub-carriers, and F is an integer representing the ratio of the number of OFDM sub-carriers over the number of comb-pilot sub-carriers. For simplicity, we assume that the number of OFDM sub-carriers is an integer multiple of the number of comb-pilot sub-carriers.
[096] At step 620, the method 600 includes estimating the phase slope by using the estimated channel coefficients at the locally consecutive pilot sub-carriers.
[097] In particular, as step 620, the estimation of the phase slope can be calculated as:
Σ O's + + 1)| \ HE O's + )| (HE O's + + 1) (is + IT )) -1
(5)
where is is an index of sub-carrier one less than the lowest index of the consecutive pilot sub- carriers, Z
'T = 1, 2, NT, and Nr is the number of consecutive pilot sub-carriers. Nr should be the minimum of 2 and the maximum of any number that implementation can support.
[098] At step 630, the method 600 includes compensating the phase slope for the estimated channel coefficients at pilot sub-carriers.
[099] In particular, step 630 is performed by applying the estimated phase slope to the estimated channel coefficients at the comb-pilot sub-carriers as shown below.
GE (l + (ip - 1) F) = HE (l + p - 1) F) exp (-βΕ [l + (ip - l) ]) (6)
[0100] At step 640, the method 600 includes performing interpolation to estimate the channel coefficients at remaining sub-carriers using phase compensated estimated channel coefficients at pilot sub-carriers.
[0101] In particular, step 640 can be performed by simple linear interpolation as shown below.
, . L - 1 - (L - 1) F , l - L + 1 + (L - l) F . .
GP {ip ) = -E GE (1 + ipF) + ^ P } GP (1 + {ip - l) F) (7)
where 1 + (zp - 1) F≤ iP < 1 + ipF .
[0102] At step 650, the method 600 includes applying the phase slope to the estimated channel coefficients.
[0103] In particular, step 650 is mathematically described below.
HB ' F ) = GP (iP ) exp ( j6EzF ) (8)
[0104] As can be appreciated, multiple groups of locally consecutive pilot sub-carriers can be allocated within one OFDM symbol, in order to enhance the accuracy of the estimation and/or taking advantage of frequency diversity. The above method is based on weighted average of multiple estimated values of phase slope. Other methods, such as simple average or intelligent selection based on amplitudes can be used.
[0105] Referring to Figure 7A there is shown another example method 700 of obtaining channel state feedback in a MU-MIMO-OFDM system.
[0106] In particular, at step 705, the method 700 includes the user terminal obtaining channel feedback data. At step 710, the method 700 includes the user terminal performing discrete cosine transform (DCT) of the channel feedback data. At step 715, the method 700 includes the user terminal quantising the DCT channel feedback data. At step 720, the method 700 includes the user terminal transferring the quantised DCT channel feedback data to the access point. At step 725, the method 700 includes the access point performing inverse discrete cosine transform (IDCT) of the quantised DCT channel feedback data to obtain channel feedback data. It will be appreciated that the access point can then transfer data wirelessly using the channel feedback data.
[0107] By utilising DCT for channel feedback compression for a MU-MIMO-OFDM system, substantial efficiency can be achieved over the currently implemented DFT channel feedback compression method, as will be discussed in more detail below.
[0108] Referring to Figure 7B there is shown another example method 750 of obtaining channel state feedback in a MU-MIMO-OFDM system. The channel state feedback is discussed as being indicative of the channel coefficients that are determined by channel estimation. However, it will be appreciated that the channel state feedback may be indicative of additional information and thus is not only limited to channel coefficients. In one particular embodiment, the channel state feedback can be indicative of channel coefficients determined using locally consecutive pilot sub-carriers arrangement as discussed above and as will be exemplified later within this document.
[0109] At step 755, the method 750 includes a user terminal obtaining estimated frequency domain channel coefficients at sub-carriers. In particular, this step includes obtaining estimated frequency domain channel coefficients at iFt sub-carriers, iF = 1, 2, NF.
[0110] At step 760, the method 750 includes the user terminal performing DCT of the estimated frequency domain channel coefficients to obtain DCT coefficients ¾. In particular, this step is performed as:
where:
¾ is the DCT coefficient index; and
is the total number of DCT coefficients.
[0111] At step 765, the method 750 includes the user terminal quantising the DCT channel coefficients. In particular, the quantisation can be performed by uniform scalar quantization on real and imaginary parts of the DCT channel coefficients. DCT channel coefficients associated to the real and imaginary parts of frequency response channel coefficients are quantised independently with |
^Z?
NEW (
D ) / 2j bits, where SNEW
'D) is obtained, for example, by reverse water filling. The quantised channel coefficients are given as d
E Re Q (i
D ) and
[0112] At step 770, the method 750 includes the user terminal transferring the quantised DCT channel coefficients to the access point. In particular, this step is performed by encoding the quantised coefficients as information data and send back from the user terminal to the access point. Spectrum efficiency improvement of MU-MEVIO-OFDM uplink should be utilised to minimise the time for all required user terminals to send the channel coefficients information back to access point. Lossless transmission is assumed in the mathematical descriptions.
[0113] At step 775, the method 750 includes the access point performing IDCT of the quantised DCT channel coefficients to obtain frequency domain channel coefficients ¾. In particular, this step is performed as:
(12)
[0114] The complex frequency domain channel coefficients restored at the access point is given by:
#R 'F ) = #R,Re (½ ) + jHR,lm (/F) (13)
[0115] Computer simulations have been conducted to compare the performance of DCT based channel compression against DFT based channel compression. The computer simulation was conducted using an OFDM system with 3,456 sub-carriers with sub-carrier spacing of 3.90625 kHz (i.e. 8 MHz / 2048). The 3,456 sub-carriers are grouped in 54 groups, termed subchannels, each having 64 consecutive sub-carriers.
[0116] Channel compression was firstly performed for each sub -channel by performing DCT. The channel compression was then performed for each sub-channel by performing DFT, specifically inverse Fast Fourier Transform (IFFT). The simulation was performed by the following steps for DCT:
1) channel frequency response coefficients are estimated by conventional least- square method using known training sequence at 64 consecutive sub-carriers;
2) DCT is performed on the real (or imaginary) values of the channel frequency response coefficients;
3) E largest amplitude coefficients are selected with remaining coefficients being made zeros;
4) E coefficients are quantised with resolution of B bits;
5) IDCT is performed using the quantised coefficients; and
6) original channel frequency response coefficients and restored channel frequency response coefficients are compared to derive the mean square error of the channel feedback.
[0117] Here E is the number of effective coefficients and B is the number of bits per effective coefficient (total of IB bits are used for describing real and imaginary values of one complex coefficient).
[0118] The simulation was performed for DFT using the same steps disclosed above for DCT except step 2 was replaced by performing IFFT on the complex channel frequency response coefficients, and step 5 was replaced by performing FFT using the quantised coefficients. The receiver SNR was set to 25 dB as an example for both simulations.
[0119] More specifically, modern wireless communication systems, such as LTE and IEEE 802.16m uses orthogonal frequency division multiple access (OFDMA), where different user terminals use different groups of sub-carriers. The group of sub-carriers is called sub-channel. In this case, the channel state information is fed back to the access point on a sub-channel by sub-channel basis. The comparison is performed using 54 sub-channels, each occupying consecutive 64 sub-carriers, as an example. Channel compression is performed for each subchannel by performing DCT or DFT (specifically IFFT). In this case, the single-transmitter- single-receiver OFDM link at zpth sub-carrier in z'sth sub-channel is given by:
R (z' F , zs ) = H (z' F , zs ) X (z' F ,is) + N (z' F , zs ) (14)
[0120] The estimated channel coefficients transformed by DFT for z'sth sub-channel for is given by:
[0121] The estimated channel coefficients transformed by DCT for z'sth sub-channel is similarly defined.
[0122] Two types of computer simulation were performed, in particular:
• Type 1: The number of channel coefficients to be quantised for conventional and proposed methods, NQ,coN (i-e- conventional DFT) and
(i-e- DCT), respectively,
and the number bits for quantisation, SCON
'D) (i-e- conventional = DFT) and SNEW
'D) (i.e. DCT), are specified. The remaining channel coefficients are allocated with 0 bit and AP assumes that the values of those coefficients to be zero.
• Type 2: The number of total bits to be used per sub-channel is specified. Bit allocation based on the maximum channel coefficient amplitudes (maximum among different sub-channels for each coefficient is used.
[0123] The simulation for Type 1 for conventional method was performed by the following steps;
1) channel frequency response coefficients are estimated by conventional least-square method using known training sequence at 64 consecutive sub-carriers, each for 54 subchannels.
2) ID FT is performed on the 64 complex channel frequency response coefficients, each for 54 sub-channels.
3) NQ.coN largest amplitude coefficients, herein called active coefficients, are selected with remaining coefficients being made zeros.
4) NQ.coN active coefficients are quantised with the resolution of SQ,CON bits per coefficient. (Uniform bit allocation over NQ,coN active coefficients.)
5) DFT is performed using the quantised coefficients.
6) original channel frequency response coefficients and restored channel frequency response coefficients are compared to derive the mean square error of the channel feedback.
[0124] The simulation for Type 2 and/or for proposed method was similarly defined. Receiver SNR was set to 25 dB as an example.
[0125] Figures 8 and 9 shows example channel feedback error results using DCT and DFT channel compression methods respectively with uniform bit allocation (Type 1). It can be seen that the channel information can be accurately fed-back to AP by using 4 or 8 bit per dimension per coefficients and 5 or 6 coefficients using DCT compression method. The higher index coefficients are dominated by the noise and by removing these, the effects of noise can be reduced. The results do not reach zero error at using all 64 coefficients because of the channel estimation error due to receiver noise (arising from the specified 25 dB SNR).
[0126] Referring to Figures 10 and 11 there is shown example channel feedback error results using DCT and DFT channel compression methods respectively and the bit allocation method based on maximum amplitude of coefficients (Type 2 simulation). The results show that approximately only 60 bits are needed for the DCT channel compression to describe an OFDM channel with 64 sub-carriers for the given channel characteristics and sub-carrier spacing.
[0127] Figures 8 and 10 clearly show the advantage of DCT based channel feedback as discussed above when compared to Figures 9 and 11 which use DFT based channel feedback. DCT based channel feedback can lead to significant efficiency for an MU-MIMO-OFDM system can be achieved.
[0128] The efficiency achieved via use of DCT has been found to be extremely surprising, particularly in relation to the area of wireless communication. This is due to the fact that the channel frequency response and time domain impulse response are directly related to each other by the DFT, while the physical concept of performing DCT (or other variants thereof) on frequency response does not appear to have a direct bearing of physical meaning. Nevertheless, the use of DCT for the purpose of channel compression has been surprisingly found to outperform that of the DFT based channel compression as previously accepted in industry, which can therefore provide a more efficient MU-MIMO-OFDM system.
[0129] Figures 12 and 13 disclose methods to interpolate elements of a channel inverse directly. Before constructing the channel inverse at selected pilot sub-carriers, the user specific phase slope due to OFDM frame timing offset is removed. This is applicable to both uplink and downlink. Interpolation of the channel inverse is performed on the phase slope compensated channel inverse. For the uplink, the phase slope is restored after user symbols are extracted by the zero-forcing operation. For downlink, phase slope is restored by having pre-coded reference symbol, typically preceding the pre-coded data symbols.
[0130] Referring to Figure 12 there is shown a method 1200 performed by an access point of a MU-MIMO-OFDM system for uplink signal processing. In particular, at step 1210, the method includes the access point determining, using a OFDM training symbol received from a user terminal, estimated uplink channel coefficients for the user terminal to obtain estimated uplink channel coefficients at channel inverse sub-carrier.
[0131] At step 1220, the method includes the access point performing channel inversion at the channel inverse sub-carrier.
[0132] At step 1230, the method includes the access point performing interpolation of channel inverse by directly interpolating elements thereof, wherein the OFDM data symbols received from the user terminal are reconstructable by the access point using the interpolated channel inverse.
[0133] Referring to Figure 13 there is shown a method 1300 performed by an access point of a MU-MIMO-OFDM system for downlink signal processing. At step 1310, the method includes the access point receiving estimated downlink channel coefficients from a user terminal, wherein an estimated phase slope has been removed from the estimated downlink channel coefficients.
[0134] At step 1320, the method includes the access point obtaining estimated downlink channel coefficients at channel inverse sub-carrier.
[0135] At step 1330, the method includes the access point performing channel inversion at channel inverse sub-carrier.
[0136] At step 1340, the method includes the access point performing interpolation of channel inverse by directly interpolating elements thereof, wherein the OFDM data symbols transmitted to the user terminal are precoded with the channel inverse such that the user terminal can reconstruct the OFDM data symbols.
[0137] A method of uplink signal processing will now be described in relation to an example of a comb-pilot sub-carrier arrangement with locally consecutive pilot sub-carriers as shown in Figure 14. In particular, in this embodiment, the uplink packet from the user terminal includes channel training OFDM symbols and data symbols. The channel training symbols are specifically used for estimation of the uplink channel. This is commonly known as block type channel training. It will be appreciated that this channel inverse interpolation method is equally applicable to comb type channel training where one OFDM symbol contains both the channel training sub-carrier symbols and data sub-carrier symbols.
[0138] Referring more specifically to Figure 14 the comb-pilot sub-carrier arrangement with locally consecutive pilot sub-carriers is for four user terminals using the total of 64 OFDM sub-carriers. This type of arrangement is referred as FDMA channel training since different user terminals are distinguished by using different sub-carrier frequencies. Channel training sub-carrier symbols are sent at sub-carrier indices of 1, 5, 9, 13, 17, 20, 21, 22, 25, 33, 37, 41, 45, 53, 57, and 61 in the case of UT1, and so on. In particular, each user terminal occupies 16 sub-carriers with the interpolation factor of 64 / 16 = 4. The number of user terminals can be extended by using a larger interpolation factor and/or combining CDMA channel training.
[0139] Channel coefficients are estimated at each comb-pilot sub-carrier location by known conventional pilot-aided channel estimation techniques, such as least square error method.
Once the channel coefficients are estimated at locally consecutive pilot sub-carriers, phase slope can be estimated for each user terminal, as discussed above. For example, the phase slope for UTi should be estimated by using the channel estimates at sub-carriers 20, 21, and 22.
[0140] Once the phase slope is removed from the estimated channel coefficient values, interpolation can be performed to obtain the estimates of the channel coefficient at sub-carriers common to all user terminals. These common sub-carriers at which the channel coefficients are to be estimated by the interpolation for all user terminals are referred as channel inversion sub-carriers. An example of the selection of the channel inversion sub -carriers is shown in Figure 14. In this case, sub-carrier indices 1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 57, 61, and 64 are selected. Sub-carrier indices 1 to 61 have uniform interval of 4. Sub- carrier index 64 is also selected to remove errors due to extrapolation of channel inverse.
[0141] Channel inversion is then performed at the channel inversion sub-carriers. Conventional channel inversion algorithms can be used to obtain the inverse of the estimated channel matrix at those sub-carriers.
[0142] Different from conventional methods, the channel inverse at remaining sub-carriers (2, 3, 4, 6, 7, 8, 10, 11, 12, 14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 28, 30 31, 32, 34, 45, 46, 38, 39, 40, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 55, 56, 58, 59, 60, 62, and 63) are obtained by direct interpolation of the elements of the channel inverse. Conventional interpolation methods such as linear, polar linear, polynomial, spline, etc. can be used.
[0143] Referring to Figure 15 there is shown a flowchart representing an example method of uplink signal processing including estimating channel coefficients and calculating the channel inversion for a MU-MIMO-OFDM system. The method 1500 will be described with reference to the comb-pilot sub-carrier arrangement with locally consecutive pilot sub-carriers described in relation to Figure 14.
[0144] In particular, at step 1505, the method 1500 includes the user terminal transmitting channel training OFDM symbols to the access point.
[0145] At step 1510, the method 1500 includes the access point estimating frequency domain channel coefficients at the comb-pilot sub-carriers. For example, the frequency domain channel coefficients can be estimated by a conventional pilot-aided channel estimation method at sub-carrier indices of 1, 5, 9, 13, 17, 20, 21, 22, 25, 33, 37, 41, 45, 53, 57, and 61 for UTl. Channels between all active user terminal transmitters and access point receivers can be estimated.
[0146] At step 1515, the method 1500 includes the access point estimating phase slope for each user terminal using the estimated channel coefficients obtained for locally consecutive pilot sub-carriers. In this example, the phase slope can be estimated by using the estimated channel coefficient values at sub-carrier indices of 20, 21, and 22 for UTl. Phase slope can be obtained for each UT for each sub-channel. When one user terminal occupies multiple subchannels, the estimated phase slope values for different sub-channels occupied by the UT may be utilised to obtain a single phase slope estimation value for the user terminal by, for example, weighted average.
[0147] At step 1520, the method 1500 includes the access point removing the phase slope from estimated channel coefficient values.
[0148] At step 1525, the method 1500 includes the access point interpolating estimated channel coefficients along the frequency to obtain estimated channel coefficients at channel inverse sub-carrier by a conventional interpolation method.
[0149] At step 1530, the method 1500 includes the access point performing channel inverse at the channel inverse sub-carriers by a conventional channel inversion algorithm.
[0150] At step 1535, the method 1500 includes the access point performing interpolation of channel inverse by directly interpolating the elements of channel inverse by a conventional interpolation method.
[0151] At step 1540, the method 1500 includes the user terminal transmitting data OFDM symbols to the access point.
[0152] At step 1545, the method 1500 includes the access point performing zero-forcing detection using the interpolated channel inverse at each sub-carrier.
[0153] At step 1550, the method 1500 includes the access point applying user specific phase slope on the reconstructed transmitted symbols.
[0154] A method of downlink signal processing will now be described in relation to Figure 16 which shows an example downlink comb-pilot sub-carrier and locally consecutive pilot sub- carrier arrangement for four user terminals. The same sub-channel and sub-carrier arrangement with the previous example of the uplink discussed in relation to Figures 14 and 15, and in particular, 54 sub-channels, each supporting 64 OFDM sub-carriers, with the total of 3,456 OFDM sub-carriers are defined.
[0155] Different from the uplink channel training arrangement discussed in relation to Figure 14 where the locally consecutive pilot sub-carriers are defined for each sub-channel, only one group of locally consecutive pilot sub-carriers is needed for the entire frequency bandwidth, since all OFDM sub-carriers are generated from the access point.
[0156] In the example shown in Figure 16, sub-carrier indices 817 to 821 are allocated as locally consecutive pilot-sub-carriers for UT1, and so on. Another group of locally consecutive pilot sub-carriers can be defined, for example, from 2605 to 2636 (pilot
arrangement from 2605 to 2636 are the same as that of 813 to 848), to take advantage of frequency diversity.
[0157] Referring to Figure 17 there is shown a flowchart representing an example method of downlink signal processing including estimating channel coefficients, compressing the estimate channel coefficients using DCT and calculating the channel inversion for a MU- MIMO-OFDM system. The method 500 will be described with reference to the downlink comb-pilot sub-carrier and locally consecutive pilot sub-carrier arrangement discussed in relation to Figure 16.
[0158] In particular, at step 1705, the method includes the access point transmitting channel training OFDM symbols to each user terminal. The channel training OFDM symbols include comb-pilot sub-carriers and locally consecutive pilot sub-carriers as discussed in relation to Figures 3 to 6. In addition, the channel training OFDM symbols may be extended with orthogonal codes to combine CDMA channel training. In the example, interpolation factor of 4 with Walsh code of length 8 are used to differentiate 32 AP transmitters.
[0159] At step 1710, the method 1700 includes each user terminal estimating frequency domain channel coefficients at comb-pilot sub-carriers. The channel estimation should be made at least at the sub-channels that are assigned to the respective user terminal and at the locally consecutive pilot sub-carriers.
[0160] At step 1715, the method 1700 includes each user terminal estimating phase slope from the estimated frequency domain channel coefficients at the locally consecutive pilot sub- carriers. Only one phase slope estimate representative of the all access point transmitters shall be determined for each user terminal. The representative phase slope value may be derived, for example, by weighted average of phase slope estimates corresponding to a different access point transmitter.
[0161] At step 1720, the method 1700 includes each user terminal removing the phase slope from the frequency domain channel coefficients at comb-pilot sub-carriers for all access point transmitters.
[0162] At step 1725, the method 1700 includes each user terminal performing interpolation of channel coefficients to compensate the channel estimates at sub-carriers used for phase slope estimation for all access point transmitters. A conventional interpolation method such as linear, polar linear, polynomial, etc. can be used. In the example discussed in relation to Figure 4, for UT1 the channel coefficients should be derived by interpolation at 829, 837, and 845 (and at 2,621, 2,629, and 2,637, if another group of locally consecutive pilot sub-carriers are defined from 2605 to 2636). This will result in estimated channel coefficients value every 4th sub-carrier for all user terminals.
[0163] At step 1730, the method 1700 includes each user terminal, for sub-channels assigned to UT, performing DCT compression to produce reduced number of DCT coefficients, each for real and imaginary component. In this example, each of 54 sub-channels has 64 sub- carriers, resulting in the total of 3,456 sub-carriers. Each sub-channel has the total of 16 comb-pilot sub-carriers. DCT is performed twice, first on 16 real components of the channel coefficients and the second on 16 imaginary components of the channel coefficients. Only the first six DCT coefficients are retained. The 7th to 16th coefficients are regarded as zeros.
[0164] At step 1735, the method 1700 includes each user terminal performing DCT coefficient quantisation for each sub-channel assigned to the respective user terminal. Normalisation is performed once for all Nsc 'trr) x 6 x 2 DCT coefficients so that quantisation does not cause clipping while maximising the dynamic range of the quantisation, where Nsc 'trr) is the number of sub-channel allocated to ζ'υτΰι UT. An example quantisation, which uses 44 bits for real components and 44 bits for imaginary components per sub-channel, is performed as follows:
a. 1st DCT coefficient, real or imaginary: 12 bits signed 2' s complement
b. 2nd DCT coefficient, real or imaginary: divide by 2, and then allocate 9 bits of 2's complement
c. 3rd DCT coefficient, real or imaginary: divide by 2, and then allocate 8 bits of 2's complement
d. 4th DCT coefficient, real or imaginary: divide by 4, and then allocate 6 bits of 2's complement.
e. 5th DCT coefficient, real or imaginary: divide by 4, and then allocate 4 bits of 2's complement.
f. 6th DCT coefficient, real or imaginary: divide by 8, and then allocate 4 bits of 2's complement.
[0165] At step 1740, the method 1700 includes providing feedback quantised DCT coefficients from each user terminal to the access point by embedding these in uplink data symbols. Feedback includes only the DCT coefficients associated to the sub-channel assigned to the respective user terminal.
[0166] At step 1745, the method 1700 includes, for each sub-channel, and for each active user terminal assigned to the sub-channel, performing IDCT to restore frequency domain channel coefficients for each of access point transmitter at comb-pilot sub-carriers.
[0167] At step 1750, the method includes performing interpolation on frequency domain channel coefficients to obtain channel matrix estimates at channel inverse sub -carriers. A conventional interpolation/extrapolation method can be used.
[0168] At step 1755, the method includes performing channel inversion at channel inverse sub-carriers. A conventional matrix inversion algorithm can be used.
[0169] At step 1760, the method includes performing interpolation of channel inverse to produce channel inverse at all sub-carriers. A conventional interpolation method can be used.
[0170] At step 1765, the method includes the access point transmitting, to the user terminal, channel training OFDM symbol pre-coded by the channel inverse. The channel training OFDM symbol can be a conventional channel training symbols using all OFDM sub-carriers.
[0171] At step 1770, the method includes the user terminal performing channel estimation using the pre-coded channel training OFDM symbol. A conventional pilot-aided channel estimation method can be used. Estimated channel using the pre-coded channel training OFDM symbol is referred to as an estimated pre-coded channel.
[0172] At step 1775, the method includes the access point transmitting, to the user terminal, data OFDM symbols pre-coded by the channel inverse.
[0173] At step 1780, the method includes performing zero-forcing detection (single coefficient at each sub-carrier) using the estimated pre-coded channel.
[0174] Referring to Figure 18 there is shown results of a simulation of a MU-MIMO-OFDM downlink of a MU-MIMO-OFDM system wherein the above mentioned methods of estimating channel coefficients, compressing the estimate channel coefficients using DCT and calculating the channel inversion for a MU-MIMO-OFDM system were utilised in combination.
[0175] In particular, the simulation was performed using the following parameters of the MU- MIMO-OFDM system:
• 32 AP transmitters, 16 UT receivers.
• 3,456 OFDM sub-carriers with 8 MHz / 2048 = 3.90625 kHz sub-carrier spacing.
• 54 sub-channels each with 64 OFDM sub-carriers.
• Each UT is allocated with the full 54 sub-channels.
• Channel training pilot sub-carriers as defined above using two sets of locally consecutive pilot sub-carriers. The channel training symbols are extended by Walsh code with length 8 to support 32 AP transmitters. (Channel estimation requires 8 channel training OFDM symbols.)
• DCT compression is performed for each sub-channel, using 6 real and 6 imaginary coefficients with the bit allocation. Total number of bits per user to be feedback for 32 AP transmitter and 54 sub-channels is 44 x 2 x 54 x 32 = 152,064 bits. This amounts to 9 data OFDM symbols for channel feedback, if 64QAM and 5/6 FEC are used, and to 22 data OFDM symbols if 16QAM and 1/2 FEC are used.
• Uncorrected exponentially decaying multipath channel.
• 64QAM for data OFDM symbols. Performance is measured on un-coded (without using FEC) bit error probability, also known as channel bit error probability.
[0176] Figure 18 shows the computer simulation results. Figure 18 also shows "perfect" results for comparison to the simulated results, wherein "perfect results" refer to:
1. Estimation of the channel is perfect without being deteriorated by receiver noise or signal processing error (such as interpolation error),
2. Feedback of the channel is perfect without being degraded by channel compression and/or quantisation, and
3. Calculation of the channel inverse is perfect without having interpolation error.
[0177] The combined use of the methods were found to produce the results close to those of the perfect channel estimation, feedback, and channel inverse calculation, approximately only 1 dB away as shown by Figure 18.
[0178] Figures 19A and 19B collectively form a schematic block diagram of a general purpose electronic device 1901 including embedded components which are suitable for use as the access point and/or the receiving device. In particular embodiments, the electronic device 801 may be implemented in dedicated hardware such as one or more integrated circuits
performing the above-mentioned functions. Such dedicated hardware may include graphic processors, digital signal processors, or one or more microprocessors and associated memories.
[0179] As seen in Figure 19A, the electronic device 1901 comprises an embedded controller 1902. Accordingly, the electronic device 1901 may be referred to as an "embedded device." In the present example, the controller 1902 has a processing unit (or processor) 1905 which is bi- directionally coupled to an internal storage module 1909. The storage module 1909 may be formed from non-volatile semiconductor read only memory (ROM) 1960 and semiconductor random access memory (RAM) 1970, as seen in Figure 19B. The RAM 1970 may be volatile, non- volatile or a combination of volatile and non- volatile memory.
[0180] As seen in Figure 19 A, the electronic device 1901 also comprises a portable memory interface 1906, which is coupled to the processor 1905 via a connection 1919. The portable memory interface 1906 allows a complementary portable memory device 1925 to be coupled to the electronic device 1901 to act as a source or destination of data or to supplement the internal storage module 1909. Examples of such interfaces permit coupling with portable memory devices such as Universal Serial Bus (USB) memory devices, Secure Digital (SD) cards, Personal Computer Memory Card International Association (PCMIA) cards, optical disks and magnetic disks.
[0181] The electronic device 1901 also has a communications interface 1908 to permit coupling of the electronic device 1901 to a computer or communications network 1920 via a connection 1921. The connection 1921 may be wired or wireless. For example, the connection 1921 may be radio frequency or optical. An example of a wired connection includes Ethernet. Further, an example of wireless connection includes Bluetooth type local interconnection, Wi- Fi (including protocols based on the standards of the IEEE 802.11 family), Infrared Data Association (IrDa) and the like.
[0182] The methods of Figures 4, 6, 7, 12, 13, 15 and/or 17 may be implemented as one or more software application programs 833 executable within the embedded controller 802 or a plurality of embedded controllers 802 in a distributed manner. In particular, with reference to Figure 19B, the steps of the described method are effected by instructions in the software 1933 that are carried out within the embedded controller 1902. The software instructions may be formed as one or more code modules, each for performing one or more particular tasks.
[0183] The software 1933 of the embedded controller 1902 is typically stored in the nonvolatile ROM 1960 of the internal storage module 1909. The software 1933 stored in the ROM 1960 can be updated when required from a computer readable medium. The software 1933 can be loaded into and executed by the processor 1905. In some instances, the processor 1905 may execute software instructions that are located in RAM 1970. Software instructions may be loaded into the RAM 1970 by the processor 1905 initiating a copy of one or more code modules from ROM 1960 into RAM 1970. Alternatively, the software instructions of one or more code modules may be pre-installed in a non- volatile region of RAM 1970 by a manufacturer. After one or more code modules have been located in RAM 1970, the processor 1905 may execute software instructions of the one or more code modules.
[0184] The application program 1933 is typically pre-installed and stored in the ROM 1960 by a manufacturer, prior to distribution of the electronic device 1901. However, in some instances, the application programs 1933 may be supplied to the user encoded on one or more computer readable storage media 1925 and read via the portable memory interface 1906 of Figure 19A prior to storage in the internal storage module 1909. In another alternative, the software application program 1933 may be read by the processor 1905 from the network 1920. Computer readable storage media refers to any non-transitory, tangible storage medium that participates in providing instructions and/or data to the embedded controller 1902 for execution and or processing. Examples of such storage media include floppy disks, magnetic tape, CD-ROM, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto- optical disk, flash memory, or a computer readable card such as a PCMCIA card and the like,
whether or not such devices are internal or external of the electronic device 1901. Examples of computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the electronic device 1901 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like. A computer readable medium having such software or computer program recorded on it is a computer program product.
[0185] Figure 19B illustrates in detail the embedded controller 1902 having the processor 1905 for executing the application programs 1933 and the internal storage 1909. The internal storage 1909 comprises read only memory (ROM) 1960 and random access memory (RAM) 1970. The processor 1905 is able to execute the application programs 1933 stored in one or both of the connected memories 1960 and 1970. When the electronic device 1901 is initially powered up, a system program resident in the ROM 860 is executed. The application program 1933 permanently stored in the ROM 1960 is sometimes referred to as "firmware". Execution of the firmware by the processor 1905 may fulfil various functions, including processor management, memory management, device management, storage management and user interface.
[0186] The processor 1905 typically includes a number of functional modules including a control unit (CU) 1951, an arithmetic logic unit (ALU) 1952 and a local or internal memory comprising a set of registers 1954 which typically contain atomic data elements 1956, 1957, along with internal buffer or cache memory 1955. One or more internal buses 1959 interconnect these functional modules. The processor 1905 typically also has one or more interfaces 1958 for communicating with external devices via system bus 1981, using a connection 1961.
[0187] The application program 1933 includes a sequence of instructions 1962 though 1963 that may include conditional branch and loop instructions. The program 1933 may also
include data, which is used in execution of the program 1933. This data may be stored as part of the instruction or in a separate location 1964 within the ROM 1960 or RAM 1970.
[0188] In general, the processor 1905 is given a set of instructions, which are executed therein. This set of instructions may be organised into blocks, which perform specific tasks or handle specific events that occur in the electronic device 1901. Typically, the application program 1933 waits for events and subsequently executes the block of code associated with that event. Events may be triggered in response to input from a user, via the user input devices 1913 of Figure 19 A, as detected by the processor 1905. Events may also be triggered in response to other sensors and interfaces in the electronic device 1901.
[0189] The execution of a set of the instructions may require numeric variables to be read and modified. Such numeric variables are stored in the RAM 1970. The disclosed method uses input variables 1971 that are stored in known locations 1972, 1973 in the memory 1970. The input variables 1971 are processed to produce output variables 1977 that are stored in known locations 1978, 1979 in the memory 1970. Intermediate variables 1974 may be stored in additional memory locations in locations 1975, 1976 of the memory 1970. Alternatively, some intermediate variables may only exist in the registers 1954 of the processor 1905.
[0190] The execution of a sequence of instructions is achieved in the processor 1905 by repeated application of a fetch-execute cycle. The control unit 1951 of the processor 1905 maintains a register called the program counter, which contains the address in ROM 1960 or RAM 1970 of the next instruction to be executed. At the start of the fetch execute cycle, the contents of the memory address indexed by the program counter is loaded into the control unit 1951. The instruction thus loaded controls the subsequent operation of the processor 1905, causing for example, data to be loaded from ROM memory 1960 into processor registers 1954, the contents of a register to be arithmetically combined with the contents of another register, the contents of a register to be written to the location stored in another register and so on. At the end of the fetch execute cycle the program counter is updated to point to the next
instruction in the system program code. Depending on the instruction just executed this may involve incrementing the address contained in the program counter or loading the program counter with a new address in order to achieve a branch operation.
[0191] Each step or sub-process in the method of Figures 4, 6, 7, 12, 13, 15 and/or 17 is associated with one or more segments of the application program 833, and is performed by repeated execution of a fetch-execute cycle in the processor 805 or similar programmatic operation of other independent processor blocks in the electronic device 801.
[0192] The arrangements describes are applicable to the wireless communication industries.
[0193] Many modifications will be apparent to those skilled in the art without departing from the scope of the present invention.
[0194] Throughout this specification and the claims which follow, unless the context requires otherwise, the word "comprise", and variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated integer or step or group of integers or steps but not the exclusion of any other integer or step or group of integers or steps.