Abstract-A two-dimensional (2D) precoding scheme is proposed for three-dimensional massive multiple-input multipleoutput (3D MIMO) systems to efficiently exploit the 2D antenna array of the base station. Specifically, by exploiting the Kronecker structure of the 3D MIMO channel matrix, the transmit precoding operation is divided into elevation precoding and azimuth precoding. Explicitly, in contrast to the existing beamforming schemes, precoding is also performed in the vertical dimension. Consequently, the proposed scheme can fully exploit the extra degrees of freedom provided by the vertical dimension for avoiding the inter-user interference so as to improve the attainable system performance. Compared to the conventional scheme relying on the equivalent one-dimensional precoding, the proposed 2D precoding scheme offers an improved performance in severe inter-cell interference-contaminated environments, despite its lower complexity.Index Terms-3D massive MIMO, Kronecker structure, interuser interference, precoding, 2D precoding I. INTRODUCTION Massive multiple-input multiple-output (MMIMO) arrangements have attracted considerable attention as a benefit of their potential of significantly increasing the spectral efficiency and/or the energy efficiency by relying on low-complexity linear signal processing schemes [1]- [4]. However, most studies focus on the classic uniformly-spaced linear array (ULA), which is not suitable for practical MMIMO systems relying on a large antenna array. Three-dimensional massive MIMOs (3D MMIMO) [5], [6], also often referred to as fulldimensional MIMOs are capable of overcoming this dimensionality problem of the base station (BS), since the array size can be reduced when the elevation domain represented by the vertical dimension is also exploited. This way 3D MMIMOs create extra degrees of freedom for avoiding the inter-cell interference, while achieving an improved spectral efficiency. However, given the same total number of antenna elements at the BS, two-dimensional (2D) uniformly-spaced rectangular arrays (URA) perform worse than the ULA due to their low resolution in the elevation domain [5], and thus either vertical beamforming or transmit precoding (TPC) has to be invoked for improving the performance of 3D MIMO systems [7]-[9].