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

Authors: Hyunwook Yang; Seungwon Choi
Journal: International Journal of Antennas and Propagation
 (2013)

---

## Abstract

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.


---

## Body

## 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. Section2 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

Figure1 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 λ/2 where λ denotes the wavelength at the carrier frequency. And we assume that a channel correlation between array antennas is very high. In Figure 1, uk is the modulation signal for the kth user, and xi is the precoded signal to be transmitted from the ith MIMO element, with
(1)x_=H__-1u_∥H__-1u_∥
for u_=[u1u2]T and x_=[x1x2]T. In (1), H__ is a 2×2 Rayleigh MIMO channel matrix, and hk,i denotes the channel response for the (k,i)th component of H__, which means the channel between the ith MIMO element and the kth user. Note that the channel inversion, H__-1, is the precoder. When using the ZF as the precoder, two users can share a common resource without the MAI. The precoded signal xi is weighted by the vector w_i=[w1,iw2,iw3,i]T for beamforming, where l=1,2,3 is the antenna index and i is the MIMO element index. Thus, the array output is determined as
(2)z_i=w_i·xi,
where z_i=[z1,iz2,iz3,i]T is the beamformed signal vector consisting of a signal zl,i to be transmitted from the lth array antenna of the ith MIMO element, while the weight vector w_i 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.Figure 1
System model of MU-MIMO with adaptive beamforming.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 w_i(n) for the nth sampling time can be summarized as shown in (3)–(6) [3]. Consider
(3)R__zz(n)=f·R__zz(n-1)+z_i(n)·z_iH(n),(4)∇_(n)=2(R__zz(n)·w_i(n-1)-γ(n)·w_i(n-1)),(5)γ(n)=b±b2-aca(μw_iHwherea=μ,b=μw_iH(n-1)·R__zz(n)·w_i(n-1),c=b+2w_iH(n-1)·R__zz(n)·w_i(n-1)),(6)w_i(n)=w_i(n-1)+(12)μ·∇_(n).In (3)–(6),  R__zz(n) is the autocovariance of the signal vector z_i(n), 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 f is a forgetting factor with 0<f<1.


### 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.Table 1
Parameters for implementation.
Parameters
Base station
User
Number of antennas
3 * 2
1
Precoding
ZF
Beamforming
OLB algorithm
Waveform
WiMAX
FEC
Convolutional Turbo Coding,R=1/2
Frame duration (DL/UL)
3.1104 ms/1.728 ms (for 5 ms)
TTG/RTG
121.2µs/40.4 µs (161.6 µs)
FFT size
1024
Number of symbols (DL/UL)
27/15
Modulation scheme
16 QAM
f
c
2.3 GHzThe implementation of the WiMAX system combined with the proposed scheme, which is shown in Figure2, can be described for each part in more detail as follows.Required procedure for realizing the proposed system.
(a)
Uplink
(b)
Downlink


#### 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.Figure 3
Arrangement of pilot subcarrier in uplink frame.As shown in Figure3, 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 kth user, the weight vector is derived by using the pilot vector p_k that belongs to the kth 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 pk,BF with a beamforming gain.Figure 4
Block diagram of beamforming system.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 w_ can then be obtained as follows:
(7)w_=∑k=12w_k∥∑k=12w_k∥.
As shown in (7), the final weight vector w_ is generated by summing each user’s weight vector w_k and then normalizing. Therefore, the weight vector w_k for the kth 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. Figure5 illustrates the procedure of channel estimation for user #1.Figure 5
Procedure of channel estimation for user #1.As shown in Figure3, 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 Section3.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. Figure6 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.Figure 6
Array antenna system with added calibration antenna.


#### 2.2.5. Total System Bed

Figure7 illustrates the overall system architecture of the MU-MIMO test-bed that adopts ZF-based precoding combined with beamforming.Figure 7
Overall system architecture of implemented MU-MIMO test-bed.As shown in Figure7, 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.Figure8 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.Figure 8
Implemented CHU.The allocation of the functions on the devices and the complexity of each function are described in the next section.Figure9 shows a photo of the implemented MU-MIMO test-bed.Figure 9
Implemented MU-MIMO test-bed.


## 2.1. System Model and Algorithm

Figure1 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 λ/2 where λ denotes the wavelength at the carrier frequency. And we assume that a channel correlation between array antennas is very high. In Figure 1, uk is the modulation signal for the kth user, and xi is the precoded signal to be transmitted from the ith MIMO element, with
(1)x_=H__-1u_∥H__-1u_∥
for u_=[u1u2]T and x_=[x1x2]T. In (1), H__ is a 2×2 Rayleigh MIMO channel matrix, and hk,i denotes the channel response for the (k,i)th component of H__, which means the channel between the ith MIMO element and the kth user. Note that the channel inversion, H__-1, is the precoder. When using the ZF as the precoder, two users can share a common resource without the MAI. The precoded signal xi is weighted by the vector w_i=[w1,iw2,iw3,i]T for beamforming, where l=1,2,3 is the antenna index and i is the MIMO element index. Thus, the array output is determined as
(2)z_i=w_i·xi,
where z_i=[z1,iz2,iz3,i]T is the beamformed signal vector consisting of a signal zl,i to be transmitted from the lth array antenna of the ith MIMO element, while the weight vector w_i 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.Figure 1
System model of MU-MIMO with adaptive beamforming.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 w_i(n) for the nth sampling time can be summarized as shown in (3)–(6) [3]. Consider
(3)R__zz(n)=f·R__zz(n-1)+z_i(n)·z_iH(n),(4)∇_(n)=2(R__zz(n)·w_i(n-1)-γ(n)·w_i(n-1)),(5)γ(n)=b±b2-aca(μw_iHwherea=μ,b=μw_iH(n-1)·R__zz(n)·w_i(n-1),c=b+2w_iH(n-1)·R__zz(n)·w_i(n-1)),(6)w_i(n)=w_i(n-1)+(12)μ·∇_(n).In (3)–(6),  R__zz(n) is the autocovariance of the signal vector z_i(n), 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 f is a forgetting factor with 0<f<1.


## 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.Table 1
Parameters for implementation.
Parameters
Base station
User
Number of antennas
3 * 2
1
Precoding
ZF
Beamforming
OLB algorithm
Waveform
WiMAX
FEC
Convolutional Turbo Coding,R=1/2
Frame duration (DL/UL)
3.1104 ms/1.728 ms (for 5 ms)
TTG/RTG
121.2µs/40.4 µs (161.6 µs)
FFT size
1024
Number of symbols (DL/UL)
27/15
Modulation scheme
16 QAM
f
c
2.3 GHzThe implementation of the WiMAX system combined with the proposed scheme, which is shown in Figure2, can be described for each part in more detail as follows.Required procedure for realizing the proposed system.
(a)
Uplink
(b)
Downlink


### 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.Figure 3
Arrangement of pilot subcarrier in uplink frame.As shown in Figure3, 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 kth user, the weight vector is derived by using the pilot vector p_k that belongs to the kth 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 pk,BF with a beamforming gain.Figure 4
Block diagram of beamforming system.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 w_ can then be obtained as follows:
(7)w_=∑k=12w_k∥∑k=12w_k∥.
As shown in (7), the final weight vector w_ is generated by summing each user’s weight vector w_k and then normalizing. Therefore, the weight vector w_k for the kth 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. Figure5 illustrates the procedure of channel estimation for user #1.Figure 5
Procedure of channel estimation for user #1.As shown in Figure3, 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 Section3.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. Figure6 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.Figure 6
Array antenna system with added calibration antenna.


### 2.2.5. Total System Bed

Figure7 illustrates the overall system architecture of the MU-MIMO test-bed that adopts ZF-based precoding combined with beamforming.Figure 7
Overall system architecture of implemented MU-MIMO test-bed.As shown in Figure7, 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.Figure8 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.Figure 8
Implemented CHU.The allocation of the functions on the devices and the complexity of each function are described in the next section.Figure9 shows a photo of the implemented MU-MIMO test-bed.Figure 9
Implemented MU-MIMO test-bed.


## 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.Figure 3
Arrangement of pilot subcarrier in uplink frame.As shown in Figure3, 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 kth user, the weight vector is derived by using the pilot vector p_k that belongs to the kth 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 pk,BF with a beamforming gain.Figure 4
Block diagram of beamforming system.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 w_ can then be obtained as follows:
(7)w_=∑k=12w_k∥∑k=12w_k∥.
As shown in (7), the final weight vector w_ is generated by summing each user’s weight vector w_k and then normalizing. Therefore, the weight vector w_k for the kth 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. Figure5 illustrates the procedure of channel estimation for user #1.Figure 5
Procedure of channel estimation for user #1.As shown in Figure3, 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 Section3.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. Figure6 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.Figure 6
Array antenna system with added calibration antenna.


## 2.2.5. Total System Bed

Figure7 illustrates the overall system architecture of the MU-MIMO test-bed that adopts ZF-based precoding combined with beamforming.Figure 7
Overall system architecture of implemented MU-MIMO test-bed.As shown in Figure7, 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.Figure8 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.Figure 8
Implemented CHU.The allocation of the functions on the devices and the complexity of each function are described in the next section.Figure9 shows a photo of the implemented MU-MIMO test-bed.Figure 9
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 Table2.Table 2
Complexity of signal processing unit (all the digital signal processing is performed with 12 bits).
Device
Functions
Complexity (K gates)
Uplink
FPGA
Ranging code Correlator
21.9
FFT
338.2
CP removal
8.3
Timing synchronization
597.9
Frequency synchronization
614.3
DSP-1
Delay estimation
—
Ranging code detection
—
Weight calculation
—
DSP-2
Channel estimation
—
MIMO detection
—
DSP-3
Demodulation
—
FEC decoding
—
Deinterleaving
Total logic gates
1580.6
Downlink
FPGA
Weight multiplication
376.8
IFFT
638.2
Permutation
58.9
CP addition
11.4
Preamble
14.2
DSP-1
Calibration
—
DSP-2
MIMO encoding
—
DSP-3
Modulation
—
Concatenation
—
DSP-4
Randomization
—
DSP-5
FEC
—
Interleaving
—
Total logic gates
1099.5Table2 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 (1587+1099) 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 Table2. Simulation parameters are presented in Table 3.Table 3
Parameters for OLB-based beamformer simulation.
Parameters
Value
DOA
0°, 60°
E
b
/
N
o
5 dB
f in (3)
0.99
μ in (5)
0.01Figure10 illustrates the beam pattern provided by each of the three-element arrays at the base station.Figure 10
Beam pattern provided by a three-element array (two users located at0∘ and 60∘).As shown in Figure10, each array provides a beam pattern with a gain of 2 for the DOA of each user, that is, 0∘ and 60∘. From Table 3, we assumed that the two users are located at 0∘ and 60∘. 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.Figure11 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.Figure 11
BER of MU-MIMO system with conventional ZF only and ZF with beamforming.From Figure11, 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. Figure12 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.Figure 12
Measured FER performance.From Figure12, 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.


## 3.1. Complexity

The complexity of the signal processing units is shown in Table2.Table 2
Complexity of signal processing unit (all the digital signal processing is performed with 12 bits).
Device
Functions
Complexity (K gates)
Uplink
FPGA
Ranging code Correlator
21.9
FFT
338.2
CP removal
8.3
Timing synchronization
597.9
Frequency synchronization
614.3
DSP-1
Delay estimation
—
Ranging code detection
—
Weight calculation
—
DSP-2
Channel estimation
—
MIMO detection
—
DSP-3
Demodulation
—
FEC decoding
—
Deinterleaving
Total logic gates
1580.6
Downlink
FPGA
Weight multiplication
376.8
IFFT
638.2
Permutation
58.9
CP addition
11.4
Preamble
14.2
DSP-1
Calibration
—
DSP-2
MIMO encoding
—
DSP-3
Modulation
—
Concatenation
—
DSP-4
Randomization
—
DSP-5
FEC
—
Interleaving
—
Total logic gates
1099.5Table2 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 (1587+1099) 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 Table2. Simulation parameters are presented in Table 3.Table 3
Parameters for OLB-based beamformer simulation.
Parameters
Value
DOA
0°, 60°
E
b
/
N
o
5 dB
f in (3)
0.99
μ in (5)
0.01Figure10 illustrates the beam pattern provided by each of the three-element arrays at the base station.Figure 10
Beam pattern provided by a three-element array (two users located at0∘ and 60∘).As shown in Figure10, each array provides a beam pattern with a gain of 2 for the DOA of each user, that is, 0∘ and 60∘. From Table 3, we assumed that the two users are located at 0∘ and 60∘. 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.Figure11 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.Figure 11
BER of MU-MIMO system with conventional ZF only and ZF with beamforming.From Figure11, 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. Figure12 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.Figure 12
Measured FER performance.From Figure12, 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.



---

*Source: 976301-2013-04-22.xml*