International Journal of Antennas and Propagation

International Journal of Antennas and Propagation / 2013 / Article
Special Issue

Antenna Measurement Systems and Antenna Technology for Next Wireless Generation

View this Special Issue

Application Article | Open Access

Volume 2013 |Article ID 976301 |

Hyunwook Yang, Seungwon Choi, "Implementation of a Zero-Forcing Precoding Algorithm Combined with Adaptive Beamforming Based on WiMAX System", International Journal of Antennas and Propagation, vol. 2013, Article ID 976301, 7 pages, 2013.

Implementation of a Zero-Forcing Precoding Algorithm Combined with Adaptive Beamforming Based on WiMAX System

Academic Editor: Juan Valenzuela-Valdes
Received01 Feb 2013
Revised26 Mar 2013
Accepted02 Apr 2013
Published22 Apr 2013


We propose a novel precoding algorithm that is a zero-forcing (ZF) method combined with adaptive beamforming in the Worldwide Interoperability for Microwave Access (WiMAX) system. In a Multiuser Multiple-Input Multiple-Output (MU-MIMO) system, ZF is used to eliminate the Multiple Access Interference (MAI) in order to allow several users to share a common resource. The adaptive beamforming algorithm is used to achieve the desired SNR gain. The experimental system consists of a WiMAX base station that has 2 MIMO elements, each of which is composed of three-array antennas and two mobile terminals, each of which has a single antenna. Through computer simulations, we verified that the proposed method outperforms the conventional ZF method by at least 2.4 dB when the BER is 0.1%, or 1.7 dB when the FER is 1%, in terms of the SNR. Through a hardware implementation of the proposed method, we verified the feasibility of the proposed method for realizing a practical WiMAX base station to utilize the channel resources as efficiently as possible.

1. Introduction

MU-MIMO technology [1, 2] and array antenna technology, which is often referred to as a beamforming system [3, 4], have received extremely keen interest as next-generation communication technologies because they allow for drastic enhancement of system throughput and energy efficiency.

To realize an MU-MIMO system, the problem of Multiple Access Interference (MAI) caused by sharing a common resource by multiple mobile terminals must be resolved. In order to remove the MAI, a signal vector to be transmitted from the base station is precoded. In this paper, we adopt a zero-forcing (ZF) precoder to remove the MAI that employs an inversion of the channel matrix as a weight of the transmitting signal vector [5]. ZF is known to be the simplest precoding method. ZF eliminates the MAI by using the inverse of channel matrix as its precoder.

To realize a beamforming system, the phase to be applied to each antenna element must be determined in such a way that the signal transmitted to the target mobile terminal becomes in-phase when it arrives at the target terminal. In order to control the phase of each transmitted signal as described earlier, the Direction of Arrival (DOA) of the target user must be known to the base station. However, the DOA is not generally known. Based on the previous conditions, we adopted the Ordinary Lagrange Beamforming (OLB) algorithm to estimate the DOA for the target user(s) [3].

We implemented the precoding algorithm combined with the OLB on a WiMAX system. The base station consists of two MIMO elements, each of which is composed of a three-element beamforming array. Through computer simulations, we verify that the proposed method outperforms conventional ZF by about 2.4 dB when the BER is 0.1%, or by 1.7 dB when the FER is 1%. Furthermore, the proposed method outperforms conventional ZF even further when the SNR becomes lower, because the proposed technique reduces the channel estimation error.

This paper is organized as follows. Section 2 describes the system models and algorithms. And the implementation is also shown in Section 2. Section 3 compares the performance of the proposed and conventional methods, while Section 4 concludes this paper.

2. Materials and Methods

2.1. System Model and Algorithm

Figure 1 illustrates the structure of our system, which includes a base station consisting of two MIMO elements, each of which is composed of three-element array, and two users, each of which adopts a single antenna. We assume that the antenna separation is where denotes the wavelength at the carrier frequency. And we assume that a channel correlation between array antennas is very high. In Figure 1, is the modulation signal for the th user, and is the precoded signal to be transmitted from the th MIMO element, with for and . In (1), is a Rayleigh MIMO channel matrix, and denotes the channel response for the th component of , which means the channel between the th MIMO element and the th user. Note that the channel inversion, , is the precoder. When using the ZF as the precoder, two users can share a common resource without the MAI. The precoded signal is weighted by the vector for beamforming, where is the antenna index and is the MIMO element index. Thus, the array output is determined as where is the beamformed signal vector consisting of a signal to be transmitted from the th array antenna of the th MIMO element, while the weight vector is derived by the OLB algorithm in an uplink system as mentioned earlier. The transmitted signal vector is normalized to 1. The base station estimates the channel state information (CSI) of each user to determine the precoder and beamforming weight vector.

OLB Algorithm. It is assumed that the power of a desired signal is much larger than that of interference signals. In this circumstance, the OLB algorithm is used to find the weight vector that maximizes the norm of the beamformed signal vector. During the process of demultiplexing, the desired signal has processing gain. Therefore, we can use the OLB algorithm in a WiMAX system. In the uplink system, the process of finding the weight vector for the sampling time can be summarized as shown in (3)–(6) [3]. Consider

In (3)–(6), is the autocovariance of the signal vector , and denotes the adaptive gain, which is a major factor for determining the convergence speed of the adaptive procedure of finding the DOA shown in (3)–(6) while is a forgetting factor with .

2.2. Implementation

In this paper, we implement the procedure of the beamforming MU-MIMO system. We selected a WiMAX system for our implementation [6] and modified the system to be an MU-MIMO system. The system parameters of the implemented system are shown in Table 1.

ParametersBase stationUser

Number of antennas 3 * 2 1
BeamformingOLB algorithm
FECConvolutional Turbo Coding,
Frame duration (DL/UL)3.1104 ms/1.728 ms (for 5 ms)
TTG/RTG121.2  s/40.4  s (161.6 µs)
FFT size1024
Number of symbols (DL/UL)27/15
Modulation scheme16 QAM
2.3 GHz

The implementation of the WiMAX system combined with the proposed scheme, which is shown in Figure 2, can be described for each part in more detail as follows.

2.2.1. Calculating the Beamforming Weight

(a) Demultiplexing. In the MU-MIMO system, the users share a data subcarrier, but the pilot subcarrier cannot be shared. Figure 3 illustrates the pilot subcarrier in the uplink frame structure.

As shown in Figure 3, since the pilot is not shared among the users, the demultiplexing can fully exploit the processing gain. Therefore, we used the pilot to estimate the DOA of the desired user. In addition, the system throughput can be doubled because a data subcarrier is shared by two users.

(b) OLB Algorithm. To beamform the signal of the th user, the weight vector is derived by using the pilot vector that belongs to the th user. As mentioned earlier, in order to use the OLB algorithm, the desired signal has to have the largest norm of any of the other signals. The pilot signal, which is allocated differently for each user, has a processing gain. Figure 4 shows a block diagram of the beamforming system implemented with a three-antenna element, which adopts the OLB algorithm to abstract the pilot signal with a beamforming gain.

For the target users of the MU-MIMO system who share the frequency resource (i.e., subcarrier) of the common transmit data, the weight vector should be computed in such a way that the main lobe is provided in the direction of each of the target users sharing the common resource. Summing the weight vectors of all target user would be one way of achieving that purpose [7]. The final weight vector can then be obtained as follows: As shown in (7), the final weight vector is generated by summing each user’s weight vector and then normalizing. Therefore, the weight vector for the th user may disturb the other user’s signals, all of which should be in-phase. Due to the reason mentioned earlier, beamforming technology in an MU-MIMO system does not generally provide beamforming gain exactly proportional to the number of antenna elements.

2.2.2. Channel Estimation

Channel estimation can be performed by using the pilot signals, the values of which are known at the receiver. In this paper, the channel estimation is first performed along the time axis and later along the frequency axis. Figure 5 illustrates the procedure of channel estimation for user #1.

As shown in Figure 3, the pilot signals are mapped on the grey subcarriers shown in Figure 5. As shown in Figure 5, interpolation or extrapolation is properly adopted, and the CSI is estimated depending upon the location of the data subcarrier. A dotted line indicates a blank. The empty subcarriers are for user #2’s pilot signals. The CSIs of all users are estimated for each antenna element composing the proposed beamforming MU-MIMO system.

2.2.3. Precoding and Beamforming

The precoder for the uplink system is designed based on the CSI estimation described in Section 3.2. In this paper, ZF has been adopted as the precoder. When ZF is used as the precoder, two users can share the same resource without interference. As mentioned earlier, the channel inversion matrix is the ZF precoder. The CSI is estimated as shown in Figure 5. The precoded signal, which is transferred to the MIMO element, is then processed by the beamforming procedure shown in Figure 2(b). We constrained the transmit power to be one for the experimental tests as well as for the computer simulations.

2.2.4. Calibration

Since each antenna element and its associated path must exhibit a different phase characteristic from the others, even if the same signal is applied to the feeding port of each transmit antenna, each transmitted signal must exhibit a different phase characteristic. Calibration is the procedure of compensating for the phase differences between each of the antenna elements and the associated antenna paths. Therefore, if we want to reuse the weight vector derived in the uplink procedure in the downlink procedure, calibration is needed. Figure 6 illustrates the array antenna containing the calibration antenna. An additional antenna is utilized for transmitting or receiving a test signal to or from each antenna for RX and TX calibration. The phase between the calibration antenna and each of the array antennas is measured in advance.

2.2.5. Total System Bed

Figure 7 illustrates the overall system architecture of the MU-MIMO test-bed that adopts ZF-based precoding combined with beamforming.

As shown in Figure 7, the RF signal is processed in the Front-End Unit (FEU), while the System Processing Unit (SPU) and Channel Card Unit (CHU) control and process the received signals, respectively. The user consists of an FEU, SPU, CHU, and UDC.

Figure 8 illustrates the CHU, which consists of a GPP (MPC8280), eight DSPs (TMS320C6416T), and two FPGAs (Altera Stratix II). In fact, the CHU performs the modem functionality of WiMAX. Therefore, the proposed algorithm is implemented in the channel card unit.

The allocation of the functions on the devices and the complexity of each function are described in the next section.

Figure 9 shows a photo of the implemented MU-MIMO test-bed.

3. Results and Discussion

This section provides a performance analysis of the proposed technique, including the precoder and beamformer.

3.1. Complexity

The complexity of the signal processing units is shown in Table 2.

Device FunctionsComplexity (K gates)

Uplink FPGARanging code Correlator21.9
CP removal8.3
Timing synchronization597.9
Frequency synchronization614.3
DSP-1Delay estimation
Ranging code detection
Weight calculation
DSP-2Channel estimation
MIMO detection
FEC decoding

Total logic gates1580.6

DownlinkFPGAWeight multiplication376.8
CP addition11.4
DSP-2MIMO encoding

Total logic gates1099.5

Table 2 shows the complexity of the signal processing unit. It also shows how each of the functions has been allocated on the hardware devices of the implemented system. As shown in Table 2, the computational burden required for the functions of the proposed beamforming method, that is, the weight calculation (implemented for uplink at DSP-1) and weight multiplication (implemented for downlink at FPGA), takes only about 14% of the total complexity. Note that, as shown in Table 2, both weight calculation and weight multiplication take about 377 K gates while the required number of gates for the entire uplink and downlink computations is about  K gates.

3.2. Computer Simulation

We show the performance of the OLB-based beamformer through computer simulations. In this paper, we used “MATLAB” provided by “MathWorks” in order to implement the simulation [8]. It supports various functions of mathematics and tools for drawing graphs which are needed to implement the simulation.

The experimental environment consists of a single base station and two mobile terminals. The base station is composed of an MU-MIMO system consisting of two MIMO antenna elements, each of which is a three-element beamforming array, while each mobile terminal is equipped with a single antenna element. We assumed that the received power of each terminal is the same. We also assumed that the signal is propagated along the line of sight path. We generated the OLB-based beamformer in accordance with equations in Table 2. Simulation parameters are presented in Table 3.


DOA0°, 60°
5 dB
in (3)0.99
in (5)0.01

Figure 10 illustrates the beam pattern provided by each of the three-element arrays at the base station.

As shown in Figure 10, each array provides a beam pattern with a gain of 2 for the DOA of each user, that is, and . From Table 3, we assumed that the two users are located at and . The error in the main lobe directions occurs because there are three antenna elements at each array, while there are two users to be supported. In order to provide a high-resolution beam pattern, the number of antenna elements at each array should be increased. However, the number of antenna elements at each array is restricted because each array must be a single element for the overall MIMO system.

Figure 11 illustrates the performance comparison in terms of the uncoded BER between two MU-MIMO systems which employ conventional ZF [9] only, which removes the MAI by using the inverse of channel matrix as its precoder, and ZF with beamforming, respectively.

From Figure 11, we can observe that the performance of the proposed method, which employs ZF-based precoding and OLB-based beamforming, far outperforms the conventional precoding-only MU-MIMO system. When the BER is 0.1%, for example, the proposed system improves the BER by about 2.4 dB due to the beamforming gain, which is shown in Figure 10. Furthermore, the proposed method outperforms the conventional ZF even further when the SNR becomes lower, because the proposed technique reduces the channel estimation error more effectively by exploiting the beamforming gain.

3.3. Measured FER

This section demonstrates the Frame Error Rate (FER) performance of the implemented system. Figure 12 illustrates the FER performance of our simulator in comparison with the measured FER obtained from the implemented system. The system parameters are defined in Table 1.

From Figure 12, we can compare the FER performance of the proposed system, that is, ZF + beamforming, and the conventional MU-MIMO system, that is, without beamforming. The proposed system outperforms the conventional system by about 1.7 dB when the FER is 1%. It can also be verified that the measured FER performance coincides very well with the simulation result.

4. Conclusion

In this paper, we proposed the ZF method combined with beamforming. The proposed technique was implemented for experimental tests of WiMAX waveforms. The experimental environment includes a single base station and two users, while the base station employs the proposed technique of ZF-based precoding (for two MIMO elements) and OLB-based beamforming (for three-element beamforming for each of the two MIMO elements), while each user is equipped with a single antenna.

We demonstrated that the proposed algorithm provides nearly twice the throughput compared to the Single-Input Single-Output (SISO) system, as well as twice the power gain compared to the conventional MU-MIMO system with precoding only. We also verified the feasibility of the proposed precoding method for real-time processing of a WiMAX base station system. The proposed method seems to be a good solution for increasing the throughput of a given frequency band.


This work was supported by the ICT Standardization program of The Ministry of Knowledge Economy (MKE).


  1. A. Goldsmith, S. A. Jafar, N. Jindal, and S. Vishwanath, “Capacity limits of MIMO channels,” IEEE Journal on Selected Areas in Communications, vol. 21, no. 5, pp. 684–702, 2003. View at: Publisher Site | Google Scholar
  2. D. Gesbert, M. Kountouris, R. W. Heath, C. B. Chae, and T. Sälzer, “Shifting the MIMO Paradigm,” IEEE Signal Processing Magazine, vol. 24, no. 5, pp. 36–46, 2007. View at: Publisher Site | Google Scholar
  3. S. Choi, “A novel adaptive beamforming algorithm for a smart antenna system in a cdma mobile communication environment,” IEEE Transactions on Vehicular Technology, vol. 49, no. 5, pp. 1793–1806, 2000. View at: Google Scholar
  4. R. Mudumbai, D. R. Brown, U. Madhow, and H. V. Poor, “Distributed transmit beamforming: challenges and recent progress,” IEEE Communications Magazine, vol. 47, no. 2, pp. 102–110, 2009. View at: Publisher Site | Google Scholar
  5. T. Haustein, C. Von Helmolt, E. Jorswieck, V. Jungnickel, and V. Pohl, “Performance of MIMO systems with channel inversion,” in Proceedings of the IEEE 55th Vehicular Technology Conference (VTC '2002), pp. 35–39, Spring, May 2002. View at: Google Scholar
  6. IEEE P802.16e/D12, “Air interface for fixed and mobile broadband wireless access systems,” in IEEE Standard for Local and Metropolitan Area Networks, part 16, IEEE, 2005. View at: Google Scholar
  7. W. C. Lee, S. Choi, and J. M. Kim, “Essential considerations in implementing the smart antenna system for downlink beamforming,” Wireless Personal Communications, vol. 35, no. 3, pp. 227–240, 2005. View at: Publisher Site | Google Scholar
  8. The mathworks,
  9. C. B. Peel, B. M. Hochwald, and A. L. Swindlehurst, “A vector-perturbation technique for near-capacity multiantenna multiuser communication—Part I: channel inversion and regularization,” IEEE Transactions on Communications, vol. 53, no. 1, pp. 195–202, 2005. View at: Publisher Site | Google Scholar

Copyright © 2013 Hyunwook Yang and Seungwon Choi. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

More related articles

 PDF Download Citation Citation
 Download other formatsMore
 Order printed copiesOrder

Related articles

Article of the Year Award: Outstanding research contributions of 2020, as selected by our Chief Editors. Read the winning articles.