This is a code package is related to the follow scientific article:
Emil Björnson, Björn Ottersten, “A Framework for Training-Based Estimation in Arbitrarily Correlated Rician MIMO Channels with Rician Disturbance,” IEEE Transactions on Signal Processing, vol. 58, no. 3, pp. 1807-1820, March 2010.
The package contains a simulation environment, based on Matlab, that reproduces all the numerical results and figures in the article. We encourage you to also perform reproducible research!
In this paper, we create a framework for training-based channel estimation under different channel and interference statistics. The minimum mean square error (MMSE) estimator for channel matrix estimation in Rician fading multi-antenna systems is analyzed, and especially the design of mean square error (MSE) minimizing training sequences. By considering Kronecker-structured systems with a combination of noise and interference and arbitrary training sequence length, we collect and generalize several previous results in the framework. We clarify the conditions for achieving the optimal training sequence structure and show when the spatial training power allocation can be solved explicitly. We also prove that spatial correlation improves the estimation performance and establish how it determines the optimal training sequence length. The analytic results for Kronecker-structured systems are used to derive a heuristic training sequence under general unstructured statistics.
The MMSE estimator of the squared Frobenius norm of the channel matrix is also derived and shown to provide far better gain estimates than other approaches. It is shown under which conditions training sequences that minimize the non-convex MSE can be derived explicitly or with low complexity. Numerical examples are used to evaluate the performance of the two estimators for different training sequences and system statistics. We also illustrate how the optimal length of the training sequence often can be shorter than the number of transmit antennas.
The article contains 4 simulation figures. These are generated by the Matlab scripts simulationFigure1.m, ..., simulationFigure4.m. The package contains three additional scripts with new Matlab functions: functionLagrangeMultiplier.m, functionMSEmatrix.m, and functionMSEnorm.m. These functions are called by the Matlab scripts.
See each file for further documentation.
This work was supported in part by the ERC under FP7 Grant Agreement No. 228044 and the FP6 project Cooperative and Opportunistic Communications in Wireless Networks (COOPCOM), Project No. FP6-033533. This work was also partly performed in the framework of the CELTIC project CP5-026 WINNER+.
This code package is licensed under the GPLv2 license. If you in any way use this code for research that results in publications, please cite our original article listed above.